daux.io/search/search.min.js.map

1 regel
64 KiB
Plaintext

{"version":3,"file":"search.min.js.map","sources":["../node_modules/preact/dist/preact.umd.js","../src/js/search/translation.js","../src/js/search/Pagination.js","../src/js/search/Result.js","../src/js/search/stopwords.js","../src/js/search/utils.js","../src/js/search/Search.js","../src/js/search/index.js"],"sourcesContent":["(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n\ttypeof define === 'function' && define.amd ? define(['exports'], factory) :\n\t(factory((global.preact = {})));\n}(this, (function (exports) { 'use strict';\n\n\tvar VNode = function VNode() {};\n\n\tvar options = {};\n\n\tvar stack = [];\n\n\tvar EMPTY_CHILDREN = [];\n\n\tfunction h(nodeName, attributes) {\n\t\tvar children = EMPTY_CHILDREN,\n\t\t lastSimple = void 0,\n\t\t child = void 0,\n\t\t simple = void 0,\n\t\t i = void 0;\n\t\tfor (i = arguments.length; i-- > 2;) {\n\t\t\tstack.push(arguments[i]);\n\t\t}\n\t\tif (attributes && attributes.children != null) {\n\t\t\tif (!stack.length) stack.push(attributes.children);\n\t\t\tdelete attributes.children;\n\t\t}\n\t\twhile (stack.length) {\n\t\t\tif ((child = stack.pop()) && child.pop !== undefined) {\n\t\t\t\tfor (i = child.length; i--;) {\n\t\t\t\t\tstack.push(child[i]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (typeof child === 'boolean') child = null;\n\n\t\t\t\tif (simple = typeof nodeName !== 'function') {\n\t\t\t\t\tif (child == null) child = '';else if (typeof child === 'number') child = String(child);else if (typeof child !== 'string') simple = false;\n\t\t\t\t}\n\n\t\t\t\tif (simple && lastSimple) {\n\t\t\t\t\tchildren[children.length - 1] += child;\n\t\t\t\t} else if (children === EMPTY_CHILDREN) {\n\t\t\t\t\tchildren = [child];\n\t\t\t\t} else {\n\t\t\t\t\tchildren.push(child);\n\t\t\t\t}\n\n\t\t\t\tlastSimple = simple;\n\t\t\t}\n\t\t}\n\n\t\tvar p = new VNode();\n\t\tp.nodeName = nodeName;\n\t\tp.children = children;\n\t\tp.attributes = attributes == null ? undefined : attributes;\n\t\tp.key = attributes == null ? undefined : attributes.key;\n\n\t\tif (options.vnode !== undefined) options.vnode(p);\n\n\t\treturn p;\n\t}\n\n\tfunction extend(obj, props) {\n\t for (var i in props) {\n\t obj[i] = props[i];\n\t }return obj;\n\t}\n\n\tfunction applyRef(ref, value) {\n\t if (ref) {\n\t if (typeof ref == 'function') ref(value);else ref.current = value;\n\t }\n\t}\n\n\tvar defer = typeof Promise == 'function' ? Promise.resolve().then.bind(Promise.resolve()) : setTimeout;\n\n\tfunction cloneElement(vnode, props) {\n\t return h(vnode.nodeName, extend(extend({}, vnode.attributes), props), arguments.length > 2 ? [].slice.call(arguments, 2) : vnode.children);\n\t}\n\n\tvar NO_RENDER = 0;\n\n\tvar SYNC_RENDER = 1;\n\n\tvar FORCE_RENDER = 2;\n\n\tvar ASYNC_RENDER = 3;\n\n\tvar ATTR_KEY = '__preactattr_';\n\n\tvar IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i;\n\n\tvar items = [];\n\n\tfunction enqueueRender(component) {\n\t\tif (!component._dirty && (component._dirty = true) && items.push(component) == 1) {\n\t\t\t(options.debounceRendering || defer)(rerender);\n\t\t}\n\t}\n\n\tfunction rerender() {\n\t\tvar p = void 0;\n\t\twhile (p = items.pop()) {\n\t\t\tif (p._dirty) renderComponent(p);\n\t\t}\n\t}\n\n\tfunction isSameNodeType(node, vnode, hydrating) {\n\t\tif (typeof vnode === 'string' || typeof vnode === 'number') {\n\t\t\treturn node.splitText !== undefined;\n\t\t}\n\t\tif (typeof vnode.nodeName === 'string') {\n\t\t\treturn !node._componentConstructor && isNamedNode(node, vnode.nodeName);\n\t\t}\n\t\treturn hydrating || node._componentConstructor === vnode.nodeName;\n\t}\n\n\tfunction isNamedNode(node, nodeName) {\n\t\treturn node.normalizedNodeName === nodeName || node.nodeName.toLowerCase() === nodeName.toLowerCase();\n\t}\n\n\tfunction getNodeProps(vnode) {\n\t\tvar props = extend({}, vnode.attributes);\n\t\tprops.children = vnode.children;\n\n\t\tvar defaultProps = vnode.nodeName.defaultProps;\n\t\tif (defaultProps !== undefined) {\n\t\t\tfor (var i in defaultProps) {\n\t\t\t\tif (props[i] === undefined) {\n\t\t\t\t\tprops[i] = defaultProps[i];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn props;\n\t}\n\n\tfunction createNode(nodeName, isSvg) {\n\t\tvar node = isSvg ? document.createElementNS('http://www.w3.org/2000/svg', nodeName) : document.createElement(nodeName);\n\t\tnode.normalizedNodeName = nodeName;\n\t\treturn node;\n\t}\n\n\tfunction removeNode(node) {\n\t\tvar parentNode = node.parentNode;\n\t\tif (parentNode) parentNode.removeChild(node);\n\t}\n\n\tfunction setAccessor(node, name, old, value, isSvg) {\n\t\tif (name === 'className') name = 'class';\n\n\t\tif (name === 'key') {} else if (name === 'ref') {\n\t\t\tapplyRef(old, null);\n\t\t\tapplyRef(value, node);\n\t\t} else if (name === 'class' && !isSvg) {\n\t\t\tnode.className = value || '';\n\t\t} else if (name === 'style') {\n\t\t\tif (!value || typeof value === 'string' || typeof old === 'string') {\n\t\t\t\tnode.style.cssText = value || '';\n\t\t\t}\n\t\t\tif (value && typeof value === 'object') {\n\t\t\t\tif (typeof old !== 'string') {\n\t\t\t\t\tfor (var i in old) {\n\t\t\t\t\t\tif (!(i in value)) node.style[i] = '';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tfor (var _i in value) {\n\t\t\t\t\tnode.style[_i] = typeof value[_i] === 'number' && IS_NON_DIMENSIONAL.test(_i) === false ? value[_i] + 'px' : value[_i];\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (name === 'dangerouslySetInnerHTML') {\n\t\t\tif (value) node.innerHTML = value.__html || '';\n\t\t} else if (name[0] == 'o' && name[1] == 'n') {\n\t\t\tvar useCapture = name !== (name = name.replace(/Capture$/, ''));\n\t\t\tname = name.toLowerCase().substring(2);\n\t\t\tif (value) {\n\t\t\t\tif (!old) node.addEventListener(name, eventProxy, useCapture);\n\t\t\t} else {\n\t\t\t\tnode.removeEventListener(name, eventProxy, useCapture);\n\t\t\t}\n\t\t\t(node._listeners || (node._listeners = {}))[name] = value;\n\t\t} else if (name !== 'list' && name !== 'type' && !isSvg && name in node) {\n\t\t\ttry {\n\t\t\t\tnode[name] = value == null ? '' : value;\n\t\t\t} catch (e) {}\n\t\t\tif ((value == null || value === false) && name != 'spellcheck') node.removeAttribute(name);\n\t\t} else {\n\t\t\tvar ns = isSvg && name !== (name = name.replace(/^xlink:?/, ''));\n\n\t\t\tif (value == null || value === false) {\n\t\t\t\tif (ns) node.removeAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase());else node.removeAttribute(name);\n\t\t\t} else if (typeof value !== 'function') {\n\t\t\t\tif (ns) node.setAttributeNS('http://www.w3.org/1999/xlink', name.toLowerCase(), value);else node.setAttribute(name, value);\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction eventProxy(e) {\n\t\treturn this._listeners[e.type](options.event && options.event(e) || e);\n\t}\n\n\tvar mounts = [];\n\n\tvar diffLevel = 0;\n\n\tvar isSvgMode = false;\n\n\tvar hydrating = false;\n\n\tfunction flushMounts() {\n\t\tvar c = void 0;\n\t\twhile (c = mounts.shift()) {\n\t\t\tif (options.afterMount) options.afterMount(c);\n\t\t\tif (c.componentDidMount) c.componentDidMount();\n\t\t}\n\t}\n\n\tfunction diff(dom, vnode, context, mountAll, parent, componentRoot) {\n\t\tif (!diffLevel++) {\n\t\t\tisSvgMode = parent != null && parent.ownerSVGElement !== undefined;\n\n\t\t\thydrating = dom != null && !(ATTR_KEY in dom);\n\t\t}\n\n\t\tvar ret = idiff(dom, vnode, context, mountAll, componentRoot);\n\n\t\tif (parent && ret.parentNode !== parent) parent.appendChild(ret);\n\n\t\tif (! --diffLevel) {\n\t\t\thydrating = false;\n\n\t\t\tif (!componentRoot) flushMounts();\n\t\t}\n\n\t\treturn ret;\n\t}\n\n\tfunction idiff(dom, vnode, context, mountAll, componentRoot) {\n\t\tvar out = dom,\n\t\t prevSvgMode = isSvgMode;\n\n\t\tif (vnode == null || typeof vnode === 'boolean') vnode = '';\n\n\t\tif (typeof vnode === 'string' || typeof vnode === 'number') {\n\t\t\tif (dom && dom.splitText !== undefined && dom.parentNode && (!dom._component || componentRoot)) {\n\t\t\t\tif (dom.nodeValue != vnode) {\n\t\t\t\t\tdom.nodeValue = vnode;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tout = document.createTextNode(vnode);\n\t\t\t\tif (dom) {\n\t\t\t\t\tif (dom.parentNode) dom.parentNode.replaceChild(out, dom);\n\t\t\t\t\trecollectNodeTree(dom, true);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tout[ATTR_KEY] = true;\n\n\t\t\treturn out;\n\t\t}\n\n\t\tvar vnodeName = vnode.nodeName;\n\t\tif (typeof vnodeName === 'function') {\n\t\t\treturn buildComponentFromVNode(dom, vnode, context, mountAll);\n\t\t}\n\n\t\tisSvgMode = vnodeName === 'svg' ? true : vnodeName === 'foreignObject' ? false : isSvgMode;\n\n\t\tvnodeName = String(vnodeName);\n\t\tif (!dom || !isNamedNode(dom, vnodeName)) {\n\t\t\tout = createNode(vnodeName, isSvgMode);\n\n\t\t\tif (dom) {\n\t\t\t\twhile (dom.firstChild) {\n\t\t\t\t\tout.appendChild(dom.firstChild);\n\t\t\t\t}\n\t\t\t\tif (dom.parentNode) dom.parentNode.replaceChild(out, dom);\n\n\t\t\t\trecollectNodeTree(dom, true);\n\t\t\t}\n\t\t}\n\n\t\tvar fc = out.firstChild,\n\t\t props = out[ATTR_KEY],\n\t\t vchildren = vnode.children;\n\n\t\tif (props == null) {\n\t\t\tprops = out[ATTR_KEY] = {};\n\t\t\tfor (var a = out.attributes, i = a.length; i--;) {\n\t\t\t\tprops[a[i].name] = a[i].value;\n\t\t\t}\n\t\t}\n\n\t\tif (!hydrating && vchildren && vchildren.length === 1 && typeof vchildren[0] === 'string' && fc != null && fc.splitText !== undefined && fc.nextSibling == null) {\n\t\t\tif (fc.nodeValue != vchildren[0]) {\n\t\t\t\tfc.nodeValue = vchildren[0];\n\t\t\t}\n\t\t} else if (vchildren && vchildren.length || fc != null) {\n\t\t\t\tinnerDiffNode(out, vchildren, context, mountAll, hydrating || props.dangerouslySetInnerHTML != null);\n\t\t\t}\n\n\t\tdiffAttributes(out, vnode.attributes, props);\n\n\t\tisSvgMode = prevSvgMode;\n\n\t\treturn out;\n\t}\n\n\tfunction innerDiffNode(dom, vchildren, context, mountAll, isHydrating) {\n\t\tvar originalChildren = dom.childNodes,\n\t\t children = [],\n\t\t keyed = {},\n\t\t keyedLen = 0,\n\t\t min = 0,\n\t\t len = originalChildren.length,\n\t\t childrenLen = 0,\n\t\t vlen = vchildren ? vchildren.length : 0,\n\t\t j = void 0,\n\t\t c = void 0,\n\t\t f = void 0,\n\t\t vchild = void 0,\n\t\t child = void 0;\n\n\t\tif (len !== 0) {\n\t\t\tfor (var i = 0; i < len; i++) {\n\t\t\t\tvar _child = originalChildren[i],\n\t\t\t\t props = _child[ATTR_KEY],\n\t\t\t\t key = vlen && props ? _child._component ? _child._component.__key : props.key : null;\n\t\t\t\tif (key != null) {\n\t\t\t\t\tkeyedLen++;\n\t\t\t\t\tkeyed[key] = _child;\n\t\t\t\t} else if (props || (_child.splitText !== undefined ? isHydrating ? _child.nodeValue.trim() : true : isHydrating)) {\n\t\t\t\t\tchildren[childrenLen++] = _child;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (vlen !== 0) {\n\t\t\tfor (var _i = 0; _i < vlen; _i++) {\n\t\t\t\tvchild = vchildren[_i];\n\t\t\t\tchild = null;\n\n\t\t\t\tvar _key = vchild.key;\n\t\t\t\tif (_key != null) {\n\t\t\t\t\tif (keyedLen && keyed[_key] !== undefined) {\n\t\t\t\t\t\tchild = keyed[_key];\n\t\t\t\t\t\tkeyed[_key] = undefined;\n\t\t\t\t\t\tkeyedLen--;\n\t\t\t\t\t}\n\t\t\t\t} else if (min < childrenLen) {\n\t\t\t\t\t\tfor (j = min; j < childrenLen; j++) {\n\t\t\t\t\t\t\tif (children[j] !== undefined && isSameNodeType(c = children[j], vchild, isHydrating)) {\n\t\t\t\t\t\t\t\tchild = c;\n\t\t\t\t\t\t\t\tchildren[j] = undefined;\n\t\t\t\t\t\t\t\tif (j === childrenLen - 1) childrenLen--;\n\t\t\t\t\t\t\t\tif (j === min) min++;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\tchild = idiff(child, vchild, context, mountAll);\n\n\t\t\t\tf = originalChildren[_i];\n\t\t\t\tif (child && child !== dom && child !== f) {\n\t\t\t\t\tif (f == null) {\n\t\t\t\t\t\tdom.appendChild(child);\n\t\t\t\t\t} else if (child === f.nextSibling) {\n\t\t\t\t\t\tremoveNode(f);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tdom.insertBefore(child, f);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (keyedLen) {\n\t\t\tfor (var _i2 in keyed) {\n\t\t\t\tif (keyed[_i2] !== undefined) recollectNodeTree(keyed[_i2], false);\n\t\t\t}\n\t\t}\n\n\t\twhile (min <= childrenLen) {\n\t\t\tif ((child = children[childrenLen--]) !== undefined) recollectNodeTree(child, false);\n\t\t}\n\t}\n\n\tfunction recollectNodeTree(node, unmountOnly) {\n\t\tvar component = node._component;\n\t\tif (component) {\n\t\t\tunmountComponent(component);\n\t\t} else {\n\t\t\tif (node[ATTR_KEY] != null) applyRef(node[ATTR_KEY].ref, null);\n\n\t\t\tif (unmountOnly === false || node[ATTR_KEY] == null) {\n\t\t\t\tremoveNode(node);\n\t\t\t}\n\n\t\t\tremoveChildren(node);\n\t\t}\n\t}\n\n\tfunction removeChildren(node) {\n\t\tnode = node.lastChild;\n\t\twhile (node) {\n\t\t\tvar next = node.previousSibling;\n\t\t\trecollectNodeTree(node, true);\n\t\t\tnode = next;\n\t\t}\n\t}\n\n\tfunction diffAttributes(dom, attrs, old) {\n\t\tvar name = void 0;\n\n\t\tfor (name in old) {\n\t\t\tif (!(attrs && attrs[name] != null) && old[name] != null) {\n\t\t\t\tsetAccessor(dom, name, old[name], old[name] = undefined, isSvgMode);\n\t\t\t}\n\t\t}\n\n\t\tfor (name in attrs) {\n\t\t\tif (name !== 'children' && name !== 'innerHTML' && (!(name in old) || attrs[name] !== (name === 'value' || name === 'checked' ? dom[name] : old[name]))) {\n\t\t\t\tsetAccessor(dom, name, old[name], old[name] = attrs[name], isSvgMode);\n\t\t\t}\n\t\t}\n\t}\n\n\tvar recyclerComponents = [];\n\n\tfunction createComponent(Ctor, props, context) {\n\t\tvar inst = void 0,\n\t\t i = recyclerComponents.length;\n\n\t\tif (Ctor.prototype && Ctor.prototype.render) {\n\t\t\tinst = new Ctor(props, context);\n\t\t\tComponent.call(inst, props, context);\n\t\t} else {\n\t\t\tinst = new Component(props, context);\n\t\t\tinst.constructor = Ctor;\n\t\t\tinst.render = doRender;\n\t\t}\n\n\t\twhile (i--) {\n\t\t\tif (recyclerComponents[i].constructor === Ctor) {\n\t\t\t\tinst.nextBase = recyclerComponents[i].nextBase;\n\t\t\t\trecyclerComponents.splice(i, 1);\n\t\t\t\treturn inst;\n\t\t\t}\n\t\t}\n\n\t\treturn inst;\n\t}\n\n\tfunction doRender(props, state, context) {\n\t\treturn this.constructor(props, context);\n\t}\n\n\tfunction setComponentProps(component, props, renderMode, context, mountAll) {\n\t\tif (component._disable) return;\n\t\tcomponent._disable = true;\n\n\t\tcomponent.__ref = props.ref;\n\t\tcomponent.__key = props.key;\n\t\tdelete props.ref;\n\t\tdelete props.key;\n\n\t\tif (typeof component.constructor.getDerivedStateFromProps === 'undefined') {\n\t\t\tif (!component.base || mountAll) {\n\t\t\t\tif (component.componentWillMount) component.componentWillMount();\n\t\t\t} else if (component.componentWillReceiveProps) {\n\t\t\t\tcomponent.componentWillReceiveProps(props, context);\n\t\t\t}\n\t\t}\n\n\t\tif (context && context !== component.context) {\n\t\t\tif (!component.prevContext) component.prevContext = component.context;\n\t\t\tcomponent.context = context;\n\t\t}\n\n\t\tif (!component.prevProps) component.prevProps = component.props;\n\t\tcomponent.props = props;\n\n\t\tcomponent._disable = false;\n\n\t\tif (renderMode !== NO_RENDER) {\n\t\t\tif (renderMode === SYNC_RENDER || options.syncComponentUpdates !== false || !component.base) {\n\t\t\t\trenderComponent(component, SYNC_RENDER, mountAll);\n\t\t\t} else {\n\t\t\t\tenqueueRender(component);\n\t\t\t}\n\t\t}\n\n\t\tapplyRef(component.__ref, component);\n\t}\n\n\tfunction renderComponent(component, renderMode, mountAll, isChild) {\n\t\tif (component._disable) return;\n\n\t\tvar props = component.props,\n\t\t state = component.state,\n\t\t context = component.context,\n\t\t previousProps = component.prevProps || props,\n\t\t previousState = component.prevState || state,\n\t\t previousContext = component.prevContext || context,\n\t\t isUpdate = component.base,\n\t\t nextBase = component.nextBase,\n\t\t initialBase = isUpdate || nextBase,\n\t\t initialChildComponent = component._component,\n\t\t skip = false,\n\t\t snapshot = previousContext,\n\t\t rendered = void 0,\n\t\t inst = void 0,\n\t\t cbase = void 0;\n\n\t\tif (component.constructor.getDerivedStateFromProps) {\n\t\t\tstate = extend(extend({}, state), component.constructor.getDerivedStateFromProps(props, state));\n\t\t\tcomponent.state = state;\n\t\t}\n\n\t\tif (isUpdate) {\n\t\t\tcomponent.props = previousProps;\n\t\t\tcomponent.state = previousState;\n\t\t\tcomponent.context = previousContext;\n\t\t\tif (renderMode !== FORCE_RENDER && component.shouldComponentUpdate && component.shouldComponentUpdate(props, state, context) === false) {\n\t\t\t\tskip = true;\n\t\t\t} else if (component.componentWillUpdate) {\n\t\t\t\tcomponent.componentWillUpdate(props, state, context);\n\t\t\t}\n\t\t\tcomponent.props = props;\n\t\t\tcomponent.state = state;\n\t\t\tcomponent.context = context;\n\t\t}\n\n\t\tcomponent.prevProps = component.prevState = component.prevContext = component.nextBase = null;\n\t\tcomponent._dirty = false;\n\n\t\tif (!skip) {\n\t\t\trendered = component.render(props, state, context);\n\n\t\t\tif (component.getChildContext) {\n\t\t\t\tcontext = extend(extend({}, context), component.getChildContext());\n\t\t\t}\n\n\t\t\tif (isUpdate && component.getSnapshotBeforeUpdate) {\n\t\t\t\tsnapshot = component.getSnapshotBeforeUpdate(previousProps, previousState);\n\t\t\t}\n\n\t\t\tvar childComponent = rendered && rendered.nodeName,\n\t\t\t toUnmount = void 0,\n\t\t\t base = void 0;\n\n\t\t\tif (typeof childComponent === 'function') {\n\n\t\t\t\tvar childProps = getNodeProps(rendered);\n\t\t\t\tinst = initialChildComponent;\n\n\t\t\t\tif (inst && inst.constructor === childComponent && childProps.key == inst.__key) {\n\t\t\t\t\tsetComponentProps(inst, childProps, SYNC_RENDER, context, false);\n\t\t\t\t} else {\n\t\t\t\t\ttoUnmount = inst;\n\n\t\t\t\t\tcomponent._component = inst = createComponent(childComponent, childProps, context);\n\t\t\t\t\tinst.nextBase = inst.nextBase || nextBase;\n\t\t\t\t\tinst._parentComponent = component;\n\t\t\t\t\tsetComponentProps(inst, childProps, NO_RENDER, context, false);\n\t\t\t\t\trenderComponent(inst, SYNC_RENDER, mountAll, true);\n\t\t\t\t}\n\n\t\t\t\tbase = inst.base;\n\t\t\t} else {\n\t\t\t\tcbase = initialBase;\n\n\t\t\t\ttoUnmount = initialChildComponent;\n\t\t\t\tif (toUnmount) {\n\t\t\t\t\tcbase = component._component = null;\n\t\t\t\t}\n\n\t\t\t\tif (initialBase || renderMode === SYNC_RENDER) {\n\t\t\t\t\tif (cbase) cbase._component = null;\n\t\t\t\t\tbase = diff(cbase, rendered, context, mountAll || !isUpdate, initialBase && initialBase.parentNode, true);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (initialBase && base !== initialBase && inst !== initialChildComponent) {\n\t\t\t\tvar baseParent = initialBase.parentNode;\n\t\t\t\tif (baseParent && base !== baseParent) {\n\t\t\t\t\tbaseParent.replaceChild(base, initialBase);\n\n\t\t\t\t\tif (!toUnmount) {\n\t\t\t\t\t\tinitialBase._component = null;\n\t\t\t\t\t\trecollectNodeTree(initialBase, false);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (toUnmount) {\n\t\t\t\tunmountComponent(toUnmount);\n\t\t\t}\n\n\t\t\tcomponent.base = base;\n\t\t\tif (base && !isChild) {\n\t\t\t\tvar componentRef = component,\n\t\t\t\t t = component;\n\t\t\t\twhile (t = t._parentComponent) {\n\t\t\t\t\t(componentRef = t).base = base;\n\t\t\t\t}\n\t\t\t\tbase._component = componentRef;\n\t\t\t\tbase._componentConstructor = componentRef.constructor;\n\t\t\t}\n\t\t}\n\n\t\tif (!isUpdate || mountAll) {\n\t\t\tmounts.push(component);\n\t\t} else if (!skip) {\n\n\t\t\tif (component.componentDidUpdate) {\n\t\t\t\tcomponent.componentDidUpdate(previousProps, previousState, snapshot);\n\t\t\t}\n\t\t\tif (options.afterUpdate) options.afterUpdate(component);\n\t\t}\n\n\t\twhile (component._renderCallbacks.length) {\n\t\t\tcomponent._renderCallbacks.pop().call(component);\n\t\t}if (!diffLevel && !isChild) flushMounts();\n\t}\n\n\tfunction buildComponentFromVNode(dom, vnode, context, mountAll) {\n\t\tvar c = dom && dom._component,\n\t\t originalComponent = c,\n\t\t oldDom = dom,\n\t\t isDirectOwner = c && dom._componentConstructor === vnode.nodeName,\n\t\t isOwner = isDirectOwner,\n\t\t props = getNodeProps(vnode);\n\t\twhile (c && !isOwner && (c = c._parentComponent)) {\n\t\t\tisOwner = c.constructor === vnode.nodeName;\n\t\t}\n\n\t\tif (c && isOwner && (!mountAll || c._component)) {\n\t\t\tsetComponentProps(c, props, ASYNC_RENDER, context, mountAll);\n\t\t\tdom = c.base;\n\t\t} else {\n\t\t\tif (originalComponent && !isDirectOwner) {\n\t\t\t\tunmountComponent(originalComponent);\n\t\t\t\tdom = oldDom = null;\n\t\t\t}\n\n\t\t\tc = createComponent(vnode.nodeName, props, context);\n\t\t\tif (dom && !c.nextBase) {\n\t\t\t\tc.nextBase = dom;\n\n\t\t\t\toldDom = null;\n\t\t\t}\n\t\t\tsetComponentProps(c, props, SYNC_RENDER, context, mountAll);\n\t\t\tdom = c.base;\n\n\t\t\tif (oldDom && dom !== oldDom) {\n\t\t\t\toldDom._component = null;\n\t\t\t\trecollectNodeTree(oldDom, false);\n\t\t\t}\n\t\t}\n\n\t\treturn dom;\n\t}\n\n\tfunction unmountComponent(component) {\n\t\tif (options.beforeUnmount) options.beforeUnmount(component);\n\n\t\tvar base = component.base;\n\n\t\tcomponent._disable = true;\n\n\t\tif (component.componentWillUnmount) component.componentWillUnmount();\n\n\t\tcomponent.base = null;\n\n\t\tvar inner = component._component;\n\t\tif (inner) {\n\t\t\tunmountComponent(inner);\n\t\t} else if (base) {\n\t\t\tif (base[ATTR_KEY] != null) applyRef(base[ATTR_KEY].ref, null);\n\n\t\t\tcomponent.nextBase = base;\n\n\t\t\tremoveNode(base);\n\t\t\trecyclerComponents.push(component);\n\n\t\t\tremoveChildren(base);\n\t\t}\n\n\t\tapplyRef(component.__ref, null);\n\t}\n\n\tfunction Component(props, context) {\n\t\tthis._dirty = true;\n\n\t\tthis.context = context;\n\n\t\tthis.props = props;\n\n\t\tthis.state = this.state || {};\n\n\t\tthis._renderCallbacks = [];\n\t}\n\n\textend(Component.prototype, {\n\t\tsetState: function setState(state, callback) {\n\t\t\tif (!this.prevState) this.prevState = this.state;\n\t\t\tthis.state = extend(extend({}, this.state), typeof state === 'function' ? state(this.state, this.props) : state);\n\t\t\tif (callback) this._renderCallbacks.push(callback);\n\t\t\tenqueueRender(this);\n\t\t},\n\t\tforceUpdate: function forceUpdate(callback) {\n\t\t\tif (callback) this._renderCallbacks.push(callback);\n\t\t\trenderComponent(this, FORCE_RENDER);\n\t\t},\n\t\trender: function render() {}\n\t});\n\n\tfunction render(vnode, parent, merge) {\n\t return diff(merge, vnode, {}, false, parent, false);\n\t}\n\n\tfunction createRef() {\n\t\treturn {};\n\t}\n\n\tvar preact = {\n\t\th: h,\n\t\tcreateElement: h,\n\t\tcloneElement: cloneElement,\n\t\tcreateRef: createRef,\n\t\tComponent: Component,\n\t\trender: render,\n\t\trerender: rerender,\n\t\toptions: options\n\t};\n\n\texports.default = preact;\n\texports.h = h;\n\texports.createElement = h;\n\texports.cloneElement = cloneElement;\n\texports.createRef = createRef;\n\texports.Component = Component;\n\texports.render = render;\n\texports.rerender = rerender;\n\texports.options = options;\n\n\tObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=preact.umd.js.map\n","/* eslint-disable camelcase */\nconst {\n Link_previous,\n Link_next,\n Search_common_words_ignored,\n Search_no_results,\n Search_one_character_or_more,\n Search_one_result,\n Search_results,\n Search_should_be_x_or_more,\n Search_too_short\n} = window.searchTranslation;\n\nconst textLinkPrevious = Link_previous;\nconst textLinkNext = Link_next;\nconst textSearchCommonWordsIgnored = Search_common_words_ignored;\nconst textSearchNoResults = Search_no_results;\nconst textSearchOneCharacterOrMore = Search_one_character_or_more;\nconst textSearchOneResult = Search_one_result;\nconst textSearchResults = Search_results;\nconst textSearchShouldBeXOrMore = Search_should_be_x_or_more;\nconst textSearchTooShort = Search_too_short;\n/* eslint-enable camelcase */\n\nexport {\n textLinkPrevious,\n textLinkNext,\n textSearchCommonWordsIgnored,\n textSearchNoResults,\n textSearchOneCharacterOrMore,\n textSearchOneResult,\n textSearchResults,\n textSearchShouldBeXOrMore,\n textSearchTooShort\n};\n","import preact from \"preact\";\nimport { textLinkPrevious, textLinkNext } from \"./translation\";\n/** @jsx preact.h */\n\nexport default function Pagination({ counter, start, settings, onPageSelect }) {\n const pages = Math.ceil(counter / settings.show);\n const page = start / settings.show;\n\n let displayedPages;\n if (page <= 2) {\n // Display max three pages\n displayedPages = Math.min(pages, 3);\n } else {\n // Display two more pages, but don't overflow\n displayedPages = Math.min(pages, page + 2);\n }\n\n const items = [];\n\n for (let f = 0; f < displayedPages; f++) {\n if (f === page) {\n items.push(<li className=\"current\">{f + 1}</li>);\n } else {\n items.push(\n <li>\n <a\n className=\"SearchResults__footer__link\"\n onClick={() => onPageSelect(f * settings.show)}\n >\n {f + 1}\n </a>\n </li>\n );\n }\n }\n\n return (\n <div className=\"SearchResults__footer\">\n <ul className=\"SearchResults__footer__links Pager\">\n {start > 0 && (\n <li className=\"Pager--prev\">\n <a\n className=\"SearchResults__footer__link\"\n onClick={() => onPageSelect(start - settings.show)}\n >\n {textLinkPrevious}\n </a>\n </li>\n )}\n {items}\n {page + 1 !== pages && (\n <li className=\"Pager--next\">\n <a\n className=\"SearchResults__footer__link\"\n onClick={() => onPageSelect(start + settings.show)}\n >\n {textLinkNext}\n </a>\n </li>\n )}\n </ul>\n </div>\n );\n}\n","import preact from \"preact\";\n/** @jsx preact.h */\n\n// TODO :: restore highlight\n/*function highlightText(search, text) {\n if (settings.highlightTerms) {\n var pattern = new RegExp(\n `(${search})`,\n settings.highlightEveryTerm ? \"gi\" : \"i\"\n );\n text = text.replace(\n pattern,\n '<span class=\"SearchResults__highlight\">$1</span>'\n );\n }\n\n return text;\n}*/\n\nexport default function Result({ settings, item }) {\n let description;\n if (item.desc) {\n description = item.desc\n .split(\" \")\n .slice(0, settings.descriptiveWords)\n .join(\" \");\n if (\n item.desc.length < description.length &&\n description.charAt(description.length - 1) !== \".\"\n ) {\n description += \" ...\";\n }\n }\n\n return (\n <div className=\"SearchResult\">\n <div className=\"SearchResults__title\">\n <a href={settings.base_url + item.url}>{item.title}</a>\n </div>\n {settings.debug && (\n <div className=\"SearchResults__debug\">Score: {item.score}</div>\n )}\n {settings.showURL && (\n <div className=\"SearchResults__url\">\n <a href={settings.base_url + item.url}>\n {item.url.toLowerCase().replace(/https?:\\/\\//g, \"\")}\n </a>\n </div>\n )}\n {description.desc && (\n <div className=\"SearchResults__text\">{description}</div>\n )}\n </div>\n );\n}\n","// Stop words (list from http://www.ranks.nl/stopwords)\nexport default [\n \"a\",\n \"about\",\n \"above\",\n \"after\",\n \"again\",\n \"against\",\n \"all\",\n \"am\",\n \"an\",\n \"and\",\n \"any\",\n \"are\",\n \"aren't\",\n \"as\",\n \"at\",\n \"be\",\n \"because\",\n \"been\",\n \"before\",\n \"being\",\n \"below\",\n \"between\",\n \"both\",\n \"but\",\n \"by\",\n \"can't\",\n \"cannot\",\n \"could\",\n \"couldn't\",\n \"did\",\n \"didn't\",\n \"do\",\n \"does\",\n \"doesn't\",\n \"doing\",\n \"don't\",\n \"down\",\n \"during\",\n \"each\",\n \"few\",\n \"for\",\n \"from\",\n \"further\",\n \"had\",\n \"hadn't\",\n \"has\",\n \"hasn't\",\n \"have\",\n \"haven't\",\n \"having\",\n \"he\",\n \"he'd\",\n \"he'll\",\n \"he's\",\n \"her\",\n \"here\",\n \"here's\",\n \"hers\",\n \"herself\",\n \"him\",\n \"himself\",\n \"his\",\n \"how\",\n \"how's\",\n \"i\",\n \"i'd\",\n \"i'll\",\n \"i'm\",\n \"i've\",\n \"if\",\n \"in\",\n \"into\",\n \"is\",\n \"isn't\",\n \"it\",\n \"it's\",\n \"its\",\n \"itself\",\n \"let's\",\n \"me\",\n \"more\",\n \"most\",\n \"mustn't\",\n \"my\",\n \"myself\",\n \"no\",\n \"nor\",\n \"not\",\n \"of\",\n \"off\",\n \"on\",\n \"once\",\n \"only\",\n \"or\",\n \"other\",\n \"ought\",\n \"our\",\n \"ours\",\n \"ourselves\",\n \"out\",\n \"over\",\n \"own\",\n \"same\",\n \"shan't\",\n \"she\",\n \"she'd\",\n \"she'll\",\n \"she's\",\n \"should\",\n \"shouldn't\",\n \"so\",\n \"some\",\n \"such\",\n \"than\",\n \"that\",\n \"that's\",\n \"the\",\n \"their\",\n \"theirs\",\n \"them\",\n \"themselves\",\n \"then\",\n \"there\",\n \"there's\",\n \"these\",\n \"they\",\n \"they'd\",\n \"they'll\",\n \"they're\",\n \"they've\",\n \"this\",\n \"those\",\n \"through\",\n \"to\",\n \"too\",\n \"under\",\n \"until\",\n \"up\",\n \"very\",\n \"was\",\n \"wasn't\",\n \"we\",\n \"we'd\",\n \"we'll\",\n \"we're\",\n \"we've\",\n \"were\",\n \"weren't\",\n \"what\",\n \"what's\",\n \"when\",\n \"when's\",\n \"where\",\n \"where's\",\n \"which\",\n \"while\",\n \"who\",\n \"who's\",\n \"whom\",\n \"why\",\n \"why's\",\n \"with\",\n \"won't\",\n \"would\",\n \"wouldn't\",\n \"you\",\n \"you'd\",\n \"you'll\",\n \"you're\",\n \"you've\",\n \"your\",\n \"yours\",\n \"yourself\",\n \"yourselves\"\n];\n","import stopWords from \"./stopwords\";\n\nexport function getURLP(name) {\n const elements = new RegExp(`[?|&]${name}=([^&;]+?)(&|#|;|$)`).exec(\n window.location.search\n );\n\n return (\n decodeURIComponent(\n ((elements && elements[1]) || \"\").replace(/\\+/g, \"%20\")\n ) || null\n );\n}\n\nfunction getScore(searchFor, page) {\n let score = 0;\n const pat = new RegExp(searchFor, \"gi\");\n\n if (page.title.search(pat) !== -1) {\n score += 20 * page.title.match(pat).length;\n }\n\n if (page.text.search(pat) !== -1) {\n score += 20 * page.text.match(pat).length;\n }\n\n if (page.tags.search(pat) !== -1) {\n score += 10 * page.tags.match(pat).length;\n }\n\n if (page.url.search(pat) !== -1) {\n score += 20;\n }\n\n return score;\n}\n\nfunction getStandardScore(searchWords, page) {\n let score = 0;\n for (let f = 0; f < searchWords.length; f++) {\n if (searchWords[f].match(\"^-\")) {\n const pat = new RegExp(searchWords[f].substring(1), \"i\");\n if (\n page.title.search(pat) !== -1 ||\n page.text.search(pat) !== -1 ||\n page.tags.search(pat) !== -1\n ) {\n score = 0;\n }\n } else {\n score += getScore(searchWords[f], page);\n }\n }\n\n return score;\n}\n\nexport function getSearchString(search) {\n let isStandard = true;\n let hasStopWords = false;\n if (\n (search.match('^\"') && search.match('\"$')) ||\n (search.match(\"^'\") && search.match(\"'$\"))\n ) {\n isStandard = false;\n }\n\n let searchFor;\n if (isStandard) {\n const searchWords = search.split(\" \");\n searchFor = searchWords\n .filter(word => stopWords.indexOf(word) === -1)\n .join(\" \");\n hasStopWords = search !== searchFor;\n } else {\n searchFor = searchFor.substring(1, searchFor.length - 1);\n }\n\n return {\n hasStopWords,\n isStandard,\n searchFor\n };\n}\n\nfunction makeResult(score, { title, url }, desc) {\n return {\n score,\n title,\n desc,\n url\n };\n}\n\nexport function getResults(index, searchFor, standard) {\n const found = [];\n\n let pages = index.pages;\n\n // If a searchLanguage is set, filter out all other pages\n if (window.searchLanguage) {\n pages = pages.filter(\n item => item.url.indexOf(`${window.searchLanguage}/`) === 0\n );\n }\n\n const searchWords = searchFor.split(\" \");\n for (let i = 0; i < pages.length; i++) {\n const score = standard\n ? getStandardScore(searchWords, pages[i])\n : getScore(searchFor, pages[i]);\n if (score !== 0) {\n found.push(makeResult(score, pages[i], pages[i].text));\n }\n }\n\n found.sort((a, b) => b.score - a.score);\n\n return found;\n}\n","import preact from \"preact\";\n\nimport Pagination from \"./Pagination\";\nimport Result from \"./Result\";\nimport {\n textSearchCommonWordsIgnored,\n textSearchNoResults,\n textSearchOneCharacterOrMore,\n textSearchOneResult,\n textSearchResults,\n textSearchShouldBeXOrMore,\n textSearchTooShort\n} from \"./translation\";\nimport { getResults, getSearchString } from \"./utils\";\n\n/** @jsx preact.h */\n\nexport default class Search extends preact.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n search: this.props.settings.field.value || \"\",\n start: 0\n };\n }\n\n // \"click\", \".SearchResults__close\"\n handleClose = () => {\n this.props.onClose();\n };\n\n scrollTop = () => {\n if (this.resultRef) {\n this.resultRef.scrollTop = 0;\n }\n };\n\n handlePaginate = start => {\n this.setState({ start }, this.scrollTop);\n };\n\n handleChange = event => {\n this.setState({ search: event.target.value, start: 0 }, this.scrollTop);\n\n this.props.settings.field.value = event.target.value;\n };\n\n getResults() {\n const { settings, searchIndex } = this.props;\n const { start } = this.state;\n\n const searchString = getSearchString(\n this.state.search.toLowerCase().trim()\n );\n const searchFor = searchString.searchFor;\n\n const warnings = [];\n let counter = 0;\n let results = [];\n\n if (searchFor.length < settings.minimumLength) {\n if (searchString.hasStopWords) {\n warnings.push(\n `${textSearchNoResults}. ${textSearchCommonWordsIgnored}`\n );\n } else {\n warnings.push(textSearchTooShort);\n warnings.push(\n settings.minimumLength === 1\n ? textSearchOneCharacterOrMore\n : textSearchShouldBeXOrMore.replace(\n \"!min\",\n settings.minimumLength\n )\n );\n }\n return { warnings, counter, results, start };\n }\n\n const found = getResults(\n searchIndex,\n searchString.searchFor,\n searchString.isStandard\n );\n\n counter = found.length;\n\n if (counter === 0) {\n warnings.push(textSearchNoResults);\n return { warnings, counter, results, start };\n }\n\n if (settings.showTitleCount) {\n this.props.onTitleChange(`(${counter})`);\n }\n\n results = found.filter(\n (item, itemNumber) =>\n itemNumber >= start && itemNumber < settings.show + start\n );\n\n return { warnings, counter, results, start };\n }\n\n render() {\n const { settings } = this.props;\n const { warnings, counter, results, start } = this.getResults();\n\n return (\n <div>\n <div className=\"SearchResultsBackdrop\" />\n <div\n className=\"SearchResults\"\n ref={el => (this.resultRef = el)}\n >\n <input\n className=\"Search__field\"\n placeholder=\"Search...\"\n autoComplete=\"on\"\n autoSave=\"text_search\"\n type=\"search\"\n value={this.state.search}\n onInput={this.handleChange}\n />\n <button\n className=\"SearchResults__close\"\n onClick={this.handleClose}\n >\n &times;\n </button>\n <div className=\"SearchResults__count\">\n {counter === 1\n ? textSearchOneResult\n : textSearchResults.replace(\"!count\", counter)}\n </div>\n {warnings.map(warning => (\n <div key={warning} className=\"SearchResults__warning\">\n {warning}\n </div>\n ))}\n {results.map(result => (\n <Result\n key={result.title}\n item={result}\n settings={settings}\n />\n ))}\n {counter > settings.show && (\n <Pagination\n counter={counter}\n start={start}\n settings={settings}\n onPageSelect={this.handlePaginate}\n />\n )}\n </div>\n </div>\n );\n }\n}\n","import preact from \"preact\";\n\nimport Search from \"./Search\";\n\nimport { getURLP } from \"./utils\";\n\n/** @jsx preact.h */\n\nconst originalTitle = document.title;\n\nclass SearchEngine {\n constructor(options) {\n this.settings = {\n field: document.getElementById(\"search_input\"),\n show: 10,\n showURL: true,\n showTitleCount: true,\n minimumLength: 3,\n descriptiveWords: 25,\n highlightTerms: true,\n highlightEveryTerm: false,\n contentLocation: \"search/search_index.json\",\n debug: false,\n ...options\n };\n\n this.searchIndex = {\n pages: []\n };\n }\n\n loadData() {\n if (!this.loadingPromise) {\n this.loadingPromise = fetch(\n this.settings.base_url + this.settings.contentLocation\n )\n .then(data => data.json())\n .then(json => {\n this.searchIndex = json;\n });\n }\n\n return this.loadingPromise;\n }\n\n run() {\n if (getURLP(\"q\")) {\n this.settings.field.value = getURLP(\"q\");\n\n this.loadData().then(() => {\n this.displaySearch();\n });\n }\n\n this.settings.field.addEventListener(\"keyup\", event => {\n // Start loading index once the user types text in the field, not before\n this.loadData();\n\n if (parseInt(event.keyCode, 10) === 13) {\n this.loadData().then(() => {\n this.displaySearch();\n });\n }\n });\n }\n\n keyUpHandler = e => {\n if (e.which === 27) {\n //escape\n this.handleClose();\n }\n };\n\n handleClose = () => {\n document.title = originalTitle;\n\n document.removeEventListener(\"keyup\", this.keyUpHandler);\n\n document.body.classList.remove(\"with-search\");\n preact.render(\"\", this.resultContainer, this.renderedElement);\n this.resultContainer = null;\n this.renderedElement = null;\n };\n\n displaySearch() {\n if (!this.resultContainer) {\n this.resultContainer = document.createElement(\"div\");\n document.body.appendChild(this.resultContainer);\n }\n\n document.addEventListener(\"keyup\", this.keyUpHandler);\n\n this.renderedElement = preact.render(\n <Search\n searchIndex={this.searchIndex}\n onClose={this.handleClose}\n onTitleChange={title => {\n document.title = `${title} ${originalTitle}`;\n }}\n settings={this.settings}\n />,\n this.resultContainer\n );\n\n document.body.classList.add(\"with-search\");\n document.body.scrollTop = 0;\n }\n}\n\n// Main containers\n\nfunction search(options) {\n const instance = new SearchEngine(options);\n instance.run();\n}\n\n// Declare globally\nwindow.search = search;\n"],"names":["exports","VNode","options","stack","EMPTY_CHILDREN","h","nodeName","attributes","children","lastSimple","child","simple","i","arguments","length","push","pop","undefined","String","p","key","vnode","extend","obj","props","applyRef","ref","value","current","defer","Promise","resolve","then","bind","setTimeout","cloneElement","slice","call","NO_RENDER","SYNC_RENDER","FORCE_RENDER","ASYNC_RENDER","ATTR_KEY","IS_NON_DIMENSIONAL","items","enqueueRender","component","_dirty","debounceRendering","rerender","renderComponent","isSameNodeType","node","hydrating","splitText","_componentConstructor","isNamedNode","normalizedNodeName","toLowerCase","getNodeProps","defaultProps","removeNode","parentNode","removeChild","setAccessor","name","old","isSvg","style","cssText","_i","test","innerHTML","__html","useCapture","replace","substring","addEventListener","eventProxy","removeEventListener","_listeners","e","removeAttribute","ns","removeAttributeNS","setAttributeNS","setAttribute","className","this","type","event","mounts","diffLevel","isSvgMode","flushMounts","c","shift","afterMount","componentDidMount","diff","dom","context","mountAll","parent","componentRoot","ownerSVGElement","ret","idiff","appendChild","out","prevSvgMode","_component","nodeValue","document","createTextNode","replaceChild","recollectNodeTree","vnodeName","originalComponent","oldDom","isDirectOwner","isOwner","_parentComponent","constructor","setComponentProps","base","unmountComponent","createComponent","nextBase","buildComponentFromVNode","createElementNS","createElement","firstChild","fc","vchildren","a","nextSibling","isHydrating","originalChildren","childNodes","keyed","keyedLen","min","len","childrenLen","vlen","j","f","vchild","_child","__key","trim","_key","insertBefore","_i2","innerDiffNode","dangerouslySetInnerHTML","attrs","diffAttributes","unmountOnly","removeChildren","lastChild","next","previousSibling","recyclerComponents","Ctor","inst","prototype","render","Component","doRender","splice","state","renderMode","_disable","__ref","getDerivedStateFromProps","componentWillMount","componentWillReceiveProps","prevContext","prevProps","syncComponentUpdates","isChild","previousProps","previousState","prevState","previousContext","isUpdate","initialBase","initialChildComponent","skip","snapshot","rendered","cbase","shouldComponentUpdate","componentWillUpdate","getChildContext","getSnapshotBeforeUpdate","childComponent","toUnmount","childProps","baseParent","componentRef","t","componentDidUpdate","afterUpdate","_renderCallbacks","beforeUnmount","componentWillUnmount","inner","merge","createRef","setState","callback","forceUpdate","preact","default","Object","defineProperty","factory","window","searchTranslation","Link_previous","Link_next","Search_common_words_ignored","Search_no_results","Search_one_character_or_more","Search_one_result","Search_results","Search_should_be_x_or_more","Search_too_short","textLinkPrevious","textLinkNext","textSearchCommonWordsIgnored","textSearchNoResults","textSearchOneCharacterOrMore","textSearchOneResult","textSearchResults","textSearchShouldBeXOrMore","textSearchTooShort","Pagination","displayedPages","counter","start","settings","onPageSelect","pages","Math","ceil","show","page","onClick","Result","description","item","desc","split","descriptiveWords","join","charAt","href","base_url","url","title","debug","score","showURL","getURLP","elements","RegExp","exec","location","search","decodeURIComponent","getScore","searchFor","pat","match","text","tags","getStandardScore","searchWords","makeResult","Search","handleClose","onClose","scrollTop","_this","resultRef","handlePaginate","handleChange","target","field","searchIndex","searchString","isStandard","hasStopWords","filter","word","stopWords","indexOf","getSearchString","warnings","results","minimumLength","found","index","standard","searchLanguage","sort","b","getResults","showTitleCount","onTitleChange","itemNumber","el","_this2","placeholder","autoComplete","autoSave","onInput","map","warning","result","originalTitle","SearchEngine","keyUpHandler","which","body","classList","remove","resultContainer","renderedElement","getElementById","highlightTerms","highlightEveryTerm","contentLocation","loadingPromise","fetch","data","json","loadData","_this3","displaySearch","parseInt","keyCode","add","run"],"mappings":"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IhI,UAAU,8BACVoK,QAAS,kBAAMN,EAAaF,EAAQC,EAASK,QAE5CjB,MCrCd,SAASoB,SAChBC,EADyBT,IAAAA,SAAUU,IAAAA,YAEnCA,EAAKC,OACLF,EAAcC,EAAKC,KACdC,MAAM,KACN5N,MAAM,EAAGgN,EAASa,kBAClBC,KAAK,KAENJ,EAAKC,KAAKjP,OAAS+O,EAAY/O,QACgB,MAA/C+O,EAAYM,OAAON,EAAY/O,OAAS,KAExC+O,GAAe,SAKnBtC,WAAKhI,UAAU,gBACXgI,WAAKhI,UAAU,wBACXgI,SAAG6C,KAAMhB,EAASiB,SAAWP,EAAKQ,KAAMR,EAAKS,QAEhDnB,EAASoB,OACNjD,WAAKhI,UAAU,kCAA+BuK,EAAKW,OAEtDrB,EAASsB,SACNnD,WAAKhI,UAAU,sBACXgI,SAAG6C,KAAMhB,EAASiB,SAAWP,EAAKQ,KAC7BR,EAAKQ,IAAI5M,cAAciB,QAAQ,eAAgB,MAI3DkL,EAAYE,MACTxC,WAAKhI,UAAU,uBAAuBsK,ICjDtD,MAAe,CACX,IACA,QACA,QACA,QACA,QACA,UACA,MACA,KACA,KACA,MACA,MACA,MACA,SACA,KACA,KACA,KACA,UACA,OACA,SACA,QACA,QACA,UACA,OACA,MACA,KACA,QACA,SACA,QACA,WACA,MACA,SACA,KACA,OACA,UACA,QACA,QACA,OACA,SACA,OACA,MACA,MACA,OACA,UACA,MACA,SACA,MACA,SACA,OACA,UACA,SACA,KACA,OACA,QACA,OACA,MACA,OACA,SACA,OACA,UACA,MACA,UACA,MACA,MACA,QACA,IACA,MACA,OACA,MACA,OACA,KACA,KACA,OACA,KACA,QACA,KACA,OACA,MACA,SACA,QACA,KACA,OACA,OACA,UACA,KACA,SACA,KACA,MACA,MACA,KACA,MACA,KACA,OACA,OACA,KACA,QACA,QACA,MACA,OACA,YACA,MACA,OACA,MACA,OACA,SACA,MACA,QACA,SACA,QACA,SACA,YACA,KACA,OACA,OACA,OACA,OACA,SACA,MACA,QACA,SACA,OACA,aACA,OACA,QACA,UACA,QA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"}