UNPKG

@stencil/core

Version:

A Compiler for Web Components and Progressive Web Apps

1,375 lines (1,350 loc) • 242 kB
/* Stencil Hydrate Platform v4.43.0 | MIT Licensed | https://stenciljs.com */ var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __typeError = (msg) => { throw TypeError(msg); }; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg); var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj)); var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value); var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value); var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method); // node_modules/balanced-match/index.js var require_balanced_match = __commonJS({ "node_modules/balanced-match/index.js"(exports, module) { "use strict"; module.exports = balanced; function balanced(a, b, str) { if (a instanceof RegExp) a = maybeMatch(a, str); if (b instanceof RegExp) b = maybeMatch(b, str); var r = range(a, b, str); return r && { start: r[0], end: r[1], pre: str.slice(0, r[0]), body: str.slice(r[0] + a.length, r[1]), post: str.slice(r[1] + b.length) }; } function maybeMatch(reg, str) { var m = str.match(reg); return m ? m[0] : null; } balanced.range = range; function range(a, b, str) { var begs, beg, left, right, result; var ai = str.indexOf(a); var bi = str.indexOf(b, ai + 1); var i2 = ai; if (ai >= 0 && bi > 0) { if (a === b) { return [ai, bi]; } begs = []; left = str.length; while (i2 >= 0 && !result) { if (i2 == ai) { begs.push(i2); ai = str.indexOf(a, i2 + 1); } else if (begs.length == 1) { result = [begs.pop(), bi]; } else { beg = begs.pop(); if (beg < left) { left = beg; right = bi; } bi = str.indexOf(b, i2 + 1); } i2 = ai < bi && ai >= 0 ? ai : bi; } if (begs.length) { result = [left, right]; } } return result; } } }); // node_modules/brace-expansion/index.js var require_brace_expansion = __commonJS({ "node_modules/brace-expansion/index.js"(exports, module) { var balanced = require_balanced_match(); module.exports = expandTop; var escSlash = "\0SLASH" + Math.random() + "\0"; var escOpen = "\0OPEN" + Math.random() + "\0"; var escClose = "\0CLOSE" + Math.random() + "\0"; var escComma = "\0COMMA" + Math.random() + "\0"; var escPeriod = "\0PERIOD" + Math.random() + "\0"; function numeric(str) { return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); } function escapeBraces(str) { return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); } function unescapeBraces(str) { return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); } function parseCommaParts(str) { if (!str) return [""]; var parts = []; var m = balanced("{", "}", str); if (!m) return str.split(","); var pre = m.pre; var body = m.body; var post = m.post; var p = pre.split(","); p[p.length - 1] += "{" + body + "}"; var postParts = parseCommaParts(post); if (post.length) { p[p.length - 1] += postParts.shift(); p.push.apply(p, postParts); } parts.push.apply(parts, p); return parts; } function expandTop(str) { if (!str) return []; if (str.substr(0, 2) === "{}") { str = "\\{\\}" + str.substr(2); } return expand2(escapeBraces(str), true).map(unescapeBraces); } function embrace(str) { return "{" + str + "}"; } function isPadded(el) { return /^-?0\d/.test(el); } function lte(i2, y) { return i2 <= y; } function gte(i2, y) { return i2 >= y; } function expand2(str, isTop) { var expansions = []; var m = balanced("{", "}", str); if (!m) return [str]; var pre = m.pre; var post = m.post.length ? expand2(m.post, false) : [""]; if (/\$$/.test(m.pre)) { for (var k = 0; k < post.length; k++) { var expansion = pre + "{" + m.body + "}" + post[k]; expansions.push(expansion); } } else { var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); var isSequence = isNumericSequence || isAlphaSequence; var isOptions = m.body.indexOf(",") >= 0; if (!isSequence && !isOptions) { if (m.post.match(/,(?!,).*\}/)) { str = m.pre + "{" + m.body + escClose + m.post; return expand2(str); } return [str]; } var n; if (isSequence) { n = m.body.split(/\.\./); } else { n = parseCommaParts(m.body); if (n.length === 1) { n = expand2(n[0], false).map(embrace); if (n.length === 1) { return post.map(function(p) { return m.pre + n[0] + p; }); } } } var N; if (isSequence) { var x = numeric(n[0]); var y = numeric(n[1]); var width = Math.max(n[0].length, n[1].length); var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; var test = lte; var reverse = y < x; if (reverse) { incr *= -1; test = gte; } var pad = n.some(isPadded); N = []; for (var i2 = x; test(i2, y); i2 += incr) { var c; if (isAlphaSequence) { c = String.fromCharCode(i2); if (c === "\\") c = ""; } else { c = String(i2); if (pad) { var need = width - c.length; if (need > 0) { var z = new Array(need + 1).join("0"); if (i2 < 0) c = "-" + z + c.slice(1); else c = z + c; } } } N.push(c); } } else { N = []; for (var j = 0; j < n.length; j++) { N.push.apply(N, expand2(n[j], false)); } } for (var j = 0; j < N.length; j++) { for (var k = 0; k < post.length; k++) { var expansion = pre + N[j] + post[k]; if (!isTop || isSequence || expansion) expansions.push(expansion); } } } return expansions; } } }); // src/hydrate/platform/index.ts import { BUILD as BUILD25 } from "@stencil/core/internal/app-data"; // src/utils/es2022-rewire-class-members.ts import { BUILD } from "@stencil/core/internal/app-data"; // src/utils/constants.ts var SVG_NS = "http://www.w3.org/2000/svg"; var HTML_NS = "http://www.w3.org/1999/xhtml"; var PrimitiveType = /* @__PURE__ */ ((PrimitiveType2) => { PrimitiveType2["Undefined"] = "undefined"; PrimitiveType2["Null"] = "null"; PrimitiveType2["String"] = "string"; PrimitiveType2["Number"] = "number"; PrimitiveType2["SpecialNumber"] = "number"; PrimitiveType2["Boolean"] = "boolean"; PrimitiveType2["BigInt"] = "bigint"; return PrimitiveType2; })(PrimitiveType || {}); var NonPrimitiveType = /* @__PURE__ */ ((NonPrimitiveType2) => { NonPrimitiveType2["Array"] = "array"; NonPrimitiveType2["Date"] = "date"; NonPrimitiveType2["Map"] = "map"; NonPrimitiveType2["Object"] = "object"; NonPrimitiveType2["RegularExpression"] = "regexp"; NonPrimitiveType2["Set"] = "set"; NonPrimitiveType2["Channel"] = "channel"; NonPrimitiveType2["Symbol"] = "symbol"; return NonPrimitiveType2; })(NonPrimitiveType || {}); var TYPE_CONSTANT = "type"; var VALUE_CONSTANT = "value"; var SERIALIZED_PREFIX = "serialized:"; // src/utils/es2022-rewire-class-members.ts var reWireGetterSetter = (instance, hostRef) => { var _a; const cmpMeta = hostRef.$cmpMeta$; const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {}); members.map(([memberName, [memberFlags]]) => { if ((BUILD.state || BUILD.prop) && (memberFlags & 31 /* Prop */ || memberFlags & 32 /* State */)) { const ogValue = instance[memberName]; const ogDescriptor = getPropertyDescriptor(Object.getPrototypeOf(instance), memberName) || Object.getOwnPropertyDescriptor(instance, memberName); if (ogDescriptor) { Object.defineProperty(instance, memberName, { get() { return ogDescriptor.get.call(this); }, set(newValue) { ogDescriptor.set.call(this, newValue); }, configurable: true, enumerable: true }); } instance[memberName] = hostRef.$instanceValues$.has(memberName) ? hostRef.$instanceValues$.get(memberName) : ogValue; } }); }; function getPropertyDescriptor(obj, memberName) { while (obj) { const desc = Object.getOwnPropertyDescriptor(obj, memberName); if (desc == null ? void 0 : desc.get) return desc; obj = Object.getPrototypeOf(obj); } return void 0; } // src/runtime/asset-path.ts var getAssetPath = (path2) => { const assetUrl = new URL(path2, plt.$resourcesUrl$); return assetUrl.origin !== win.location.origin ? assetUrl.href : assetUrl.pathname; }; var setAssetPath = (path2) => plt.$resourcesUrl$ = path2; // src/runtime/bootstrap-custom-element.ts import { BUILD as BUILD21 } from "@stencil/core/internal/app-data"; // src/utils/shadow-root.ts import { BUILD as BUILD2 } from "@stencil/core/internal/app-data"; import { globalStyles } from "@stencil/core/internal/app-globals"; // src/runtime/runtime-constants.ts var CONTENT_REF_ID = "r"; var ORG_LOCATION_ID = "o"; var SLOT_NODE_ID = "s"; var TEXT_NODE_ID = "t"; var COMMENT_NODE_ID = "c"; var HYDRATE_ID = "s-id"; var HYDRATED_STYLE_ID = "sty-id"; var HYDRATE_CHILD_ID = "c-id"; var HYDRATED_CSS = "{visibility:hidden}.hydrated{visibility:inherit}"; var STENCIL_DOC_DATA = "_stencilDocData"; var DEFAULT_DOC_DATA = { hostIds: 0, rootLevelIds: 0, staticComponents: /* @__PURE__ */ new Set() }; var SLOT_FB_CSS = "slot-fb{display:contents}slot-fb[hidden]{display:none}"; var XLINK_NS = "http://www.w3.org/1999/xlink"; var FORM_ASSOCIATED_CUSTOM_ELEMENT_CALLBACKS = [ "formAssociatedCallback", "formResetCallback", "formDisabledCallback", "formStateRestoreCallback" ]; // src/utils/style.ts function createStyleSheetIfNeededAndSupported(styles2) { if (!styles2 || !supportsConstructableStylesheets) return void 0; const sheet = new CSSStyleSheet(); sheet.replaceSync(styles2); return sheet; } // src/utils/shadow-root.ts var globalStyleSheet; var GLOBAL_STYLE_ID = "sc-global"; function createShadowRoot(cmpMeta) { var _a; const opts = { mode: "open" }; if (BUILD2.shadowDelegatesFocus) { opts.delegatesFocus = !!(cmpMeta.$flags$ & 16 /* shadowDelegatesFocus */); } if (BUILD2.shadowSlotAssignmentManual) { const isManual = !!(cmpMeta.$flags$ & 1024 /* shadowSlotAssignmentManual */); if (isManual) { opts.slotAssignment = "manual"; } } const shadowRoot = this.attachShadow(opts); if (globalStyleSheet === void 0) globalStyleSheet = (_a = createStyleSheetIfNeededAndSupported(globalStyles)) != null ? _a : null; if (globalStyleSheet) { if (supportsMutableAdoptedStyleSheets) { shadowRoot.adoptedStyleSheets.push(globalStyleSheet); } else { shadowRoot.adoptedStyleSheets = [...shadowRoot.adoptedStyleSheets, globalStyleSheet]; } } else if (globalStyles && !supportsConstructableStylesheets) { const styleElm = document.createElement("style"); styleElm.innerHTML = globalStyles; if (BUILD2.hotModuleReplacement) { styleElm.setAttribute(HYDRATED_STYLE_ID, GLOBAL_STYLE_ID); } shadowRoot.prepend(styleElm); } } // src/runtime/connected-callback.ts import { BUILD as BUILD19 } from "@stencil/core/internal/app-data"; // src/runtime/client-hydrate.ts import { BUILD as BUILD8 } from "@stencil/core/internal/app-data"; // src/runtime/dom-extras.ts import { BUILD as BUILD4 } from "@stencil/core/internal/app-data"; // src/runtime/slot-polyfill-utils.ts import { BUILD as BUILD3 } from "@stencil/core/internal/app-data"; var updateFallbackSlotVisibility = (elm) => { const childNodes = internalCall(elm, "childNodes"); if (elm.tagName && elm.tagName.includes("-") && elm["s-cr"] && elm.tagName !== "SLOT-FB") { getHostSlotNodes(childNodes, elm.tagName).forEach((slotNode) => { if (slotNode.nodeType === 1 /* ElementNode */ && slotNode.tagName === "SLOT-FB") { if (getSlotChildSiblings(slotNode, getSlotName(slotNode), false).length) { slotNode.hidden = true; } else { slotNode.hidden = false; } } }); } let i2 = 0; for (i2 = 0; i2 < childNodes.length; i2++) { const childNode = childNodes[i2]; if (childNode.nodeType === 1 /* ElementNode */ && internalCall(childNode, "childNodes").length) { updateFallbackSlotVisibility(childNode); } } }; var getSlottedChildNodes = (childNodes) => { const result = []; for (let i2 = 0; i2 < childNodes.length; i2++) { const slottedNode = childNodes[i2]["s-nr"] || void 0; if (slottedNode && slottedNode.isConnected) { result.push(slottedNode); } } return result; }; function getHostSlotNodes(childNodes, hostName, slotName) { let i2 = 0; let slottedNodes = []; let childNode; for (; i2 < childNodes.length; i2++) { childNode = childNodes[i2]; if (childNode["s-sr"] && (!hostName || childNode["s-hn"] === hostName) && (slotName === void 0 || getSlotName(childNode) === slotName)) { slottedNodes.push(childNode); if (typeof slotName !== "undefined") return slottedNodes; } slottedNodes = [...slottedNodes, ...getHostSlotNodes(childNode.childNodes, hostName, slotName)]; } return slottedNodes; } var getSlotChildSiblings = (slot, slotName, includeSlot = true) => { const childNodes = []; if (includeSlot && slot["s-sr"] || !slot["s-sr"]) childNodes.push(slot); let node = slot; while (node = node.nextSibling) { if (getSlotName(node) === slotName && (includeSlot || !node["s-sr"])) childNodes.push(node); } return childNodes; }; var isNodeLocatedInSlot = (nodeToRelocate, slotName) => { if (nodeToRelocate.nodeType === 1 /* ElementNode */) { if (nodeToRelocate.getAttribute("slot") === null && slotName === "") { return true; } if (nodeToRelocate.getAttribute("slot") === slotName) { return true; } return false; } if (nodeToRelocate["s-sn"] === slotName) { return true; } return slotName === ""; }; var addSlotRelocateNode = (newChild, slotNode, prepend, position) => { if (newChild["s-ol"] && newChild["s-ol"].isConnected) { return; } const slottedNodeLocation = document.createTextNode(""); slottedNodeLocation["s-nr"] = newChild; if (!slotNode["s-cr"] || !slotNode["s-cr"].parentNode) return; const parent = slotNode["s-cr"].parentNode; const appendMethod = prepend ? internalCall(parent, "prepend") : internalCall(parent, "appendChild"); if (BUILD3.hydrateClientSide && typeof position !== "undefined") { slottedNodeLocation["s-oo"] = position; const childNodes = internalCall(parent, "childNodes"); const slotRelocateNodes = [slottedNodeLocation]; childNodes.forEach((n) => { if (n["s-nr"]) slotRelocateNodes.push(n); }); slotRelocateNodes.sort((a, b) => { if (!a["s-oo"] || a["s-oo"] < (b["s-oo"] || 0)) return -1; else if (!b["s-oo"] || b["s-oo"] < a["s-oo"]) return 1; return 0; }); slotRelocateNodes.forEach((n) => appendMethod.call(parent, n)); } else { appendMethod.call(parent, slottedNodeLocation); } newChild["s-ol"] = slottedNodeLocation; newChild["s-sh"] = slotNode["s-hn"]; }; var getSlotName = (node) => typeof node["s-sn"] === "string" ? node["s-sn"] : node.nodeType === 1 && node.getAttribute("slot") || void 0; function patchSlotNode(node) { if (node.assignedElements || node.assignedNodes || !node["s-sr"]) return; const assignedFactory = (elementsOnly) => (function(opts) { const toReturn = []; const slotName = this["s-sn"]; if (opts == null ? void 0 : opts.flatten) { console.error(` Flattening is not supported for Stencil non-shadow slots. You can use \`.childNodes\` to nested slot fallback content. If you have a particular use case, please open an issue on the Stencil repo. `); } const parent = this["s-cr"].parentElement; const slottedNodes = parent.__childNodes ? parent.childNodes : getSlottedChildNodes(parent.childNodes); slottedNodes.forEach((n) => { if (slotName === getSlotName(n)) { toReturn.push(n); } }); if (elementsOnly) { return toReturn.filter((n) => n.nodeType === 1 /* ElementNode */); } return toReturn; }).bind(node); node.assignedElements = assignedFactory(true); node.assignedNodes = assignedFactory(false); } function dispatchSlotChangeEvent(elm) { elm.dispatchEvent(new CustomEvent("slotchange", { bubbles: false, cancelable: false, composed: false })); } function findSlotFromSlottedNode(slottedNode, parentHost) { var _a; parentHost = parentHost || ((_a = slottedNode["s-ol"]) == null ? void 0 : _a.parentElement); if (!parentHost) return { slotNode: null, slotName: "" }; const slotName = slottedNode["s-sn"] = getSlotName(slottedNode) || ""; const childNodes = internalCall(parentHost, "childNodes"); const slotNode = getHostSlotNodes(childNodes, parentHost.tagName, slotName)[0]; return { slotNode, slotName }; } // src/runtime/dom-extras.ts var patchPseudoShadowDom = (hostElementPrototype) => { patchCloneNode(hostElementPrototype); patchSlotAppendChild(hostElementPrototype); patchSlotAppend(hostElementPrototype); patchSlotPrepend(hostElementPrototype); patchSlotInsertAdjacentElement(hostElementPrototype); patchSlotInsertAdjacentHTML(hostElementPrototype); patchSlotInsertAdjacentText(hostElementPrototype); patchInsertBefore(hostElementPrototype); patchTextContent(hostElementPrototype); patchChildSlotNodes(hostElementPrototype); patchSlotRemoveChild(hostElementPrototype); }; var patchCloneNode = (HostElementPrototype) => { if (HostElementPrototype.__cloneNode) return; const orgCloneNode = HostElementPrototype.__cloneNode = HostElementPrototype.cloneNode; HostElementPrototype.cloneNode = function(deep) { const srcNode = this; const isShadowDom = BUILD4.shadowDom ? srcNode.shadowRoot && supportsShadow : false; const clonedNode = orgCloneNode.call(srcNode, isShadowDom ? deep : false); if (BUILD4.slot && !isShadowDom && deep) { let i2 = 0; let slotted, nonStencilNode; const stencilPrivates = [ "s-id", "s-cr", "s-lr", "s-rc", "s-sc", "s-p", "s-cn", "s-sr", "s-sn", "s-hn", "s-ol", "s-nr", "s-si", "s-rf", "s-scs" ]; const childNodes = this.__childNodes || this.childNodes; for (; i2 < childNodes.length; i2++) { slotted = childNodes[i2]["s-nr"]; nonStencilNode = stencilPrivates.every((privateField) => !childNodes[i2][privateField]); if (slotted) { if (BUILD4.appendChildSlotFix && clonedNode.__appendChild) { clonedNode.__appendChild(slotted.cloneNode(true)); } else { clonedNode.appendChild(slotted.cloneNode(true)); } } if (nonStencilNode) { clonedNode.appendChild(childNodes[i2].cloneNode(true)); } } } return clonedNode; }; }; var patchSlotAppendChild = (HostElementPrototype) => { if (HostElementPrototype.__appendChild) return; HostElementPrototype.__appendChild = HostElementPrototype.appendChild; HostElementPrototype.appendChild = function(newChild) { const { slotName, slotNode } = findSlotFromSlottedNode(newChild, this); if (slotNode) { addSlotRelocateNode(newChild, slotNode); const slotChildNodes = getSlotChildSiblings(slotNode, slotName); const appendAfter = slotChildNodes[slotChildNodes.length - 1]; const parent = internalCall(appendAfter, "parentNode"); const insertedNode = internalCall(parent, "insertBefore")(newChild, appendAfter.nextSibling); dispatchSlotChangeEvent(slotNode); updateFallbackSlotVisibility(this); return insertedNode; } return this.__appendChild(newChild); }; }; var patchSlotRemoveChild = (ElementPrototype) => { if (ElementPrototype.__removeChild) return; ElementPrototype.__removeChild = ElementPrototype.removeChild; ElementPrototype.removeChild = function(toRemove) { if (toRemove && typeof toRemove["s-sn"] !== "undefined") { const childNodes = this.__childNodes || this.childNodes; const slotNode = getHostSlotNodes(childNodes, this.tagName, toRemove["s-sn"]); if (slotNode && toRemove.isConnected) { toRemove.remove(); updateFallbackSlotVisibility(this); return; } } return this.__removeChild(toRemove); }; }; var patchSlotPrepend = (HostElementPrototype) => { if (HostElementPrototype.__prepend) return; HostElementPrototype.__prepend = HostElementPrototype.prepend; HostElementPrototype.prepend = function(...newChildren) { newChildren.forEach((newChild) => { if (typeof newChild === "string") { newChild = this.ownerDocument.createTextNode(newChild); } const slotName = (newChild["s-sn"] = getSlotName(newChild)) || ""; const childNodes = internalCall(this, "childNodes"); const slotNode = getHostSlotNodes(childNodes, this.tagName, slotName)[0]; if (slotNode) { addSlotRelocateNode(newChild, slotNode, true); const slotChildNodes = getSlotChildSiblings(slotNode, slotName); const appendAfter = slotChildNodes[0]; const parent = internalCall(appendAfter, "parentNode"); const toReturn = internalCall(parent, "insertBefore")(newChild, internalCall(appendAfter, "nextSibling")); dispatchSlotChangeEvent(slotNode); return toReturn; } if (newChild.nodeType === 1 && !!newChild.getAttribute("slot")) { newChild.hidden = true; } return HostElementPrototype.__prepend(newChild); }); }; }; var patchSlotAppend = (HostElementPrototype) => { if (HostElementPrototype.__append) return; HostElementPrototype.__append = HostElementPrototype.append; HostElementPrototype.append = function(...newChildren) { newChildren.forEach((newChild) => { if (typeof newChild === "string") { newChild = this.ownerDocument.createTextNode(newChild); } this.appendChild(newChild); }); }; }; var patchSlotInsertAdjacentHTML = (HostElementPrototype) => { if (HostElementPrototype.__insertAdjacentHTML) return; const originalInsertAdjacentHtml = HostElementPrototype.insertAdjacentHTML; HostElementPrototype.insertAdjacentHTML = function(position, text) { if (position !== "afterbegin" && position !== "beforeend") { return originalInsertAdjacentHtml.call(this, position, text); } const container = this.ownerDocument.createElement("_"); let node; container.innerHTML = text; if (position === "afterbegin") { while (node = container.firstChild) { this.prepend(node); } } else if (position === "beforeend") { while (node = container.firstChild) { this.append(node); } } }; }; var patchSlotInsertAdjacentText = (HostElementPrototype) => { HostElementPrototype.insertAdjacentText = function(position, text) { this.insertAdjacentHTML(position, text); }; }; var patchInsertBefore = (HostElementPrototype) => { if (HostElementPrototype.__insertBefore) return; const eleProto = HostElementPrototype; if (eleProto.__insertBefore) return; eleProto.__insertBefore = HostElementPrototype.insertBefore; HostElementPrototype.insertBefore = function(newChild, currentChild) { const { slotName, slotNode } = findSlotFromSlottedNode(newChild, this); const slottedNodes = this.__childNodes ? this.childNodes : getSlottedChildNodes(this.childNodes); if (slotNode) { let found = false; slottedNodes.forEach((childNode) => { if (childNode === currentChild || currentChild === null) { found = true; if (currentChild === null || slotName !== currentChild["s-sn"]) { this.appendChild(newChild); return; } if (slotName === currentChild["s-sn"]) { addSlotRelocateNode(newChild, slotNode); const parent = internalCall(currentChild, "parentNode"); internalCall(parent, "insertBefore")(newChild, currentChild); dispatchSlotChangeEvent(slotNode); } return; } }); if (found) return newChild; } const parentNode = currentChild == null ? void 0 : currentChild.__parentNode; if (parentNode && !this.isSameNode(parentNode)) { return this.appendChild(newChild); } return this.__insertBefore(newChild, currentChild); }; }; var patchSlotInsertAdjacentElement = (HostElementPrototype) => { if (HostElementPrototype.__insertAdjacentElement) return; const originalInsertAdjacentElement = HostElementPrototype.insertAdjacentElement; HostElementPrototype.insertAdjacentElement = function(position, element) { if (position !== "afterbegin" && position !== "beforeend") { return originalInsertAdjacentElement.call(this, position, element); } if (position === "afterbegin") { this.prepend(element); return element; } else if (position === "beforeend") { this.append(element); return element; } return element; }; }; var patchTextContent = (hostElementPrototype) => { patchHostOriginalAccessor("textContent", hostElementPrototype); Object.defineProperty(hostElementPrototype, "textContent", { get: function() { let text = ""; const childNodes = this.__childNodes ? this.childNodes : getSlottedChildNodes(this.childNodes); childNodes.forEach((node) => text += node.textContent || ""); return text; }, set: function(value) { const childNodes = this.__childNodes ? this.childNodes : getSlottedChildNodes(this.childNodes); childNodes.forEach((node) => { if (node["s-ol"]) node["s-ol"].remove(); node.remove(); }); this.insertAdjacentHTML("beforeend", value); } }); }; var patchChildSlotNodes = (elm) => { class FakeNodeList extends Array { item(n) { return this[n]; } } patchHostOriginalAccessor("children", elm); Object.defineProperty(elm, "children", { get() { return this.childNodes.filter((n) => n.nodeType === 1); } }); Object.defineProperty(elm, "childElementCount", { get() { return this.children.length; } }); patchHostOriginalAccessor("firstChild", elm); Object.defineProperty(elm, "firstChild", { get() { return this.childNodes[0]; } }); patchHostOriginalAccessor("lastChild", elm); Object.defineProperty(elm, "lastChild", { get() { return this.childNodes[this.childNodes.length - 1]; } }); patchHostOriginalAccessor("childNodes", elm); Object.defineProperty(elm, "childNodes", { get() { const result = new FakeNodeList(); result.push(...getSlottedChildNodes(this.__childNodes)); return result; } }); }; var patchSlottedNode = (node) => { if (!node || node.__nextSibling !== void 0 || !globalThis.Node) return; patchNextSibling(node); patchPreviousSibling(node); patchParentNode(node); if (node.nodeType === Node.ELEMENT_NODE) { patchNextElementSibling(node); patchPreviousElementSibling(node); } }; var patchNextSibling = (node) => { if (!node || node.__nextSibling) return; patchHostOriginalAccessor("nextSibling", node); Object.defineProperty(node, "nextSibling", { get: function() { var _a; const parentNodes = (_a = this["s-ol"]) == null ? void 0 : _a.parentNode.childNodes; const index = parentNodes == null ? void 0 : parentNodes.indexOf(this); if (parentNodes && index > -1) { return parentNodes[index + 1]; } return this.__nextSibling; } }); }; var patchNextElementSibling = (element) => { if (!element || element.__nextElementSibling) return; patchHostOriginalAccessor("nextElementSibling", element); Object.defineProperty(element, "nextElementSibling", { get: function() { var _a; const parentEles = (_a = this["s-ol"]) == null ? void 0 : _a.parentNode.children; const index = parentEles == null ? void 0 : parentEles.indexOf(this); if (parentEles && index > -1) { return parentEles[index + 1]; } return this.__nextElementSibling; } }); }; var patchPreviousSibling = (node) => { if (!node || node.__previousSibling) return; patchHostOriginalAccessor("previousSibling", node); Object.defineProperty(node, "previousSibling", { get: function() { var _a; const parentNodes = (_a = this["s-ol"]) == null ? void 0 : _a.parentNode.childNodes; const index = parentNodes == null ? void 0 : parentNodes.indexOf(this); if (parentNodes && index > -1) { return parentNodes[index - 1]; } return this.__previousSibling; } }); }; var patchPreviousElementSibling = (element) => { if (!element || element.__previousElementSibling) return; patchHostOriginalAccessor("previousElementSibling", element); Object.defineProperty(element, "previousElementSibling", { get: function() { var _a; const parentNodes = (_a = this["s-ol"]) == null ? void 0 : _a.parentNode.children; const index = parentNodes == null ? void 0 : parentNodes.indexOf(this); if (parentNodes && index > -1) { return parentNodes[index - 1]; } return this.__previousElementSibling; } }); }; var patchParentNode = (node) => { if (!node || node.__parentNode) return; patchHostOriginalAccessor("parentNode", node); Object.defineProperty(node, "parentNode", { get: function() { var _a; return ((_a = this["s-ol"]) == null ? void 0 : _a.parentNode) || this.__parentNode; }, set: function(value) { this.__parentNode = value; } }); }; var validElementPatches = ["children", "nextElementSibling", "previousElementSibling"]; var validNodesPatches = [ "childNodes", "firstChild", "lastChild", "nextSibling", "previousSibling", "textContent", "parentNode" ]; function patchHostOriginalAccessor(accessorName, node) { if (!globalThis.Node || !globalThis.Element) { return; } let accessor; if (validElementPatches.includes(accessorName)) { accessor = Object.getOwnPropertyDescriptor(Element.prototype, accessorName); } else if (validNodesPatches.includes(accessorName)) { accessor = Object.getOwnPropertyDescriptor(Node.prototype, accessorName); } if (!accessor) { accessor = Object.getOwnPropertyDescriptor(node, accessorName); } if (accessor) Object.defineProperty(node, "__" + accessorName, accessor); } function internalCall(node, method) { if ("__" + method in node) { const toReturn = node["__" + method]; if (typeof toReturn !== "function") return toReturn; return toReturn.bind(node); } else { if (typeof node[method] !== "function") return node[method]; return node[method].bind(node); } } // src/runtime/profile.ts import { BUILD as BUILD5 } from "@stencil/core/internal/app-data"; var i = 0; var createTime = (fnName, tagName = "") => { if (BUILD5.profile && performance.mark) { const key = `st:${fnName}:${tagName}:${i++}`; performance.mark(key); return () => performance.measure(`[Stencil] ${fnName}() <${tagName}>`, key); } else { return () => { return; }; } }; var uniqueTime = (key, measureText) => { if (BUILD5.profile && performance.mark) { if (performance.getEntriesByName(key, "mark").length === 0) { performance.mark(key); } return () => { if (performance.getEntriesByName(measureText, "measure").length === 0) { performance.measure(measureText, key); } }; } else { return () => { return; }; } }; var inspect = (ref) => { const hostRef = getHostRef(ref); if (!hostRef) { return void 0; } const flags = hostRef.$flags$; const hostElement = hostRef.$hostElement$; return { renderCount: hostRef.$renderCount$, flags: { hasRendered: !!(flags & 2 /* hasRendered */), hasConnected: !!(flags & 1 /* hasConnected */), isWaitingForChildren: !!(flags & 4 /* isWaitingForChildren */), isConstructingInstance: !!(flags & 8 /* isConstructingInstance */), isQueuedForUpdate: !!(flags & 16 /* isQueuedForUpdate */), hasInitializedComponent: !!(flags & 32 /* hasInitializedComponent */), hasLoadedComponent: !!(flags & 64 /* hasLoadedComponent */), isWatchReady: !!(flags & 128 /* isWatchReady */), isListenReady: !!(flags & 256 /* isListenReady */), needsRerender: !!(flags & 512 /* needsRerender */) }, instanceValues: hostRef.$instanceValues$, serializerValues: hostRef.$serializerValues$, ancestorComponent: hostRef.$ancestorComponent$, hostElement, lazyInstance: hostRef.$lazyInstance$, vnode: hostRef.$vnode$, modeName: hostRef.$modeName$, fetchedCbList: hostRef.$fetchedCbList$, onReadyPromise: hostRef.$onReadyPromise$, onReadyResolve: hostRef.$onReadyResolve$, onInstancePromise: hostRef.$onInstancePromise$, onInstanceResolve: hostRef.$onInstanceResolve$, onRenderResolve: hostRef.$onRenderResolve$, queuedListeners: hostRef.$queuedListeners$, rmListeners: hostRef.$rmListeners$, ["s-id"]: hostElement["s-id"], ["s-cr"]: hostElement["s-cr"], ["s-lr"]: hostElement["s-lr"], ["s-p"]: hostElement["s-p"], ["s-rc"]: hostElement["s-rc"], ["s-sc"]: hostElement["s-sc"] }; }; var installDevTools = () => { if (BUILD5.devTools) { const stencil = win.stencil = win.stencil || {}; const originalInspect = stencil.inspect; stencil.inspect = (ref) => { let result = inspect(ref); if (!result && typeof originalInspect === "function") { result = originalInspect(ref); } return result; }; } }; // src/runtime/styles.ts import { BUILD as BUILD6 } from "@stencil/core/internal/app-data"; // src/utils/query-nonce-meta-tag-content.ts function queryNonceMetaTagContent(doc) { var _a, _b, _c; return (_c = (_b = (_a = doc.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0; } // src/runtime/styles.ts var rootAppliedStyles = /* @__PURE__ */ new WeakMap(); var registerStyle = (scopeId2, cssText, allowCS) => { let style = styles.get(scopeId2); if (supportsConstructableStylesheets && allowCS) { style = style || new CSSStyleSheet(); if (typeof style === "string") { style = cssText; } else { style.replaceSync(cssText); } } else { style = cssText; } styles.set(scopeId2, style); }; var addStyle = (styleContainerNode, cmpMeta, mode) => { var _a, _b, _c; const scopeId2 = getScopeId(cmpMeta, mode); const style = styles.get(scopeId2); if (!BUILD6.attachStyles || !win.document) { return scopeId2; } styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : win.document; if (style) { if (typeof style === "string") { styleContainerNode = styleContainerNode.head || styleContainerNode; let appliedStyles = rootAppliedStyles.get(styleContainerNode); let styleElm; if (!appliedStyles) { rootAppliedStyles.set(styleContainerNode, appliedStyles = /* @__PURE__ */ new Set()); } const existingStyleElm = (BUILD6.hydrateClientSide || BUILD6.hotModuleReplacement) && styleContainerNode.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`); if (existingStyleElm) { existingStyleElm.textContent = style; } else if (!appliedStyles.has(scopeId2)) { styleElm = win.document.createElement("style"); styleElm.textContent = style; const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document); if (nonce != null) { styleElm.setAttribute("nonce", nonce); } if ((BUILD6.hydrateServerSide || BUILD6.hotModuleReplacement) && (cmpMeta.$flags$ & 2 /* scopedCssEncapsulation */ || cmpMeta.$flags$ & 128 /* shadowNeedsScopedCss */ || cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)) { styleElm.setAttribute(HYDRATED_STYLE_ID, scopeId2); } if (!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)) { if (styleContainerNode.nodeName === "HEAD") { const preconnectLinks = styleContainerNode.querySelectorAll("link[rel=preconnect]"); const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector("style"); styleContainerNode.insertBefore( styleElm, (referenceNode2 == null ? void 0 : referenceNode2.parentNode) === styleContainerNode ? referenceNode2 : null ); } else if ("host" in styleContainerNode) { if (supportsConstructableStylesheets) { const currentWindow = (_b = styleContainerNode.defaultView) != null ? _b : styleContainerNode.ownerDocument.defaultView; const stylesheet = new currentWindow.CSSStyleSheet(); stylesheet.replaceSync(style); if (supportsMutableAdoptedStyleSheets) { styleContainerNode.adoptedStyleSheets.unshift(stylesheet); } else { styleContainerNode.adoptedStyleSheets = [stylesheet, ...styleContainerNode.adoptedStyleSheets]; } } else { const existingStyleContainer = styleContainerNode.querySelector("style"); if (existingStyleContainer) { existingStyleContainer.textContent = style + existingStyleContainer.textContent; } else { styleContainerNode.prepend(styleElm); } } } else { styleContainerNode.append(styleElm); } } if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) { styleContainerNode.insertBefore(styleElm, null); } if (cmpMeta.$flags$ & 4 /* hasSlotRelocation */) { styleElm.textContent += SLOT_FB_CSS; } if (appliedStyles) { appliedStyles.add(scopeId2); } } } else if (BUILD6.constructableCSS) { let appliedStyles = rootAppliedStyles.get(styleContainerNode); if (!appliedStyles) { rootAppliedStyles.set(styleContainerNode, appliedStyles = /* @__PURE__ */ new Set()); } if (!appliedStyles.has(scopeId2)) { const currentWindow = (_c = styleContainerNode.defaultView) != null ? _c : styleContainerNode.ownerDocument.defaultView; let stylesheet; if (style.constructor === currentWindow.CSSStyleSheet) { stylesheet = style; } else { stylesheet = new currentWindow.CSSStyleSheet(); for (let i2 = 0; i2 < style.cssRules.length; i2++) { stylesheet.insertRule(style.cssRules[i2].cssText, i2); } } if (supportsMutableAdoptedStyleSheets) { styleContainerNode.adoptedStyleSheets.push(stylesheet); } else { styleContainerNode.adoptedStyleSheets = [...styleContainerNode.adoptedStyleSheets, stylesheet]; } appliedStyles.add(scopeId2); if (BUILD6.hydrateClientSide && "host" in styleContainerNode) { const ssrStyleElm = styleContainerNode.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`); if (ssrStyleElm) { writeTask(() => ssrStyleElm.remove()); } } } } } return scopeId2; }; var attachStyles = (hostRef) => { const cmpMeta = hostRef.$cmpMeta$; const elm = hostRef.$hostElement$; const flags = cmpMeta.$flags$; const endAttachStyles = createTime("attachStyles", cmpMeta.$tagName$); const scopeId2 = addStyle( BUILD6.shadowDom && supportsShadow && elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta, hostRef.$modeName$ ); if ((BUILD6.shadowDom || BUILD6.scoped) && BUILD6.cssAnnotations && flags & 10 /* needsScopedEncapsulation */) { elm["s-sc"] = scopeId2; elm.classList.add(scopeId2 + "-h"); } endAttachStyles(); }; var getScopeId = (cmp, mode) => "sc-" + (BUILD6.mode && mode && cmp.$flags$ & 32 /* hasMode */ ? cmp.$tagName$ + "-" + mode : cmp.$tagName$); var convertScopedToShadow = (css) => css.replace(/\/\*!@([^\/]+)\*\/[^\{]+\{/g, "$1{"); var hydrateScopedToShadow = () => { if (!win.document) { return; } const styles2 = win.document.querySelectorAll(`[${HYDRATED_STYLE_ID}]`); let i2 = 0; for (; i2 < styles2.length; i2++) { registerStyle(styles2[i2].getAttribute(HYDRATED_STYLE_ID), convertScopedToShadow(styles2[i2].innerHTML), true); } }; // src/runtime/vdom/h.ts import { BUILD as BUILD7 } from "@stencil/core/internal/app-data"; // src/utils/helpers.ts var isDef = (v) => v != null && v !== void 0; var isComplexType = (o) => { o = typeof o; return o === "object" || o === "function"; }; // src/runtime/vdom/h.ts var h = (nodeName, vnodeData, ...children) => { if (typeof nodeName === "string") { nodeName = transformTag(nodeName); } let child = null; let key = null; let slotName = null; let simple = false; let lastSimple = false; const vNodeChildren = []; const walk = (c) => { for (let i2 = 0; i2 < c.length; i2++) { child = c[i2]; if (Array.isArray(child)) { walk(child); } else if (child != null && typeof child !== "boolean") { if (simple = typeof nodeName !== "function" && !isComplexType(child)) { child = String(child); } else if (BUILD7.isDev && typeof nodeName !== "function" && child.$flags$ === void 0) { consoleDevError(`vNode passed as children has unexpected type. Make sure it's using the correct h() function. Empty objects can also be the cause, look for JSX comments that became objects.`); } if (simple && lastSimple) { vNodeChildren[vNodeChildren.length - 1].$text$ += child; } else { vNodeChildren.push(simple ? newVNode(null, child) : child); } lastSimple = simple; } } }; walk(children); if (vnodeData) { if (BUILD7.isDev && nodeName === "input") { validateInputProperties(vnodeData); } if (BUILD7.vdomKey && vnodeData.key) { key = vnodeData.key; } if (BUILD7.slotRelocation && vnodeData.name) { slotName = vnodeData.name; } if (BUILD7.vdomClass) { const classData = vnodeData.className || vnodeData.class; if (classData) { vnodeData.class = typeof classData !== "object" ? classData : Object.keys(classData).filter((k) => classData[k]).join(" "); } } } if (BUILD7.isDev && vNodeChildren.some(isHost)) { consoleDevError(`The <Host> must be the single root component. Make sure: - You are NOT using hostData() and <Host> in the same component. - <Host> is used once, and it's the single root component of the render() function.`); } if (BUILD7.vdomFunctional && typeof nodeName === "function") { return nodeName( vnodeData === null ? {} : vnodeData, vNodeChildren, vdomFnUtils ); } const vnode = newVNode(nodeName, null); vnode.$attrs$ = vnodeData; if (vNodeChildren.length > 0) { vnode.$children$ = vNodeChildren; } if (BUILD7.vdomKey) { vnode.$key$ = key; } if (BUILD7.slotRelocation) { vnode.$name$ = slotName; } return vnode; }; var newVNode = (tag, text) => { const vnode = { $flags$: 0, $tag$: tag, // Normalize undefined to null to prevent rendering "undefined" as text $text$: text != null ? text : null, $elm$: null, $children$: null }; if (BUILD7.vdomAttribute) { vnode.$attrs$ = null; } if (BUILD7.vdomKey) { vnode.$key$ = null; } if (BUILD7.slotRelocation) { vnode.$name$ = null; } return vnode; }; var Host = {}; var isHost = (node) => node && node.$tag$ === Host; var vdomFnUtils = { forEach: (children, cb) => children.map(convertToPublic).forEach(cb), map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate) }; var convertToPublic = (node) => ({ vattrs: node.$attrs$, vchildren: node.$children$, vkey: node.$key$, vname: node.$name$, vtag: node.$tag$, vtext: node.$text$ }); var convertToPrivate = (node) => { if (typeof node.vtag === "function") { const vnodeData = { ...node.vattrs }; if (node.vkey) { vnodeData.key = node.vkey; } if (node.vname) { vnodeData.name = node.vname; } return h(node.vtag, vnodeData, ...node.vchildren || []); } const vnode = newVNode(node.vtag, node.vtext); vnode.$attrs$ = node.vattrs; vnode.$children$ = node.vchildren; vnode.$key$ = node.vkey; vnode.$name$ = node.vname; return vnode; }; var validateInputProperties = (inputElm) => { const props = Object.keys(inputElm); const value = props.indexOf("value"); if (value === -1) { return; } const typeIndex = props.indexOf("type"); const minIndex = props.indexOf("min"); const maxIndex = props.indexOf("max"); const stepIndex = props.indexOf("step"); if (value < typeIndex || value < minIndex || value < maxIndex || value < stepIndex) { consoleDevWarn(`The "value" prop of <input> should be set after "min", "max", "type" and "step"`); } }; // src/runtime/client-hydrate.ts var initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => { var _a, _b, _c, _d; const endHydrate = createTime("hydrateClient", tagName); const shadowRoot = hostElm.shadowRoot; const childRenderNodes = []; const slotNodes = []; const slottedNodes = []; const shadowRootNodes = BUILD8.shadowDom && shadowRoot ? [] : null; const vnode = newVNode(tagName, null); vnode.$elm$ = hostElm; let scopeId2; if (BUILD8.scoped) { const cmpMeta = hostRef.$cmpMeta$; if (cmpMeta && cmpMeta.$flags$ & 10 /* needsScopedEncapsulation */ && hostElm["s-sc"]) { scopeId2 = hostElm["s-sc"]; hostElm.classList.add(scopeId2 + "-h"); } else if (hostElm["s-sc"]) { delete hostElm["s-sc"]; } } if (win.document && (!plt.$orgLocNodes$ || !plt.$orgLocNodes$.size)) { initializeDocumentHydrate(win.document.body, plt.$orgLocNodes$ = /* @__PURE__ */ new Map()); } hostElm[HYDRATE_ID] = hostId; hostElm.removeAttribute(HYDRATE_ID); hostRef.$vnode$ = clientHydrate( vnode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, hostElm, hostId, slottedNodes ); let crIndex = 0; const crLength = childRenderNodes.length; let childRenderNode; for (crIndex; crIndex < crLength; crIndex++) { childRenderNode = childRenderNodes[crIndex]; const orgLocationId = childRenderNode.$hostId$ + "." + childRenderNode.$nodeId$; const orgLocationNode = plt.$orgLocNodes$.get(orgLocationId);