{"version":3,"file":"vue-meta.esm-CQWFMu-O.js","sources":["../../../resources/js/components/Common/Environment.vue","../../../resources/js/components/Common/HorizontalField.vue","../../../resources/js/components/Common/Nav/Head/Left.vue","../../../resources/js/components/Content/Sections/Index.vue","../../../resources/js/components/Content/PublicationPicker/Index.vue","../../../resources/js/components/Common/Nav/Head/Center.vue","../../../resources/js/components/Common/Nav/Head/Index.vue","../../../resources/js/components/Common/Nav/Head/Right.vue","../../../resources/js/components/Content/Help/SimpleHelp.vue","../../../resources/js/services/help.js","../../../node_modules/v-click-outside/dist/v-click-outside.umd.js","../../../node_modules/vue-clipboard2/vue-clipboard.js","../../../node_modules/clipboard/dist/clipboard.min.js","../../../resources/js/components/Common/AudioPlayer.vue","../../../node_modules/deepmerge/dist/cjs.js","../../../node_modules/vue-meta/dist/vue-meta.esm.js"],"sourcesContent":["\n\n\n\n","\n\n\n\n","\n\n\n\n","\n\n\n\n","\n\n\n\n","\n\n\n\n","\n\n\n\n","\n\n\n\n","\n\n\n\n","/**\n * @format\n * Help related API functions.\n * Abstracting these out from DataMixin.js.\n */\nimport axios from 'axios';\n\n/**\n * Create (send) a help message\n *\n * @param {Object} data Comment data\n *\n * @return Promise for resolve, reject\n */\nexport const createHelpMessage = function (data) {\n return axios\n .post(naRoutes.createHelpMessage, data)\n .then((response) => response.data);\n};\n","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=e||self)[\"v-click-outside\"]=n()}(this,function(){var e=\"undefined\"!=typeof window,n=\"undefined\"!=typeof navigator,t=e&&(\"ontouchstart\"in window||n&&navigator.msMaxTouchPoints>0)?[\"touchstart\"]:[\"click\"];function i(e){var n=e.event,t=e.handler;(0,e.middleware)(n)&&t(n)}function r(e,n){var r=function(e){var n=\"function\"==typeof e;if(!n&&\"object\"!=typeof e)throw new Error(\"v-click-outside: Binding value must be a function or an object\");return{handler:n?e:e.handler,middleware:e.middleware||function(e){return e},events:e.events||t,isActive:!(!1===e.isActive),detectIframe:!(!1===e.detectIframe)}}(n.value),d=r.handler,o=r.middleware,a=r.detectIframe;if(r.isActive){if(e[\"__v-click-outside\"]=r.events.map(function(n){return{event:n,srcTarget:document.documentElement,handler:function(n){return function(e){var n=e.el,t=e.event,r=e.handler,d=e.middleware,o=t.path||t.composedPath&&t.composedPath();(o?o.indexOf(n)<0:!n.contains(t.target))&&i({event:t,handler:r,middleware:d})}({el:e,event:n,handler:d,middleware:o})}}}),a){var c={event:\"blur\",srcTarget:window,handler:function(n){return function(e){var n=e.el,t=e.event,r=e.handler,d=e.middleware;setTimeout(function(){var e=document.activeElement;e&&\"IFRAME\"===e.tagName&&!n.contains(e)&&i({event:t,handler:r,middleware:d})},0)}({el:e,event:n,handler:d,middleware:o})}};e[\"__v-click-outside\"]=[].concat(e[\"__v-click-outside\"],[c])}e[\"__v-click-outside\"].forEach(function(n){var t=n.event,i=n.srcTarget,r=n.handler;return setTimeout(function(){e[\"__v-click-outside\"]&&i.addEventListener(t,r,!1)},0)})}}function d(e){(e[\"__v-click-outside\"]||[]).forEach(function(e){return e.srcTarget.removeEventListener(e.event,e.handler,!1)}),delete e[\"__v-click-outside\"]}var o=e?{bind:r,update:function(e,n){var t=n.value,i=n.oldValue;JSON.stringify(t)!==JSON.stringify(i)&&(d(e),r(e,{value:t}))},unbind:d}:{};return{install:function(e){e.directive(\"click-outside\",o)},directive:o}});\n//# sourceMappingURL=v-click-outside.umd.js.map\n","var Clipboard = require('clipboard/dist/clipboard.min.js') // FIXME: workaround for browserify\n\nvar VueClipboardConfig = {\n autoSetContainer: false,\n appendToBody: true // This fixes IE, see #50\n}\n\nvar VueClipboard = {\n install: function (Vue) {\n var globalPrototype = Vue.version.slice(0, 2) === '3.' ? Vue.config.globalProperties : Vue.prototype\n globalPrototype.$clipboardConfig = VueClipboardConfig\n globalPrototype.$copyText = function (text, container) {\n return new Promise(function (resolve, reject) {\n var fakeElement = document.createElement('button')\n var clipboard = new Clipboard(fakeElement, {\n text: function () { return text },\n action: function () { return 'copy' },\n container: typeof container === 'object' ? container : document.body\n })\n clipboard.on('success', function (e) {\n clipboard.destroy()\n resolve(e)\n })\n clipboard.on('error', function (e) {\n clipboard.destroy()\n reject(e)\n })\n if (VueClipboardConfig.appendToBody) document.body.appendChild(fakeElement)\n fakeElement.click()\n if (VueClipboardConfig.appendToBody) document.body.removeChild(fakeElement)\n })\n }\n\n Vue.directive('clipboard', {\n bind: function (el, binding, vnode) {\n if (binding.arg === 'success') {\n el._vClipboard_success = binding.value\n } else if (binding.arg === 'error') {\n el._vClipboard_error = binding.value\n } else {\n var clipboard = new Clipboard(el, {\n text: function () { return binding.value },\n action: function () { return binding.arg === 'cut' ? 'cut' : 'copy' },\n container: VueClipboardConfig.autoSetContainer ? el : undefined\n })\n clipboard.on('success', function (e) {\n var callback = el._vClipboard_success\n callback && callback(e)\n })\n clipboard.on('error', function (e) {\n var callback = el._vClipboard_error\n callback && callback(e)\n })\n el._vClipboard = clipboard\n }\n },\n update: function (el, binding) {\n if (binding.arg === 'success') {\n el._vClipboard_success = binding.value\n } else if (binding.arg === 'error') {\n el._vClipboard_error = binding.value\n } else {\n el._vClipboard.text = function () { return binding.value }\n el._vClipboard.action = function () { return binding.arg === 'cut' ? 'cut' : 'copy' }\n }\n },\n unbind: function (el, binding) {\n // FIXME: investigate why $element._vClipboard was missing\n if (!el._vClipboard) return\n if (binding.arg === 'success') {\n delete el._vClipboard_success\n } else if (binding.arg === 'error') {\n delete el._vClipboard_error\n } else {\n el._vClipboard.destroy()\n delete el._vClipboard\n }\n }\n })\n },\n config: VueClipboardConfig\n}\n\nif (typeof exports === 'object') {\n module.exports = VueClipboard\n} else if (typeof define === 'function' && define.amd) {\n define([], function () {\n return VueClipboard\n })\n}\n","/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT © Zeno Rocha\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){\"use strict\";n.d(e,{default:function(){return b}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),r=n.n(e);function c(t){try{return document.execCommand(t)}catch(t){return}}var a=function(t){t=r()(t);return c(\"cut\"),t};function o(t,e){var n,o,t=(n=t,o=\"rtl\"===document.documentElement.getAttribute(\"dir\"),(t=document.createElement(\"textarea\")).style.fontSize=\"12pt\",t.style.border=\"0\",t.style.padding=\"0\",t.style.margin=\"0\",t.style.position=\"absolute\",t.style[o?\"right\":\"left\"]=\"-9999px\",o=window.pageYOffset||document.documentElement.scrollTop,t.style.top=\"\".concat(o,\"px\"),t.setAttribute(\"readonly\",\"\"),t.value=n,t);return e.container.appendChild(t),e=r()(t),c(\"copy\"),t.remove(),e}var f=function(t){var e=1\n\n\n\n","'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction getMergeFunction(key, options) {\n\tif (!options.customMerge) {\n\t\treturn deepmerge\n\t}\n\tvar customMerge = options.customMerge(key);\n\treturn typeof customMerge === 'function' ? customMerge : deepmerge\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n\treturn Object.getOwnPropertySymbols\n\t\t? Object.getOwnPropertySymbols(target).filter(function(symbol) {\n\t\t\treturn Object.propertyIsEnumerable.call(target, symbol)\n\t\t})\n\t\t: []\n}\n\nfunction getKeys(target) {\n\treturn Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))\n}\n\nfunction propertyIsOnObject(object, property) {\n\ttry {\n\t\treturn property in object\n\t} catch(_) {\n\t\treturn false\n\t}\n}\n\n// Protects from prototype poisoning and unexpected merging up the prototype chain.\nfunction propertyIsUnsafe(target, key) {\n\treturn propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n\t\t&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n\t\t\t&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tgetKeys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tgetKeys(source).forEach(function(key) {\n\t\tif (propertyIsUnsafe(target, key)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n\t\t\tdestination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\t// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n\t// implementations can use it. The caller may not replace it.\n\toptions.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","/**\n * vue-meta v2.4.0\n * (c) 2020\n * - Declan de Wet\n * - Sébastien Chopin (@Atinux)\n * - Pim (@pimlie)\n * - All the amazing contributors\n * @license MIT\n */\n\nimport deepmerge from 'deepmerge';\n\nvar version = \"2.4.0\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function () {};\n\n return {\n s: F,\n n: function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function (e) {\n throw e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function () {\n it = o[Symbol.iterator]();\n },\n n: function () {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function (e) {\n didErr = true;\n err = e;\n },\n f: function () {\n try {\n if (!normalCompletion && it.return != null) it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}\n\n/**\n * checks if passed argument is an array\n * @param {any} arg - the object to check\n * @return {Boolean} - true if `arg` is an array\n */\nfunction isArray(arg) {\n return Array.isArray(arg);\n}\nfunction isUndefined(arg) {\n return typeof arg === 'undefined';\n}\nfunction isObject(arg) {\n return _typeof(arg) === 'object';\n}\nfunction isPureObject(arg) {\n return _typeof(arg) === 'object' && arg !== null;\n}\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nfunction isString(arg) {\n return typeof arg === 'string';\n}\n\nfunction hasGlobalWindowFn() {\n try {\n return !isUndefined(window);\n } catch (e) {\n return false;\n }\n}\nvar hasGlobalWindow = hasGlobalWindowFn();\n\nvar _global = hasGlobalWindow ? window : global;\n\nvar console = _global.console || {};\nfunction warn(str) {\n /* istanbul ignore next */\n if (!console || !console.warn) {\n return;\n }\n\n console.warn(str);\n}\nvar showWarningNotSupported = function showWarningNotSupported() {\n return warn('This vue app/component has no vue-meta configuration');\n};\n\n/**\n * These are constant variables used throughout the application.\n */\n// set some sane defaults\nvar defaultInfo = {\n title: undefined,\n titleChunk: '',\n titleTemplate: '%s',\n htmlAttrs: {},\n bodyAttrs: {},\n headAttrs: {},\n base: [],\n link: [],\n meta: [],\n style: [],\n script: [],\n noscript: [],\n __dangerouslyDisableSanitizers: [],\n __dangerouslyDisableSanitizersByTagID: {}\n};\nvar rootConfigKey = '_vueMeta'; // This is the name of the component option that contains all the information that\n// gets converted to the various meta tags & attributes for the page.\n\nvar keyName = 'metaInfo'; // This is the attribute vue-meta arguments on elements to know which it should\n// manage and which it should ignore.\n\nvar attribute = 'data-vue-meta'; // This is the attribute that goes on the `html` tag to inform `vue-meta`\n// that the server has already generated the meta tags for the initial render.\n\nvar ssrAttribute = 'data-vue-meta-server-rendered'; // This is the property that tells vue-meta to overwrite (instead of append)\n// an item in a tag list. For example, if you have two `meta` tag list items\n// that both have `vmid` of \"description\", then vue-meta will overwrite the\n// shallowest one with the deepest one.\n\nvar tagIDKeyName = 'vmid'; // This is the key name for possible meta templates\n\nvar metaTemplateKeyName = 'template'; // This is the key name for the content-holding property\n\nvar contentKeyName = 'content'; // The id used for the ssr app\n\nvar ssrAppId = 'ssr'; // How long meta update\n\nvar debounceWait = 10; // How long meta update\n\nvar waitOnDestroyed = true;\nvar defaultOptions = {\n keyName: keyName,\n attribute: attribute,\n ssrAttribute: ssrAttribute,\n tagIDKeyName: tagIDKeyName,\n contentKeyName: contentKeyName,\n metaTemplateKeyName: metaTemplateKeyName,\n waitOnDestroyed: waitOnDestroyed,\n debounceWait: debounceWait,\n ssrAppId: ssrAppId\n}; // might be a bit ugly, but minimizes the browser bundles a bit\n\nvar defaultInfoKeys = Object.keys(defaultInfo); // The metaInfo property keys which are used to disable escaping\n\nvar disableOptionKeys = [defaultInfoKeys[12], defaultInfoKeys[13]]; // List of metaInfo property keys which are configuration options (and dont generate html)\n\nvar metaInfoOptionKeys = [defaultInfoKeys[1], defaultInfoKeys[2], 'changed'].concat(disableOptionKeys); // List of metaInfo property keys which only generates attributes and no tags\n\nvar metaInfoAttributeKeys = [defaultInfoKeys[3], defaultInfoKeys[4], defaultInfoKeys[5]]; // HTML elements which support the onload event\n\nvar tagsSupportingOnload = ['link', 'style', 'script']; // HTML elements which dont have a head tag (shortened to our needs)\n// see: https://www.w3.org/TR/html52/document-metadata.html\n\nvar tagsWithoutEndTag = ['base', 'meta', 'link']; // HTML elements which can have inner content (shortened to our needs)\n\nvar tagsWithInnerContent = ['noscript', 'script', 'style']; // Attributes which are inserted as childNodes instead of HTMLAttribute\n\nvar tagAttributeAsInnerContent = ['innerHTML', 'cssText', 'json'];\nvar tagProperties = ['once', 'skip', 'template']; // Attributes which should be added with data- prefix\n\nvar commonDataAttributes = ['body', 'pbody']; // from: https://github.com/kangax/html-minifier/blob/gh-pages/src/htmlminifier.js#L202\n\nvar booleanHtmlAttributes = ['allowfullscreen', 'amp', 'amp-boilerplate', 'async', 'autofocus', 'autoplay', 'checked', 'compact', 'controls', 'declare', 'default', 'defaultchecked', 'defaultmuted', 'defaultselected', 'defer', 'disabled', 'enabled', 'formnovalidate', 'hidden', 'indeterminate', 'inert', 'ismap', 'itemscope', 'loop', 'multiple', 'muted', 'nohref', 'noresize', 'noshade', 'novalidate', 'nowrap', 'open', 'pauseonexit', 'readonly', 'required', 'reversed', 'scoped', 'seamless', 'selected', 'sortable', 'truespeed', 'typemustmatch', 'visible'];\n\nvar batchId = null;\nfunction triggerUpdate(_ref, rootVm, hookName) {\n var debounceWait = _ref.debounceWait;\n\n // if an update was triggered during initialization or when an update was triggered by the\n // metaInfo watcher, set initialized to null\n // then we keep falsy value but know we need to run a triggerUpdate after initialization\n if (!rootVm[rootConfigKey].initialized && (rootVm[rootConfigKey].initializing || hookName === 'watcher')) {\n rootVm[rootConfigKey].initialized = null;\n }\n\n if (rootVm[rootConfigKey].initialized && !rootVm[rootConfigKey].pausing) {\n // batch potential DOM updates to prevent extraneous re-rendering\n // eslint-disable-next-line no-void\n batchUpdate(function () {\n return void rootVm.$meta().refresh();\n }, debounceWait);\n }\n}\n/**\n * Performs a batched update.\n *\n * @param {(null|Number)} id - the ID of this update\n * @param {Function} callback - the update to perform\n * @return {Number} id - a new ID\n */\n\nfunction batchUpdate(callback, timeout) {\n timeout = timeout === undefined ? 10 : timeout;\n\n if (!timeout) {\n callback();\n return;\n }\n\n clearTimeout(batchId);\n batchId = setTimeout(function () {\n callback();\n }, timeout);\n return batchId;\n}\n\n/*\n * To reduce build size, this file provides simple polyfills without\n * overly excessive type checking and without modifying\n * the global Array.prototype\n * The polyfills are automatically removed in the commonjs build\n * Also, only files in client/ & shared/ should use these functions\n * files in server/ still use normal js function\n */\nfunction find(array, predicate, thisArg) {\n if ( !Array.prototype.find) {\n // idx needs to be a Number, for..in returns string\n for (var idx = 0; idx < array.length; idx++) {\n if (predicate.call(thisArg, array[idx], idx, array)) {\n return array[idx];\n }\n }\n\n return;\n }\n\n return array.find(predicate, thisArg);\n}\nfunction findIndex(array, predicate, thisArg) {\n if ( !Array.prototype.findIndex) {\n // idx needs to be a Number, for..in returns string\n for (var idx = 0; idx < array.length; idx++) {\n if (predicate.call(thisArg, array[idx], idx, array)) {\n return idx;\n }\n }\n\n return -1;\n }\n\n return array.findIndex(predicate, thisArg);\n}\nfunction toArray(arg) {\n if ( !Array.from) {\n return Array.prototype.slice.call(arg);\n }\n\n return Array.from(arg);\n}\nfunction includes(array, value) {\n if ( !Array.prototype.includes) {\n for (var idx in array) {\n if (array[idx] === value) {\n return true;\n }\n }\n\n return false;\n }\n\n return array.includes(value);\n}\n\nvar querySelector = function querySelector(arg, el) {\n return (el || document).querySelectorAll(arg);\n};\nfunction getTag(tags, tag) {\n if (!tags[tag]) {\n tags[tag] = document.getElementsByTagName(tag)[0];\n }\n\n return tags[tag];\n}\nfunction getElementsKey(_ref) {\n var body = _ref.body,\n pbody = _ref.pbody;\n return body ? 'body' : pbody ? 'pbody' : 'head';\n}\nfunction queryElements(parentNode, _ref2, attributes) {\n var appId = _ref2.appId,\n attribute = _ref2.attribute,\n type = _ref2.type,\n tagIDKeyName = _ref2.tagIDKeyName;\n attributes = attributes || {};\n var queries = [\"\".concat(type, \"[\").concat(attribute, \"=\\\"\").concat(appId, \"\\\"]\"), \"\".concat(type, \"[data-\").concat(tagIDKeyName, \"]\")].map(function (query) {\n for (var key in attributes) {\n var val = attributes[key];\n var attributeValue = val && val !== true ? \"=\\\"\".concat(val, \"\\\"\") : '';\n query += \"[data-\".concat(key).concat(attributeValue, \"]\");\n }\n\n return query;\n });\n return toArray(querySelector(queries.join(', '), parentNode));\n}\nfunction removeElementsByAppId(_ref3, appId) {\n var attribute = _ref3.attribute;\n toArray(querySelector(\"[\".concat(attribute, \"=\\\"\").concat(appId, \"\\\"]\"))).map(function (el) {\n return el.remove();\n });\n}\nfunction removeAttribute(el, attributeName) {\n el.removeAttribute(attributeName);\n}\n\nfunction hasMetaInfo(vm) {\n vm = vm || this;\n return vm && (vm[rootConfigKey] === true || isObject(vm[rootConfigKey]));\n} // a component is in a metaInfo branch when itself has meta info or one of its (grand-)children has\n\nfunction inMetaInfoBranch(vm) {\n vm = vm || this;\n return vm && !isUndefined(vm[rootConfigKey]);\n}\n\nfunction pause(rootVm, refresh) {\n rootVm[rootConfigKey].pausing = true;\n return function () {\n return resume(rootVm, refresh);\n };\n}\nfunction resume(rootVm, refresh) {\n rootVm[rootConfigKey].pausing = false;\n\n if (refresh || refresh === undefined) {\n return rootVm.$meta().refresh();\n }\n}\n\nfunction addNavGuards(rootVm) {\n var router = rootVm.$router; // return when nav guards already added or no router exists\n\n if (rootVm[rootConfigKey].navGuards || !router) {\n /* istanbul ignore next */\n return;\n }\n\n rootVm[rootConfigKey].navGuards = true;\n router.beforeEach(function (to, from, next) {\n pause(rootVm);\n next();\n });\n router.afterEach(function () {\n rootVm.$nextTick(function () {\n var _resume = resume(rootVm),\n metaInfo = _resume.metaInfo;\n\n if (metaInfo && isFunction(metaInfo.afterNavigation)) {\n metaInfo.afterNavigation(metaInfo);\n }\n });\n });\n}\n\nvar appId = 1;\nfunction createMixin(Vue, options) {\n // for which Vue lifecycle hooks should the metaInfo be refreshed\n var updateOnLifecycleHook = ['activated', 'deactivated', 'beforeMount'];\n var wasServerRendered = false; // watch for client side component updates\n\n return {\n beforeCreate: function beforeCreate() {\n var _this2 = this;\n\n var rootKey = '$root';\n var $root = this[rootKey];\n var $options = this.$options;\n var devtoolsEnabled = Vue.config.devtools;\n Object.defineProperty(this, '_hasMetaInfo', {\n configurable: true,\n get: function get() {\n // Show deprecation warning once when devtools enabled\n if (devtoolsEnabled && !$root[rootConfigKey].deprecationWarningShown) {\n warn('VueMeta DeprecationWarning: _hasMetaInfo has been deprecated and will be removed in a future version. Please use hasMetaInfo(vm) instead');\n $root[rootConfigKey].deprecationWarningShown = true;\n }\n\n return hasMetaInfo(this);\n }\n });\n\n if (this === $root) {\n $root.$once('hook:beforeMount', function () {\n wasServerRendered = this.$el && this.$el.nodeType === 1 && this.$el.hasAttribute('data-server-rendered'); // In most cases when you have a SSR app it will be the first app thats gonna be\n // initiated, if we cant detect the data-server-rendered attribute from Vue but we\n // do see our own ssrAttribute then _assume_ the Vue app with appId 1 is the ssr app\n // attempted fix for #404 & #562, but we rly need to refactor how we pass appIds from\n // ssr to the client\n\n if (!wasServerRendered && $root[rootConfigKey] && $root[rootConfigKey].appId === 1) {\n var htmlTag = getTag({}, 'html');\n wasServerRendered = htmlTag && htmlTag.hasAttribute(options.ssrAttribute);\n }\n });\n } // Add a marker to know if it uses metaInfo\n // _vnode is used to know that it's attached to a real component\n // useful if we use some mixin to add some meta tags (like nuxt-i18n)\n\n\n if (isUndefined($options[options.keyName]) || $options[options.keyName] === null) {\n return;\n }\n\n if (!$root[rootConfigKey]) {\n $root[rootConfigKey] = {\n appId: appId\n };\n appId++;\n\n if (devtoolsEnabled && $root.$options[options.keyName]) {\n // use nextTick so the children should be added to $root\n this.$nextTick(function () {\n // find the first child that lists fnOptions\n var child = find($root.$children, function (c) {\n return c.$vnode && c.$vnode.fnOptions;\n });\n\n if (child && child.$vnode.fnOptions[options.keyName]) {\n warn(\"VueMeta has detected a possible global mixin which adds a \".concat(options.keyName, \" property to all Vue components on the page. This could cause severe performance issues. If possible, use $meta().addApp to add meta information instead\"));\n }\n });\n }\n } // to speed up updates we keep track of branches which have a component with vue-meta info defined\n // if _vueMeta = true it has info, if _vueMeta = false a child has info\n\n\n if (!this[rootConfigKey]) {\n this[rootConfigKey] = true;\n var parent = this.$parent;\n\n while (parent && parent !== $root) {\n if (isUndefined(parent[rootConfigKey])) {\n parent[rootConfigKey] = false;\n }\n\n parent = parent.$parent;\n }\n } // coerce function-style metaInfo to a computed prop so we can observe\n // it on creation\n\n\n if (isFunction($options[options.keyName])) {\n $options.computed = $options.computed || {};\n $options.computed.$metaInfo = $options[options.keyName];\n\n if (!this.$isServer) {\n // if computed $metaInfo exists, watch it for updates & trigger a refresh\n // when it changes (i.e. automatically handle async actions that affect metaInfo)\n // credit for this suggestion goes to [Sébastien Chopin](https://github.com/Atinux)\n this.$on('hook:created', function () {\n this.$watch('$metaInfo', function () {\n triggerUpdate(options, this[rootKey], 'watcher');\n });\n });\n }\n } // force an initial refresh on page load and prevent other lifecycleHooks\n // to triggerUpdate until this initial refresh is finished\n // this is to make sure that when a page is opened in an inactive tab which\n // has throttled rAF/timers we still immediately set the page title\n\n\n if (isUndefined($root[rootConfigKey].initialized)) {\n $root[rootConfigKey].initialized = this.$isServer;\n\n if (!$root[rootConfigKey].initialized) {\n if (!$root[rootConfigKey].initializedSsr) {\n $root[rootConfigKey].initializedSsr = true;\n this.$on('hook:beforeMount', function () {\n var $root = this[rootKey]; // if this Vue-app was server rendered, set the appId to 'ssr'\n // only one SSR app per page is supported\n\n if (wasServerRendered) {\n $root[rootConfigKey].appId = options.ssrAppId;\n }\n });\n } // we use the mounted hook here as on page load\n\n\n this.$on('hook:mounted', function () {\n var $root = this[rootKey];\n\n if ($root[rootConfigKey].initialized) {\n return;\n } // used in triggerUpdate to check if a change was triggered\n // during initialization\n\n\n $root[rootConfigKey].initializing = true; // refresh meta in nextTick so all child components have loaded\n\n this.$nextTick(function () {\n var _$root$$meta$refresh = $root.$meta().refresh(),\n tags = _$root$$meta$refresh.tags,\n metaInfo = _$root$$meta$refresh.metaInfo; // After ssr hydration (identifier by tags === false) check\n // if initialized was set to null in triggerUpdate. That'd mean\n // that during initilazation changes where triggered which need\n // to be applied OR a metaInfo watcher was triggered before the\n // current hook was called\n // (during initialization all changes are blocked)\n\n\n if (tags === false && $root[rootConfigKey].initialized === null) {\n this.$nextTick(function () {\n return triggerUpdate(options, $root, 'init');\n });\n }\n\n $root[rootConfigKey].initialized = true;\n delete $root[rootConfigKey].initializing; // add the navigation guards if they havent been added yet\n // they are needed for the afterNavigation callback\n\n if (!options.refreshOnceOnNavigation && metaInfo.afterNavigation) {\n addNavGuards($root);\n }\n });\n }); // add the navigation guards if requested\n\n if (options.refreshOnceOnNavigation) {\n addNavGuards($root);\n }\n }\n }\n\n this.$on('hook:destroyed', function () {\n var _this = this;\n\n // do not trigger refresh:\n // - when user configured to not wait for transitions on destroyed\n // - when the component doesnt have a parent\n // - doesnt have metaInfo defined\n if (!this.$parent || !hasMetaInfo(this)) {\n return;\n }\n\n delete this._hasMetaInfo;\n this.$nextTick(function () {\n if (!options.waitOnDestroyed || !_this.$el || !_this.$el.offsetParent) {\n triggerUpdate(options, _this.$root, 'destroyed');\n return;\n } // Wait that element is hidden before refreshing meta tags (to support animations)\n\n\n var interval = setInterval(function () {\n if (_this.$el && _this.$el.offsetParent !== null) {\n /* istanbul ignore next line */\n return;\n }\n\n clearInterval(interval);\n triggerUpdate(options, _this.$root, 'destroyed');\n }, 50);\n });\n }); // do not trigger refresh on the server side\n\n if (this.$isServer) {\n /* istanbul ignore next */\n return;\n } // no need to add this hooks on server side\n\n\n updateOnLifecycleHook.forEach(function (lifecycleHook) {\n _this2.$on(\"hook:\".concat(lifecycleHook), function () {\n triggerUpdate(options, this[rootKey], lifecycleHook);\n });\n });\n }\n };\n}\n\nfunction setOptions(options) {\n // combine options\n options = isObject(options) ? options : {}; // The options are set like this so they can\n // be minified by terser while keeping the\n // user api intact\n // terser --mangle-properties keep_quoted=strict\n\n /* eslint-disable dot-notation */\n\n return {\n keyName: options['keyName'] || defaultOptions.keyName,\n attribute: options['attribute'] || defaultOptions.attribute,\n ssrAttribute: options['ssrAttribute'] || defaultOptions.ssrAttribute,\n tagIDKeyName: options['tagIDKeyName'] || defaultOptions.tagIDKeyName,\n contentKeyName: options['contentKeyName'] || defaultOptions.contentKeyName,\n metaTemplateKeyName: options['metaTemplateKeyName'] || defaultOptions.metaTemplateKeyName,\n debounceWait: isUndefined(options['debounceWait']) ? defaultOptions.debounceWait : options['debounceWait'],\n waitOnDestroyed: isUndefined(options['waitOnDestroyed']) ? defaultOptions.waitOnDestroyed : options['waitOnDestroyed'],\n ssrAppId: options['ssrAppId'] || defaultOptions.ssrAppId,\n refreshOnceOnNavigation: !!options['refreshOnceOnNavigation']\n };\n /* eslint-enable dot-notation */\n}\nfunction getOptions(options) {\n var optionsCopy = {};\n\n for (var key in options) {\n optionsCopy[key] = options[key];\n }\n\n return optionsCopy;\n}\n\nfunction ensureIsArray(arg, key) {\n if (!key || !isObject(arg)) {\n return isArray(arg) ? arg : [];\n }\n\n if (!isArray(arg[key])) {\n arg[key] = [];\n }\n\n return arg;\n}\n\nvar serverSequences = [[/&/g, '&'], [//g, '>'], [/\"/g, '"'], [/'/g, ''']];\nvar clientSequences = [[/&/g, \"&\"], [//g, \">\"], [/\"/g, \"\\\"\"], [/'/g, \"'\"]]; // sanitizes potentially dangerous characters\n\nfunction escape(info, options, escapeOptions, escapeKeys) {\n var tagIDKeyName = options.tagIDKeyName;\n var _escapeOptions$doEsca = escapeOptions.doEscape,\n doEscape = _escapeOptions$doEsca === void 0 ? function (v) {\n return v;\n } : _escapeOptions$doEsca;\n var escaped = {};\n\n for (var key in info) {\n var value = info[key]; // no need to escape configuration options\n\n if (includes(metaInfoOptionKeys, key)) {\n escaped[key] = value;\n continue;\n } // do not use destructuring for disableOptionKeys, it increases transpiled size\n // due to var checks while we are guaranteed the structure of the cb\n\n\n var disableKey = disableOptionKeys[0];\n\n if (escapeOptions[disableKey] && includes(escapeOptions[disableKey], key)) {\n // this info[key] doesnt need to escaped if the option is listed in __dangerouslyDisableSanitizers\n escaped[key] = value;\n continue;\n }\n\n var tagId = info[tagIDKeyName];\n\n if (tagId) {\n disableKey = disableOptionKeys[1]; // keys which are listed in __dangerouslyDisableSanitizersByTagID for the current vmid do not need to be escaped\n\n if (escapeOptions[disableKey] && escapeOptions[disableKey][tagId] && includes(escapeOptions[disableKey][tagId], key)) {\n escaped[key] = value;\n continue;\n }\n }\n\n if (isString(value)) {\n escaped[key] = doEscape(value);\n } else if (isArray(value)) {\n escaped[key] = value.map(function (v) {\n if (isPureObject(v)) {\n return escape(v, options, escapeOptions, true);\n }\n\n return doEscape(v);\n });\n } else if (isPureObject(value)) {\n escaped[key] = escape(value, options, escapeOptions, true);\n } else {\n escaped[key] = value;\n }\n\n if (escapeKeys) {\n var escapedKey = doEscape(key);\n\n if (key !== escapedKey) {\n escaped[escapedKey] = escaped[key];\n delete escaped[key];\n }\n }\n }\n\n return escaped;\n}\nfunction escapeMetaInfo(options, info, escapeSequences) {\n escapeSequences = escapeSequences || []; // do not use destructuring for seq, it increases transpiled size\n // due to var checks while we are guaranteed the structure of the cb\n\n var escapeOptions = {\n doEscape: function doEscape(value) {\n return escapeSequences.reduce(function (val, seq) {\n return val.replace(seq[0], seq[1]);\n }, value);\n }\n };\n disableOptionKeys.forEach(function (disableKey, index) {\n if (index === 0) {\n ensureIsArray(info, disableKey);\n } else if (index === 1) {\n for (var key in info[disableKey]) {\n ensureIsArray(info[disableKey], key);\n }\n }\n\n escapeOptions[disableKey] = info[disableKey];\n }); // begin sanitization\n\n return escape(info, options, escapeOptions);\n}\n\nfunction applyTemplate(_ref, headObject, template, chunk) {\n var component = _ref.component,\n metaTemplateKeyName = _ref.metaTemplateKeyName,\n contentKeyName = _ref.contentKeyName;\n\n if (template === true || headObject[metaTemplateKeyName] === true) {\n // abort, template was already applied\n return false;\n }\n\n if (isUndefined(template) && headObject[metaTemplateKeyName]) {\n template = headObject[metaTemplateKeyName];\n headObject[metaTemplateKeyName] = true;\n } // return early if no template defined\n\n\n if (!template) {\n // cleanup faulty template properties\n delete headObject[metaTemplateKeyName];\n return false;\n }\n\n if (isUndefined(chunk)) {\n chunk = headObject[contentKeyName];\n }\n\n headObject[contentKeyName] = isFunction(template) ? template.call(component, chunk) : template.replace(/%s/g, chunk);\n return true;\n}\n\nfunction _arrayMerge(_ref, target, source) {\n var component = _ref.component,\n tagIDKeyName = _ref.tagIDKeyName,\n metaTemplateKeyName = _ref.metaTemplateKeyName,\n contentKeyName = _ref.contentKeyName;\n // we concat the arrays without merging objects contained in,\n // but we check for a `vmid` property on each object in the array\n // using an O(1) lookup associative array exploit\n var destination = [];\n\n if (!target.length && !source.length) {\n return destination;\n }\n\n target.forEach(function (targetItem, targetIndex) {\n // no tagID so no need to check for duplicity\n if (!targetItem[tagIDKeyName]) {\n destination.push(targetItem);\n return;\n }\n\n var sourceIndex = findIndex(source, function (item) {\n return item[tagIDKeyName] === targetItem[tagIDKeyName];\n });\n var sourceItem = source[sourceIndex]; // source doesnt contain any duplicate vmid's, we can keep targetItem\n\n if (sourceIndex === -1) {\n destination.push(targetItem);\n return;\n } // when sourceItem explictly defines contentKeyName or innerHTML as undefined, its\n // an indication that we need to skip the default behaviour or child has preference over parent\n // which means we keep the targetItem and ignore/remove the sourceItem\n\n\n if (contentKeyName in sourceItem && sourceItem[contentKeyName] === undefined || 'innerHTML' in sourceItem && sourceItem.innerHTML === undefined) {\n destination.push(targetItem); // remove current index from source array so its not concatenated to destination below\n\n source.splice(sourceIndex, 1);\n return;\n } // we now know that targetItem is a duplicate and we should ignore it in favor of sourceItem\n // if source specifies null as content then ignore both the target as the source\n\n\n if (sourceItem[contentKeyName] === null || sourceItem.innerHTML === null) {\n // remove current index from source array so its not concatenated to destination below\n source.splice(sourceIndex, 1);\n return;\n } // now we only need to check if the target has a template to combine it with the source\n\n\n var targetTemplate = targetItem[metaTemplateKeyName];\n\n if (!targetTemplate) {\n return;\n }\n\n var sourceTemplate = sourceItem[metaTemplateKeyName];\n\n if (!sourceTemplate) {\n // use parent template and child content\n applyTemplate({\n component: component,\n metaTemplateKeyName: metaTemplateKeyName,\n contentKeyName: contentKeyName\n }, sourceItem, targetTemplate); // set template to true to indicate template was already applied\n\n sourceItem.template = true;\n return;\n }\n\n if (!sourceItem[contentKeyName]) {\n // use parent content and child template\n applyTemplate({\n component: component,\n metaTemplateKeyName: metaTemplateKeyName,\n contentKeyName: contentKeyName\n }, sourceItem, undefined, targetItem[contentKeyName]);\n }\n });\n return destination.concat(source);\n}\nvar warningShown = false;\nfunction merge(target, source, options) {\n options = options || {}; // remove properties explicitly set to false so child components can\n // optionally _not_ overwrite the parents content\n // (for array properties this is checked in arrayMerge)\n\n if (source.title === undefined) {\n delete source.title;\n }\n\n metaInfoAttributeKeys.forEach(function (attrKey) {\n if (!source[attrKey]) {\n return;\n }\n\n for (var key in source[attrKey]) {\n if (key in source[attrKey] && source[attrKey][key] === undefined) {\n if (includes(booleanHtmlAttributes, key) && !warningShown) {\n warn('VueMeta: Please note that since v2 the value undefined is not used to indicate boolean attributes anymore, see migration guide for details');\n warningShown = true;\n }\n\n delete source[attrKey][key];\n }\n }\n });\n return deepmerge(target, source, {\n arrayMerge: function arrayMerge(t, s) {\n return _arrayMerge(options, t, s);\n }\n });\n}\n\nfunction getComponentMetaInfo(options, component) {\n return getComponentOption(options || {}, component, defaultInfo);\n}\n/**\n * Returns the `opts.option` $option value of the given `opts.component`.\n * If methods are encountered, they will be bound to the component context.\n * If `opts.deep` is true, will recursively merge all child component\n * `opts.option` $option values into the returned result.\n *\n * @param {Object} opts - options\n * @param {Object} opts.component - Vue component to fetch option data from\n * @param {Boolean} opts.deep - look for data in child components as well?\n * @param {Function} opts.arrayMerge - how should arrays be merged?\n * @param {String} opts.keyName - the name of the option to look for\n * @param {Object} [result={}] - result so far\n * @return {Object} result - final aggregated result\n */\n\nfunction getComponentOption(options, component, result) {\n result = result || {};\n\n if (component._inactive) {\n return result;\n }\n\n options = options || {};\n var _options = options,\n keyName = _options.keyName;\n var $metaInfo = component.$metaInfo,\n $options = component.$options,\n $children = component.$children; // only collect option data if it exists\n\n if ($options[keyName]) {\n // if $metaInfo exists then [keyName] was defined as a function\n // and set to the computed prop $metaInfo in the mixin\n // using the computed prop should be a small performance increase\n // because Vue caches those internally\n var data = $metaInfo || $options[keyName]; // only merge data with result when its an object\n // eg it could be a function when metaInfo() returns undefined\n // dueo to the or statement above\n\n if (isObject(data)) {\n result = merge(result, data, options);\n }\n } // collect & aggregate child options if deep = true\n\n\n if ($children.length) {\n $children.forEach(function (childComponent) {\n // check if the childComponent is in a branch\n // return otherwise so we dont walk all component branches unnecessarily\n if (!inMetaInfoBranch(childComponent)) {\n return;\n }\n\n result = getComponentOption(options, childComponent, result);\n });\n }\n\n return result;\n}\n\nvar callbacks = [];\nfunction isDOMComplete(d) {\n return (d || document).readyState === 'complete';\n}\nfunction addCallback(query, callback) {\n if (arguments.length === 1) {\n callback = query;\n query = '';\n }\n\n callbacks.push([query, callback]);\n}\nfunction addCallbacks(_ref, type, tags, autoAddListeners) {\n var tagIDKeyName = _ref.tagIDKeyName;\n var hasAsyncCallback = false;\n tags.forEach(function (tag) {\n if (!tag[tagIDKeyName] || !tag.callback) {\n return;\n }\n\n hasAsyncCallback = true;\n addCallback(\"\".concat(type, \"[data-\").concat(tagIDKeyName, \"=\\\"\").concat(tag[tagIDKeyName], \"\\\"]\"), tag.callback);\n });\n\n if (!autoAddListeners || !hasAsyncCallback) {\n return hasAsyncCallback;\n }\n\n return addListeners();\n}\nfunction addListeners() {\n if (isDOMComplete()) {\n applyCallbacks();\n return;\n } // Instead of using a MutationObserver, we just apply\n\n /* istanbul ignore next */\n\n\n document.onreadystatechange = function () {\n applyCallbacks();\n };\n}\nfunction applyCallbacks(matchElement) {\n callbacks.forEach(function (args) {\n // do not use destructuring for args, it increases transpiled size\n // due to var checks while we are guaranteed the structure of the cb\n var query = args[0];\n var callback = args[1];\n var selector = \"\".concat(query, \"[onload=\\\"this.__vm_l=1\\\"]\");\n var elements = [];\n\n if (!matchElement) {\n elements = toArray(querySelector(selector));\n }\n\n if (matchElement && matchElement.matches(selector)) {\n elements = [matchElement];\n }\n\n elements.forEach(function (element) {\n /* __vm_cb: whether the load callback has been called\n * __vm_l: set by onload attribute, whether the element was loaded\n * __vm_ev: whether the event listener was added or not\n */\n if (element.__vm_cb) {\n return;\n }\n\n var onload = function onload() {\n /* Mark that the callback for this element has already been called,\n * this prevents the callback to run twice in some (rare) conditions\n */\n element.__vm_cb = true;\n /* onload needs to be removed because we only need the\n * attribute after ssr and if we dont remove it the node\n * will fail isEqualNode on the client\n */\n\n removeAttribute(element, 'onload');\n callback(element);\n };\n /* IE9 doesnt seem to load scripts synchronously,\n * causing a script sometimes/often already to be loaded\n * when we add the event listener below (thus adding an onload event\n * listener has no use because it will never be triggered).\n * Therefore we add the onload attribute during ssr, and\n * check here if it was already loaded or not\n */\n\n\n if (element.__vm_l) {\n onload();\n return;\n }\n\n if (!element.__vm_ev) {\n element.__vm_ev = true;\n element.addEventListener('load', onload);\n }\n });\n });\n}\n\n// instead of adding it to the html\n\nvar attributeMap = {};\n/**\n * Updates the document's html tag attributes\n *\n * @param {Object} attrs - the new document html attributes\n * @param {HTMLElement} tag - the HTMLElement tag to update with new attrs\n */\n\nfunction updateAttribute(appId, options, type, attrs, tag) {\n var _ref = options || {},\n attribute = _ref.attribute;\n\n var vueMetaAttrString = tag.getAttribute(attribute);\n\n if (vueMetaAttrString) {\n attributeMap[type] = JSON.parse(decodeURI(vueMetaAttrString));\n removeAttribute(tag, attribute);\n }\n\n var data = attributeMap[type] || {};\n var toUpdate = []; // remove attributes from the map\n // which have been removed for this appId\n\n for (var attr in data) {\n if (data[attr] !== undefined && appId in data[attr]) {\n toUpdate.push(attr);\n\n if (!attrs[attr]) {\n delete data[attr][appId];\n }\n }\n }\n\n for (var _attr in attrs) {\n var attrData = data[_attr];\n\n if (!attrData || attrData[appId] !== attrs[_attr]) {\n toUpdate.push(_attr);\n\n if (attrs[_attr] !== undefined) {\n data[_attr] = data[_attr] || {};\n data[_attr][appId] = attrs[_attr];\n }\n }\n }\n\n for (var _i = 0, _toUpdate = toUpdate; _i < _toUpdate.length; _i++) {\n var _attr2 = _toUpdate[_i];\n var _attrData = data[_attr2];\n var attrValues = [];\n\n for (var _appId in _attrData) {\n Array.prototype.push.apply(attrValues, [].concat(_attrData[_appId]));\n }\n\n if (attrValues.length) {\n var attrValue = includes(booleanHtmlAttributes, _attr2) && attrValues.some(Boolean) ? '' : attrValues.filter(function (v) {\n return v !== undefined;\n }).join(' ');\n tag.setAttribute(_attr2, attrValue);\n } else {\n removeAttribute(tag, _attr2);\n }\n }\n\n attributeMap[type] = data;\n}\n\n/**\n * Updates the document title\n *\n * @param {String} title - the new title of the document\n */\nfunction updateTitle(title) {\n if (!title && title !== '') {\n return;\n }\n\n document.title = title;\n}\n\n/**\n * Updates meta tags inside and on the client. Borrowed from `react-helmet`:\n * https://github.com/nfl/react-helmet/blob/004d448f8de5f823d10f838b02317521180f34da/src/Helmet.js#L195-L245\n *\n * @param {('meta'|'base'|'link'|'style'|'script'|'noscript')} type - the name of the tag\n * @param {(Array|Object)} tags - an array of tag objects or a single object in case of base\n * @return {Object} - a representation of what tags changed\n */\n\nfunction updateTag(appId, options, type, tags, head, body) {\n var _ref = options || {},\n attribute = _ref.attribute,\n tagIDKeyName = _ref.tagIDKeyName;\n\n var dataAttributes = commonDataAttributes.slice();\n dataAttributes.push(tagIDKeyName);\n var newElements = [];\n var queryOptions = {\n appId: appId,\n attribute: attribute,\n type: type,\n tagIDKeyName: tagIDKeyName\n };\n var currentElements = {\n head: queryElements(head, queryOptions),\n pbody: queryElements(body, queryOptions, {\n pbody: true\n }),\n body: queryElements(body, queryOptions, {\n body: true\n })\n };\n\n if (tags.length > 1) {\n // remove duplicates that could have been found by merging tags\n // which include a mixin with metaInfo and that mixin is used\n // by multiple components on the same page\n var found = [];\n tags = tags.filter(function (x) {\n var k = JSON.stringify(x);\n var res = !includes(found, k);\n found.push(k);\n return res;\n });\n }\n\n tags.forEach(function (tag) {\n if (tag.skip) {\n return;\n }\n\n var newElement = document.createElement(type);\n\n if (!tag.once) {\n newElement.setAttribute(attribute, appId);\n }\n\n Object.keys(tag).forEach(function (attr) {\n /* istanbul ignore next */\n if (includes(tagProperties, attr)) {\n return;\n }\n\n if (attr === 'innerHTML') {\n newElement.innerHTML = tag.innerHTML;\n return;\n }\n\n if (attr === 'json') {\n newElement.innerHTML = JSON.stringify(tag.json);\n return;\n }\n\n if (attr === 'cssText') {\n if (newElement.styleSheet) {\n /* istanbul ignore next */\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n\n return;\n }\n\n if (attr === 'callback') {\n newElement.onload = function () {\n return tag[attr](newElement);\n };\n\n return;\n }\n\n var _attr = includes(dataAttributes, attr) ? \"data-\".concat(attr) : attr;\n\n var isBooleanAttribute = includes(booleanHtmlAttributes, attr);\n\n if (isBooleanAttribute && !tag[attr]) {\n return;\n }\n\n var value = isBooleanAttribute ? '' : tag[attr];\n newElement.setAttribute(_attr, value);\n });\n var oldElements = currentElements[getElementsKey(tag)]; // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n\n var indexToDelete;\n var hasEqualElement = oldElements.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n });\n\n if (hasEqualElement && (indexToDelete || indexToDelete === 0)) {\n oldElements.splice(indexToDelete, 1);\n } else {\n newElements.push(newElement);\n }\n });\n var oldElements = [];\n\n for (var _type in currentElements) {\n Array.prototype.push.apply(oldElements, currentElements[_type]);\n } // remove old elements\n\n\n oldElements.forEach(function (element) {\n element.parentNode.removeChild(element);\n }); // insert new elements\n\n newElements.forEach(function (element) {\n if (element.hasAttribute('data-body')) {\n body.appendChild(element);\n return;\n }\n\n if (element.hasAttribute('data-pbody')) {\n body.insertBefore(element, body.firstChild);\n return;\n }\n\n head.appendChild(element);\n });\n return {\n oldTags: oldElements,\n newTags: newElements\n };\n}\n\n/**\n * Performs client-side updates when new meta info is received\n *\n * @param {Object} newInfo - the meta info to update to\n */\n\nfunction updateClientMetaInfo(appId, options, newInfo) {\n options = options || {};\n var _options = options,\n ssrAttribute = _options.ssrAttribute,\n ssrAppId = _options.ssrAppId; // only cache tags for current update\n\n var tags = {};\n var htmlTag = getTag(tags, 'html'); // if this is a server render, then dont update\n\n if (appId === ssrAppId && htmlTag.hasAttribute(ssrAttribute)) {\n // remove the server render attribute so we can update on (next) changes\n removeAttribute(htmlTag, ssrAttribute); // add load callbacks if the\n\n var addLoadListeners = false;\n tagsSupportingOnload.forEach(function (type) {\n if (newInfo[type] && addCallbacks(options, type, newInfo[type])) {\n addLoadListeners = true;\n }\n });\n\n if (addLoadListeners) {\n addListeners();\n }\n\n return false;\n } // initialize tracked changes\n\n\n var tagsAdded = {};\n var tagsRemoved = {};\n\n for (var type in newInfo) {\n // ignore these\n if (includes(metaInfoOptionKeys, type)) {\n continue;\n }\n\n if (type === 'title') {\n // update the title\n updateTitle(newInfo.title);\n continue;\n }\n\n if (includes(metaInfoAttributeKeys, type)) {\n var tagName = type.substr(0, 4);\n updateAttribute(appId, options, type, newInfo[type], getTag(tags, tagName));\n continue;\n } // tags should always be an array, ignore if it isnt\n\n\n if (!isArray(newInfo[type])) {\n continue;\n }\n\n var _updateTag = updateTag(appId, options, type, newInfo[type], getTag(tags, 'head'), getTag(tags, 'body')),\n oldTags = _updateTag.oldTags,\n newTags = _updateTag.newTags;\n\n if (newTags.length) {\n tagsAdded[type] = newTags;\n tagsRemoved[type] = oldTags;\n }\n }\n\n return {\n tagsAdded: tagsAdded,\n tagsRemoved: tagsRemoved\n };\n}\n\nvar appsMetaInfo;\nfunction addApp(rootVm, appId, options) {\n return {\n set: function set(metaInfo) {\n return setMetaInfo(rootVm, appId, options, metaInfo);\n },\n remove: function remove() {\n return removeMetaInfo(rootVm, appId, options);\n }\n };\n}\nfunction setMetaInfo(rootVm, appId, options, metaInfo) {\n // if a vm exists _and_ its mounted then immediately update\n if (rootVm && rootVm.$el) {\n return updateClientMetaInfo(appId, options, metaInfo);\n } // store for later, the info\n // will be set on the first refresh\n\n\n appsMetaInfo = appsMetaInfo || {};\n appsMetaInfo[appId] = metaInfo;\n}\nfunction removeMetaInfo(rootVm, appId, options) {\n if (rootVm && rootVm.$el) {\n var tags = {};\n\n var _iterator = _createForOfIteratorHelper(metaInfoAttributeKeys),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var type = _step.value;\n var tagName = type.substr(0, 4);\n updateAttribute(appId, options, type, {}, getTag(tags, tagName));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return removeElementsByAppId(options, appId);\n }\n\n if (appsMetaInfo[appId]) {\n delete appsMetaInfo[appId];\n clearAppsMetaInfo();\n }\n}\nfunction getAppsMetaInfo() {\n return appsMetaInfo;\n}\nfunction clearAppsMetaInfo(force) {\n if (force || !Object.keys(appsMetaInfo).length) {\n appsMetaInfo = undefined;\n }\n}\n\n/**\n * Returns the correct meta info for the given component\n * (child components will overwrite parent meta info)\n *\n * @param {Object} component - the Vue instance to get meta info from\n * @return {Object} - returned meta info\n */\n\nfunction getMetaInfo(options, info, escapeSequences, component) {\n options = options || {};\n escapeSequences = escapeSequences || [];\n var _options = options,\n tagIDKeyName = _options.tagIDKeyName; // Remove all \"template\" tags from meta\n // backup the title chunk in case user wants access to it\n\n if (info.title) {\n info.titleChunk = info.title;\n } // replace title with populated template\n\n\n if (info.titleTemplate && info.titleTemplate !== '%s') {\n applyTemplate({\n component: component,\n contentKeyName: 'title'\n }, info, info.titleTemplate, info.titleChunk || '');\n } // convert base tag to an array so it can be handled the same way\n // as the other tags\n\n\n if (info.base) {\n info.base = Object.keys(info.base).length ? [info.base] : [];\n }\n\n if (info.meta) {\n // remove meta items with duplicate vmid's\n info.meta = info.meta.filter(function (metaItem, index, arr) {\n var hasVmid = !!metaItem[tagIDKeyName];\n\n if (!hasVmid) {\n return true;\n }\n\n var isFirstItemForVmid = index === findIndex(arr, function (item) {\n return item[tagIDKeyName] === metaItem[tagIDKeyName];\n });\n return isFirstItemForVmid;\n }); // apply templates if needed\n\n info.meta.forEach(function (metaObject) {\n return applyTemplate(options, metaObject);\n });\n }\n\n return escapeMetaInfo(options, info, escapeSequences);\n}\n\n/**\n * When called, will update the current meta info with new meta info.\n * Useful when updating meta info as the result of an asynchronous\n * action that resolves after the initial render takes place.\n *\n * Credit to [Sébastien Chopin](https://github.com/Atinux) for the suggestion\n * to implement this method.\n *\n * @return {Object} - new meta info\n */\n\nfunction refresh(rootVm, options) {\n options = options || {}; // make sure vue-meta was initiated\n\n if (!rootVm[rootConfigKey]) {\n showWarningNotSupported();\n return {};\n } // collect & aggregate all metaInfo $options\n\n\n var rawInfo = getComponentMetaInfo(options, rootVm);\n var metaInfo = getMetaInfo(options, rawInfo, clientSequences, rootVm);\n var appId = rootVm[rootConfigKey].appId;\n var tags = updateClientMetaInfo(appId, options, metaInfo); // emit \"event\" with new info\n\n if (tags && isFunction(metaInfo.changed)) {\n metaInfo.changed(metaInfo, tags.tagsAdded, tags.tagsRemoved);\n tags = {\n addedTags: tags.tagsAdded,\n removedTags: tags.tagsRemoved\n };\n }\n\n var appsMetaInfo = getAppsMetaInfo();\n\n if (appsMetaInfo) {\n for (var additionalAppId in appsMetaInfo) {\n updateClientMetaInfo(additionalAppId, options, appsMetaInfo[additionalAppId]);\n delete appsMetaInfo[additionalAppId];\n }\n\n clearAppsMetaInfo(true);\n }\n\n return {\n vm: rootVm,\n metaInfo: metaInfo,\n // eslint-disable-line object-shorthand\n tags: tags\n };\n}\n\n/**\n * Generates tag attributes for use on the server.\n *\n * @param {('bodyAttrs'|'htmlAttrs'|'headAttrs')} type - the type of attributes to generate\n * @param {Object} data - the attributes to generate\n * @return {Object} - the attribute generator\n */\n\nfunction attributeGenerator(options, type, data, _ref) {\n var addSsrAttribute = _ref.addSsrAttribute;\n\n var _ref2 = options || {},\n attribute = _ref2.attribute,\n ssrAttribute = _ref2.ssrAttribute;\n\n var attributeStr = '';\n\n for (var attr in data) {\n var attrData = data[attr];\n var attrValues = [];\n\n for (var appId in attrData) {\n attrValues.push.apply(attrValues, _toConsumableArray([].concat(attrData[appId])));\n }\n\n if (attrValues.length) {\n attributeStr += booleanHtmlAttributes.includes(attr) && attrValues.some(Boolean) ? \"\".concat(attr) : \"\".concat(attr, \"=\\\"\").concat(attrValues.join(' '), \"\\\"\");\n attributeStr += ' ';\n }\n }\n\n if (attributeStr) {\n attributeStr += \"\".concat(attribute, \"=\\\"\").concat(encodeURI(JSON.stringify(data)), \"\\\"\");\n }\n\n if (type === 'htmlAttrs' && addSsrAttribute) {\n return \"\".concat(ssrAttribute).concat(attributeStr ? ' ' : '').concat(attributeStr);\n }\n\n return attributeStr;\n}\n\n/**\n * Generates title output for the server\n *\n * @param {'title'} type - the string \"title\"\n * @param {String} data - the title text\n * @return {Object} - the title generator\n */\nfunction titleGenerator(options, type, data, generatorOptions) {\n var _ref = generatorOptions || {},\n ln = _ref.ln;\n\n if (!data) {\n return '';\n }\n\n return \"<\".concat(type, \">\").concat(data, \"\").concat(ln ? '\\n' : '');\n}\n\n/**\n * Generates meta, base, link, style, script, noscript tags for use on the server\n *\n * @param {('meta'|'base'|'link'|'style'|'script'|'noscript')} the name of the tag\n * @param {(Array|Object)} tags - an array of tag objects or a single object in case of base\n * @return {Object} - the tag generator\n */\n\nfunction tagGenerator(options, type, tags, generatorOptions) {\n var _ref = options || {},\n ssrAppId = _ref.ssrAppId,\n attribute = _ref.attribute,\n tagIDKeyName = _ref.tagIDKeyName;\n\n var _ref2 = generatorOptions || {},\n appId = _ref2.appId,\n _ref2$isSSR = _ref2.isSSR,\n isSSR = _ref2$isSSR === void 0 ? true : _ref2$isSSR,\n _ref2$body = _ref2.body,\n body = _ref2$body === void 0 ? false : _ref2$body,\n _ref2$pbody = _ref2.pbody,\n pbody = _ref2$pbody === void 0 ? false : _ref2$pbody,\n _ref2$ln = _ref2.ln,\n ln = _ref2$ln === void 0 ? false : _ref2$ln;\n\n var dataAttributes = [tagIDKeyName].concat(_toConsumableArray(commonDataAttributes));\n\n if (!tags || !tags.length) {\n return '';\n } // build a string containing all tags of this type\n\n\n return tags.reduce(function (tagsStr, tag) {\n if (tag.skip) {\n return tagsStr;\n }\n\n var tagKeys = Object.keys(tag);\n\n if (tagKeys.length === 0) {\n return tagsStr; // Bail on empty tag object\n }\n\n if (Boolean(tag.body) !== body || Boolean(tag.pbody) !== pbody) {\n return tagsStr;\n }\n\n var attrs = tag.once ? '' : \" \".concat(attribute, \"=\\\"\").concat(appId || (isSSR === false ? '1' : ssrAppId), \"\\\"\"); // build a string containing all attributes of this tag\n\n for (var attr in tag) {\n // these attributes are treated as children on the tag\n if (tagAttributeAsInnerContent.includes(attr) || tagProperties.includes(attr)) {\n continue;\n }\n\n if (attr === 'callback') {\n attrs += ' onload=\"this.__vm_l=1\"';\n continue;\n } // these form the attribute list for this tag\n\n\n var prefix = '';\n\n if (dataAttributes.includes(attr)) {\n prefix = 'data-';\n }\n\n var isBooleanAttr = !prefix && booleanHtmlAttributes.includes(attr);\n\n if (isBooleanAttr && !tag[attr]) {\n continue;\n }\n\n attrs += \" \".concat(prefix).concat(attr) + (isBooleanAttr ? '' : \"=\\\"\".concat(tag[attr], \"\\\"\"));\n }\n\n var json = '';\n\n if (tag.json) {\n json = JSON.stringify(tag.json);\n } // grab child content from one of these attributes, if possible\n\n\n var content = tag.innerHTML || tag.cssText || json; // generate tag exactly without any other redundant attribute\n // these tags have no end tag\n\n var hasEndTag = !tagsWithoutEndTag.includes(type); // these tag types will have content inserted\n\n var hasContent = hasEndTag && tagsWithInnerContent.includes(type); // the final string for this specific tag\n\n return \"\".concat(tagsStr, \"<\").concat(type).concat(attrs).concat(!hasContent && hasEndTag ? '/' : '', \">\") + (hasContent ? \"\".concat(content, \"\") : '') + (ln ? '\\n' : '');\n }, '');\n}\n\n/**\n * Converts a meta info property to one that can be stringified on the server\n *\n * @param {String} type - the type of data to convert\n * @param {(String|Object|Array)} data - the data value\n * @return {Object} - the new injector\n */\n\nfunction generateServerInjector(options, metaInfo, globalInjectOptions) {\n var serverInjector = {\n data: metaInfo,\n extraData: undefined,\n addInfo: function addInfo(appId, metaInfo) {\n this.extraData = this.extraData || {};\n this.extraData[appId] = metaInfo;\n },\n callInjectors: function callInjectors(opts) {\n var m = this.injectors; // only call title for the head\n\n return (opts.body || opts.pbody ? '' : m.title.text(opts)) + m.meta.text(opts) + m.base.text(opts) + m.link.text(opts) + m.style.text(opts) + m.script.text(opts) + m.noscript.text(opts);\n },\n injectors: {\n head: function head(ln) {\n return serverInjector.callInjectors(_objectSpread2(_objectSpread2({}, globalInjectOptions), {}, {\n ln: ln\n }));\n },\n bodyPrepend: function bodyPrepend(ln) {\n return serverInjector.callInjectors(_objectSpread2(_objectSpread2({}, globalInjectOptions), {}, {\n ln: ln,\n pbody: true\n }));\n },\n bodyAppend: function bodyAppend(ln) {\n return serverInjector.callInjectors(_objectSpread2(_objectSpread2({}, globalInjectOptions), {}, {\n ln: ln,\n body: true\n }));\n }\n }\n };\n\n var _loop = function _loop(type) {\n if (metaInfoOptionKeys.includes(type)) {\n return \"continue\";\n }\n\n serverInjector.injectors[type] = {\n text: function text(injectOptions) {\n var addSsrAttribute = injectOptions === true;\n injectOptions = _objectSpread2(_objectSpread2({\n addSsrAttribute: addSsrAttribute\n }, globalInjectOptions), injectOptions);\n\n if (type === 'title') {\n return titleGenerator(options, type, serverInjector.data[type], injectOptions);\n }\n\n if (metaInfoAttributeKeys.includes(type)) {\n var attributeData = {};\n var data = serverInjector.data[type];\n\n if (data) {\n var appId = injectOptions.isSSR === false ? '1' : options.ssrAppId;\n\n for (var attr in data) {\n attributeData[attr] = _defineProperty({}, appId, data[attr]);\n }\n }\n\n if (serverInjector.extraData) {\n for (var _appId in serverInjector.extraData) {\n var _data = serverInjector.extraData[_appId][type];\n\n if (_data) {\n for (var _attr in _data) {\n attributeData[_attr] = _objectSpread2(_objectSpread2({}, attributeData[_attr]), {}, _defineProperty({}, _appId, _data[_attr]));\n }\n }\n }\n }\n\n return attributeGenerator(options, type, attributeData, injectOptions);\n }\n\n var str = tagGenerator(options, type, serverInjector.data[type], injectOptions);\n\n if (serverInjector.extraData) {\n for (var _appId2 in serverInjector.extraData) {\n var _data2 = serverInjector.extraData[_appId2][type];\n var extraStr = tagGenerator(options, type, _data2, _objectSpread2({\n appId: _appId2\n }, injectOptions));\n str = \"\".concat(str).concat(extraStr);\n }\n }\n\n return str;\n }\n };\n };\n\n for (var type in defaultInfo) {\n var _ret = _loop(type);\n\n if (_ret === \"continue\") continue;\n }\n\n return serverInjector;\n}\n\n/**\n * Converts the state of the meta info object such that each item\n * can be compiled to a tag string on the server\n *\n * @vm {Object} - Vue instance - ideally the root component\n * @return {Object} - server meta info with `toString` methods\n */\n\nfunction inject(rootVm, options, injectOptions) {\n // make sure vue-meta was initiated\n if (!rootVm[rootConfigKey]) {\n showWarningNotSupported();\n return {};\n } // collect & aggregate all metaInfo $options\n\n\n var rawInfo = getComponentMetaInfo(options, rootVm);\n var metaInfo = getMetaInfo(options, rawInfo, serverSequences, rootVm); // generate server injector\n\n var serverInjector = generateServerInjector(options, metaInfo, injectOptions); // add meta info from additional apps\n\n var appsMetaInfo = getAppsMetaInfo();\n\n if (appsMetaInfo) {\n for (var additionalAppId in appsMetaInfo) {\n serverInjector.addInfo(additionalAppId, appsMetaInfo[additionalAppId]);\n delete appsMetaInfo[additionalAppId];\n }\n\n clearAppsMetaInfo(true);\n }\n\n return serverInjector.injectors;\n}\n\nfunction $meta(options) {\n options = options || {};\n /**\n * Returns an injector for server-side rendering.\n * @this {Object} - the Vue instance (a root component)\n * @return {Object} - injector\n */\n\n var $root = this.$root;\n return {\n getOptions: function getOptions$1() {\n return getOptions(options);\n },\n setOptions: function setOptions(newOptions) {\n var refreshNavKey = 'refreshOnceOnNavigation';\n\n if (newOptions && newOptions[refreshNavKey]) {\n options.refreshOnceOnNavigation = !!newOptions[refreshNavKey];\n addNavGuards($root);\n }\n\n var debounceWaitKey = 'debounceWait';\n\n if (newOptions && debounceWaitKey in newOptions) {\n var debounceWait = parseInt(newOptions[debounceWaitKey]);\n\n if (!isNaN(debounceWait)) {\n options.debounceWait = debounceWait;\n }\n }\n\n var waitOnDestroyedKey = 'waitOnDestroyed';\n\n if (newOptions && waitOnDestroyedKey in newOptions) {\n options.waitOnDestroyed = !!newOptions[waitOnDestroyedKey];\n }\n },\n refresh: function refresh$1() {\n return refresh($root, options);\n },\n inject: function inject$1(injectOptions) {\n return inject($root, options, injectOptions) ;\n },\n pause: function pause$1() {\n return pause($root);\n },\n resume: function resume$1() {\n return resume($root);\n },\n addApp: function addApp$1(appId) {\n return addApp($root, appId, options);\n }\n };\n}\n\nfunction generate(rawInfo, options) {\n options = setOptions(options);\n var metaInfo = getMetaInfo(options, rawInfo, serverSequences);\n var serverInjector = generateServerInjector(options, metaInfo);\n return serverInjector.injectors;\n}\n\n/**\n * Plugin install function.\n * @param {Function} Vue - the Vue constructor.\n */\n\nfunction install(Vue, options) {\n if (Vue.__vuemeta_installed) {\n return;\n }\n\n Vue.__vuemeta_installed = true;\n options = setOptions(options);\n\n Vue.prototype.$meta = function () {\n return $meta.call(this, options);\n };\n\n Vue.mixin(createMixin(Vue, options));\n}\n\nvar index = {\n version: version,\n install: install,\n generate: function generate$1(metaInfo, options) {\n return generate(metaInfo, options) ;\n },\n hasMetaInfo: hasMetaInfo\n};\n\nexport default index;\n"],"names":["props","addContainerWrapper","type","Boolean","default","computed","showEnvironment","window","naVariables","naEnvironment","environment","environmentNaBranch","NA_BRANCH","components","InputError","classes","String","isRequired","name","required","label","errors","Array","fieldClasses","this","hasInputError","labelClasses","push","SectionsMain","data","isBusy","isLoaded","isManaging","mapState","customSections","state","user","sections","mainPublication","publication","activeSections","filter","item","is_active","watch","$emit","methods","mapActions","vuexloadSections","loadSections","includeInactive","cancelled","added","updated","removed","sorted","sectionSelected","section","close","SimpleSearch","PublicationPicker","PublicationIcon","userProfile","optionPublications","selectedPublications","created","Promise","all","loadPublications","loadUserProfile","error","checkboxName","option","id","userIsLoggedIn","JSON","parse","naShared","storage","getItem","response","userDataLoadProfile","success","post_preferences","length","forEach","key","option_id","readPublications","sort","field","direction","showAllStatusTypes","value","text","icon","showInfo","publications","aboutUs","about_us","getPublicationMedia","mediaType","media","media_type","togglePublication","includes","index","indexOf","splice","submit","userDataSavePublicationPreferences","setItem","stringify","location","reload","submitUnauth","isVisible","isSearchVisible","showPublicationPicker","isSectionManagementActive","isKingstonWire","$store","slug","isShawangunkJournal","isNewsAtomic","isShowReaderOptions","isShowNotLoggedInOptions","honorClickOutside","sectionCancelled","sectionManaging","flag","clickedOutside","closeSearch","mixins","mediaMixin","headerImage","image","width","height","url","imageUrl","headerAlt","headerTitle","NavLeft","NavCenter","NavRight","SimpleHelp","wrapperClass","placeholder","includeButton","buttonLabel","additionalMessage","content","isDisabled","trim","clear","doSubmit","axios","post","naRoutes","createHelpMessage","then","message","SocialMediaIconsGroup","isHelpVisible","isShowVersion","unregisterRouteHook","userIdentity","userCurrent","first_name","userRole","userType","isImpersonating","userIsImpersonating","version","naVersion","adminHome","logoutRoute","logout","$router","afterEach","beforeDestroy","signUpSJ","ml_account","analyticsEventFireNewsletter","fireTestEvent","analyticsEventFireTest","isKwSpecial","$route","path","startsWith","isShowNavMenus","exports","e","n","navigator","t","msMaxTouchPoints","i","event","handler","middleware","r","Error","events","isActive","detectIframe","d","o","a","map","srcTarget","document","documentElement","el","composedPath","contains","target","c","setTimeout","activeElement","tagName","concat","addEventListener","removeEventListener","bind","update","oldValue","unbind","install","directive","Clipboard","VueClipboardConfig","b","u","execCommand","getAttribute","createElement","style","fontSize","border","padding","margin","position","pageYOffset","scrollTop","top","setAttribute","container","appendChild","remove","f","arguments","body","HTMLInputElement","l","Symbol","iterator","constructor","prototype","s","action","nodeType","hasAttribute","p","enumerable","configurable","writable","Object","defineProperty","y","setPrototypeOf","__proto__","h","Reflect","construct","sham","Proxy","Date","toString","call","v","apply","ReferenceError","getPrototypeOf","m","TypeError","create","resolveOptions","listenClick","queryCommandSupported","defaultAction","defaultTarget","defaultText","listener","onClick","delegateTarget","currentTarget","emit","trigger","clearSelection","focus","getSelection","removeAllRanges","querySelector","destroy","Element","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","parentNode","querySelectorAll","node","HTMLElement","nodeList","string","fn","nodeName","select","setSelectionRange","removeAttribute","createRange","selectNodeContents","addRange","on","ctx","once","off","_","slice","TinyEmitter","__esModule","get","hasOwnProperty","Vue","globalPrototype","config","globalProperties","$clipboardConfig","$copyText","resolve","reject","fakeElement","clipboard","appendToBody","click","removeChild","binding","vnode","arg","_vClipboard_success","_vClipboard_error","autoSetContainer","callback","_vClipboard","title","playImmediately","audio","canPlay","isPlaying","isSeeking","duration","timer","formatDuration","val","$options","pause","Audio","load","play","currentTime","immediate","_a","togglePlay","paused","seekStarted","seek","Number","skipBackward","skipForward","isMergeableObject","isNonNullObject","stringValue","$$typeof","REACT_ELEMENT_TYPE","isReactElement","isSpecial","for","cloneUnlessOtherwiseSpecified","options","clone","deepmerge","isArray","defaultArrayMerge","source","element","getKeys","keys","getOwnPropertySymbols","symbol","propertyIsEnumerable","getEnumerableOwnPropertySymbols","propertyIsOnObject","object","property","mergeObject","destination","propertyIsUnsafe","customMerge","getMergeFunction","arrayMerge","sourceIsArray","array","reduce","prev","next","_typeof","obj","_defineProperty","ownKeys","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","_objectSpread2","getOwnPropertyDescriptors","defineProperties","_toConsumableArray","arr","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","minLen","test","len","arr2","isUndefined","isObject","isPureObject","isFunction","console","hasGlobalWindowFn","global","warn","str","showWarningNotSupported","defaultInfo","titleChunk","titleTemplate","htmlAttrs","bodyAttrs","headAttrs","base","link","meta","script","noscript","__dangerouslyDisableSanitizers","__dangerouslyDisableSanitizersByTagID","rootConfigKey","defaultOptions","defaultInfoKeys","disableOptionKeys","metaInfoOptionKeys","metaInfoAttributeKeys","tagsSupportingOnload","tagsWithoutEndTag","tagsWithInnerContent","tagAttributeAsInnerContent","tagProperties","commonDataAttributes","booleanHtmlAttributes","batchId","triggerUpdate","_ref","rootVm","hookName","debounceWait","initialized","initializing","pausing","timeout","clearTimeout","batchUpdate","$meta","refresh","findIndex","predicate","thisArg","idx","toArray","getTag","tags","tag","getElementsByTagName","queryElements","_ref2","attributes","appId","attribute","tagIDKeyName","queries","query","attributeValue","join","attributeName","hasMetaInfo","vm","resume","addNavGuards","router","navGuards","beforeEach","to","$nextTick","metaInfo","afterNavigation","createMixin","updateOnLifecycleHook","wasServerRendered","beforeCreate","_this2","rootKey","$root","devtoolsEnabled","devtools","deprecationWarningShown","$once","$el","htmlTag","ssrAttribute","keyName","child","find","$children","$vnode","fnOptions","parent","$parent","$metaInfo","$isServer","$on","$watch","initializedSsr","ssrAppId","_$root$$meta$refresh","refreshOnceOnNavigation","_this","_hasMetaInfo","waitOnDestroyed","offsetParent","interval","setInterval","clearInterval","lifecycleHook","setOptions","contentKeyName","metaTemplateKeyName","ensureIsArray","serverSequences","clientSequences","escape","info","escapeOptions","escapeKeys","_escapeOptions$doEsca","doEscape","escaped","disableKey","tagId","escapedKey","escapeMetaInfo","escapeSequences","seq","replace","applyTemplate","headObject","template","chunk","component","warningShown","merge","attrKey","targetItem","targetIndex","sourceIndex","sourceItem","innerHTML","targetTemplate","_arrayMerge","getComponentMetaInfo","getComponentOption","result","_inactive","childComponent","inMetaInfoBranch","callbacks","addCallbacks","autoAddListeners","hasAsyncCallback","addCallback","addListeners","readyState","onreadystatechange","applyCallbacks","matchElement","args","selector","__vm_cb","onload","__vm_l","__vm_ev","appsMetaInfo","attributeMap","updateAttribute","attrs","vueMetaAttrString","decodeURI","toUpdate","attr","_attr","attrData","_i","_toUpdate","_attr2","_attrData","attrValues","_appId","attrValue","some","updateTag","head","dataAttributes","newElements","queryOptions","currentElements","pbody","found","x","k","res","skip","newElement","isBooleanAttribute","styleSheet","cssText","createTextNode","json","indexToDelete","oldElements","getElementsKey","existingTag","isEqualNode","_type","insertBefore","firstChild","oldTags","newTags","updateClientMetaInfo","newInfo","_options","addLoadListeners","tagsAdded","tagsRemoved","substr","_updateTag","addApp","set","setMetaInfo","_step","_iterator","allowArrayLike","it","F","done","err","normalCompletion","didErr","step","return","_createForOfIteratorHelper","_ref3","removeElementsByAppId","clearAppsMetaInfo","removeMetaInfo","getAppsMetaInfo","force","getMetaInfo","metaItem","metaObject","tagGenerator","generatorOptions","_ref2$isSSR","isSSR","_ref2$body","_ref2$pbody","_ref2$ln","ln","tagsStr","prefix","isBooleanAttr","hasEndTag","hasContent","generateServerInjector","globalInjectOptions","serverInjector","extraData","addInfo","callInjectors","opts","injectors","bodyPrepend","bodyAppend","_loop","injectOptions","addSsrAttribute","titleGenerator","attributeData","_data","attributeStr","encodeURI","attributeGenerator","_appId2","_data2","extraStr","getOptions","optionsCopy","newOptions","refreshNavKey","debounceWaitKey","parseInt","isNaN","waitOnDestroyedKey","changed","addedTags","removedTags","additionalAppId","inject","__vuemeta_installed","mixin","generate","rawInfo"],"mappings":"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","x_google_ignoreList":[10,11,12,14,15]}