@searchcraft/react-sdk 0.5.0 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../javascript-sdk/dist/components/p-e4846fa2.js","../../javascript-sdk/dist/components/p-86911576.js","../../javascript-sdk/dist/components/p-b180ba11.js","../../javascript-sdk/dist/components/searchcraft-base-search-result.js","../../javascript-sdk/dist/components/p-f308d05d.js","../../javascript-sdk/dist/components/p-16983367.js","../../javascript-sdk/dist/components/searchcraft-base-search-results.js","../../javascript-sdk/dist/components/p-5cdc6210.js","../../javascript-sdk/dist/components/p-9cb3d38b.js","../../javascript-sdk/dist/components/searchcraft-button.js","../../javascript-sdk/dist/components/searchcraft-error-message.js","../../javascript-sdk/dist/components/p-193cf280.js","../../javascript-sdk/dist/components/searchcraft-facet-list.js","../../javascript-sdk/dist/components/p-5380505b.js","../../javascript-sdk/dist/components/p-596ceccc.js","../../javascript-sdk/dist/components/searchcraft-filter-panel.js","../../javascript-sdk/dist/components/p-bd5fede3.js","../../javascript-sdk/dist/components/searchcraft-input-form.js","../../javascript-sdk/dist/components/searchcraft-input-label.js","../../javascript-sdk/dist/components/searchcraft-results-info.js","../../javascript-sdk/dist/components/searchcraft-slider.js","../../javascript-sdk/dist/components/searchcraft-toggle-button.js","../../../node_modules/@lit/react/create-component.js","../../../node_modules/@stencil/react-output-target/dist/react.js","../src/stencil-web-components/components.ts","../src/components/SearchcraftBaseSearchResult.tsx","../src/components/SearchcraftBaseSearchResults.tsx","../src/components/SearchcraftButton.tsx","../src/components/SearchcraftErrorMessage.tsx","../src/components/SearchcraftFacetList.tsx","../src/components/SearchcraftFilterPanel.tsx","../src/components/SearchcraftInputForm.tsx","../src/components/SearchcraftInputLabel.tsx","../src/components/SearchcraftResultsInfo.tsx","../src/components/SearchcraftSlider.tsx","../src/components/SearchcraftToggleButton.tsx"],"sourcesContent":["const NAMESPACE = 'searchcraft-javascript-sdk';\nconst BUILD = /* searchcraft-javascript-sdk */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: \"hydrated\", invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: false, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: false, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };\n\n/*\n Stencil Client Platform v4.22.3 | MIT Licensed | https://stenciljs.com\n */\nvar __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar hostRefs = /* @__PURE__ */ new WeakMap();\nvar getHostRef = (ref) => hostRefs.get(ref);\nvar registerHost = (hostElement, cmpMeta) => {\n const hostRef = {\n $flags$: 0,\n $hostElement$: hostElement,\n $cmpMeta$: cmpMeta,\n $instanceValues$: /* @__PURE__ */ new Map()\n };\n {\n hostRef.$onReadyPromise$ = new Promise((r) => hostRef.$onReadyResolve$ = r);\n hostElement[\"s-p\"] = [];\n hostElement[\"s-rc\"] = [];\n }\n return hostRefs.set(hostElement, hostRef);\n};\nvar isMemberInElement = (elm, memberName) => memberName in elm;\nvar consoleError = (e, el) => (0, console.error)(e, el);\n\n// src/client/client-style.ts\nvar styles = /* @__PURE__ */ new Map();\nvar SLOT_FB_CSS = \"slot-fb{display:contents}slot-fb[hidden]{display:none}\";\nvar win = typeof window !== \"undefined\" ? window : {};\nvar doc = win.document || { head: {} };\nvar H = win.HTMLElement || class {\n};\nvar plt = {\n $flags$: 0,\n $resourcesUrl$: \"\",\n jmp: (h2) => h2(),\n raf: (h2) => requestAnimationFrame(h2),\n ael: (el, eventName, listener, opts) => el.addEventListener(eventName, listener, opts),\n rel: (el, eventName, listener, opts) => el.removeEventListener(eventName, listener, opts),\n ce: (eventName, opts) => new CustomEvent(eventName, opts)\n};\nvar supportsShadow = BUILD.shadowDom;\nvar promiseResolve = (v) => Promise.resolve(v);\nvar supportsConstructableStylesheets = /* @__PURE__ */ (() => {\n try {\n new CSSStyleSheet();\n return typeof new CSSStyleSheet().replaceSync === \"function\";\n } catch (e) {\n }\n return false;\n})() ;\nvar queuePending = false;\nvar queueDomReads = [];\nvar queueDomWrites = [];\nvar queueTask = (queue, write) => (cb) => {\n queue.push(cb);\n if (!queuePending) {\n queuePending = true;\n if (write && plt.$flags$ & 4 /* queueSync */) {\n nextTick(flush);\n } else {\n plt.raf(flush);\n }\n }\n};\nvar consume = (queue) => {\n for (let i2 = 0; i2 < queue.length; i2++) {\n try {\n queue[i2](performance.now());\n } catch (e) {\n consoleError(e);\n }\n }\n queue.length = 0;\n};\nvar flush = () => {\n consume(queueDomReads);\n {\n consume(queueDomWrites);\n if (queuePending = queueDomReads.length > 0) {\n plt.raf(flush);\n }\n }\n};\nvar nextTick = (cb) => promiseResolve().then(cb);\nvar writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);\n\n// src/runtime/asset-path.ts\nvar getAssetPath = (path) => {\n const assetUrl = new URL(path, plt.$resourcesUrl$);\n return assetUrl.origin !== win.location.origin ? assetUrl.href : assetUrl.pathname;\n};\nvar setAssetPath = (path) => plt.$resourcesUrl$ = path;\n\n// src/utils/constants.ts\nvar EMPTY_OBJ = {};\nvar SVG_NS = \"http://www.w3.org/2000/svg\";\nvar HTML_NS = \"http://www.w3.org/1999/xhtml\";\n\n// src/utils/helpers.ts\nvar isDef = (v) => v != null;\nvar isComplexType = (o) => {\n o = typeof o;\n return o === \"object\" || o === \"function\";\n};\n\n// src/utils/query-nonce-meta-tag-content.ts\nfunction queryNonceMetaTagContent(doc2) {\n var _a, _b, _c;\n return (_c = (_b = (_a = doc2.head) == null ? void 0 : _a.querySelector('meta[name=\"csp-nonce\"]')) == null ? void 0 : _b.getAttribute(\"content\")) != null ? _c : void 0;\n}\n\n// src/utils/result.ts\nvar result_exports = {};\n__export(result_exports, {\n err: () => err,\n map: () => map,\n ok: () => ok,\n unwrap: () => unwrap,\n unwrapErr: () => unwrapErr\n});\nvar ok = (value) => ({\n isOk: true,\n isErr: false,\n value\n});\nvar err = (value) => ({\n isOk: false,\n isErr: true,\n value\n});\nfunction map(result, fn) {\n if (result.isOk) {\n const val = fn(result.value);\n if (val instanceof Promise) {\n return val.then((newVal) => ok(newVal));\n } else {\n return ok(val);\n }\n }\n if (result.isErr) {\n const value = result.value;\n return err(value);\n }\n throw \"should never get here\";\n}\nvar unwrap = (result) => {\n if (result.isOk) {\n return result.value;\n } else {\n throw result.value;\n }\n};\nvar unwrapErr = (result) => {\n if (result.isErr) {\n return result.value;\n } else {\n throw result.value;\n }\n};\nvar createTime = (fnName, tagName = \"\") => {\n {\n return () => {\n return;\n };\n }\n};\nvar h = (nodeName, vnodeData, ...children) => {\n let child = null;\n let key = null;\n let slotName = null;\n let simple = false;\n let lastSimple = false;\n const vNodeChildren = [];\n const walk = (c) => {\n for (let i2 = 0; i2 < c.length; i2++) {\n child = c[i2];\n if (Array.isArray(child)) {\n walk(child);\n } else if (child != null && typeof child !== \"boolean\") {\n if (simple = typeof nodeName !== \"function\" && !isComplexType(child)) {\n child = String(child);\n }\n if (simple && lastSimple) {\n vNodeChildren[vNodeChildren.length - 1].$text$ += child;\n } else {\n vNodeChildren.push(simple ? newVNode(null, child) : child);\n }\n lastSimple = simple;\n }\n }\n };\n walk(children);\n if (vnodeData) {\n if (vnodeData.key) {\n key = vnodeData.key;\n }\n if (vnodeData.name) {\n slotName = vnodeData.name;\n }\n {\n const classData = vnodeData.className || vnodeData.class;\n if (classData) {\n vnodeData.class = typeof classData !== \"object\" ? classData : Object.keys(classData).filter((k) => classData[k]).join(\" \");\n }\n }\n }\n if (typeof nodeName === \"function\") {\n return nodeName(\n vnodeData === null ? {} : vnodeData,\n vNodeChildren,\n vdomFnUtils\n );\n }\n const vnode = newVNode(nodeName, null);\n vnode.$attrs$ = vnodeData;\n if (vNodeChildren.length > 0) {\n vnode.$children$ = vNodeChildren;\n }\n {\n vnode.$key$ = key;\n }\n {\n vnode.$name$ = slotName;\n }\n return vnode;\n};\nvar newVNode = (tag, text) => {\n const vnode = {\n $flags$: 0,\n $tag$: tag,\n $text$: text,\n $elm$: null,\n $children$: null\n };\n {\n vnode.$attrs$ = null;\n }\n {\n vnode.$key$ = null;\n }\n {\n vnode.$name$ = null;\n }\n return vnode;\n};\nvar Host = {};\nvar isHost = (node) => node && node.$tag$ === Host;\nvar vdomFnUtils = {\n forEach: (children, cb) => children.map(convertToPublic).forEach(cb),\n map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate)\n};\nvar convertToPublic = (node) => ({\n vattrs: node.$attrs$,\n vchildren: node.$children$,\n vkey: node.$key$,\n vname: node.$name$,\n vtag: node.$tag$,\n vtext: node.$text$\n});\nvar convertToPrivate = (node) => {\n if (typeof node.vtag === \"function\") {\n const vnodeData = { ...node.vattrs };\n if (node.vkey) {\n vnodeData.key = node.vkey;\n }\n if (node.vname) {\n vnodeData.name = node.vname;\n }\n return h(node.vtag, vnodeData, ...node.vchildren || []);\n }\n const vnode = newVNode(node.vtag, node.vtext);\n vnode.$attrs$ = node.vattrs;\n vnode.$children$ = node.vchildren;\n vnode.$key$ = node.vkey;\n vnode.$name$ = node.vname;\n return vnode;\n};\nvar parsePropertyValue = (propValue, propType) => {\n if (propValue != null && !isComplexType(propValue)) {\n if (propType & 4 /* Boolean */) {\n return propValue === \"false\" ? false : propValue === \"\" || !!propValue;\n }\n if (propType & 2 /* Number */) {\n return parseFloat(propValue);\n }\n if (propType & 1 /* String */) {\n return String(propValue);\n }\n return propValue;\n }\n return propValue;\n};\nvar getElement = (ref) => ref;\n\n// src/runtime/event-emitter.ts\nvar createEvent = (ref, name, flags) => {\n const elm = getElement(ref);\n return {\n emit: (detail) => {\n return emitEvent(elm, name, {\n bubbles: !!(flags & 4 /* Bubbles */),\n composed: !!(flags & 2 /* Composed */),\n cancelable: !!(flags & 1 /* Cancellable */),\n detail\n });\n }\n };\n};\nvar emitEvent = (elm, name, opts) => {\n const ev = plt.ce(name, opts);\n elm.dispatchEvent(ev);\n return ev;\n};\nvar rootAppliedStyles = /* @__PURE__ */ new WeakMap();\nvar registerStyle = (scopeId2, cssText, allowCS) => {\n let style = styles.get(scopeId2);\n if (supportsConstructableStylesheets && allowCS) {\n style = style || new CSSStyleSheet();\n if (typeof style === \"string\") {\n style = cssText;\n } else {\n style.replaceSync(cssText);\n }\n } else {\n style = cssText;\n }\n styles.set(scopeId2, style);\n};\nvar addStyle = (styleContainerNode, cmpMeta, mode) => {\n var _a;\n const scopeId2 = getScopeId(cmpMeta);\n const style = styles.get(scopeId2);\n styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc;\n if (style) {\n if (typeof style === \"string\") {\n styleContainerNode = styleContainerNode.head || styleContainerNode;\n let appliedStyles = rootAppliedStyles.get(styleContainerNode);\n let styleElm;\n if (!appliedStyles) {\n rootAppliedStyles.set(styleContainerNode, appliedStyles = /* @__PURE__ */ new Set());\n }\n if (!appliedStyles.has(scopeId2)) {\n {\n styleElm = doc.createElement(\"style\");\n styleElm.innerHTML = style;\n const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);\n if (nonce != null) {\n styleElm.setAttribute(\"nonce\", nonce);\n }\n if (!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)) {\n if (styleContainerNode.nodeName === \"HEAD\") {\n const preconnectLinks = styleContainerNode.querySelectorAll(\"link[rel=preconnect]\");\n const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector(\"style\");\n styleContainerNode.insertBefore(styleElm, referenceNode2);\n } else if (\"host\" in styleContainerNode) {\n if (supportsConstructableStylesheets) {\n const stylesheet = new CSSStyleSheet();\n stylesheet.replaceSync(style);\n styleContainerNode.adoptedStyleSheets = [stylesheet, ...styleContainerNode.adoptedStyleSheets];\n } else {\n const existingStyleContainer = styleContainerNode.querySelector(\"style\");\n if (existingStyleContainer) {\n existingStyleContainer.innerHTML = style + existingStyleContainer.innerHTML;\n } else {\n styleContainerNode.prepend(styleElm);\n }\n }\n } else {\n styleContainerNode.append(styleElm);\n }\n }\n if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */ && styleContainerNode.nodeName !== \"HEAD\") {\n styleContainerNode.insertBefore(styleElm, null);\n }\n }\n if (cmpMeta.$flags$ & 4 /* hasSlotRelocation */) {\n styleElm.innerHTML += SLOT_FB_CSS;\n }\n if (appliedStyles) {\n appliedStyles.add(scopeId2);\n }\n }\n } else if (!styleContainerNode.adoptedStyleSheets.includes(style)) {\n styleContainerNode.adoptedStyleSheets = [...styleContainerNode.adoptedStyleSheets, style];\n }\n }\n return scopeId2;\n};\nvar attachStyles = (hostRef) => {\n const cmpMeta = hostRef.$cmpMeta$;\n const elm = hostRef.$hostElement$;\n const endAttachStyles = createTime(\"attachStyles\", cmpMeta.$tagName$);\n addStyle(\n elm.getRootNode(),\n cmpMeta);\n endAttachStyles();\n};\nvar getScopeId = (cmp, mode) => \"sc-\" + (cmp.$tagName$);\nvar setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {\n if (oldValue !== newValue) {\n let isProp = isMemberInElement(elm, memberName);\n let ln = memberName.toLowerCase();\n if (memberName === \"class\") {\n const classList = elm.classList;\n const oldClasses = parseClassList(oldValue);\n const newClasses = parseClassList(newValue);\n classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));\n classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));\n } else if (memberName === \"style\") {\n {\n for (const prop in oldValue) {\n if (!newValue || newValue[prop] == null) {\n if (prop.includes(\"-\")) {\n elm.style.removeProperty(prop);\n } else {\n elm.style[prop] = \"\";\n }\n }\n }\n }\n for (const prop in newValue) {\n if (!oldValue || newValue[prop] !== oldValue[prop]) {\n if (prop.includes(\"-\")) {\n elm.style.setProperty(prop, newValue[prop]);\n } else {\n elm.style[prop] = newValue[prop];\n }\n }\n }\n } else if (memberName === \"key\") ; else if ((!elm.__lookupSetter__(memberName)) && memberName[0] === \"o\" && memberName[1] === \"n\") {\n if (memberName[2] === \"-\") {\n memberName = memberName.slice(3);\n } else if (isMemberInElement(win, ln)) {\n memberName = ln.slice(2);\n } else {\n memberName = ln[2] + memberName.slice(3);\n }\n if (oldValue || newValue) {\n const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);\n memberName = memberName.replace(CAPTURE_EVENT_REGEX, \"\");\n if (oldValue) {\n plt.rel(elm, memberName, oldValue, capture);\n }\n if (newValue) {\n plt.ael(elm, memberName, newValue, capture);\n }\n }\n } else {\n const isComplex = isComplexType(newValue);\n if ((isProp || isComplex && newValue !== null) && !isSvg) {\n try {\n if (!elm.tagName.includes(\"-\")) {\n const n = newValue == null ? \"\" : newValue;\n if (memberName === \"list\") {\n isProp = false;\n } else if (oldValue == null || elm[memberName] != n) {\n if (typeof elm.__lookupSetter__(memberName) === \"function\") {\n elm[memberName] = n;\n } else {\n elm.setAttribute(memberName, n);\n }\n }\n } else {\n elm[memberName] = newValue;\n }\n } catch (e) {\n }\n }\n if (newValue == null || newValue === false) {\n if (newValue !== false || elm.getAttribute(memberName) === \"\") {\n {\n elm.removeAttribute(memberName);\n }\n }\n } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {\n newValue = newValue === true ? \"\" : newValue;\n {\n elm.setAttribute(memberName, newValue);\n }\n }\n }\n }\n};\nvar parseClassListRegex = /\\s/;\nvar parseClassList = (value) => !value ? [] : value.split(parseClassListRegex);\nvar CAPTURE_EVENT_SUFFIX = \"Capture\";\nvar CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + \"$\");\n\n// src/runtime/vdom/update-element.ts\nvar updateElement = (oldVnode, newVnode, isSvgMode2) => {\n const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$;\n const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;\n const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;\n {\n for (const memberName of sortedAttrNames(Object.keys(oldVnodeAttrs))) {\n if (!(memberName in newVnodeAttrs)) {\n setAccessor(elm, memberName, oldVnodeAttrs[memberName], void 0, isSvgMode2, newVnode.$flags$);\n }\n }\n }\n for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {\n setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);\n }\n};\nfunction sortedAttrNames(attrNames) {\n return attrNames.includes(\"ref\") ? (\n // we need to sort these to ensure that `'ref'` is the last attr\n [...attrNames.filter((attr) => attr !== \"ref\"), \"ref\"]\n ) : (\n // no need to sort, return the original array\n attrNames\n );\n}\n\n// src/runtime/vdom/vdom-render.ts\nvar scopeId;\nvar contentRef;\nvar hostTagName;\nvar useNativeShadowDom = false;\nvar checkSlotFallbackVisibility = false;\nvar checkSlotRelocate = false;\nvar isSvgMode = false;\nvar createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {\n var _a;\n const newVNode2 = newParentVNode.$children$[childIndex];\n let i2 = 0;\n let elm;\n let childNode;\n let oldVNode;\n if (!useNativeShadowDom) {\n checkSlotRelocate = true;\n if (newVNode2.$tag$ === \"slot\") {\n newVNode2.$flags$ |= newVNode2.$children$ ? (\n // slot element has fallback content\n // still create an element that \"mocks\" the slot element\n 2 /* isSlotFallback */\n ) : (\n // slot element does not have fallback content\n // create an html comment we'll use to always reference\n // where actual slot content should sit next to\n 1 /* isSlotReference */\n );\n }\n }\n if (newVNode2.$text$ !== null) {\n elm = newVNode2.$elm$ = doc.createTextNode(newVNode2.$text$);\n } else if (newVNode2.$flags$ & 1 /* isSlotReference */) {\n elm = newVNode2.$elm$ = doc.createTextNode(\"\");\n } else {\n if (!isSvgMode) {\n isSvgMode = newVNode2.$tag$ === \"svg\";\n }\n elm = newVNode2.$elm$ = doc.createElementNS(\n isSvgMode ? SVG_NS : HTML_NS,\n !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? \"slot-fb\" : newVNode2.$tag$\n ) ;\n if (isSvgMode && newVNode2.$tag$ === \"foreignObject\") {\n isSvgMode = false;\n }\n {\n updateElement(null, newVNode2, isSvgMode);\n }\n const rootNode = elm.getRootNode();\n const isElementWithinShadowRoot = !rootNode.querySelector(\"body\");\n if (!isElementWithinShadowRoot && BUILD.scoped && isDef(scopeId) && elm[\"s-si\"] !== scopeId) {\n elm.classList.add(elm[\"s-si\"] = scopeId);\n }\n if (newVNode2.$children$) {\n for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {\n childNode = createElm(oldParentVNode, newVNode2, i2);\n if (childNode) {\n elm.appendChild(childNode);\n }\n }\n }\n {\n if (newVNode2.$tag$ === \"svg\") {\n isSvgMode = false;\n } else if (elm.tagName === \"foreignObject\") {\n isSvgMode = true;\n }\n }\n }\n elm[\"s-hn\"] = hostTagName;\n {\n if (newVNode2.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) {\n elm[\"s-sr\"] = true;\n elm[\"s-cr\"] = contentRef;\n elm[\"s-sn\"] = newVNode2.$name$ || \"\";\n elm[\"s-rf\"] = (_a = newVNode2.$attrs$) == null ? void 0 : _a.ref;\n oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];\n if (oldVNode && oldVNode.$tag$ === newVNode2.$tag$ && oldParentVNode.$elm$) {\n {\n putBackInOriginalLocation(oldParentVNode.$elm$, false);\n }\n }\n }\n }\n return elm;\n};\nvar putBackInOriginalLocation = (parentElm, recursive) => {\n plt.$flags$ |= 1 /* isTmpDisconnected */;\n const oldSlotChildNodes = Array.from(parentElm.childNodes);\n if (parentElm[\"s-sr\"] && BUILD.experimentalSlotFixes) {\n let node = parentElm;\n while (node = node.nextSibling) {\n if (node && node[\"s-sn\"] === parentElm[\"s-sn\"] && node[\"s-sh\"] === hostTagName) {\n oldSlotChildNodes.push(node);\n }\n }\n }\n for (let i2 = oldSlotChildNodes.length - 1; i2 >= 0; i2--) {\n const childNode = oldSlotChildNodes[i2];\n if (childNode[\"s-hn\"] !== hostTagName && childNode[\"s-ol\"]) {\n insertBefore(parentReferenceNode(childNode), childNode, referenceNode(childNode));\n childNode[\"s-ol\"].remove();\n childNode[\"s-ol\"] = void 0;\n childNode[\"s-sh\"] = void 0;\n checkSlotRelocate = true;\n }\n if (recursive) {\n putBackInOriginalLocation(childNode, recursive);\n }\n }\n plt.$flags$ &= ~1 /* isTmpDisconnected */;\n};\nvar addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {\n let containerElm = parentElm[\"s-cr\"] && parentElm[\"s-cr\"].parentNode || parentElm;\n let childNode;\n for (; startIdx <= endIdx; ++startIdx) {\n if (vnodes[startIdx]) {\n childNode = createElm(null, parentVNode, startIdx);\n if (childNode) {\n vnodes[startIdx].$elm$ = childNode;\n insertBefore(containerElm, childNode, referenceNode(before) );\n }\n }\n }\n};\nvar removeVnodes = (vnodes, startIdx, endIdx) => {\n for (let index = startIdx; index <= endIdx; ++index) {\n const vnode = vnodes[index];\n if (vnode) {\n const elm = vnode.$elm$;\n if (elm) {\n {\n checkSlotFallbackVisibility = true;\n if (elm[\"s-ol\"]) {\n elm[\"s-ol\"].remove();\n } else {\n putBackInOriginalLocation(elm, true);\n }\n }\n elm.remove();\n }\n }\n }\n};\nvar updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = false) => {\n let oldStartIdx = 0;\n let newStartIdx = 0;\n let idxInOld = 0;\n let i2 = 0;\n let oldEndIdx = oldCh.length - 1;\n let oldStartVnode = oldCh[0];\n let oldEndVnode = oldCh[oldEndIdx];\n let newEndIdx = newCh.length - 1;\n let newStartVnode = newCh[0];\n let newEndVnode = newCh[newEndIdx];\n let node;\n let elmToMove;\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (oldStartVnode == null) {\n oldStartVnode = oldCh[++oldStartIdx];\n } else if (oldEndVnode == null) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (newStartVnode == null) {\n newStartVnode = newCh[++newStartIdx];\n } else if (newEndVnode == null) {\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldStartVnode, newStartVnode, isInitialRender)) {\n patch(oldStartVnode, newStartVnode, isInitialRender);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (isSameVnode(oldEndVnode, newEndVnode, isInitialRender)) {\n patch(oldEndVnode, newEndVnode, isInitialRender);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {\n if ((oldStartVnode.$tag$ === \"slot\" || newEndVnode.$tag$ === \"slot\")) {\n putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);\n }\n patch(oldStartVnode, newEndVnode, isInitialRender);\n insertBefore(parentElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {\n if ((oldStartVnode.$tag$ === \"slot\" || newEndVnode.$tag$ === \"slot\")) {\n putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);\n }\n patch(oldEndVnode, newStartVnode, isInitialRender);\n insertBefore(parentElm, oldEndVnode.$elm$, oldStartVnode.$elm$);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n idxInOld = -1;\n {\n for (i2 = oldStartIdx; i2 <= oldEndIdx; ++i2) {\n if (oldCh[i2] && oldCh[i2].$key$ !== null && oldCh[i2].$key$ === newStartVnode.$key$) {\n idxInOld = i2;\n break;\n }\n }\n }\n if (idxInOld >= 0) {\n elmToMove = oldCh[idxInOld];\n if (elmToMove.$tag$ !== newStartVnode.$tag$) {\n node = createElm(oldCh && oldCh[newStartIdx], newVNode2, idxInOld);\n } else {\n patch(elmToMove, newStartVnode, isInitialRender);\n oldCh[idxInOld] = void 0;\n node = elmToMove.$elm$;\n }\n newStartVnode = newCh[++newStartIdx];\n } else {\n node = createElm(oldCh && oldCh[newStartIdx], newVNode2, newStartIdx);\n newStartVnode = newCh[++newStartIdx];\n }\n if (node) {\n {\n insertBefore(parentReferenceNode(oldStartVnode.$elm$), node, referenceNode(oldStartVnode.$elm$));\n }\n }\n }\n }\n if (oldStartIdx > oldEndIdx) {\n addVnodes(\n parentElm,\n newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].$elm$,\n newVNode2,\n newCh,\n newStartIdx,\n newEndIdx\n );\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(oldCh, oldStartIdx, oldEndIdx);\n }\n};\nvar isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {\n if (leftVNode.$tag$ === rightVNode.$tag$) {\n if (leftVNode.$tag$ === \"slot\") {\n if (\n // The component gets hydrated and no VDOM has been initialized.\n // Here the comparison can't happen as $name$ property is not set for `leftNode`.\n \"$nodeId$\" in leftVNode && isInitialRender && // `leftNode` is not from type HTMLComment which would cause many\n // hydration comments to be removed\n leftVNode.$elm$.nodeType !== 8\n ) {\n return false;\n }\n return leftVNode.$name$ === rightVNode.$name$;\n }\n if (!isInitialRender) {\n return leftVNode.$key$ === rightVNode.$key$;\n }\n return true;\n }\n return false;\n};\nvar referenceNode = (node) => {\n return node && node[\"s-ol\"] || node;\n};\nvar parentReferenceNode = (node) => (node[\"s-ol\"] ? node[\"s-ol\"] : node).parentNode;\nvar patch = (oldVNode, newVNode2, isInitialRender = false) => {\n const elm = newVNode2.$elm$ = oldVNode.$elm$;\n const oldChildren = oldVNode.$children$;\n const newChildren = newVNode2.$children$;\n const tag = newVNode2.$tag$;\n const text = newVNode2.$text$;\n let defaultHolder;\n if (text === null) {\n {\n isSvgMode = tag === \"svg\" ? true : tag === \"foreignObject\" ? false : isSvgMode;\n }\n {\n if (tag === \"slot\" && !useNativeShadowDom) ; else {\n updateElement(oldVNode, newVNode2, isSvgMode);\n }\n }\n if (oldChildren !== null && newChildren !== null) {\n updateChildren(elm, oldChildren, newVNode2, newChildren, isInitialRender);\n } else if (newChildren !== null) {\n if (oldVNode.$text$ !== null) {\n elm.textContent = \"\";\n }\n addVnodes(elm, null, newVNode2, newChildren, 0, newChildren.length - 1);\n } else if (\n // don't do this on initial render as it can cause non-hydrated content to be removed\n !isInitialRender && BUILD.updatable && oldChildren !== null\n ) {\n removeVnodes(oldChildren, 0, oldChildren.length - 1);\n }\n if (isSvgMode && tag === \"svg\") {\n isSvgMode = false;\n }\n } else if ((defaultHolder = elm[\"s-cr\"])) {\n defaultHolder.parentNode.textContent = text;\n } else if (oldVNode.$text$ !== text) {\n elm.data = text;\n }\n};\nvar updateFallbackSlotVisibility = (elm) => {\n const childNodes = elm.childNodes;\n for (const childNode of childNodes) {\n if (childNode.nodeType === 1 /* ElementNode */) {\n if (childNode[\"s-sr\"]) {\n const slotName = childNode[\"s-sn\"];\n childNode.hidden = false;\n for (const siblingNode of childNodes) {\n if (siblingNode !== childNode) {\n if (siblingNode[\"s-hn\"] !== childNode[\"s-hn\"] || slotName !== \"\") {\n if (siblingNode.nodeType === 1 /* ElementNode */ && (slotName === siblingNode.getAttribute(\"slot\") || slotName === siblingNode[\"s-sn\"]) || siblingNode.nodeType === 3 /* TextNode */ && slotName === siblingNode[\"s-sn\"]) {\n childNode.hidden = true;\n break;\n }\n } else {\n if (siblingNode.nodeType === 1 /* ElementNode */ || siblingNode.nodeType === 3 /* TextNode */ && siblingNode.textContent.trim() !== \"\") {\n childNode.hidden = true;\n break;\n }\n }\n }\n }\n }\n updateFallbackSlotVisibility(childNode);\n }\n }\n};\nvar relocateNodes = [];\nvar markSlotContentForRelocation = (elm) => {\n let node;\n let hostContentNodes;\n let j;\n for (const childNode of elm.childNodes) {\n if (childNode[\"s-sr\"] && (node = childNode[\"s-cr\"]) && node.parentNode) {\n hostContentNodes = node.parentNode.childNodes;\n const slotName = childNode[\"s-sn\"];\n for (j = hostContentNodes.length - 1; j >= 0; j--) {\n node = hostContentNodes[j];\n if (!node[\"s-cn\"] && !node[\"s-nr\"] && node[\"s-hn\"] !== childNode[\"s-hn\"] && (!BUILD.experimentalSlotFixes )) {\n if (isNodeLocatedInSlot(node, slotName)) {\n let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);\n checkSlotFallbackVisibility = true;\n node[\"s-sn\"] = node[\"s-sn\"] || slotName;\n if (relocateNodeData) {\n relocateNodeData.$nodeToRelocate$[\"s-sh\"] = childNode[\"s-hn\"];\n relocateNodeData.$slotRefNode$ = childNode;\n } else {\n node[\"s-sh\"] = childNode[\"s-hn\"];\n relocateNodes.push({\n $slotRefNode$: childNode,\n $nodeToRelocate$: node\n });\n }\n if (node[\"s-sr\"]) {\n relocateNodes.map((relocateNode) => {\n if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node[\"s-sn\"])) {\n relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);\n if (relocateNodeData && !relocateNode.$slotRefNode$) {\n relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;\n }\n }\n });\n }\n } else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {\n relocateNodes.push({\n $nodeToRelocate$: node\n });\n }\n }\n }\n }\n if (childNode.nodeType === 1 /* ElementNode */) {\n markSlotContentForRelocation(childNode);\n }\n }\n};\nvar isNodeLocatedInSlot = (nodeToRelocate, slotName) => {\n if (nodeToRelocate.nodeType === 1 /* ElementNode */) {\n if (nodeToRelocate.getAttribute(\"slot\") === null && slotName === \"\") {\n return true;\n }\n if (nodeToRelocate.getAttribute(\"slot\") === slotName) {\n return true;\n }\n return false;\n }\n if (nodeToRelocate[\"s-sn\"] === slotName) {\n return true;\n }\n return slotName === \"\";\n};\nvar insertBefore = (parent, newNode, reference) => {\n const inserted = parent == null ? void 0 : parent.insertBefore(newNode, reference);\n return inserted;\n};\nvar renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {\n var _a, _b, _c, _d;\n const hostElm = hostRef.$hostElement$;\n const oldVNode = hostRef.$vnode$ || newVNode(null, null);\n const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);\n hostTagName = hostElm.tagName;\n if (isInitialLoad && rootVnode.$attrs$) {\n for (const key of Object.keys(rootVnode.$attrs$)) {\n if (hostElm.hasAttribute(key) && ![\"key\", \"ref\", \"style\", \"class\"].includes(key)) {\n rootVnode.$attrs$[key] = hostElm[key];\n }\n }\n }\n rootVnode.$tag$ = null;\n rootVnode.$flags$ |= 4 /* isHost */;\n hostRef.$vnode$ = rootVnode;\n rootVnode.$elm$ = oldVNode.$elm$ = hostElm;\n useNativeShadowDom = supportsShadow ;\n {\n contentRef = hostElm[\"s-cr\"];\n checkSlotFallbackVisibility = false;\n }\n patch(oldVNode, rootVnode, isInitialLoad);\n {\n plt.$flags$ |= 1 /* isTmpDisconnected */;\n if (checkSlotRelocate) {\n markSlotContentForRelocation(rootVnode.$elm$);\n for (const relocateData of relocateNodes) {\n const nodeToRelocate = relocateData.$nodeToRelocate$;\n if (!nodeToRelocate[\"s-ol\"]) {\n const orgLocationNode = doc.createTextNode(\"\");\n orgLocationNode[\"s-nr\"] = nodeToRelocate;\n insertBefore(nodeToRelocate.parentNode, nodeToRelocate[\"s-ol\"] = orgLocationNode, nodeToRelocate);\n }\n }\n for (const relocateData of relocateNodes) {\n const nodeToRelocate = relocateData.$nodeToRelocate$;\n const slotRefNode = relocateData.$slotRefNode$;\n if (slotRefNode) {\n const parentNodeRef = slotRefNode.parentNode;\n let insertBeforeNode = slotRefNode.nextSibling;\n {\n let orgLocationNode = (_a = nodeToRelocate[\"s-ol\"]) == null ? void 0 : _a.previousSibling;\n while (orgLocationNode) {\n let refNode = (_b = orgLocationNode[\"s-nr\"]) != null ? _b : null;\n if (refNode && refNode[\"s-sn\"] === nodeToRelocate[\"s-sn\"] && parentNodeRef === refNode.parentNode) {\n refNode = refNode.nextSibling;\n while (refNode === nodeToRelocate || (refNode == null ? void 0 : refNode[\"s-sr\"])) {\n refNode = refNode == null ? void 0 : refNode.nextSibling;\n }\n if (!refNode || !refNode[\"s-nr\"]) {\n insertBeforeNode = refNode;\n break;\n }\n }\n orgLocationNode = orgLocationNode.previousSibling;\n }\n }\n if (!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode || nodeToRelocate.nextSibling !== insertBeforeNode) {\n if (nodeToRelocate !== insertBeforeNode) {\n if (!nodeToRelocate[\"s-hn\"] && nodeToRelocate[\"s-ol\"]) {\n nodeToRelocate[\"s-hn\"] = nodeToRelocate[\"s-ol\"].parentNode.nodeName;\n }\n insertBefore(parentNodeRef, nodeToRelocate, insertBeforeNode);\n if (nodeToRelocate.nodeType === 1 /* ElementNode */) {\n nodeToRelocate.hidden = (_c = nodeToRelocate[\"s-ih\"]) != null ? _c : false;\n }\n }\n }\n nodeToRelocate && typeof slotRefNode[\"s-rf\"] === \"function\" && slotRefNode[\"s-rf\"](nodeToRelocate);\n } else {\n if (nodeToRelocate.nodeType === 1 /* ElementNode */) {\n if (isInitialLoad) {\n nodeToRelocate[\"s-ih\"] = (_d = nodeToRelocate.hidden) != null ? _d : false;\n }\n nodeToRelocate.hidden = true;\n }\n }\n }\n }\n if (checkSlotFallbackVisibility) {\n updateFallbackSlotVisibility(rootVnode.$elm$);\n }\n plt.$flags$ &= ~1 /* isTmpDisconnected */;\n relocateNodes.length = 0;\n }\n contentRef = void 0;\n};\n\n// src/runtime/update-component.ts\nvar attachToAncestor = (hostRef, ancestorComponent) => {\n if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent[\"s-p\"]) {\n ancestorComponent[\"s-p\"].push(new Promise((r) => hostRef.$onRenderResolve$ = r));\n }\n};\nvar scheduleUpdate = (hostRef, isInitialLoad) => {\n {\n hostRef.$flags$ |= 16 /* isQueuedForUpdate */;\n }\n if (hostRef.$flags$ & 4 /* isWaitingForChildren */) {\n hostRef.$flags$ |= 512 /* needsRerender */;\n return;\n }\n attachToAncestor(hostRef, hostRef.$ancestorComponent$);\n const dispatch = () => dispatchHooks(hostRef, isInitialLoad);\n return writeTask(dispatch) ;\n};\nvar dispatchHooks = (hostRef, isInitialLoad) => {\n const elm = hostRef.$hostElement$;\n const endSchedule = createTime(\"scheduleUpdate\", hostRef.$cmpMeta$.$tagName$);\n const instance = elm;\n if (!instance) {\n throw new Error(\n `Can't render component <${elm.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \\`externalRuntime: true\\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`\n );\n }\n let maybePromise;\n endSchedule();\n return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));\n};\nvar enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.then(fn).catch((err2) => {\n console.error(err2);\n fn();\n}) : fn();\nvar isPromisey = (maybePromise) => maybePromise instanceof Promise || maybePromise && maybePromise.then && typeof maybePromise.then === \"function\";\nvar updateComponent = async (hostRef, instance, isInitialLoad) => {\n var _a;\n const elm = hostRef.$hostElement$;\n const endUpdate = createTime(\"update\", hostRef.$cmpMeta$.$tagName$);\n const rc = elm[\"s-rc\"];\n if (isInitialLoad) {\n attachStyles(hostRef);\n }\n const endRender = createTime(\"render\", hostRef.$cmpMeta$.$tagName$);\n {\n callRender(hostRef, instance, elm, isInitialLoad);\n }\n if (rc) {\n rc.map((cb) => cb());\n elm[\"s-rc\"] = void 0;\n }\n endRender();\n endUpdate();\n {\n const childrenPromises = (_a = elm[\"s-p\"]) != null ? _a : [];\n const postUpdate = () => postUpdateComponent(hostRef);\n if (childrenPromises.length === 0) {\n postUpdate();\n } else {\n Promise.all(childrenPromises).then(postUpdate);\n hostRef.$flags$ |= 4 /* isWaitingForChildren */;\n childrenPromises.length = 0;\n }\n }\n};\nvar callRender = (hostRef, instance, elm, isInitialLoad) => {\n try {\n instance = instance.render() ;\n {\n hostRef.$flags$ &= ~16 /* isQueuedForUpdate */;\n }\n {\n hostRef.$flags$ |= 2 /* hasRendered */;\n }\n {\n {\n {\n renderVdom(hostRef, instance, isInitialLoad);\n }\n }\n }\n } catch (e) {\n consoleError(e, hostRef.$hostElement$);\n }\n return null;\n};\nvar postUpdateComponent = (hostRef) => {\n const tagName = hostRef.$cmpMeta$.$tagName$;\n const elm = hostRef.$hostElement$;\n const endPostUpdate = createTime(\"postUpdate\", tagName);\n const instance = elm;\n const ancestorComponent = hostRef.$ancestorComponent$;\n if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {\n hostRef.$flags$ |= 64 /* hasLoadedComponent */;\n {\n addHydratedFlag(elm);\n }\n {\n safeCall(instance, \"componentDidLoad\");\n }\n endPostUpdate();\n {\n hostRef.$onReadyResolve$(elm);\n if (!ancestorComponent) {\n appDidLoad();\n }\n }\n } else {\n endPostUpdate();\n }\n {\n if (hostRef.$onRenderResolve$) {\n hostRef.$onRenderResolve$();\n hostRef.$onRenderResolve$ = void 0;\n }\n if (hostRef.$flags$ & 512 /* needsRerender */) {\n nextTick(() => scheduleUpdate(hostRef, false));\n }\n hostRef.$flags$ &= ~(4 /* isWaitingForChildren */ | 512 /* needsRerender */);\n }\n};\nvar appDidLoad = (who) => {\n {\n addHydratedFlag(doc.documentElement);\n }\n nextTick(() => emitEvent(win, \"appload\", { detail: { namespace: NAMESPACE } }));\n};\nvar safeCall = (instance, method, arg) => {\n if (instance && instance[method]) {\n try {\n return instance[method](arg);\n } catch (e) {\n consoleError(e);\n }\n }\n return void 0;\n};\nvar addHydratedFlag = (elm) => {\n var _a;\n return elm.classList.add((_a = BUILD.hydratedSelectorName) != null ? _a : \"hydrated\") ;\n};\n\n// src/runtime/set-value.ts\nvar getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName);\nvar setValue = (ref, propName, newVal, cmpMeta) => {\n const hostRef = getHostRef(ref);\n const elm = ref;\n const oldVal = hostRef.$instanceValues$.get(propName);\n const flags = hostRef.$flags$;\n const instance = elm;\n newVal = parsePropertyValue(newVal, cmpMeta.$members$[propName][0]);\n const areBothNaN = Number.isNaN(oldVal) && Number.isNaN(newVal);\n const didValueChange = newVal !== oldVal && !areBothNaN;\n if (didValueChange) {\n hostRef.$instanceValues$.set(propName, newVal);\n {\n if (cmpMeta.$watchers$ && flags & 128 /* isWatchReady */) {\n const watchMethods = cmpMeta.$watchers$[propName];\n if (watchMethods) {\n watchMethods.map((watchMethodName) => {\n try {\n instance[watchMethodName](newVal, oldVal, propName);\n } catch (e) {\n consoleError(e, elm);\n }\n });\n }\n }\n if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {\n scheduleUpdate(hostRef, false);\n }\n }\n }\n};\n\n// src/runtime/proxy-component.ts\nvar proxyComponent = (Cstr, cmpMeta, flags) => {\n var _a, _b;\n const prototype = Cstr.prototype;\n if (cmpMeta.$members$ || (cmpMeta.$watchers$ || Cstr.watchers)) {\n if (Cstr.watchers && !cmpMeta.$watchers$) {\n cmpMeta.$watchers$ = Cstr.watchers;\n }\n const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});\n members.map(([memberName, [memberFlags]]) => {\n if ((memberFlags & 31 /* Prop */ || memberFlags & 32 /* State */)) {\n Object.defineProperty(prototype, memberName, {\n get() {\n return getValue(this, memberName);\n },\n set(newValue) {\n setValue(this, memberName, newValue, cmpMeta);\n },\n configurable: true,\n enumerable: true\n });\n }\n });\n {\n const attrNameToPropName = /* @__PURE__ */ new Map();\n prototype.attributeChangedCallback = function(attrName, oldValue, newValue) {\n plt.jmp(() => {\n var _a2;\n const propName = attrNameToPropName.get(attrName);\n if (this.hasOwnProperty(propName)) {\n newValue = this[propName];\n delete this[propName];\n } else if (prototype.hasOwnProperty(propName) && typeof this[propName] === \"number\" && // cast type to number to avoid TS compiler issues\n this[propName] == newValue) {\n return;\n } else if (propName == null) {\n const hostRef = getHostRef(this);\n const flags2 = hostRef == null ? void 0 : hostRef.$flags$;\n if (flags2 && !(flags2 & 8 /* isConstructingInstance */) && flags2 & 128 /* isWatchReady */ && newValue !== oldValue) {\n const elm = this;\n const instance = elm;\n const entry = (_a2 = cmpMeta.$watchers$) == null ? void 0 : _a2[attrName];\n entry == null ? void 0 : entry.forEach((callbackName) => {\n if (instance[callbackName] != null) {\n instance[callbackName].call(instance, newValue, oldValue, attrName);\n }\n });\n }\n return;\n }\n this[propName] = newValue === null && typeof this[propName] === \"boolean\" ? false : newValue;\n });\n };\n Cstr.observedAttributes = Array.from(\n /* @__PURE__ */ new Set([\n ...Object.keys((_b = cmpMeta.$watchers$) != null ? _b : {}),\n ...members.filter(([_, m]) => m[0] & 15 /* HasAttribute */).map(([propName, m]) => {\n const attrName = m[1] || propName;\n attrNameToPropName.set(attrName, propName);\n return attrName;\n })\n ])\n );\n }\n }\n return Cstr;\n};\n\n// src/runtime/initialize-component.ts\nvar initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {\n let Cstr;\n if ((hostRef.$flags$ & 32 /* hasInitializedComponent */) === 0) {\n hostRef.$flags$ |= 32 /* hasInitializedComponent */;\n {\n Cstr = elm.constructor;\n const cmpTag = elm.localName;\n customElements.whenDefined(cmpTag).then(() => hostRef.$flags$ |= 128 /* isWatchReady */);\n }\n if (Cstr && Cstr.style) {\n let style;\n if (typeof Cstr.style === \"string\") {\n style = Cstr.style;\n }\n const scopeId2 = getScopeId(cmpMeta);\n if (!styles.has(scopeId2)) {\n const endRegisterStyles = createTime(\"registerStyles\", cmpMeta.$tagName$);\n registerStyle(scopeId2, style, !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */));\n endRegisterStyles();\n }\n }\n }\n const ancestorComponent = hostRef.$ancestorComponent$;\n const schedule = () => scheduleUpdate(hostRef, true);\n if (ancestorComponent && ancestorComponent[\"s-rc\"]) {\n ancestorComponent[\"s-rc\"].push(schedule);\n } else {\n schedule();\n }\n};\nvar fireConnectedCallback = (instance) => {\n};\n\n// src/runtime/connected-callback.ts\nvar connectedCallback = (elm) => {\n if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {\n const hostRef = getHostRef(elm);\n const cmpMeta = hostRef.$cmpMeta$;\n const endConnected = createTime(\"connectedCallback\", cmpMeta.$tagName$);\n if (!(hostRef.$flags$ & 1 /* hasConnected */)) {\n hostRef.$flags$ |= 1 /* hasConnected */;\n {\n if (// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field\n cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */)) {\n setContentReference(elm);\n }\n }\n {\n let ancestorComponent = elm;\n while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {\n if (ancestorComponent[\"s-p\"]) {\n attachToAncestor(hostRef, hostRef.$ancestorComponent$ = ancestorComponent);\n break;\n }\n }\n }\n if (cmpMeta.$members$) {\n Object.entries(cmpMeta.$members$).map(([memberName, [memberFlags]]) => {\n if (memberFlags & 31 /* Prop */ && elm.hasOwnProperty(memberName)) {\n const value = elm[memberName];\n delete elm[memberName];\n elm[memberName] = value;\n }\n });\n }\n {\n initializeComponent(elm, hostRef, cmpMeta);\n }\n } else {\n if (hostRef == null ? void 0 : hostRef.$lazyInstance$) ; else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {\n hostRef.$onReadyPromise$.then(() => fireConnectedCallback());\n }\n }\n endConnected();\n }\n};\nvar setContentReference = (elm) => {\n const contentRefElm = elm[\"s-cr\"] = doc.createComment(\n \"\"\n );\n contentRefElm[\"s-cn\"] = true;\n insertBefore(elm, contentRefElm, elm.firstChild);\n};\nvar disconnectedCallback = async (elm) => {\n if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {\n getHostRef(elm);\n }\n};\nvar proxyCustomElement = (Cstr, compactMeta) => {\n const cmpMeta = {\n $flags$: compactMeta[0],\n $tagName$: compactMeta[1]\n };\n {\n cmpMeta.$members$ = compactMeta[2];\n }\n {\n cmpMeta.$watchers$ = Cstr.$watchers$;\n }\n const originalConnectedCallback = Cstr.prototype.connectedCallback;\n const originalDisconnectedCallback = Cstr.prototype.disconnectedCallback;\n let hasHostListenerAttached = false;\n Object.assign(Cstr.prototype, {\n __registerHost() {\n registerHost(this, cmpMeta);\n },\n connectedCallback() {\n if (!hasHostListenerAttached) {\n getHostRef(this);\n hasHostListenerAttached = true;\n }\n connectedCallback(this);\n if (originalConnectedCallback) {\n originalConnectedCallback.call(this);\n }\n },\n disconnectedCallback() {\n disconnectedCallback(this);\n if (originalDisconnectedCallback) {\n originalDisconnectedCallback.call(this);\n }\n },\n __attachShadow() {\n {\n this.shadowRoot = this;\n }\n }\n });\n Cstr.is = cmpMeta.$tagName$;\n return proxyComponent(Cstr, cmpMeta);\n};\n\n// src/runtime/fragment.ts\nvar Fragment = (_, children) => children;\n\n// src/runtime/nonce.ts\nvar setNonce = (nonce) => plt.$nonce$ = nonce;\n\n// src/runtime/platform-options.ts\nvar setPlatformOptions = (opts) => Object.assign(plt, opts);\n\nexport { Fragment as F, H, setNonce as a, setPlatformOptions as b, createEvent as c, getAssetPath as g, h, proxyCustomElement as p, setAssetPath as s };\n\n//# sourceMappingURL=p-e4846fa2.js.map","var zustand = {};\n\nvar vanilla$1 = {};\n\nconst createStoreImpl = (createState) => {\n let state;\n const listeners = /* @__PURE__ */ new Set();\n const setState = (partial, replace) => {\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n if (!Object.is(nextState, state)) {\n const previousState = state;\n state = (replace != null ? replace : typeof nextState !== \"object\" || nextState === null) ? nextState : Object.assign({}, state, nextState);\n listeners.forEach((listener) => listener(state, previousState));\n }\n };\n const getState = () => state;\n const getInitialState = () => initialState;\n const subscribe = (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n };\n const api = { setState, getState, getInitialState, subscribe };\n const initialState = state = createState(setState, getState, api);\n return api;\n};\nconst createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;\n\nvanilla$1.createStore = createStore;\n\nvar react$1 = {};\n\nvar react = {exports: {}};\n\nvar react_production_min = {};\n\n/**\n * @license React\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nvar l$1=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p$1=Symbol.for(\"react.fragment\"),q$1=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v$1=Symbol.for(\"react.forward_ref\"),w$1=Symbol.for(\"react.suspense\"),x$1=Symbol.for(\"react.memo\"),y$1=Symbol.for(\"react.lazy\"),z$1=Symbol.iterator;function A$1(a){if(null===a||\"object\"!==typeof a)return null;a=z$1&&a[z$1]||a[\"@@iterator\"];return \"function\"===typeof a?a:null}\nvar B$1={isMounted:function(){return !1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C$1=Object.assign,D$1={};function E$1(a,b,e){this.props=a;this.context=b;this.refs=D$1;this.updater=e||B$1;}E$1.prototype.isReactComponent={};\nE$1.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\");};E$1.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\");};function F$1(){}F$1.prototype=E$1.prototype;function G$1(a,b,e){this.props=a;this.context=b;this.refs=D$1;this.updater=e||B$1;}var H$1=G$1.prototype=new F$1;\nH$1.constructor=G$1;C$1(H$1,E$1.prototype);H$1.isPureReactComponent=!0;var I=Array.isArray,J$1=Object.prototype.hasOwnProperty,K$1={current:null},L$1={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M$1(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J$1.call(b,d)&&!L$1.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];c.children=f;}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===c[d]&&(c[d]=g[d]);return {$$typeof:l$1,type:a,key:k,ref:h,props:c,_owner:K$1.current}}\nfunction N$1(a,b){return {$$typeof:l$1,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O$1(a){return \"object\"===typeof a&&null!==a&&a.$$typeof===l$1}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return \"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var P$1=/\\/+/g;function Q$1(a,b){return \"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction R(a,b,e,d,c){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case l$1:case n:h=!0;}}if(h)return h=a,c=c(h),a=\"\"===d?\".\"+Q$1(h,0):d,I(c)?(e=\"\",null!=a&&(e=a.replace(P$1,\"$&/\")+\"/\"),R(c,b,e,\"\",function(a){return a})):null!=c&&(O$1(c)&&(c=N$1(c,e+(!c.key||h&&h.key===c.key?\"\":(\"\"+c.key).replace(P$1,\"$&/\")+\"/\")+a)),b.push(c)),1;h=0;d=\"\"===d?\".\":d+\":\";if(I(a))for(var g=0;g<a.length;g++){k=\na[g];var f=d+Q$1(k,g);h+=R(k,b,e,f,c);}else if(f=A$1(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=d+Q$1(k,g++),h+=R(k,b,e,f,c);else if(\"object\"===k)throw b=String(a),Error(\"Objects are not valid as a React child (found: \"+(\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b)+\"). If you meant to render a collection of children, use an array instead.\");return h}\nfunction S$1(a,b,e){if(null==a)return a;var d=[],c=0;R(a,d,\"\",\"\",function(a){return b.call(e,a,c++)});return d}function T$1(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b;},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b;});-1===a._status&&(a._status=0,a._result=b);}if(1===a._status)return a._result.default;throw a._result;}\nvar U={current:null},V$1={transition:null},W$1={ReactCurrentDispatcher:U,ReactCurrentBatchConfig:V$1,ReactCurrentOwner:K$1};function X$1(){throw Error(\"act(...) is not supported in production builds of React.\");}\nreact_production_min.Children={map:S$1,forEach:function(a,b,e){S$1(a,function(){b.apply(this,arguments);},e);},count:function(a){var b=0;S$1(a,function(){b++;});return b},toArray:function(a){return S$1(a,function(a){return a})||[]},only:function(a){if(!O$1(a))throw Error(\"React.Children.only expected to receive a single React element child.\");return a}};react_production_min.Component=E$1;react_production_min.Fragment=p$1;react_production_min.Profiler=r;react_production_min.PureComponent=G$1;react_production_min.StrictMode=q$1;react_production_min.Suspense=w$1;\nreact_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W$1;react_production_min.act=X$1;\nreact_production_min.cloneElement=function(a,b,e){if(null===a||void 0===a)throw Error(\"React.cloneElement(...): The argument must be a React element, but you passed \"+a+\".\");var d=C$1({},a.props),c=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=K$1.current);void 0!==b.key&&(c=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)J$1.call(b,f)&&!L$1.hasOwnProperty(f)&&(d[f]=void 0===b[f]&&void 0!==g?g[f]:b[f]);}var f=arguments.length-2;if(1===f)d.children=e;else if(1<f){g=Array(f);\nfor(var m=0;m<f;m++)g[m]=arguments[m+2];d.children=g;}return {$$typeof:l$1,type:a.type,key:c,ref:k,props:d,_owner:h}};react_production_min.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};react_production_min.createElement=M$1;react_production_min.createFactory=function(a){var b=M$1.bind(null,a);b.type=a;return b};react_production_min.createRef=function(){return {current:null}};\nreact_production_min.forwardRef=function(a){return {$$typeof:v$1,render:a}};react_production_min.isValidElement=O$1;react_production_min.lazy=function(a){return {$$typeof:y$1,_payload:{_status:-1,_result:a},_init:T$1}};react_production_min.memo=function(a,b){return {$$typeof:x$1,type:a,compare:void 0===b?null:b}};react_production_min.startTransition=function(a){var b=V$1.transition;V$1.transition={};try{a();}finally{V$1.transition=b;}};react_production_min.unstable_act=X$1;react_production_min.useCallback=function(a,b){return U.current.useCallback(a,b)};react_production_min.useContext=function(a){return U.current.useContext(a)};\nreact_production_min.useDebugValue=function(){};react_production_min.useDeferredValue=function(a){return U.current.useDeferredValue(a)};react_production_min.useEffect=function(a,b){return U.current.useEffect(a,b)};react_production_min.useId=function(){return U.current.useId()};react_production_min.useImperativeHandle=function(a,b,e){return U.current.useImperativeHandle(a,b,e)};react_production_min.useInsertionEffect=function(a,b){return U.current.useInsertionEffect(a,b)};react_production_min.useLayoutEffect=function(a,b){return U.current.useLayoutEffect(a,b)};\nreact_production_min.useMemo=function(a,b){return U.current.useMemo(a,b)};react_production_min.useReducer=function(a,b,e){return U.current.useReducer(a,b,e)};react_production_min.useRef=function(a){return U.current.useRef(a)};react_production_min.useState=function(a){return U.current.useState(a)};react_production_min.useSyncExternalStore=function(a,b,e){return U.current.useSyncExternalStore(a,b,e)};react_production_min.useTransition=function(){return U.current.useTransition()};react_production_min.version=\"18.3.1\";\n\n{\n react.exports = react_production_min;\n}\n\nvar React = react.exports;\nvar vanilla = vanilla$1;\n\nconst identity = (arg) => arg;\nfunction useStore(api, selector = identity) {\n const slice = React.useSyncExternalStore(\n api.subscribe,\n () => selector(api.getState()),\n () => selector(api.getInitialState())\n );\n React.useDebugValue(slice);\n return slice;\n}\nconst createImpl = (createState) => {\n const api = vanilla.createStore(createState);\n const useBoundStore = (selector) => useStore(api, selector);\n Object.assign(useBoundStore, api);\n return useBoundStore;\n};\nconst create = (createState) => createState ? createImpl(createState) : createImpl;\n\nreact$1.create = create;\nreact$1.useStore = useStore;\n\n(function (exports) {\n\nvar vanilla = vanilla$1;\nvar react = react$1;\n\n\n\nObject.keys(vanilla).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return vanilla[k]; }\n\t});\n});\nObject.keys(react).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return react[k]; }\n\t});\n});\n}(zustand));\n\nvar D = Object.defineProperty;\nvar B = (n, t, r) => t in n ? D(n, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : n[t] = r;\nvar p = (n, t, r) => B(n, typeof t != \"symbol\" ? t + \"\" : t, r);\nconst L = \"useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict\";\nlet N = (n = 21) => {\n let t = \"\", r = crypto.getRandomValues(new Uint8Array(n |= 0));\n for (; n--; )\n t += L[r[n] & 63];\n return t;\n};\nfunction w(n, t, r, o) {\n return new (r || (r = Promise))(function(s, i) {\n function e(u) {\n try {\n d(o.next(u));\n } catch (a) {\n i(a);\n }\n }\n function c(u) {\n try {\n d(o.throw(u));\n } catch (a) {\n i(a);\n }\n }\n function d(u) {\n var a;\n u.done ? s(u.value) : (a = u.value, a instanceof r ? a : new r(function(g) {\n g(a);\n })).then(e, c);\n }\n d((o = o.apply(n, [])).next());\n });\n}\nfunction y(n, t) {\n var r, o, s, i, e = { label: 0, sent: function() {\n if (1 & s[0]) throw s[1];\n return s[1];\n }, trys: [], ops: [] };\n return i = { next: c(0), throw: c(1), return: c(2) }, typeof Symbol == \"function\" && (i[Symbol.iterator] = function() {\n return this;\n }), i;\n function c(d) {\n return function(u) {\n return function(a) {\n if (r) throw new TypeError(\"Generator is already executing.\");\n for (; i && (i = 0, a[0] && (e = 0)), e; ) try {\n if (r = 1, o && (s = 2 & a[0] ? o.return : a[0] ? o.throw || ((s = o.return) && s.call(o), 0) : o.next) && !(s = s.call(o, a[1])).done) return s;\n switch (o = 0, s && (a = [2 & a[0], s.value]), a[0]) {\n case 0:\n case 1:\n s = a;\n break;\n case 4:\n return e.label++, { value: a[1], done: !1 };\n case 5:\n e.label++, o = a[1], a = [0];\n continue;\n case 7:\n a = e.ops.pop(), e.trys.pop();\n continue;\n default:\n if (s = e.trys, !((s = s.length > 0 && s[s.length - 1]) || a[0] !== 6 && a[0] !== 2)) {\n e = 0;\n continue;\n }\n if (a[0] === 3 && (!s || a[1] > s[0] && a[1] < s[3])) {\n e.label = a[1];\n break;\n }\n if (a[0] === 6 && e.label < s[1]) {\n e.label = s[1], s = a;\n break;\n }\n if (s && e.label < s[2]) {\n e.label = s[2], e.ops.push(a);\n break;\n }\n s[2] && e.ops.pop(), e.trys.pop();\n continue;\n }\n a = t.call(n, e);\n } catch (g) {\n a = [6, g], o = 0;\n } finally {\n r = s = 0;\n }\n if (5 & a[0]) throw a[1];\n return { value: a[0] ? a[1] : void 0, done: !0 };\n }([d, u]);\n };\n }\n}\nvar b = { exclude: [] }, T = {}, j = { timeout: \"true\" }, v = function(n, t) {\n typeof window < \"u\" && (T[n] = t);\n}, q = function() {\n return Object.fromEntries(Object.entries(T).filter(function(n) {\n var t, r = n[0];\n return !(!((t = b == null ? void 0 : b.exclude) === null || t === void 0) && t.includes(r));\n }).map(function(n) {\n return [n[0], (0, n[1])()];\n }));\n};\nfunction M(n) {\n return n ^= n >>> 16, n = Math.imul(n, 2246822507), n ^= n >>> 13, n = Math.imul(n, 3266489909), (n ^= n >>> 16) >>> 0;\n}\nvar f = new Uint32Array([597399067, 2869860233, 951274213, 2716044179]);\nfunction m(n, t) {\n return n << t | n >>> 32 - t;\n}\nfunction x(n, t) {\n var r;\n if (t === void 0 && (t = 0), t = t ? 0 | t : 0, typeof n == \"string\" && (r = n, n = new TextEncoder().encode(r).buffer), !(n instanceof ArrayBuffer)) throw new TypeError(\"Expected key to be ArrayBuffer or string\");\n var o = new Uint32Array([t, t, t, t]);\n ((function(i, e) {\n for (var c = i.byteLength / 16 | 0, d = new Uint32Array(i, 0, 4 * c), u = 0; u < c; u++) {\n var a = d.subarray(4 * u, 4 * (u + 1));\n a[0] = Math.imul(a[0], f[0]), a[0] = m(a[0], 15), a[0] = Math.imul(a[0], f[1]), e[0] = e[0] ^ a[0], e[0] = m(e[0], 19), e[0] = e[0] + e[1], e[0] = Math.imul(e[0], 5) + 1444728091, a[1] = Math.imul(a[1], f[1]), a[1] = m(a[1], 16), a[1] = Math.imul(a[1], f[2]), e[1] = e[1] ^ a[1], e[1] = m(e[1], 17), e[1] = e[1] + e[2], e[1] = Math.imul(e[1], 5) + 197830471, a[2] = Math.imul(a[2], f[2]), a[2] = m(a[2], 17), a[2] = Math.imul(a[2], f[3]), e[2] = e[2] ^ a[2], e[2] = m(e[2], 15), e[2] = e[2] + e[3], e[2] = Math.imul(e[2], 5) + 2530024501, a[3] = Math.imul(a[3], f[3]), a[3] = m(a[3], 18), a[3] = Math.imul(a[3], f[0]), e[3] = e[3] ^ a[3], e[3] = m(e[3], 13), e[3] = e[3] + e[0], e[3] = Math.imul(e[3], 5) + 850148119;\n }\n }))(n, o), function(i, e) {\n var c = i.byteLength / 16 | 0, d = i.byteLength % 16, u = new Uint32Array(4), a = new Uint8Array(i, 16 * c, d);\n switch (d) {\n case 15:\n u[3] = u[3] ^ a[14] << 16;\n case 14:\n u[3] = u[3] ^ a[13] << 8;\n case 13:\n u[3] = u[3] ^ a[12] << 0, u[3] = Math.imul(u[3], f[3]), u[3] = m(u[3], 18), u[3] = Math.imul(u[3], f[0]), e[3] = e[3] ^ u[3];\n case 12:\n u[2] = u[2] ^ a[11] << 24;\n case 11:\n u[2] = u[2] ^ a[10] << 16;\n case 10:\n u[2] = u[2] ^ a[9] << 8;\n case 9:\n u[2] = u[2] ^ a[8] << 0, u[2] = Math.imul(u[2], f[2]), u[2] = m(u[2], 17), u[2] = Math.imul(u[2], f[3]), e[2] = e[2] ^ u[2];\n case 8:\n u[1] = u[1] ^ a[7] << 24;\n case 7:\n u[1] = u[1] ^ a[6] << 16;\n case 6:\n u[1] = u[1] ^ a[5] << 8;\n case 5:\n u[1] = u[1] ^ a[4] << 0, u[1] = Math.imul(u[1], f[1]), u[1] = m(u[1], 16), u[1] = Math.imul(u[1], f[2]), e[1] = e[1] ^ u[1];\n case 4:\n u[0] = u[0] ^ a[3] << 24;\n case 3:\n u[0] = u[0] ^ a[2] << 16;\n case 2:\n u[0] = u[0] ^ a[1] << 8;\n case 1:\n u[0] = u[0] ^ a[0] << 0, u[0] = Math.imul(u[0], f[0]), u[0] = m(u[0], 15), u[0] = Math.imul(u[0], f[1]), e[0] = e[0] ^ u[0];\n }\n }(n, o), function(i, e) {\n e[0] = e[0] ^ i.byteLength, e[1] = e[1] ^ i.byteLength, e[2] = e[2] ^ i.byteLength, e[3] = e[3] ^ i.byteLength, e[0] = e[0] + e[1] | 0, e[0] = e[0] + e[2] | 0, e[0] = e[0] + e[3] | 0, e[1] = e[1] + e[0] | 0, e[2] = e[2] + e[0] | 0, e[3] = e[3] + e[0] | 0, e[0] = M(e[0]), e[1] = M(e[1]), e[2] = M(e[2]), e[3] = M(e[3]), e[0] = e[0] + e[1] | 0, e[0] = e[0] + e[2] | 0, e[0] = e[0] + e[3] | 0, e[1] = e[1] + e[0] | 0, e[2] = e[2] + e[0] | 0, e[3] = e[3] + e[0] | 0;\n }(n, o);\n var s = new Uint8Array(o.buffer);\n return Array.from(s).map(function(i) {\n return i.toString(16).padStart(2, \"0\");\n }).join(\"\");\n}\nfunction G(n, t) {\n return new Promise(function(r) {\n setTimeout(function() {\n return r(t);\n }, n);\n });\n}\nfunction W(n, t, r) {\n return Promise.all(n.map(function(o) {\n return Promise.race([o, G(t, r)]);\n }));\n}\nfunction V() {\n return w(this, void 0, void 0, function() {\n var n, t, r, o, s;\n return y(this, function(i) {\n switch (i.label) {\n case 0:\n return i.trys.push([0, 2, , 3]), n = q(), t = Object.keys(n), [4, W(Object.values(n), (b == null ? void 0 : b.timeout) || 1e3, j)];\n case 1:\n return r = i.sent(), o = r.filter(function(e) {\n return e !== void 0;\n }), s = {}, o.forEach(function(e, c) {\n s[t[c]] = e;\n }), [2, F(s, b.exclude || [])];\n case 2:\n throw i.sent();\n case 3:\n return [2];\n }\n });\n });\n}\nfunction F(n, t) {\n var r = {}, o = function(i) {\n if (n.hasOwnProperty(i)) {\n var e = n[i];\n if (typeof e != \"object\" || Array.isArray(e)) t.includes(i) || (r[i] = e);\n else {\n var c = F(e, t.map(function(d) {\n return d.startsWith(i + \".\") ? d.slice(i.length + 1) : d;\n }));\n Object.keys(c).length > 0 && (r[i] = c);\n }\n }\n };\n for (var s in n) o(s);\n return r;\n}\nfunction H(n) {\n return w(this, void 0, void 0, function() {\n var t, r;\n return y(this, function(o) {\n switch (o.label) {\n case 0:\n return o.trys.push([0, 2, , 3]), [4, V()];\n case 1:\n return t = o.sent(), r = x(JSON.stringify(t)), [2, r.toString()];\n case 2:\n throw o.sent();\n case 3:\n return [2];\n }\n });\n });\n}\nfunction $(n) {\n for (var t = 0, r = 0; r < n.length; ++r) t += Math.abs(n[r]);\n return t;\n}\nfunction _(n, t, r) {\n for (var o = [], s = 0; s < n[0].data.length; s++) {\n for (var i = [], e = 0; e < n.length; e++) i.push(n[e].data[s]);\n o.push(K(i));\n }\n var c = new Uint8ClampedArray(o);\n return new ImageData(c, t, r);\n}\nfunction K(n) {\n if (n.length === 0) return 0;\n for (var t = {}, r = 0, o = n; r < o.length; r++)\n t[i = o[r]] = (t[i] || 0) + 1;\n var s = n[0];\n for (var i in t) t[i] > t[s] && (s = parseInt(i, 10));\n return s;\n}\nfunction E() {\n if (typeof navigator > \"u\") return { name: \"unknown\", version: \"unknown\" };\n for (var n = navigator.userAgent, t = { Edg: \"Edge\", OPR: \"Opera\" }, r = 0, o = [/(?<name>Edge|Edg)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>(?:Chrome|Chromium|OPR|Opera|Vivaldi|Brave))\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>(?:Firefox|Waterfox|Iceweasel|IceCat))\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>Safari)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>MSIE|Trident|IEMobile).+?(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>[A-Za-z]+)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>SamsungBrowser)\\/(?<version>\\d+(?:\\.\\d+)?)/]; r < o.length; r++) {\n var s = o[r], i = n.match(s);\n if (i && i.groups) return { name: t[i.groups.name] || i.groups.name, version: i.groups.version };\n }\n return { name: \"unknown\", version: \"unknown\" };\n}\nv(\"audio\", function() {\n return w(this, void 0, void 0, function() {\n return y(this, function(n) {\n return [2, new Promise(function(t, r) {\n try {\n var o = new (window.OfflineAudioContext || window.webkitOfflineAudioContext)(1, 5e3, 44100), s = o.createBufferSource(), i = o.createOscillator();\n i.frequency.value = 1e3;\n var e, c = o.createDynamicsCompressor();\n c.threshold.value = -50, c.knee.value = 40, c.ratio.value = 12, c.attack.value = 0, c.release.value = 0.2, i.connect(c), c.connect(o.destination), i.start(), o.oncomplete = function(d) {\n e = d.renderedBuffer.getChannelData(0), t({ sampleHash: $(e), oscillator: i.type, maxChannels: o.destination.maxChannelCount, channelCountMode: s.channelCountMode });\n }, o.startRendering();\n } catch (d) {\n console.error(\"Error creating audio fingerprint:\", d), r(d);\n }\n })];\n });\n });\n});\nvar z = E().name !== \"SamsungBrowser\" ? 1 : 3, C = 280, k = 20;\nE().name != \"Firefox\" && v(\"canvas\", function() {\n return document.createElement(\"canvas\").getContext(\"2d\"), new Promise(function(n) {\n var t = Array.from({ length: z }, function() {\n return function() {\n var r = document.createElement(\"canvas\"), o = r.getContext(\"2d\");\n if (!o) return new ImageData(1, 1);\n r.width = C, r.height = k;\n var s = o.createLinearGradient(0, 0, r.width, r.height);\n s.addColorStop(0, \"red\"), s.addColorStop(0.16666666666666666, \"orange\"), s.addColorStop(0.3333333333333333, \"yellow\"), s.addColorStop(0.5, \"green\"), s.addColorStop(0.6666666666666666, \"blue\"), s.addColorStop(0.8333333333333334, \"indigo\"), s.addColorStop(1, \"violet\"), o.fillStyle = s, o.fillRect(0, 0, r.width, r.height);\n var i = \"Random Text WMwmil10Oo\";\n o.font = \"23.123px Arial\", o.fillStyle = \"black\", o.fillText(i, -5, 15), o.fillStyle = \"rgba(0, 0, 255, 0.5)\", o.fillText(i, -3.3, 17.7), o.beginPath(), o.moveTo(0, 0), o.lineTo(2 * r.width / 7, r.height), o.strokeStyle = \"white\", o.lineWidth = 2, o.stroke();\n var e = o.getImageData(0, 0, r.width, r.height);\n return e;\n }();\n });\n n({ commonImageDataHash: x(_(t, C, k).data.toString()).toString() });\n });\n});\nvar A, J = [\"Arial\", \"Arial Black\", \"Arial Narrow\", \"Arial Rounded MT\", \"Arimo\", \"Archivo\", \"Barlow\", \"Bebas Neue\", \"Bitter\", \"Bookman\", \"Calibri\", \"Cabin\", \"Candara\", \"Century\", \"Century Gothic\", \"Comic Sans MS\", \"Constantia\", \"Courier\", \"Courier New\", \"Crimson Text\", \"DM Mono\", \"DM Sans\", \"DM Serif Display\", \"DM Serif Text\", \"Dosis\", \"Droid Sans\", \"Exo\", \"Fira Code\", \"Fira Sans\", \"Franklin Gothic Medium\", \"Garamond\", \"Geneva\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Inconsolata\", \"Indie Flower\", \"Inter\", \"Josefin Sans\", \"Karla\", \"Lato\", \"Lexend\", \"Lucida Bright\", \"Lucida Console\", \"Lucida Sans Unicode\", \"Manrope\", \"Merriweather\", \"Merriweather Sans\", \"Montserrat\", \"Myriad\", \"Noto Sans\", \"Nunito\", \"Nunito Sans\", \"Open Sans\", \"Optima\", \"Orbitron\", \"Oswald\", \"Pacifico\", \"Palatino\", \"Perpetua\", \"PT Sans\", \"PT Serif\", \"Poppins\", \"Prompt\", \"Public Sans\", \"Quicksand\", \"Rajdhani\", \"Recursive\", \"Roboto\", \"Roboto Condensed\", \"Rockwell\", \"Rubik\", \"Segoe Print\", \"Segoe Script\", \"Segoe UI\", \"Sora\", \"Source Sans Pro\", \"Space Mono\", \"Tahoma\", \"Taviraj\", \"Times\", \"Times New Roman\", \"Titillium Web\", \"Trebuchet MS\", \"Ubuntu\", \"Varela Round\", \"Verdana\", \"Work Sans\"], Y = [\"monospace\", \"sans-serif\", \"serif\"];\nfunction P(n, t) {\n if (!n) throw new Error(\"Canvas context not supported\");\n return n.font = \"72px \".concat(t), n.measureText(\"WwMmLli0Oo\").width;\n}\nfunction Q() {\n var n, t = document.createElement(\"canvas\"), r = (n = t.getContext(\"webgl\")) !== null && n !== void 0 ? n : t.getContext(\"experimental-webgl\");\n if (r && \"getParameter\" in r) try {\n var o = (r.getParameter(r.VENDOR) || \"\").toString(), s = (r.getParameter(r.RENDERER) || \"\").toString(), i = { vendor: o, renderer: s, version: (r.getParameter(r.VERSION) || \"\").toString(), shadingLanguageVersion: (r.getParameter(r.SHADING_LANGUAGE_VERSION) || \"\").toString() };\n if (!s.length || !o.length) {\n var e = r.getExtension(\"WEBGL_debug_renderer_info\");\n if (e) {\n var c = (r.getParameter(e.UNMASKED_VENDOR_WEBGL) || \"\").toString(), d = (r.getParameter(e.UNMASKED_RENDERER_WEBGL) || \"\").toString();\n c && (i.vendorUnmasked = c), d && (i.rendererUnmasked = d);\n }\n }\n return i;\n } catch {\n }\n return \"undefined\";\n}\nfunction X() {\n var n = new Float32Array(1), t = new Uint8Array(n.buffer);\n return n[0] = 1 / 0, n[0] = n[0] - n[0], t[3];\n}\nfunction Z(n, t) {\n var r = {};\n return t.forEach(function(o) {\n var s = function(i) {\n if (i.length === 0) return null;\n var e = {};\n i.forEach(function(u) {\n var a = String(u);\n e[a] = (e[a] || 0) + 1;\n });\n var c = i[0], d = 1;\n return Object.keys(e).forEach(function(u) {\n e[u] > d && (c = u, d = e[u]);\n }), c;\n }(n.map(function(i) {\n return o in i ? i[o] : void 0;\n }).filter(function(i) {\n return i !== void 0;\n }));\n s && (r[o] = s);\n }), r;\n}\nfunction ee() {\n var n = [], t = { \"prefers-contrast\": [\"high\", \"more\", \"low\", \"less\", \"forced\", \"no-preference\"], \"any-hover\": [\"hover\", \"none\"], \"any-pointer\": [\"none\", \"coarse\", \"fine\"], pointer: [\"none\", \"coarse\", \"fine\"], hover: [\"hover\", \"none\"], update: [\"fast\", \"slow\"], \"inverted-colors\": [\"inverted\", \"none\"], \"prefers-reduced-motion\": [\"reduce\", \"no-preference\"], \"prefers-reduced-transparency\": [\"reduce\", \"no-preference\"], scripting: [\"none\", \"initial-only\", \"enabled\"], \"forced-colors\": [\"active\", \"none\"] };\n return Object.keys(t).forEach(function(r) {\n t[r].forEach(function(o) {\n matchMedia(\"(\".concat(r, \": \").concat(o, \")\")).matches && n.push(\"\".concat(r, \": \").concat(o));\n });\n }), n;\n}\nfunction te() {\n if (window.location.protocol === \"https:\" && typeof window.ApplePaySession == \"function\") try {\n for (var n = window.ApplePaySession.supportsVersion, t = 15; t > 0; t--) if (n(t)) return t;\n } catch {\n return 0;\n }\n return 0;\n}\nE().name != \"Firefox\" && v(\"fonts\", function() {\n var n = this;\n return new Promise(function(t, r) {\n try {\n (function(o) {\n var s;\n w(this, void 0, void 0, function() {\n var i, e, c;\n return y(this, function(d) {\n switch (d.label) {\n case 0:\n return document.body ? [3, 2] : [4, (u = 50, new Promise(function(g) {\n return setTimeout(g, u, a);\n }))];\n case 1:\n return d.sent(), [3, 0];\n case 2:\n if ((i = document.createElement(\"iframe\")).setAttribute(\"frameBorder\", \"0\"), (e = i.style).setProperty(\"position\", \"fixed\"), e.setProperty(\"display\", \"block\", \"important\"), e.setProperty(\"visibility\", \"visible\"), e.setProperty(\"border\", \"0\"), e.setProperty(\"opacity\", \"0\"), i.src = \"about:blank\", document.body.appendChild(i), !(c = i.contentDocument || ((s = i.contentWindow) === null || s === void 0 ? void 0 : s.document))) throw new Error(\"Iframe document is not accessible\");\n return o({ iframe: c }), setTimeout(function() {\n document.body.removeChild(i);\n }, 0), [2];\n }\n var u, a;\n });\n });\n })(function(o) {\n var s = o.iframe;\n return w(n, void 0, void 0, function() {\n var i, e, c, d;\n return y(this, function(u) {\n return i = s.createElement(\"canvas\"), e = i.getContext(\"2d\"), c = Y.map(function(a) {\n return P(e, a);\n }), d = {}, J.forEach(function(a) {\n var g = P(e, a);\n c.includes(g) || (d[a] = g);\n }), t(d), [2];\n });\n });\n });\n } catch {\n r({ error: \"unsupported\" });\n }\n });\n}), v(\"hardware\", function() {\n return new Promise(function(n, t) {\n var r = navigator.deviceMemory !== void 0 ? navigator.deviceMemory : 0, o = window.performance && window.performance.memory ? window.performance.memory : 0;\n n({ videocard: Q(), architecture: X(), deviceMemory: r.toString() || \"undefined\", jsHeapSizeLimit: o.jsHeapSizeLimit || 0 });\n });\n}), v(\"locales\", function() {\n return new Promise(function(n) {\n n({ languages: navigator.language, timezone: Intl.DateTimeFormat().resolvedOptions().timeZone });\n });\n}), v(\"permissions\", function() {\n return w(this, void 0, void 0, function() {\n var n;\n return y(this, function(t) {\n return A = (b == null ? void 0 : b.permissions_to_check) || [\"accelerometer\", \"accessibility\", \"accessibility-events\", \"ambient-light-sensor\", \"background-fetch\", \"background-sync\", \"bluetooth\", \"camera\", \"clipboard-read\", \"clipboard-write\", \"device-info\", \"display-capture\", \"gyroscope\", \"geolocation\", \"local-fonts\", \"magnetometer\", \"microphone\", \"midi\", \"nfc\", \"notifications\", \"payment-handler\", \"persistent-storage\", \"push\", \"speaker\", \"storage-access\", \"top-level-storage-access\", \"window-management\", \"query\"], n = Array.from({ length: (b == null ? void 0 : b.retries) || 3 }, function() {\n return function() {\n return w(this, void 0, void 0, function() {\n var r, o, s, i, e;\n return y(this, function(c) {\n switch (c.label) {\n case 0:\n r = {}, o = 0, s = A, c.label = 1;\n case 1:\n if (!(o < s.length)) return [3, 6];\n i = s[o], c.label = 2;\n case 2:\n return c.trys.push([2, 4, , 5]), [4, navigator.permissions.query({ name: i })];\n case 3:\n return e = c.sent(), r[i] = e.state.toString(), [3, 5];\n case 4:\n return c.sent(), [3, 5];\n case 5:\n return o++, [3, 1];\n case 6:\n return [2, r];\n }\n });\n });\n }();\n }), [2, Promise.all(n).then(function(r) {\n return Z(r, A);\n })];\n });\n });\n}), v(\"plugins\", function() {\n var n = [];\n if (navigator.plugins) for (var t = 0; t < navigator.plugins.length; t++) {\n var r = navigator.plugins[t];\n n.push([r.name, r.filename, r.description].join(\"|\"));\n }\n return new Promise(function(o) {\n o({ plugins: n });\n });\n}), v(\"screen\", function() {\n return new Promise(function(n) {\n n({ is_touchscreen: navigator.maxTouchPoints > 0, maxTouchPoints: navigator.maxTouchPoints, colorDepth: screen.colorDepth, mediaMatches: ee() });\n });\n}), v(\"system\", function() {\n return new Promise(function(n) {\n var t = E();\n n({ platform: window.navigator.platform, cookieEnabled: window.navigator.cookieEnabled, productSub: navigator.productSub, product: navigator.product, useragent: navigator.userAgent, hardwareConcurrency: navigator.hardwareConcurrency, browser: { name: t.name, version: t.version }, applePayVersion: te() });\n });\n});\nvar h, ne = E().name !== \"SamsungBrowser\" ? 1 : 3, l = null;\nv(\"webgl\", function() {\n return w(this, void 0, void 0, function() {\n var n;\n return y(this, function(t) {\n typeof document < \"u\" && ((h = document.createElement(\"canvas\")).width = 200, h.height = 100, l = h.getContext(\"webgl\"));\n try {\n if (!l) throw new Error(\"WebGL not supported\");\n return n = Array.from({ length: ne }, function() {\n return function() {\n try {\n if (!l) throw new Error(\"WebGL not supported\");\n var r = `\n attribute vec2 position;\n void main() {\n gl_Position = vec4(position, 0.0, 1.0);\n }\n `, o = `\n precision mediump float;\n void main() {\n gl_FragColor = vec4(0.812, 0.195, 0.553, 0.921); // Set line color\n }\n `, s = l.createShader(l.VERTEX_SHADER), i = l.createShader(l.FRAGMENT_SHADER);\n if (!s || !i) throw new Error(\"Failed to create shaders\");\n if (l.shaderSource(s, r), l.shaderSource(i, o), l.compileShader(s), !l.getShaderParameter(s, l.COMPILE_STATUS)) throw new Error(\"Vertex shader compilation failed: \" + l.getShaderInfoLog(s));\n if (l.compileShader(i), !l.getShaderParameter(i, l.COMPILE_STATUS)) throw new Error(\"Fragment shader compilation failed: \" + l.getShaderInfoLog(i));\n var e = l.createProgram();\n if (!e) throw new Error(\"Failed to create shader program\");\n if (l.attachShader(e, s), l.attachShader(e, i), l.linkProgram(e), !l.getProgramParameter(e, l.LINK_STATUS)) throw new Error(\"Shader program linking failed: \" + l.getProgramInfoLog(e));\n l.useProgram(e);\n for (var c = 137, d = new Float32Array(4 * c), u = 2 * Math.PI / c, a = 0; a < c; a++) {\n var g = a * u;\n d[4 * a] = 0, d[4 * a + 1] = 0, d[4 * a + 2] = Math.cos(g) * (h.width / 2), d[4 * a + 3] = Math.sin(g) * (h.height / 2);\n }\n var U = l.createBuffer();\n l.bindBuffer(l.ARRAY_BUFFER, U), l.bufferData(l.ARRAY_BUFFER, d, l.STATIC_DRAW);\n var I = l.getAttribLocation(e, \"position\");\n l.enableVertexAttribArray(I), l.vertexAttribPointer(I, 2, l.FLOAT, !1, 0, 0), l.viewport(0, 0, h.width, h.height), l.clearColor(0, 0, 0, 1), l.clear(l.COLOR_BUFFER_BIT), l.drawArrays(l.LINES, 0, 2 * c);\n var R = new Uint8ClampedArray(h.width * h.height * 4);\n return l.readPixels(0, 0, h.width, h.height, l.RGBA, l.UNSIGNED_BYTE, R), new ImageData(R, h.width, h.height);\n } catch {\n return new ImageData(1, 1);\n } finally {\n l && (l.bindBuffer(l.ARRAY_BUFFER, null), l.useProgram(null), l.viewport(0, 0, l.drawingBufferWidth, l.drawingBufferHeight), l.clearColor(0, 0, 0, 0));\n }\n }();\n }), [2, { commonImageHash: x(_(n, h.width, h.height).data.toString()).toString() }];\n } catch {\n return [2, { webgl: \"unsupported\" }];\n }\n return [2];\n });\n });\n});\nvar S = function(n, t, r, o) {\n for (var s = (r - t) / o, i = 0, e = 0; e < o; e++)\n i += n(t + (e + 0.5) * s);\n return i * s;\n};\nv(\"math\", function() {\n return w(void 0, void 0, void 0, function() {\n return y(this, function(n) {\n return [2, { acos: Math.acos(0.5), asin: S(Math.asin, -1, 1, 97), atan: S(Math.atan, -1, 1, 97), cos: S(Math.cos, 0, Math.PI, 97), cosh: Math.cosh(9 / 7), e: Math.E, largeCos: Math.cos(1e20), largeSin: Math.sin(1e20), largeTan: Math.tan(1e20), log: Math.log(1e3), pi: Math.PI, sin: S(Math.sin, -Math.PI, Math.PI, 97), sinh: S(Math.sinh, -9 / 7, 7 / 9, 97), sqrt: Math.sqrt(2), tan: S(Math.tan, 0, 2 * Math.PI, 97), tanh: S(Math.tanh, -9 / 7, 7 / 9, 97) }];\n });\n });\n});\nclass ie {\n constructor(t, r) {\n p(this, \"config\");\n p(this, \"sdkInfo\");\n p(this, \"userId\");\n p(this, \"sessionId\");\n /**\n * Performs a search operation.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {Promise<SearchcraftResponse>} - Returns the search response or throws an error.\n */\n p(this, \"search\", async (t) => {\n if (this.sendMeasureEvent(\"search_requested\", {\n search_term: t.query\n }), (t.query.match(/\"/g) || []).length % 2 !== 0)\n throw new Error(\n \"The search term contains an uneven number of quote characters.\"\n );\n try {\n const o = {\n query: this.buildQueryObject(t),\n limit: t.limit ?? 20\n // Default to 20 if not provided\n };\n t.offset !== void 0 && (o.offset = t.offset), t.order_by && (o.order_by = t.order_by, o.sort = t.sort === \"desc\" || t.sort === \"asc\" ? t.sort : \"asc\");\n const s = {\n method: \"POST\",\n headers: {\n Authorization: this.config.readKey,\n \"Content-Type\": \"application/json\",\n \"X-Sc-User-Id\": this.userId\n },\n body: JSON.stringify(o)\n }, i = await fetch(this.baseSearchUrl, s);\n if (!i.ok)\n throw new Error(\n `Error: ${i.statusText} (Status: ${i.status})`\n );\n const e = await i.json();\n return this.sendMeasureEvent(\"search_response_received\", {\n search_term: t.query,\n number_of_documents: e.data.count\n }), e;\n } catch (o) {\n throw console.error(\"Error parsing response:\", o), o;\n }\n });\n /**\n * Sends a measure event to the `/measure/event` endpoint for analytics purposes.\n *\n * @param {MeasureEventName} eventName - Name of the event.\n * @param {Partial<MeasureRequestProperties>} properties - Additional properties to send with the event.\n * @param {Partial<MeasureRequestUser>} user - Additional user properites to send with the event.\n */\n p(this, \"sendMeasureEvent\", async (t, r = {}, o = {}) => {\n const s = {\n event_name: t,\n properties: {\n searchcraft_index_names: this.config.index,\n ...r\n },\n user: {\n ...this.measureRequestUser,\n ...o\n }\n }, i = JSON.stringify(s), e = `${this.baseMeasureUrl}/event`;\n try {\n const c = await fetch(e, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: this.config.readKey,\n \"X-Sc-User-Id\": this.userId\n },\n body: i,\n keepalive: !0\n });\n if (!c.ok)\n throw new Error(\n `Failed to send request: ${c.status} ${c.statusText}`\n );\n return;\n } catch (c) {\n throw console.error(\"Error sending MeasureRequest:\", c), c;\n }\n });\n if (!t.endpointURL || !t.index || !t.readKey)\n throw new Error(\n \"Endpoint URL, Index value(s), and Read Key must be provided\"\n );\n this.config = t, this.sdkInfo = r, this.userId = t.userId || \"\", this.sessionId = N(), this.initMeasure();\n }\n /**\n * Initializes this.userId based on config & sends the `sdk_innitialized` event.\n */\n async initMeasure() {\n if (!this.config.userId) {\n const t = await H();\n this.userId = t;\n }\n this.sendMeasureEvent(\"sdk_initialized\");\n }\n /**\n * Getter for the base url used by the /search endpoint.\n */\n get baseSearchUrl() {\n return `${this.config.endpointURL}/index/${this.config.index.join(\",\")}/search`;\n }\n /**\n * Getter for the base url used by the /measure endpoints.\n */\n get baseMeasureUrl() {\n return `${this.config.endpointURL}/measure`;\n }\n /**\n * Getter for the measure request user. Uses config values + navigator values.\n */\n get measureRequestUser() {\n return {\n user_id: this.userId,\n locale: navigator.language || \"en-US\",\n os: navigator.userAgent.includes(\"Windows\") ? \"Windows\" : navigator.userAgent.includes(\"Mac\") ? \"Mac\" : navigator.userAgent.includes(\"Linux\") ? \"Linux\" : \"Unknown\",\n platform: navigator.platform || \"Unknown\",\n sdk_name: this.sdkInfo.sdkName,\n sdk_version: this.sdkInfo.sdkVersion,\n user_agent: navigator.userAgent || \"Unknown\"\n };\n }\n /**\n * Builds a query object for the search request.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {QueryObject} - A properly formatted query object.\n */\n buildQueryObject(t) {\n const r = [];\n let o = \"should\";\n return t.facetPathsForIndexFields && Object.keys(t.facetPathsForIndexFields).forEach(\n (s) => {\n var e;\n const i = (e = t.facetPathsForIndexFields) == null ? void 0 : e[s];\n i && (o = \"must\", r.push({\n occur: o,\n normal: {\n ctx: i.value\n }\n }));\n }\n ), t.rangeValueForIndexFields && Object.keys(t.rangeValueForIndexFields).forEach(\n (s) => {\n var e;\n const i = (e = t.rangeValueForIndexFields) == null ? void 0 : e[s];\n i && (o = \"must\", r.push({\n occur: o,\n normal: {\n ctx: i.value\n }\n }));\n }\n ), t.sort === \"desc\" ? t.order_by = \"date_published\" : t.order_by = \"\", r.push({\n occur: o,\n // Valid, as 'occur' is a required property in QueryItem\n [t.mode]: { ctx: t.query }\n // Ensure dynamic mode is inside queryType\n }), r;\n }\n}\nvar O = /* @__PURE__ */ ((n) => (n[n.DEBUG = 0] = \"DEBUG\", n[n.INFO = 1] = \"INFO\", n[n.WARN = 2] = \"WARN\", n[n.ERROR = 3] = \"ERROR\", n))(O || {});\nclass ae {\n constructor(t) {\n p(this, \"logLevel\");\n p(this, \"logFormatter\");\n this.logLevel = t.logLevel || 1, this.logFormatter = t.logFormatter || this.defaultFormatter;\n }\n defaultFormatter(t, r) {\n return `[${O[t]}] ${( new Date()).toISOString()}: ${r}`;\n }\n debug(t) {\n this.logLevel <= 0 && console.log(this.logFormatter(0, t));\n }\n info(t) {\n this.logLevel <= 1 && console.info(this.logFormatter(1, t));\n }\n warn(t) {\n this.logLevel <= 2 && console.warn(this.logFormatter(2, t));\n }\n error(t) {\n this.logLevel <= 3 && console.error(this.logFormatter(3, t));\n }\n}\n\n// Zustand store for Searchcraft state\nconst useSearchcraftStore = zustand.create((set, get) => {\n let searchcraft = null;\n let debuggerInstance = null;\n const log = (level, message) => {\n if (debuggerInstance) {\n switch (level) {\n case O.DEBUG:\n debuggerInstance.debug(message);\n break;\n case O.INFO:\n debuggerInstance.info(message);\n break;\n case O.WARN:\n debuggerInstance.warn(message);\n break;\n case O.ERROR:\n debuggerInstance.error(message);\n break;\n }\n }\n };\n return {\n resetFacetPaths: () => {\n set({\n facetPathsForIndexFields: {},\n });\n },\n addFacetPathsForIndexField: (data) => set((state) => ({\n facetPathsForIndexFields: Object.assign(Object.assign({}, state.facetPathsForIndexFields), { [data.fieldName]: data }),\n })),\n removeFacetPathsForIndexField: (fieldName) => set((state) => {\n const currentPaths = state.facetPathsForIndexFields;\n delete currentPaths[fieldName];\n return {\n facetPathsForIndexFields: Object.assign({}, currentPaths),\n };\n }),\n addRangeValueForIndexField: (data) => set((state) => ({\n rangeValueForIndexFields: Object.assign(Object.assign({}, state.rangeValueForIndexFields), { [data.fieldName]: data }),\n })),\n removeRangeValueForIndexField: (fieldName) => set((state) => {\n const currentValues = state.rangeValueForIndexFields;\n delete currentValues[fieldName];\n return {\n rangeValueForIndexFields: Object.assign({}, currentValues),\n };\n }),\n setSearchMode: (mode) => set({ searchMode: mode }),\n setSortType: (type) => set({ sortType: type }),\n searchMode: 'fuzzy',\n sortType: 'asc',\n facetPathsForIndexFields: {},\n rangeValueForIndexFields: {},\n query: '',\n isRequesting: false,\n searchResults: null,\n facets: null,\n getSearchcraftInstance: () => searchcraft,\n setQuery: (query) => {\n /**\n * When a new query is set, also reset the sort type, search mode, and facet paths.\n */\n set(Object.assign({ query, facetPathsForIndexFields: {} }, (query.trim().length === 0 && {\n searchMode: 'fuzzy',\n sortType: 'asc',\n })));\n },\n setSearchResults: (results) => set({ searchResults: results }),\n setFacets: (facets) => set({ facets }),\n setIsRequesting: (isRequesting) => set({ isRequesting }),\n search: async () => {\n const state = get();\n log(O.INFO, `Starting search with search term: \"${state.query}\"`);\n if (!searchcraft) {\n throw new Error('Searchcraft instance is not initialized.');\n }\n if (!state.query.trim()) {\n log(O.INFO, 'No search request was made: search term was empty.');\n state.setSearchResults(null);\n return;\n }\n state.setIsRequesting(true);\n try {\n const results = await searchcraft.search({\n query: state.query,\n mode: state.searchMode,\n sort: state.sortType,\n facetPathsForIndexFields: state.facetPathsForIndexFields,\n rangeValueForIndexFields: state.rangeValueForIndexFields,\n });\n const updatedFacets = results.data.facets || null;\n state.setSearchResults(results);\n state.setFacets(updatedFacets);\n log(O.DEBUG, `Search results: ${JSON.stringify(results)}`);\n log(O.DEBUG, `Updated facets: ${JSON.stringify(updatedFacets)}`);\n }\n catch (error) {\n console.error(`Search failed: ${error.message}`);\n log(O.ERROR, `Search failed with error: ${error.message}`);\n }\n finally {\n state.setIsRequesting(false);\n }\n },\n initialize: (searchcraftInstance, debug = false) => {\n searchcraft = searchcraftInstance;\n debuggerInstance = debug\n ? new ae({ logLevel: O.DEBUG })\n : null;\n log(O.INFO, 'Searchcraft store initialized.');\n },\n };\n});\nconst useThemeStore = zustand.create((set) => ({\n theme: 'light',\n toggleTheme: () => set((state) => ({ theme: state.theme === 'light' ? 'dark' : 'light' })),\n}));\n\nexport { useThemeStore as a, ie as i, useSearchcraftStore as u };\n\n//# sourceMappingURL=p-86911576.js.map","import { p as proxyCustomElement, H, h, F as Fragment } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-86911576.js';\n\nconst searchcraftBaseSearchResultModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-search-result-container{all:unset;align-items:flex-start;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:8px;color:inherit;background-color:var(--sc-surface-neutral-primary)}@media (min-width: 900px){.searchcraft-search-result-container{flex-direction:row}}a.searchcraft-search-result-container{cursor:pointer;transition:background-color 100ms}.searchcraft-base-search-result-content-container{flex:1;display:flex;flex-direction:column;gap:8px}.searchcraft-search-result-image{border-radius:var(--sc-image-border-radius);width:100%}@media (min-width: 900px){.searchcraft-search-result-image{width:200px}}.searchcraft-base-search-result-title{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-bold-font-size);font-weight:var(--sc-body-bold-font-weight);line-height:var(--sc-body-bold-line-height);margin:0;color:var(--sc-content-neutral-primary)}.searchcraft-base-search-result-subtitle{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);margin:0;color:var(--sc-content-disabled)}.searchcraft-base-search-result-body-content{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-neutral-secondary)}.searchcraft-base-search-result-footer-content{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-disabled)}\";\nconst SearchcraftBaseSearchResultStyle0 = searchcraftBaseSearchResultModuleCss;\n\nconst SearchcraftBaseSearchResult = /*@__PURE__*/ proxyCustomElement(class SearchcraftBaseSearchResult extends H {\n constructor() {\n super();\n this.__registerHost();\n this.searchcraftStore = useSearchcraftStore.getState();\n this.recordMeasureEvent = () => {\n var _a, _b, _c;\n const searchcraft = this.searchcraftStore.getSearchcraftInstance();\n if (searchcraft) {\n const document_position = this.documentPosition;\n const search_term = this.searchcraftStore.query;\n const number_of_documents = ((_c = (_b = (_a = this.searchcraftStore.searchResults) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.hits) === null || _c === void 0 ? void 0 : _c.length) || 0;\n searchcraft.sendMeasureEvent('document_clicked', {\n document_position,\n number_of_documents,\n search_term,\n });\n }\n };\n this.parseStyles = () => {\n if (this.customStyles) {\n try {\n return JSON.parse(this.customStyles);\n }\n catch (error) {\n console.error('Error parsing custom styles:', error);\n return {};\n }\n }\n return {};\n };\n this.titleContent = undefined;\n this.subtitleContent = undefined;\n this.bodyContent = undefined;\n this.footerContent = undefined;\n this.buttonLabel = undefined;\n this.buttonHref = undefined;\n this.buttonTarget = '_blank';\n this.buttonRel = undefined;\n this.containerHref = undefined;\n this.containerTarget = '_blank';\n this.containerRel = undefined;\n this.imageSrc = undefined;\n this.imageAlt = undefined;\n this.imagePlacement = undefined;\n this.customStyles = undefined;\n this.documentPosition = 0;\n }\n render() {\n const styles = this.parseStyles();\n const imageContainer = this.imageSrc && (h(\"img\", { alt: this.imageAlt, class: 'searchcraft-search-result-image', src: this.imageSrc, style: styles.image || {} }));\n const contentContainer = (h(Fragment, null, this.imageSrc && this.imagePlacement === 'left' && imageContainer, h(\"div\", { class: 'searchcraft-base-search-result-content-container' }, this.titleContent && (h(\"h2\", { class: 'searchcraft-base-search-result-title', style: styles.title || {} }, this.titleContent)), this.subtitleContent && (h(\"h3\", { class: 'searchcraft-base-search-result-subtitle', style: styles.subtitle || {} }, this.subtitleContent)), this.bodyContent && (h(\"p\", { class: 'searchcraft-base-search-result-body-content', style: styles.primaryContent || {} }, this.bodyContent)), this.footerContent && (h(\"p\", { class: 'searchcraft-base-search-result-footer-content', style: styles.secondaryContent || {} }, this.footerContent)), this.buttonHref && !this.containerHref && this.buttonLabel && (h(\"a\", { class: 'searchcraft-search-result-button', href: this.buttonHref, style: styles.button || {}, target: this.buttonTarget, rel: this.buttonRel }, this.buttonLabel))), this.imageSrc && this.imagePlacement === 'right' && imageContainer));\n /** Render as an anchor tag if the containerHref prop is present. */\n if (this.containerHref) {\n return (h(\"a\", { class: 'searchcraft-search-result-container', onClick: this.recordMeasureEvent, href: this.containerHref, rel: this.containerRel, style: styles.container || {}, tabindex: '0', target: this.containerTarget }, contentContainer));\n }\n /** Render as a div if no href prop. */\n return (h(\"div\", { class: 'searchcraft-search-result-container', style: styles.container || {} }, contentContainer));\n }\n static get style() { return SearchcraftBaseSearchResultStyle0; }\n}, [0, \"searchcraft-base-search-result\", {\n \"titleContent\": [1, \"title-content\"],\n \"subtitleContent\": [1, \"subtitle-content\"],\n \"bodyContent\": [1, \"body-content\"],\n \"footerContent\": [1, \"footer-content\"],\n \"buttonLabel\": [1, \"button-label\"],\n \"buttonHref\": [1, \"button-href\"],\n \"buttonTarget\": [1, \"button-target\"],\n \"buttonRel\": [1, \"button-rel\"],\n \"containerHref\": [1, \"container-href\"],\n \"containerTarget\": [1, \"container-target\"],\n \"containerRel\": [1, \"container-rel\"],\n \"imageSrc\": [1, \"image-src\"],\n \"imageAlt\": [1, \"image-alt\"],\n \"imagePlacement\": [1, \"image-placement\"],\n \"customStyles\": [1, \"custom-styles\"],\n \"documentPosition\": [2, \"document-position\"]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-base-search-result\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-base-search-result\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftBaseSearchResult);\n }\n break;\n } });\n}\n\nexport { SearchcraftBaseSearchResult as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-b180ba11.js.map","import { S as SearchcraftBaseSearchResult$1, d as defineCustomElement$1 } from './p-b180ba11.js';\n\nconst SearchcraftBaseSearchResult = SearchcraftBaseSearchResult$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftBaseSearchResult, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-base-search-result.js.map","function parseCustomStyles(styles) {\n if (typeof styles === 'string') {\n try {\n return JSON.parse(styles);\n }\n catch (error) {\n console.error('Invalid customStyles format:', styles);\n return {};\n }\n }\n return styles || {};\n}\nfunction serializeStyles(styles) {\n try {\n return JSON.stringify(styles);\n }\n catch (error) {\n console.error('Error serializing styles:', error);\n return '{}';\n }\n}\n/**\n * Given a timestamp value, returns a formatted time string for the time\n * since now.\n *\n * @param timestamp\n * @returns {string} Formatted string value\n */\nfunction getFormattedTimeFromNow(timestamp) {\n const now = new Date();\n const inputTime = new Date(timestamp);\n const diffInSeconds = Math.floor((now.getTime() - inputTime.getTime()) / 1000);\n const minutes = Math.floor(diffInSeconds / 60);\n const hours = Math.floor(minutes / 60);\n const days = Math.floor(hours / 24);\n const years = Math.floor(days / 365);\n if (minutes < 60) {\n return `${minutes}m ago`;\n }\n if (hours < 24) {\n return `${hours}h ago`;\n }\n if (days < 365) {\n return `${days}d ago`;\n }\n return `${years}y ago`;\n}\nfunction formatNumberWithCommas(number) {\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n}\nfunction getMillis(unit) {\n const millisInHour = 60 * 60 * 1000;\n const millisInDay = 24 * millisInHour;\n const millisInMonth = 30 * millisInDay;\n const millisInYear = 365 * millisInDay;\n switch (unit) {\n case 'hour':\n return millisInHour;\n case 'day':\n return millisInDay;\n case 'month':\n return millisInMonth;\n case 'year':\n return millisInYear;\n default:\n return 3600000;\n }\n}\n/**\n * Given an array of facet paths, removes parent facet paths.\n */\nfunction removeSubstringMatches(arr) {\n return arr.filter((entry, index, array) => !array.some((otherEntry, otherIndex) => otherIndex !== index && otherEntry.includes(entry)));\n}\n/**\n * Given a document and a SearchResultMapping, return a mapped value from the document.\n *\n * @param document\n * @param {SearchResultMapping} mapping\n * @returns {string | undefined}\n */\nfunction getDocumentValueFromSearchResultMapping(document, mapping) {\n if (document && mapping) {\n return mapping.fieldNames\n .map((fieldNameDetails) => {\n let valueFound = document[fieldNameDetails.fieldName];\n if (valueFound && fieldNameDetails.dataType === 'date') {\n valueFound = getFormattedTimeFromNow(valueFound);\n }\n return valueFound;\n })\n .filter((value) => !!value)\n .join(mapping.delimiter || ' ');\n }\n}\nfunction deepMergeWithSpread(obj1, obj2) {\n const result = Object.assign({}, obj1);\n for (const key in obj2) {\n // biome-ignore lint/suspicious/noPrototypeBuiltins: <explanation>\n if (obj2.hasOwnProperty(key)) {\n if (obj2[key] instanceof Object && obj1[key] instanceof Object) {\n result[key] = deepMergeWithSpread(obj1[key], obj2[key]);\n }\n else {\n result[key] = obj2[key];\n }\n }\n }\n return result;\n}\nfunction facetToRecord(facet) {\n const records = {};\n const traverseAndAddToFragments = (facetChild) => {\n var _a;\n records[facetChild.path] = {\n count: facetChild.count,\n path: facetChild.path,\n };\n (_a = facetChild.children) === null || _a === void 0 ? void 0 : _a.forEach((child) => {\n traverseAndAddToFragments(child);\n });\n };\n traverseAndAddToFragments(facet);\n return records;\n}\nfunction recordToObject(record) {\n const root = {\n count: 0,\n path: '/',\n children: {},\n };\n Object.keys(record).forEach((key) => {\n const fragment = record[key];\n if (fragment.path === '/') {\n return;\n }\n const pathParts = fragment.path.substring(1).split('/');\n let currentRoot = root;\n let currentPath = '';\n pathParts.forEach((part, index) => {\n const nextPath = `${currentPath}/${part}`;\n if (!currentRoot.children[nextPath]) {\n currentRoot.children[nextPath] = {\n count: 0,\n path: nextPath,\n children: {},\n };\n }\n if (index === pathParts.length - 1) {\n currentRoot.children[nextPath].count = fragment.count;\n }\n currentPath = nextPath;\n currentRoot = currentRoot.children[nextPath];\n });\n });\n return root;\n}\nfunction objectToFacet(childObject) {\n const transformed = {\n count: childObject.count,\n path: childObject.path,\n children: [],\n };\n if (Object.keys(childObject.children).length > 0) {\n transformed.children = Object.values(childObject.children).map((subChildObject) => objectToFacet(subChildObject));\n }\n return transformed;\n}\n/**\n * Filters records with the parent paths from record2 OUT of record1\n */\nfunction filterRecordByParentPaths(record1, record2) {\n // Extract all paths (keys) both records\n const paths1 = Object.keys(record1);\n const paths2 = Object.keys(record2);\n // Find all parent paths in record2\n const parentPaths = new Set(paths2\n .filter((path) => path.split('/').length > 2) // Only consider paths with more than one level\n .map((path) => path.substring(0, path.lastIndexOf('/'))));\n // Filter out keys in record1 that share a parent path with any of the identified parent paths\n const filteredRecord = Object.fromEntries(paths1\n .filter((path) => !parentPaths.has(path.substring(0, path.lastIndexOf('/'))))\n .map((path) => [path, record1[path]]));\n return filteredRecord;\n}\nfunction mergeFacetRoots(fieldName, currentRoot, incomingRoot) {\n const currentArray = currentRoot[fieldName];\n const incomingArray = incomingRoot[fieldName];\n const currentRootFacetChild = {\n count: 0,\n path: '/',\n children: currentArray,\n };\n const incomingRootFacetChild = {\n count: 0,\n path: '/',\n children: incomingArray,\n };\n // Flatten them into records\n const currentRecord = facetToRecord(currentRootFacetChild);\n const incomingRecord = facetToRecord(incomingRootFacetChild);\n // Filter out the records from record1 (the current set of records)\n // that share a parent path with record2 (the incoming records)\n const filteredCurrentRecord = filterRecordByParentPaths(currentRecord, incomingRecord);\n // Deep merge the records together\n const mergedRecord = deepMergeWithSpread(filteredCurrentRecord, incomingRecord);\n // Convert into a heirarchical object\n const mergedObject = recordToObject(mergedRecord);\n // Convert the heirarchical object back to the Facet child structure\n const mergedFacetChild = objectToFacet(mergedObject);\n return {\n [fieldName]: mergedFacetChild.children,\n };\n}\n\nexport { getMillis as a, formatNumberWithCommas as f, getDocumentValueFromSearchResultMapping as g, mergeFacetRoots as m, parseCustomStyles as p, removeSubstringMatches as r, serializeStyles as s };\n\n//# sourceMappingURL=p-f308d05d.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\n\nconst searchcraftErrorMessageModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-error-message{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);color:var(--sc-content-danger);margin:0}\";\nconst SearchcraftErrorMessageStyle0 = searchcraftErrorMessageModuleCss;\n\nconst SearchcraftErrorMessage = /*@__PURE__*/ proxyCustomElement(class SearchcraftErrorMessage extends H {\n constructor() {\n super();\n this.__registerHost();\n this.errorMessage = undefined;\n }\n render() {\n return (h(\"p\", { key: '68c4058c43418e96729a91e6a2a9a106303c8bc0', class: 'searchcraft-error-message' }, this.errorMessage || 'Search term is required.'));\n }\n static get style() { return SearchcraftErrorMessageStyle0; }\n}, [0, \"searchcraft-error-message\", {\n \"errorMessage\": [1, \"error-message\"]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-error-message\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-error-message\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftErrorMessage);\n }\n break;\n } });\n}\n\nexport { SearchcraftErrorMessage as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-16983367.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-86911576.js';\nimport { g as getDocumentValueFromSearchResultMapping, s as serializeStyles } from './p-f308d05d.js';\nimport { d as defineCustomElement$3 } from './p-b180ba11.js';\nimport { d as defineCustomElement$2 } from './p-16983367.js';\n\nconst searchcraftBaseSearchResultsModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-search-results-container{display:flex;flex-direction:column;justify-content:center;gap:16px}.searchcraft-ad-section{align-items:center;background-color:#F1F1F1;border-radius:16px;display:flex;flex-direction:column;font-size:16px;justify-content:center;min-height:176px;text-align:center}.searchcraft-ad-section p{margin:0;color:var(--sc-content-disabled)}.searchcraft-search-results-empty-state-container{text-align:center}.searchcraft-search-results-error-message-container{text-align:center}\";\nconst SearchcraftBaseSearchResultsStyle0 = searchcraftBaseSearchResultsModuleCss;\n\nconst SearchcraftBaseSearchResults$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftBaseSearchResults extends H {\n constructor() {\n super();\n this.__registerHost();\n this.noResults = createEvent(this, \"noResults\", 7);\n this.adInterval = 4;\n this.customStylesForResults = undefined;\n this.searchResultMappings = undefined;\n this.placeAdAtEnd = false;\n this.placeAdAtStart = true;\n this.resultImagePlacement = 'right';\n this.buttonLabel = undefined;\n this.buttonTarget = '_blank';\n this.buttonRel = undefined;\n this.containerTarget = '_blank';\n this.containerRel = undefined;\n this.hasSearched = false;\n this.query = '';\n this.searchResults = null;\n }\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (state.query.length > 0) {\n this.hasSearched = true;\n }\n else {\n this.hasSearched = false;\n }\n this.searchResults = Object.assign({}, state.searchResults);\n this.query = state.query;\n });\n const { searchResults, query } = useSearchcraftStore.getState();\n this.searchResults = searchResults;\n this.query = query;\n }\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n renderDocument(document, index) {\n /**\n * Index field values -> Result container props mappings.\n */\n const titleContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.title);\n const subtitleContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.subtitle);\n const bodyContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.body);\n const containerHref = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.containerHref);\n const buttonHref = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.buttonHref);\n const imageSource = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.imageSource);\n const footerContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.footer);\n const serializedStyles = typeof this.customStylesForResults === 'string'\n ? this.customStylesForResults\n : serializeStyles(this.customStylesForResults);\n return (h(\"searchcraft-base-search-result\", { key: `${document.document_id}-${index}`, \"custom-styles\": serializedStyles, \"image-placement\": this.resultImagePlacement, \"container-rel\": this.containerRel, \"container-target\": this.containerTarget, \"button-label\": this.buttonLabel || 'View more', \"button-rel\": this.buttonRel, \"button-target\": this.buttonTarget, \"document-position\": index, \"title-content\": titleContent, \"subtitle-content\": subtitleContent, \"body-content\": bodyContent, \"footer-content\": footerContent, \"container-href\": containerHref, \"button-href\": buttonHref, \"image-src\": imageSource }));\n }\n render() {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;\n if (this.query.trim() === '') {\n return (h(\"div\", { class: 'searchcraft-search-results-empty-state-container' }, h(\"slot\", { name: 'empty-search' })));\n }\n if (!((_a = this.searchResults) === null || _a === void 0 ? void 0 : _a.data)) {\n return;\n }\n const documents = (_d = (_c = (_b = this.searchResults) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.hits) === null || _d === void 0 ? void 0 : _d.map((data, _index) => {\n const { doc: result } = data;\n return result;\n });\n const finalComponents = [];\n if (this.placeAdAtStart) {\n finalComponents.push(h(\"div\", { key: 'ad-section-start', class: 'searchcraft-ad-section' }, h(\"p\", null, \"Ad Section\")));\n }\n if (this.adInterval > 0) {\n documents.forEach((document, index) => {\n finalComponents.push(this.renderDocument(document, index));\n if ((index + 1) % this.adInterval === 0) {\n finalComponents.push(h(\"div\", { key: `ad-section-${index + 1}`, class: 'searchcraft-ad-section ' }, h(\"p\", null, \"Ad Section\")));\n }\n });\n }\n else {\n const documentElements = documents.map((document, index) => this.renderDocument(document, index));\n finalComponents.push(...documentElements);\n }\n if (this.placeAdAtEnd) {\n finalComponents.push(h(\"div\", { key: 'ad-section-end', class: 'searchcraft-ad-section' }, h(\"p\", null, \"Ad Section\")));\n }\n if (this.query.length > 0 && ((_g = (_f = (_e = this.searchResults) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.hits) === null || _g === void 0 ? void 0 : _g.length) === 0) {\n this.noResults.emit();\n }\n return (h(\"div\", { class: 'searchcraft-search-results-container' }, finalComponents, this.query.length > 0 &&\n ((_k = (_j = (_h = this.searchResults) === null || _h === void 0 ? void 0 : _h.data) === null || _j === void 0 ? void 0 : _j.hits) === null || _k === void 0 ? void 0 : _k.length) === 0 && (h(\"div\", { class: 'searchcraft-search-results-error-message-container' }, h(\"searchcraft-error-message\", { \"error-message\": `No search results found for \"${this.query}\" query` })))));\n }\n static get style() { return SearchcraftBaseSearchResultsStyle0; }\n}, [4, \"searchcraft-base-search-results\", {\n \"adInterval\": [2, \"ad-interval\"],\n \"customStylesForResults\": [1, \"custom-styles-for-results\"],\n \"searchResultMappings\": [16],\n \"placeAdAtEnd\": [4, \"place-ad-at-end\"],\n \"placeAdAtStart\": [4, \"place-ad-at-start\"],\n \"resultImagePlacement\": [1, \"result-image-placement\"],\n \"buttonLabel\": [1, \"button-label\"],\n \"buttonTarget\": [1, \"button-target\"],\n \"buttonRel\": [1, \"button-rel\"],\n \"containerTarget\": [1, \"container-target\"],\n \"containerRel\": [1, \"container-rel\"],\n \"hasSearched\": [32],\n \"query\": [32],\n \"searchResults\": [32]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-base-search-results\", \"searchcraft-base-search-result\", \"searchcraft-error-message\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-base-search-results\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftBaseSearchResults$1);\n }\n break;\n case \"searchcraft-base-search-result\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"searchcraft-error-message\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\n\nconst SearchcraftBaseSearchResults = SearchcraftBaseSearchResults$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftBaseSearchResults, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-base-search-results.js.map","var classnames = {exports: {}};\n\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n\n(function (module) {\n/* global define */\n\n(function () {\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n}(classnames));\n\nconst classNames = classnames.exports;\n\nexport { classNames as c };\n\n//# sourceMappingURL=p-5cdc6210.js.map","import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-e4846fa2.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftButtonModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-button{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-bold-font-size);font-weight:var(--sc-body-bold-font-weight);line-height:var(--sc-body-bold-line-height);border-radius:8px;display:flex;padding:12px 20px;position:relative;background-color:var(--sc-surface-brand-primary);border:1px solid var(--sc-border-primary);color:var(--sc-content-brand-on-primary)}.searchcraft-button:hover{cursor:pointer;background-color:var(--sc-surface-brand-primary-hover)}.searchcraft-button:focus{outline:2px solid var(--sc-surface-brand-primary)}.buttonLabel{position:relative}\";\nconst SearchcraftButtonStyle0 = searchcraftButtonModuleCss;\n\nconst SearchcraftButton = /*@__PURE__*/ proxyCustomElement(class SearchcraftButton extends H {\n constructor() {\n super();\n this.__registerHost();\n this.buttonClick = createEvent(this, \"buttonClick\", 7);\n this.handleClick = () => {\n this.buttonClick.emit();\n };\n this.iconElement = undefined;\n this.iconOnly = false;\n this.iconPosition = 'left';\n this.label = 'Search';\n this.isRequesting = false;\n }\n render() {\n return (h(Fragment, { key: '8ea823d757ceca459ef80affa8dfdf7e96076c32' }, this.iconOnly ? (h(\"button\", { class: classNames('searchcraft-button'), onClick: this.handleClick, type: 'submit' }, this.isRequesting ? (h(\"searchcraft-spinner-dark\", null)) : (this.iconElement))) : (h(\"button\", { class: classNames('searchcraft-button'), onClick: this.handleClick, type: 'submit' }, this.iconPosition === 'left' && this.iconElement, h(\"span\", { class: classNames('buttonLabel', 'searchcraft-button-label') }, this.label)))));\n }\n static get style() { return SearchcraftButtonStyle0; }\n}, [0, \"searchcraft-button\", {\n \"iconElement\": [16],\n \"iconOnly\": [4, \"icon-only\"],\n \"iconPosition\": [1, \"icon-position\"],\n \"label\": [1],\n \"isRequesting\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-button\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-button\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftButton);\n }\n break;\n } });\n}\n\nexport { SearchcraftButton as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-9cb3d38b.js.map","import { S as SearchcraftButton$1, d as defineCustomElement$1 } from './p-9cb3d38b.js';\n\nconst SearchcraftButton = SearchcraftButton$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftButton, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-button.js.map","import { S as SearchcraftErrorMessage$1, d as defineCustomElement$1 } from './p-16983367.js';\n\nconst SearchcraftErrorMessage = SearchcraftErrorMessage$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftErrorMessage, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-error-message.js.map","import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-e4846fa2.js';\nimport { c as classNames } from './p-5cdc6210.js';\nimport { u as useSearchcraftStore } from './p-86911576.js';\nimport { m as mergeFacetRoots, r as removeSubstringMatches } from './p-f308d05d.js';\n\nconst searchcraftFacetListModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.filtersListContainer{width:100%}.filterCheckboxLabel{align-items:center;color:var(--sc-content-primary);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:14px;position:relative;-webkit-font-smoothing:antialiased}.filterCheckboxLabel input[type=checkbox]{align-items:center;appearance:none;background-color:var(--sc-surface-brand-secondary-hover);border:1px solid var(--sc-surface-disabled);border-radius:8px;cursor:pointer;display:flex;height:24px;justify-content:center;width:24px}.filterCheckboxLabel input[type=checkbox]:focus{outline:2px solid var(--sc-surface-brand-primary)}.filterCheckboxLabel input[type=checkbox]:checked{background-color:var(--sc-surface-brand-primary);position:relative}.filterCheckboxLabel input[type=checkbox]:checked+.checkContainer{display:block}.filterCheckboxLabel input[type=checkbox]:checked+.dashContainer{display:block}.childFilterCheckboxLabel{align-items:center;color:var(--sc-content-primary);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:12px;margin-left:24px;position:relative}.childFilterCheckboxLabel input[type=checkbox]{align-items:center;appearance:none;background-color:var(--sc-surface-brand-secondary-hover);border:1px solid var(--sc-surface-disabled);border-radius:8px;cursor:pointer;display:flex;height:24px;justify-content:center;position:relative;width:24px;-webkit-font-smoothing:antialiased}.childFilterCheckboxLabel input[type=checkbox]:focus{outline:2px solid var(--sc-surface-brand-primary)}.childFilterCheckboxLabel input[type=checkbox]:checked{background-color:var(--sc-surface-brand-primary);position:relative}.childFilterCheckboxLabel input[type=checkbox]:checked+.checkContainer{display:block}.childFilterCheckboxLabel input[type=checkbox]:checked+.dashContainer{display:block}.checkContainer{display:none;height:16px;width:16px;position:absolute;top:9px;left:8px}.dashContainer{display:none;height:3px;width:14px;position:absolute;top:3px;left:9px}.searchcraft-facet-message{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);color:var(--sc-content-disabled);text-align:center}\";\nconst SearchcraftFacetListStyle0 = searchcraftFacetListModuleCss;\n\nconst SearchcraftFacetList = /*@__PURE__*/ proxyCustomElement(class SearchcraftFacetList extends H {\n constructor() {\n super();\n this.__registerHost();\n this.facetSelectionUpdated = createEvent(this, \"facetSelectionUpdated\", 7);\n this.searchStore = useSearchcraftStore.getState();\n this.formatLabel = (facetChild) => {\n const label = facetChild.path.replace(/^\\//, '');\n const count = facetChild.count;\n return `${label.replace(/-/g, ' ').replace(/\\b\\w/g, (char) => char.toUpperCase())} (${count})`;\n };\n this.formatSubLabel = (facetChild, facetChildAncestor) => {\n const facetChildPath = facetChild.path.substring(facetChildAncestor.path.length);\n const label = facetChildPath.replace(/^\\//, '');\n const count = facetChild.count;\n return `${label.replace(/-/g, ' ').replace(/\\b\\w/g, (char) => char.toUpperCase())} (${count})`;\n };\n this.fieldName = undefined;\n this.baseFacetRoot = undefined;\n this.facetRoot = undefined;\n this.selectedPaths = {};\n this.lastTimeTaken = undefined;\n this.hasNewSearchTerm = false;\n this.lastQuery = undefined;\n this.lastSearchMode = undefined;\n this.lastSortType = undefined;\n this.unsubscribe = undefined;\n }\n handleStateUpdate(state) {\n var _a, _b;\n const facetPrime = (_a = state.searchResults) === null || _a === void 0 ? void 0 : _a.data.facets;\n const timeTaken = (_b = state.searchResults) === null || _b === void 0 ? void 0 : _b.data.time_taken;\n /** Things to do when the state's search term has changed, but before the response received */\n if (state.query !== this.lastQuery ||\n state.searchMode !== this.lastSearchMode ||\n state.sortType !== this.lastSortType) {\n this.selectedPaths = {};\n this.hasNewSearchTerm = true;\n }\n /** Things to do when a new response with a new facet prime has been received */\n if (timeTaken !== this.lastTimeTaken && facetPrime) {\n this.facetRoot = undefined;\n const incomingFacetRoot = facetPrime.find((facet) => this.fieldName === Object.keys(facet)[0]);\n /** Data is from a new search term: completely override our facets */\n if (this.hasNewSearchTerm) {\n this.baseFacetRoot = incomingFacetRoot;\n this.facetRoot = incomingFacetRoot;\n this.hasNewSearchTerm = false;\n }\n else if (this.baseFacetRoot) {\n /** Data is from an existing search term, merge the facets together */\n this.facetRoot = mergeFacetRoots(this.fieldName, this.baseFacetRoot, incomingFacetRoot);\n }\n }\n this.lastQuery = state.query;\n this.lastSearchMode = state.searchMode;\n this.lastSortType = state.sortType;\n this.lastTimeTaken = timeTaken;\n }\n connectedCallback() {\n this.handleStateUpdate(this.searchStore);\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.handleStateUpdate(state);\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n handleCheckboxChange(path) {\n const isCheckboxChecked = !this.selectedPaths[path];\n if (isCheckboxChecked) {\n /**\n * Checkbox Checked: Add to the selectedPaths record\n * Uses spread operator here so UI updates.\n */\n this.selectedPaths = Object.assign(Object.assign({}, this.selectedPaths), { [path]: true });\n }\n else {\n /**\n * Checkbox Uncheck: Remove any paths and sub-paths\n */\n const updatedPaths = Object.keys(this.selectedPaths).filter((testPath) => !testPath.includes(path));\n this.selectedPaths = updatedPaths.reduce((acc, str) => {\n acc[str] = true;\n return acc;\n }, {});\n }\n /**\n * Emit the paths array, with parent paths removed.\n */\n const paths = Object.keys(this.selectedPaths).filter((path) => this.selectedPaths[path]);\n const pathsWithParentPathsRemoved = removeSubstringMatches(paths);\n this.facetSelectionUpdated.emit({ paths: pathsWithParentPathsRemoved });\n }\n render() {\n var _a;\n const firstFacet = (_a = this.facetRoot) === null || _a === void 0 ? void 0 : _a[this.fieldName];\n return (h(\"div\", { key: 'c7b6a2c7bbb48d0835745b4bcae43a283ade4139', class: classNames('filtersListContainer', 'searchcraft-filters-list-container') }, !firstFacet && (h(\"p\", { key: 'a682f57ff51fdcfec670744ef84930c90c9b9c20', class: 'searchcraft-facet-message' }, \"Enter a search to view facets.\")), firstFacet === null || firstFacet === void 0 ? void 0 :\n firstFacet.map((facetChild) => {\n var _a;\n const isChildSelected = facetChild.children\n ? (_a = facetChild.children) === null || _a === void 0 ? void 0 : _a.some((child) => this.selectedPaths[child.path])\n : false;\n return (h(\"div\", { key: facetChild.path, class: classNames('searchcraft-filters-list-item') }, h(\"label\", { class: classNames('filterCheckboxLabel', 'searchcraft-filters-list-checkbox-label') }, h(\"input\", { checked: this.selectedPaths[facetChild.path], onChange: (_event) => this.handleCheckboxChange(facetChild.path), type: 'checkbox' }), isChildSelected ? (h(\"div\", { class: classNames('dashContainer', 'searchcraft-filter-list-dash-container') }, h(\"searchcraft-dash-icon\", null))) : (h(\"div\", { class: classNames('checkContainer', 'searchcraft-filter-list-check-container') }, h(\"searchcraft-check-icon\", null))), this.formatLabel(facetChild)), facetChild.children && facetChild.children.length > 0 && (h(Fragment, null, facetChild.children.map((grandchild) => (h(\"label\", { key: grandchild.path, class: classNames('childFilterCheckboxLabel', 'searchcraft-child-filter-checkbox-label'), style: {\n display: this.selectedPaths[facetChild.path]\n ? 'flex'\n : 'none',\n } }, h(\"input\", { checked: this.selectedPaths[grandchild.path], onChange: (_event) => {\n this.handleCheckboxChange(grandchild.path);\n }, type: 'checkbox' }), h(\"div\", { class: classNames('checkContainer', 'searchcraft-filter-list-check-container') }, h(\"searchcraft-check-icon\", null)), this.formatSubLabel(grandchild, facetChild))))))));\n })));\n }\n static get style() { return SearchcraftFacetListStyle0; }\n}, [0, \"searchcraft-facet-list\", {\n \"fieldName\": [1, \"field-name\"],\n \"baseFacetRoot\": [32],\n \"facetRoot\": [32],\n \"selectedPaths\": [32],\n \"lastTimeTaken\": [32],\n \"hasNewSearchTerm\": [32],\n \"lastQuery\": [32],\n \"lastSearchMode\": [32],\n \"lastSortType\": [32],\n \"unsubscribe\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-facet-list\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-facet-list\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftFacetList);\n }\n break;\n } });\n}\n\nexport { SearchcraftFacetList as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-193cf280.js.map","import { S as SearchcraftFacetList$1, d as defineCustomElement$1 } from './p-193cf280.js';\n\nconst SearchcraftFacetList = SearchcraftFacetList$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftFacetList, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-facet-list.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { a as getMillis } from './p-f308d05d.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftSliderModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-slider-container{align-items:center;display:flex;flex-direction:column;gap:10px;width:100%}.searchcraft-slider-range-container{align-items:center;background-color:var(--sc-surface-disabled);border-radius:999px;display:flex;position:relative;height:4px;width:100%}.searchcraft-slider-range-container::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-active-range{background-color:var(--sc-surface-brand-primary);border-radius:2px;height:4px;position:absolute;top:50%;transform:translateY(-50%);z-index:0}.searchcraft-slider-range-container .searchcraft-slider-active-range::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-active-range::-moz-range-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-input{appearance:none;background:transparent;border-radius:2px;height:4px;margin:0;outline:none;pointer-events:none;position:absolute;width:100%;-webkit-appearance:none}.searchcraft-slider-range-container .searchcraft-slider-input::-webkit-slider-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px;-webkit-appearance:none}.searchcraft-slider-range-container .searchcraft-slider-input::-moz-range-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px}.searchcraft-slider-label-container{color:var(--sc-content-primary);display:flex;font-family:\\\"Source Sans Pro\\\", sans-serif;font-size:15px;font-weight:600;justify-content:space-between;margin-top:10px;width:100%}.searchcraft-slider-label{min-width:30px;text-align:center}\";\nconst SearchcraftSliderStyle0 = searchcraftSliderModuleCss;\n\nconst SearchcraftSlider = /*@__PURE__*/ proxyCustomElement(class SearchcraftSlider extends H {\n constructor() {\n super();\n this.__registerHost();\n this.rangeChanged = createEvent(this, \"rangeChanged\", 7);\n this.emitUpdate = async () => {\n this.rangeChanged.emit({\n startValue: this.startValue,\n endValue: this.endValue,\n });\n };\n this.handleStartValueChange = (event) => {\n const inputElement = event.target;\n const value = Number.parseInt(inputElement.value, 10);\n this.lastFocusedHandle = 'min';\n if (value <= this.endValue) {\n this.startValue = value;\n this.emitUpdate();\n }\n else {\n this.startValue = this.endValue;\n inputElement.value = `${this.endValue}`;\n }\n };\n this.handleEndValueChange = (event) => {\n const inputElement = event.target;\n const value = Number.parseInt(inputElement.value, 10);\n this.lastFocusedHandle = 'max';\n if (value >= this.startValue) {\n this.endValue = value;\n this.emitUpdate();\n }\n else {\n this.endValue = this.startValue;\n inputElement.value = `${this.startValue}`;\n }\n };\n this.max = 100;\n this.min = 0;\n this.granularity = getMillis('month');\n this.dataType = 'number';\n this.endValue = this.max;\n this.startValue = this.min;\n this.lastFocusedHandle = 'max';\n }\n componentDidLoad() {\n this.startValue = this.min;\n this.endValue = this.max;\n }\n render() {\n const rangeMin = this.min;\n const rangeMax = this.max;\n const startPercent = ((this.startValue - rangeMin) / (rangeMax - rangeMin)) * 100;\n const endPercent = ((this.endValue - rangeMin) / (rangeMax - rangeMin)) * 100;\n const startLabel = this.dataType === 'number'\n ? this.startValue\n : new Date(this.startValue).getFullYear();\n const endLabel = this.dataType === 'number'\n ? this.endValue\n : new Date(this.endValue).getFullYear();\n return (h(\"div\", { key: '51de4996df052bf178590aeb4c56a67ec57c92e5', class: 'searchcraft-slider-container' }, h(\"div\", { key: '634bead69c3fbc462cda3dd65dd4ba6a398c6913', class: 'searchcraft-slider-range-container' }, h(\"div\", { key: '1b7a0b63ef208884f24b9f56b48a72bca320c71b', class: 'searchcraft-slider-active-range', style: {\n left: `${startPercent}%`,\n width: `${endPercent - startPercent}%`,\n } }), h(\"input\", { key: '29313d6909d5ff646d7f3810163f5f01fe09cc36', class: classNames('searchcraft-slider-input', 'searchcraft-slider-input-min-handle'), max: this.max, min: this.min, onInput: this.handleStartValueChange.bind(this), step: this.granularity, style: { zIndex: this.lastFocusedHandle === 'min' ? '2' : '1' }, type: 'range', value: this.startValue }), h(\"input\", { key: '1e95e93a028c7bc204e2f3894bfe8b77ac6c9d28', class: classNames('searchcraft-slider-input', 'searchcraft-slider-input-max-handle'), max: this.max, min: this.min, onInput: this.handleEndValueChange.bind(this), step: this.granularity, style: { zIndex: this.lastFocusedHandle === 'max' ? '2' : '1' }, type: 'range', value: this.endValue })), h(\"div\", { key: 'c1560933a38f3153ac1dbaece041ef75df479dc4', class: 'searchcraft-slider-label-container' }, h(\"span\", { key: '638f72b8c081a324cc3ecb833163cd036a6ab90c', class: 'searchcraft-slider-label' }, startLabel), h(\"span\", { key: '011968bdf897de9960fe2214b4adceee4d79b6d0', class: 'searchcraft-slider-label' }, endLabel))));\n }\n static get style() { return SearchcraftSliderStyle0; }\n}, [0, \"searchcraft-slider\", {\n \"max\": [2],\n \"min\": [2],\n \"granularity\": [2],\n \"dataType\": [1, \"data-type\"],\n \"endValue\": [32],\n \"startValue\": [32],\n \"lastFocusedHandle\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-slider\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-slider\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftSlider);\n }\n break;\n } });\n}\n\nexport { SearchcraftSlider as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-5380505b.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-86911576.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftToggleButtonModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-toggle-button-container{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.searchcraft-toggle-button-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-neutral-primary)}.searchcraft-toggle-button-sub-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);margin:0;color:var(--sc-content-neutral-secondary)}.searchcraft-toggle-button-background{transition:background-color 0.2s;background:var(--sc-surface-disabled);border:none;border-radius:16px;cursor:pointer;height:26px;position:relative;width:44px;flex-shrink:0}.searchcraft-toggle-button-background.active{background:var(--sc-surface-brand-primary);box-shadow:0px 0px 0px 1px rgba(0, 0, 0, 0.05)}.searchcraft-toggle-button-handle{background:var(--sc-surface-neutral-light);border-radius:50%;height:18px;left:4px;position:absolute;top:calc(50% - 9px);transition:transform 0.3s ease;width:18px}.searchcraft-toggle-button-handle.active{transform:translateX(16px)}\";\nconst SearchcraftToggleButtonStyle0 = searchcraftToggleButtonModuleCss;\n\nconst SearchcraftToggleButton = /*@__PURE__*/ proxyCustomElement(class SearchcraftToggleButton extends H {\n constructor() {\n super();\n this.__registerHost();\n this.toggleUpdated = createEvent(this, \"toggleUpdated\", 7);\n this.handleToggle = async () => {\n this.isActive = !this.isActive;\n this.toggleUpdated.emit(this.isActive);\n };\n this.label = 'Toggle';\n this.subLabel = undefined;\n this.isActive = false;\n this.unsubscribe = undefined;\n this.lastQuery = undefined;\n }\n connectedCallback() {\n /** When the query changes, sets toggle button state back to inactive. */\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (state.query !== this.lastQuery && state.query.trim().length === 0) {\n this.isActive = false;\n }\n this.lastQuery = state.query;\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n render() {\n return (h(\"div\", { key: '90a7816e1e02125939f3f05a9dbfd94a5f161959', class: 'searchcraft-toggle-button-container' }, h(\"div\", { key: '6a3e570ba3d00ccc315cd092d5b1c618c0b23ea2' }, h(\"p\", { key: '41d1d0ab4557c856bb0ed12af8a4b0c81203d6d5', class: 'searchcraft-toggle-button-label' }, this.label), this.subLabel && (h(\"p\", { key: 'ec145b4f655bacec600ac9aa137662f7fed9b7d2', class: 'searchcraft-toggle-button-sub-label' }, this.subLabel))), h(\"button\", { key: '226599543806881f306630708eee24e922ff592e', class: classNames('searchcraft-toggle-button-background', {\n active: this.isActive,\n }), onClick: this.handleToggle, type: 'button' }, h(\"div\", { key: 'b83e81e7820705952cfc8c911223e67dfbc0f98d', class: classNames('searchcraft-toggle-button-handle', {\n active: this.isActive,\n }) }))));\n }\n static get style() { return SearchcraftToggleButtonStyle0; }\n}, [0, \"searchcraft-toggle-button\", {\n \"label\": [1],\n \"subLabel\": [1, \"sub-label\"],\n \"isActive\": [32],\n \"unsubscribe\": [32],\n \"lastQuery\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-toggle-button\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-toggle-button\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftToggleButton);\n }\n break;\n } });\n}\n\nexport { SearchcraftToggleButton as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-596ceccc.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-86911576.js';\nimport { a as getMillis } from './p-f308d05d.js';\nimport { d as defineCustomElement$4 } from './p-193cf280.js';\nimport { d as defineCustomElement$3 } from './p-5380505b.js';\nimport { d as defineCustomElement$2 } from './p-596ceccc.js';\n\nconst searchcraftFilterPanelModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-filter-panel{display:flex;flex-direction:column;gap:16px}.searchcraft-filter-panel-section{display:flex;flex-direction:column;gap:8px}.searchcraft-filter-panel-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-bold-font-size);font-weight:var(--sc-body-small-bold-font-weight);line-height:var(--sc-body-small-bold-line-height)}\";\nconst SearchcraftFilterPanelStyle0 = searchcraftFilterPanelModuleCss;\n\nconst SearchcraftFilterPanel$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftFilterPanel extends H {\n constructor() {\n super();\n this.__registerHost();\n this.searchStore = useSearchcraftStore.getState();\n this.items = [];\n this.unsubscribe = undefined;\n this.lastQuery = undefined;\n }\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.lastQuery = state.query || '';\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n handleDateRangeChanged(fieldName, min, max) {\n const start = new Date(min);\n const end = new Date(max);\n this.searchStore.addRangeValueForIndexField({\n fieldName,\n value: `${fieldName}:[${start.toISOString()} TO ${end.toISOString()}]`,\n });\n this.searchStore.search();\n }\n handleNumericRangeChanged(fieldName, min, max) {\n this.searchStore.addRangeValueForIndexField({\n fieldName,\n value: `${fieldName}:[${min} TO ${max}]`,\n });\n this.searchStore.search();\n }\n handleFacetSelectionUpdated(fieldName, paths) {\n if (paths.length > 0) {\n this.searchStore.addFacetPathsForIndexField({\n fieldName,\n value: `${fieldName}: IN [${paths.join(' ')}]`,\n });\n }\n else {\n this.searchStore.removeFacetPathsForIndexField(fieldName);\n }\n this.searchStore.search();\n }\n handleExactMatchToggleUpdated(isActive) {\n this.searchStore.setSearchMode(isActive ? 'normal' : 'fuzzy');\n this.searchStore.search();\n }\n handleMostRecentToggleUpdated(isActive) {\n this.searchStore.setSortType(isActive ? 'desc' : 'asc');\n this.searchStore.search();\n }\n /**\n * Iterate through `items` and render them based on `type`\n */\n render() {\n return (h(\"div\", { key: '45bcbe509465b8fe3720f3a535902906acfac2ea', class: 'searchcraft-filter-panel' }, this.items.map((filterItem) => {\n switch (filterItem.type) {\n case 'dateRange': {\n const item = filterItem;\n const min = new Date(item.options.minDate).getTime();\n const max = new Date(item.options.maxDate).getTime();\n const granularityValue = getMillis(item.options.granularity);\n // return date range slider\n return (h(\"div\", { class: 'searchcraft-filter-panel-section' }, h(\"p\", { class: 'searchcraft-filter-panel-label' }, filterItem.label), h(\"searchcraft-slider\", { min: min, max: max, granularity: granularityValue, dataType: 'date', onRangeChanged: (event) => {\n this.handleDateRangeChanged(item.fieldName, event.detail.startValue, event.detail.endValue);\n } })));\n }\n case 'numericRange': {\n const item = filterItem;\n // return date range slider\n return (h(\"div\", { class: 'searchcraft-filter-panel-section' }, h(\"p\", { class: 'searchcraft-filter-panel-label' }, filterItem.label), h(\"searchcraft-slider\", { min: item.options.min, max: item.options.max, granularity: item.options.granularity, onRangeChanged: (event) => {\n this.handleNumericRangeChanged(item.fieldName, event.detail.startValue, event.detail.endValue);\n } })));\n }\n case 'facets': {\n const item = filterItem;\n // return \"filters-list\"\n return (h(\"div\", { class: 'searchcraft-filter-panel-section' }, h(\"p\", { class: 'searchcraft-filter-panel-label' }, filterItem.label), h(\"searchcraft-facet-list\", { fieldName: item.fieldName, onFacetSelectionUpdated: (event) => {\n this.handleFacetSelectionUpdated(item.fieldName, event.detail.paths);\n } })));\n }\n case 'exactMatchToggle': {\n const item = filterItem;\n return (h(\"searchcraft-toggle-button\", { label: item.label, subLabel: item.options.subLabel, onToggleUpdated: (event) => {\n this.handleExactMatchToggleUpdated(event.detail);\n } }));\n }\n case 'mostRecentToggle': {\n const item = filterItem;\n return (h(\"searchcraft-toggle-button\", { label: item.label, subLabel: item.options.subLabel, onToggleUpdated: (event) => {\n this.handleMostRecentToggleUpdated(event.detail);\n } }));\n }\n }\n })));\n }\n static get style() { return SearchcraftFilterPanelStyle0; }\n}, [0, \"searchcraft-filter-panel\", {\n \"items\": [16],\n \"unsubscribe\": [32],\n \"lastQuery\": [32]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-filter-panel\", \"searchcraft-facet-list\", \"searchcraft-slider\", \"searchcraft-toggle-button\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-filter-panel\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftFilterPanel$1);\n }\n break;\n case \"searchcraft-facet-list\":\n if (!customElements.get(tagName)) {\n defineCustomElement$4();\n }\n break;\n case \"searchcraft-slider\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"searchcraft-toggle-button\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\n\nconst SearchcraftFilterPanel = SearchcraftFilterPanel$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftFilterPanel, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-filter-panel.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftInputLabelModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-input-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-bold-font-size);font-weight:var(--sc-body-small-bold-font-weight);line-height:var(--sc-body-small-bold-line-height);color:var(--sc-content-neutral-primary);margin-top:4px;margin-bottom:4px}\";\nconst SearchcraftInputLabelStyle0 = searchcraftInputLabelModuleCss;\n\nconst SearchcraftInputLabel = /*@__PURE__*/ proxyCustomElement(class SearchcraftInputLabel extends H {\n constructor() {\n super();\n this.__registerHost();\n this.inputLabelClassName = '';\n this.label = undefined;\n }\n render() {\n if (!this.label) {\n return null;\n }\n return (h(\"label\", { class: classNames('searchcraft-input-label', this.inputLabelClassName), htmlFor: 'searchcraft-input-id' }, this.label));\n }\n static get style() { return SearchcraftInputLabelStyle0; }\n}, [0, \"searchcraft-input-label\", {\n \"inputLabelClassName\": [1, \"input-label-class-name\"],\n \"label\": [1]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-input-label\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-input-label\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftInputLabel);\n }\n break;\n } });\n}\n\nexport { SearchcraftInputLabel as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-bd5fede3.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore, i as ie } from './p-86911576.js';\nimport { p as parseCustomStyles } from './p-f308d05d.js';\nimport { c as classNames } from './p-5cdc6210.js';\nimport { d as defineCustomElement$4 } from './p-9cb3d38b.js';\nimport { d as defineCustomElement$3 } from './p-16983367.js';\nimport { d as defineCustomElement$2 } from './p-bd5fede3.js';\n\nconst name = \"@searchcraft/javascript-sdk\";\nconst version = \"0.5.0\";\nconst description = \"Searchcraft Javascript SDK\";\nconst author = \"Searchcraft\";\nconst license = \"Apache-2.0\";\nconst main = \"dist/index.cjs.js\";\nconst module = \"dist/index.js\";\nconst types = \"dist/types/index.d.ts\";\nconst collection = \"dist/collection/collection-manifest.json\";\nconst unpkg = \"dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js\";\nconst exports = {\n\t\".\": {\n\t\t\"import\": \"./dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js\",\n\t\trequire: \"./dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.cjs.js\",\n\t\ttypes: \"./dist/types/index.d.ts\"\n\t},\n\t\"./dist/*\": {\n\t\t\"import\": \"./dist/*\",\n\t\ttypes: \"./dist/*\"\n\t},\n\t\"./components\": {\n\t\t\"import\": \"./dist/components/index.js\",\n\t\ttypes: \"./dist/components/index.d.ts\"\n\t},\n\t\"./loader\": {\n\t\t\"import\": \"./dist/loader/index.js\",\n\t\trequire: \"./dist/loader/index.cjs\",\n\t\ttypes: \"./dist/loader/index.d.ts\"\n\t}\n};\nconst repository = {\n\ttype: \"git\",\n\turl: \"https://bitbucket.org/madebychalk/searchcraft-javascript-sdks/\"\n};\nconst files = [\n\t\"dist/\"\n];\nconst scripts = {\n\tbuild: \"stencil build\",\n\tdev: \"stencil build --dev --watch\",\n\ttest: \"stencil test --spec --e2e\",\n\t\"test.watch\": \"stencil test --spec --e2e --watchAll\",\n\tgenerate: \"stencil generate\"\n};\nconst dependencies = {\n\tclassnames: \"^2.3.2\"\n};\nconst devDependencies = {\n\t\"@searchcraft/core\": \"*\",\n\t\"@searchcraft/javascript-sdk\": \"*\",\n\t\"@stencil/core\": \"^4.7.0\",\n\t\"@stencil/react-output-target\": \"^0.8.2\",\n\t\"@stencil/sass\": \"^3.0.12\",\n\t\"@types/node\": \"^16.18.11\",\n\tzustand: \"^5.0.1\"\n};\nconst packageJson = {\n\tname: name,\n\t\"private\": false,\n\tversion: version,\n\tdescription: description,\n\tauthor: author,\n\tlicense: license,\n\tmain: main,\n\tmodule: module,\n\ttypes: types,\n\tcollection: collection,\n\t\"collection:main\": \"dist/collection/index.js\",\n\tunpkg: unpkg,\n\texports: exports,\n\trepository: repository,\n\tfiles: files,\n\tscripts: scripts,\n\tdependencies: dependencies,\n\tdevDependencies: devDependencies\n};\n\nconst searchcraftInputFormModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-input-wrapper{position:relative;display:flex}.searchcraft-input-grid{display:grid;gap:4px 8px}.searchcraft-input-grid-buttonLeft{grid-template-rows:repeat(3, auto);grid-template-columns:auto 1fr}.searchcraft-input-grid-buttonLeft .searchcraft-input-button-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-label-wrapper{grid-column:2/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-error-wrapper{grid-column:2/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonRight{grid-template-rows:repeat(3, auto);grid-template-columns:1fr auto}.searchcraft-input-grid-buttonRight .searchcraft-input-button-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-label-wrapper{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-error-wrapper{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonNone{grid-template-rows:repeat(3, auto);grid-template-columns:auto}.searchcraft-input-grid-buttonNone .searchcraft-input-button-wrapper{display:none}.searchcraft-input-grid-buttonNone .searchcraft-input-label-wrapper{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonNone .searchcraft-input-error-wrapper{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonNone .searchcraft-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);background-color:var(--sc-surface-neutral-secondary);border:none;border-radius:var(--sc-input-border-radius);color:var(--sc-content-neutral-primary);outline:none;padding-left:var(--sc-input-padding-left);padding-right:var(--sc-input-padding-right);padding-top:12px;padding-bottom:12px;flex:1}.searchcraft-input::placeholder{color:var(--sc-content-disabled)}.searchcraft-input:focus{outline:var(--sc-border-brand) solid 2px}.searchcraft-input:focus::placeholder{opacity:0}.searchcraft-input.error{color:var(--sc-content-danger);outline:var(--sc-border-danger) solid 2px}.searchcraft-input.error:focus{outline:var(--sc-border-danger) solid 2px}.searchcraft-input-search-icon-wrapper{align-items:center;justify-content:center;display:flex;position:absolute;pointer-events:none;bottom:0;left:0;top:0;width:var(--sc-input-padding-left)}.searchcraft-input-search-icon{pointer-events:none;width:var(--sc-input-search-icon-size);height:var(--sc-input-search-icon-size)}.searchcraft-input-clear-button{all:unset;align-items:center;justify-content:center;cursor:pointer;display:flex;position:absolute;border:none;outline:none;bottom:0;right:0;top:0;width:var(--sc-input-padding-right)}.searchcraft-input-clear-icon{width:var(--sc-input-clear-icon-size);height:var(--sc-input-clear-icon-size)}\";\nconst SearchcraftInputFormStyle0 = searchcraftInputFormModuleCss;\n\nconst SearchcraftInput = /*@__PURE__*/ proxyCustomElement(class SearchcraftInput extends H {\n constructor() {\n super();\n this.__registerHost();\n this.inputCleared = createEvent(this, \"inputCleared\", 7);\n this.noResultsReceived = createEvent(this, \"noResultsReceived\", 7);\n this.querySubmit = createEvent(this, \"querySubmit\", 7);\n this.inputFocus = createEvent(this, \"inputFocus\", 7);\n this.inputBlur = createEvent(this, \"inputBlur\", 7);\n this.debounceTimeout = null;\n this.searchStore = useSearchcraftStore.getState();\n this.handleOnInput = (event) => {\n const input = event.target;\n this.inputValue = input.value;\n if (input.value.trim() === '') {\n this.inputCleared.emit();\n return;\n }\n if (!this.autoSearch) {\n return;\n }\n if (this.debounceDelay > 0) {\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.debounceTimeout = setTimeout(() => this.performSearch(input.value), this.debounceDelay);\n }\n else {\n this.performSearch(input.value);\n }\n };\n this.performSearch = async (value) => {\n if (value === useSearchcraftStore.getState().query) {\n return;\n }\n this.querySubmit.emit(value);\n this.searchTerm = value.trim();\n this.error = false;\n this.searchStore.setQuery(this.searchTerm);\n try {\n await this.searchStore.search();\n }\n catch (error) {\n this.error = true;\n this.inputCleared.emit();\n }\n };\n this.handleClearInput = () => {\n this.inputValue = '';\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.searchTerm = '';\n this.searchStore.setQuery('');\n this.searchStore.setSearchResults(null);\n this.error = false;\n if (this.inputCleared) {\n this.inputCleared.emit();\n }\n };\n this.handleFormSubmit = async (event) => {\n event.preventDefault();\n await this.performSearch(this.searchTerm);\n };\n this.config = undefined;\n this.autoSearch = true;\n this.buttonPlacement = 'none';\n this.buttonLabel = undefined;\n this.inputLabel = undefined;\n this.customStyles = {};\n this.placeholderValue = 'Enter Search';\n this.searchTerm = '';\n this.debounceDelay = 0;\n this.inputValue = this.searchTerm;\n this.error = false;\n }\n init() {\n if (this.config) {\n const searchcraft = new ie(this.config, {\n sdkName: packageJson.name,\n sdkVersion: packageJson.version,\n });\n this.searchStore.initialize(searchcraft, true);\n }\n }\n componentDidLoad() {\n this.init();\n }\n onConfigChange() {\n this.init();\n }\n render() {\n const validatedCustomStyles = parseCustomStyles(this.customStyles);\n const isShowingClearButton = this.inputValue.length > 0;\n const inputGridClassNames = classNames('searchcraft-input-grid', {\n 'searchcraft-input-grid-buttonLeft': this.buttonPlacement === 'left',\n 'searchcraft-input-grid-buttonRight': this.buttonPlacement === 'right',\n 'searchcraft-input-grid-buttonNone': this.buttonPlacement === 'none',\n });\n return (h(\"form\", { key: 'ac7eeb57d1d06df0be4354f2bb64b36d954d9cac', class: 'searchcraft-input-form', onSubmit: this.handleFormSubmit }, h(\"div\", { key: '544156a87b038bd8585ea1c5613fee9f6906c973', class: inputGridClassNames }, h(\"div\", { key: '7ff6b5150e440c45eef51f103e41314bd68dbe43', class: 'searchcraft-input-button-wrapper' }, h(\"searchcraft-button\", { key: '3b0c6c94485133259dc247905d0bd5b224f74e4e', onButtonClick: this.handleFormSubmit, label: this.buttonLabel })), h(\"div\", { key: '8604e917290120905a92cf948a5a76f52197e882', class: 'searchcraft-input-label-wrapper' }, h(\"searchcraft-input-label\", { key: '376e1c3e3b84f683872e118a14da2a229e4b8eb5', label: this.inputLabel })), this.error && (h(\"div\", { key: 'aa26f0b978e134ca026ea290eb149d6626185ac2', class: 'searchcraft-input-error-wrapper' }, h(\"searchcraft-error-message\", { key: '87340701fd0a5fcbd0249d9798a607e920089080', errorMessage: 'Please enter a search query.' }))), h(\"div\", { key: 'ebd7c6d07da299a7d2553ccb96fc618222e228df', class: 'searchcraft-input-wrapper' }, h(\"input\", { key: '1961a43111858561b4d2e84935b3c47cec45397f', autoComplete: 'off', class: 'searchcraft-input', onFocus: () => this.inputFocus.emit(), onBlur: () => this.inputBlur.emit(), onInput: (event) => {\n this.handleOnInput(event);\n }, placeholder: this.placeholderValue, style: validatedCustomStyles, type: 'text', value: this.inputValue }), h(\"div\", { key: '966ac230dd6946dad185d9f657145ebab76a262a', class: 'searchcraft-input-search-icon-wrapper' }, h(\"svg\", { key: '12d139c60fe38055df9ea502c877fb773b38682d', class: 'searchcraft-input-search-icon', viewBox: '0 0 20 20', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', \"aria-labelledby\": 'searchcraft-title' }, h(\"title\", { key: 'b8eea376073c55c6e0e4bf29d40230f1d2220ce7', id: 'searchcraft-title' }, \"Searchcraft Search Icon Light\"), h(\"path\", { key: 'c513ef3b3cea3823e7838ac2574cd5a237e06ef1', d: 'M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z', stroke: '#404040', \"stroke-width\": '1.5', \"stroke-linecap\": 'round', \"stroke-linejoin\": 'round' }))), isShowingClearButton && (h(\"button\", { key: '35e056ea1d2530e045c3edae231204f9c490d10b', type: 'button', class: 'searchcraft-input-clear-button', onClick: this.handleClearInput }, h(\"svg\", { key: '3ab21fc44269d2f13ba91c21d24becd3ea5e2728', class: 'searchcraft-input-clear-icon', viewBox: '0 0 22 22', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', \"aria-labelledby\": 'icon-title' }, h(\"title\", { key: 'c9c4c5c1a5772cac63e3cf5557cc6e90f0b1a1f1', id: 'icon-title' }, \"Searchcraft Clear Input Icon Light\"), h(\"path\", { key: '36740b841f8ec8e439c8e7fbefd37dafafcf5d00', d: 'M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z', stroke: 'black', \"stroke-width\": '1.5', \"stroke-linecap\": 'round', \"stroke-linejoin\": 'round' }))))))));\n }\n static get watchers() { return {\n \"config\": [\"onConfigChange\"]\n }; }\n static get style() { return SearchcraftInputFormStyle0; }\n}, [0, \"searchcraft-input-form\", {\n \"config\": [16],\n \"autoSearch\": [4, \"auto-search\"],\n \"buttonPlacement\": [1, \"button-placement\"],\n \"buttonLabel\": [1, \"button-label\"],\n \"inputLabel\": [1, \"input-label\"],\n \"customStyles\": [1, \"custom-styles\"],\n \"placeholderValue\": [1, \"placeholder-value\"],\n \"searchTerm\": [1, \"search-term\"],\n \"debounceDelay\": [2, \"debounce-delay\"],\n \"inputValue\": [32],\n \"error\": [32]\n }, undefined, {\n \"config\": [\"onConfigChange\"]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-input-form\", \"searchcraft-button\", \"searchcraft-error-message\", \"searchcraft-input-label\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-input-form\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftInput);\n }\n break;\n case \"searchcraft-button\":\n if (!customElements.get(tagName)) {\n defineCustomElement$4();\n }\n break;\n case \"searchcraft-error-message\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"searchcraft-input-label\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\n\nconst SearchcraftInputForm = SearchcraftInput;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftInputForm, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-input-form.js.map","import { S as SearchcraftInputLabel$1, d as defineCustomElement$1 } from './p-bd5fede3.js';\n\nconst SearchcraftInputLabel = SearchcraftInputLabel$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftInputLabel, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-input-label.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-86911576.js';\nimport { f as formatNumberWithCommas } from './p-f308d05d.js';\n\nconst searchcraftResultsInfoModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-results-info-container{border-bottom:1px solid var(--sc-surface-disabled);display:flex;justify-content:flex-start}.searchcraft-results-info-content{color:var(--sc-content-primary);font-family:var(--sc-font-family);font-size:18px;font-weight:600;line-height:20px;margin:0px 0 8px}@media (max-width: 900px){.searchcraft-results-info-content{margin:0;margin-bottom:8px}}\";\nconst SearchcraftResultsInfoStyle0 = searchcraftResultsInfoModuleCss;\n\nconst SearchcraftResultsInfo$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftResultsInfo extends H {\n constructor() {\n super();\n this.__registerHost();\n this.isRequesting = false;\n this.resultsCount = 0;\n this.responseTime = '';\n this.query = '';\n }\n connectedCallback() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n var _a, _b, _c, _d;\n this.isRequesting = state.isRequesting;\n this.resultsCount = ((_b = (_a = state.searchResults) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.count) || 0;\n this.responseTime = ((((_d = (_c = state.searchResults) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.time_taken) || 0) * 1000).toFixed(2);\n this.query = state.query || '';\n });\n }\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n render() {\n if (!this.query || this.resultsCount === 0) {\n return null;\n }\n const formattedResults = formatNumberWithCommas(this.resultsCount);\n return (h(\"div\", { class: 'searchcraft-results-info-container' }, h(\"p\", { class: 'searchcraft-results-info-content' }, formattedResults, \" results found in \", this.responseTime, \"ms\")));\n }\n static get style() { return SearchcraftResultsInfoStyle0; }\n}, [0, \"searchcraft-results-info\", {\n \"isRequesting\": [32],\n \"resultsCount\": [32],\n \"responseTime\": [32],\n \"query\": [32]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-results-info\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-results-info\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftResultsInfo$1);\n }\n break;\n } });\n}\n\nconst SearchcraftResultsInfo = SearchcraftResultsInfo$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftResultsInfo, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-results-info.js.map","import { S as SearchcraftSlider$1, d as defineCustomElement$1 } from './p-5380505b.js';\n\nconst SearchcraftSlider = SearchcraftSlider$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftSlider, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-slider.js.map","import { S as SearchcraftToggleButton$1, d as defineCustomElement$1 } from './p-596ceccc.js';\n\nconst SearchcraftToggleButton = SearchcraftToggleButton$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftToggleButton, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-toggle-button.js.map","/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst e=new Set([\"children\",\"localName\",\"ref\",\"style\",\"className\"]),n=new WeakMap,t=(e,t,o,l,a)=>{const s=a?.[t];void 0===s?(e[t]=o,null==o&&t in HTMLElement.prototype&&e.removeAttribute(t)):o!==l&&((e,t,o)=>{let l=n.get(e);void 0===l&&n.set(e,l=new Map);let a=l.get(t);void 0!==o?void 0===a?(l.set(t,a={handleEvent:o}),e.addEventListener(t,a)):a.handleEvent=o:void 0!==a&&(l.delete(t),e.removeEventListener(t,a))})(e,s,o)},o=({react:n,tagName:o,elementClass:l,events:a,displayName:s})=>{const c=new Set(Object.keys(a??{})),r=n.forwardRef(((s,r)=>{const i=n.useRef(new Map),d=n.useRef(null),f={},u={};for(const[n,t]of Object.entries(s))e.has(n)?f[\"className\"===n?\"class\":n]=t:c.has(n)||n in l.prototype?u[n]=t:f[n]=t;return n.useLayoutEffect((()=>{if(null===d.current)return;const e=new Map;for(const n in u)t(d.current,n,s[n],i.current.get(n),a),i.current.delete(n),e.set(n,s[n]);for(const[e,n]of i.current)t(d.current,e,void 0,n,a);i.current=e})),n.useLayoutEffect((()=>{d.current?.removeAttribute(\"defer-hydration\")}),[]),f.suppressHydrationWarning=!0,n.createElement(o,{...f,ref:n.useCallback((e=>{d.current=e,\"function\"==typeof r?r(e):null!==r&&(r.current=e)}),[r])})}));return r.displayName=s??l.name,r};export{o as createComponent};\n//# sourceMappingURL=create-component.js.map\n","import { createComponent as a } from \"@lit/react\";\nconst i = ({\n defineCustomElement: e,\n ...r\n}) => (typeof e < \"u\" && e(), a(r)), p = ({\n hydrateModule: e,\n properties: r,\n tagName: n\n}) => async (t) => {\n const { createComponentForServerSideRendering: o } = await import(\"./ssr.js\");\n return o({\n tagName: n,\n properties: r,\n renderToString: (await e).renderToString\n })(t);\n};\nexport {\n i as createComponent,\n p as createSSRComponent\n};\n","'use client';\n\n/**\n * This file was automatically generated by the Stencil React Output Target.\n * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n/* eslint-disable */\n\nimport { SearchcraftBaseSearchResult as SearchcraftBaseSearchResultElement, defineCustomElement as defineSearchcraftBaseSearchResult } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-base-search-result.js\";\nimport { SearchcraftBaseSearchResults as SearchcraftBaseSearchResultsElement, defineCustomElement as defineSearchcraftBaseSearchResults } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-base-search-results.js\";\nimport { SearchcraftButton as SearchcraftButtonElement, defineCustomElement as defineSearchcraftButton } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-button.js\";\nimport { SearchcraftErrorMessage as SearchcraftErrorMessageElement, defineCustomElement as defineSearchcraftErrorMessage } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-error-message.js\";\nimport { SearchcraftFacetList as SearchcraftFacetListElement, defineCustomElement as defineSearchcraftFacetList } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-facet-list.js\";\nimport { SearchcraftFilterPanel as SearchcraftFilterPanelElement, defineCustomElement as defineSearchcraftFilterPanel } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-filter-panel.js\";\nimport { SearchcraftInputForm as SearchcraftInputFormElement, defineCustomElement as defineSearchcraftInputForm } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-input-form.js\";\nimport { SearchcraftInputLabel as SearchcraftInputLabelElement, defineCustomElement as defineSearchcraftInputLabel } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-input-label.js\";\nimport { SearchcraftPopoverForm as SearchcraftPopoverFormElement, defineCustomElement as defineSearchcraftPopoverForm } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-popover-form.js\";\nimport { SearchcraftPopoverListView as SearchcraftPopoverListViewElement, defineCustomElement as defineSearchcraftPopoverListView } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-popover-list-view.js\";\nimport { SearchcraftPopoverResult as SearchcraftPopoverResultElement, defineCustomElement as defineSearchcraftPopoverResult } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-popover-result.js\";\nimport { SearchcraftResultsInfo as SearchcraftResultsInfoElement, defineCustomElement as defineSearchcraftResultsInfo } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-results-info.js\";\nimport { SearchcraftSlider as SearchcraftSliderElement, defineCustomElement as defineSearchcraftSlider } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-slider.js\";\nimport { SearchcraftToggleButton as SearchcraftToggleButtonElement, defineCustomElement as defineSearchcraftToggleButton } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-toggle-button.js\";\nimport type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';\nimport { createComponent } from '@stencil/react-output-target/runtime';\nimport React from 'react';\n\ntype SearchcraftBaseSearchResultEvents = NonNullable<unknown>;\n\nexport const SearchcraftBaseSearchResult: StencilReactComponent<SearchcraftBaseSearchResultElement, SearchcraftBaseSearchResultEvents> = /*@__PURE__*/ createComponent<SearchcraftBaseSearchResultElement, SearchcraftBaseSearchResultEvents>({\n tagName: 'searchcraft-base-search-result',\n elementClass: SearchcraftBaseSearchResultElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftBaseSearchResultEvents,\n defineCustomElement: defineSearchcraftBaseSearchResult\n});\n\ntype SearchcraftBaseSearchResultsEvents = { onNoResults: EventName<CustomEvent<void>> };\n\nexport const SearchcraftBaseSearchResults: StencilReactComponent<SearchcraftBaseSearchResultsElement, SearchcraftBaseSearchResultsEvents> = /*@__PURE__*/ createComponent<SearchcraftBaseSearchResultsElement, SearchcraftBaseSearchResultsEvents>({\n tagName: 'searchcraft-base-search-results',\n elementClass: SearchcraftBaseSearchResultsElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onNoResults: 'noResults' } as SearchcraftBaseSearchResultsEvents,\n defineCustomElement: defineSearchcraftBaseSearchResults\n});\n\ntype SearchcraftButtonEvents = { onButtonClick: EventName<CustomEvent<void>> };\n\nexport const SearchcraftButton: StencilReactComponent<SearchcraftButtonElement, SearchcraftButtonEvents> = /*@__PURE__*/ createComponent<SearchcraftButtonElement, SearchcraftButtonEvents>({\n tagName: 'searchcraft-button',\n elementClass: SearchcraftButtonElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onButtonClick: 'buttonClick' } as SearchcraftButtonEvents,\n defineCustomElement: defineSearchcraftButton\n});\n\ntype SearchcraftErrorMessageEvents = NonNullable<unknown>;\n\nexport const SearchcraftErrorMessage: StencilReactComponent<SearchcraftErrorMessageElement, SearchcraftErrorMessageEvents> = /*@__PURE__*/ createComponent<SearchcraftErrorMessageElement, SearchcraftErrorMessageEvents>({\n tagName: 'searchcraft-error-message',\n elementClass: SearchcraftErrorMessageElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftErrorMessageEvents,\n defineCustomElement: defineSearchcraftErrorMessage\n});\n\ntype SearchcraftFacetListEvents = { onFacetSelectionUpdated: EventName<CustomEvent<{ paths: string[] }>> };\n\nexport const SearchcraftFacetList: StencilReactComponent<SearchcraftFacetListElement, SearchcraftFacetListEvents> = /*@__PURE__*/ createComponent<SearchcraftFacetListElement, SearchcraftFacetListEvents>({\n tagName: 'searchcraft-facet-list',\n elementClass: SearchcraftFacetListElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onFacetSelectionUpdated: 'facetSelectionUpdated' } as SearchcraftFacetListEvents,\n defineCustomElement: defineSearchcraftFacetList\n});\n\ntype SearchcraftFilterPanelEvents = NonNullable<unknown>;\n\nexport const SearchcraftFilterPanel: StencilReactComponent<SearchcraftFilterPanelElement, SearchcraftFilterPanelEvents> = /*@__PURE__*/ createComponent<SearchcraftFilterPanelElement, SearchcraftFilterPanelEvents>({\n tagName: 'searchcraft-filter-panel',\n elementClass: SearchcraftFilterPanelElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftFilterPanelEvents,\n defineCustomElement: defineSearchcraftFilterPanel\n});\n\ntype SearchcraftInputFormEvents = {\n onInputCleared: EventName<CustomEvent<void>>,\n onNoResultsReceived: EventName<CustomEvent<void>>,\n onQuerySubmit: EventName<CustomEvent<string>>,\n onInputFocus: EventName<CustomEvent<void>>,\n onInputBlur: EventName<CustomEvent<void>>\n};\n\nexport const SearchcraftInputForm: StencilReactComponent<SearchcraftInputFormElement, SearchcraftInputFormEvents> = /*@__PURE__*/ createComponent<SearchcraftInputFormElement, SearchcraftInputFormEvents>({\n tagName: 'searchcraft-input-form',\n elementClass: SearchcraftInputFormElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {\n onInputCleared: 'inputCleared',\n onNoResultsReceived: 'noResultsReceived',\n onQuerySubmit: 'querySubmit',\n onInputFocus: 'inputFocus',\n onInputBlur: 'inputBlur'\n } as SearchcraftInputFormEvents,\n defineCustomElement: defineSearchcraftInputForm\n});\n\ntype SearchcraftInputLabelEvents = NonNullable<unknown>;\n\nexport const SearchcraftInputLabel: StencilReactComponent<SearchcraftInputLabelElement, SearchcraftInputLabelEvents> = /*@__PURE__*/ createComponent<SearchcraftInputLabelElement, SearchcraftInputLabelEvents>({\n tagName: 'searchcraft-input-label',\n elementClass: SearchcraftInputLabelElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftInputLabelEvents,\n defineCustomElement: defineSearchcraftInputLabel\n});\n\ntype SearchcraftPopoverFormEvents = NonNullable<unknown>;\n\nexport const SearchcraftPopoverForm: StencilReactComponent<SearchcraftPopoverFormElement, SearchcraftPopoverFormEvents> = /*@__PURE__*/ createComponent<SearchcraftPopoverFormElement, SearchcraftPopoverFormEvents>({\n tagName: 'searchcraft-popover-form',\n elementClass: SearchcraftPopoverFormElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftPopoverFormEvents,\n defineCustomElement: defineSearchcraftPopoverForm\n});\n\ntype SearchcraftPopoverListViewEvents = NonNullable<unknown>;\n\nexport const SearchcraftPopoverListView: StencilReactComponent<SearchcraftPopoverListViewElement, SearchcraftPopoverListViewEvents> = /*@__PURE__*/ createComponent<SearchcraftPopoverListViewElement, SearchcraftPopoverListViewEvents>({\n tagName: 'searchcraft-popover-list-view',\n elementClass: SearchcraftPopoverListViewElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftPopoverListViewEvents,\n defineCustomElement: defineSearchcraftPopoverListView\n});\n\ntype SearchcraftPopoverResultEvents = NonNullable<unknown>;\n\nexport const SearchcraftPopoverResult: StencilReactComponent<SearchcraftPopoverResultElement, SearchcraftPopoverResultEvents> = /*@__PURE__*/ createComponent<SearchcraftPopoverResultElement, SearchcraftPopoverResultEvents>({\n tagName: 'searchcraft-popover-result',\n elementClass: SearchcraftPopoverResultElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftPopoverResultEvents,\n defineCustomElement: defineSearchcraftPopoverResult\n});\n\ntype SearchcraftResultsInfoEvents = NonNullable<unknown>;\n\nexport const SearchcraftResultsInfo: StencilReactComponent<SearchcraftResultsInfoElement, SearchcraftResultsInfoEvents> = /*@__PURE__*/ createComponent<SearchcraftResultsInfoElement, SearchcraftResultsInfoEvents>({\n tagName: 'searchcraft-results-info',\n elementClass: SearchcraftResultsInfoElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftResultsInfoEvents,\n defineCustomElement: defineSearchcraftResultsInfo\n});\n\ntype SearchcraftSliderEvents = { onRangeChanged: EventName<CustomEvent<{ startValue: number; endValue: number }>> };\n\nexport const SearchcraftSlider: StencilReactComponent<SearchcraftSliderElement, SearchcraftSliderEvents> = /*@__PURE__*/ createComponent<SearchcraftSliderElement, SearchcraftSliderEvents>({\n tagName: 'searchcraft-slider',\n elementClass: SearchcraftSliderElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onRangeChanged: 'rangeChanged' } as SearchcraftSliderEvents,\n defineCustomElement: defineSearchcraftSlider\n});\n\ntype SearchcraftToggleButtonEvents = { onToggleUpdated: EventName<CustomEvent<boolean>> };\n\nexport const SearchcraftToggleButton: StencilReactComponent<SearchcraftToggleButtonElement, SearchcraftToggleButtonEvents> = /*@__PURE__*/ createComponent<SearchcraftToggleButtonElement, SearchcraftToggleButtonEvents>({\n tagName: 'searchcraft-toggle-button',\n elementClass: SearchcraftToggleButtonElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onToggleUpdated: 'toggleUpdated' } as SearchcraftToggleButtonEvents,\n defineCustomElement: defineSearchcraftToggleButton\n});\n","import type { FC } from 'react';\n\nimport { SearchcraftBaseSearchResult as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftBaseSearchResultProps\n extends Components.SearchcraftBaseSearchResult {}\n\nconst SearchcraftBaseSearchResult: FC<SearchcraftBaseSearchResultProps> = (\n props,\n) => <Component {...props} />;\n\nexport { SearchcraftBaseSearchResult };\nexport type { SearchcraftBaseSearchResultProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftBaseSearchResults as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftBaseSearchResultsProps\n extends Components.SearchcraftBaseSearchResults {}\n\nconst SearchcraftBaseSearchResults: FC<SearchcraftBaseSearchResultsProps> = (\n props,\n) => <Component {...props} />;\n\nexport { SearchcraftBaseSearchResults };\nexport type { SearchcraftBaseSearchResultsProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftButton as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftButtonProps extends Components.SearchcraftButton {}\n\nconst SearchcraftButton: FC<SearchcraftButtonProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftButton };\nexport type { SearchcraftButtonProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftErrorMessage as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftErrorMessageProps\n extends Components.SearchcraftErrorMessage {}\n\nconst SearchcraftErrorMessage: FC<SearchcraftErrorMessageProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftErrorMessage };\nexport type { SearchcraftErrorMessageProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftFacetList as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftFacetListProps extends Components.SearchcraftFacetList {}\n\nconst SearchcraftFacetList: FC<SearchcraftFacetListProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftFacetList };\nexport type { SearchcraftFacetListProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftFilterPanel as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftFilterPanelProps\n extends Components.SearchcraftFilterPanel {}\n\nconst SearchcraftFilterPanel: FC<SearchcraftFilterPanelProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftFilterPanel };\nexport type { SearchcraftFilterPanelProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftInputForm as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftInputFormProps extends Components.SearchcraftInputForm {}\n\nconst SearchcraftInputForm: FC<SearchcraftInputFormProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftInputForm };\nexport type { SearchcraftInputFormProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftInputLabel as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftInputLabelProps extends Components.SearchcraftInputLabel {}\n\nconst SearchcraftInputLabel: FC<SearchcraftInputLabelProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftInputLabel };\nexport type { SearchcraftInputLabelProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftResultsInfo as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftResultsInfoProps\n extends Components.SearchcraftResultsInfo {}\n\nconst SearchcraftResultsInfo: FC<SearchcraftResultsInfoProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftResultsInfo };\nexport type { SearchcraftResultsInfoProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftSlider as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftSliderProps extends Components.SearchcraftSlider {}\n\nconst SearchcraftSlider: FC<SearchcraftSliderProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftSlider };\nexport type { SearchcraftSliderProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftToggleButton as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftToggleButtonProps\n extends Components.SearchcraftToggleButton {}\n\nconst SearchcraftToggleButton: FC<SearchcraftToggleButtonProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftToggleButton };\nexport type { SearchcraftToggleButtonProps };\n"],"names":["NAMESPACE","BUILD","__defProp","__export","target","all","name","hostRefs","getHostRef","ref","registerHost","hostElement","cmpMeta","hostRef","r","isMemberInElement","elm","memberName","consoleError","el","styles","SLOT_FB_CSS","win","doc","H","plt","h2","eventName","listener","opts","supportsShadow","promiseResolve","v","supportsConstructableStylesheets","queuePending","queueDomReads","queueDomWrites","queueTask","queue","write","cb","nextTick","flush","consume","i2","e","writeTask","EMPTY_OBJ","SVG_NS","HTML_NS","isComplexType","o","queryNonceMetaTagContent","doc2","_a","_b","_c","result_exports","err","map","ok","unwrap","unwrapErr","value","result","fn","val","newVal","createTime","fnName","tagName","h","nodeName","vnodeData","children","child","key","slotName","simple","lastSimple","vNodeChildren","walk","c","newVNode","classData","k","vdomFnUtils","vnode","tag","text","Host","isHost","node","convertToPublic","convertToPrivate","parsePropertyValue","propValue","propType","getElement","createEvent","flags","detail","emitEvent","ev","rootAppliedStyles","registerStyle","scopeId2","cssText","allowCS","style","addStyle","styleContainerNode","mode","getScopeId","appliedStyles","styleElm","nonce","preconnectLinks","referenceNode2","stylesheet","existingStyleContainer","attachStyles","endAttachStyles","cmp","setAccessor","oldValue","newValue","isSvg","isProp","ln","classList","oldClasses","parseClassList","newClasses","prop","capture","CAPTURE_EVENT_SUFFIX","CAPTURE_EVENT_REGEX","isComplex","n","parseClassListRegex","updateElement","oldVnode","newVnode","isSvgMode2","oldVnodeAttrs","newVnodeAttrs","sortedAttrNames","attrNames","attr","contentRef","hostTagName","useNativeShadowDom","checkSlotFallbackVisibility","checkSlotRelocate","isSvgMode","createElm","oldParentVNode","newParentVNode","childIndex","parentElm","newVNode2","childNode","oldVNode","putBackInOriginalLocation","recursive","oldSlotChildNodes","insertBefore","parentReferenceNode","referenceNode","addVnodes","before","parentVNode","vnodes","startIdx","endIdx","containerElm","removeVnodes","index","updateChildren","oldCh","newCh","isInitialRender","oldStartIdx","newStartIdx","idxInOld","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","elmToMove","isSameVnode","patch","leftVNode","rightVNode","oldChildren","newChildren","defaultHolder","updateFallbackSlotVisibility","childNodes","siblingNode","relocateNodes","markSlotContentForRelocation","hostContentNodes","j","isNodeLocatedInSlot","relocateNodeData","relocateNode","nodeToRelocate","parent","newNode","reference","renderVdom","renderFnResults","isInitialLoad","_d","hostElm","rootVnode","relocateData","orgLocationNode","slotRefNode","parentNodeRef","insertBeforeNode","refNode","attachToAncestor","ancestorComponent","scheduleUpdate","dispatchHooks","endSchedule","instance","maybePromise","enqueue","updateComponent","isPromisey","err2","endUpdate","rc","endRender","callRender","childrenPromises","postUpdate","postUpdateComponent","endPostUpdate","addHydratedFlag","safeCall","appDidLoad","who","method","arg","getValue","propName","setValue","oldVal","areBothNaN","watchMethods","watchMethodName","proxyComponent","Cstr","prototype","members","memberFlags","attrNameToPropName","attrName","_a2","flags2","entry","callbackName","_","m","initializeComponent","hmrVersionId","cmpTag","endRegisterStyles","schedule","fireConnectedCallback","connectedCallback","endConnected","setContentReference","contentRefElm","disconnectedCallback","proxyCustomElement","compactMeta","originalConnectedCallback","originalDisconnectedCallback","hasHostListenerAttached","Fragment","zustand","vanilla$1","createStoreImpl","createState","state","listeners","setState","partial","replace","nextState","previousState","getState","api","initialState","createStore","react$1","react","react_production_min","l$1","p$1","q$1","t","u","v$1","w$1","x$1","y$1","z$1","A$1","a","B$1","C$1","D$1","E$1","b","F$1","G$1","H$1","I","J$1","K$1","L$1","M$1","d","g","f","N$1","O$1","escape","P$1","Q$1","R","S$1","T$1","U","V$1","W$1","X$1","React","vanilla","identity","useStore","selector","slice","createImpl","useBoundStore","create","exports","D","B","p","L","N","w","s","i","y","T","q","M","x","G","W","V","F","$","K","E","z","C","A","J","Y","P","Q","X","Z","ee","te","ne","l","S","ie","O","ae","useSearchcraftStore","set","get","searchcraft","debuggerInstance","log","level","message","data","fieldName","currentPaths","currentValues","type","query","results","facets","isRequesting","updatedFacets","error","searchcraftInstance","debug","searchcraftBaseSearchResultModuleCss","SearchcraftBaseSearchResultStyle0","SearchcraftBaseSearchResult","document_position","search_term","number_of_documents","imageContainer","contentContainer","defineCustomElement","SearchcraftBaseSearchResult$1","defineCustomElement$1","parseCustomStyles","serializeStyles","getFormattedTimeFromNow","timestamp","now","inputTime","diffInSeconds","minutes","hours","days","years","formatNumberWithCommas","number","getMillis","unit","removeSubstringMatches","arr","array","otherEntry","otherIndex","getDocumentValueFromSearchResultMapping","document","mapping","fieldNameDetails","valueFound","deepMergeWithSpread","obj1","obj2","facetToRecord","facet","records","traverseAndAddToFragments","facetChild","recordToObject","record","root","fragment","pathParts","currentRoot","currentPath","part","nextPath","objectToFacet","childObject","transformed","subChildObject","filterRecordByParentPaths","record1","record2","paths1","paths2","parentPaths","path","mergeFacetRoots","incomingRoot","currentArray","incomingArray","currentRootFacetChild","incomingRootFacetChild","currentRecord","incomingRecord","filteredCurrentRecord","mergedRecord","mergedObject","mergedFacetChild","searchcraftErrorMessageModuleCss","SearchcraftErrorMessageStyle0","SearchcraftErrorMessage","searchcraftBaseSearchResultsModuleCss","SearchcraftBaseSearchResultsStyle0","SearchcraftBaseSearchResults$1","searchResults","titleContent","subtitleContent","bodyContent","containerHref","buttonHref","imageSource","footerContent","serializedStyles","_e","_f","_g","_h","_j","_k","documents","_index","finalComponents","documentElements","defineCustomElement$3","defineCustomElement$2","SearchcraftBaseSearchResults","classnames","module","hasOwn","classNames","classes","appendClass","parseValue","newClass","searchcraftButtonModuleCss","SearchcraftButtonStyle0","SearchcraftButton","SearchcraftButton$1","SearchcraftErrorMessage$1","searchcraftFacetListModuleCss","SearchcraftFacetListStyle0","SearchcraftFacetList","label","count","char","facetChildAncestor","facetPrime","timeTaken","incomingFacetRoot","updatedPaths","testPath","acc","str","paths","pathsWithParentPathsRemoved","firstFacet","isChildSelected","_event","grandchild","SearchcraftFacetList$1","searchcraftSliderModuleCss","SearchcraftSliderStyle0","SearchcraftSlider","event","inputElement","rangeMin","rangeMax","startPercent","endPercent","startLabel","endLabel","searchcraftToggleButtonModuleCss","SearchcraftToggleButtonStyle0","SearchcraftToggleButton","searchcraftFilterPanelModuleCss","SearchcraftFilterPanelStyle0","SearchcraftFilterPanel$1","min","max","start","end","isActive","filterItem","item","granularityValue","defineCustomElement$4","SearchcraftFilterPanel","searchcraftInputLabelModuleCss","SearchcraftInputLabelStyle0","SearchcraftInputLabel","version","description","author","license","main","types","collection","unpkg","repository","files","scripts","dependencies","devDependencies","packageJson","searchcraftInputFormModuleCss","SearchcraftInputFormStyle0","SearchcraftInput","input","validatedCustomStyles","isShowingClearButton","inputGridClassNames","SearchcraftInputForm","SearchcraftInputLabel$1","searchcraftResultsInfoModuleCss","SearchcraftResultsInfoStyle0","SearchcraftResultsInfo$1","formattedResults","SearchcraftResultsInfo","SearchcraftSlider$1","SearchcraftToggleButton$1","createComponent","SearchcraftBaseSearchResultElement","defineSearchcraftBaseSearchResult","SearchcraftBaseSearchResultsElement","defineSearchcraftBaseSearchResults","SearchcraftButtonElement","defineSearchcraftButton","SearchcraftErrorMessageElement","defineSearchcraftErrorMessage","SearchcraftFacetListElement","defineSearchcraftFacetList","SearchcraftFilterPanelElement","defineSearchcraftFilterPanel","SearchcraftInputFormElement","defineSearchcraftInputForm","SearchcraftInputLabelElement","defineSearchcraftInputLabel","SearchcraftResultsInfoElement","defineSearchcraftResultsInfo","SearchcraftSliderElement","defineSearchcraftSlider","SearchcraftToggleButtonElement","defineSearchcraftToggleButton","props","jsx","Component"],"mappings":"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","x_google_ignoreList":[22,23]}
1
+ {"version":3,"file":"index.js","sources":["../../javascript-sdk/dist/components/p-e4846fa2.js","../../javascript-sdk/dist/components/p-ad4ebde0.js","../../javascript-sdk/dist/components/p-cbdcf6df.js","../../javascript-sdk/dist/components/searchcraft-base-search-result.js","../../javascript-sdk/dist/components/p-f308d05d.js","../../javascript-sdk/dist/components/p-16983367.js","../../javascript-sdk/dist/components/searchcraft-base-search-results.js","../../javascript-sdk/dist/components/p-5cdc6210.js","../../javascript-sdk/dist/components/p-9cb3d38b.js","../../javascript-sdk/dist/components/searchcraft-button.js","../../javascript-sdk/dist/components/searchcraft-error-message.js","../../javascript-sdk/dist/components/p-42bfef5f.js","../../javascript-sdk/dist/components/searchcraft-facet-list.js","../../javascript-sdk/dist/components/p-5380505b.js","../../javascript-sdk/dist/components/p-a23d2994.js","../../javascript-sdk/dist/components/searchcraft-filter-panel.js","../../javascript-sdk/dist/components/p-bd5fede3.js","../../javascript-sdk/dist/components/searchcraft-input-form.js","../../javascript-sdk/dist/components/searchcraft-input-label.js","../../javascript-sdk/dist/components/searchcraft-results-info.js","../../javascript-sdk/dist/components/searchcraft-slider.js","../../javascript-sdk/dist/components/searchcraft-toggle-button.js","../../../node_modules/@lit/react/create-component.js","../../../node_modules/@stencil/react-output-target/dist/react.js","../src/stencil-web-components/components.ts","../src/components/SearchcraftBaseSearchResult.tsx","../src/components/SearchcraftBaseSearchResults.tsx","../src/components/SearchcraftButton.tsx","../src/components/SearchcraftErrorMessage.tsx","../src/components/SearchcraftFacetList.tsx","../src/components/SearchcraftFilterPanel.tsx","../src/components/SearchcraftInputForm.tsx","../src/components/SearchcraftInputLabel.tsx","../src/components/SearchcraftResultsInfo.tsx","../src/components/SearchcraftSlider.tsx","../src/components/SearchcraftToggleButton.tsx"],"sourcesContent":["const NAMESPACE = 'searchcraft-javascript-sdk';\nconst BUILD = /* searchcraft-javascript-sdk */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: \"hydrated\", invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: false, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: false, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };\n\n/*\n Stencil Client Platform v4.22.3 | MIT Licensed | https://stenciljs.com\n */\nvar __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar hostRefs = /* @__PURE__ */ new WeakMap();\nvar getHostRef = (ref) => hostRefs.get(ref);\nvar registerHost = (hostElement, cmpMeta) => {\n const hostRef = {\n $flags$: 0,\n $hostElement$: hostElement,\n $cmpMeta$: cmpMeta,\n $instanceValues$: /* @__PURE__ */ new Map()\n };\n {\n hostRef.$onReadyPromise$ = new Promise((r) => hostRef.$onReadyResolve$ = r);\n hostElement[\"s-p\"] = [];\n hostElement[\"s-rc\"] = [];\n }\n return hostRefs.set(hostElement, hostRef);\n};\nvar isMemberInElement = (elm, memberName) => memberName in elm;\nvar consoleError = (e, el) => (0, console.error)(e, el);\n\n// src/client/client-style.ts\nvar styles = /* @__PURE__ */ new Map();\nvar SLOT_FB_CSS = \"slot-fb{display:contents}slot-fb[hidden]{display:none}\";\nvar win = typeof window !== \"undefined\" ? window : {};\nvar doc = win.document || { head: {} };\nvar H = win.HTMLElement || class {\n};\nvar plt = {\n $flags$: 0,\n $resourcesUrl$: \"\",\n jmp: (h2) => h2(),\n raf: (h2) => requestAnimationFrame(h2),\n ael: (el, eventName, listener, opts) => el.addEventListener(eventName, listener, opts),\n rel: (el, eventName, listener, opts) => el.removeEventListener(eventName, listener, opts),\n ce: (eventName, opts) => new CustomEvent(eventName, opts)\n};\nvar supportsShadow = BUILD.shadowDom;\nvar promiseResolve = (v) => Promise.resolve(v);\nvar supportsConstructableStylesheets = /* @__PURE__ */ (() => {\n try {\n new CSSStyleSheet();\n return typeof new CSSStyleSheet().replaceSync === \"function\";\n } catch (e) {\n }\n return false;\n})() ;\nvar queuePending = false;\nvar queueDomReads = [];\nvar queueDomWrites = [];\nvar queueTask = (queue, write) => (cb) => {\n queue.push(cb);\n if (!queuePending) {\n queuePending = true;\n if (write && plt.$flags$ & 4 /* queueSync */) {\n nextTick(flush);\n } else {\n plt.raf(flush);\n }\n }\n};\nvar consume = (queue) => {\n for (let i2 = 0; i2 < queue.length; i2++) {\n try {\n queue[i2](performance.now());\n } catch (e) {\n consoleError(e);\n }\n }\n queue.length = 0;\n};\nvar flush = () => {\n consume(queueDomReads);\n {\n consume(queueDomWrites);\n if (queuePending = queueDomReads.length > 0) {\n plt.raf(flush);\n }\n }\n};\nvar nextTick = (cb) => promiseResolve().then(cb);\nvar writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);\n\n// src/runtime/asset-path.ts\nvar getAssetPath = (path) => {\n const assetUrl = new URL(path, plt.$resourcesUrl$);\n return assetUrl.origin !== win.location.origin ? assetUrl.href : assetUrl.pathname;\n};\nvar setAssetPath = (path) => plt.$resourcesUrl$ = path;\n\n// src/utils/constants.ts\nvar EMPTY_OBJ = {};\nvar SVG_NS = \"http://www.w3.org/2000/svg\";\nvar HTML_NS = \"http://www.w3.org/1999/xhtml\";\n\n// src/utils/helpers.ts\nvar isDef = (v) => v != null;\nvar isComplexType = (o) => {\n o = typeof o;\n return o === \"object\" || o === \"function\";\n};\n\n// src/utils/query-nonce-meta-tag-content.ts\nfunction queryNonceMetaTagContent(doc2) {\n var _a, _b, _c;\n return (_c = (_b = (_a = doc2.head) == null ? void 0 : _a.querySelector('meta[name=\"csp-nonce\"]')) == null ? void 0 : _b.getAttribute(\"content\")) != null ? _c : void 0;\n}\n\n// src/utils/result.ts\nvar result_exports = {};\n__export(result_exports, {\n err: () => err,\n map: () => map,\n ok: () => ok,\n unwrap: () => unwrap,\n unwrapErr: () => unwrapErr\n});\nvar ok = (value) => ({\n isOk: true,\n isErr: false,\n value\n});\nvar err = (value) => ({\n isOk: false,\n isErr: true,\n value\n});\nfunction map(result, fn) {\n if (result.isOk) {\n const val = fn(result.value);\n if (val instanceof Promise) {\n return val.then((newVal) => ok(newVal));\n } else {\n return ok(val);\n }\n }\n if (result.isErr) {\n const value = result.value;\n return err(value);\n }\n throw \"should never get here\";\n}\nvar unwrap = (result) => {\n if (result.isOk) {\n return result.value;\n } else {\n throw result.value;\n }\n};\nvar unwrapErr = (result) => {\n if (result.isErr) {\n return result.value;\n } else {\n throw result.value;\n }\n};\nvar createTime = (fnName, tagName = \"\") => {\n {\n return () => {\n return;\n };\n }\n};\nvar h = (nodeName, vnodeData, ...children) => {\n let child = null;\n let key = null;\n let slotName = null;\n let simple = false;\n let lastSimple = false;\n const vNodeChildren = [];\n const walk = (c) => {\n for (let i2 = 0; i2 < c.length; i2++) {\n child = c[i2];\n if (Array.isArray(child)) {\n walk(child);\n } else if (child != null && typeof child !== \"boolean\") {\n if (simple = typeof nodeName !== \"function\" && !isComplexType(child)) {\n child = String(child);\n }\n if (simple && lastSimple) {\n vNodeChildren[vNodeChildren.length - 1].$text$ += child;\n } else {\n vNodeChildren.push(simple ? newVNode(null, child) : child);\n }\n lastSimple = simple;\n }\n }\n };\n walk(children);\n if (vnodeData) {\n if (vnodeData.key) {\n key = vnodeData.key;\n }\n if (vnodeData.name) {\n slotName = vnodeData.name;\n }\n {\n const classData = vnodeData.className || vnodeData.class;\n if (classData) {\n vnodeData.class = typeof classData !== \"object\" ? classData : Object.keys(classData).filter((k) => classData[k]).join(\" \");\n }\n }\n }\n if (typeof nodeName === \"function\") {\n return nodeName(\n vnodeData === null ? {} : vnodeData,\n vNodeChildren,\n vdomFnUtils\n );\n }\n const vnode = newVNode(nodeName, null);\n vnode.$attrs$ = vnodeData;\n if (vNodeChildren.length > 0) {\n vnode.$children$ = vNodeChildren;\n }\n {\n vnode.$key$ = key;\n }\n {\n vnode.$name$ = slotName;\n }\n return vnode;\n};\nvar newVNode = (tag, text) => {\n const vnode = {\n $flags$: 0,\n $tag$: tag,\n $text$: text,\n $elm$: null,\n $children$: null\n };\n {\n vnode.$attrs$ = null;\n }\n {\n vnode.$key$ = null;\n }\n {\n vnode.$name$ = null;\n }\n return vnode;\n};\nvar Host = {};\nvar isHost = (node) => node && node.$tag$ === Host;\nvar vdomFnUtils = {\n forEach: (children, cb) => children.map(convertToPublic).forEach(cb),\n map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate)\n};\nvar convertToPublic = (node) => ({\n vattrs: node.$attrs$,\n vchildren: node.$children$,\n vkey: node.$key$,\n vname: node.$name$,\n vtag: node.$tag$,\n vtext: node.$text$\n});\nvar convertToPrivate = (node) => {\n if (typeof node.vtag === \"function\") {\n const vnodeData = { ...node.vattrs };\n if (node.vkey) {\n vnodeData.key = node.vkey;\n }\n if (node.vname) {\n vnodeData.name = node.vname;\n }\n return h(node.vtag, vnodeData, ...node.vchildren || []);\n }\n const vnode = newVNode(node.vtag, node.vtext);\n vnode.$attrs$ = node.vattrs;\n vnode.$children$ = node.vchildren;\n vnode.$key$ = node.vkey;\n vnode.$name$ = node.vname;\n return vnode;\n};\nvar parsePropertyValue = (propValue, propType) => {\n if (propValue != null && !isComplexType(propValue)) {\n if (propType & 4 /* Boolean */) {\n return propValue === \"false\" ? false : propValue === \"\" || !!propValue;\n }\n if (propType & 2 /* Number */) {\n return parseFloat(propValue);\n }\n if (propType & 1 /* String */) {\n return String(propValue);\n }\n return propValue;\n }\n return propValue;\n};\nvar getElement = (ref) => ref;\n\n// src/runtime/event-emitter.ts\nvar createEvent = (ref, name, flags) => {\n const elm = getElement(ref);\n return {\n emit: (detail) => {\n return emitEvent(elm, name, {\n bubbles: !!(flags & 4 /* Bubbles */),\n composed: !!(flags & 2 /* Composed */),\n cancelable: !!(flags & 1 /* Cancellable */),\n detail\n });\n }\n };\n};\nvar emitEvent = (elm, name, opts) => {\n const ev = plt.ce(name, opts);\n elm.dispatchEvent(ev);\n return ev;\n};\nvar rootAppliedStyles = /* @__PURE__ */ new WeakMap();\nvar registerStyle = (scopeId2, cssText, allowCS) => {\n let style = styles.get(scopeId2);\n if (supportsConstructableStylesheets && allowCS) {\n style = style || new CSSStyleSheet();\n if (typeof style === \"string\") {\n style = cssText;\n } else {\n style.replaceSync(cssText);\n }\n } else {\n style = cssText;\n }\n styles.set(scopeId2, style);\n};\nvar addStyle = (styleContainerNode, cmpMeta, mode) => {\n var _a;\n const scopeId2 = getScopeId(cmpMeta);\n const style = styles.get(scopeId2);\n styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc;\n if (style) {\n if (typeof style === \"string\") {\n styleContainerNode = styleContainerNode.head || styleContainerNode;\n let appliedStyles = rootAppliedStyles.get(styleContainerNode);\n let styleElm;\n if (!appliedStyles) {\n rootAppliedStyles.set(styleContainerNode, appliedStyles = /* @__PURE__ */ new Set());\n }\n if (!appliedStyles.has(scopeId2)) {\n {\n styleElm = doc.createElement(\"style\");\n styleElm.innerHTML = style;\n const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);\n if (nonce != null) {\n styleElm.setAttribute(\"nonce\", nonce);\n }\n if (!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)) {\n if (styleContainerNode.nodeName === \"HEAD\") {\n const preconnectLinks = styleContainerNode.querySelectorAll(\"link[rel=preconnect]\");\n const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector(\"style\");\n styleContainerNode.insertBefore(styleElm, referenceNode2);\n } else if (\"host\" in styleContainerNode) {\n if (supportsConstructableStylesheets) {\n const stylesheet = new CSSStyleSheet();\n stylesheet.replaceSync(style);\n styleContainerNode.adoptedStyleSheets = [stylesheet, ...styleContainerNode.adoptedStyleSheets];\n } else {\n const existingStyleContainer = styleContainerNode.querySelector(\"style\");\n if (existingStyleContainer) {\n existingStyleContainer.innerHTML = style + existingStyleContainer.innerHTML;\n } else {\n styleContainerNode.prepend(styleElm);\n }\n }\n } else {\n styleContainerNode.append(styleElm);\n }\n }\n if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */ && styleContainerNode.nodeName !== \"HEAD\") {\n styleContainerNode.insertBefore(styleElm, null);\n }\n }\n if (cmpMeta.$flags$ & 4 /* hasSlotRelocation */) {\n styleElm.innerHTML += SLOT_FB_CSS;\n }\n if (appliedStyles) {\n appliedStyles.add(scopeId2);\n }\n }\n } else if (!styleContainerNode.adoptedStyleSheets.includes(style)) {\n styleContainerNode.adoptedStyleSheets = [...styleContainerNode.adoptedStyleSheets, style];\n }\n }\n return scopeId2;\n};\nvar attachStyles = (hostRef) => {\n const cmpMeta = hostRef.$cmpMeta$;\n const elm = hostRef.$hostElement$;\n const endAttachStyles = createTime(\"attachStyles\", cmpMeta.$tagName$);\n addStyle(\n elm.getRootNode(),\n cmpMeta);\n endAttachStyles();\n};\nvar getScopeId = (cmp, mode) => \"sc-\" + (cmp.$tagName$);\nvar setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {\n if (oldValue !== newValue) {\n let isProp = isMemberInElement(elm, memberName);\n let ln = memberName.toLowerCase();\n if (memberName === \"class\") {\n const classList = elm.classList;\n const oldClasses = parseClassList(oldValue);\n const newClasses = parseClassList(newValue);\n classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));\n classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));\n } else if (memberName === \"style\") {\n {\n for (const prop in oldValue) {\n if (!newValue || newValue[prop] == null) {\n if (prop.includes(\"-\")) {\n elm.style.removeProperty(prop);\n } else {\n elm.style[prop] = \"\";\n }\n }\n }\n }\n for (const prop in newValue) {\n if (!oldValue || newValue[prop] !== oldValue[prop]) {\n if (prop.includes(\"-\")) {\n elm.style.setProperty(prop, newValue[prop]);\n } else {\n elm.style[prop] = newValue[prop];\n }\n }\n }\n } else if (memberName === \"key\") ; else if ((!elm.__lookupSetter__(memberName)) && memberName[0] === \"o\" && memberName[1] === \"n\") {\n if (memberName[2] === \"-\") {\n memberName = memberName.slice(3);\n } else if (isMemberInElement(win, ln)) {\n memberName = ln.slice(2);\n } else {\n memberName = ln[2] + memberName.slice(3);\n }\n if (oldValue || newValue) {\n const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);\n memberName = memberName.replace(CAPTURE_EVENT_REGEX, \"\");\n if (oldValue) {\n plt.rel(elm, memberName, oldValue, capture);\n }\n if (newValue) {\n plt.ael(elm, memberName, newValue, capture);\n }\n }\n } else {\n const isComplex = isComplexType(newValue);\n if ((isProp || isComplex && newValue !== null) && !isSvg) {\n try {\n if (!elm.tagName.includes(\"-\")) {\n const n = newValue == null ? \"\" : newValue;\n if (memberName === \"list\") {\n isProp = false;\n } else if (oldValue == null || elm[memberName] != n) {\n if (typeof elm.__lookupSetter__(memberName) === \"function\") {\n elm[memberName] = n;\n } else {\n elm.setAttribute(memberName, n);\n }\n }\n } else {\n elm[memberName] = newValue;\n }\n } catch (e) {\n }\n }\n if (newValue == null || newValue === false) {\n if (newValue !== false || elm.getAttribute(memberName) === \"\") {\n {\n elm.removeAttribute(memberName);\n }\n }\n } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {\n newValue = newValue === true ? \"\" : newValue;\n {\n elm.setAttribute(memberName, newValue);\n }\n }\n }\n }\n};\nvar parseClassListRegex = /\\s/;\nvar parseClassList = (value) => !value ? [] : value.split(parseClassListRegex);\nvar CAPTURE_EVENT_SUFFIX = \"Capture\";\nvar CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + \"$\");\n\n// src/runtime/vdom/update-element.ts\nvar updateElement = (oldVnode, newVnode, isSvgMode2) => {\n const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$;\n const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;\n const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;\n {\n for (const memberName of sortedAttrNames(Object.keys(oldVnodeAttrs))) {\n if (!(memberName in newVnodeAttrs)) {\n setAccessor(elm, memberName, oldVnodeAttrs[memberName], void 0, isSvgMode2, newVnode.$flags$);\n }\n }\n }\n for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {\n setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);\n }\n};\nfunction sortedAttrNames(attrNames) {\n return attrNames.includes(\"ref\") ? (\n // we need to sort these to ensure that `'ref'` is the last attr\n [...attrNames.filter((attr) => attr !== \"ref\"), \"ref\"]\n ) : (\n // no need to sort, return the original array\n attrNames\n );\n}\n\n// src/runtime/vdom/vdom-render.ts\nvar scopeId;\nvar contentRef;\nvar hostTagName;\nvar useNativeShadowDom = false;\nvar checkSlotFallbackVisibility = false;\nvar checkSlotRelocate = false;\nvar isSvgMode = false;\nvar createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {\n var _a;\n const newVNode2 = newParentVNode.$children$[childIndex];\n let i2 = 0;\n let elm;\n let childNode;\n let oldVNode;\n if (!useNativeShadowDom) {\n checkSlotRelocate = true;\n if (newVNode2.$tag$ === \"slot\") {\n newVNode2.$flags$ |= newVNode2.$children$ ? (\n // slot element has fallback content\n // still create an element that \"mocks\" the slot element\n 2 /* isSlotFallback */\n ) : (\n // slot element does not have fallback content\n // create an html comment we'll use to always reference\n // where actual slot content should sit next to\n 1 /* isSlotReference */\n );\n }\n }\n if (newVNode2.$text$ !== null) {\n elm = newVNode2.$elm$ = doc.createTextNode(newVNode2.$text$);\n } else if (newVNode2.$flags$ & 1 /* isSlotReference */) {\n elm = newVNode2.$elm$ = doc.createTextNode(\"\");\n } else {\n if (!isSvgMode) {\n isSvgMode = newVNode2.$tag$ === \"svg\";\n }\n elm = newVNode2.$elm$ = doc.createElementNS(\n isSvgMode ? SVG_NS : HTML_NS,\n !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? \"slot-fb\" : newVNode2.$tag$\n ) ;\n if (isSvgMode && newVNode2.$tag$ === \"foreignObject\") {\n isSvgMode = false;\n }\n {\n updateElement(null, newVNode2, isSvgMode);\n }\n const rootNode = elm.getRootNode();\n const isElementWithinShadowRoot = !rootNode.querySelector(\"body\");\n if (!isElementWithinShadowRoot && BUILD.scoped && isDef(scopeId) && elm[\"s-si\"] !== scopeId) {\n elm.classList.add(elm[\"s-si\"] = scopeId);\n }\n if (newVNode2.$children$) {\n for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {\n childNode = createElm(oldParentVNode, newVNode2, i2);\n if (childNode) {\n elm.appendChild(childNode);\n }\n }\n }\n {\n if (newVNode2.$tag$ === \"svg\") {\n isSvgMode = false;\n } else if (elm.tagName === \"foreignObject\") {\n isSvgMode = true;\n }\n }\n }\n elm[\"s-hn\"] = hostTagName;\n {\n if (newVNode2.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) {\n elm[\"s-sr\"] = true;\n elm[\"s-cr\"] = contentRef;\n elm[\"s-sn\"] = newVNode2.$name$ || \"\";\n elm[\"s-rf\"] = (_a = newVNode2.$attrs$) == null ? void 0 : _a.ref;\n oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];\n if (oldVNode && oldVNode.$tag$ === newVNode2.$tag$ && oldParentVNode.$elm$) {\n {\n putBackInOriginalLocation(oldParentVNode.$elm$, false);\n }\n }\n }\n }\n return elm;\n};\nvar putBackInOriginalLocation = (parentElm, recursive) => {\n plt.$flags$ |= 1 /* isTmpDisconnected */;\n const oldSlotChildNodes = Array.from(parentElm.childNodes);\n if (parentElm[\"s-sr\"] && BUILD.experimentalSlotFixes) {\n let node = parentElm;\n while (node = node.nextSibling) {\n if (node && node[\"s-sn\"] === parentElm[\"s-sn\"] && node[\"s-sh\"] === hostTagName) {\n oldSlotChildNodes.push(node);\n }\n }\n }\n for (let i2 = oldSlotChildNodes.length - 1; i2 >= 0; i2--) {\n const childNode = oldSlotChildNodes[i2];\n if (childNode[\"s-hn\"] !== hostTagName && childNode[\"s-ol\"]) {\n insertBefore(parentReferenceNode(childNode), childNode, referenceNode(childNode));\n childNode[\"s-ol\"].remove();\n childNode[\"s-ol\"] = void 0;\n childNode[\"s-sh\"] = void 0;\n checkSlotRelocate = true;\n }\n if (recursive) {\n putBackInOriginalLocation(childNode, recursive);\n }\n }\n plt.$flags$ &= ~1 /* isTmpDisconnected */;\n};\nvar addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {\n let containerElm = parentElm[\"s-cr\"] && parentElm[\"s-cr\"].parentNode || parentElm;\n let childNode;\n for (; startIdx <= endIdx; ++startIdx) {\n if (vnodes[startIdx]) {\n childNode = createElm(null, parentVNode, startIdx);\n if (childNode) {\n vnodes[startIdx].$elm$ = childNode;\n insertBefore(containerElm, childNode, referenceNode(before) );\n }\n }\n }\n};\nvar removeVnodes = (vnodes, startIdx, endIdx) => {\n for (let index = startIdx; index <= endIdx; ++index) {\n const vnode = vnodes[index];\n if (vnode) {\n const elm = vnode.$elm$;\n if (elm) {\n {\n checkSlotFallbackVisibility = true;\n if (elm[\"s-ol\"]) {\n elm[\"s-ol\"].remove();\n } else {\n putBackInOriginalLocation(elm, true);\n }\n }\n elm.remove();\n }\n }\n }\n};\nvar updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = false) => {\n let oldStartIdx = 0;\n let newStartIdx = 0;\n let idxInOld = 0;\n let i2 = 0;\n let oldEndIdx = oldCh.length - 1;\n let oldStartVnode = oldCh[0];\n let oldEndVnode = oldCh[oldEndIdx];\n let newEndIdx = newCh.length - 1;\n let newStartVnode = newCh[0];\n let newEndVnode = newCh[newEndIdx];\n let node;\n let elmToMove;\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (oldStartVnode == null) {\n oldStartVnode = oldCh[++oldStartIdx];\n } else if (oldEndVnode == null) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (newStartVnode == null) {\n newStartVnode = newCh[++newStartIdx];\n } else if (newEndVnode == null) {\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldStartVnode, newStartVnode, isInitialRender)) {\n patch(oldStartVnode, newStartVnode, isInitialRender);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (isSameVnode(oldEndVnode, newEndVnode, isInitialRender)) {\n patch(oldEndVnode, newEndVnode, isInitialRender);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {\n if ((oldStartVnode.$tag$ === \"slot\" || newEndVnode.$tag$ === \"slot\")) {\n putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);\n }\n patch(oldStartVnode, newEndVnode, isInitialRender);\n insertBefore(parentElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {\n if ((oldStartVnode.$tag$ === \"slot\" || newEndVnode.$tag$ === \"slot\")) {\n putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);\n }\n patch(oldEndVnode, newStartVnode, isInitialRender);\n insertBefore(parentElm, oldEndVnode.$elm$, oldStartVnode.$elm$);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n idxInOld = -1;\n {\n for (i2 = oldStartIdx; i2 <= oldEndIdx; ++i2) {\n if (oldCh[i2] && oldCh[i2].$key$ !== null && oldCh[i2].$key$ === newStartVnode.$key$) {\n idxInOld = i2;\n break;\n }\n }\n }\n if (idxInOld >= 0) {\n elmToMove = oldCh[idxInOld];\n if (elmToMove.$tag$ !== newStartVnode.$tag$) {\n node = createElm(oldCh && oldCh[newStartIdx], newVNode2, idxInOld);\n } else {\n patch(elmToMove, newStartVnode, isInitialRender);\n oldCh[idxInOld] = void 0;\n node = elmToMove.$elm$;\n }\n newStartVnode = newCh[++newStartIdx];\n } else {\n node = createElm(oldCh && oldCh[newStartIdx], newVNode2, newStartIdx);\n newStartVnode = newCh[++newStartIdx];\n }\n if (node) {\n {\n insertBefore(parentReferenceNode(oldStartVnode.$elm$), node, referenceNode(oldStartVnode.$elm$));\n }\n }\n }\n }\n if (oldStartIdx > oldEndIdx) {\n addVnodes(\n parentElm,\n newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].$elm$,\n newVNode2,\n newCh,\n newStartIdx,\n newEndIdx\n );\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(oldCh, oldStartIdx, oldEndIdx);\n }\n};\nvar isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {\n if (leftVNode.$tag$ === rightVNode.$tag$) {\n if (leftVNode.$tag$ === \"slot\") {\n if (\n // The component gets hydrated and no VDOM has been initialized.\n // Here the comparison can't happen as $name$ property is not set for `leftNode`.\n \"$nodeId$\" in leftVNode && isInitialRender && // `leftNode` is not from type HTMLComment which would cause many\n // hydration comments to be removed\n leftVNode.$elm$.nodeType !== 8\n ) {\n return false;\n }\n return leftVNode.$name$ === rightVNode.$name$;\n }\n if (!isInitialRender) {\n return leftVNode.$key$ === rightVNode.$key$;\n }\n return true;\n }\n return false;\n};\nvar referenceNode = (node) => {\n return node && node[\"s-ol\"] || node;\n};\nvar parentReferenceNode = (node) => (node[\"s-ol\"] ? node[\"s-ol\"] : node).parentNode;\nvar patch = (oldVNode, newVNode2, isInitialRender = false) => {\n const elm = newVNode2.$elm$ = oldVNode.$elm$;\n const oldChildren = oldVNode.$children$;\n const newChildren = newVNode2.$children$;\n const tag = newVNode2.$tag$;\n const text = newVNode2.$text$;\n let defaultHolder;\n if (text === null) {\n {\n isSvgMode = tag === \"svg\" ? true : tag === \"foreignObject\" ? false : isSvgMode;\n }\n {\n if (tag === \"slot\" && !useNativeShadowDom) ; else {\n updateElement(oldVNode, newVNode2, isSvgMode);\n }\n }\n if (oldChildren !== null && newChildren !== null) {\n updateChildren(elm, oldChildren, newVNode2, newChildren, isInitialRender);\n } else if (newChildren !== null) {\n if (oldVNode.$text$ !== null) {\n elm.textContent = \"\";\n }\n addVnodes(elm, null, newVNode2, newChildren, 0, newChildren.length - 1);\n } else if (\n // don't do this on initial render as it can cause non-hydrated content to be removed\n !isInitialRender && BUILD.updatable && oldChildren !== null\n ) {\n removeVnodes(oldChildren, 0, oldChildren.length - 1);\n }\n if (isSvgMode && tag === \"svg\") {\n isSvgMode = false;\n }\n } else if ((defaultHolder = elm[\"s-cr\"])) {\n defaultHolder.parentNode.textContent = text;\n } else if (oldVNode.$text$ !== text) {\n elm.data = text;\n }\n};\nvar updateFallbackSlotVisibility = (elm) => {\n const childNodes = elm.childNodes;\n for (const childNode of childNodes) {\n if (childNode.nodeType === 1 /* ElementNode */) {\n if (childNode[\"s-sr\"]) {\n const slotName = childNode[\"s-sn\"];\n childNode.hidden = false;\n for (const siblingNode of childNodes) {\n if (siblingNode !== childNode) {\n if (siblingNode[\"s-hn\"] !== childNode[\"s-hn\"] || slotName !== \"\") {\n if (siblingNode.nodeType === 1 /* ElementNode */ && (slotName === siblingNode.getAttribute(\"slot\") || slotName === siblingNode[\"s-sn\"]) || siblingNode.nodeType === 3 /* TextNode */ && slotName === siblingNode[\"s-sn\"]) {\n childNode.hidden = true;\n break;\n }\n } else {\n if (siblingNode.nodeType === 1 /* ElementNode */ || siblingNode.nodeType === 3 /* TextNode */ && siblingNode.textContent.trim() !== \"\") {\n childNode.hidden = true;\n break;\n }\n }\n }\n }\n }\n updateFallbackSlotVisibility(childNode);\n }\n }\n};\nvar relocateNodes = [];\nvar markSlotContentForRelocation = (elm) => {\n let node;\n let hostContentNodes;\n let j;\n for (const childNode of elm.childNodes) {\n if (childNode[\"s-sr\"] && (node = childNode[\"s-cr\"]) && node.parentNode) {\n hostContentNodes = node.parentNode.childNodes;\n const slotName = childNode[\"s-sn\"];\n for (j = hostContentNodes.length - 1; j >= 0; j--) {\n node = hostContentNodes[j];\n if (!node[\"s-cn\"] && !node[\"s-nr\"] && node[\"s-hn\"] !== childNode[\"s-hn\"] && (!BUILD.experimentalSlotFixes )) {\n if (isNodeLocatedInSlot(node, slotName)) {\n let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);\n checkSlotFallbackVisibility = true;\n node[\"s-sn\"] = node[\"s-sn\"] || slotName;\n if (relocateNodeData) {\n relocateNodeData.$nodeToRelocate$[\"s-sh\"] = childNode[\"s-hn\"];\n relocateNodeData.$slotRefNode$ = childNode;\n } else {\n node[\"s-sh\"] = childNode[\"s-hn\"];\n relocateNodes.push({\n $slotRefNode$: childNode,\n $nodeToRelocate$: node\n });\n }\n if (node[\"s-sr\"]) {\n relocateNodes.map((relocateNode) => {\n if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node[\"s-sn\"])) {\n relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);\n if (relocateNodeData && !relocateNode.$slotRefNode$) {\n relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;\n }\n }\n });\n }\n } else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {\n relocateNodes.push({\n $nodeToRelocate$: node\n });\n }\n }\n }\n }\n if (childNode.nodeType === 1 /* ElementNode */) {\n markSlotContentForRelocation(childNode);\n }\n }\n};\nvar isNodeLocatedInSlot = (nodeToRelocate, slotName) => {\n if (nodeToRelocate.nodeType === 1 /* ElementNode */) {\n if (nodeToRelocate.getAttribute(\"slot\") === null && slotName === \"\") {\n return true;\n }\n if (nodeToRelocate.getAttribute(\"slot\") === slotName) {\n return true;\n }\n return false;\n }\n if (nodeToRelocate[\"s-sn\"] === slotName) {\n return true;\n }\n return slotName === \"\";\n};\nvar insertBefore = (parent, newNode, reference) => {\n const inserted = parent == null ? void 0 : parent.insertBefore(newNode, reference);\n return inserted;\n};\nvar renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {\n var _a, _b, _c, _d;\n const hostElm = hostRef.$hostElement$;\n const oldVNode = hostRef.$vnode$ || newVNode(null, null);\n const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);\n hostTagName = hostElm.tagName;\n if (isInitialLoad && rootVnode.$attrs$) {\n for (const key of Object.keys(rootVnode.$attrs$)) {\n if (hostElm.hasAttribute(key) && ![\"key\", \"ref\", \"style\", \"class\"].includes(key)) {\n rootVnode.$attrs$[key] = hostElm[key];\n }\n }\n }\n rootVnode.$tag$ = null;\n rootVnode.$flags$ |= 4 /* isHost */;\n hostRef.$vnode$ = rootVnode;\n rootVnode.$elm$ = oldVNode.$elm$ = hostElm;\n useNativeShadowDom = supportsShadow ;\n {\n contentRef = hostElm[\"s-cr\"];\n checkSlotFallbackVisibility = false;\n }\n patch(oldVNode, rootVnode, isInitialLoad);\n {\n plt.$flags$ |= 1 /* isTmpDisconnected */;\n if (checkSlotRelocate) {\n markSlotContentForRelocation(rootVnode.$elm$);\n for (const relocateData of relocateNodes) {\n const nodeToRelocate = relocateData.$nodeToRelocate$;\n if (!nodeToRelocate[\"s-ol\"]) {\n const orgLocationNode = doc.createTextNode(\"\");\n orgLocationNode[\"s-nr\"] = nodeToRelocate;\n insertBefore(nodeToRelocate.parentNode, nodeToRelocate[\"s-ol\"] = orgLocationNode, nodeToRelocate);\n }\n }\n for (const relocateData of relocateNodes) {\n const nodeToRelocate = relocateData.$nodeToRelocate$;\n const slotRefNode = relocateData.$slotRefNode$;\n if (slotRefNode) {\n const parentNodeRef = slotRefNode.parentNode;\n let insertBeforeNode = slotRefNode.nextSibling;\n {\n let orgLocationNode = (_a = nodeToRelocate[\"s-ol\"]) == null ? void 0 : _a.previousSibling;\n while (orgLocationNode) {\n let refNode = (_b = orgLocationNode[\"s-nr\"]) != null ? _b : null;\n if (refNode && refNode[\"s-sn\"] === nodeToRelocate[\"s-sn\"] && parentNodeRef === refNode.parentNode) {\n refNode = refNode.nextSibling;\n while (refNode === nodeToRelocate || (refNode == null ? void 0 : refNode[\"s-sr\"])) {\n refNode = refNode == null ? void 0 : refNode.nextSibling;\n }\n if (!refNode || !refNode[\"s-nr\"]) {\n insertBeforeNode = refNode;\n break;\n }\n }\n orgLocationNode = orgLocationNode.previousSibling;\n }\n }\n if (!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode || nodeToRelocate.nextSibling !== insertBeforeNode) {\n if (nodeToRelocate !== insertBeforeNode) {\n if (!nodeToRelocate[\"s-hn\"] && nodeToRelocate[\"s-ol\"]) {\n nodeToRelocate[\"s-hn\"] = nodeToRelocate[\"s-ol\"].parentNode.nodeName;\n }\n insertBefore(parentNodeRef, nodeToRelocate, insertBeforeNode);\n if (nodeToRelocate.nodeType === 1 /* ElementNode */) {\n nodeToRelocate.hidden = (_c = nodeToRelocate[\"s-ih\"]) != null ? _c : false;\n }\n }\n }\n nodeToRelocate && typeof slotRefNode[\"s-rf\"] === \"function\" && slotRefNode[\"s-rf\"](nodeToRelocate);\n } else {\n if (nodeToRelocate.nodeType === 1 /* ElementNode */) {\n if (isInitialLoad) {\n nodeToRelocate[\"s-ih\"] = (_d = nodeToRelocate.hidden) != null ? _d : false;\n }\n nodeToRelocate.hidden = true;\n }\n }\n }\n }\n if (checkSlotFallbackVisibility) {\n updateFallbackSlotVisibility(rootVnode.$elm$);\n }\n plt.$flags$ &= ~1 /* isTmpDisconnected */;\n relocateNodes.length = 0;\n }\n contentRef = void 0;\n};\n\n// src/runtime/update-component.ts\nvar attachToAncestor = (hostRef, ancestorComponent) => {\n if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent[\"s-p\"]) {\n ancestorComponent[\"s-p\"].push(new Promise((r) => hostRef.$onRenderResolve$ = r));\n }\n};\nvar scheduleUpdate = (hostRef, isInitialLoad) => {\n {\n hostRef.$flags$ |= 16 /* isQueuedForUpdate */;\n }\n if (hostRef.$flags$ & 4 /* isWaitingForChildren */) {\n hostRef.$flags$ |= 512 /* needsRerender */;\n return;\n }\n attachToAncestor(hostRef, hostRef.$ancestorComponent$);\n const dispatch = () => dispatchHooks(hostRef, isInitialLoad);\n return writeTask(dispatch) ;\n};\nvar dispatchHooks = (hostRef, isInitialLoad) => {\n const elm = hostRef.$hostElement$;\n const endSchedule = createTime(\"scheduleUpdate\", hostRef.$cmpMeta$.$tagName$);\n const instance = elm;\n if (!instance) {\n throw new Error(\n `Can't render component <${elm.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \\`externalRuntime: true\\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`\n );\n }\n let maybePromise;\n endSchedule();\n return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));\n};\nvar enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.then(fn).catch((err2) => {\n console.error(err2);\n fn();\n}) : fn();\nvar isPromisey = (maybePromise) => maybePromise instanceof Promise || maybePromise && maybePromise.then && typeof maybePromise.then === \"function\";\nvar updateComponent = async (hostRef, instance, isInitialLoad) => {\n var _a;\n const elm = hostRef.$hostElement$;\n const endUpdate = createTime(\"update\", hostRef.$cmpMeta$.$tagName$);\n const rc = elm[\"s-rc\"];\n if (isInitialLoad) {\n attachStyles(hostRef);\n }\n const endRender = createTime(\"render\", hostRef.$cmpMeta$.$tagName$);\n {\n callRender(hostRef, instance, elm, isInitialLoad);\n }\n if (rc) {\n rc.map((cb) => cb());\n elm[\"s-rc\"] = void 0;\n }\n endRender();\n endUpdate();\n {\n const childrenPromises = (_a = elm[\"s-p\"]) != null ? _a : [];\n const postUpdate = () => postUpdateComponent(hostRef);\n if (childrenPromises.length === 0) {\n postUpdate();\n } else {\n Promise.all(childrenPromises).then(postUpdate);\n hostRef.$flags$ |= 4 /* isWaitingForChildren */;\n childrenPromises.length = 0;\n }\n }\n};\nvar callRender = (hostRef, instance, elm, isInitialLoad) => {\n try {\n instance = instance.render() ;\n {\n hostRef.$flags$ &= ~16 /* isQueuedForUpdate */;\n }\n {\n hostRef.$flags$ |= 2 /* hasRendered */;\n }\n {\n {\n {\n renderVdom(hostRef, instance, isInitialLoad);\n }\n }\n }\n } catch (e) {\n consoleError(e, hostRef.$hostElement$);\n }\n return null;\n};\nvar postUpdateComponent = (hostRef) => {\n const tagName = hostRef.$cmpMeta$.$tagName$;\n const elm = hostRef.$hostElement$;\n const endPostUpdate = createTime(\"postUpdate\", tagName);\n const instance = elm;\n const ancestorComponent = hostRef.$ancestorComponent$;\n if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {\n hostRef.$flags$ |= 64 /* hasLoadedComponent */;\n {\n addHydratedFlag(elm);\n }\n {\n safeCall(instance, \"componentDidLoad\");\n }\n endPostUpdate();\n {\n hostRef.$onReadyResolve$(elm);\n if (!ancestorComponent) {\n appDidLoad();\n }\n }\n } else {\n endPostUpdate();\n }\n {\n if (hostRef.$onRenderResolve$) {\n hostRef.$onRenderResolve$();\n hostRef.$onRenderResolve$ = void 0;\n }\n if (hostRef.$flags$ & 512 /* needsRerender */) {\n nextTick(() => scheduleUpdate(hostRef, false));\n }\n hostRef.$flags$ &= ~(4 /* isWaitingForChildren */ | 512 /* needsRerender */);\n }\n};\nvar appDidLoad = (who) => {\n {\n addHydratedFlag(doc.documentElement);\n }\n nextTick(() => emitEvent(win, \"appload\", { detail: { namespace: NAMESPACE } }));\n};\nvar safeCall = (instance, method, arg) => {\n if (instance && instance[method]) {\n try {\n return instance[method](arg);\n } catch (e) {\n consoleError(e);\n }\n }\n return void 0;\n};\nvar addHydratedFlag = (elm) => {\n var _a;\n return elm.classList.add((_a = BUILD.hydratedSelectorName) != null ? _a : \"hydrated\") ;\n};\n\n// src/runtime/set-value.ts\nvar getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName);\nvar setValue = (ref, propName, newVal, cmpMeta) => {\n const hostRef = getHostRef(ref);\n const elm = ref;\n const oldVal = hostRef.$instanceValues$.get(propName);\n const flags = hostRef.$flags$;\n const instance = elm;\n newVal = parsePropertyValue(newVal, cmpMeta.$members$[propName][0]);\n const areBothNaN = Number.isNaN(oldVal) && Number.isNaN(newVal);\n const didValueChange = newVal !== oldVal && !areBothNaN;\n if (didValueChange) {\n hostRef.$instanceValues$.set(propName, newVal);\n {\n if (cmpMeta.$watchers$ && flags & 128 /* isWatchReady */) {\n const watchMethods = cmpMeta.$watchers$[propName];\n if (watchMethods) {\n watchMethods.map((watchMethodName) => {\n try {\n instance[watchMethodName](newVal, oldVal, propName);\n } catch (e) {\n consoleError(e, elm);\n }\n });\n }\n }\n if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {\n scheduleUpdate(hostRef, false);\n }\n }\n }\n};\n\n// src/runtime/proxy-component.ts\nvar proxyComponent = (Cstr, cmpMeta, flags) => {\n var _a, _b;\n const prototype = Cstr.prototype;\n if (cmpMeta.$members$ || (cmpMeta.$watchers$ || Cstr.watchers)) {\n if (Cstr.watchers && !cmpMeta.$watchers$) {\n cmpMeta.$watchers$ = Cstr.watchers;\n }\n const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});\n members.map(([memberName, [memberFlags]]) => {\n if ((memberFlags & 31 /* Prop */ || memberFlags & 32 /* State */)) {\n Object.defineProperty(prototype, memberName, {\n get() {\n return getValue(this, memberName);\n },\n set(newValue) {\n setValue(this, memberName, newValue, cmpMeta);\n },\n configurable: true,\n enumerable: true\n });\n }\n });\n {\n const attrNameToPropName = /* @__PURE__ */ new Map();\n prototype.attributeChangedCallback = function(attrName, oldValue, newValue) {\n plt.jmp(() => {\n var _a2;\n const propName = attrNameToPropName.get(attrName);\n if (this.hasOwnProperty(propName)) {\n newValue = this[propName];\n delete this[propName];\n } else if (prototype.hasOwnProperty(propName) && typeof this[propName] === \"number\" && // cast type to number to avoid TS compiler issues\n this[propName] == newValue) {\n return;\n } else if (propName == null) {\n const hostRef = getHostRef(this);\n const flags2 = hostRef == null ? void 0 : hostRef.$flags$;\n if (flags2 && !(flags2 & 8 /* isConstructingInstance */) && flags2 & 128 /* isWatchReady */ && newValue !== oldValue) {\n const elm = this;\n const instance = elm;\n const entry = (_a2 = cmpMeta.$watchers$) == null ? void 0 : _a2[attrName];\n entry == null ? void 0 : entry.forEach((callbackName) => {\n if (instance[callbackName] != null) {\n instance[callbackName].call(instance, newValue, oldValue, attrName);\n }\n });\n }\n return;\n }\n this[propName] = newValue === null && typeof this[propName] === \"boolean\" ? false : newValue;\n });\n };\n Cstr.observedAttributes = Array.from(\n /* @__PURE__ */ new Set([\n ...Object.keys((_b = cmpMeta.$watchers$) != null ? _b : {}),\n ...members.filter(([_, m]) => m[0] & 15 /* HasAttribute */).map(([propName, m]) => {\n const attrName = m[1] || propName;\n attrNameToPropName.set(attrName, propName);\n return attrName;\n })\n ])\n );\n }\n }\n return Cstr;\n};\n\n// src/runtime/initialize-component.ts\nvar initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {\n let Cstr;\n if ((hostRef.$flags$ & 32 /* hasInitializedComponent */) === 0) {\n hostRef.$flags$ |= 32 /* hasInitializedComponent */;\n {\n Cstr = elm.constructor;\n const cmpTag = elm.localName;\n customElements.whenDefined(cmpTag).then(() => hostRef.$flags$ |= 128 /* isWatchReady */);\n }\n if (Cstr && Cstr.style) {\n let style;\n if (typeof Cstr.style === \"string\") {\n style = Cstr.style;\n }\n const scopeId2 = getScopeId(cmpMeta);\n if (!styles.has(scopeId2)) {\n const endRegisterStyles = createTime(\"registerStyles\", cmpMeta.$tagName$);\n registerStyle(scopeId2, style, !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */));\n endRegisterStyles();\n }\n }\n }\n const ancestorComponent = hostRef.$ancestorComponent$;\n const schedule = () => scheduleUpdate(hostRef, true);\n if (ancestorComponent && ancestorComponent[\"s-rc\"]) {\n ancestorComponent[\"s-rc\"].push(schedule);\n } else {\n schedule();\n }\n};\nvar fireConnectedCallback = (instance) => {\n};\n\n// src/runtime/connected-callback.ts\nvar connectedCallback = (elm) => {\n if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {\n const hostRef = getHostRef(elm);\n const cmpMeta = hostRef.$cmpMeta$;\n const endConnected = createTime(\"connectedCallback\", cmpMeta.$tagName$);\n if (!(hostRef.$flags$ & 1 /* hasConnected */)) {\n hostRef.$flags$ |= 1 /* hasConnected */;\n {\n if (// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field\n cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */)) {\n setContentReference(elm);\n }\n }\n {\n let ancestorComponent = elm;\n while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {\n if (ancestorComponent[\"s-p\"]) {\n attachToAncestor(hostRef, hostRef.$ancestorComponent$ = ancestorComponent);\n break;\n }\n }\n }\n if (cmpMeta.$members$) {\n Object.entries(cmpMeta.$members$).map(([memberName, [memberFlags]]) => {\n if (memberFlags & 31 /* Prop */ && elm.hasOwnProperty(memberName)) {\n const value = elm[memberName];\n delete elm[memberName];\n elm[memberName] = value;\n }\n });\n }\n {\n initializeComponent(elm, hostRef, cmpMeta);\n }\n } else {\n if (hostRef == null ? void 0 : hostRef.$lazyInstance$) ; else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {\n hostRef.$onReadyPromise$.then(() => fireConnectedCallback());\n }\n }\n endConnected();\n }\n};\nvar setContentReference = (elm) => {\n const contentRefElm = elm[\"s-cr\"] = doc.createComment(\n \"\"\n );\n contentRefElm[\"s-cn\"] = true;\n insertBefore(elm, contentRefElm, elm.firstChild);\n};\nvar disconnectedCallback = async (elm) => {\n if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {\n getHostRef(elm);\n }\n};\nvar proxyCustomElement = (Cstr, compactMeta) => {\n const cmpMeta = {\n $flags$: compactMeta[0],\n $tagName$: compactMeta[1]\n };\n {\n cmpMeta.$members$ = compactMeta[2];\n }\n {\n cmpMeta.$watchers$ = Cstr.$watchers$;\n }\n const originalConnectedCallback = Cstr.prototype.connectedCallback;\n const originalDisconnectedCallback = Cstr.prototype.disconnectedCallback;\n let hasHostListenerAttached = false;\n Object.assign(Cstr.prototype, {\n __registerHost() {\n registerHost(this, cmpMeta);\n },\n connectedCallback() {\n if (!hasHostListenerAttached) {\n getHostRef(this);\n hasHostListenerAttached = true;\n }\n connectedCallback(this);\n if (originalConnectedCallback) {\n originalConnectedCallback.call(this);\n }\n },\n disconnectedCallback() {\n disconnectedCallback(this);\n if (originalDisconnectedCallback) {\n originalDisconnectedCallback.call(this);\n }\n },\n __attachShadow() {\n {\n this.shadowRoot = this;\n }\n }\n });\n Cstr.is = cmpMeta.$tagName$;\n return proxyComponent(Cstr, cmpMeta);\n};\n\n// src/runtime/fragment.ts\nvar Fragment = (_, children) => children;\n\n// src/runtime/nonce.ts\nvar setNonce = (nonce) => plt.$nonce$ = nonce;\n\n// src/runtime/platform-options.ts\nvar setPlatformOptions = (opts) => Object.assign(plt, opts);\n\nexport { Fragment as F, H, setNonce as a, setPlatformOptions as b, createEvent as c, getAssetPath as g, h, proxyCustomElement as p, setAssetPath as s };\n\n//# sourceMappingURL=p-e4846fa2.js.map","var zustand = {};\n\nvar vanilla$1 = {};\n\nconst createStoreImpl = (createState) => {\n let state;\n const listeners = /* @__PURE__ */ new Set();\n const setState = (partial, replace) => {\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n if (!Object.is(nextState, state)) {\n const previousState = state;\n state = (replace != null ? replace : typeof nextState !== \"object\" || nextState === null) ? nextState : Object.assign({}, state, nextState);\n listeners.forEach((listener) => listener(state, previousState));\n }\n };\n const getState = () => state;\n const getInitialState = () => initialState;\n const subscribe = (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n };\n const api = { setState, getState, getInitialState, subscribe };\n const initialState = state = createState(setState, getState, api);\n return api;\n};\nconst createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;\n\nvanilla$1.createStore = createStore;\n\nvar react$1 = {};\n\nvar react = {exports: {}};\n\nvar react_production_min = {};\n\n/**\n * @license React\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nvar l$1=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p$1=Symbol.for(\"react.fragment\"),q$1=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v$1=Symbol.for(\"react.forward_ref\"),w$1=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y$1=Symbol.for(\"react.lazy\"),z$1=Symbol.iterator;function A$1(a){if(null===a||\"object\"!==typeof a)return null;a=z$1&&a[z$1]||a[\"@@iterator\"];return \"function\"===typeof a?a:null}\nvar B$1={isMounted:function(){return !1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C$1=Object.assign,D$1={};function E$1(a,b,e){this.props=a;this.context=b;this.refs=D$1;this.updater=e||B$1;}E$1.prototype.isReactComponent={};\nE$1.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\");};E$1.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\");};function F$1(){}F$1.prototype=E$1.prototype;function G$1(a,b,e){this.props=a;this.context=b;this.refs=D$1;this.updater=e||B$1;}var H$1=G$1.prototype=new F$1;\nH$1.constructor=G$1;C$1(H$1,E$1.prototype);H$1.isPureReactComponent=!0;var I$1=Array.isArray,J$1=Object.prototype.hasOwnProperty,K$1={current:null},L$1={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M$1(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J$1.call(b,d)&&!L$1.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];c.children=f;}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===c[d]&&(c[d]=g[d]);return {$$typeof:l$1,type:a,key:k,ref:h,props:c,_owner:K$1.current}}\nfunction N$1(a,b){return {$$typeof:l$1,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O$1(a){return \"object\"===typeof a&&null!==a&&a.$$typeof===l$1}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return \"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var P$1=/\\/+/g;function Q$1(a,b){return \"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction R(a,b,e,d,c){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case l$1:case n:h=!0;}}if(h)return h=a,c=c(h),a=\"\"===d?\".\"+Q$1(h,0):d,I$1(c)?(e=\"\",null!=a&&(e=a.replace(P$1,\"$&/\")+\"/\"),R(c,b,e,\"\",function(a){return a})):null!=c&&(O$1(c)&&(c=N$1(c,e+(!c.key||h&&h.key===c.key?\"\":(\"\"+c.key).replace(P$1,\"$&/\")+\"/\")+a)),b.push(c)),1;h=0;d=\"\"===d?\".\":d+\":\";if(I$1(a))for(var g=0;g<a.length;g++){k=\na[g];var f=d+Q$1(k,g);h+=R(k,b,e,f,c);}else if(f=A$1(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=d+Q$1(k,g++),h+=R(k,b,e,f,c);else if(\"object\"===k)throw b=String(a),Error(\"Objects are not valid as a React child (found: \"+(\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b)+\"). If you meant to render a collection of children, use an array instead.\");return h}\nfunction S$1(a,b,e){if(null==a)return a;var d=[],c=0;R(a,d,\"\",\"\",function(a){return b.call(e,a,c++)});return d}function T$1(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b;},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b;});-1===a._status&&(a._status=0,a._result=b);}if(1===a._status)return a._result.default;throw a._result;}\nvar U={current:null},V$1={transition:null},W$1={ReactCurrentDispatcher:U,ReactCurrentBatchConfig:V$1,ReactCurrentOwner:K$1};function X$1(){throw Error(\"act(...) is not supported in production builds of React.\");}\nreact_production_min.Children={map:S$1,forEach:function(a,b,e){S$1(a,function(){b.apply(this,arguments);},e);},count:function(a){var b=0;S$1(a,function(){b++;});return b},toArray:function(a){return S$1(a,function(a){return a})||[]},only:function(a){if(!O$1(a))throw Error(\"React.Children.only expected to receive a single React element child.\");return a}};react_production_min.Component=E$1;react_production_min.Fragment=p$1;react_production_min.Profiler=r;react_production_min.PureComponent=G$1;react_production_min.StrictMode=q$1;react_production_min.Suspense=w$1;\nreact_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W$1;react_production_min.act=X$1;\nreact_production_min.cloneElement=function(a,b,e){if(null===a||void 0===a)throw Error(\"React.cloneElement(...): The argument must be a React element, but you passed \"+a+\".\");var d=C$1({},a.props),c=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=K$1.current);void 0!==b.key&&(c=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)J$1.call(b,f)&&!L$1.hasOwnProperty(f)&&(d[f]=void 0===b[f]&&void 0!==g?g[f]:b[f]);}var f=arguments.length-2;if(1===f)d.children=e;else if(1<f){g=Array(f);\nfor(var m=0;m<f;m++)g[m]=arguments[m+2];d.children=g;}return {$$typeof:l$1,type:a.type,key:c,ref:k,props:d,_owner:h}};react_production_min.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};react_production_min.createElement=M$1;react_production_min.createFactory=function(a){var b=M$1.bind(null,a);b.type=a;return b};react_production_min.createRef=function(){return {current:null}};\nreact_production_min.forwardRef=function(a){return {$$typeof:v$1,render:a}};react_production_min.isValidElement=O$1;react_production_min.lazy=function(a){return {$$typeof:y$1,_payload:{_status:-1,_result:a},_init:T$1}};react_production_min.memo=function(a,b){return {$$typeof:x,type:a,compare:void 0===b?null:b}};react_production_min.startTransition=function(a){var b=V$1.transition;V$1.transition={};try{a();}finally{V$1.transition=b;}};react_production_min.unstable_act=X$1;react_production_min.useCallback=function(a,b){return U.current.useCallback(a,b)};react_production_min.useContext=function(a){return U.current.useContext(a)};\nreact_production_min.useDebugValue=function(){};react_production_min.useDeferredValue=function(a){return U.current.useDeferredValue(a)};react_production_min.useEffect=function(a,b){return U.current.useEffect(a,b)};react_production_min.useId=function(){return U.current.useId()};react_production_min.useImperativeHandle=function(a,b,e){return U.current.useImperativeHandle(a,b,e)};react_production_min.useInsertionEffect=function(a,b){return U.current.useInsertionEffect(a,b)};react_production_min.useLayoutEffect=function(a,b){return U.current.useLayoutEffect(a,b)};\nreact_production_min.useMemo=function(a,b){return U.current.useMemo(a,b)};react_production_min.useReducer=function(a,b,e){return U.current.useReducer(a,b,e)};react_production_min.useRef=function(a){return U.current.useRef(a)};react_production_min.useState=function(a){return U.current.useState(a)};react_production_min.useSyncExternalStore=function(a,b,e){return U.current.useSyncExternalStore(a,b,e)};react_production_min.useTransition=function(){return U.current.useTransition()};react_production_min.version=\"18.3.1\";\n\n{\n react.exports = react_production_min;\n}\n\nvar React = react.exports;\nvar vanilla = vanilla$1;\n\nconst identity = (arg) => arg;\nfunction useStore(api, selector = identity) {\n const slice = React.useSyncExternalStore(\n api.subscribe,\n () => selector(api.getState()),\n () => selector(api.getInitialState())\n );\n React.useDebugValue(slice);\n return slice;\n}\nconst createImpl = (createState) => {\n const api = vanilla.createStore(createState);\n const useBoundStore = (selector) => useStore(api, selector);\n Object.assign(useBoundStore, api);\n return useBoundStore;\n};\nconst create = (createState) => createState ? createImpl(createState) : createImpl;\n\nreact$1.create = create;\nreact$1.useStore = useStore;\n\n(function (exports) {\n\nvar vanilla = vanilla$1;\nvar react = react$1;\n\n\n\nObject.keys(vanilla).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return vanilla[k]; }\n\t});\n});\nObject.keys(react).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return react[k]; }\n\t});\n});\n}(zustand));\n\nvar D = Object.defineProperty;\nvar B = (n, t, r) => t in n ? D(n, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : n[t] = r;\nvar p = (n, t, r) => B(n, typeof t != \"symbol\" ? t + \"\" : t, r);\nconst L = \"useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict\";\nlet N = (n = 21) => {\n let t = \"\", r = crypto.getRandomValues(new Uint8Array(n |= 0));\n for (; n--; )\n t += L[r[n] & 63];\n return t;\n};\nfunction w(n, t, r, o) {\n return new (r || (r = Promise))(function(s, i) {\n function e(u) {\n try {\n d(o.next(u));\n } catch (a) {\n i(a);\n }\n }\n function c(u) {\n try {\n d(o.throw(u));\n } catch (a) {\n i(a);\n }\n }\n function d(u) {\n var a;\n u.done ? s(u.value) : (a = u.value, a instanceof r ? a : new r(function(g) {\n g(a);\n })).then(e, c);\n }\n d((o = o.apply(n, [])).next());\n });\n}\nfunction y(n, t) {\n var r, o, s, i, e = { label: 0, sent: function() {\n if (1 & s[0]) throw s[1];\n return s[1];\n }, trys: [], ops: [] };\n return i = { next: c(0), throw: c(1), return: c(2) }, typeof Symbol == \"function\" && (i[Symbol.iterator] = function() {\n return this;\n }), i;\n function c(d) {\n return function(u) {\n return function(a) {\n if (r) throw new TypeError(\"Generator is already executing.\");\n for (; i && (i = 0, a[0] && (e = 0)), e; ) try {\n if (r = 1, o && (s = 2 & a[0] ? o.return : a[0] ? o.throw || ((s = o.return) && s.call(o), 0) : o.next) && !(s = s.call(o, a[1])).done) return s;\n switch (o = 0, s && (a = [2 & a[0], s.value]), a[0]) {\n case 0:\n case 1:\n s = a;\n break;\n case 4:\n return e.label++, { value: a[1], done: !1 };\n case 5:\n e.label++, o = a[1], a = [0];\n continue;\n case 7:\n a = e.ops.pop(), e.trys.pop();\n continue;\n default:\n if (s = e.trys, !((s = s.length > 0 && s[s.length - 1]) || a[0] !== 6 && a[0] !== 2)) {\n e = 0;\n continue;\n }\n if (a[0] === 3 && (!s || a[1] > s[0] && a[1] < s[3])) {\n e.label = a[1];\n break;\n }\n if (a[0] === 6 && e.label < s[1]) {\n e.label = s[1], s = a;\n break;\n }\n if (s && e.label < s[2]) {\n e.label = s[2], e.ops.push(a);\n break;\n }\n s[2] && e.ops.pop(), e.trys.pop();\n continue;\n }\n a = t.call(n, e);\n } catch (g) {\n a = [6, g], o = 0;\n } finally {\n r = s = 0;\n }\n if (5 & a[0]) throw a[1];\n return { value: a[0] ? a[1] : void 0, done: !0 };\n }([d, u]);\n };\n }\n}\nvar b = { exclude: [] }, T = {}, j = { timeout: \"true\" }, v = function(n, t) {\n typeof window < \"u\" && (T[n] = t);\n}, q = function() {\n return Object.fromEntries(Object.entries(T).filter(function(n) {\n var t, r = n[0];\n return !(!((t = b == null ? void 0 : b.exclude) === null || t === void 0) && t.includes(r));\n }).map(function(n) {\n return [n[0], (0, n[1])()];\n }));\n};\nfunction M(n) {\n return n ^= n >>> 16, n = Math.imul(n, 2246822507), n ^= n >>> 13, n = Math.imul(n, 3266489909), (n ^= n >>> 16) >>> 0;\n}\nvar f = new Uint32Array([597399067, 2869860233, 951274213, 2716044179]);\nfunction m(n, t) {\n return n << t | n >>> 32 - t;\n}\nfunction I(n, t) {\n var r;\n if (t === void 0 && (t = 0), t = t ? 0 | t : 0, typeof n == \"string\" && (r = n, n = new TextEncoder().encode(r).buffer), !(n instanceof ArrayBuffer)) throw new TypeError(\"Expected key to be ArrayBuffer or string\");\n var o = new Uint32Array([t, t, t, t]);\n ((function(i, e) {\n for (var c = i.byteLength / 16 | 0, d = new Uint32Array(i, 0, 4 * c), u = 0; u < c; u++) {\n var a = d.subarray(4 * u, 4 * (u + 1));\n a[0] = Math.imul(a[0], f[0]), a[0] = m(a[0], 15), a[0] = Math.imul(a[0], f[1]), e[0] = e[0] ^ a[0], e[0] = m(e[0], 19), e[0] = e[0] + e[1], e[0] = Math.imul(e[0], 5) + 1444728091, a[1] = Math.imul(a[1], f[1]), a[1] = m(a[1], 16), a[1] = Math.imul(a[1], f[2]), e[1] = e[1] ^ a[1], e[1] = m(e[1], 17), e[1] = e[1] + e[2], e[1] = Math.imul(e[1], 5) + 197830471, a[2] = Math.imul(a[2], f[2]), a[2] = m(a[2], 17), a[2] = Math.imul(a[2], f[3]), e[2] = e[2] ^ a[2], e[2] = m(e[2], 15), e[2] = e[2] + e[3], e[2] = Math.imul(e[2], 5) + 2530024501, a[3] = Math.imul(a[3], f[3]), a[3] = m(a[3], 18), a[3] = Math.imul(a[3], f[0]), e[3] = e[3] ^ a[3], e[3] = m(e[3], 13), e[3] = e[3] + e[0], e[3] = Math.imul(e[3], 5) + 850148119;\n }\n }))(n, o), function(i, e) {\n var c = i.byteLength / 16 | 0, d = i.byteLength % 16, u = new Uint32Array(4), a = new Uint8Array(i, 16 * c, d);\n switch (d) {\n case 15:\n u[3] = u[3] ^ a[14] << 16;\n case 14:\n u[3] = u[3] ^ a[13] << 8;\n case 13:\n u[3] = u[3] ^ a[12] << 0, u[3] = Math.imul(u[3], f[3]), u[3] = m(u[3], 18), u[3] = Math.imul(u[3], f[0]), e[3] = e[3] ^ u[3];\n case 12:\n u[2] = u[2] ^ a[11] << 24;\n case 11:\n u[2] = u[2] ^ a[10] << 16;\n case 10:\n u[2] = u[2] ^ a[9] << 8;\n case 9:\n u[2] = u[2] ^ a[8] << 0, u[2] = Math.imul(u[2], f[2]), u[2] = m(u[2], 17), u[2] = Math.imul(u[2], f[3]), e[2] = e[2] ^ u[2];\n case 8:\n u[1] = u[1] ^ a[7] << 24;\n case 7:\n u[1] = u[1] ^ a[6] << 16;\n case 6:\n u[1] = u[1] ^ a[5] << 8;\n case 5:\n u[1] = u[1] ^ a[4] << 0, u[1] = Math.imul(u[1], f[1]), u[1] = m(u[1], 16), u[1] = Math.imul(u[1], f[2]), e[1] = e[1] ^ u[1];\n case 4:\n u[0] = u[0] ^ a[3] << 24;\n case 3:\n u[0] = u[0] ^ a[2] << 16;\n case 2:\n u[0] = u[0] ^ a[1] << 8;\n case 1:\n u[0] = u[0] ^ a[0] << 0, u[0] = Math.imul(u[0], f[0]), u[0] = m(u[0], 15), u[0] = Math.imul(u[0], f[1]), e[0] = e[0] ^ u[0];\n }\n }(n, o), function(i, e) {\n e[0] = e[0] ^ i.byteLength, e[1] = e[1] ^ i.byteLength, e[2] = e[2] ^ i.byteLength, e[3] = e[3] ^ i.byteLength, e[0] = e[0] + e[1] | 0, e[0] = e[0] + e[2] | 0, e[0] = e[0] + e[3] | 0, e[1] = e[1] + e[0] | 0, e[2] = e[2] + e[0] | 0, e[3] = e[3] + e[0] | 0, e[0] = M(e[0]), e[1] = M(e[1]), e[2] = M(e[2]), e[3] = M(e[3]), e[0] = e[0] + e[1] | 0, e[0] = e[0] + e[2] | 0, e[0] = e[0] + e[3] | 0, e[1] = e[1] + e[0] | 0, e[2] = e[2] + e[0] | 0, e[3] = e[3] + e[0] | 0;\n }(n, o);\n var s = new Uint8Array(o.buffer);\n return Array.from(s).map(function(i) {\n return i.toString(16).padStart(2, \"0\");\n }).join(\"\");\n}\nfunction G(n, t) {\n return new Promise(function(r) {\n setTimeout(function() {\n return r(t);\n }, n);\n });\n}\nfunction W(n, t, r) {\n return Promise.all(n.map(function(o) {\n return Promise.race([o, G(t, r)]);\n }));\n}\nfunction V() {\n return w(this, void 0, void 0, function() {\n var n, t, r, o, s;\n return y(this, function(i) {\n switch (i.label) {\n case 0:\n return i.trys.push([0, 2, , 3]), n = q(), t = Object.keys(n), [4, W(Object.values(n), (b == null ? void 0 : b.timeout) || 1e3, j)];\n case 1:\n return r = i.sent(), o = r.filter(function(e) {\n return e !== void 0;\n }), s = {}, o.forEach(function(e, c) {\n s[t[c]] = e;\n }), [2, F(s, b.exclude || [])];\n case 2:\n throw i.sent();\n case 3:\n return [2];\n }\n });\n });\n}\nfunction F(n, t) {\n var r = {}, o = function(i) {\n if (n.hasOwnProperty(i)) {\n var e = n[i];\n if (typeof e != \"object\" || Array.isArray(e)) t.includes(i) || (r[i] = e);\n else {\n var c = F(e, t.map(function(d) {\n return d.startsWith(i + \".\") ? d.slice(i.length + 1) : d;\n }));\n Object.keys(c).length > 0 && (r[i] = c);\n }\n }\n };\n for (var s in n) o(s);\n return r;\n}\nfunction H(n) {\n return w(this, void 0, void 0, function() {\n var t, r;\n return y(this, function(o) {\n switch (o.label) {\n case 0:\n return o.trys.push([0, 2, , 3]), [4, V()];\n case 1:\n return t = o.sent(), r = I(JSON.stringify(t)), [2, r.toString()];\n case 2:\n throw o.sent();\n case 3:\n return [2];\n }\n });\n });\n}\nfunction $(n) {\n for (var t = 0, r = 0; r < n.length; ++r) t += Math.abs(n[r]);\n return t;\n}\nfunction _(n, t, r) {\n for (var o = [], s = 0; s < n[0].data.length; s++) {\n for (var i = [], e = 0; e < n.length; e++) i.push(n[e].data[s]);\n o.push(K(i));\n }\n var c = new Uint8ClampedArray(o);\n return new ImageData(c, t, r);\n}\nfunction K(n) {\n if (n.length === 0) return 0;\n for (var t = {}, r = 0, o = n; r < o.length; r++)\n t[i = o[r]] = (t[i] || 0) + 1;\n var s = n[0];\n for (var i in t) t[i] > t[s] && (s = parseInt(i, 10));\n return s;\n}\nfunction E() {\n if (typeof navigator > \"u\") return { name: \"unknown\", version: \"unknown\" };\n for (var n = navigator.userAgent, t = { Edg: \"Edge\", OPR: \"Opera\" }, r = 0, o = [/(?<name>Edge|Edg)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>(?:Chrome|Chromium|OPR|Opera|Vivaldi|Brave))\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>(?:Firefox|Waterfox|Iceweasel|IceCat))\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>Safari)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>MSIE|Trident|IEMobile).+?(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>[A-Za-z]+)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>SamsungBrowser)\\/(?<version>\\d+(?:\\.\\d+)?)/]; r < o.length; r++) {\n var s = o[r], i = n.match(s);\n if (i && i.groups) return { name: t[i.groups.name] || i.groups.name, version: i.groups.version };\n }\n return { name: \"unknown\", version: \"unknown\" };\n}\nv(\"audio\", function() {\n return w(this, void 0, void 0, function() {\n return y(this, function(n) {\n return [2, new Promise(function(t, r) {\n try {\n var o = new (window.OfflineAudioContext || window.webkitOfflineAudioContext)(1, 5e3, 44100), s = o.createBufferSource(), i = o.createOscillator();\n i.frequency.value = 1e3;\n var e, c = o.createDynamicsCompressor();\n c.threshold.value = -50, c.knee.value = 40, c.ratio.value = 12, c.attack.value = 0, c.release.value = 0.2, i.connect(c), c.connect(o.destination), i.start(), o.oncomplete = function(d) {\n e = d.renderedBuffer.getChannelData(0), t({ sampleHash: $(e), oscillator: i.type, maxChannels: o.destination.maxChannelCount, channelCountMode: s.channelCountMode });\n }, o.startRendering();\n } catch (d) {\n console.error(\"Error creating audio fingerprint:\", d), r(d);\n }\n })];\n });\n });\n});\nvar z = E().name !== \"SamsungBrowser\" ? 1 : 3, C = 280, k = 20;\nE().name != \"Firefox\" && v(\"canvas\", function() {\n return document.createElement(\"canvas\").getContext(\"2d\"), new Promise(function(n) {\n var t = Array.from({ length: z }, function() {\n return function() {\n var r = document.createElement(\"canvas\"), o = r.getContext(\"2d\");\n if (!o) return new ImageData(1, 1);\n r.width = C, r.height = k;\n var s = o.createLinearGradient(0, 0, r.width, r.height);\n s.addColorStop(0, \"red\"), s.addColorStop(0.16666666666666666, \"orange\"), s.addColorStop(0.3333333333333333, \"yellow\"), s.addColorStop(0.5, \"green\"), s.addColorStop(0.6666666666666666, \"blue\"), s.addColorStop(0.8333333333333334, \"indigo\"), s.addColorStop(1, \"violet\"), o.fillStyle = s, o.fillRect(0, 0, r.width, r.height);\n var i = \"Random Text WMwmil10Oo\";\n o.font = \"23.123px Arial\", o.fillStyle = \"black\", o.fillText(i, -5, 15), o.fillStyle = \"rgba(0, 0, 255, 0.5)\", o.fillText(i, -3.3, 17.7), o.beginPath(), o.moveTo(0, 0), o.lineTo(2 * r.width / 7, r.height), o.strokeStyle = \"white\", o.lineWidth = 2, o.stroke();\n var e = o.getImageData(0, 0, r.width, r.height);\n return e;\n }();\n });\n n({ commonImageDataHash: I(_(t, C, k).data.toString()).toString() });\n });\n});\nvar A, J = [\"Arial\", \"Arial Black\", \"Arial Narrow\", \"Arial Rounded MT\", \"Arimo\", \"Archivo\", \"Barlow\", \"Bebas Neue\", \"Bitter\", \"Bookman\", \"Calibri\", \"Cabin\", \"Candara\", \"Century\", \"Century Gothic\", \"Comic Sans MS\", \"Constantia\", \"Courier\", \"Courier New\", \"Crimson Text\", \"DM Mono\", \"DM Sans\", \"DM Serif Display\", \"DM Serif Text\", \"Dosis\", \"Droid Sans\", \"Exo\", \"Fira Code\", \"Fira Sans\", \"Franklin Gothic Medium\", \"Garamond\", \"Geneva\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Inconsolata\", \"Indie Flower\", \"Inter\", \"Josefin Sans\", \"Karla\", \"Lato\", \"Lexend\", \"Lucida Bright\", \"Lucida Console\", \"Lucida Sans Unicode\", \"Manrope\", \"Merriweather\", \"Merriweather Sans\", \"Montserrat\", \"Myriad\", \"Noto Sans\", \"Nunito\", \"Nunito Sans\", \"Open Sans\", \"Optima\", \"Orbitron\", \"Oswald\", \"Pacifico\", \"Palatino\", \"Perpetua\", \"PT Sans\", \"PT Serif\", \"Poppins\", \"Prompt\", \"Public Sans\", \"Quicksand\", \"Rajdhani\", \"Recursive\", \"Roboto\", \"Roboto Condensed\", \"Rockwell\", \"Rubik\", \"Segoe Print\", \"Segoe Script\", \"Segoe UI\", \"Sora\", \"Source Sans Pro\", \"Space Mono\", \"Tahoma\", \"Taviraj\", \"Times\", \"Times New Roman\", \"Titillium Web\", \"Trebuchet MS\", \"Ubuntu\", \"Varela Round\", \"Verdana\", \"Work Sans\"], Y = [\"monospace\", \"sans-serif\", \"serif\"];\nfunction P(n, t) {\n if (!n) throw new Error(\"Canvas context not supported\");\n return n.font = \"72px \".concat(t), n.measureText(\"WwMmLli0Oo\").width;\n}\nfunction Q() {\n var n, t = document.createElement(\"canvas\"), r = (n = t.getContext(\"webgl\")) !== null && n !== void 0 ? n : t.getContext(\"experimental-webgl\");\n if (r && \"getParameter\" in r) try {\n var o = (r.getParameter(r.VENDOR) || \"\").toString(), s = (r.getParameter(r.RENDERER) || \"\").toString(), i = { vendor: o, renderer: s, version: (r.getParameter(r.VERSION) || \"\").toString(), shadingLanguageVersion: (r.getParameter(r.SHADING_LANGUAGE_VERSION) || \"\").toString() };\n if (!s.length || !o.length) {\n var e = r.getExtension(\"WEBGL_debug_renderer_info\");\n if (e) {\n var c = (r.getParameter(e.UNMASKED_VENDOR_WEBGL) || \"\").toString(), d = (r.getParameter(e.UNMASKED_RENDERER_WEBGL) || \"\").toString();\n c && (i.vendorUnmasked = c), d && (i.rendererUnmasked = d);\n }\n }\n return i;\n } catch {\n }\n return \"undefined\";\n}\nfunction X() {\n var n = new Float32Array(1), t = new Uint8Array(n.buffer);\n return n[0] = 1 / 0, n[0] = n[0] - n[0], t[3];\n}\nfunction Z(n, t) {\n var r = {};\n return t.forEach(function(o) {\n var s = function(i) {\n if (i.length === 0) return null;\n var e = {};\n i.forEach(function(u) {\n var a = String(u);\n e[a] = (e[a] || 0) + 1;\n });\n var c = i[0], d = 1;\n return Object.keys(e).forEach(function(u) {\n e[u] > d && (c = u, d = e[u]);\n }), c;\n }(n.map(function(i) {\n return o in i ? i[o] : void 0;\n }).filter(function(i) {\n return i !== void 0;\n }));\n s && (r[o] = s);\n }), r;\n}\nfunction ee() {\n var n = [], t = { \"prefers-contrast\": [\"high\", \"more\", \"low\", \"less\", \"forced\", \"no-preference\"], \"any-hover\": [\"hover\", \"none\"], \"any-pointer\": [\"none\", \"coarse\", \"fine\"], pointer: [\"none\", \"coarse\", \"fine\"], hover: [\"hover\", \"none\"], update: [\"fast\", \"slow\"], \"inverted-colors\": [\"inverted\", \"none\"], \"prefers-reduced-motion\": [\"reduce\", \"no-preference\"], \"prefers-reduced-transparency\": [\"reduce\", \"no-preference\"], scripting: [\"none\", \"initial-only\", \"enabled\"], \"forced-colors\": [\"active\", \"none\"] };\n return Object.keys(t).forEach(function(r) {\n t[r].forEach(function(o) {\n matchMedia(\"(\".concat(r, \": \").concat(o, \")\")).matches && n.push(\"\".concat(r, \": \").concat(o));\n });\n }), n;\n}\nfunction te() {\n if (window.location.protocol === \"https:\" && typeof window.ApplePaySession == \"function\") try {\n for (var n = window.ApplePaySession.supportsVersion, t = 15; t > 0; t--) if (n(t)) return t;\n } catch {\n return 0;\n }\n return 0;\n}\nE().name != \"Firefox\" && v(\"fonts\", function() {\n var n = this;\n return new Promise(function(t, r) {\n try {\n (function(o) {\n var s;\n w(this, void 0, void 0, function() {\n var i, e, c;\n return y(this, function(d) {\n switch (d.label) {\n case 0:\n return document.body ? [3, 2] : [4, (u = 50, new Promise(function(g) {\n return setTimeout(g, u, a);\n }))];\n case 1:\n return d.sent(), [3, 0];\n case 2:\n if ((i = document.createElement(\"iframe\")).setAttribute(\"frameBorder\", \"0\"), (e = i.style).setProperty(\"position\", \"fixed\"), e.setProperty(\"display\", \"block\", \"important\"), e.setProperty(\"visibility\", \"visible\"), e.setProperty(\"border\", \"0\"), e.setProperty(\"opacity\", \"0\"), i.src = \"about:blank\", document.body.appendChild(i), !(c = i.contentDocument || ((s = i.contentWindow) === null || s === void 0 ? void 0 : s.document))) throw new Error(\"Iframe document is not accessible\");\n return o({ iframe: c }), setTimeout(function() {\n document.body.removeChild(i);\n }, 0), [2];\n }\n var u, a;\n });\n });\n })(function(o) {\n var s = o.iframe;\n return w(n, void 0, void 0, function() {\n var i, e, c, d;\n return y(this, function(u) {\n return i = s.createElement(\"canvas\"), e = i.getContext(\"2d\"), c = Y.map(function(a) {\n return P(e, a);\n }), d = {}, J.forEach(function(a) {\n var g = P(e, a);\n c.includes(g) || (d[a] = g);\n }), t(d), [2];\n });\n });\n });\n } catch {\n r({ error: \"unsupported\" });\n }\n });\n}), v(\"hardware\", function() {\n return new Promise(function(n, t) {\n var r = navigator.deviceMemory !== void 0 ? navigator.deviceMemory : 0, o = window.performance && window.performance.memory ? window.performance.memory : 0;\n n({ videocard: Q(), architecture: X(), deviceMemory: r.toString() || \"undefined\", jsHeapSizeLimit: o.jsHeapSizeLimit || 0 });\n });\n}), v(\"locales\", function() {\n return new Promise(function(n) {\n n({ languages: navigator.language, timezone: Intl.DateTimeFormat().resolvedOptions().timeZone });\n });\n}), v(\"permissions\", function() {\n return w(this, void 0, void 0, function() {\n var n;\n return y(this, function(t) {\n return A = (b == null ? void 0 : b.permissions_to_check) || [\"accelerometer\", \"accessibility\", \"accessibility-events\", \"ambient-light-sensor\", \"background-fetch\", \"background-sync\", \"bluetooth\", \"camera\", \"clipboard-read\", \"clipboard-write\", \"device-info\", \"display-capture\", \"gyroscope\", \"geolocation\", \"local-fonts\", \"magnetometer\", \"microphone\", \"midi\", \"nfc\", \"notifications\", \"payment-handler\", \"persistent-storage\", \"push\", \"speaker\", \"storage-access\", \"top-level-storage-access\", \"window-management\", \"query\"], n = Array.from({ length: (b == null ? void 0 : b.retries) || 3 }, function() {\n return function() {\n return w(this, void 0, void 0, function() {\n var r, o, s, i, e;\n return y(this, function(c) {\n switch (c.label) {\n case 0:\n r = {}, o = 0, s = A, c.label = 1;\n case 1:\n if (!(o < s.length)) return [3, 6];\n i = s[o], c.label = 2;\n case 2:\n return c.trys.push([2, 4, , 5]), [4, navigator.permissions.query({ name: i })];\n case 3:\n return e = c.sent(), r[i] = e.state.toString(), [3, 5];\n case 4:\n return c.sent(), [3, 5];\n case 5:\n return o++, [3, 1];\n case 6:\n return [2, r];\n }\n });\n });\n }();\n }), [2, Promise.all(n).then(function(r) {\n return Z(r, A);\n })];\n });\n });\n}), v(\"plugins\", function() {\n var n = [];\n if (navigator.plugins) for (var t = 0; t < navigator.plugins.length; t++) {\n var r = navigator.plugins[t];\n n.push([r.name, r.filename, r.description].join(\"|\"));\n }\n return new Promise(function(o) {\n o({ plugins: n });\n });\n}), v(\"screen\", function() {\n return new Promise(function(n) {\n n({ is_touchscreen: navigator.maxTouchPoints > 0, maxTouchPoints: navigator.maxTouchPoints, colorDepth: screen.colorDepth, mediaMatches: ee() });\n });\n}), v(\"system\", function() {\n return new Promise(function(n) {\n var t = E();\n n({ platform: window.navigator.platform, cookieEnabled: window.navigator.cookieEnabled, productSub: navigator.productSub, product: navigator.product, useragent: navigator.userAgent, hardwareConcurrency: navigator.hardwareConcurrency, browser: { name: t.name, version: t.version }, applePayVersion: te() });\n });\n});\nvar h, ne = E().name !== \"SamsungBrowser\" ? 1 : 3, l = null;\nv(\"webgl\", function() {\n return w(this, void 0, void 0, function() {\n var n;\n return y(this, function(t) {\n typeof document < \"u\" && ((h = document.createElement(\"canvas\")).width = 200, h.height = 100, l = h.getContext(\"webgl\"));\n try {\n if (!l) throw new Error(\"WebGL not supported\");\n return n = Array.from({ length: ne }, function() {\n return function() {\n try {\n if (!l) throw new Error(\"WebGL not supported\");\n var r = `\n attribute vec2 position;\n void main() {\n gl_Position = vec4(position, 0.0, 1.0);\n }\n `, o = `\n precision mediump float;\n void main() {\n gl_FragColor = vec4(0.812, 0.195, 0.553, 0.921); // Set line color\n }\n `, s = l.createShader(l.VERTEX_SHADER), i = l.createShader(l.FRAGMENT_SHADER);\n if (!s || !i) throw new Error(\"Failed to create shaders\");\n if (l.shaderSource(s, r), l.shaderSource(i, o), l.compileShader(s), !l.getShaderParameter(s, l.COMPILE_STATUS)) throw new Error(\"Vertex shader compilation failed: \" + l.getShaderInfoLog(s));\n if (l.compileShader(i), !l.getShaderParameter(i, l.COMPILE_STATUS)) throw new Error(\"Fragment shader compilation failed: \" + l.getShaderInfoLog(i));\n var e = l.createProgram();\n if (!e) throw new Error(\"Failed to create shader program\");\n if (l.attachShader(e, s), l.attachShader(e, i), l.linkProgram(e), !l.getProgramParameter(e, l.LINK_STATUS)) throw new Error(\"Shader program linking failed: \" + l.getProgramInfoLog(e));\n l.useProgram(e);\n for (var c = 137, d = new Float32Array(4 * c), u = 2 * Math.PI / c, a = 0; a < c; a++) {\n var g = a * u;\n d[4 * a] = 0, d[4 * a + 1] = 0, d[4 * a + 2] = Math.cos(g) * (h.width / 2), d[4 * a + 3] = Math.sin(g) * (h.height / 2);\n }\n var U = l.createBuffer();\n l.bindBuffer(l.ARRAY_BUFFER, U), l.bufferData(l.ARRAY_BUFFER, d, l.STATIC_DRAW);\n var x = l.getAttribLocation(e, \"position\");\n l.enableVertexAttribArray(x), l.vertexAttribPointer(x, 2, l.FLOAT, !1, 0, 0), l.viewport(0, 0, h.width, h.height), l.clearColor(0, 0, 0, 1), l.clear(l.COLOR_BUFFER_BIT), l.drawArrays(l.LINES, 0, 2 * c);\n var R = new Uint8ClampedArray(h.width * h.height * 4);\n return l.readPixels(0, 0, h.width, h.height, l.RGBA, l.UNSIGNED_BYTE, R), new ImageData(R, h.width, h.height);\n } catch {\n return new ImageData(1, 1);\n } finally {\n l && (l.bindBuffer(l.ARRAY_BUFFER, null), l.useProgram(null), l.viewport(0, 0, l.drawingBufferWidth, l.drawingBufferHeight), l.clearColor(0, 0, 0, 0));\n }\n }();\n }), [2, { commonImageHash: I(_(n, h.width, h.height).data.toString()).toString() }];\n } catch {\n return [2, { webgl: \"unsupported\" }];\n }\n return [2];\n });\n });\n});\nvar S = function(n, t, r, o) {\n for (var s = (r - t) / o, i = 0, e = 0; e < o; e++)\n i += n(t + (e + 0.5) * s);\n return i * s;\n};\nv(\"math\", function() {\n return w(void 0, void 0, void 0, function() {\n return y(this, function(n) {\n return [2, { acos: Math.acos(0.5), asin: S(Math.asin, -1, 1, 97), atan: S(Math.atan, -1, 1, 97), cos: S(Math.cos, 0, Math.PI, 97), cosh: Math.cosh(9 / 7), e: Math.E, largeCos: Math.cos(1e20), largeSin: Math.sin(1e20), largeTan: Math.tan(1e20), log: Math.log(1e3), pi: Math.PI, sin: S(Math.sin, -Math.PI, Math.PI, 97), sinh: S(Math.sinh, -9 / 7, 7 / 9, 97), sqrt: Math.sqrt(2), tan: S(Math.tan, 0, 2 * Math.PI, 97), tanh: S(Math.tanh, -9 / 7, 7 / 9, 97) }];\n });\n });\n});\nclass ie {\n constructor(t, r) {\n p(this, \"config\");\n p(this, \"sdkInfo\");\n p(this, \"userId\");\n p(this, \"sessionId\");\n /**\n * Performs a search operation.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {Promise<SearchcraftResponse>} - Returns the search response or throws an error.\n */\n p(this, \"search\", async (t) => {\n if (this.sendMeasureEvent(\"search_requested\", {\n search_term: t.query\n }), (t.query.match(/\"/g) || []).length % 2 !== 0)\n throw new Error(\n \"The search term contains an uneven number of quote characters.\"\n );\n try {\n const o = {\n query: this.buildQueryObject(t),\n limit: t.limit ?? 20\n // Default to 20 if not provided\n };\n t.offset !== void 0 && (o.offset = t.offset), t.order_by && (o.order_by = t.order_by, o.sort = t.sort === \"desc\" || t.sort === \"asc\" ? t.sort : \"asc\");\n const s = {\n method: \"POST\",\n headers: {\n Authorization: this.config.readKey,\n \"Content-Type\": \"application/json\",\n \"X-Sc-User-Id\": this.userId\n },\n body: JSON.stringify(o)\n }, i = await fetch(this.baseSearchUrl, s);\n if (!i.ok)\n throw new Error(\n `Error: ${i.statusText} (Status: ${i.status})`\n );\n const e = await i.json();\n return this.sendMeasureEvent(\"search_response_received\", {\n search_term: t.query,\n number_of_documents: e.data.count\n }), e;\n } catch (o) {\n throw console.error(\"Error parsing response:\", o), o;\n }\n });\n /**\n * Sends a measure event to the `/measure/event` endpoint for analytics purposes.\n *\n * @param {MeasureEventName} eventName - Name of the event.\n * @param {Partial<MeasureRequestProperties>} properties - Additional properties to send with the event.\n * @param {Partial<MeasureRequestUser>} user - Additional user properites to send with the event.\n */\n p(this, \"sendMeasureEvent\", async (t, r = {}, o = {}) => {\n const s = {\n event_name: t,\n properties: {\n searchcraft_index_names: this.config.index,\n ...r\n },\n user: {\n ...this.measureRequestUser,\n ...o\n }\n }, i = JSON.stringify(s), e = `${this.baseMeasureUrl}/event`;\n try {\n const c = await fetch(e, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: this.config.readKey,\n \"X-Sc-User-Id\": this.userId\n },\n body: i,\n keepalive: !0\n });\n if (!c.ok)\n throw new Error(\n `Failed to send request: ${c.status} ${c.statusText}`\n );\n return;\n } catch (c) {\n throw console.error(\"Error sending MeasureRequest:\", c), c;\n }\n });\n if (!t.endpointURL || !t.index || !t.readKey)\n throw new Error(\n \"Endpoint URL, Index value(s), and Read Key must be provided\"\n );\n this.config = t, this.sdkInfo = r, this.userId = t.userId || \"\", this.sessionId = \"\", setTimeout(() => {\n this.sessionId = N(), this.initMeasure();\n }, 300);\n }\n /**\n * Initializes this.userId based on config & sends the `sdk_innitialized` event.\n */\n async initMeasure() {\n if (!this.config.userId) {\n const t = await H();\n this.userId = t;\n }\n this.sendMeasureEvent(\"sdk_initialized\");\n }\n /**\n * Getter for the base url used by the /search endpoint.\n */\n get baseSearchUrl() {\n return `${this.config.endpointURL}/index/${this.config.index.join(\",\")}/search`;\n }\n /**\n * Getter for the base url used by the /measure endpoints.\n */\n get baseMeasureUrl() {\n return `${this.config.endpointURL}/measure`;\n }\n /**\n * Getter for the measure request user. Uses config values + navigator values.\n */\n get measureRequestUser() {\n return {\n user_id: this.userId,\n locale: navigator.language || \"en-US\",\n os: navigator.userAgent.includes(\"Windows\") ? \"Windows\" : navigator.userAgent.includes(\"Mac\") ? \"Mac\" : navigator.userAgent.includes(\"Linux\") ? \"Linux\" : \"Unknown\",\n platform: navigator.platform || \"Unknown\",\n sdk_name: this.sdkInfo.sdkName,\n sdk_version: this.sdkInfo.sdkVersion,\n user_agent: navigator.userAgent || \"Unknown\"\n };\n }\n /**\n * Builds a query object for the search request.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {QueryObject} - A properly formatted query object.\n */\n buildQueryObject(t) {\n const r = [];\n let o = \"should\";\n return t.facetPathsForIndexFields && Object.keys(t.facetPathsForIndexFields).forEach(\n (s) => {\n var e;\n const i = (e = t.facetPathsForIndexFields) == null ? void 0 : e[s];\n i && (o = \"must\", r.push({\n occur: o,\n normal: {\n ctx: i.value\n }\n }));\n }\n ), t.rangeValueForIndexFields && Object.keys(t.rangeValueForIndexFields).forEach(\n (s) => {\n var e;\n const i = (e = t.rangeValueForIndexFields) == null ? void 0 : e[s];\n i && (o = \"must\", r.push({\n occur: o,\n normal: {\n ctx: i.value\n }\n }));\n }\n ), t.sort === \"desc\" ? t.order_by = \"date_published\" : t.order_by = \"\", r.push({\n occur: o,\n // Valid, as 'occur' is a required property in QueryItem\n [t.mode]: { ctx: t.query }\n // Ensure dynamic mode is inside queryType\n }), r;\n }\n}\nvar O = /* @__PURE__ */ ((n) => (n[n.DEBUG = 0] = \"DEBUG\", n[n.INFO = 1] = \"INFO\", n[n.WARN = 2] = \"WARN\", n[n.ERROR = 3] = \"ERROR\", n))(O || {});\nclass ae {\n constructor(t) {\n p(this, \"logLevel\");\n p(this, \"logFormatter\");\n this.logLevel = t.logLevel || 1, this.logFormatter = t.logFormatter || this.defaultFormatter;\n }\n defaultFormatter(t, r) {\n return `[${O[t]}] ${( new Date()).toISOString()}: ${r}`;\n }\n debug(t) {\n this.logLevel <= 0 && console.log(this.logFormatter(0, t));\n }\n info(t) {\n this.logLevel <= 1 && console.info(this.logFormatter(1, t));\n }\n warn(t) {\n this.logLevel <= 2 && console.warn(this.logFormatter(2, t));\n }\n error(t) {\n this.logLevel <= 3 && console.error(this.logFormatter(3, t));\n }\n}\n\n// Zustand store for Searchcraft state\nconst useSearchcraftStore = zustand.create((set, get) => {\n let searchcraft = null;\n let debuggerInstance = null;\n const log = (level, message) => {\n if (debuggerInstance) {\n switch (level) {\n case O.DEBUG:\n debuggerInstance.debug(message);\n break;\n case O.INFO:\n debuggerInstance.info(message);\n break;\n case O.WARN:\n debuggerInstance.warn(message);\n break;\n case O.ERROR:\n debuggerInstance.error(message);\n break;\n }\n }\n };\n return {\n resetFacetPaths: () => {\n set({\n facetPathsForIndexFields: {},\n });\n },\n addFacetPathsForIndexField: (data) => set((state) => ({\n facetPathsForIndexFields: Object.assign(Object.assign({}, state.facetPathsForIndexFields), { [data.fieldName]: data }),\n })),\n removeFacetPathsForIndexField: (fieldName) => set((state) => {\n const currentPaths = state.facetPathsForIndexFields;\n delete currentPaths[fieldName];\n return {\n facetPathsForIndexFields: Object.assign({}, currentPaths),\n };\n }),\n addRangeValueForIndexField: (data) => set((state) => ({\n rangeValueForIndexFields: Object.assign(Object.assign({}, state.rangeValueForIndexFields), { [data.fieldName]: data }),\n })),\n removeRangeValueForIndexField: (fieldName) => set((state) => {\n const currentValues = state.rangeValueForIndexFields;\n delete currentValues[fieldName];\n return {\n rangeValueForIndexFields: Object.assign({}, currentValues),\n };\n }),\n setSearchMode: (mode) => set({ searchMode: mode }),\n setSortType: (type) => set({ sortType: type }),\n searchMode: 'fuzzy',\n sortType: 'asc',\n facetPathsForIndexFields: {},\n rangeValueForIndexFields: {},\n query: '',\n isRequesting: false,\n searchResults: null,\n facets: null,\n getSearchcraftInstance: () => searchcraft,\n setQuery: (query) => {\n /**\n * When a new query is set, also reset the sort type, search mode, and facet paths.\n */\n set(Object.assign({ query, facetPathsForIndexFields: {} }, (query.trim().length === 0 && {\n searchMode: 'fuzzy',\n sortType: 'asc',\n })));\n },\n setSearchResults: (results) => set({ searchResults: results }),\n setFacets: (facets) => set({ facets }),\n setIsRequesting: (isRequesting) => set({ isRequesting }),\n search: async () => {\n const state = get();\n log(O.INFO, `Starting search with search term: \"${state.query}\"`);\n if (!searchcraft) {\n throw new Error('Searchcraft instance is not initialized.');\n }\n if (!state.query.trim()) {\n log(O.INFO, 'No search request was made: search term was empty.');\n state.setSearchResults(null);\n return;\n }\n state.setIsRequesting(true);\n try {\n const results = await searchcraft.search({\n query: state.query,\n mode: state.searchMode,\n sort: state.sortType,\n facetPathsForIndexFields: state.facetPathsForIndexFields,\n rangeValueForIndexFields: state.rangeValueForIndexFields,\n });\n const updatedFacets = results.data.facets || null;\n state.setSearchResults(results);\n state.setFacets(updatedFacets);\n log(O.DEBUG, `Search results: ${JSON.stringify(results)}`);\n log(O.DEBUG, `Updated facets: ${JSON.stringify(updatedFacets)}`);\n }\n catch (error) {\n console.error(`Search failed: ${error.message}`);\n log(O.ERROR, `Search failed with error: ${error.message}`);\n }\n finally {\n state.setIsRequesting(false);\n }\n },\n initialize: (searchcraftInstance, debug = false) => {\n searchcraft = searchcraftInstance;\n debuggerInstance = debug\n ? new ae({ logLevel: O.DEBUG })\n : null;\n log(O.INFO, 'Searchcraft store initialized.');\n },\n };\n});\nconst useThemeStore = zustand.create((set) => ({\n theme: 'light',\n toggleTheme: () => set((state) => ({ theme: state.theme === 'light' ? 'dark' : 'light' })),\n}));\n\nexport { useThemeStore as a, ie as i, useSearchcraftStore as u };\n\n//# sourceMappingURL=p-ad4ebde0.js.map","import { p as proxyCustomElement, H, h, F as Fragment } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-ad4ebde0.js';\n\nconst searchcraftBaseSearchResultModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-search-result-container{all:unset;align-items:flex-start;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:8px;color:inherit;background-color:var(--sc-surface-neutral-primary)}@media (min-width: 900px){.searchcraft-search-result-container{flex-direction:row}}a.searchcraft-search-result-container{cursor:pointer;transition:background-color 100ms}.searchcraft-base-search-result-content-container{flex:1;display:flex;flex-direction:column;gap:8px}.searchcraft-search-result-image{border-radius:var(--sc-image-border-radius);width:100%}@media (min-width: 900px){.searchcraft-search-result-image{width:200px}}.searchcraft-base-search-result-title{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-bold-font-size);font-weight:var(--sc-body-bold-font-weight);line-height:var(--sc-body-bold-line-height);margin:0;color:var(--sc-content-neutral-primary)}.searchcraft-base-search-result-subtitle{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);margin:0;color:var(--sc-content-disabled)}.searchcraft-base-search-result-body-content{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-neutral-secondary)}.searchcraft-base-search-result-footer-content{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-disabled)}\";\nconst SearchcraftBaseSearchResultStyle0 = searchcraftBaseSearchResultModuleCss;\n\nconst SearchcraftBaseSearchResult = /*@__PURE__*/ proxyCustomElement(class SearchcraftBaseSearchResult extends H {\n constructor() {\n super();\n this.__registerHost();\n this.searchcraftStore = useSearchcraftStore.getState();\n this.recordMeasureEvent = () => {\n var _a, _b, _c;\n const searchcraft = this.searchcraftStore.getSearchcraftInstance();\n if (searchcraft) {\n const document_position = this.documentPosition;\n const search_term = this.searchcraftStore.query;\n const number_of_documents = ((_c = (_b = (_a = this.searchcraftStore.searchResults) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.hits) === null || _c === void 0 ? void 0 : _c.length) || 0;\n searchcraft.sendMeasureEvent('document_clicked', {\n document_position,\n number_of_documents,\n search_term,\n });\n }\n };\n this.parseStyles = () => {\n if (this.customStyles) {\n try {\n return JSON.parse(this.customStyles);\n }\n catch (error) {\n console.error('Error parsing custom styles:', error);\n return {};\n }\n }\n return {};\n };\n this.titleContent = undefined;\n this.subtitleContent = undefined;\n this.bodyContent = undefined;\n this.footerContent = undefined;\n this.buttonLabel = undefined;\n this.buttonHref = undefined;\n this.buttonTarget = '_blank';\n this.buttonRel = undefined;\n this.containerHref = undefined;\n this.containerTarget = '_blank';\n this.containerRel = undefined;\n this.imageSrc = undefined;\n this.imageAlt = undefined;\n this.imagePlacement = undefined;\n this.customStyles = undefined;\n this.documentPosition = 0;\n }\n render() {\n const styles = this.parseStyles();\n const imageContainer = this.imageSrc && (h(\"img\", { alt: this.imageAlt, class: 'searchcraft-search-result-image', src: this.imageSrc, style: styles.image || {} }));\n const contentContainer = (h(Fragment, null, this.imageSrc && this.imagePlacement === 'left' && imageContainer, h(\"div\", { class: 'searchcraft-base-search-result-content-container' }, this.titleContent && (h(\"h2\", { class: 'searchcraft-base-search-result-title', style: styles.title || {} }, this.titleContent)), this.subtitleContent && (h(\"h3\", { class: 'searchcraft-base-search-result-subtitle', style: styles.subtitle || {} }, this.subtitleContent)), this.bodyContent && (h(\"p\", { class: 'searchcraft-base-search-result-body-content', style: styles.primaryContent || {} }, this.bodyContent)), this.footerContent && (h(\"p\", { class: 'searchcraft-base-search-result-footer-content', style: styles.secondaryContent || {} }, this.footerContent)), this.buttonHref && !this.containerHref && this.buttonLabel && (h(\"a\", { class: 'searchcraft-search-result-button', href: this.buttonHref, style: styles.button || {}, target: this.buttonTarget, rel: this.buttonRel }, this.buttonLabel))), this.imageSrc && this.imagePlacement === 'right' && imageContainer));\n /** Render as an anchor tag if the containerHref prop is present. */\n if (this.containerHref) {\n return (h(\"a\", { class: 'searchcraft-search-result-container', onClick: this.recordMeasureEvent, href: this.containerHref, rel: this.containerRel, style: styles.container || {}, tabindex: '0', target: this.containerTarget }, contentContainer));\n }\n /** Render as a div if no href prop. */\n return (h(\"div\", { class: 'searchcraft-search-result-container', style: styles.container || {} }, contentContainer));\n }\n static get style() { return SearchcraftBaseSearchResultStyle0; }\n}, [0, \"searchcraft-base-search-result\", {\n \"titleContent\": [1, \"title-content\"],\n \"subtitleContent\": [1, \"subtitle-content\"],\n \"bodyContent\": [1, \"body-content\"],\n \"footerContent\": [1, \"footer-content\"],\n \"buttonLabel\": [1, \"button-label\"],\n \"buttonHref\": [1, \"button-href\"],\n \"buttonTarget\": [1, \"button-target\"],\n \"buttonRel\": [1, \"button-rel\"],\n \"containerHref\": [1, \"container-href\"],\n \"containerTarget\": [1, \"container-target\"],\n \"containerRel\": [1, \"container-rel\"],\n \"imageSrc\": [1, \"image-src\"],\n \"imageAlt\": [1, \"image-alt\"],\n \"imagePlacement\": [1, \"image-placement\"],\n \"customStyles\": [1, \"custom-styles\"],\n \"documentPosition\": [2, \"document-position\"]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-base-search-result\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-base-search-result\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftBaseSearchResult);\n }\n break;\n } });\n}\n\nexport { SearchcraftBaseSearchResult as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-cbdcf6df.js.map","import { S as SearchcraftBaseSearchResult$1, d as defineCustomElement$1 } from './p-cbdcf6df.js';\n\nconst SearchcraftBaseSearchResult = SearchcraftBaseSearchResult$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftBaseSearchResult, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-base-search-result.js.map","function parseCustomStyles(styles) {\n if (typeof styles === 'string') {\n try {\n return JSON.parse(styles);\n }\n catch (error) {\n console.error('Invalid customStyles format:', styles);\n return {};\n }\n }\n return styles || {};\n}\nfunction serializeStyles(styles) {\n try {\n return JSON.stringify(styles);\n }\n catch (error) {\n console.error('Error serializing styles:', error);\n return '{}';\n }\n}\n/**\n * Given a timestamp value, returns a formatted time string for the time\n * since now.\n *\n * @param timestamp\n * @returns {string} Formatted string value\n */\nfunction getFormattedTimeFromNow(timestamp) {\n const now = new Date();\n const inputTime = new Date(timestamp);\n const diffInSeconds = Math.floor((now.getTime() - inputTime.getTime()) / 1000);\n const minutes = Math.floor(diffInSeconds / 60);\n const hours = Math.floor(minutes / 60);\n const days = Math.floor(hours / 24);\n const years = Math.floor(days / 365);\n if (minutes < 60) {\n return `${minutes}m ago`;\n }\n if (hours < 24) {\n return `${hours}h ago`;\n }\n if (days < 365) {\n return `${days}d ago`;\n }\n return `${years}y ago`;\n}\nfunction formatNumberWithCommas(number) {\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n}\nfunction getMillis(unit) {\n const millisInHour = 60 * 60 * 1000;\n const millisInDay = 24 * millisInHour;\n const millisInMonth = 30 * millisInDay;\n const millisInYear = 365 * millisInDay;\n switch (unit) {\n case 'hour':\n return millisInHour;\n case 'day':\n return millisInDay;\n case 'month':\n return millisInMonth;\n case 'year':\n return millisInYear;\n default:\n return 3600000;\n }\n}\n/**\n * Given an array of facet paths, removes parent facet paths.\n */\nfunction removeSubstringMatches(arr) {\n return arr.filter((entry, index, array) => !array.some((otherEntry, otherIndex) => otherIndex !== index && otherEntry.includes(entry)));\n}\n/**\n * Given a document and a SearchResultMapping, return a mapped value from the document.\n *\n * @param document\n * @param {SearchResultMapping} mapping\n * @returns {string | undefined}\n */\nfunction getDocumentValueFromSearchResultMapping(document, mapping) {\n if (document && mapping) {\n return mapping.fieldNames\n .map((fieldNameDetails) => {\n let valueFound = document[fieldNameDetails.fieldName];\n if (valueFound && fieldNameDetails.dataType === 'date') {\n valueFound = getFormattedTimeFromNow(valueFound);\n }\n return valueFound;\n })\n .filter((value) => !!value)\n .join(mapping.delimiter || ' ');\n }\n}\nfunction deepMergeWithSpread(obj1, obj2) {\n const result = Object.assign({}, obj1);\n for (const key in obj2) {\n // biome-ignore lint/suspicious/noPrototypeBuiltins: <explanation>\n if (obj2.hasOwnProperty(key)) {\n if (obj2[key] instanceof Object && obj1[key] instanceof Object) {\n result[key] = deepMergeWithSpread(obj1[key], obj2[key]);\n }\n else {\n result[key] = obj2[key];\n }\n }\n }\n return result;\n}\nfunction facetToRecord(facet) {\n const records = {};\n const traverseAndAddToFragments = (facetChild) => {\n var _a;\n records[facetChild.path] = {\n count: facetChild.count,\n path: facetChild.path,\n };\n (_a = facetChild.children) === null || _a === void 0 ? void 0 : _a.forEach((child) => {\n traverseAndAddToFragments(child);\n });\n };\n traverseAndAddToFragments(facet);\n return records;\n}\nfunction recordToObject(record) {\n const root = {\n count: 0,\n path: '/',\n children: {},\n };\n Object.keys(record).forEach((key) => {\n const fragment = record[key];\n if (fragment.path === '/') {\n return;\n }\n const pathParts = fragment.path.substring(1).split('/');\n let currentRoot = root;\n let currentPath = '';\n pathParts.forEach((part, index) => {\n const nextPath = `${currentPath}/${part}`;\n if (!currentRoot.children[nextPath]) {\n currentRoot.children[nextPath] = {\n count: 0,\n path: nextPath,\n children: {},\n };\n }\n if (index === pathParts.length - 1) {\n currentRoot.children[nextPath].count = fragment.count;\n }\n currentPath = nextPath;\n currentRoot = currentRoot.children[nextPath];\n });\n });\n return root;\n}\nfunction objectToFacet(childObject) {\n const transformed = {\n count: childObject.count,\n path: childObject.path,\n children: [],\n };\n if (Object.keys(childObject.children).length > 0) {\n transformed.children = Object.values(childObject.children).map((subChildObject) => objectToFacet(subChildObject));\n }\n return transformed;\n}\n/**\n * Filters records with the parent paths from record2 OUT of record1\n */\nfunction filterRecordByParentPaths(record1, record2) {\n // Extract all paths (keys) both records\n const paths1 = Object.keys(record1);\n const paths2 = Object.keys(record2);\n // Find all parent paths in record2\n const parentPaths = new Set(paths2\n .filter((path) => path.split('/').length > 2) // Only consider paths with more than one level\n .map((path) => path.substring(0, path.lastIndexOf('/'))));\n // Filter out keys in record1 that share a parent path with any of the identified parent paths\n const filteredRecord = Object.fromEntries(paths1\n .filter((path) => !parentPaths.has(path.substring(0, path.lastIndexOf('/'))))\n .map((path) => [path, record1[path]]));\n return filteredRecord;\n}\nfunction mergeFacetRoots(fieldName, currentRoot, incomingRoot) {\n const currentArray = currentRoot[fieldName];\n const incomingArray = incomingRoot[fieldName];\n const currentRootFacetChild = {\n count: 0,\n path: '/',\n children: currentArray,\n };\n const incomingRootFacetChild = {\n count: 0,\n path: '/',\n children: incomingArray,\n };\n // Flatten them into records\n const currentRecord = facetToRecord(currentRootFacetChild);\n const incomingRecord = facetToRecord(incomingRootFacetChild);\n // Filter out the records from record1 (the current set of records)\n // that share a parent path with record2 (the incoming records)\n const filteredCurrentRecord = filterRecordByParentPaths(currentRecord, incomingRecord);\n // Deep merge the records together\n const mergedRecord = deepMergeWithSpread(filteredCurrentRecord, incomingRecord);\n // Convert into a heirarchical object\n const mergedObject = recordToObject(mergedRecord);\n // Convert the heirarchical object back to the Facet child structure\n const mergedFacetChild = objectToFacet(mergedObject);\n return {\n [fieldName]: mergedFacetChild.children,\n };\n}\n\nexport { getMillis as a, formatNumberWithCommas as f, getDocumentValueFromSearchResultMapping as g, mergeFacetRoots as m, parseCustomStyles as p, removeSubstringMatches as r, serializeStyles as s };\n\n//# sourceMappingURL=p-f308d05d.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\n\nconst searchcraftErrorMessageModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-error-message{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);color:var(--sc-content-danger);margin:0}\";\nconst SearchcraftErrorMessageStyle0 = searchcraftErrorMessageModuleCss;\n\nconst SearchcraftErrorMessage = /*@__PURE__*/ proxyCustomElement(class SearchcraftErrorMessage extends H {\n constructor() {\n super();\n this.__registerHost();\n this.errorMessage = undefined;\n }\n render() {\n return (h(\"p\", { key: '68c4058c43418e96729a91e6a2a9a106303c8bc0', class: 'searchcraft-error-message' }, this.errorMessage || 'Search term is required.'));\n }\n static get style() { return SearchcraftErrorMessageStyle0; }\n}, [0, \"searchcraft-error-message\", {\n \"errorMessage\": [1, \"error-message\"]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-error-message\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-error-message\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftErrorMessage);\n }\n break;\n } });\n}\n\nexport { SearchcraftErrorMessage as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-16983367.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-ad4ebde0.js';\nimport { g as getDocumentValueFromSearchResultMapping, s as serializeStyles } from './p-f308d05d.js';\nimport { d as defineCustomElement$3 } from './p-cbdcf6df.js';\nimport { d as defineCustomElement$2 } from './p-16983367.js';\n\nconst searchcraftBaseSearchResultsModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-search-results-container{display:flex;flex-direction:column;justify-content:center;gap:16px}.searchcraft-ad-section{align-items:center;background-color:#F1F1F1;border-radius:16px;display:flex;flex-direction:column;font-size:16px;justify-content:center;min-height:176px;text-align:center}.searchcraft-ad-section p{margin:0;color:var(--sc-content-disabled)}.searchcraft-search-results-empty-state-container{text-align:center}.searchcraft-search-results-error-message-container{text-align:center}\";\nconst SearchcraftBaseSearchResultsStyle0 = searchcraftBaseSearchResultsModuleCss;\n\nconst SearchcraftBaseSearchResults$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftBaseSearchResults extends H {\n constructor() {\n super();\n this.__registerHost();\n this.noResults = createEvent(this, \"noResults\", 7);\n this.adInterval = 4;\n this.customStylesForResults = undefined;\n this.searchResultMappings = undefined;\n this.placeAdAtEnd = false;\n this.placeAdAtStart = true;\n this.resultImagePlacement = 'right';\n this.buttonLabel = undefined;\n this.buttonTarget = '_blank';\n this.buttonRel = undefined;\n this.containerTarget = '_blank';\n this.containerRel = undefined;\n this.hasSearched = false;\n this.query = '';\n this.searchResults = null;\n }\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (state.query.length > 0) {\n this.hasSearched = true;\n }\n else {\n this.hasSearched = false;\n }\n this.searchResults = Object.assign({}, state.searchResults);\n this.query = state.query;\n });\n const { searchResults, query } = useSearchcraftStore.getState();\n this.searchResults = searchResults;\n this.query = query;\n }\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n renderDocument(document, index) {\n /**\n * Index field values -> Result container props mappings.\n */\n const titleContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.title);\n const subtitleContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.subtitle);\n const bodyContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.body);\n const containerHref = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.containerHref);\n const buttonHref = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.buttonHref);\n const imageSource = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.imageSource);\n const footerContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings.footer);\n const serializedStyles = typeof this.customStylesForResults === 'string'\n ? this.customStylesForResults\n : serializeStyles(this.customStylesForResults);\n return (h(\"searchcraft-base-search-result\", { key: `${document.document_id}-${index}`, \"custom-styles\": serializedStyles, \"image-placement\": this.resultImagePlacement, \"container-rel\": this.containerRel, \"container-target\": this.containerTarget, \"button-label\": this.buttonLabel || 'View more', \"button-rel\": this.buttonRel, \"button-target\": this.buttonTarget, \"document-position\": index, \"title-content\": titleContent, \"subtitle-content\": subtitleContent, \"body-content\": bodyContent, \"footer-content\": footerContent, \"container-href\": containerHref, \"button-href\": buttonHref, \"image-src\": imageSource }));\n }\n render() {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;\n if (this.query.trim() === '') {\n return (h(\"div\", { class: 'searchcraft-search-results-empty-state-container' }, h(\"slot\", { name: 'empty-search' })));\n }\n if (!((_a = this.searchResults) === null || _a === void 0 ? void 0 : _a.data)) {\n return;\n }\n const documents = (_d = (_c = (_b = this.searchResults) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.hits) === null || _d === void 0 ? void 0 : _d.map((data, _index) => {\n const { doc: result } = data;\n return result;\n });\n const finalComponents = [];\n if (this.placeAdAtStart) {\n finalComponents.push(h(\"div\", { key: 'ad-section-start', class: 'searchcraft-ad-section' }, h(\"p\", null, \"Ad Section\")));\n }\n if (this.adInterval > 0) {\n documents.forEach((document, index) => {\n finalComponents.push(this.renderDocument(document, index));\n if ((index + 1) % this.adInterval === 0) {\n finalComponents.push(h(\"div\", { key: `ad-section-${index + 1}`, class: 'searchcraft-ad-section ' }, h(\"p\", null, \"Ad Section\")));\n }\n });\n }\n else {\n const documentElements = documents.map((document, index) => this.renderDocument(document, index));\n finalComponents.push(...documentElements);\n }\n if (this.placeAdAtEnd) {\n finalComponents.push(h(\"div\", { key: 'ad-section-end', class: 'searchcraft-ad-section' }, h(\"p\", null, \"Ad Section\")));\n }\n if (this.query.length > 0 && ((_g = (_f = (_e = this.searchResults) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.hits) === null || _g === void 0 ? void 0 : _g.length) === 0) {\n this.noResults.emit();\n }\n return (h(\"div\", { class: 'searchcraft-search-results-container' }, finalComponents, this.query.length > 0 &&\n ((_k = (_j = (_h = this.searchResults) === null || _h === void 0 ? void 0 : _h.data) === null || _j === void 0 ? void 0 : _j.hits) === null || _k === void 0 ? void 0 : _k.length) === 0 && (h(\"div\", { class: 'searchcraft-search-results-error-message-container' }, h(\"searchcraft-error-message\", { \"error-message\": `No search results found for \"${this.query}\" query` })))));\n }\n static get style() { return SearchcraftBaseSearchResultsStyle0; }\n}, [4, \"searchcraft-base-search-results\", {\n \"adInterval\": [2, \"ad-interval\"],\n \"customStylesForResults\": [1, \"custom-styles-for-results\"],\n \"searchResultMappings\": [16],\n \"placeAdAtEnd\": [4, \"place-ad-at-end\"],\n \"placeAdAtStart\": [4, \"place-ad-at-start\"],\n \"resultImagePlacement\": [1, \"result-image-placement\"],\n \"buttonLabel\": [1, \"button-label\"],\n \"buttonTarget\": [1, \"button-target\"],\n \"buttonRel\": [1, \"button-rel\"],\n \"containerTarget\": [1, \"container-target\"],\n \"containerRel\": [1, \"container-rel\"],\n \"hasSearched\": [32],\n \"query\": [32],\n \"searchResults\": [32]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-base-search-results\", \"searchcraft-base-search-result\", \"searchcraft-error-message\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-base-search-results\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftBaseSearchResults$1);\n }\n break;\n case \"searchcraft-base-search-result\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"searchcraft-error-message\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\n\nconst SearchcraftBaseSearchResults = SearchcraftBaseSearchResults$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftBaseSearchResults, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-base-search-results.js.map","var classnames = {exports: {}};\n\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n\n(function (module) {\n/* global define */\n\n(function () {\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n}(classnames));\n\nconst classNames = classnames.exports;\n\nexport { classNames as c };\n\n//# sourceMappingURL=p-5cdc6210.js.map","import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-e4846fa2.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftButtonModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-button{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-bold-font-size);font-weight:var(--sc-body-bold-font-weight);line-height:var(--sc-body-bold-line-height);border-radius:8px;display:flex;padding:12px 20px;position:relative;background-color:var(--sc-surface-brand-primary);border:1px solid var(--sc-border-primary);color:var(--sc-content-brand-on-primary)}.searchcraft-button:hover{cursor:pointer;background-color:var(--sc-surface-brand-primary-hover)}.searchcraft-button:focus{outline:2px solid var(--sc-surface-brand-primary)}.buttonLabel{position:relative}\";\nconst SearchcraftButtonStyle0 = searchcraftButtonModuleCss;\n\nconst SearchcraftButton = /*@__PURE__*/ proxyCustomElement(class SearchcraftButton extends H {\n constructor() {\n super();\n this.__registerHost();\n this.buttonClick = createEvent(this, \"buttonClick\", 7);\n this.handleClick = () => {\n this.buttonClick.emit();\n };\n this.iconElement = undefined;\n this.iconOnly = false;\n this.iconPosition = 'left';\n this.label = 'Search';\n this.isRequesting = false;\n }\n render() {\n return (h(Fragment, { key: '8ea823d757ceca459ef80affa8dfdf7e96076c32' }, this.iconOnly ? (h(\"button\", { class: classNames('searchcraft-button'), onClick: this.handleClick, type: 'submit' }, this.isRequesting ? (h(\"searchcraft-spinner-dark\", null)) : (this.iconElement))) : (h(\"button\", { class: classNames('searchcraft-button'), onClick: this.handleClick, type: 'submit' }, this.iconPosition === 'left' && this.iconElement, h(\"span\", { class: classNames('buttonLabel', 'searchcraft-button-label') }, this.label)))));\n }\n static get style() { return SearchcraftButtonStyle0; }\n}, [0, \"searchcraft-button\", {\n \"iconElement\": [16],\n \"iconOnly\": [4, \"icon-only\"],\n \"iconPosition\": [1, \"icon-position\"],\n \"label\": [1],\n \"isRequesting\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-button\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-button\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftButton);\n }\n break;\n } });\n}\n\nexport { SearchcraftButton as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-9cb3d38b.js.map","import { S as SearchcraftButton$1, d as defineCustomElement$1 } from './p-9cb3d38b.js';\n\nconst SearchcraftButton = SearchcraftButton$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftButton, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-button.js.map","import { S as SearchcraftErrorMessage$1, d as defineCustomElement$1 } from './p-16983367.js';\n\nconst SearchcraftErrorMessage = SearchcraftErrorMessage$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftErrorMessage, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-error-message.js.map","import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-e4846fa2.js';\nimport { c as classNames } from './p-5cdc6210.js';\nimport { u as useSearchcraftStore } from './p-ad4ebde0.js';\nimport { m as mergeFacetRoots, r as removeSubstringMatches } from './p-f308d05d.js';\n\nconst searchcraftFacetListModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.filtersListContainer{width:100%}.filterCheckboxLabel{align-items:center;color:var(--sc-content-primary);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:14px;position:relative;-webkit-font-smoothing:antialiased}.filterCheckboxLabel input[type=checkbox]{align-items:center;appearance:none;background-color:var(--sc-surface-brand-secondary-hover);border:1px solid var(--sc-surface-disabled);border-radius:8px;cursor:pointer;display:flex;height:24px;justify-content:center;width:24px}.filterCheckboxLabel input[type=checkbox]:focus{outline:2px solid var(--sc-surface-brand-primary)}.filterCheckboxLabel input[type=checkbox]:checked{background-color:var(--sc-surface-brand-primary);position:relative}.filterCheckboxLabel input[type=checkbox]:checked+.checkContainer{display:block}.filterCheckboxLabel input[type=checkbox]:checked+.dashContainer{display:block}.childFilterCheckboxLabel{align-items:center;color:var(--sc-content-primary);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:12px;margin-left:24px;position:relative}.childFilterCheckboxLabel input[type=checkbox]{align-items:center;appearance:none;background-color:var(--sc-surface-brand-secondary-hover);border:1px solid var(--sc-surface-disabled);border-radius:8px;cursor:pointer;display:flex;height:24px;justify-content:center;position:relative;width:24px;-webkit-font-smoothing:antialiased}.childFilterCheckboxLabel input[type=checkbox]:focus{outline:2px solid var(--sc-surface-brand-primary)}.childFilterCheckboxLabel input[type=checkbox]:checked{background-color:var(--sc-surface-brand-primary);position:relative}.childFilterCheckboxLabel input[type=checkbox]:checked+.checkContainer{display:block}.childFilterCheckboxLabel input[type=checkbox]:checked+.dashContainer{display:block}.checkContainer{display:none;height:16px;width:16px;position:absolute;top:9px;left:8px}.dashContainer{display:none;height:3px;width:14px;position:absolute;top:3px;left:9px}.searchcraft-facet-message{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);color:var(--sc-content-disabled);text-align:center}\";\nconst SearchcraftFacetListStyle0 = searchcraftFacetListModuleCss;\n\nconst SearchcraftFacetList = /*@__PURE__*/ proxyCustomElement(class SearchcraftFacetList extends H {\n constructor() {\n super();\n this.__registerHost();\n this.facetSelectionUpdated = createEvent(this, \"facetSelectionUpdated\", 7);\n this.searchStore = useSearchcraftStore.getState();\n this.formatLabel = (facetChild) => {\n const label = facetChild.path.replace(/^\\//, '');\n const count = facetChild.count;\n return `${label.replace(/-/g, ' ').replace(/\\b\\w/g, (char) => char.toUpperCase())} (${count})`;\n };\n this.formatSubLabel = (facetChild, facetChildAncestor) => {\n const facetChildPath = facetChild.path.substring(facetChildAncestor.path.length);\n const label = facetChildPath.replace(/^\\//, '');\n const count = facetChild.count;\n return `${label.replace(/-/g, ' ').replace(/\\b\\w/g, (char) => char.toUpperCase())} (${count})`;\n };\n this.fieldName = undefined;\n this.baseFacetRoot = undefined;\n this.facetRoot = undefined;\n this.selectedPaths = {};\n this.lastTimeTaken = undefined;\n this.hasNewSearchTerm = false;\n this.lastQuery = undefined;\n this.lastSearchMode = undefined;\n this.lastSortType = undefined;\n this.unsubscribe = undefined;\n }\n handleStateUpdate(state) {\n var _a, _b;\n const facetPrime = (_a = state.searchResults) === null || _a === void 0 ? void 0 : _a.data.facets;\n const timeTaken = (_b = state.searchResults) === null || _b === void 0 ? void 0 : _b.data.time_taken;\n /** Things to do when the state's search term has changed, but before the response received */\n if (state.query !== this.lastQuery ||\n state.searchMode !== this.lastSearchMode ||\n state.sortType !== this.lastSortType) {\n this.selectedPaths = {};\n this.hasNewSearchTerm = true;\n }\n /** Things to do when a new response with a new facet prime has been received */\n if (timeTaken !== this.lastTimeTaken && facetPrime) {\n this.facetRoot = undefined;\n const incomingFacetRoot = facetPrime.find((facet) => this.fieldName === Object.keys(facet)[0]);\n /** Data is from a new search term: completely override our facets */\n if (this.hasNewSearchTerm) {\n this.baseFacetRoot = incomingFacetRoot;\n this.facetRoot = incomingFacetRoot;\n this.hasNewSearchTerm = false;\n }\n else if (this.baseFacetRoot) {\n /** Data is from an existing search term, merge the facets together */\n this.facetRoot = mergeFacetRoots(this.fieldName, this.baseFacetRoot, incomingFacetRoot);\n }\n }\n this.lastQuery = state.query;\n this.lastSearchMode = state.searchMode;\n this.lastSortType = state.sortType;\n this.lastTimeTaken = timeTaken;\n }\n connectedCallback() {\n this.handleStateUpdate(this.searchStore);\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.handleStateUpdate(state);\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n handleCheckboxChange(path) {\n const isCheckboxChecked = !this.selectedPaths[path];\n if (isCheckboxChecked) {\n /**\n * Checkbox Checked: Add to the selectedPaths record\n * Uses spread operator here so UI updates.\n */\n this.selectedPaths = Object.assign(Object.assign({}, this.selectedPaths), { [path]: true });\n }\n else {\n /**\n * Checkbox Uncheck: Remove any paths and sub-paths\n */\n const updatedPaths = Object.keys(this.selectedPaths).filter((testPath) => !testPath.includes(path));\n this.selectedPaths = updatedPaths.reduce((acc, str) => {\n acc[str] = true;\n return acc;\n }, {});\n }\n /**\n * Emit the paths array, with parent paths removed.\n */\n const paths = Object.keys(this.selectedPaths).filter((path) => this.selectedPaths[path]);\n const pathsWithParentPathsRemoved = removeSubstringMatches(paths);\n this.facetSelectionUpdated.emit({ paths: pathsWithParentPathsRemoved });\n }\n render() {\n var _a;\n const firstFacet = (_a = this.facetRoot) === null || _a === void 0 ? void 0 : _a[this.fieldName];\n return (h(\"div\", { key: 'c7b6a2c7bbb48d0835745b4bcae43a283ade4139', class: classNames('filtersListContainer', 'searchcraft-filters-list-container') }, !firstFacet && (h(\"p\", { key: 'a682f57ff51fdcfec670744ef84930c90c9b9c20', class: 'searchcraft-facet-message' }, \"Enter a search to view facets.\")), firstFacet === null || firstFacet === void 0 ? void 0 :\n firstFacet.map((facetChild) => {\n var _a;\n const isChildSelected = facetChild.children\n ? (_a = facetChild.children) === null || _a === void 0 ? void 0 : _a.some((child) => this.selectedPaths[child.path])\n : false;\n return (h(\"div\", { key: facetChild.path, class: classNames('searchcraft-filters-list-item') }, h(\"label\", { class: classNames('filterCheckboxLabel', 'searchcraft-filters-list-checkbox-label') }, h(\"input\", { checked: this.selectedPaths[facetChild.path], onChange: (_event) => this.handleCheckboxChange(facetChild.path), type: 'checkbox' }), isChildSelected ? (h(\"div\", { class: classNames('dashContainer', 'searchcraft-filter-list-dash-container') }, h(\"searchcraft-dash-icon\", null))) : (h(\"div\", { class: classNames('checkContainer', 'searchcraft-filter-list-check-container') }, h(\"searchcraft-check-icon\", null))), this.formatLabel(facetChild)), facetChild.children && facetChild.children.length > 0 && (h(Fragment, null, facetChild.children.map((grandchild) => (h(\"label\", { key: grandchild.path, class: classNames('childFilterCheckboxLabel', 'searchcraft-child-filter-checkbox-label'), style: {\n display: this.selectedPaths[facetChild.path]\n ? 'flex'\n : 'none',\n } }, h(\"input\", { checked: this.selectedPaths[grandchild.path], onChange: (_event) => {\n this.handleCheckboxChange(grandchild.path);\n }, type: 'checkbox' }), h(\"div\", { class: classNames('checkContainer', 'searchcraft-filter-list-check-container') }, h(\"searchcraft-check-icon\", null)), this.formatSubLabel(grandchild, facetChild))))))));\n })));\n }\n static get style() { return SearchcraftFacetListStyle0; }\n}, [0, \"searchcraft-facet-list\", {\n \"fieldName\": [1, \"field-name\"],\n \"baseFacetRoot\": [32],\n \"facetRoot\": [32],\n \"selectedPaths\": [32],\n \"lastTimeTaken\": [32],\n \"hasNewSearchTerm\": [32],\n \"lastQuery\": [32],\n \"lastSearchMode\": [32],\n \"lastSortType\": [32],\n \"unsubscribe\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-facet-list\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-facet-list\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftFacetList);\n }\n break;\n } });\n}\n\nexport { SearchcraftFacetList as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-42bfef5f.js.map","import { S as SearchcraftFacetList$1, d as defineCustomElement$1 } from './p-42bfef5f.js';\n\nconst SearchcraftFacetList = SearchcraftFacetList$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftFacetList, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-facet-list.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { a as getMillis } from './p-f308d05d.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftSliderModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-slider-container{align-items:center;display:flex;flex-direction:column;gap:10px;width:100%}.searchcraft-slider-range-container{align-items:center;background-color:var(--sc-surface-disabled);border-radius:999px;display:flex;position:relative;height:4px;width:100%}.searchcraft-slider-range-container::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-active-range{background-color:var(--sc-surface-brand-primary);border-radius:2px;height:4px;position:absolute;top:50%;transform:translateY(-50%);z-index:0}.searchcraft-slider-range-container .searchcraft-slider-active-range::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-active-range::-moz-range-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-input{appearance:none;background:transparent;border-radius:2px;height:4px;margin:0;outline:none;pointer-events:none;position:absolute;width:100%;-webkit-appearance:none}.searchcraft-slider-range-container .searchcraft-slider-input::-webkit-slider-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px;-webkit-appearance:none}.searchcraft-slider-range-container .searchcraft-slider-input::-moz-range-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px}.searchcraft-slider-label-container{color:var(--sc-content-primary);display:flex;font-family:\\\"Source Sans Pro\\\", sans-serif;font-size:15px;font-weight:600;justify-content:space-between;margin-top:10px;width:100%}.searchcraft-slider-label{min-width:30px;text-align:center}\";\nconst SearchcraftSliderStyle0 = searchcraftSliderModuleCss;\n\nconst SearchcraftSlider = /*@__PURE__*/ proxyCustomElement(class SearchcraftSlider extends H {\n constructor() {\n super();\n this.__registerHost();\n this.rangeChanged = createEvent(this, \"rangeChanged\", 7);\n this.emitUpdate = async () => {\n this.rangeChanged.emit({\n startValue: this.startValue,\n endValue: this.endValue,\n });\n };\n this.handleStartValueChange = (event) => {\n const inputElement = event.target;\n const value = Number.parseInt(inputElement.value, 10);\n this.lastFocusedHandle = 'min';\n if (value <= this.endValue) {\n this.startValue = value;\n this.emitUpdate();\n }\n else {\n this.startValue = this.endValue;\n inputElement.value = `${this.endValue}`;\n }\n };\n this.handleEndValueChange = (event) => {\n const inputElement = event.target;\n const value = Number.parseInt(inputElement.value, 10);\n this.lastFocusedHandle = 'max';\n if (value >= this.startValue) {\n this.endValue = value;\n this.emitUpdate();\n }\n else {\n this.endValue = this.startValue;\n inputElement.value = `${this.startValue}`;\n }\n };\n this.max = 100;\n this.min = 0;\n this.granularity = getMillis('month');\n this.dataType = 'number';\n this.endValue = this.max;\n this.startValue = this.min;\n this.lastFocusedHandle = 'max';\n }\n componentDidLoad() {\n this.startValue = this.min;\n this.endValue = this.max;\n }\n render() {\n const rangeMin = this.min;\n const rangeMax = this.max;\n const startPercent = ((this.startValue - rangeMin) / (rangeMax - rangeMin)) * 100;\n const endPercent = ((this.endValue - rangeMin) / (rangeMax - rangeMin)) * 100;\n const startLabel = this.dataType === 'number'\n ? this.startValue\n : new Date(this.startValue).getFullYear();\n const endLabel = this.dataType === 'number'\n ? this.endValue\n : new Date(this.endValue).getFullYear();\n return (h(\"div\", { key: '51de4996df052bf178590aeb4c56a67ec57c92e5', class: 'searchcraft-slider-container' }, h(\"div\", { key: '634bead69c3fbc462cda3dd65dd4ba6a398c6913', class: 'searchcraft-slider-range-container' }, h(\"div\", { key: '1b7a0b63ef208884f24b9f56b48a72bca320c71b', class: 'searchcraft-slider-active-range', style: {\n left: `${startPercent}%`,\n width: `${endPercent - startPercent}%`,\n } }), h(\"input\", { key: '29313d6909d5ff646d7f3810163f5f01fe09cc36', class: classNames('searchcraft-slider-input', 'searchcraft-slider-input-min-handle'), max: this.max, min: this.min, onInput: this.handleStartValueChange.bind(this), step: this.granularity, style: { zIndex: this.lastFocusedHandle === 'min' ? '2' : '1' }, type: 'range', value: this.startValue }), h(\"input\", { key: '1e95e93a028c7bc204e2f3894bfe8b77ac6c9d28', class: classNames('searchcraft-slider-input', 'searchcraft-slider-input-max-handle'), max: this.max, min: this.min, onInput: this.handleEndValueChange.bind(this), step: this.granularity, style: { zIndex: this.lastFocusedHandle === 'max' ? '2' : '1' }, type: 'range', value: this.endValue })), h(\"div\", { key: 'c1560933a38f3153ac1dbaece041ef75df479dc4', class: 'searchcraft-slider-label-container' }, h(\"span\", { key: '638f72b8c081a324cc3ecb833163cd036a6ab90c', class: 'searchcraft-slider-label' }, startLabel), h(\"span\", { key: '011968bdf897de9960fe2214b4adceee4d79b6d0', class: 'searchcraft-slider-label' }, endLabel))));\n }\n static get style() { return SearchcraftSliderStyle0; }\n}, [0, \"searchcraft-slider\", {\n \"max\": [2],\n \"min\": [2],\n \"granularity\": [2],\n \"dataType\": [1, \"data-type\"],\n \"endValue\": [32],\n \"startValue\": [32],\n \"lastFocusedHandle\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-slider\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-slider\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftSlider);\n }\n break;\n } });\n}\n\nexport { SearchcraftSlider as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-5380505b.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-ad4ebde0.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftToggleButtonModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-toggle-button-container{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.searchcraft-toggle-button-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-neutral-primary)}.searchcraft-toggle-button-sub-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);margin:0;color:var(--sc-content-neutral-secondary)}.searchcraft-toggle-button-background{transition:background-color 0.2s;background:var(--sc-surface-disabled);border:none;border-radius:16px;cursor:pointer;height:26px;position:relative;width:44px;flex-shrink:0}.searchcraft-toggle-button-background.active{background:var(--sc-surface-brand-primary);box-shadow:0px 0px 0px 1px rgba(0, 0, 0, 0.05)}.searchcraft-toggle-button-handle{background:var(--sc-surface-neutral-light);border-radius:50%;height:18px;left:4px;position:absolute;top:calc(50% - 9px);transition:transform 0.3s ease;width:18px}.searchcraft-toggle-button-handle.active{transform:translateX(16px)}\";\nconst SearchcraftToggleButtonStyle0 = searchcraftToggleButtonModuleCss;\n\nconst SearchcraftToggleButton = /*@__PURE__*/ proxyCustomElement(class SearchcraftToggleButton extends H {\n constructor() {\n super();\n this.__registerHost();\n this.toggleUpdated = createEvent(this, \"toggleUpdated\", 7);\n this.handleToggle = async () => {\n this.isActive = !this.isActive;\n this.toggleUpdated.emit(this.isActive);\n };\n this.label = 'Toggle';\n this.subLabel = undefined;\n this.isActive = false;\n this.unsubscribe = undefined;\n this.lastQuery = undefined;\n }\n connectedCallback() {\n /** When the query changes, sets toggle button state back to inactive. */\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (state.query !== this.lastQuery && state.query.trim().length === 0) {\n this.isActive = false;\n }\n this.lastQuery = state.query;\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n render() {\n return (h(\"div\", { key: '90a7816e1e02125939f3f05a9dbfd94a5f161959', class: 'searchcraft-toggle-button-container' }, h(\"div\", { key: '6a3e570ba3d00ccc315cd092d5b1c618c0b23ea2' }, h(\"p\", { key: '41d1d0ab4557c856bb0ed12af8a4b0c81203d6d5', class: 'searchcraft-toggle-button-label' }, this.label), this.subLabel && (h(\"p\", { key: 'ec145b4f655bacec600ac9aa137662f7fed9b7d2', class: 'searchcraft-toggle-button-sub-label' }, this.subLabel))), h(\"button\", { key: '226599543806881f306630708eee24e922ff592e', class: classNames('searchcraft-toggle-button-background', {\n active: this.isActive,\n }), onClick: this.handleToggle, type: 'button' }, h(\"div\", { key: 'b83e81e7820705952cfc8c911223e67dfbc0f98d', class: classNames('searchcraft-toggle-button-handle', {\n active: this.isActive,\n }) }))));\n }\n static get style() { return SearchcraftToggleButtonStyle0; }\n}, [0, \"searchcraft-toggle-button\", {\n \"label\": [1],\n \"subLabel\": [1, \"sub-label\"],\n \"isActive\": [32],\n \"unsubscribe\": [32],\n \"lastQuery\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-toggle-button\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-toggle-button\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftToggleButton);\n }\n break;\n } });\n}\n\nexport { SearchcraftToggleButton as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-a23d2994.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-ad4ebde0.js';\nimport { a as getMillis } from './p-f308d05d.js';\nimport { d as defineCustomElement$4 } from './p-42bfef5f.js';\nimport { d as defineCustomElement$3 } from './p-5380505b.js';\nimport { d as defineCustomElement$2 } from './p-a23d2994.js';\n\nconst searchcraftFilterPanelModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-filter-panel{display:flex;flex-direction:column;gap:16px}.searchcraft-filter-panel-section{display:flex;flex-direction:column;gap:8px}.searchcraft-filter-panel-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-bold-font-size);font-weight:var(--sc-body-small-bold-font-weight);line-height:var(--sc-body-small-bold-line-height)}\";\nconst SearchcraftFilterPanelStyle0 = searchcraftFilterPanelModuleCss;\n\nconst SearchcraftFilterPanel$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftFilterPanel extends H {\n constructor() {\n super();\n this.__registerHost();\n this.searchStore = useSearchcraftStore.getState();\n this.items = [];\n this.unsubscribe = undefined;\n this.lastQuery = undefined;\n }\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.lastQuery = state.query || '';\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n handleDateRangeChanged(fieldName, min, max) {\n const start = new Date(min);\n const end = new Date(max);\n this.searchStore.addRangeValueForIndexField({\n fieldName,\n value: `${fieldName}:[${start.toISOString()} TO ${end.toISOString()}]`,\n });\n this.searchStore.search();\n }\n handleNumericRangeChanged(fieldName, min, max) {\n this.searchStore.addRangeValueForIndexField({\n fieldName,\n value: `${fieldName}:[${min} TO ${max}]`,\n });\n this.searchStore.search();\n }\n handleFacetSelectionUpdated(fieldName, paths) {\n if (paths.length > 0) {\n this.searchStore.addFacetPathsForIndexField({\n fieldName,\n value: `${fieldName}: IN [${paths.join(' ')}]`,\n });\n }\n else {\n this.searchStore.removeFacetPathsForIndexField(fieldName);\n }\n this.searchStore.search();\n }\n handleExactMatchToggleUpdated(isActive) {\n this.searchStore.setSearchMode(isActive ? 'normal' : 'fuzzy');\n this.searchStore.search();\n }\n handleMostRecentToggleUpdated(isActive) {\n this.searchStore.setSortType(isActive ? 'desc' : 'asc');\n this.searchStore.search();\n }\n /**\n * Iterate through `items` and render them based on `type`\n */\n render() {\n return (h(\"div\", { key: '45bcbe509465b8fe3720f3a535902906acfac2ea', class: 'searchcraft-filter-panel' }, this.items.map((filterItem) => {\n switch (filterItem.type) {\n case 'dateRange': {\n const item = filterItem;\n const min = new Date(item.options.minDate).getTime();\n const max = new Date(item.options.maxDate).getTime();\n const granularityValue = getMillis(item.options.granularity);\n // return date range slider\n return (h(\"div\", { class: 'searchcraft-filter-panel-section' }, h(\"p\", { class: 'searchcraft-filter-panel-label' }, filterItem.label), h(\"searchcraft-slider\", { min: min, max: max, granularity: granularityValue, dataType: 'date', onRangeChanged: (event) => {\n this.handleDateRangeChanged(item.fieldName, event.detail.startValue, event.detail.endValue);\n } })));\n }\n case 'numericRange': {\n const item = filterItem;\n // return date range slider\n return (h(\"div\", { class: 'searchcraft-filter-panel-section' }, h(\"p\", { class: 'searchcraft-filter-panel-label' }, filterItem.label), h(\"searchcraft-slider\", { min: item.options.min, max: item.options.max, granularity: item.options.granularity, onRangeChanged: (event) => {\n this.handleNumericRangeChanged(item.fieldName, event.detail.startValue, event.detail.endValue);\n } })));\n }\n case 'facets': {\n const item = filterItem;\n // return \"filters-list\"\n return (h(\"div\", { class: 'searchcraft-filter-panel-section' }, h(\"p\", { class: 'searchcraft-filter-panel-label' }, filterItem.label), h(\"searchcraft-facet-list\", { fieldName: item.fieldName, onFacetSelectionUpdated: (event) => {\n this.handleFacetSelectionUpdated(item.fieldName, event.detail.paths);\n } })));\n }\n case 'exactMatchToggle': {\n const item = filterItem;\n return (h(\"searchcraft-toggle-button\", { label: item.label, subLabel: item.options.subLabel, onToggleUpdated: (event) => {\n this.handleExactMatchToggleUpdated(event.detail);\n } }));\n }\n case 'mostRecentToggle': {\n const item = filterItem;\n return (h(\"searchcraft-toggle-button\", { label: item.label, subLabel: item.options.subLabel, onToggleUpdated: (event) => {\n this.handleMostRecentToggleUpdated(event.detail);\n } }));\n }\n }\n })));\n }\n static get style() { return SearchcraftFilterPanelStyle0; }\n}, [0, \"searchcraft-filter-panel\", {\n \"items\": [16],\n \"unsubscribe\": [32],\n \"lastQuery\": [32]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-filter-panel\", \"searchcraft-facet-list\", \"searchcraft-slider\", \"searchcraft-toggle-button\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-filter-panel\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftFilterPanel$1);\n }\n break;\n case \"searchcraft-facet-list\":\n if (!customElements.get(tagName)) {\n defineCustomElement$4();\n }\n break;\n case \"searchcraft-slider\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"searchcraft-toggle-button\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\n\nconst SearchcraftFilterPanel = SearchcraftFilterPanel$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftFilterPanel, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-filter-panel.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\nimport { c as classNames } from './p-5cdc6210.js';\n\nconst searchcraftInputLabelModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-input-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-bold-font-size);font-weight:var(--sc-body-small-bold-font-weight);line-height:var(--sc-body-small-bold-line-height);color:var(--sc-content-neutral-primary);margin-top:4px;margin-bottom:4px}\";\nconst SearchcraftInputLabelStyle0 = searchcraftInputLabelModuleCss;\n\nconst SearchcraftInputLabel = /*@__PURE__*/ proxyCustomElement(class SearchcraftInputLabel extends H {\n constructor() {\n super();\n this.__registerHost();\n this.inputLabelClassName = '';\n this.label = undefined;\n }\n render() {\n if (!this.label) {\n return null;\n }\n return (h(\"label\", { class: classNames('searchcraft-input-label', this.inputLabelClassName), htmlFor: 'searchcraft-input-id' }, this.label));\n }\n static get style() { return SearchcraftInputLabelStyle0; }\n}, [0, \"searchcraft-input-label\", {\n \"inputLabelClassName\": [1, \"input-label-class-name\"],\n \"label\": [1]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-input-label\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-input-label\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftInputLabel);\n }\n break;\n } });\n}\n\nexport { SearchcraftInputLabel as S, defineCustomElement as d };\n\n//# sourceMappingURL=p-bd5fede3.js.map","import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore, i as ie } from './p-ad4ebde0.js';\nimport { p as parseCustomStyles } from './p-f308d05d.js';\nimport { c as classNames } from './p-5cdc6210.js';\nimport { d as defineCustomElement$4 } from './p-9cb3d38b.js';\nimport { d as defineCustomElement$3 } from './p-16983367.js';\nimport { d as defineCustomElement$2 } from './p-bd5fede3.js';\n\nconst name = \"@searchcraft/javascript-sdk\";\nconst version = \"0.5.2\";\nconst description = \"Searchcraft Javascript SDK\";\nconst author = \"Searchcraft\";\nconst license = \"Apache-2.0\";\nconst main = \"dist/index.cjs.js\";\nconst module = \"dist/index.js\";\nconst types = \"dist/types/index.d.ts\";\nconst collection = \"dist/collection/collection-manifest.json\";\nconst unpkg = \"dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js\";\nconst exports = {\n\t\".\": {\n\t\t\"import\": \"./dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js\",\n\t\trequire: \"./dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.cjs.js\",\n\t\ttypes: \"./dist/types/index.d.ts\"\n\t},\n\t\"./dist/*\": {\n\t\t\"import\": \"./dist/*\",\n\t\ttypes: \"./dist/*\"\n\t},\n\t\"./components\": {\n\t\t\"import\": \"./dist/components/index.js\",\n\t\ttypes: \"./dist/components/index.d.ts\"\n\t},\n\t\"./loader\": {\n\t\t\"import\": \"./dist/loader/index.js\",\n\t\trequire: \"./dist/loader/index.cjs\",\n\t\ttypes: \"./dist/loader/index.d.ts\"\n\t}\n};\nconst repository = {\n\ttype: \"git\",\n\turl: \"https://bitbucket.org/madebychalk/searchcraft-javascript-sdks/\"\n};\nconst files = [\n\t\"dist/\"\n];\nconst scripts = {\n\tbuild: \"stencil build\",\n\tdev: \"stencil build --dev --watch\",\n\ttest: \"stencil test --spec --e2e\",\n\t\"test.watch\": \"stencil test --spec --e2e --watchAll\",\n\tgenerate: \"stencil generate\"\n};\nconst dependencies = {\n\tclassnames: \"^2.3.2\"\n};\nconst devDependencies = {\n\t\"@searchcraft/core\": \"*\",\n\t\"@searchcraft/javascript-sdk\": \"*\",\n\t\"@stencil/core\": \"^4.7.0\",\n\t\"@stencil/react-output-target\": \"^0.8.2\",\n\t\"@stencil/sass\": \"^3.0.12\",\n\t\"@types/node\": \"^16.18.11\",\n\tzustand: \"^5.0.1\"\n};\nconst packageJson = {\n\tname: name,\n\t\"private\": false,\n\tversion: version,\n\tdescription: description,\n\tauthor: author,\n\tlicense: license,\n\tmain: main,\n\tmodule: module,\n\ttypes: types,\n\tcollection: collection,\n\t\"collection:main\": \"dist/collection/index.js\",\n\tunpkg: unpkg,\n\texports: exports,\n\trepository: repository,\n\tfiles: files,\n\tscripts: scripts,\n\tdependencies: dependencies,\n\tdevDependencies: devDependencies\n};\n\nconst searchcraftInputFormModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-input-wrapper{position:relative;display:flex}.searchcraft-input-grid{display:grid;gap:4px 8px}.searchcraft-input-grid-buttonLeft{grid-template-rows:repeat(3, auto);grid-template-columns:auto 1fr}.searchcraft-input-grid-buttonLeft .searchcraft-input-button-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-label-wrapper{grid-column:2/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-error-wrapper{grid-column:2/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonRight{grid-template-rows:repeat(3, auto);grid-template-columns:1fr auto}.searchcraft-input-grid-buttonRight .searchcraft-input-button-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-label-wrapper{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-error-wrapper{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonNone{grid-template-rows:repeat(3, auto);grid-template-columns:auto}.searchcraft-input-grid-buttonNone .searchcraft-input-button-wrapper{display:none}.searchcraft-input-grid-buttonNone .searchcraft-input-label-wrapper{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonNone .searchcraft-input-error-wrapper{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonNone .searchcraft-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);background-color:var(--sc-surface-neutral-secondary);border:none;border-radius:var(--sc-input-border-radius);color:var(--sc-content-neutral-primary);outline:none;padding-left:var(--sc-input-padding-left);padding-right:var(--sc-input-padding-right);padding-top:12px;padding-bottom:12px;flex:1}.searchcraft-input::placeholder{color:var(--sc-content-disabled)}.searchcraft-input:focus{outline:var(--sc-border-brand) solid 2px}.searchcraft-input:focus::placeholder{opacity:0}.searchcraft-input.error{color:var(--sc-content-danger);outline:var(--sc-border-danger) solid 2px}.searchcraft-input.error:focus{outline:var(--sc-border-danger) solid 2px}.searchcraft-input-search-icon-wrapper{align-items:center;justify-content:center;display:flex;position:absolute;pointer-events:none;bottom:0;left:0;top:0;width:var(--sc-input-padding-left)}.searchcraft-input-search-icon{pointer-events:none;width:var(--sc-input-search-icon-size);height:var(--sc-input-search-icon-size)}.searchcraft-input-clear-button{all:unset;align-items:center;justify-content:center;cursor:pointer;display:flex;position:absolute;border:none;outline:none;bottom:0;right:0;top:0;width:var(--sc-input-padding-right)}.searchcraft-input-clear-icon{width:var(--sc-input-clear-icon-size);height:var(--sc-input-clear-icon-size)}\";\nconst SearchcraftInputFormStyle0 = searchcraftInputFormModuleCss;\n\nconst SearchcraftInput = /*@__PURE__*/ proxyCustomElement(class SearchcraftInput extends H {\n constructor() {\n super();\n this.__registerHost();\n this.inputCleared = createEvent(this, \"inputCleared\", 7);\n this.noResultsReceived = createEvent(this, \"noResultsReceived\", 7);\n this.querySubmit = createEvent(this, \"querySubmit\", 7);\n this.inputFocus = createEvent(this, \"inputFocus\", 7);\n this.inputBlur = createEvent(this, \"inputBlur\", 7);\n this.debounceTimeout = null;\n this.searchStore = useSearchcraftStore.getState();\n this.handleOnInput = (event) => {\n const input = event.target;\n this.inputValue = input.value;\n if (input.value.trim() === '') {\n this.inputCleared.emit();\n return;\n }\n if (!this.autoSearch) {\n return;\n }\n if (this.debounceDelay > 0) {\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.debounceTimeout = setTimeout(() => this.performSearch(input.value), this.debounceDelay);\n }\n else {\n this.performSearch(input.value);\n }\n };\n this.performSearch = async (value) => {\n if (value === useSearchcraftStore.getState().query) {\n return;\n }\n this.querySubmit.emit(value);\n this.searchTerm = value.trim();\n this.error = false;\n this.searchStore.setQuery(this.searchTerm);\n try {\n await this.searchStore.search();\n }\n catch (error) {\n this.error = true;\n this.inputCleared.emit();\n }\n };\n this.handleClearInput = () => {\n this.inputValue = '';\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.searchTerm = '';\n this.searchStore.setQuery('');\n this.searchStore.setSearchResults(null);\n this.error = false;\n if (this.inputCleared) {\n this.inputCleared.emit();\n }\n };\n this.handleFormSubmit = async (event) => {\n event.preventDefault();\n await this.performSearch(this.searchTerm);\n };\n this.config = undefined;\n this.autoSearch = true;\n this.buttonPlacement = 'none';\n this.buttonLabel = undefined;\n this.inputLabel = undefined;\n this.customStyles = {};\n this.placeholderValue = 'Enter Search';\n this.searchTerm = '';\n this.debounceDelay = 0;\n this.inputValue = this.searchTerm;\n this.error = false;\n this.isSearchcraftInitialized = false;\n }\n init() {\n if (this.config && !this.isSearchcraftInitialized) {\n const searchcraft = new ie(this.config, {\n sdkName: packageJson.name,\n sdkVersion: packageJson.version,\n });\n this.searchStore.initialize(searchcraft, true);\n this.isSearchcraftInitialized = true;\n }\n }\n componentDidLoad() {\n this.init();\n }\n onConfigChange() {\n this.init();\n }\n render() {\n const validatedCustomStyles = parseCustomStyles(this.customStyles);\n const isShowingClearButton = this.inputValue.length > 0;\n const inputGridClassNames = classNames('searchcraft-input-grid', {\n 'searchcraft-input-grid-buttonLeft': this.buttonPlacement === 'left',\n 'searchcraft-input-grid-buttonRight': this.buttonPlacement === 'right',\n 'searchcraft-input-grid-buttonNone': this.buttonPlacement === 'none',\n });\n return (h(\"form\", { key: '7f224a10ab80d70660c9db97be5d68830932570b', class: 'searchcraft-input-form', onSubmit: this.handleFormSubmit }, h(\"div\", { key: '6822a21a43e5be992b11ddb6c86370ddd68e1475', class: inputGridClassNames }, h(\"div\", { key: '6022989ca876ea46de048398a076bc43d5213554', class: 'searchcraft-input-button-wrapper' }, h(\"searchcraft-button\", { key: 'd48b61729ef9a3f19049dfe751aefa22fdc85e9f', onButtonClick: this.handleFormSubmit, label: this.buttonLabel })), h(\"div\", { key: '3465e467cbb965ad813b6c9c726173bb3fe828f2', class: 'searchcraft-input-label-wrapper' }, h(\"searchcraft-input-label\", { key: '1026b7834358c6673a72ef8352830c9b4681020f', label: this.inputLabel })), this.error && (h(\"div\", { key: 'ff0d55cd88e1895f9b0bd4c0afc917127e76afa2', class: 'searchcraft-input-error-wrapper' }, h(\"searchcraft-error-message\", { key: '57fc160411f21f45617e1a3b8677fb4c6e96c0f0', errorMessage: 'Please enter a search query.' }))), h(\"div\", { key: 'b2783bf86177d22d4abedb4420fdb2a1807527ef', class: 'searchcraft-input-wrapper' }, h(\"input\", { key: 'e985da32be58ab3e200866e085b2acd25b54aa31', autoComplete: 'off', class: 'searchcraft-input', onFocus: () => this.inputFocus.emit(), onBlur: () => this.inputBlur.emit(), onInput: (event) => {\n this.handleOnInput(event);\n }, placeholder: this.placeholderValue, style: validatedCustomStyles, type: 'text', value: this.inputValue }), h(\"div\", { key: 'd5277758ae26262f5f3b49e8763add412661e5cf', class: 'searchcraft-input-search-icon-wrapper' }, h(\"svg\", { key: '79792740ea1207fad40786f555c63c4a26ff3fe2', class: 'searchcraft-input-search-icon', viewBox: '0 0 20 20', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', \"aria-labelledby\": 'searchcraft-title' }, h(\"title\", { key: '7a487bdf41babdafb802ebd79c34a6a5da300cd6', id: 'searchcraft-title' }, \"Searchcraft Search Icon Light\"), h(\"path\", { key: '27c442bf412aca373cbc982b3a35a00fe7bb82ed', d: 'M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z', stroke: '#404040', \"stroke-width\": '1.5', \"stroke-linecap\": 'round', \"stroke-linejoin\": 'round' }))), isShowingClearButton && (h(\"button\", { key: '4c4bc21e9e87f4245ac38d7af269aae35876b6b0', type: 'button', class: 'searchcraft-input-clear-button', onClick: this.handleClearInput }, h(\"svg\", { key: '4b82e65987a8a8c296d2b9c279474c29607727e0', class: 'searchcraft-input-clear-icon', viewBox: '0 0 22 22', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', \"aria-labelledby\": 'icon-title' }, h(\"title\", { key: '9d64212798691a2f8c6c9c4f74ceca1d2fe39fd1', id: 'icon-title' }, \"Searchcraft Clear Input Icon Light\"), h(\"path\", { key: '4c6c5b33fbd9ac02661996bb56e0902094e9b140', d: 'M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z', stroke: 'black', \"stroke-width\": '1.5', \"stroke-linecap\": 'round', \"stroke-linejoin\": 'round' }))))))));\n }\n static get watchers() { return {\n \"config\": [\"onConfigChange\"]\n }; }\n static get style() { return SearchcraftInputFormStyle0; }\n}, [0, \"searchcraft-input-form\", {\n \"config\": [16],\n \"autoSearch\": [4, \"auto-search\"],\n \"buttonPlacement\": [1, \"button-placement\"],\n \"buttonLabel\": [1, \"button-label\"],\n \"inputLabel\": [1, \"input-label\"],\n \"customStyles\": [1, \"custom-styles\"],\n \"placeholderValue\": [1, \"placeholder-value\"],\n \"searchTerm\": [1, \"search-term\"],\n \"debounceDelay\": [2, \"debounce-delay\"],\n \"inputValue\": [32],\n \"error\": [32],\n \"isSearchcraftInitialized\": [32]\n }, undefined, {\n \"config\": [\"onConfigChange\"]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-input-form\", \"searchcraft-button\", \"searchcraft-error-message\", \"searchcraft-input-label\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-input-form\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftInput);\n }\n break;\n case \"searchcraft-button\":\n if (!customElements.get(tagName)) {\n defineCustomElement$4();\n }\n break;\n case \"searchcraft-error-message\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"searchcraft-input-label\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\n\nconst SearchcraftInputForm = SearchcraftInput;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftInputForm, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-input-form.js.map","import { S as SearchcraftInputLabel$1, d as defineCustomElement$1 } from './p-bd5fede3.js';\n\nconst SearchcraftInputLabel = SearchcraftInputLabel$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftInputLabel, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-input-label.js.map","import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';\nimport { u as useSearchcraftStore } from './p-ad4ebde0.js';\nimport { f as formatNumberWithCommas } from './p-f308d05d.js';\n\nconst searchcraftResultsInfoModuleCss = \":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-results-info-container{border-bottom:1px solid var(--sc-surface-disabled);display:flex;justify-content:flex-start}.searchcraft-results-info-content{color:var(--sc-content-primary);font-family:var(--sc-font-family);font-size:18px;font-weight:600;line-height:20px;margin:0px 0 8px}@media (max-width: 900px){.searchcraft-results-info-content{margin:0;margin-bottom:8px}}\";\nconst SearchcraftResultsInfoStyle0 = searchcraftResultsInfoModuleCss;\n\nconst SearchcraftResultsInfo$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftResultsInfo extends H {\n constructor() {\n super();\n this.__registerHost();\n this.isRequesting = false;\n this.resultsCount = 0;\n this.responseTime = '';\n this.query = '';\n }\n connectedCallback() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n var _a, _b, _c, _d;\n this.isRequesting = state.isRequesting;\n this.resultsCount = ((_b = (_a = state.searchResults) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.count) || 0;\n this.responseTime = ((((_d = (_c = state.searchResults) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.time_taken) || 0) * 1000).toFixed(2);\n this.query = state.query || '';\n });\n }\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n render() {\n if (!this.query || this.resultsCount === 0) {\n return null;\n }\n const formattedResults = formatNumberWithCommas(this.resultsCount);\n return (h(\"div\", { class: 'searchcraft-results-info-container' }, h(\"p\", { class: 'searchcraft-results-info-content' }, formattedResults, \" results found in \", this.responseTime, \"ms\")));\n }\n static get style() { return SearchcraftResultsInfoStyle0; }\n}, [0, \"searchcraft-results-info\", {\n \"isRequesting\": [32],\n \"resultsCount\": [32],\n \"responseTime\": [32],\n \"query\": [32]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"searchcraft-results-info\"];\n components.forEach(tagName => { switch (tagName) {\n case \"searchcraft-results-info\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, SearchcraftResultsInfo$1);\n }\n break;\n } });\n}\n\nconst SearchcraftResultsInfo = SearchcraftResultsInfo$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftResultsInfo, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-results-info.js.map","import { S as SearchcraftSlider$1, d as defineCustomElement$1 } from './p-5380505b.js';\n\nconst SearchcraftSlider = SearchcraftSlider$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftSlider, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-slider.js.map","import { S as SearchcraftToggleButton$1, d as defineCustomElement$1 } from './p-a23d2994.js';\n\nconst SearchcraftToggleButton = SearchcraftToggleButton$1;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { SearchcraftToggleButton, defineCustomElement };\n\n//# sourceMappingURL=searchcraft-toggle-button.js.map","/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst e=new Set([\"children\",\"localName\",\"ref\",\"style\",\"className\"]),n=new WeakMap,t=(e,t,o,l,a)=>{const s=a?.[t];void 0===s?(e[t]=o,null==o&&t in HTMLElement.prototype&&e.removeAttribute(t)):o!==l&&((e,t,o)=>{let l=n.get(e);void 0===l&&n.set(e,l=new Map);let a=l.get(t);void 0!==o?void 0===a?(l.set(t,a={handleEvent:o}),e.addEventListener(t,a)):a.handleEvent=o:void 0!==a&&(l.delete(t),e.removeEventListener(t,a))})(e,s,o)},o=({react:n,tagName:o,elementClass:l,events:a,displayName:s})=>{const c=new Set(Object.keys(a??{})),r=n.forwardRef(((s,r)=>{const i=n.useRef(new Map),d=n.useRef(null),f={},u={};for(const[n,t]of Object.entries(s))e.has(n)?f[\"className\"===n?\"class\":n]=t:c.has(n)||n in l.prototype?u[n]=t:f[n]=t;return n.useLayoutEffect((()=>{if(null===d.current)return;const e=new Map;for(const n in u)t(d.current,n,s[n],i.current.get(n),a),i.current.delete(n),e.set(n,s[n]);for(const[e,n]of i.current)t(d.current,e,void 0,n,a);i.current=e})),n.useLayoutEffect((()=>{d.current?.removeAttribute(\"defer-hydration\")}),[]),f.suppressHydrationWarning=!0,n.createElement(o,{...f,ref:n.useCallback((e=>{d.current=e,\"function\"==typeof r?r(e):null!==r&&(r.current=e)}),[r])})}));return r.displayName=s??l.name,r};export{o as createComponent};\n//# sourceMappingURL=create-component.js.map\n","import { createComponent as a } from \"@lit/react\";\nconst i = ({\n defineCustomElement: e,\n ...r\n}) => (typeof e < \"u\" && e(), a(r)), p = ({\n hydrateModule: e,\n properties: r,\n tagName: n\n}) => async (t) => {\n const { createComponentForServerSideRendering: o } = await import(\"./ssr.js\");\n return o({\n tagName: n,\n properties: r,\n renderToString: (await e).renderToString\n })(t);\n};\nexport {\n i as createComponent,\n p as createSSRComponent\n};\n","'use client';\n\n/**\n * This file was automatically generated by the Stencil React Output Target.\n * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n/* eslint-disable */\n\nimport { SearchcraftBaseSearchResult as SearchcraftBaseSearchResultElement, defineCustomElement as defineSearchcraftBaseSearchResult } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-base-search-result.js\";\nimport { SearchcraftBaseSearchResults as SearchcraftBaseSearchResultsElement, defineCustomElement as defineSearchcraftBaseSearchResults } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-base-search-results.js\";\nimport { SearchcraftButton as SearchcraftButtonElement, defineCustomElement as defineSearchcraftButton } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-button.js\";\nimport { SearchcraftErrorMessage as SearchcraftErrorMessageElement, defineCustomElement as defineSearchcraftErrorMessage } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-error-message.js\";\nimport { SearchcraftFacetList as SearchcraftFacetListElement, defineCustomElement as defineSearchcraftFacetList } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-facet-list.js\";\nimport { SearchcraftFilterPanel as SearchcraftFilterPanelElement, defineCustomElement as defineSearchcraftFilterPanel } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-filter-panel.js\";\nimport { SearchcraftInputForm as SearchcraftInputFormElement, defineCustomElement as defineSearchcraftInputForm } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-input-form.js\";\nimport { SearchcraftInputLabel as SearchcraftInputLabelElement, defineCustomElement as defineSearchcraftInputLabel } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-input-label.js\";\nimport { SearchcraftPopoverForm as SearchcraftPopoverFormElement, defineCustomElement as defineSearchcraftPopoverForm } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-popover-form.js\";\nimport { SearchcraftPopoverListView as SearchcraftPopoverListViewElement, defineCustomElement as defineSearchcraftPopoverListView } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-popover-list-view.js\";\nimport { SearchcraftPopoverResult as SearchcraftPopoverResultElement, defineCustomElement as defineSearchcraftPopoverResult } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-popover-result.js\";\nimport { SearchcraftResultsInfo as SearchcraftResultsInfoElement, defineCustomElement as defineSearchcraftResultsInfo } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-results-info.js\";\nimport { SearchcraftSlider as SearchcraftSliderElement, defineCustomElement as defineSearchcraftSlider } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-slider.js\";\nimport { SearchcraftToggleButton as SearchcraftToggleButtonElement, defineCustomElement as defineSearchcraftToggleButton } from \"@searchcraft/javascript-sdk/dist/components/searchcraft-toggle-button.js\";\nimport type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';\nimport { createComponent } from '@stencil/react-output-target/runtime';\nimport React from 'react';\n\ntype SearchcraftBaseSearchResultEvents = NonNullable<unknown>;\n\nexport const SearchcraftBaseSearchResult: StencilReactComponent<SearchcraftBaseSearchResultElement, SearchcraftBaseSearchResultEvents> = /*@__PURE__*/ createComponent<SearchcraftBaseSearchResultElement, SearchcraftBaseSearchResultEvents>({\n tagName: 'searchcraft-base-search-result',\n elementClass: SearchcraftBaseSearchResultElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftBaseSearchResultEvents,\n defineCustomElement: defineSearchcraftBaseSearchResult\n});\n\ntype SearchcraftBaseSearchResultsEvents = { onNoResults: EventName<CustomEvent<void>> };\n\nexport const SearchcraftBaseSearchResults: StencilReactComponent<SearchcraftBaseSearchResultsElement, SearchcraftBaseSearchResultsEvents> = /*@__PURE__*/ createComponent<SearchcraftBaseSearchResultsElement, SearchcraftBaseSearchResultsEvents>({\n tagName: 'searchcraft-base-search-results',\n elementClass: SearchcraftBaseSearchResultsElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onNoResults: 'noResults' } as SearchcraftBaseSearchResultsEvents,\n defineCustomElement: defineSearchcraftBaseSearchResults\n});\n\ntype SearchcraftButtonEvents = { onButtonClick: EventName<CustomEvent<void>> };\n\nexport const SearchcraftButton: StencilReactComponent<SearchcraftButtonElement, SearchcraftButtonEvents> = /*@__PURE__*/ createComponent<SearchcraftButtonElement, SearchcraftButtonEvents>({\n tagName: 'searchcraft-button',\n elementClass: SearchcraftButtonElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onButtonClick: 'buttonClick' } as SearchcraftButtonEvents,\n defineCustomElement: defineSearchcraftButton\n});\n\ntype SearchcraftErrorMessageEvents = NonNullable<unknown>;\n\nexport const SearchcraftErrorMessage: StencilReactComponent<SearchcraftErrorMessageElement, SearchcraftErrorMessageEvents> = /*@__PURE__*/ createComponent<SearchcraftErrorMessageElement, SearchcraftErrorMessageEvents>({\n tagName: 'searchcraft-error-message',\n elementClass: SearchcraftErrorMessageElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftErrorMessageEvents,\n defineCustomElement: defineSearchcraftErrorMessage\n});\n\ntype SearchcraftFacetListEvents = { onFacetSelectionUpdated: EventName<CustomEvent<{ paths: string[] }>> };\n\nexport const SearchcraftFacetList: StencilReactComponent<SearchcraftFacetListElement, SearchcraftFacetListEvents> = /*@__PURE__*/ createComponent<SearchcraftFacetListElement, SearchcraftFacetListEvents>({\n tagName: 'searchcraft-facet-list',\n elementClass: SearchcraftFacetListElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onFacetSelectionUpdated: 'facetSelectionUpdated' } as SearchcraftFacetListEvents,\n defineCustomElement: defineSearchcraftFacetList\n});\n\ntype SearchcraftFilterPanelEvents = NonNullable<unknown>;\n\nexport const SearchcraftFilterPanel: StencilReactComponent<SearchcraftFilterPanelElement, SearchcraftFilterPanelEvents> = /*@__PURE__*/ createComponent<SearchcraftFilterPanelElement, SearchcraftFilterPanelEvents>({\n tagName: 'searchcraft-filter-panel',\n elementClass: SearchcraftFilterPanelElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftFilterPanelEvents,\n defineCustomElement: defineSearchcraftFilterPanel\n});\n\ntype SearchcraftInputFormEvents = {\n onInputCleared: EventName<CustomEvent<void>>,\n onNoResultsReceived: EventName<CustomEvent<void>>,\n onQuerySubmit: EventName<CustomEvent<string>>,\n onInputFocus: EventName<CustomEvent<void>>,\n onInputBlur: EventName<CustomEvent<void>>\n};\n\nexport const SearchcraftInputForm: StencilReactComponent<SearchcraftInputFormElement, SearchcraftInputFormEvents> = /*@__PURE__*/ createComponent<SearchcraftInputFormElement, SearchcraftInputFormEvents>({\n tagName: 'searchcraft-input-form',\n elementClass: SearchcraftInputFormElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {\n onInputCleared: 'inputCleared',\n onNoResultsReceived: 'noResultsReceived',\n onQuerySubmit: 'querySubmit',\n onInputFocus: 'inputFocus',\n onInputBlur: 'inputBlur'\n } as SearchcraftInputFormEvents,\n defineCustomElement: defineSearchcraftInputForm\n});\n\ntype SearchcraftInputLabelEvents = NonNullable<unknown>;\n\nexport const SearchcraftInputLabel: StencilReactComponent<SearchcraftInputLabelElement, SearchcraftInputLabelEvents> = /*@__PURE__*/ createComponent<SearchcraftInputLabelElement, SearchcraftInputLabelEvents>({\n tagName: 'searchcraft-input-label',\n elementClass: SearchcraftInputLabelElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftInputLabelEvents,\n defineCustomElement: defineSearchcraftInputLabel\n});\n\ntype SearchcraftPopoverFormEvents = NonNullable<unknown>;\n\nexport const SearchcraftPopoverForm: StencilReactComponent<SearchcraftPopoverFormElement, SearchcraftPopoverFormEvents> = /*@__PURE__*/ createComponent<SearchcraftPopoverFormElement, SearchcraftPopoverFormEvents>({\n tagName: 'searchcraft-popover-form',\n elementClass: SearchcraftPopoverFormElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftPopoverFormEvents,\n defineCustomElement: defineSearchcraftPopoverForm\n});\n\ntype SearchcraftPopoverListViewEvents = NonNullable<unknown>;\n\nexport const SearchcraftPopoverListView: StencilReactComponent<SearchcraftPopoverListViewElement, SearchcraftPopoverListViewEvents> = /*@__PURE__*/ createComponent<SearchcraftPopoverListViewElement, SearchcraftPopoverListViewEvents>({\n tagName: 'searchcraft-popover-list-view',\n elementClass: SearchcraftPopoverListViewElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftPopoverListViewEvents,\n defineCustomElement: defineSearchcraftPopoverListView\n});\n\ntype SearchcraftPopoverResultEvents = NonNullable<unknown>;\n\nexport const SearchcraftPopoverResult: StencilReactComponent<SearchcraftPopoverResultElement, SearchcraftPopoverResultEvents> = /*@__PURE__*/ createComponent<SearchcraftPopoverResultElement, SearchcraftPopoverResultEvents>({\n tagName: 'searchcraft-popover-result',\n elementClass: SearchcraftPopoverResultElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftPopoverResultEvents,\n defineCustomElement: defineSearchcraftPopoverResult\n});\n\ntype SearchcraftResultsInfoEvents = NonNullable<unknown>;\n\nexport const SearchcraftResultsInfo: StencilReactComponent<SearchcraftResultsInfoElement, SearchcraftResultsInfoEvents> = /*@__PURE__*/ createComponent<SearchcraftResultsInfoElement, SearchcraftResultsInfoEvents>({\n tagName: 'searchcraft-results-info',\n elementClass: SearchcraftResultsInfoElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: {} as SearchcraftResultsInfoEvents,\n defineCustomElement: defineSearchcraftResultsInfo\n});\n\ntype SearchcraftSliderEvents = { onRangeChanged: EventName<CustomEvent<{ startValue: number; endValue: number }>> };\n\nexport const SearchcraftSlider: StencilReactComponent<SearchcraftSliderElement, SearchcraftSliderEvents> = /*@__PURE__*/ createComponent<SearchcraftSliderElement, SearchcraftSliderEvents>({\n tagName: 'searchcraft-slider',\n elementClass: SearchcraftSliderElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onRangeChanged: 'rangeChanged' } as SearchcraftSliderEvents,\n defineCustomElement: defineSearchcraftSlider\n});\n\ntype SearchcraftToggleButtonEvents = { onToggleUpdated: EventName<CustomEvent<boolean>> };\n\nexport const SearchcraftToggleButton: StencilReactComponent<SearchcraftToggleButtonElement, SearchcraftToggleButtonEvents> = /*@__PURE__*/ createComponent<SearchcraftToggleButtonElement, SearchcraftToggleButtonEvents>({\n tagName: 'searchcraft-toggle-button',\n elementClass: SearchcraftToggleButtonElement,\n // @ts-ignore - React type of Stencil Output Target may differ from the React version used in the Nuxt.js project, this can be ignored.\n react: React,\n events: { onToggleUpdated: 'toggleUpdated' } as SearchcraftToggleButtonEvents,\n defineCustomElement: defineSearchcraftToggleButton\n});\n","import type { FC } from 'react';\n\nimport { SearchcraftBaseSearchResult as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftBaseSearchResultProps\n extends Components.SearchcraftBaseSearchResult {}\n\nconst SearchcraftBaseSearchResult: FC<SearchcraftBaseSearchResultProps> = (\n props,\n) => <Component {...props} />;\n\nexport { SearchcraftBaseSearchResult };\nexport type { SearchcraftBaseSearchResultProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftBaseSearchResults as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftBaseSearchResultsProps\n extends Components.SearchcraftBaseSearchResults {}\n\nconst SearchcraftBaseSearchResults: FC<SearchcraftBaseSearchResultsProps> = (\n props,\n) => <Component {...props} />;\n\nexport { SearchcraftBaseSearchResults };\nexport type { SearchcraftBaseSearchResultsProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftButton as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftButtonProps extends Components.SearchcraftButton {}\n\nconst SearchcraftButton: FC<SearchcraftButtonProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftButton };\nexport type { SearchcraftButtonProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftErrorMessage as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftErrorMessageProps\n extends Components.SearchcraftErrorMessage {}\n\nconst SearchcraftErrorMessage: FC<SearchcraftErrorMessageProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftErrorMessage };\nexport type { SearchcraftErrorMessageProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftFacetList as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftFacetListProps extends Components.SearchcraftFacetList {}\n\nconst SearchcraftFacetList: FC<SearchcraftFacetListProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftFacetList };\nexport type { SearchcraftFacetListProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftFilterPanel as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftFilterPanelProps\n extends Components.SearchcraftFilterPanel {}\n\nconst SearchcraftFilterPanel: FC<SearchcraftFilterPanelProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftFilterPanel };\nexport type { SearchcraftFilterPanelProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftInputForm as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftInputFormProps extends Components.SearchcraftInputForm {}\n\nconst SearchcraftInputForm: FC<SearchcraftInputFormProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftInputForm };\nexport type { SearchcraftInputFormProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftInputLabel as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftInputLabelProps extends Components.SearchcraftInputLabel {}\n\nconst SearchcraftInputLabel: FC<SearchcraftInputLabelProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftInputLabel };\nexport type { SearchcraftInputLabelProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftResultsInfo as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftResultsInfoProps\n extends Components.SearchcraftResultsInfo {}\n\nconst SearchcraftResultsInfo: FC<SearchcraftResultsInfoProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftResultsInfo };\nexport type { SearchcraftResultsInfoProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftSlider as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftSliderProps extends Components.SearchcraftSlider {}\n\nconst SearchcraftSlider: FC<SearchcraftSliderProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftSlider };\nexport type { SearchcraftSliderProps };\n","import type { FC } from 'react';\n\nimport { SearchcraftToggleButton as Component } from '../stencil-web-components/components';\nimport type { Components } from '@searchcraft/javascript-sdk';\n\ninterface SearchcraftToggleButtonProps\n extends Components.SearchcraftToggleButton {}\n\nconst SearchcraftToggleButton: FC<SearchcraftToggleButtonProps> = (props) => (\n <Component {...props} />\n);\n\nexport { SearchcraftToggleButton };\nexport type { SearchcraftToggleButtonProps };\n"],"names":["NAMESPACE","BUILD","__defProp","__export","target","all","name","hostRefs","getHostRef","ref","registerHost","hostElement","cmpMeta","hostRef","r","isMemberInElement","elm","memberName","consoleError","el","styles","SLOT_FB_CSS","win","doc","H","plt","h2","eventName","listener","opts","supportsShadow","promiseResolve","v","supportsConstructableStylesheets","queuePending","queueDomReads","queueDomWrites","queueTask","queue","write","cb","nextTick","flush","consume","i2","e","writeTask","EMPTY_OBJ","SVG_NS","HTML_NS","isComplexType","o","queryNonceMetaTagContent","doc2","_a","_b","_c","result_exports","err","map","ok","unwrap","unwrapErr","value","result","fn","val","newVal","createTime","fnName","tagName","h","nodeName","vnodeData","children","child","key","slotName","simple","lastSimple","vNodeChildren","walk","c","newVNode","classData","k","vdomFnUtils","vnode","tag","text","Host","isHost","node","convertToPublic","convertToPrivate","parsePropertyValue","propValue","propType","getElement","createEvent","flags","detail","emitEvent","ev","rootAppliedStyles","registerStyle","scopeId2","cssText","allowCS","style","addStyle","styleContainerNode","mode","getScopeId","appliedStyles","styleElm","nonce","preconnectLinks","referenceNode2","stylesheet","existingStyleContainer","attachStyles","endAttachStyles","cmp","setAccessor","oldValue","newValue","isSvg","isProp","ln","classList","oldClasses","parseClassList","newClasses","prop","capture","CAPTURE_EVENT_SUFFIX","CAPTURE_EVENT_REGEX","isComplex","n","parseClassListRegex","updateElement","oldVnode","newVnode","isSvgMode2","oldVnodeAttrs","newVnodeAttrs","sortedAttrNames","attrNames","attr","contentRef","hostTagName","useNativeShadowDom","checkSlotFallbackVisibility","checkSlotRelocate","isSvgMode","createElm","oldParentVNode","newParentVNode","childIndex","parentElm","newVNode2","childNode","oldVNode","putBackInOriginalLocation","recursive","oldSlotChildNodes","insertBefore","parentReferenceNode","referenceNode","addVnodes","before","parentVNode","vnodes","startIdx","endIdx","containerElm","removeVnodes","index","updateChildren","oldCh","newCh","isInitialRender","oldStartIdx","newStartIdx","idxInOld","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","elmToMove","isSameVnode","patch","leftVNode","rightVNode","oldChildren","newChildren","defaultHolder","updateFallbackSlotVisibility","childNodes","siblingNode","relocateNodes","markSlotContentForRelocation","hostContentNodes","j","isNodeLocatedInSlot","relocateNodeData","relocateNode","nodeToRelocate","parent","newNode","reference","renderVdom","renderFnResults","isInitialLoad","_d","hostElm","rootVnode","relocateData","orgLocationNode","slotRefNode","parentNodeRef","insertBeforeNode","refNode","attachToAncestor","ancestorComponent","scheduleUpdate","dispatchHooks","endSchedule","instance","maybePromise","enqueue","updateComponent","isPromisey","err2","endUpdate","rc","endRender","callRender","childrenPromises","postUpdate","postUpdateComponent","endPostUpdate","addHydratedFlag","safeCall","appDidLoad","who","method","arg","getValue","propName","setValue","oldVal","areBothNaN","watchMethods","watchMethodName","proxyComponent","Cstr","prototype","members","memberFlags","attrNameToPropName","attrName","_a2","flags2","entry","callbackName","_","m","initializeComponent","hmrVersionId","cmpTag","endRegisterStyles","schedule","fireConnectedCallback","connectedCallback","endConnected","setContentReference","contentRefElm","disconnectedCallback","proxyCustomElement","compactMeta","originalConnectedCallback","originalDisconnectedCallback","hasHostListenerAttached","Fragment","zustand","vanilla$1","createStoreImpl","createState","state","listeners","setState","partial","replace","nextState","previousState","getState","api","initialState","createStore","react$1","react","react_production_min","l$1","p$1","q$1","t","u","v$1","w$1","x","y$1","z$1","A$1","a","B$1","C$1","D$1","E$1","b","F$1","G$1","H$1","I$1","J$1","K$1","L$1","M$1","d","g","f","N$1","O$1","escape","P$1","Q$1","R","S$1","T$1","U","V$1","W$1","X$1","React","vanilla","identity","useStore","selector","slice","createImpl","useBoundStore","create","exports","D","B","p","L","N","w","s","i","y","T","q","M","I","G","W","V","F","$","K","E","z","C","A","J","Y","P","Q","X","Z","ee","te","ne","l","S","ie","O","ae","useSearchcraftStore","set","get","searchcraft","debuggerInstance","log","level","message","data","fieldName","currentPaths","currentValues","type","query","results","facets","isRequesting","updatedFacets","error","searchcraftInstance","debug","searchcraftBaseSearchResultModuleCss","SearchcraftBaseSearchResultStyle0","SearchcraftBaseSearchResult","document_position","search_term","number_of_documents","imageContainer","contentContainer","defineCustomElement","SearchcraftBaseSearchResult$1","defineCustomElement$1","parseCustomStyles","serializeStyles","getFormattedTimeFromNow","timestamp","now","inputTime","diffInSeconds","minutes","hours","days","years","formatNumberWithCommas","number","getMillis","unit","removeSubstringMatches","arr","array","otherEntry","otherIndex","getDocumentValueFromSearchResultMapping","document","mapping","fieldNameDetails","valueFound","deepMergeWithSpread","obj1","obj2","facetToRecord","facet","records","traverseAndAddToFragments","facetChild","recordToObject","record","root","fragment","pathParts","currentRoot","currentPath","part","nextPath","objectToFacet","childObject","transformed","subChildObject","filterRecordByParentPaths","record1","record2","paths1","paths2","parentPaths","path","mergeFacetRoots","incomingRoot","currentArray","incomingArray","currentRootFacetChild","incomingRootFacetChild","currentRecord","incomingRecord","filteredCurrentRecord","mergedRecord","mergedObject","mergedFacetChild","searchcraftErrorMessageModuleCss","SearchcraftErrorMessageStyle0","SearchcraftErrorMessage","searchcraftBaseSearchResultsModuleCss","SearchcraftBaseSearchResultsStyle0","SearchcraftBaseSearchResults$1","searchResults","titleContent","subtitleContent","bodyContent","containerHref","buttonHref","imageSource","footerContent","serializedStyles","_e","_f","_g","_h","_j","_k","documents","_index","finalComponents","documentElements","defineCustomElement$3","defineCustomElement$2","SearchcraftBaseSearchResults","classnames","module","hasOwn","classNames","classes","appendClass","parseValue","newClass","searchcraftButtonModuleCss","SearchcraftButtonStyle0","SearchcraftButton","SearchcraftButton$1","SearchcraftErrorMessage$1","searchcraftFacetListModuleCss","SearchcraftFacetListStyle0","SearchcraftFacetList","label","count","char","facetChildAncestor","facetPrime","timeTaken","incomingFacetRoot","updatedPaths","testPath","acc","str","paths","pathsWithParentPathsRemoved","firstFacet","isChildSelected","_event","grandchild","SearchcraftFacetList$1","searchcraftSliderModuleCss","SearchcraftSliderStyle0","SearchcraftSlider","event","inputElement","rangeMin","rangeMax","startPercent","endPercent","startLabel","endLabel","searchcraftToggleButtonModuleCss","SearchcraftToggleButtonStyle0","SearchcraftToggleButton","searchcraftFilterPanelModuleCss","SearchcraftFilterPanelStyle0","SearchcraftFilterPanel$1","min","max","start","end","isActive","filterItem","item","granularityValue","defineCustomElement$4","SearchcraftFilterPanel","searchcraftInputLabelModuleCss","SearchcraftInputLabelStyle0","SearchcraftInputLabel","version","description","author","license","main","types","collection","unpkg","repository","files","scripts","dependencies","devDependencies","packageJson","searchcraftInputFormModuleCss","SearchcraftInputFormStyle0","SearchcraftInput","input","validatedCustomStyles","isShowingClearButton","inputGridClassNames","SearchcraftInputForm","SearchcraftInputLabel$1","searchcraftResultsInfoModuleCss","SearchcraftResultsInfoStyle0","SearchcraftResultsInfo$1","formattedResults","SearchcraftResultsInfo","SearchcraftSlider$1","SearchcraftToggleButton$1","createComponent","SearchcraftBaseSearchResultElement","defineSearchcraftBaseSearchResult","SearchcraftBaseSearchResultsElement","defineSearchcraftBaseSearchResults","SearchcraftButtonElement","defineSearchcraftButton","SearchcraftErrorMessageElement","defineSearchcraftErrorMessage","SearchcraftFacetListElement","defineSearchcraftFacetList","SearchcraftFilterPanelElement","defineSearchcraftFilterPanel","SearchcraftInputFormElement","defineSearchcraftInputForm","SearchcraftInputLabelElement","defineSearchcraftInputLabel","SearchcraftResultsInfoElement","defineSearchcraftResultsInfo","SearchcraftSliderElement","defineSearchcraftSlider","SearchcraftToggleButtonElement","defineSearchcraftToggleButton","props","jsx","Component"],"mappings":"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","x_google_ignoreList":[22,23]}