1 line
3.2 MiB
1 line
3.2 MiB
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/@nextcloud/router/dist/index.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/vue/dist/vue.runtime.esm.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/utils.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/global.js","webpack:///./node_modules/@nextcloud/initial-state/dist/index.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@nextcloud/axios/dist/index.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/@nextcloud/auth/dist/index.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/create-property.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/core-js/modules/es.regexp.exec.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/export.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-length.js","webpack:///./node_modules/linkifyjs/lib/linkify/utils/class.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/core-js/modules/es.array.for-each.js","webpack:///./node_modules/semver/internal/constants.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/iterate.js","webpack:///./node_modules/core-js/internals/classof.js","webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/redefine-all.js","webpack:///./node_modules/core-js/internals/set-species.js","webpack:///./node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/set-global.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/linkifyjs/lib/linkify/core/tokens/text.js","webpack:///./node_modules/@nextcloud/l10n/dist/index.js","webpack:///./node_modules/popper.js/dist/esm/popper.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/core-js/internals/array-for-each.js","webpack:///../lib/index.ts","webpack:///./node_modules/semver/internal/re.js","webpack:///./node_modules/semver/internal/debug.js","webpack:///./node_modules/semver/classes/semver.js","webpack:///./node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/create-iterator-constructor.js","webpack:///./node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/core-js/internals/internal-metadata.js","webpack:///./node_modules/core-js/internals/is-array-iterator-method.js","webpack:///./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///./node_modules/core-js/modules/es.array.index-of.js","webpack:///./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack:///./node_modules/core-js/internals/define-well-known-symbol.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/native-url.js","webpack:///./node_modules/core-js/internals/array-from.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/defaults.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/createError.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/mergeConfig.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/cancel/Cancel.js","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/task.js","webpack:///./node_modules/core-js/internals/engine-is-ios.js","webpack:///./node_modules/core-js/internals/new-promise-capability.js","webpack:///./node_modules/charenc/charenc.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/an-object.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/uid.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-array.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/v8-version.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/scopedstorage.js","webpack:///./node_modules/linkifyjs/lib/linkify/core/state.js","webpack:///./node_modules/linkifyjs/lib/linkify/core/tokens/create-token-class.js","webpack:///./apps/dashboard/src/components/BackgroundSettings.vue?a932","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./apps/dashboard/src/App.vue?7b31","webpack:///./node_modules/vue-style-loader/lib/listToStyles.js","webpack:///./node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///./node_modules/@nextcloud/vue/dist/ncvuecomponents.js","webpack:///./node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///./node_modules/vuedraggable/dist/vuedraggable.umd.js","webpack:///./node_modules/@nextcloud/vue/dist/Directives/Tooltip.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/@nextcloud/auth/dist/requesttoken.js","webpack:///../lib/ProxyBus.ts","webpack:///./node_modules/semver/functions/valid.js","webpack:///./node_modules/semver/functions/parse.js","webpack:///./node_modules/semver/internal/identifiers.js","webpack:///./node_modules/semver/functions/major.js","webpack:///../lib/SimpleBus.ts","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/modules/es.map.js","webpack:///./node_modules/core-js/internals/collection.js","webpack:///./node_modules/core-js/internals/freezing.js","webpack:///./node_modules/core-js/internals/collection-strong.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/@nextcloud/auth/dist/user.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/core-js/modules/es.function.name.js","webpack:///./node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/@nextcloud/l10n/dist/gettext.js","webpack:///./node_modules/node-gettext/lib/gettext.js","webpack:///./node_modules/lodash.get/index.js","webpack:///./node_modules/node-gettext/lib/plurals.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js","webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./node_modules/core-js/modules/web.url.js","webpack:///./node_modules/core-js/internals/string-punycode-to-ascii.js","webpack:///./node_modules/core-js/modules/web.url-search-params.js","webpack:///./node_modules/core-js/internals/get-iterator.js","webpack:///./node_modules/core-js/modules/es.symbol.description.js","webpack:///./node_modules/core-js/modules/es.array.slice.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/index.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/axios.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/InterceptorManager.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/dispatchRequest.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/transformData.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/settle.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/cookies.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/core/buildFullPath.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/combineURLs.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/cancel/CancelToken.js","webpack:///./node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/core-js/modules/es.symbol.iterator.js","webpack:///./node_modules/striptags/src/striptags.js","webpack:///./node_modules/core-js/modules/es.array.from.js","webpack:///./node_modules/v-click-outside/dist/v-click-outside.umd.js","webpack:///./node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/core-js/modules/es.promise.js","webpack:///./node_modules/core-js/internals/native-promise-constructor.js","webpack:///./node_modules/core-js/internals/microtask.js","webpack:///./node_modules/core-js/internals/promise-resolve.js","webpack:///./node_modules/core-js/internals/host-report-errors.js","webpack:///./node_modules/core-js/internals/perform.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/escape-html/index.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/@nextcloud/capabilities/dist/index.js","webpack:///./node_modules/md5/md5.js","webpack:///./node_modules/crypt/crypt.js","webpack:///./node_modules/is-buffer/index.js","webpack:///./node_modules/core-js/modules/es.array.splice.js","webpack:///./node_modules/core-js/modules/es.array.flat.js","webpack:///./node_modules/core-js/internals/flatten-into-array.js","webpack:///./node_modules/core-js/modules/es.array.unscopables.flat.js","webpack:///./node_modules/core-js/modules/es.regexp.constructor.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/index.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/redefine.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/path.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/bind-context.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/a-function.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/user-agent.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/@nextcloud/browser-storage/dist/storagebuilder.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/@nextcloud/browser-storage/node_modules/core-js/internals/create-property.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./node_modules/core-js/modules/es.array.reduce.js","webpack:///./node_modules/core-js/internals/array-reduce.js","webpack:///./node_modules/debounce/index.js","webpack:///./node_modules/core-js/modules/es.array.includes.js","webpack:///./node_modules/core-js/modules/es.string.search.js","webpack:///./node_modules/core-js/internals/same-value.js","webpack:///./node_modules/hammerjs/hammer.js","webpack:///./node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/core-js/modules/es.string.code-point-at.js","webpack:///./node_modules/core-js/modules/es.string.from-code-point.js","webpack:///./node_modules/vue-multiselect/dist/vue-multiselect.min.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack:///./node_modules/linkifyjs/string.js","webpack:///./node_modules/linkifyjs/lib/linkify-string.js","webpack:///./node_modules/linkifyjs/lib/linkify.js","webpack:///./node_modules/linkifyjs/lib/linkify/utils/options.js","webpack:///./node_modules/linkifyjs/lib/linkify/core/scanner.js","webpack:///./node_modules/linkifyjs/lib/linkify/core/parser.js","webpack:///./node_modules/linkifyjs/lib/linkify/core/tokens/multi.js","webpack:///./node_modules/core-js/modules/es.object.values.js","webpack:///./node_modules/core-js/internals/object-to-array.js","webpack:///./node_modules/vue-color/dist/vue-color.min.js","webpack:///./node_modules/tributejs/dist/tribute.esm.js","webpack:///./node_modules/string-length/index.js","webpack:///./node_modules/string-length/node_modules/strip-ansi/index.js","webpack:///./node_modules/string-length/node_modules/ansi-regex/index.js","webpack:///./node_modules/char-regex/index.js","webpack:///./node_modules/core-js/modules/es.array.find-index.js","webpack:///./node_modules/core-js/modules/es.string.includes.js","webpack:///./node_modules/core-js/modules/es.array.find.js","webpack:///./node_modules/core-js/modules/es.array.every.js","webpack:///./node_modules/sortablejs/modular/sortable.esm.js","webpack:///./apps/dashboard/src/components/BackgroundSettings.vue?6e3e","webpack:///./apps/dashboard/src/components/BackgroundSettings.vue?5548","webpack:///./apps/dashboard/src/App.vue?eb88","webpack:///./apps/dashboard/src/App.vue?9da7","webpack:///./apps/dashboard/src/mixins/isMobile.js","webpack:///./apps/dashboard/src/helpers/prefixWithBaseUrl.js","webpack:///./apps/dashboard/src/helpers/getBackgroundUrl.js","webpack:///apps/dashboard/src/components/BackgroundSettings.vue","webpack:///./apps/dashboard/src/components/BackgroundSettings.vue?e627","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./apps/dashboard/src/components/BackgroundSettings.vue","webpack:///./apps/dashboard/src/components/BackgroundSettings.vue?d0dd","webpack:///apps/dashboard/src/App.vue","webpack:///./apps/dashboard/src/App.vue?9ad5","webpack:///./apps/dashboard/src/App.vue","webpack:///./apps/dashboard/src/App.vue?66bc","webpack:///./apps/dashboard/src/main.js","webpack:///./node_modules/date-fns/esm/_lib/requiredArgs/index.js","webpack:///./node_modules/date-fns/esm/toDate/index.js","webpack:///./node_modules/date-fns/esm/startOfYear/index.js","webpack:///./node_modules/date-fns/esm/startOfMonth/index.js","webpack:///./node_modules/date-fns/esm/startOfDay/index.js","webpack:///./node_modules/date-fns/esm/_lib/toInteger/index.js","webpack:///./node_modules/date-fns/esm/addMonths/index.js","webpack:///./node_modules/date-fns/esm/subMonths/index.js","webpack:///./node_modules/date-fns/esm/addYears/index.js","webpack:///./node_modules/date-fns/esm/setYear/index.js","webpack:///./node_modules/date-fns/esm/getDaysInMonth/index.js","webpack:///./node_modules/date-fns/esm/setMonth/index.js","webpack:///./node_modules/vue2-datepicker/index.esm.js","webpack:///./node_modules/date-fns/esm/subYears/index.js","webpack:///./node_modules/date-fns/esm/differenceInCalendarMonths/index.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","global","getOwnPropertyDescriptor","f","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","options","source","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","undefined","sham","exec","error","shared","has","uid","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","it","Math","check","globalThis","window","self","Function","fails","isObject","TypeError","String","getRootUrl","generateFilePath","imagePath","generateUrl","generateOcsUrl","generateRemoteUrl","linkTo","app","file","service","location","protocol","host","linkToRemoteBase","version","url","params","allOptions","assign","escape","noRewrite","_build","text","vars","replace","a","b","encodeURIComponent","toString","charAt","OC","config","modRewriteWorking","indexOf","type","isCore","coreApps","link","substring","length","appswebroots","encodeURI","webroot","DESCRIPTORS","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","O","P","Attributes","toInteger","min","argument","emptyObject","freeze","isUndef","v","isDef","isTrue","isPrimitive","obj","_toString","isPlainObject","isRegExp","isValidArrayIndex","val","parseFloat","floor","isFinite","isPromise","then","catch","Array","isArray","JSON","stringify","toNumber","isNaN","makeMap","str","expectsLowerCase","map","list","split","toLowerCase","isReservedAttribute","remove","arr","item","index","splice","hasOwn","cached","fn","cache","camelizeRE","camelize","_","toUpperCase","capitalize","slice","hyphenateRE","hyphenate","ctx","boundFn","arguments","apply","_length","toArray","start","ret","extend","to","_from","toObject","res","noop","no","identity","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","every","e","Date","getTime","keysA","keys","keysB","looseIndexOf","once","called","this","ASSET_TYPES","LIFECYCLE_HOOKS","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","async","_lifecycleHooks","unicodeRegExp","def","writable","configurable","bailRE","RegExp","_isServer","hasProto","inBrowser","inWeex","WXEnvironment","platform","weexPlatform","UA","navigator","userAgent","isIE","test","isIE9","isEdge","isIOS","isFF","match","nativeWatch","watch","supportsPassive","opts","addEventListener","isServerRendering","env","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","Ctor","_Set","hasSymbol","Reflect","ownKeys","Set","set","add","clear","warn","Dep","id","subs","addSub","sub","push","removeSub","depend","addDep","notify","update","targetStack","pushTarget","popTarget","pop","VNode","tag","data","children","elm","context","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","parent","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","node","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","forEach","method","original","args","len","inserted","result","ob","__ob__","observeArray","dep","arrayKeys","getOwnPropertyNames","shouldObserve","toggleObserving","Observer","vmCount","src","__proto__","protoAugment","copyAugment","walk","observe","asRootData","isExtensible","_isVue","defineReactive$$1","customSetter","shallow","setter","childOb","dependArray","newVal","max","del","items","strats","mergeData","from","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","concat","hooks","dedupeHooks","mergeAssets","hook","key$1","props","methods","inject","computed","provide","defaultStrat","mergeOptions","normalizeProps","normalized","normalizeInject","dirs","directives","def$$1","normalizeDirectives","_base","extends","mixins","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","prop","absent","booleanIndex","getTypeIndex","Boolean","stringIndex","default","$options","_props","getType","getPropDefaultValue","prevShouldObserve","isSameType","expectedTypes","handleError","err","info","cur","$parent","errorCaptured","globalHandleError","invokeWithErrorHandling","handler","_handled","logError","console","timerFunc","isUsingMicroTask","callbacks","pending","flushCallbacks","copies","Promise","resolve","setTimeout","MutationObserver","setImmediate","counter","observer","textNode","document","createTextNode","characterData","nextTick","cb","_resolve","seenObjects","traverse","_traverse","seen","isA","isFrozen","depId","normalizeEvent","passive","once$$1","capture","createFnInvoker","fns","invoker","arguments$1","updateListeners","on","oldOn","remove$$1","createOnceHandler","old","event","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","hash","altKey","preserve","normalizeChildren","normalizeArrayChildren","nestedIndex","lastIndex","last","isTextNode","shift","_isVList","resolveInject","provideKey","_provided","provideDefault","resolveSlots","slots","attrs","slot","name$1","isWhitespace","normalizeScopedSlots","normalSlots","prevSlots","hasNormalSlots","isStable","$stable","$key","_normalized","$hasNormal","normalizeScopedSlot","key$2","proxyNormalSlot","proxy","renderList","render","iterator","next","done","renderSlot","fallback","bindObject","nodes","scopedSlotFn","$scopedSlots","$slots","$createElement","resolveFilter","isKeyNotMatch","expect","actual","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","loop","domProps","camelizedKey","hyphenatedKey","$event","renderStatic","isInFor","_staticTrees","tree","markStatic","staticRenderFns","_renderProxy","markOnce","markStaticNode","bindObjectListeners","existing","ours","resolveScopedSlots","hasDynamicKeys","contentHashKey","bindDynamicKeys","baseObj","values","prependModifier","symbol","installRenderHelpers","_o","_n","_s","_l","_t","_q","_i","_m","_f","_k","_b","_v","_e","_u","_g","_d","_p","FunctionalRenderContext","contextVm","this$1","_original","isCompiled","_compiled","needNormalization","listeners","injections","scopedSlots","_scopeId","_c","createElement","cloneAndMarkFunctionalResult","renderContext","clone","mergeProps","componentVNodeHooks","init","hydrating","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","inlineTemplate","createComponentInstanceForVnode","activeInstance","$mount","oldVnode","parentVnode","renderChildren","newScopedSlots","oldScopedSlots","hasDynamicScopedSlot","needsForceUpdate","_renderChildren","$vnode","_vnode","$attrs","$listeners","propKeys","_propKeys","oldListeners","_parentListeners","updateComponentListeners","$forceUpdate","updateChildComponent","insert","_isMounted","callHook","_inactive","activatedChildren","activateChildComponent","destroy","deactivateChildComponent","direct","_directInactive","isInInactiveTree","$children","$destroy","hooksToMerge","createComponent","baseCtor","cid","factory","errorComp","resolved","owner","currentRenderingInstance","owners","loading","loadingComp","sync","timerLoading","timerTimeout","$on","forceRender","renderCompleted","clearTimeout","ensureCtor","reject","reason","component","delay","timeout","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","model","callback","transformModel","extractPropsFromVNodeData","functional","vnodes","createFunctionalComponent","nativeOn","abstract","toMerge","_merged","mergeHook$1","installComponentHooks","f1","f2","normalizationType","alwaysNormalize","is","simpleNormalizeChildren","pre","applyNS","force","style","class","registerDeepBindings","_createElement","comp","base","getFirstComponentChild","remove$1","$off","_target","onceHandler","setActiveInstance","prevActiveInstance","handlers","j","_hasHookEvent","$emit","queue","waiting","flushing","currentFlushTimestamp","getNow","now","createEvent","timeStamp","flushSchedulerQueue","watcher","sort","before","run","activatedQueue","updatedQueue","callActivatedHooks","_watcher","callUpdatedHooks","emit","uid$2","Watcher","expOrFn","isRenderWatcher","_watchers","deep","user","lazy","active","dirty","deps","newDeps","depIds","newDepIds","expression","path","segments","parsePath","cleanupDeps","tmp","queueWatcher","oldValue","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","sourceKey","initState","propsOptions","initProps","initMethods","_data","getData","charCodeAt","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","createWatcher","initWatch","shouldCache","createComputedGetter","createGetterInvoker","$watch","uid$3","super","superOptions","modifiedOptions","modified","latest","sealed","sealedOptions","resolveModifiedOptions","extendOptions","components","Vue","_init","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","constructor","Comp","initProps$1","initComputed$1","mixin","use","getComponentName","matches","pattern","pruneCache","keepAliveInstance","filter","cachedNode","pruneCacheEntry","current","cached$$1","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","_self","$root","$refs","initLifecycle","_events","initEvents","parentData","initRender","initInjections","initProvide","el","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","$once","i$1","cbs","eventsMixin","_update","prevEl","$el","prevVnode","restoreActiveInstance","__patch__","__vue__","lifecycleMixin","$nextTick","_render","ref","renderMixin","patternTypes","builtInComponents","KeepAlive","include","exclude","Number","created","destroyed","mounted","parseInt","configDef","util","defineReactive","delete","observable","plugin","installedPlugins","_installedPlugins","unshift","install","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","ssrContext","acceptValue","isEnumeratedAttr","isValidContentEditableValue","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","isFalsyAttrValue","genClassForVnode","parentNode","childNode","mergeClassData","staticClass","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","nodeOps","tagName","multiple","setAttribute","createElementNS","namespace","createComment","insertBefore","newNode","referenceNode","removeChild","appendChild","nextSibling","setTextContent","textContent","setStyleScope","scopeId","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","dir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldArg","arg","callHook$1","componentUpdated","callInsert","emptyModifiers","modifiers","getRawDirName","rawName","join","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","removeAttribute","baseSetAttr","convertEnumeratedValue","setAttributeNS","__ieph","blocker","stopImmediatePropagation","removeEventListener","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","target$1","klass","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","currentTarget","ownerDocument","updateDOMListeners","change","normalizeEvents","svgContainer","events","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","innerHTML","firstChild","checkVal","composing","notInFocus","activeElement","isNotInFocusAndDirty","_vModifiers","number","trim","isDirtyWithModifiers","parseStyleText","cssText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","normalizedName","normalize","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","whitespaceRE","addClass","classList","getAttribute","removeClass","tar","resolveTransition","css","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","requestAnimationFrame","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","end","onEnd","transformRE","styles","getComputedStyle","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","nodeType","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","duration","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","patch","backend","removeNode","createElm","insertedVnodeQueue","parentElm","refElm","nested","ownerArray","isReactivated","initComponent","innerNode","activate","reactivateComponent","setScope","createChildren","invokeCreateHooks","pendingInsert","isPatchable","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","childElm","createRmCb","findIdxInOld","oldCh","patchVnode","removeOnly","hydrate","newCh","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","updateChildren","postpatch","invokeInsertHook","initial","isRenderedModule","inVPre","hasChildNodes","childrenMatch","fullInvoke","isInitialPatch","isRealElement","hasAttribute","oldElm","patchable","i$2","createPatchFunction","vmodel","trigger","directive","binding","_vOptions","setSelected","getValue","onCompositionStart","onCompositionEnd","prevOptions","curOptions","some","hasNoMatchingOption","actuallySetSelected","isMultiple","selected","option","selectedIndex","initEvent","dispatchEvent","locateNode","platformDirectives","transition$$1","originalDisplay","__vOriginalDisplay","display","unbind","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","h","rawChild","isNotTextNode","isVShowDirective","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","getBoundingClientRect","applyTranslation","oldPos","pos","dx","left","dy","top","moved","transform","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","beforeMount","kept","prevChildren","rawChildren","transitionData","removed","c$1","updated","hasMove","_reflow","body","offsetHeight","propertyName","_hasMove","cloneNode","attr","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","querySelector","query","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","unsafe","simple","isUndefined","getPrototypeOf","isFunction","isArrayBuffer","isBuffer","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isNumber","isDate","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","product","merge","assignValue","thisArg","stripBOM","content","IndexedObject","requireObjectCoercible","thrower","METHOD_NAME","ACCESSORS","argument0","argument1","loadState","elem","Error","parse","atob","g","definePropertyModule","createPropertyDescriptor","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","store","wmget","wmhas","wmset","metadata","STATE","getterFor","TYPE","state","_axios","_auth","client","headers","requesttoken","getRequestToken","cancelableClient","CancelToken","isCancel","onRequestTokenUpdate","token","defaults","_default","propertyIsEnumerableModule","toIndexedObject","nativeGetOwnPropertyDescriptor","_requesttoken","_user","getCurrentUser","aFunction","variable","toLength","arraySpeciesCreate","createMethod","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","callbackfn","that","specificCreate","boundFunction","find","findIndex","TO_STRING_TAG","wellKnownSymbol","TAG","bitmap","ceil","activeXDocument","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","LT","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","close","temp","parentWindow","NullProtoObjectViaActiveX","contentWindow","open","F","Properties","classof","propertyIsEnumerable","input","PREFERRED_STRING","valueOf","internalObjectKeys","replacement","feature","detection","POLYFILL","NATIVE","string","propertyKey","V8_VERSION","SPECIES","array","foo","UNSCOPABLES","ArrayPrototype","Constructor","$","proto","nativePropertyIsEnumerable","NASHORN_BUG","1","V","postfix","random","integer","originalArray","C","addToUnscopables","Iterators","defineIterator","setInternalState","iterated","kind","Arguments","ITERATOR","TO_STRING_TAG_SUPPORT","CONVERT_TO_STRING","first","second","S","position","size","codeAt","re1","re2","regexpFlags","stickyHelpers","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","reCopy","re","sticky","flags","charsAdded","strCopy","multiline","fixRegExpWellKnownSymbolLogic","advanceStringIndex","regExpExec","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","REPLACE","maybeCallNative","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_KEEPS_$0","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","regexp","rx","functionalReplace","fullUnicode","unicode","results","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","groups","replacerArgs","getSubstitution","tailPos","symbols","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","nativeMethod","arg2","forceStringMethod","stringMethod","regexMethod","R","inherits","extended","createProperty","arrayMethodHasSpeciesSupport","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","k","E","A","EXISTS","functionToString","IS_PURE","copyright","toAbsoluteIndex","IS_INCLUDES","fromIndex","includes","getOwnPropertySymbols","process","versions","v8","MAX_SAFE_INTEGER","SEMVER_SPEC_VERSION","MAX_LENGTH","MAX_SAFE_COMPONENT_LENGTH","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","title","browser","argv","addListener","off","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","createIteratorConstructor","setPrototypeOf","setToStringTag","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","isArrayIteratorMethod","getIteratorMethod","callWithSafeIterationClosing","Result","stopped","iterable","AS_ENTRIES","IS_ITERATOR","iterFn","step","stop","classofRaw","CORRECT_ARGUMENTS","tryGet","callee","SAFE_CLOSING","iteratorWithReturn","SKIP_CLOSING","ITERATION_SUPPORT","dummy","Wrapper","NewTarget","NewTargetPrototype","getBuiltIn","CONSTRUCTOR_NAME","point","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","rf","ignoreCase","dotAll","MATCH","AMPERSAND","CLOSEPAREN","CLOSEANGLEBRACKET","CLOSEBRACKET","CLOSEBRACE","OPENPAREN","OPENANGLEBRACKET","OPENBRACKET","OPENBRACE","WS","TLD","SYM","UNDERSCORE","SLASH","MAILTO","PROTOCOL","QUERY","POUND","PLUS","NUM","NL","LOCALHOST","PUNCTUATION","DOT","COLON","AT","DOMAIN","Base","_createTokenClass","_class","TextToken","createTokenClass","inheritsToken","getLocale","getCanonicalLocale","getLanguage","translate","count","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","scheduled","functionToCheck","getStyleComputedProperty","element","defaultView","getParentNode","nodeName","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","reference","isIE11","MSInputMethodContext","documentMode","isIE10","getOffsetParent","documentElement","noOffsetParent","offsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","contains","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","bottom","right","getBordersSize","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","height","width","classCallCheck","instance","createClass","protoProps","staticProps","_extends","getClientRect","offsets","sizes","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","offset","isFixed","getFixedPositionOffsetParent","parentElement","getBoundaries","popper","padding","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","_ref","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","filteredAreas","_ref2","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","x","marginBottom","y","marginRight","getOppositePlacement","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","runModifiers","ends","enabled","isDestroyed","arrowStyles","attributes","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","prefix","toCheck","willChange","disableEventListeners","removeOnDestroy","getWindow","setupEventListeners","updateBound","scrollElement","attachToScrollParents","scrollParents","isBody","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isNumeric","setStyles","unit","isFirefox","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","reverse","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","divider","search","splitRegex","ops","op","mergeWithPrevious","reduce","toValue","index2","Defaults","shiftvariation","_data$offsets","isVertical","shiftOffsets","preventOverflow","transformProp","popperStyles","priority","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","center","popperMarginSide","popperBorderSide","sideValue","round","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","inner","subtractLength","hide","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","applyStyle","onLoad","modifierOptions","Popper","_this","jquery","Utils","PopperUtils","getOwnPropertyDescriptorModule","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","names","$forEach","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","bus","ProxyBus","SimpleBus","require","debug","createToken","isGlobal","NUMERICIDENTIFIER","NUMERICIDENTIFIERLOOSE","NONNUMERICIDENTIFIER","PRERELEASEIDENTIFIER","PRERELEASEIDENTIFIERLOOSE","BUILDIDENTIFIER","MAINVERSION","PRERELEASE","BUILD","FULLPLAIN","MAINVERSIONLOOSE","PRERELEASELOOSE","LOOSEPLAIN","XRANGEIDENTIFIER","XRANGEIDENTIFIERLOOSE","GTLT","XRANGEPLAIN","XRANGEPLAINLOOSE","COERCE","LONETILDE","tildeTrimReplace","LONECARET","caretTrimReplace","comparatorTrimReplace","NODE_DEBUG","compareIdentifiers","SemVer","loose","includePrerelease","LOOSE","FULL","major","minor","prerelease","num","build","format","other","compareMain","comparePre","release","identifier","inc","$filter","HAS_SPECIES_SUPPORT","objectKeys","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","aPossiblePrototype","CORRECT_SETTER","FREEZING","METADATA","setMetadata","objectID","weakData","meta","REQUIRED","fastKey","getWeakData","onFreeze","ENTRIES","returnMethod","DOMIterables","COLLECTION_NAME","Collection","CollectionPrototype","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","ArrayIteratorMethods","ArrayValues","_typeof","_defineProperties","_defineProperty","enumerableOnly","sym","_objectSpread2","getOwnPropertyDescriptors","SVGAnimatedString","convertToArray","addClasses","classes","newClasses","className","baseVal","newClass","SVGElement","removeClasses","_listCacheClear","__data__","eq_1","_assocIndexOf","_listCacheDelete","_listCacheGet","_listCacheHas","_listCacheSet","ListCache","entry","_ListCache","_stackClear","_stackDelete","_stackGet","_stackHas","commonjsGlobal","createCommonjsModule","_freeGlobal","freeSelf","_root","_Symbol","objectProto","nativeObjectToString","symToStringTag","_getRawTag","isOwn","unmasked","nativeObjectToString$1","_objectToString","symToStringTag$1","_baseGetTag","isObject_1","isFunction_1","_coreJsData","maskSrcKey","_isMasked","func","funcToString","_toSource","reIsHostCtor","funcProto$1","objectProto$2","funcToString$1","hasOwnProperty$1","reIsNative","_baseIsNative","_getValue","_getNative","_Map","_nativeCreate","_hashClear","_hashDelete","hasOwnProperty$2","_hashGet","hasOwnProperty$3","_hashHas","_hashSet","Hash","_Hash","_mapCacheClear","_isKeyable","_getMapData","_mapCacheDelete","_mapCacheGet","_mapCacheHas","_mapCacheSet","MapCache","_MapCache","_stackSet","pairs","LARGE_ARRAY_SIZE","Stack","_Stack","_setCacheAdd","_setCacheHas","SetCache","_SetCache","_arraySome","predicate","_cacheHas","_equalArrays","bitmask","customizer","equalFunc","stack","isPartial","arrLength","othLength","stacked","arrValue","othValue","compared","othIndex","_Uint8Array","Uint8Array","_mapToArray","_setToArray","symbolProto","symbolValueOf","_equalByTag","byteLength","byteOffset","message","convert","_arrayPush","isArray_1","_baseGetAllKeys","keysFunc","symbolsFunc","_arrayFilter","resIndex","stubArray_1","nativeGetSymbols","_getSymbols","_baseTimes","iteratee","isObjectLike_1","_baseIsArguments","objectProto$6","hasOwnProperty$4","propertyIsEnumerable$1","isArguments_1","stubFalse_1","isBuffer_1","freeExports","freeModule","Buffer","reIsUint","_isIndex","isLength_1","typedArrayTags","_baseIsTypedArray","_baseUnary","_nodeUtil","freeProcess","nodeUtil","types","nodeIsTypedArray","isTypedArray","isTypedArray_1","hasOwnProperty$5","_arrayLikeKeys","inherited","isArr","isArg","isBuff","isType","skipIndexes","objectProto$8","_isPrototype","_overArg","_nativeKeys","hasOwnProperty$6","_baseKeys","isArrayLike_1","keys_1","_getAllKeys","hasOwnProperty$7","_equalObjects","objProps","objLength","skipCtor","objValue","objCtor","othCtor","_DataView","_Promise","_WeakMap","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ctorString","_getTag","hasOwnProperty$8","_baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","_baseIsEqual","baseIsEqual","isEqual_1","DEFAULT_OPTIONS","container","template","openTooltips","Tooltip","_reference","_options","_classCallCheck","evt","relatedreference","toElement","relatedTarget","_tooltipNode","evt2","relatedreference2","_scheduleHide","_isOpen","_show","_hide","_dispose","_classes","_setContent","classesUpdated","defaultClass","setClasses","getOptions","needPopperUpdate","needRestart","isOpen","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","tooltipGenerator","tooltipNode","substr","autoHide","_this2","asyncContent","_applyContent","_this3","allowHtml","rootNode","titleNode","innerSelector","loadingClass","loadingContent","asyncResult","innerText","_disposeTimer","updateClasses","_ensureShown","_this4","_create","_findContainer","_append","popperOptions","arrowSelector","_this5","_noLongerOpen","disposeTime","disposeTimeout","_removeTooltipNode","_this6","_this7","directEvents","oppositeEvents","hideOnTargetClick","usedByTooltip","_scheduleShow","_this8","computedDelay","_scheduleTimer","_this9","_setTooltipNodeEvent","_onDocumentTouch","positions","defaultOptions","defaultPlacement","defaultTargetClass","defaultHtml","defaultTemplate","defaultArrowSelector","defaultInnerSelector","defaultDelay","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","popover","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","typeofOffset","getPlacement","getContent","createTooltip","tooltip","_tooltip","_vueEl","targetClasses","_tooltipTargetClasses","destroyTooltip","_tooltipOldShow","setContent","setOptions","addListeners","onClick","onTouchStart","removeListeners","onTouchEnd","onTouchCancel","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","all","changedTouches","touch","$_vclosepopover_touchPoint","firstTouch","abs","screenY","screenX","vclosepopover","getDefault","MSStream","openPopovers","Element","script","ResizeObserver","disabled","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","cssClass","popoverId","oldVal","popoverNode","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","beforeDestroy","_ref2$force","skipDelay","$_scheduleShow","$_beingShowed","_ref3","$_scheduleHide","$_show","$_disposeTimer","$_getOffset","hidden","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","event2","_ref4","$_restartPopper","$_handleGlobalClose","$_handleResize","handleGlobalClose","_loop","__vue_script__","__vue_render__","_vm","_h","tabindex","visibility","keyup","keyCode","_withStripped","__vue_component__","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","originalRender","beforeCreate","normalizeComponent","_defineProperty$1","_baseAssignValue","_assignMergeValue","_baseFor","fromRight","_createBaseFor","_cloneBuffer","allocUnsafe","isDeep","copy","_cloneArrayBuffer","arrayBuffer","_cloneTypedArray","typedArray","_copyArray","objectCreate","_baseCreate","_getPrototype","_initCloneObject","isArrayLikeObject_1","funcProto$2","objectProto$c","funcToString$2","hasOwnProperty$9","objectCtorString","isPlainObject_1","_safeGet","hasOwnProperty$a","_assignValue","_copyObject","isNew","newValue","_nativeKeysIn","hasOwnProperty$b","_baseKeysIn","isProto","keysIn_1","toPlainObject_1","_baseMergeDeep","srcIndex","mergeFunc","srcValue","isCommon","isTyped","_baseMerge","baseMerge","identity_1","_apply","nativeMax","_overRest","otherArgs","constant_1","_baseSetToString","nativeNow","_setToString","lastCalled","stamp","remaining","_shortOut","_baseRest","_isIterateeCall","merge_1","assigner","sources","guard","_createAssigner","installed","finalOptions","insertAt","head","getElementsByTagName","styleSheet","styleInject","VTooltip","VClosePopover","VPopover","GlobalVue","$indexOf","nativeIndexOf","NEGATIVE_ZERO","searchElement","RE","nativeAssign","B","chr","T","argumentsLength","wrappedWellKnownSymbolModule","whitespace","ltrim","rtrim","URL","searchParams","pathname","toJSON","href","username","arrayLike","mapfn","mapping","iteratorMethod","utils","encode","paramsSerializer","serializedParams","parts","toISOString","hashmarkIndex","__CANCEL__","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","adapter","XMLHttpRequest","transformRequest","transformResponse","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","status","common","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","requestData","requestHeaders","request","auth","password","unescape","Authorization","btoa","fullPath","baseURL","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onabort","onerror","ontimeout","timeoutErrorMessage","xsrfValue","withCredentials","read","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancelToken","promise","cancel","abort","send","enhanceError","code","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","directMergeKeys","getMergedValue","mergeDeepProperties","axiosKeys","otherKeys","Cancel","defaultConstructor","defer","channel","port","IS_IOS","clearImmediate","MessageChannel","Dispatch","runner","listener","post","postMessage","port2","port1","onmessage","importScripts","PromiseCapability","$$resolve","$$reject","charenc","utf8","stringToBytes","bin","bytesToString","bytes","decodeURIComponent","fromCharCode","0","$map","nativeKeys","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","ScopedStorage","scope","wrapped","persistent","GLOBAL_SCOPE_PERSISTENT","GLOBAL_SCOPE_VOLATILE","setItem","scopeKey","getItem","removeItem","stateify","TokenState","CharacterState","BaseState","tClass","defaultTransition","jump","accepts","character","charOrRegExp","tokenClass","endToken","defaultToken","newStates","nextState","locals","useSourceMap","cssMapping","sourceMapping","sourceMap","base64","sourceURLs","sourceRoot","cssWithMappingToString","mediaQuery","dedupe","alreadyImportedModules","listToStyles","parentId","newStyles","part","media","hasDocument","DEBUG","stylesInDom","singletonElement","singletonCounter","isProduction","isOldIE","addStylesClient","_isProduction","addStylesToDom","newList","mayRemove","domStyle","addStyle","createStyleElement","styleElement","styleIndex","applyToSingletonTag","applyToTag","newObj","textStore","replaceText","cssNode","ssrId","_injectStyles","u","getGettextBuilder","detectLocale","locale","json","charset","Language","translations","msgid","comments","translator","msgstr","Actions","Activities","Choose","Close","Custom","Flags","Next","Objects","Previous","Search","Settings","Symbols","addTranslation","ngettext","gettext","needQuotes","beforeUpdate","getText","isLongText","icon","closeAfterClick","ariaLabel","isIconUrl","closeMenu","isMobile","handleWindowResize","onIsMobileChanged","hasStatus","userStatus","fetchUserStatus","regeneratorRuntime","mark","wrap","prev","getCapabilities","user_status","abrupt","sent","ocs","t0","required","label","avatarUrl","getAvatarUrl","mentionText","contenteditable","backgroundImage","role","userData","renderContent","flat","genSelectTemplate","parseContent","renderComponentHtml","Popover","forceMenu","menuTitle","defaultIcon","actions","opened","focusIndex","randomId","hasMultipleActions","isValidSingleAction","firstActionElement","firstActionVNode","firstAction","firstActionBinding","exact","firstActionEvent","click","firstActionEventBinding","firstActionClass","initActions","openMenu","onOpen","menuButton","focus","focusFirstAction","onMouseFocusAction","closest","menu","querySelectorAll","focusAction","removeCurrentActive","focusPreviousAction","preventIfEvent","focusNextAction","focusLastAction","preventDefault","stopPropagation","execFirstAction","auto","rel","keydown","ctrlKey","shiftKey","metaKey","mousemove","return","excludeClickOutsideClasses","clickOutsideMiddleware","hasNodeOrAnyParentClass","isFullscreen","_isFullscreen","_onResize","outerHeight","screen","validator","iconIsUrl","action","PopoverMenuItem","download","longtext","submit","checked","for","highlight","ranges","chunks","getBuilder","persist","ClickOutside","PopoverMenu","iconClass","showUserStatus","showUserStatusCompact","isGuest","displayName","allowPlaceholder","disableTooltip","disableMenu","tooltipMessage","isNoUser","statusColor","menuPosition","avatarUrlLoaded","avatarSrcSetLoaded","userDoesNotExist","isAvatarLoaded","isMenuLoaded","contactsMenuActions","contactsMenuOpenState","canDisplayUserStatus","showUserStatusIconOnAvatar","getUserIdentifier","isDisplayNameDefined","isUserDefined","isUrlDefined","hasMenu","shouldShowPlaceholder","avatarStyle","lineHeight","fontSize","backgroundColor","initials","fromCodePoint","codePointAt","hyperlink","loadAvatarUrl","subscribe","handleUserStatusUpdated","beforeDestroyed","unsubscribe","userId","toggleMenu","fetchContactsMenu","topAction","updateImageIfValid","avatarUrlGenerator","oc_userconfig","avatar","Image","onload","srcset","w","alt","xmlns","viewBox","fill","stroke","M","isFocusable","focusable","Avatar","Highlight","desc","needsTruncate","part1","part2","highlight1","highlight2","AvatarSelectOption","EllipsisedOption","VueMultiselect","limit","trackBy","userSelect","autoLimit","tagWidth","elWidth","maxOptions","limitString","localValue","updateWidth","getOptionLabel","formatLimitTitle","linkify","defaultProtocol","pause","getTimeLeft","getStateRunning","ActionButton","hasPrevious","hasNext","outTransition","enableSlideshow","clearViewDelay","slideshowDelay","slideshowPaused","enableSwipe","spreadNavigation","canClose","dark","mc","showModal","clearView","clearViewTimeout","playing","slideshowTimeout","modalTransitionName","playPauseTitle","handleKeydown","handleMouseMove","mask","handleSwipe","lastChild","previous","resetSlideshow","togglePlayPause","handleSlideshow","clearSlideshowTimeout","touchmove","invisible","cx","cy","DatePicker","clearable","minuteStep","date","datetime","year","month","time","week","handleSelectYear","datepicker","currentValue","setFullYear","selectDate","handleSelectMonth","setMonth","disableDrop","hovering","onOpenChange","dropped","dragEnter","dragLeave","crumb","draggable","dragstart","drop","dragover","dragenter","dragleave","toggleNavigation","tabs","activeTab","hasMultipleTabs","currentTabIndex","updateActive","updateTabs","setActive","dataset","focusPreviousTab","focusActiveTab","focusNextTab","focusFirstTab","focusLastTab","focusActiveTabContent","Util","naturalSortCompare","button","AppSidebarTabs","EmptyContent","titleEditable","titlePlaceholder","subtitle","background","starred","starLoading","compact","empty","linkifyTitle","isStarred","canStar","hasFigure","header","hasFigureClickListener","closeSidebar","onFigureClick","toggleStarred","editTitle","titleInput","onTitleInput","onSubmitTitle","onDismissEditing","onUpdateActive","subline","haveStatus","autoComplete","menuContainer","maxlength","tribute","fillAttr","lookup","menuItemTemplate","noMatchTemplate","selectTemplate","debouncedAutoComplete","isEmptyValue","isOverMaxlength","attach","detach","onInput","updateValue","onPaste","clipboardData","files","getSelection","rangeCount","getRangeAt","deleteFromDocument","insertNode","endOffset","collapse","removeAllRanges","addRange","onDelete","isCollapsed","startOffset","anchorNode","selectNodeContents","setEndBefore","anchorOffset","cloneContents","contentEditable","deleteContents","onEnter","isActive","onCtrlEnter","paste","AppNavigationIconCollapsible","allowCollapse","editable","editLabel","editPlaceholder","pinned","undo","menuOpen","menuIcon","menuPlacement","newTitle","editing","collapsible","isIconShown","canHaveChildren","hasChildren","hasUtils","navElement","$route","onMenuToggle","toggleCollapse","handleEdit","inputTitle","cancelEdit","handleRename","handleUndo","nodeValue","DOMParser","parseFromString","canAssign","userAssignable","userVisible","NextcloudVueDocs","tags","Multiselect","inputValue","getValueObject","tagLabel","checkInput","onChange","checkbox","allowSwipeNavigation","cssProps","srcEvent","pageX","deltaX","DatetimePicker","isDatePickerType","onLeave","datetimepicker","closePopup","onSubmit","mouseleave","appName","Chrome","currentColor","advanced","palette","rgbToHex","handleConfirm","handleBack","handleMoreSettings","pickColor","hex","selection","showDetails","showdetails","onScroll","scrollHeight","scroll","toggleInput","radio","description","docUrl","hasDescription","hasDocUrl","avatarImage","margin","isPopoverComponent","popoverEmpty","isAvatarUrl","isCustomAvatar","isLinkComponent","borderRadius","$props","clickOutsideConfig","middleware","buttonId","buttonClass","color","formattedColor","highlighted","AppNavigationToggle","toggleNavigationByEventBus","unmounted","getPropertyValue","ActionRouter","ActionLink","Breadcrumb","rootIcon","hiddenCrumbs","hiddenIndices","menuBreadcrumbProps","delayedResize","closeActions","actionsBreadcrumb","getTotalWidth","pow","getWidth","arraysEqual","dragStart","dragOver","addCrumbs","Modal","hideNavigation","selectedSection","linkClicked","addedScrollListener","scroller","hasNavigation","settingsNavigationAriaLabel","handleScroll","getSettingsNavigation","handleSettingsNavigationClick","getElementById","scrollIntoView","inline","handleCloseModal","blur","handleLinkKeydown","N","I","D","L","z","U","Q","G","Y","H","Z","q","J","K","initCompat","ua","msie","rv","edge","getInternetExplorerVersion","compareAndNotify","_w","addResizeHandlers","_resizeObject","contentDocument","removeResizeHandlers","__WEBPACK_EXTERNAL_MODULE_a352__","LIBRARY","$export","$iterCreate","BUGGY","getMethod","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","defined","TO_STRING","at","$keys","dP","getKeys","wks","strfn","rxfn","cof","ARG","SRC","$toString","TPL","safe","dPs","Empty","createDict","lt","USE_SYMBOL","createDesc","ObjectProto","core","own","out","exp","IS_FORCED","IS_GLOBAL","IS_STATIC","IS_PROTO","IS_BIND","expProto","W","builtinExec","$includes","IObject","gOPS","pIE","$assign","aLen","getSymbols","isEnum","__g","__e","ArrayProto","$replace","$iterators","collections","explicit","toIObject","__webpack_exports__","insertNodeAt","regex","fatherNode","refNode","px","arrayIndexOf","$startsWith","scripts","setPublicPath_i","_arrayLikeToArray","arr2","_unsupportedIterableToArray","minLen","_slicedToArray","_arrayWithHoles","_arr","_iterableToArrayLimit","_nonIterableRest","_toConsumableArray","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","currentScript","external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_","external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default","helper","evtName","evtData","delegateAndEmit","realList","isTransitionName","getSlot","scopedSlot","eventsListened","eventsToEmit","readonlyProperties","draggingElement","draggableComponent","noTransitionOnDrag","move","componentData","transitionMode","noneFunctionalComponentMode","vuedraggable_isTransition","_computeChildrenAndOf","headerOffset","footerOffset","footer","computeChildrenAndOffsets","propName","buildAttribute","componentDataAttrs","getComponentAttributes","getIsFunctional","optionsAdded","elt","onMove","originalEvent","onDragMove","_sortable","rootContainer","computeIndexes","newOptionValue","updateOptions","getChildrenNodes","rawNodes","visibleIndexes","isTransition","elmFromNodes","footerIndex","rawIndexes","idx","ind","_computeIndexes","getUnderlyingVm","htmlElt","computeVmIndex","getUnderlyingPotencialDraggableComponent","vue","emitChanges","alterList","onList","spliceList","_arguments","updatePosition","oldIndex","newIndex","getRelatedContextFromMoveEvent","related","destination","getVmIndex","domIndex","indexes","numberIndexes","getComponent","resetTransitionData","transitionContainer","onDragStart","_underlying_vm_","onDragAdd","added","onDragRemove","pullMode","onDragUpdate","updateProperty","computeFutureIndex","relatedContext","domChildren","currentDOMIndex","currentIndex","willInsertAfter","draggedContext","futureIndex","onDragEnd","vuedraggable","2","22","58","59","6","observers","_eventBus","tokenElement","packageJson","er","numeric","anum","bnum","rcompareIdentifiers","Map","collection","collectionStrong","InternalMetadataModule","iterate","anInstance","checkCorrectnessOfIteration","inheritIfRequired","wrapper","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","getConstructor","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","preventExtensions","redefineAll","setSpecies","internalStateGetterFor","define","getEntry","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","isAdmin","uidElement","displayNameElement","isUserAdmin","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","registerImmediate","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","postMessageIsAsynchronous","oldOnMessage","canUsePostMessage","attachEvent","task","FunctionPrototype","FunctionPrototypeToString","nameRE","GettextBuilder","_nodeGettext","_createClass","language","setLanguage","GettextWrapper","gt","sourceLocale","addTranslations","setLocale","translated","placeholders","subtitudePlaceholders","singular","plural","plurals","Gettext","catalogs","eventName","eventData","setTextDomain","dnpgettext","dgettext","msgidPlural","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","pluralsFunc","getLanguageCode","getComment","textdomain","setlocale","addTextdomain","reIsDeepProp","reIsPlainProp","reLeadingDot","rePropName","reEscapeChar","freeGlobal","root","funcProto","coreJsData","objectToString","getNative","nativeCreate","symbolToString","assocIndexOf","baseGet","isSymbol","isKey","stringToPath","toKey","baseIsNative","isHostObject","toSource","getMapData","memoize","baseToString","quote","resolver","memoized","Cache","isObjectLike","defaultValue","ach","examples","sample","nplurals","pluralsText","af","ak","am","an","ar","arn","ast","ay","az","be","bg","bn","bo","br","brx","bs","ca","cgg","cs","csb","da","de","doi","dz","en","eo","es","et","eu","fa","ff","fi","fil","fo","fr","fur","fy","ga","gd","gl","gu","gun","ha","he","hi","hne","hr","hu","hy","ja","jbo","jv","ka","kk","km","kn","ko","ku","kw","ky","lb","ln","lo","lv","mai","mfe","mg","mi","mk","ml","mn","mni","mnk","mr","ms","mt","my","nah","nap","nb","ne","nl","nn","nso","oc","or","pa","pap","pl","pms","ps","pt","ro","ru","rw","sah","sat","sco","sd","se","si","sk","sl","so","son","sq","sr","su","sv","sw","ta","te","tg","th","ti","tk","tr","tt","ug","uk","ur","uz","vi","wa","wo","yo","zh","nativeObjectCreate","getOwnPropertyNamesExternal","defineWellKnownSymbol","HIDDEN","TO_PRIMITIVE","$Symbol","$stringify","nativeGetOwnPropertyNames","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","QObject","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","$defineProperty","$defineProperties","properties","$getOwnPropertySymbols","$propertyIsEnumerable","$getOwnPropertyDescriptor","$getOwnPropertyNames","IS_OBJECT_PROTOTYPE","keyFor","useSetter","useSimple","space","$replacer","windowNames","getWindowNames","$trim","forcedStringTrimMethod","whitespaces","NativeNumber","NumberPrototype","BROKEN_CLASSOF","third","radix","maxCode","digits","NaN","NumberWrapper","EOF","USE_NATIVE_URL","arrayFrom","toASCII","URLSearchParamsModule","NativeURL","getInternalSearchParamsState","getState","getInternalURLState","ALPHA","ALPHANUMERIC","DIGIT","HEX_START","OCT","DEC","HEX","FORBIDDEN_HOST_CODE_POINT","FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT","LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE","TAB_AND_NEW_LINE","parseHost","codePoints","parseIPv6","isSpecial","parseIPv4","percentEncode","C0ControlPercentEncodeSet","partsLength","numbers","ipv4","numbersSeen","ipv4Piece","swaps","swap","address","pieceIndex","compress","pointer","char","serializeHost","ignore0","ipv6","maxIndex","maxLength","currStart","currLength","findLongestZeroSequence","fragmentPercentEncodeSet","pathPercentEncodeSet","userinfoPercentEncodeSet","specialSchemes","ftp","http","https","ws","wss","scheme","includesCredentials","cannotHaveUsernamePasswordPort","cannotBeABaseURL","isWindowsDriveLetter","startsWithWindowsDriveLetter","shortenURLsPath","pathSize","isSingleDot","segment","SCHEME_START","SCHEME","NO_SCHEME","SPECIAL_RELATIVE_OR_AUTHORITY","PATH_OR_AUTHORITY","RELATIVE","RELATIVE_SLASH","SPECIAL_AUTHORITY_SLASHES","SPECIAL_AUTHORITY_IGNORE_SLASHES","AUTHORITY","HOST","HOSTNAME","PORT","FILE","FILE_SLASH","FILE_HOST","PATH_START","PATH","CANNOT_BE_A_BASE_URL_PATH","FRAGMENT","parseURL","stateOverride","bufferCodePoints","failure","seenAt","seenBracket","seenPasswordToken","fragment","codePoint","encodedCodePoints","URLConstructor","baseState","urlString","searchParamsState","updateSearchParams","updateURL","serializeURL","origin","getOrigin","getProtocol","getUsername","getPassword","getHost","hostname","getHostname","getPort","getPathname","getSearch","getSearchParams","getHash","URLPrototype","output","accessorDescriptor","nativeCreateObjectURL","createObjectURL","nativeRevokeObjectURL","revokeObjectURL","blob","regexNonASCII","regexSeparators","OVERFLOW_ERROR","stringFromCharCode","digitToBasic","digit","adapt","delta","numPoints","firstTime","baseMinusTMin","inputLength","extra","ucs2decode","bias","basicLength","handledCPCount","handledCPCountPlusOne","RangeError","qMinusT","baseMinusT","encoded","labels","getIterator","$fetch","Headers","getInternalParamsState","URL_SEARCH_PARAMS","plus","sequences","percentSequence","percentDecode","sequence","deserialize","serialize","parseSearchParams","attribute","validateArgumentsLength","passed","URLSearchParamsIterator","URLSearchParamsConstructor","entryIterator","entryNext","URLSearchParamsPrototype","append","getAll","found","entriesIndex","sliceIndex","fetch","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","symbolPrototype","native","nativeSlice","fin","Axios","mergeConfig","createInstance","defaultConfig","axios","instanceConfig","promises","spread","InterceptorManager","dispatchRequest","interceptors","chain","interceptor","fulfilled","rejected","getUri","eject","transformData","throwIfCancellationRequested","throwIfRequested","isAxiosError","fileName","lineNumber","columnNumber","expires","secure","cookie","toGMTString","isAbsoluteURL","combineURLs","requestedURL","relativeURL","ignoreDuplicateOf","parsed","line","originURL","urlParsingNode","resolveURL","requestURL","executor","resolvePromise","nonNative","STATE_PLAINTEXT","STATE_HTML","STATE_COMMENT","ALLOWED_TAGS_REGEX","NORMALIZE_TAG_REGEX","striptags","allowable_tags","tag_replacement","striptags_internal","init_context","tag_set","parse_allowable_tags","tag_buffer","depth","in_quote_char","normalize_tag","init_streaming_mode","msMaxTouchPoints","detectIframe","srcTarget","composedPath","nativeJoin","ES3_STRINGS","separator","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","NativePromise","speciesConstructor","microtask","promiseResolve","hostReportErrors","newPromiseCapabilityModule","perform","PROMISE","getInternalPromiseState","PromiseConstructor","newPromiseCapability","newGenericPromiseCapability","IS_NODE","DISPATCH_EVENT","PromiseRejectionEvent","FakePromise","INCORRECT_ITERATION","isThenable","isReject","notified","reactions","ok","exited","reaction","fail","rejection","onHandleUnhandled","exit","onUnhandled","isUnhandled","unwrap","internalReject","internalResolve","onFulfilled","onRejected","capability","$promiseResolve","alreadyCalled","race","flush","toggle","macrotask","WebKitMutationObserver","queueMicrotaskDescriptor","queueMicrotask","promiseCapability","runtime","Op","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","_sent","dispatchException","record","tryCatch","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","invoke","__await","unwrapped","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isGeneratorFunction","genFun","ctor","awrap","skipTempReset","rootRecord","rval","exception","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","accidentalStrictMode","matchHtmlRegExp","callRegExpExec","arrayPush","SUPPORTS_Y","SPLIT","nativeSplit","internalSplit","lim","lastLength","lastLastIndex","separatorCopy","splitter","unicodeMatching","_initialState","crypt","md5","encoding","bytesToWords","FF","_ff","GG","_gg","HH","_hh","II","_ii","aa","bb","cc","dd","endian","_blocksize","_digestsize","digestbytes","wordsToBytes","asBytes","asString","bytesToHex","base64map","rotl","rotr","randomBytes","words","hexToBytes","bytesToBase64","triplet","base64ToBytes","imod4","readFloatLE","isSlowBuffer","_isBuffer","deleteCount","insertCount","actualDeleteCount","actualStart","flattenIntoArray","depthArg","sourceLen","mapper","targetIndex","sourceIndex","mapFn","getFlags","NativeRegExp","CORRECT_NEW","RegExpWrapper","thisIsRegExp","patternIsRegExp","flagsAreUndefined","appId","_storagebuilder","clearAll","sessionStorage","localStorage","clearStorage","clearNonPersistent","_scopedstorage","_interopRequireDefault","storage","pred","StorageBuilder","_persist","persisted","clearedOnLogout","nativeMatch","matcher","matchStr","$reduce","IS_RIGHT","memo","wait","timestamp","later","debounced","callNow","sameValue","SEARCH","nativeSearch","searcher","previousLastIndex","exportName","VENDOR_PREFIXES","TEST_ELEMENT","setTimeoutContext","bindFn","invokeArrayArg","each","deprecate","deprecationMessage","log","nextKey","dest","inherit","childP","baseP","_super","boolOrFn","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","hasParent","inStr","inArray","findByKey","uniqueArray","prefixed","camelProp","_uniqueId","getWindowForElement","SUPPORT_TOUCH","SUPPORT_POINTER_EVENTS","SUPPORT_ONLY_TOUCH","PROPS_XY","PROPS_CLIENT_XY","Input","manager","inputTarget","domHandler","ev","enable","inputHandler","eventType","pointersLen","pointers","changedPointersLen","changedPointers","isFirst","isFinal","session","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","getCenter","deltaTime","angle","getAngle","distance","getDistance","offsetDelta","prevDelta","prevInput","deltaY","computeDeltaXY","offsetDirection","getDirection","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","scale","rotation","getRotation","maxPointers","velocity","velocityX","velocityY","direction","lastInterval","computeIntervalInputData","computeInputData","recognize","clientX","clientY","p1","p2","sqrt","atan2","PI","evEl","evTarget","evWin","MOUSE_INPUT_MAP","mousedown","mouseup","MouseInput","pressed","which","pointerType","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM","3","4","5","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","PointerEventInput","pointerEvents","MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchend","touchcancel","SingleTouchInput","started","normalizeSingleTouches","touches","changed","TOUCH_INPUT_MAP","TouchInput","targetIds","getTouches","allTouches","targetTouches","changedTargetTouches","TouchMouseInput","mouse","primaryTouch","lastTouches","recordTouches","setLastTouch","lastTouch","lts","isSyntheticEvent","inputEvent","inputData","isMouse","sourceCapabilities","firesTouchEvents","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_MAP","touchMap","cssSupports","CSS","supports","getTouchActionProps","TouchAction","compute","touchAction","recognizers","recognizer","getTouchAction","hasPanX","hasPanY","cleanTouchActions","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","DIRECTION_LEFT","DIRECTION_UP","preventSrc","Recognizer","simultaneous","requireFail","stateStr","directionStr","getRecognizerByNameIfManager","otherRecognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","Hammer","preset","Manager","recognizeWith","dropRecognizeWith","requireFailure","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","attrTest","optionPointers","isRecognized","isValid","threshold","DIRECTION_HORIZONTAL","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","interval","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","inputClass","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","oldCssProps","toggleCssProps","curRecognizer","gestureEvent","gesture","triggerDomEvent","INPUT_START","INPUT_MOVE","INPUT_END","INPUT_CANCEL","STATE_POSSIBLE","STATE_BEGAN","STATE_CHANGED","STATE_ENDED","STATE_RECOGNIZED","STATE_CANCELLED","STATE_FAILED","DIRECTION_NONE","DIRECTION_RIGHT","DIRECTION_DOWN","DIRECTION_VERTICAL","DIRECTION_ALL","Tap","Pan","Swipe","Pinch","Rotate","Press","nativeFromCodePoint","elements","$isLabel","$groupLabel","preferredOpenDirection","optimizedHeight","maxHeight","internalSearch","searchable","clearOnSelect","hideSelected","allowEmpty","resetAfter","closeOnSelect","customLabel","taggable","tagPlaceholder","tagPosition","optionsLimit","groupValues","groupLabel","groupSelect","blockKeys","preserveSearch","preselectFirst","internalValue","select","filteredOptions","filterAndFlat","isSelected","isExistingOption","isTag","valueKeys","optionKeys","flatAndStrip","currentOptionLabel","updateSearch","isOptionDisabled","$isDisabled","selectGroup","pointerDirty","deactivate","removeElement","wholeGroupSelected","wholeGroupDisabled","removeLastElement","adjustPosition","openDirection","showPointer","optionHeight","pointerPosition","visibleElements","pointerAdjust","optionHighlight","groupHighlight","addPointerElement","pointerReset","pointerForward","pointerBackward","pointerSet","selectLabel","selectGroupLabel","selectedLabel","deselectLabel","deselectGroupLabel","showLabels","limitText","showNoOptions","showNoResults","isSingleLabelVisible","singleValue","visibleValues","isPlaceholderVisible","deselectLabelText","deselectGroupLabelText","selectLabelText","selectGroupLabelText","selectedLabelText","inputStyle","contentStyle","isAbove","showSearchInput","hasSingleSelectedSlot","visibleSingleValue","onunhandledrejection","_a","onrejectionhandled","finally","BREAK","RETURN","standalone","esModule","keypress","autocomplete","mouseenter","FAILS_ON_PRIMITIVES","_interopRequireWildcard","tokenize","Options","escapeText","escapeAttr","attributesToString","linkifyStr","tokens","nl2br","isLink","_opts$resolve","formatted","formattedHref","scanner","parser","filtered","formatHref","validate","ignoreTags","linkAttributes","linkClass","ignoredTags","toHref","getObject","operator","optionValue","TOKENS","State","_state","_text","tlds","NUMBERS","ALPHANUM","WHITESPACE","domainStates","makeState","S_START","S_NUM","S_DOMAIN","S_DOMAIN_HYPHEN","S_WS","partialProtocolFileStates","partialProtocolFtpStates","partialProtocolHttpStates","partialProtocolMailtoStates","S_PROTOCOL_FILE","S_PROTOCOL_FTP","S_PROTOCOL_HTTP","S_MAILTO","S_PROTOCOL_SECURE","S_FULL_PROTOCOL","S_FULL_MAILTO","partialLocalhostStates","lowerStr","cursor","tokenLength","latestAccepting","sinceAccepts","TOKEN","_multi","MULTI_TOKENS","S_PROTOCOL","S_PROTOCOL_SLASH","S_PROTOCOL_SLASH_SLASH","S_DOMAIN_DOT","S_TLD","S_TLD_COLON","S_TLD_PORT","S_URL","S_URL_NON_ACCEPTING","S_URL_OPENBRACE","S_URL_OPENBRACKET","S_URL_OPENANGLEBRACKET","S_URL_OPENPAREN","S_URL_OPENBRACE_Q","S_URL_OPENBRACKET_Q","S_URL_OPENANGLEBRACKET_Q","S_URL_OPENPAREN_Q","S_URL_OPENBRACE_SYMS","S_URL_OPENBRACKET_SYMS","S_URL_OPENANGLEBRACKET_SYMS","S_URL_OPENPAREN_SYMS","S_EMAIL_DOMAIN","S_EMAIL_DOMAIN_DOT","S_EMAIL","EMAIL","S_EMAIL_COLON","S_EMAIL_PORT","S_MAILTO_EMAIL","MAILTOEMAIL","S_MAILTO_EMAIL_NON_ACCEPTING","S_LOCALPART","S_LOCALPART_AT","S_LOCALPART_DOT","S_NL","qsAccepting","qsNonAccepting","localpartAccepting","multis","textTokens","secondState","multiLength","TEXT","MULTI","isDomainToken","MultiToken","hasProtocol","hasSlashSlash","$values","TO_ENTRIES","hsl","hsv","rgba","rgb","setAlpha","toHsl","toHsv","toHexString","hex8","toHex8String","toRgb","oldHue","getAlpha","colors","colorChange","isValidHex","simpleCheckForValidColor","paletteUpperCase","isTransparent","__file","pick","handlerClick","labelText","arrowOffset","labelId","labelSpanText","handleChange","handleKeyDown","swatches","hue","activeOffset","hueChange","handleSwClick","pullDirection","directionClass","pointerTop","pointerLeft","pageXOffset","pageYOffset","pageY","handleMouseDown","handleMouseUp","unbindEventListeners","equal","disableFields","hasResetButton","acceptLabel","cancelLabel","resetLabel","newLabel","currentLabel","saturation","alpha","toFixed","childChange","inputChange","clickCurrentColor","handleAccept","handleCancel","handleReset","bgColor","throttle","leading","trailing","checkboard","gradientColor","getContext","fillStyle","fillRect","toDataURL","white","grey","bgStyle","presetColors","disableAlpha","activeColor","handlePreset","fieldsIndex","hasAlpha","toggleViews","showHighlight","hideHighlight","Compact","Grayscale","Material","Slider","Swatches","Photoshop","Sketch","Alpha","Checkboard","EditableInput","Hue","Saturation","ColorMixin","hsla","hsva","hex6","hex4","hex3","X","_originalInput","_r","_roundA","_format","_gradientType","gradientType","_ok","_tc_id","desaturate","CSS_UNIT","isDark","getBrightness","isLight","getOriginalInput","getFormat","getLuminance","toHsvString","toHslString","toHex","toHex8","toRgbString","toPercentageRgb","toPercentageRgbString","toName","toFilter","_applyModification","lighten","brighten","darken","saturate","greyscale","spin","_applyCombination","analogous","complement","monochromatic","splitcomplement","triad","tetrad","fromRatio","equals","mix","readability","isReadable","level","mostReadable","includeFallbackColors","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","burntsienna","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","whitesmoke","yellow","yellowgreen","hexNames","borderColor","50","100","200","300","400","500","600","700","800","900","a100","a200","a400","a700","dividers","inactive","deepPurple","lightBlue","lightGreen","amber","deepOrange","blueGrey","darkText","lightText","darkIcons","lightIcons","maxWait","mouseover","mouseout","CustomEvent","CustomEvent$1","bubbles","cancelable","detail","initCustomEvent","Event","TributeEvents","boundKeydown","boundKeyup","boundInput","shouldDeactivate","hideMenu","commandEvent","li","selectItemAtIndex","externalTrigger","updateSelection","allowSpaces","hasTrailingSpace","autocompleteMode","triggerChar","getKeyCode","triggers","menuShowMinLength","showMenuFor","eventKeyPressed","getTriggerInfo","mentionTriggerChar","selectedPath","mentionSelectedPath","selectedOffset","mentionSelectedOffset","collectionItem","filteredItems","menuSelected","tab","spaceSelectsMatch","up","setActiveLi","down","lis","selectClass","liClientRect","menuClientRect","scrollDistance","includeMargin","currentStyle","TributeMenuEvents","menuEvents","menuClickEvent","menuContainerScrollEvent","windowResizeEvent","positionMenuAtCaret","getDocument","TributeRange","scrollTo","coordinates","positionMenu","isContentEditable","getContentEditableCaretPosition","mentionPosition","getTextAreaOrInputUnderlinePosition","menuDimensions","menuIsOffScreen","isMenuOffScreen","menuIsOffScreenHorizontally","menuIsOffScreenVertically","targetElement","previousSibling","sel","getWindowSelection","requireLeadingSpace","replaceEvent","replaceTextSuffix","endPos","pasteHtml","myField","textSuffix","startPos","selectionStart","selectionEnd","lastNode","createDocumentFragment","cloneRange","setStartAfter","ce","getNodePositionInParent","selectedElem","workingNodeContent","selectStartOffset","textComponent","wordsArray","menuAlreadyActive","isAutocomplete","selectionInfo","getContentEditableSelectedPath","effectiveRange","getTextPrecedingCurrentSelection","lastWordOfEffectiveRange","getLastWordInText","mentionSelectedElement","mostRecentTriggerCharPos","lastIndexWithLeadingSpace","lastIndexOf","currentTriggerSnippet","firstSnippetChar","leadingSpace","reversedStr","cidx","firstChar","triggerIdx","windowWidth","windowHeight","windowLeft","clientLeft","windowTop","clientTop","menuTop","menuRight","menuBottom","menuLeft","dimensions","mozInnerScreenX","div","whiteSpace","wordWrap","span","menuContainerIsBody","offsetTop","offsetLeft","getMenuDimensions","parentHeight","scrollStillAvailable","selectedNodePosition","clientRect","elemTop","elemBottom","maxY","targetY","TributeSearch","compareString","caseSensitive","skip","rendered","score","patternCache","patternIndex","calculateScore","best","indices","extract","compare","Tribute","containerClass","itemClass","searchOpts","menuItemLimit","defaultSelectTemplate","defaultMenuItemTemplate","_isActive","noMatchEvent","matchItem","jQuery","_attach","ensureEditable","inputTypes","ul","currentMentionTextSnapshot","createMenu","tributeMenu","processValues","_findLiTarget","movementY","collectionIndex","placeCaretAtEnd","insertTextAtCursor","insertAtCaret","createTextRange","textRange","moveToElementText","textarea","scrollPos","caretPos","front","back","replaceTriggerText","newValues","_detach","stripAnsi","charRegex","ansiRegex","onlyFirst","astral","combo","fitz","nonAstral","regional","surrogatePair","family","optModifier","seq","$findIndex","SKIPS_HOLES","$find","$every","_objectSpread","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","IE11OrLess","Edge","FireFox","Safari","IOS","ChromeForAndroid","captureMode","selector","msMatchesSelector","webkitMatchesSelector","getParentOrHost","includeCTX","_throttleTimeout","R_SPACE","toggleClass","matrix","selfOnly","appliedTransforms","matrixFn","DOMMatrix","WebKitCSSMatrix","CSSMatrix","MSCSSMatrix","getWindowScrollingElement","getRect","relativeToContainingBlock","relativeToNonStaticParent","undoScale","elRect","containerRect","elMatrix","scaleX","scaleY","isScrolledPast","elSide","parentSide","getParentAutoScrollElement","elSideVal","parentSideVal","getChild","childNum","currentChild","Sortable","ghost","dragged","lastElementChild","previousElementSibling","getRelativeScrollOffset","winScroller","includeSelf","gotSelf","scrollWidth","elemCSS","isRectEqual","rect1","rect2","scrollBy","Polymer","Zepto","dom","setRect","unsetRect","expando","AnimationStateManager","animationCallbackId","animationStates","captureAnimationState","animation","fromRect","thisAnimationDuration","childMatrix","addAnimationState","removeAnimationState","indexOfObject","animateAll","animating","animationTime","toRect","prevFromRect","prevToRect","animatingRect","targetMatrix","calculateRealTime","animate","animationResetTimer","currentRect","translateX","translateY","animatingX","animatingY","repaint","easing","animated","plugins","initializeByDefault","PluginManager","mount","pluginEvent","sortable","eventCanceled","eventNameGlobal","pluginName","initializePlugins","initialized","modifyOption","getEventProperties","eventProperties","modifiedValue","optionListeners","rootEl","targetEl","cloneEl","toEl","fromEl","oldDraggableIndex","newDraggableIndex","putSortable","extraEventProperties","onName","lastPutMode","allEventProperties","dragEl","parentEl","ghostEl","nextEl","lastDownEl","cloneHidden","dragStarted","activeSortable","hideGhostForTarget","_hideGhostForTarget","unhideGhostForTarget","_unhideGhostForTarget","cloneNowHidden","cloneNowShown","dispatchSortableEvent","_dispatchEvent","activeGroup","tapEvt","touchEvt","lastDx","lastDy","tapDistanceLeft","tapDistanceTop","lastTarget","lastDirection","targetMoveDistance","ghostRelativeParent","awaitingDragStarted","ignoreNextClick","sortables","pastFirstInvertThresh","isCircumstantialInvert","ghostRelativeParentInitialScroll","_silent","savedInputChecked","documentExists","PositionGhostAbsolutely","CSSFloatProperty","supportDraggable","supportCssPointerEvents","_detectDirection","elCSS","paddingLeft","paddingRight","borderRightWidth","child1","child2","firstChildCSS","secondChildCSS","firstChildWidth","secondChildWidth","flexDirection","gridTemplateColumns","touchingSideChild2","_prepareGroup","toFn","pull","sameGroup","group","otherGroup","originalGroup","checkPull","checkPut","put","revertClone","nearestEmptyInsertDetectEvent","nearest","emptyInsertThreshold","insideHorizontally","insideVertically","_onDragOver","_checkOutsideTargetEl","_isOutsideThisEl","swapThreshold","invertSwap","invertedSwapThreshold","removeCloneOnHide","ghostClass","chosenClass","dragClass","ignore","preventOnFilter","setData","dataTransfer","dropBubble","dragoverBubble","dataIdAttr","delayOnTouchOnly","touchStartThreshold","forceFallback","fallbackClass","fallbackOnBody","fallbackTolerance","fallbackOffset","supportPointer","nativeDraggable","_onTapStart","_onMove","dragRect","targetRect","retVal","onMoveFn","draggedRect","relatedRect","_disableDraggable","_unsilent","_generateId","sum","_nextTick","_cancelNextTick","_getDirection","originalTarget","inputs","_saveInputCheckedState","criteria","_prepareDragStart","dragStartFn","_lastX","_lastY","_onDrop","_disableDelayedDragEvents","_triggerDragStart","_disableDelayedDrag","_delayedDragTouchMoveHandler","_dragStartTimer","_onTouchMove","_onDragStart","_dragStarted","_appendGhost","_nulling","_emulateDragOver","elementFromPoint","ghostMatrix","relativeScrollOffset","cssMatrix","_hideClone","cloneId","_loopId","effectAllowed","_dragStartId","revert","vertical","isOwner","canSort","fromSortable","completedFired","dragOverEvent","_ignoreWhileAnimating","completed","elLastChild","_ghostIsLast","targetBeforeFirstSwap","sibling","differentLevel","differentRowCol","dragElS1Opp","dragElS2Opp","dragElOppLength","targetS1Opp","targetS2Opp","targetOppLength","_dragElInRowColumn","side1","scrolledPastTop","scrollBefore","isLastTarget","mouseOnAxis","targetLength","targetS1","targetS2","invert","_getInsertDirection","_getSwapDirection","dragIndex","after","moveVector","insertion","_showClone","_offMoveEvents","_offUpEvents","save","handleEvent","dropEffect","_globalDragOver","dst","cancelNextTick","detectDirection","_len","_key","scrollEl","scrollRootEl","lastAutoScrollX","lastAutoScrollY","touchEvt$1","pointerElemChangedInterval","autoScrolls","scrolling","clearAutoScrolls","autoScroll","pid","clearPointerElemChangedInterval","lastSwapEl","isFallback","scrollCustomFn","sens","scrollSensitivity","speed","scrollSpeed","scrollThisInstance","scrollFn","layersOut","currentParent","canScrollX","canScrollY","scrollPosX","scrollPosY","vx","vy","layer","scrollOffsetY","scrollOffsetX","bubbleScroll","toSortable","onSpill","Revert","Remove","SwapPlugin","Swap","swapClass","dragOverValid","prevSwapEl","n1","n2","i1","i2","isEqualNode","swapNodes","nulling","swapItem","startIndex","parentSortable","lastMultiDragSelect","multiDragSortable","dragEl$1","clonesFromRect","clonesHidden","multiDragElements","multiDragClones","initialFolding","folding","MultiDragPlugin","MultiDrag","_deselectMultiDrag","_checkKeyDown","_checkKeyUp","selectedClass","multiDragKey","multiDragElement","multiDragKeyDown","isMultiDrag","delayStartGlobal","delayEnded","setupClone","sortableIndex","insertMultiDragClones","showClone","hideClone","_ref5","dragStartGlobal","_ref6","multiDrag","_ref7","removeMultiDragElements","_ref8","_ref9","clonesInserted","insertMultiDragElements","dragOverCompleted","_ref10","dragRectAbsolute","clonesHiddenBefore","dragOverAnimationCapture","_ref11","dragMatrix","dragOverAnimationComplete","_ref12","originalEvt","multiDragIndex","nullingGlobal","destroyGlobal","deselect","oldIndicies","newIndicies","clones","elementsInserted","AutoScroll","_handleAutoScroll","_handleFallbackAutoScroll","dragOverBubble","ogElemScroller","newElem","___CSS_LOADER_API_IMPORT___","_isMobile","OCA","Accessibility","theme","prefixWithBaseUrl","scriptExports","functionalTemplate","injectStyles","pickFile","setDefault","shippedBackground","details","preview","setShipped","greeting","saveLayout","$$v","layout","panelId","panels","closeModal","isStatusActive","updateStatusCheckbox","statusInfo","panel","updateCheckbox","appStoreUrl","updateBackground","__webpack_nonce__","__webpack_public_path__","Files","App","fileList","filesClient","getClient","Instance","Dashboard","register","registerStatus","requiredArgs","toDate","argStr","startOfYear","dirtyDate","cleanDate","getFullYear","setHours","startOfMonth","setDate","startOfDay","dirtyNumber","addMonths","dirtyAmount","amount","dayOfMonth","getDate","endOfDesiredMonth","getMonth","daysInMonth","subMonths","addYears","setYear","dirtyYear","getDaysInMonth","monthIndex","lastDayOfMonth","dirtyMonth","day","dateWithDesiredMonth","isValidDate","startOfWeek","firstDayOfWeek","getDay","diff","startOfWeekYear","_ref$firstDayOfWeek","_ref$firstWeekContain","firstWeekContainsDate","firstDateOfFirstWeek","getWeek","_ref2$firstDayOfWeek","_ref2$firstWeekContai","firstDateOfThisWeek","months","monthsShort","weekdays","weekdaysShort","weekdaysMin","REGEX_FORMAT","pad","sign","formatTimezone","delimeter","absOffset","hours","minutes","meridiem","isLowercase","word","toLocaleLowerCase","formatFlags","YY","YYYY","MM","MMM","MMMM","DD","getHours","hh","getMinutes","mm","getSeconds","ss","getMilliseconds","SS","SSS","ddd","dddd","getTimezoneOffset","ZZ","ww","formatStr","locale$1","ownKeys$1","_slicedToArray$1","_arrayWithHoles$1","_iterableToArrayLimit$1","_nonIterableRest$1","formattingTokens","match1","match2","match1to2","matchSigned","matchWord","parseFlags","addParseFlag","matchWordCallback","localeKey","to24hour","hour","isPM","getFullInputArray","backupDate","backupArr","useBackup","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","makeParser","dateString","parseTo","createDate","isValidDate$1","isValidRangeDate","getValidDate","backup","assignTime","chunk","cent","meridiemParse","defaultIsPM","minute","lang","formatLocale","yearFormat","monthFormat","monthBeforeYear","defaultLocale","locales","isLocal","getLocaleFieldValue","field","until","Popup","prefixClass","visible","appendToBody","displayPopup","_clickoutEvent","handleClickOutside","isRunning","relativeElement","_displayPopup","_scrollParent","popup","_popupRect","originalVisibility","getPopupElementSize","_this$_popupRect","_getRelativePosition","targetWidth","targetHeight","fixed","offsetX","offsetY","relativeRect","dw","dh","getRelativePosition","scrollBarWidth","IconCalendar","IconClose","TableDate","showWeekNumber","days","handleCellClick","dates","row","getRowClasses","getWeekNumber","cell","getCellClasses","getCellTitle","translateFn","calendarYear","calendarMonth","titleFormat","calendar","lastDayInLastMonth","firstDayInLastMonth","lastDayInCurrentMonth","nextMonthLength","_i2","formatDate","fmt","TableMonth","handleClick","TableYear","years","decade","firstYear","CalendarPanel","_obj","showIconDoubleArrow","handleIconDoubleLeftClick","showIconArrow","handleIconLeftClick","handleIconDoubleRightClick","handleIconRightClick","calendarDecade","handelPanelChange","dateHeader","getYearClasses","getMonthClasses","getDateClasses","getWeekState","handleSelectDate","dispatch","componentName","_parent","defaultPanel","disabledDate","getClasses","partialUpdate","innerCalendar","innerValue","yearLabel","monthLabel","initCalendar","calendarDate","isDisabled","emitDate","updateCalendar","nextCalendar","subYears","getCellDate","_date","_date2","cellDate","notCurrentMonth","getStateClass","CalendarRange","calendars","calendarMinDiff","calendarMaxDiff","Infinity","defaultValues","validateCalendars","handleSelect","_this$innerValue","startValue","endValue","updateStartCalendar","updateEndCalendar","gap","getCalendarGap","dirtyDateLeft","dirtyDateRight","dateLeft","dateRight","yearDiff","monthDiff","differenceInCalendarMonths","getRangeClasses","currentDates","classnames","calendarRange","ScrollbarVertical","scrollbarWidth","thumbHeight","thumbTop","handleDragstart","outer","getScrollbarWidth","handleDragend","getThumbSize","heightPercentage","_draggable","thumb","_prevY","handleDraging","padNumber","generateOptions","difference","tick","ListColumns","columns","col","scrollDuration","hourOptions","minuteOptions","secondOptions","showHour","showMinute","showSecond","hourStep","secondStep","use12h","cols","getHoursList","getMinutesList","getSecondsList","getAMPMList","scrollToSelected","setMinutes","setSeconds","colIndex","cellIndex","parseOption","ListOptions","startMinutes","endMinutes","stepMinutes","timeMinutes","scrollTo$1","TimePanel","showTimeHeader","handleClickTitle","timePickerOptions","innerForamt","ShowHourMinuteSecondAMPM","timeTitleFormat","disabledTime","defaultProps","TimeRange","_this$value","emitChange","handleSelectStart","handleSelectEnd","disabledStartTime","disabledEndTime","_extends$1","normalMerge","toArrayMerge","functionalMerge","mergeFn","DatetimePanel","showTimePanel","defaultTimeVisible","timeVisible","closeTimePanel","openTimePanel","calendarProps","timeProps","DatetimeRange","datetimes","componentMap","componentRangeMap","openPopup","readonly","inputAttr","handleInputKeydown","handleInputFocus","handleInputBlur","handleInputInput","handleInputChange","showClearIcon","handleClear","popupClass","popupStyle","popupVisible","handleClickOutSide","hasSlot","shortcuts","emitValue","handleSelectShortcut","currentComponent","currentComponentProps","confirm","handleConfirmDate","confirmText","valueType","formatter","rangeSeparator","renderInputText","userInput","defaultOpen","validMultipleType","value2date","isValidValue","mergeDeep","getFormatter","parseDate","_options$locale","_locale","_options$backupDate","parseResult","millisecond","weekday","inputArray","firstDate","utcDate","offsetMilliseconds","parsedDate","date2value","afterEmitValue","isValidValueAndNotDisabled","handleMultipleDates","nextDates"],"mappings":"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","file":"dashboard.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/js/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 336);\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","\"use strict\";\n\nrequire(\"core-js/modules/es.array.index-of\");\n\nrequire(\"core-js/modules/es.object.assign\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.regexp.to-string\");\n\nrequire(\"core-js/modules/es.string.replace\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRootUrl = exports.generateFilePath = exports.imagePath = exports.generateUrl = exports.generateOcsUrl = exports.generateRemoteUrl = exports.linkTo = void 0;\n\n/// <reference types=\"@nextcloud/typings\" />\n\n/**\n * Get an absolute url to a file in an app\n *\n * @param {string} app the id of the app the file belongs to\n * @param {string} file the file path relative to the app folder\n * @return {string} Absolute URL to a file\n */\nvar linkTo = function linkTo(app, file) {\n return generateFilePath(app, '', file);\n};\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\n\n\nexports.linkTo = linkTo;\n\nvar linkToRemoteBase = function linkToRemoteBase(service) {\n return getRootUrl() + '/remote.php/' + service;\n};\n/**\n * @brief Creates an absolute url for remote use\n * @param {string} service id\n * @return {string} the url\n */\n\n\nvar generateRemoteUrl = function generateRemoteUrl(service) {\n return window.location.protocol + '//' + window.location.host + linkToRemoteBase(service);\n};\n/**\n * Get the base path for the given OCS API service\n *\n * @param {string} service name\n * @param {int} version OCS API version\n * @return {string} OCS API base path\n */\n\n\nexports.generateRemoteUrl = generateRemoteUrl;\n\nvar generateOcsUrl = function generateOcsUrl(service, version) {\n version = version !== 2 ? 1 : 2;\n return window.location.protocol + '//' + window.location.host + getRootUrl() + '/ocs/v' + version + '.php/' + service + '/';\n};\n\nexports.generateOcsUrl = generateOcsUrl;\n\n/**\n * Generate the absolute url for the given relative url, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @return {string} Absolute URL for the given relative URL\n */\nvar generateUrl = function generateUrl(url, params, options) {\n var allOptions = Object.assign({\n escape: true,\n noRewrite: false\n }, options || {});\n\n var _build = function _build(text, vars) {\n vars = vars || {};\n return text.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n\n if (allOptions.escape) {\n return typeof r === 'string' || typeof r === 'number' ? encodeURIComponent(r.toString()) : encodeURIComponent(a);\n } else {\n return typeof r === 'string' || typeof r === 'number' ? r.toString() : a;\n }\n });\n };\n\n if (url.charAt(0) !== '/') {\n url = '/' + url;\n }\n\n if (OC.config.modRewriteWorking === true && !allOptions.noRewrite) {\n return getRootUrl() + _build(url, params || {});\n }\n\n return getRootUrl() + '/index.php' + _build(url, params || {});\n};\n/**\n * Get the absolute path to an image file\n * if no extension is given for the image, it will automatically decide\n * between .png and .svg based on what the browser supports\n *\n * @param {string} app the app id to which the image belongs\n * @param {string} file the name of the image file\n * @return {string}\n */\n\n\nexports.generateUrl = generateUrl;\n\nvar imagePath = function imagePath(app, file) {\n if (file.indexOf('.') === -1) {\n //if no extension is given, use svg\n return generateFilePath(app, 'img', file + '.svg');\n }\n\n return generateFilePath(app, 'img', file);\n};\n/**\n * Get the absolute url for a file in an app\n *\n * @param {string} app the id of the app\n * @param {string} type the type of the file to link to (e.g. css,img,ajax.template)\n * @param {string} file the filename\n * @return {string} Absolute URL for a file in an app\n */\n\n\nexports.imagePath = imagePath;\n\nvar generateFilePath = function generateFilePath(app, type, file) {\n var isCore = OC.coreApps.indexOf(app) !== -1;\n var link = getRootUrl();\n\n if (file.substring(file.length - 3) === 'php' && !isCore) {\n link += '/index.php/apps/' + app;\n\n if (file !== 'index.php') {\n link += '/';\n\n if (type) {\n link += encodeURI(type + '/');\n }\n\n link += file;\n }\n } else if (file.substring(file.length - 3) !== 'php' && !isCore) {\n link = OC.appswebroots[app];\n\n if (type) {\n link += '/' + type + '/';\n }\n\n if (link.substring(link.length - 1) !== '/') {\n link += '/';\n }\n\n link += file;\n } else {\n if ((app === 'settings' || app === 'core' || app === 'search') && type === 'ajax') {\n link += '/index.php/';\n } else {\n link += '/';\n }\n\n if (!isCore) {\n link += 'apps/';\n }\n\n if (app !== '') {\n app += '/';\n link += app;\n }\n\n if (type) {\n link += type + '/';\n }\n\n link += file;\n }\n\n return link;\n};\n/**\n * Return the web root path where this Nextcloud instance\n * is accessible, with a leading slash.\n * For example \"/nextcloud\".\n *\n * @return {string} web root path\n */\n\n\nexports.generateFilePath = generateFilePath;\n\nvar getRootUrl = function getRootUrl() {\n return OC.webroot;\n};\n\nexports.getRootUrl = getRootUrl;\n//# sourceMappingURL=index.js.map","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","/*!\n * Vue.js v2.6.12\n * (c) 2014-2020 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (target) {\n targetStack.push(target);\n Dep.target = target;\n}\n\nfunction popTarget () {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n protoAugment(value, arrayMethods);\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar isUsingMicroTask = false;\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n isUsingMicroTask = true;\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n isUsingMicroTask = true;\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive$$1(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject)\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n // #6574 in case the inject object is observed...\n if (key === '__ob__') { continue }\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n if (!children || !children.length) {\n return {}\n }\n var slots = {};\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n (slots.default || (slots.default = [])).push(child);\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\n/* */\n\nfunction normalizeScopedSlots (\n slots,\n normalSlots,\n prevSlots\n) {\n var res;\n var hasNormalSlots = Object.keys(normalSlots).length > 0;\n var isStable = slots ? !!slots.$stable : !hasNormalSlots;\n var key = slots && slots.$key;\n if (!slots) {\n res = {};\n } else if (slots._normalized) {\n // fast path 1: child component re-render only, parent did not change\n return slots._normalized\n } else if (\n isStable &&\n prevSlots &&\n prevSlots !== emptyObject &&\n key === prevSlots.$key &&\n !hasNormalSlots &&\n !prevSlots.$hasNormal\n ) {\n // fast path 2: stable scoped slots w/ no normal slots to proxy,\n // only need to normalize once\n return prevSlots\n } else {\n res = {};\n for (var key$1 in slots) {\n if (slots[key$1] && key$1[0] !== '$') {\n res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);\n }\n }\n }\n // expose normal slots on scopedSlots\n for (var key$2 in normalSlots) {\n if (!(key$2 in res)) {\n res[key$2] = proxyNormalSlot(normalSlots, key$2);\n }\n }\n // avoriaz seems to mock a non-extensible $scopedSlots object\n // and when that is passed down this would cause an error\n if (slots && Object.isExtensible(slots)) {\n (slots)._normalized = res;\n }\n def(res, '$stable', isStable);\n def(res, '$key', key);\n def(res, '$hasNormal', hasNormalSlots);\n return res\n}\n\nfunction normalizeScopedSlot(normalSlots, key, fn) {\n var normalized = function () {\n var res = arguments.length ? fn.apply(null, arguments) : fn({});\n res = res && typeof res === 'object' && !Array.isArray(res)\n ? [res] // single vnode\n : normalizeChildren(res);\n return res && (\n res.length === 0 ||\n (res.length === 1 && res[0].isComment) // #9658\n ) ? undefined\n : res\n };\n // this is a slot using the new v-slot syntax without scope. although it is\n // compiled as a scoped slot, render fn users would expect it to be present\n // on this.$slots because the usage is semantically a normal slot.\n if (fn.proxy) {\n Object.defineProperty(normalSlots, key, {\n get: normalized,\n enumerable: true,\n configurable: true\n });\n }\n return normalized\n}\n\nfunction proxyNormalSlot(slots, key) {\n return function () { return slots[key]; }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n if (hasSymbol && val[Symbol.iterator]) {\n ret = [];\n var iterator = val[Symbol.iterator]();\n var result = iterator.next();\n while (!result.done) {\n ret.push(render(result.value, ret.length));\n result = iterator.next();\n }\n } else {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n }\n if (!isDef(ret)) {\n ret = [];\n }\n (ret)._isVList = true;\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes = scopedSlotFn(props) || fallback;\n } else {\n nodes = this.$slots[name] || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n var camelizedKey = camelize(key);\n var hyphenatedKey = hyphenate(key);\n if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res,\n // the following are added in 2.6\n hasDynamicKeys,\n contentHashKey\n) {\n res = res || { $stable: !hasDynamicKeys };\n for (var i = 0; i < fns.length; i++) {\n var slot = fns[i];\n if (Array.isArray(slot)) {\n resolveScopedSlots(slot, res, hasDynamicKeys);\n } else if (slot) {\n // marker for reverse proxying v-slot without scope on this.$slots\n if (slot.proxy) {\n slot.fn.proxy = true;\n }\n res[slot.key] = slot.fn;\n }\n }\n if (contentHashKey) {\n (res).$key = contentHashKey;\n }\n return res\n}\n\n/* */\n\nfunction bindDynamicKeys (baseObj, values) {\n for (var i = 0; i < values.length; i += 2) {\n var key = values[i];\n if (typeof key === 'string' && key) {\n baseObj[values[i]] = values[i + 1];\n } else if (process.env.NODE_ENV !== 'production' && key !== '' && key !== null) {\n // null is a special value for explicitly removing a binding\n warn(\n (\"Invalid value for dynamic directive argument (expected string or null): \" + key),\n this\n );\n }\n }\n return baseObj\n}\n\n// helper to dynamically append modifier runtime markers to event names.\n// ensure only append when value is already string, otherwise it will be cast\n// to string and cause the type check to miss.\nfunction prependModifier (value, symbol) {\n return typeof value === 'string' ? symbol + value : value\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n target._d = bindDynamicKeys;\n target._p = prependModifier;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var this$1 = this;\n\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () {\n if (!this$1.$slots) {\n normalizeScopedSlots(\n data.scopedSlots,\n this$1.$slots = resolveSlots(children, parent)\n );\n }\n return this$1.$slots\n };\n\n Object.defineProperty(this, 'scopedSlots', ({\n enumerable: true,\n get: function get () {\n return normalizeScopedSlots(data.scopedSlots, this.slots())\n }\n }));\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (process.env.NODE_ENV !== 'production') {\n (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;\n }\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (vnode, hydrating) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent // activeInstance in lifecycle state\n) {\n var options = {\n _isComponent: true,\n _parentVnode: vnode,\n parent: parent\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var existing = hooks[key];\n var toMerge = componentVNodeHooks[key];\n if (existing !== toMerge && !(existing && existing._merged)) {\n hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;\n }\n }\n}\n\nfunction mergeHook$1 (f1, f2) {\n var merged = function (a, b) {\n // flow complains about extra args which is why we use any\n f1(a, b);\n f2(a, b);\n };\n merged._merged = true;\n return merged\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input'\n ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n var existing = on[event];\n var callback = data.model.callback;\n if (isDef(existing)) {\n if (\n Array.isArray(existing)\n ? existing.indexOf(callback) === -1\n : existing !== callback\n ) {\n on[event] = [callback].concat(existing);\n }\n } else {\n on[event] = callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n if (process.env.NODE_ENV !== 'production' && isDef(data) && isDef(data.nativeOn)) {\n warn(\n (\"The .native modifier for v-on is only valid on components but it was used on <\" + tag + \">.\"),\n context\n );\n }\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nvar currentRenderingInstance = null;\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (_parentVnode) {\n vm.$scopedSlots = normalizeScopedSlots(\n _parentVnode.data.scopedSlots,\n vm.$slots,\n vm.$scopedSlots\n );\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n // There's no need to maintain a stack because all render fns are called\n // separately from one another. Nested component's render fns are called\n // when parent component is patched.\n currentRenderingInstance = vm;\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production' && vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } finally {\n currentRenderingInstance = null;\n }\n // if the returned array contains only a single node, allow it\n if (Array.isArray(vnode) && vnode.length === 1) {\n vnode = vnode[0];\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n var owner = currentRenderingInstance;\n if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {\n // already pending\n factory.owners.push(owner);\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (owner && !isDef(factory.owners)) {\n var owners = factory.owners = [owner];\n var sync = true;\n var timerLoading = null;\n var timerTimeout = null\n\n ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });\n\n var forceRender = function (renderCompleted) {\n for (var i = 0, l = owners.length; i < l; i++) {\n (owners[i]).$forceUpdate();\n }\n\n if (renderCompleted) {\n owners.length = 0;\n if (timerLoading !== null) {\n clearTimeout(timerLoading);\n timerLoading = null;\n }\n if (timerTimeout !== null) {\n clearTimeout(timerTimeout);\n timerTimeout = null;\n }\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender(true);\n } else {\n owners.length = 0;\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender(true);\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (isPromise(res)) {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isPromise(res.component)) {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n timerLoading = setTimeout(function () {\n timerLoading = null;\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender(false);\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n timerTimeout = setTimeout(function () {\n timerTimeout = null;\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn) {\n target.$on(event, fn);\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction createOnceHandler (event, fn) {\n var _target = target;\n return function onceHandler () {\n var res = fn.apply(null, arguments);\n if (res !== null) {\n _target.$off(event, onceHandler);\n }\n }\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n vm.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {\n vm.$off(event[i$1], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n // specific handler\n var cb;\n var i = cbs.length;\n while (i--) {\n cb = cbs[i];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i, 1);\n break\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n var info = \"event handler for \\\"\" + event + \"\\\"\";\n for (var i = 0, l = cbs.length; i < l; i++) {\n invokeWithErrorHandling(cbs[i], vm, args, vm, info);\n }\n }\n return vm\n };\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction setActiveInstance(vm) {\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n return function () {\n activeInstance = prevActiveInstance;\n }\n}\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var restoreActiveInstance = setActiveInstance(vm);\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n restoreActiveInstance();\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, {\n before: function before () {\n if (vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'beforeUpdate');\n }\n }\n }, true /* isRenderWatcher */);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren.\n\n // check if there are dynamic scopedSlots (hand-written or compiled but with\n // dynamic slot names). Static scoped slots compiled from template has the\n // \"$stable\" marker.\n var newScopedSlots = parentVnode.data.scopedSlots;\n var oldScopedSlots = vm.$scopedSlots;\n var hasDynamicScopedSlot = !!(\n (newScopedSlots && !newScopedSlots.$stable) ||\n (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||\n (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)\n );\n\n // Any static slot children from the parent may have changed during parent's\n // update. Dynamic scoped slots may also have changed. In such cases, a forced\n // update is necessary to ensure correctness.\n var needsForceUpdate = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n hasDynamicScopedSlot\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (needsForceUpdate) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n invokeWithErrorHandling(handlers[i], vm, null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n// Async edge case #6566 requires saving the timestamp when event listeners are\n// attached. However, calling performance.now() has a perf overhead especially\n// if the page has thousands of event listeners. Instead, we take a timestamp\n// every time the scheduler flushes and use that for all event listeners\n// attached during that flush.\nvar currentFlushTimestamp = 0;\n\n// Async edge case fix requires storing an event listener's attach timestamp.\nvar getNow = Date.now;\n\n// Determine what event timestamp the browser is using. Annoyingly, the\n// timestamp can either be hi-res (relative to page load) or low-res\n// (relative to UNIX epoch), so in order to compare time we have to use the\n// same timestamp type when saving the flush timestamp.\n// All IE versions use low-res event timestamps, and have problematic clock\n// implementations (#9632)\nif (inBrowser && !isIE) {\n var performance = window.performance;\n if (\n performance &&\n typeof performance.now === 'function' &&\n getNow() > document.createEvent('Event').timeStamp\n ) {\n // if the event timestamp, although evaluated AFTER the Date.now(), is\n // smaller than it, it means the event is using a hi-res timestamp,\n // and we need to use the hi-res version for event listener timestamps as\n // well.\n getNow = function () { return performance.now(); };\n }\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n currentFlushTimestamp = getNow();\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n if (watcher.before) {\n watcher.before();\n }\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n flushSchedulerQueue();\n return\n }\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\n\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n this.before = options.before;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = noop;\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var i = this.deps.length;\n while (i--) {\n var dep = this.deps[i];\n if (!this.newDepIds.has(dep.id)) {\n dep.removeSub(this);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var i = this.deps.length;\n while (i--) {\n this.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this.deps[i].removeSub(this);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive$$1(props, key, value, function () {\n if (!isRoot && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive$$1(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : createGetterInvoker(userDef);\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : createGetterInvoker(userDef.get)\n : noop;\n sharedPropertyDefinition.set = userDef.set || noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction createGetterInvoker(fn) {\n return function computedGetter () {\n return fn.call(this, this)\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (typeof methods[key] !== 'function') {\n warn(\n \"Method \\\"\" + key + \"\\\" has type \\\"\" + (typeof methods[key]) + \"\\\" in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function () {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n try {\n cb.call(vm, watcher.value);\n } catch (error) {\n handleError(error, vm, (\"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\"));\n }\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = latest[key];\n }\n }\n return modified\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\n\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n for (var key in this.cache) {\n pruneCacheEntry(this.cache, key, this.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive$$1\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n // 2.6 explicit observable API\n Vue.observable = function (obj) {\n observe(obj);\n return obj\n };\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.6.12';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isValidContentEditableValue = makeMap('events,caret,typing,plaintext-only');\n\nvar convertEnumeratedValue = function (key, value) {\n return isFalsyAttrValue(value) || value === 'false'\n ? 'false'\n // allow arbitrary string value for contenteditable\n : key === 'contenteditable' && isValidContentEditableValue(value)\n ? value\n : 'true'\n};\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode && childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode && parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setStyleScope (node, scopeId) {\n node.setAttribute(scopeId, '');\n}\n\nvar nodeOps = /*#__PURE__*/Object.freeze({\n createElement: createElement$1,\n createElementNS: createElementNS,\n createTextNode: createTextNode,\n createComment: createComment,\n insertBefore: insertBefore,\n removeChild: removeChild,\n appendChild: appendChild,\n parentNode: parentNode,\n nextSibling: nextSibling,\n tagName: tagName,\n setTextContent: setTextContent,\n setStyleScope: setStyleScope\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!isDef(key)) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove$$1 () {\n if (--remove$$1.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove$$1.listeners = listeners;\n return remove$$1\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n function isUnknownElement$$1 (vnode, inVPre) {\n return (\n !inVPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(vnode.tag)\n : ignore === vnode.tag\n })\n ) &&\n config.isUnknownElement(vnode.tag)\n )\n }\n\n var creatingElmInVPre = 0;\n\n function createElm (\n vnode,\n insertedVnodeQueue,\n parentElm,\n refElm,\n nested,\n ownerArray,\n index\n ) {\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // This vnode was used in a previous render!\n // now it's used as a new node, overwriting its elm would cause\n // potential patch errors down the road when it's used as an insertion\n // reference node. Instead, we clone the node on-demand before creating\n // associated DOM element for it.\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n creatingElmInVPre++;\n }\n if (isUnknownElement$$1(vnode, creatingElmInVPre)) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n creatingElmInVPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n insert(parentElm, vnode.elm, refElm);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (nodeOps.parentNode(ref$$1) === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(children);\n }\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.fnScopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.fnContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(newCh);\n }\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n } else {\n vnodeToMove = oldCh[idxInOld];\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function checkDuplicateKeys (children) {\n var seenKeys = {};\n for (var i = 0; i < children.length; i++) {\n var vnode = children[i];\n var key = vnode.key;\n if (isDef(key)) {\n if (seenKeys[key]) {\n warn(\n (\"Duplicate keys detected: '\" + key + \"'. This may cause an update error.\"),\n vnode.context\n );\n } else {\n seenKeys[key] = true;\n }\n }\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (\n oldVnode,\n vnode,\n insertedVnodeQueue,\n ownerArray,\n index,\n removeOnly\n ) {\n if (oldVnode === vnode) {\n return\n }\n\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // clone reused vnode\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(ch);\n }\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var hydrationBailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n // Note: style is excluded because it relies on initial clone for future\n // deep updates (#7063).\n var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {\n var i;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n inVPre = inVPre || (data && data.pre);\n vnode.elm = elm;\n\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.isAsyncPlaceholder = true;\n return true\n }\n // assert node match\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode, inVPre)) {\n return false\n }\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n var fullInvoke = false;\n for (var key in data) {\n if (!isRenderedModule(key)) {\n fullInvoke = true;\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n if (!fullInvoke && data['class']) {\n // ensure collecting deps for deep class bindings for future updates\n traverse(data['class']);\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode, inVPre) {\n if (isDef(vnode.tag)) {\n return vnode.tag.indexOf('vue-component') === 0 || (\n !isUnknownElement$$1(vnode, inVPre) &&\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, null, null, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm = nodeOps.parentNode(oldElm);\n\n // create new node\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm,\n nodeOps.nextSibling(oldElm)\n );\n\n // update parent placeholder node element, recursively\n if (isDef(vnode.parent)) {\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n // destroy old node\n if (isDef(parentElm)) {\n removeVnodes([oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n dir.oldArg = oldDir.arg;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode, 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n // $flow-disable-line\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n // $flow-disable-line\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n // $flow-disable-line\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (el.tagName.indexOf('-') > -1) {\n baseSetAttr(el, key, value);\n } else if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, convertEnumeratedValue(key, value));\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n baseSetAttr(el, key, value);\n }\n}\n\nfunction baseSetAttr (el, key, value) {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // #7138: IE10 & 11 fires input event when setting placeholder on\n // <textarea>... block the first input event and remove the blocker\n // immediately.\n /* istanbul ignore if */\n if (\n isIE && !isIE9 &&\n el.tagName === 'TEXTAREA' &&\n key === 'placeholder' && value !== '' && !el.__ieph\n ) {\n var blocker = function (e) {\n e.stopImmediatePropagation();\n el.removeEventListener('input', blocker);\n };\n el.addEventListener('input', blocker);\n // $flow-disable-line\n el.__ieph = true; /* IE placeholder patched */\n }\n el.setAttribute(key, value);\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler$1 (event, handler, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\n// #9446: Firefox <= 53 (in particular, ESR 52) has incorrect Event.timeStamp\n// implementation and does not fire microtasks in between event propagation, so\n// safe to exclude.\nvar useMicrotaskFix = isUsingMicroTask && !(isFF && Number(isFF[1]) <= 53);\n\nfunction add$1 (\n name,\n handler,\n capture,\n passive\n) {\n // async edge case #6566: inner click event triggers patch, event handler\n // attached to outer element during patch, and triggered again. This\n // happens because browsers fire microtask ticks between event propagation.\n // the solution is simple: we save the timestamp when a handler is attached,\n // and the handler would only fire if the event passed to it was fired\n // AFTER it was attached.\n if (useMicrotaskFix) {\n var attachedTimestamp = currentFlushTimestamp;\n var original = handler;\n handler = original._wrapper = function (e) {\n if (\n // no bubbling, should always fire.\n // this is just a safety net in case event.timeStamp is unreliable in\n // certain weird environments...\n e.target === e.currentTarget ||\n // event is fired after handler attachment\n e.timeStamp >= attachedTimestamp ||\n // bail for environments that have buggy event.timeStamp implementations\n // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState\n // #9681 QtWebEngine event.timeStamp is negative value\n e.timeStamp <= 0 ||\n // #9448 bail if event is fired in another document in a multi-page\n // electron/nw.js app, since event.timeStamp will be using a different\n // starting reference\n e.target.ownerDocument !== document\n ) {\n return original.apply(this, arguments)\n }\n };\n }\n target$1.addEventListener(\n name,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n name,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n name,\n handler._wrapper || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, createOnceHandler$1, vnode.context);\n target$1 = undefined;\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nvar svgContainer;\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (!(key in props)) {\n elm[key] = '';\n }\n }\n\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value' && elm.tagName !== 'PROGRESS') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else if (key === 'innerHTML' && isSVG(elm.tagName) && isUndef(elm.innerHTML)) {\n // IE doesn't support innerHTML for SVG elements\n svgContainer = svgContainer || document.createElement('div');\n svgContainer.innerHTML = \"<svg>\" + cur + \"</svg>\";\n var svg = svgContainer.firstChild;\n while (elm.firstChild) {\n elm.removeChild(elm.firstChild);\n }\n while (svg.firstChild) {\n elm.appendChild(svg.firstChild);\n }\n } else if (\n // skip the update if old and new VDOM state is the same.\n // `value` is handled separately because the DOM value may be temporarily\n // out of sync with VDOM state due to focus, composition and modifiers.\n // This #4521 by skipping the unnecessary `checked` update.\n cur !== oldProps[key]\n ) {\n // some property updates can throw\n // e.g. `value` on <progress> w/ non-finite value\n try {\n elm[key] = cur;\n } catch (e) {}\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isNotInFocusAndDirty(elm, checkVal) ||\n isDirtyWithModifiers(elm, checkVal)\n ))\n}\n\nfunction isNotInFocusAndDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isDirtyWithModifiers (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers)) {\n if (modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (\n childNode && childNode.data &&\n (styleData = normalizeStyleData(childNode.data))\n ) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(hyphenate(name), val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\nvar whitespaceRE = /\\s+/;\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def$$1) {\n if (!def$$1) {\n return\n }\n /* istanbul ignore else */\n if (typeof def$$1 === 'object') {\n var res = {};\n if (def$$1.css !== false) {\n extend(res, autoCssTransition(def$$1.name || 'v'));\n }\n extend(res, def$$1);\n return res\n } else if (typeof def$$1 === 'string') {\n return autoCssTransition(def$$1)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n // JSDOM may return undefined for transition properties\n var transitionDelays = (styles[transitionProp + 'Delay'] || '').split(', ');\n var transitionDurations = (styles[transitionProp + 'Duration'] || '').split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = (styles[animationProp + 'Delay'] || '').split(', ');\n var animationDurations = (styles[animationProp + 'Duration'] || '').split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\n// Old versions of Chromium (below 61.0.3163.100) formats floating pointer numbers\n// in a locale-dependent way, using a comma instead of a dot.\n// If comma is not replaced with a dot, the input will be rounded down (i.e. acting\n// as a floor function) causing unexpected behaviors\nfunction toMs (s) {\n return Number(s.slice(0, -1).replace(',', '.')) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n context = transitionNode.context;\n transitionNode = transitionNode.parent;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode, 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n removeTransitionClass(el, startClass);\n if (!cb.cancelled) {\n addTransitionClass(el, toClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data) || el.nodeType !== 1) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb)) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show && el.parentNode) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled) {\n addTransitionClass(el, leaveToClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar directive = {\n inserted: function inserted (el, binding, vnode, oldVnode) {\n if (vnode.tag === 'select') {\n // #6903\n if (oldVnode.elm && !oldVnode.elm._vOptions) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n directive.componentUpdated(el, binding, vnode);\n });\n } else {\n setSelected(el, binding, vnode.context);\n }\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (!value === !oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: directive,\n show: show\n};\n\n/* */\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar isNotTextNode = function (c) { return c.tag || isAsyncPlaceholder(c); };\n\nvar isVShowDirective = function (d) { return d.name === 'show'; };\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$slots.default;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(isNotTextNode);\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(isVShowDirective)) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild) &&\n // #6687 component root is a comment node\n !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n beforeMount: function beforeMount () {\n var this$1 = this;\n\n var update = this._update;\n this._update = function (vnode, hydrating) {\n var restoreActiveInstance = setActiveInstance(this$1);\n // force removing pass\n this$1.__patch__(\n this$1._vnode,\n this$1.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this$1._vnode = this$1.kept;\n restoreActiveInstance();\n update.call(this$1, vnode, hydrating);\n };\n },\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (e && e.target !== el) {\n return\n }\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue.config.mustUseProp = mustUseProp;\nVue.config.isReservedTag = isReservedTag;\nVue.config.isReservedAttr = isReservedAttr;\nVue.config.getTagNamespace = getTagNamespace;\nVue.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue.options.directives, platformDirectives);\nextend(Vue.options.components, platformComponents);\n\n// install platform patch function\nVue.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nif (inBrowser) {\n setTimeout(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue);\n } else if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test'\n ) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n config.productionTip !== false &&\n typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n }, 0);\n}\n\n/* */\n\nexport default Vue;\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.loadState = loadState;\n\n/**\n * @param app app ID, e.g. \"mail\"\n * @param key name of the property\n * @param fallback optional parameter to use as default value\n * @throws if the key can't be found\n */\nfunction loadState(app, key, fallback) {\n var elem = document.querySelector(\"#initial-state-\".concat(app, \"-\").concat(key));\n\n if (elem === null) {\n if (fallback !== undefined) {\n return fallback;\n }\n\n throw new Error(\"Could not find initial state \".concat(key, \" of \").concat(app));\n }\n\n try {\n return JSON.parse(atob(elem.value));\n } catch (e) {\n throw new Error(\"Could not parse initial state \".concat(key, \" of \").concat(app));\n }\n}\n//# sourceMappingURL=index.js.map","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","\"use strict\";\n\nrequire(\"core-js/modules/es.object.assign\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _axios = _interopRequireDefault(require(\"axios\"));\n\nvar _auth = require(\"@nextcloud/auth\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar client = _axios.default.create({\n headers: {\n requesttoken: (0, _auth.getRequestToken)()\n }\n});\n\nvar cancelableClient = Object.assign(client, {\n CancelToken: _axios.default.CancelToken,\n isCancel: _axios.default.isCancel\n});\n(0, _auth.onRequestTokenUpdate)(function (token) {\n return client.defaults.headers.requesttoken = token;\n});\nvar _default = cancelableClient;\nexports.default = _default;\n//# sourceMappingURL=index.js.map","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"getRequestToken\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.getRequestToken;\n }\n});\nObject.defineProperty(exports, \"onRequestTokenUpdate\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.onRequestTokenUpdate;\n }\n});\nObject.defineProperty(exports, \"getCurrentUser\", {\n enumerable: true,\n get: function get() {\n return _user.getCurrentUser;\n }\n});\n\nvar _requesttoken = require(\"./requesttoken\");\n\nvar _user = require(\"./user\");\n//# sourceMappingURL=index.js.map","module.exports = false;\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","module.exports = {};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","module.exports = {};\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","\"use strict\";\n\nexports.__esModule = true;\nexports.inherits = inherits;\nfunction inherits(parent, child) {\n\tvar props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n\tvar extended = Object.create(parent.prototype);\n\tfor (var p in props) {\n\t\textended[p] = props[p];\n\t}\n\textended.constructor = child;\n\tchild.prototype = extended;\n\treturn child;\n}","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n concat: function concat(arg) { // eslint-disable-line no-unused-vars\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","exports.f = Object.getOwnPropertySymbols;\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","'use strict';\nvar $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n forEach: forEach\n});\n","// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n /* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\nmodule.exports = {\n SEMVER_SPEC_VERSION,\n MAX_LENGTH,\n MAX_SAFE_INTEGER,\n MAX_SAFE_COMPONENT_LENGTH\n}\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) {\n var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1);\n var iterator, iterFn, index, length, result, next, step;\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = AS_ENTRIES\n ? boundFunction(anObject(step = iterable[index])[0], step[1])\n : boundFunction(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES);\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n\niterate.stop = function (result) {\n return new Result(true, result);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n typeof (NewTarget = dummy.constructor) == 'function' &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\nvar flags = require('../internals/regexp-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\n\nexports.__esModule = true;\nexports.AMPERSAND = exports.CLOSEPAREN = exports.CLOSEANGLEBRACKET = exports.CLOSEBRACKET = exports.CLOSEBRACE = exports.OPENPAREN = exports.OPENANGLEBRACKET = exports.OPENBRACKET = exports.OPENBRACE = exports.WS = exports.TLD = exports.SYM = exports.UNDERSCORE = exports.SLASH = exports.MAILTO = exports.PROTOCOL = exports.QUERY = exports.POUND = exports.PLUS = exports.NUM = exports.NL = exports.LOCALHOST = exports.PUNCTUATION = exports.DOT = exports.COLON = exports.AT = exports.DOMAIN = exports.Base = undefined;\n\nvar _createTokenClass = require('./create-token-class');\n\nvar _class = require('../../utils/class');\n\n/******************************************************************************\n\tText Tokens\n\tTokens composed of strings\n******************************************************************************/\n\n/**\n\tAbstract class used for manufacturing text tokens.\n\tPass in the value this token represents\n\n\t@class TextToken\n\t@abstract\n*/\nvar TextToken = (0, _createTokenClass.createTokenClass)();\nTextToken.prototype = {\n\ttoString: function toString() {\n\t\treturn this.v + '';\n\t}\n};\n\nfunction inheritsToken(value) {\n\tvar props = value ? { v: value } : {};\n\treturn (0, _class.inherits)(TextToken, (0, _createTokenClass.createTokenClass)(), props);\n}\n\n/**\n\tA valid domain token\n\t@class DOMAIN\n\t@extends TextToken\n*/\nvar DOMAIN = inheritsToken();\n\n/**\n\t@class AT\n\t@extends TextToken\n*/\nvar AT = inheritsToken('@');\n\n/**\n\tRepresents a single colon `:` character\n\n\t@class COLON\n\t@extends TextToken\n*/\nvar COLON = inheritsToken(':');\n\n/**\n\t@class DOT\n\t@extends TextToken\n*/\nvar DOT = inheritsToken('.');\n\n/**\n\tA character class that can surround the URL, but which the URL cannot begin\n\tor end with. Does not include certain English punctuation like parentheses.\n\n\t@class PUNCTUATION\n\t@extends TextToken\n*/\nvar PUNCTUATION = inheritsToken();\n\n/**\n\tThe word localhost (by itself)\n\t@class LOCALHOST\n\t@extends TextToken\n*/\nvar LOCALHOST = inheritsToken();\n\n/**\n\tNewline token\n\t@class NL\n\t@extends TextToken\n*/\nvar NL = inheritsToken('\\n');\n\n/**\n\t@class NUM\n\t@extends TextToken\n*/\nvar NUM = inheritsToken();\n\n/**\n\t@class PLUS\n\t@extends TextToken\n*/\nvar PLUS = inheritsToken('+');\n\n/**\n\t@class POUND\n\t@extends TextToken\n*/\nvar POUND = inheritsToken('#');\n\n/**\n\tRepresents a web URL protocol. Supported types include\n\n\t* `http:`\n\t* `https:`\n\t* `ftp:`\n\t* `ftps:`\n\n\t@class PROTOCOL\n\t@extends TextToken\n*/\nvar PROTOCOL = inheritsToken();\n\n/**\n\tRepresents the start of the email URI protocol\n\n\t@class MAILTO\n\t@extends TextToken\n*/\nvar MAILTO = inheritsToken('mailto:');\n\n/**\n\t@class QUERY\n\t@extends TextToken\n*/\nvar QUERY = inheritsToken('?');\n\n/**\n\t@class SLASH\n\t@extends TextToken\n*/\nvar SLASH = inheritsToken('/');\n\n/**\n\t@class UNDERSCORE\n\t@extends TextToken\n*/\nvar UNDERSCORE = inheritsToken('_');\n\n/**\n\tOne ore more non-whitespace symbol.\n\t@class SYM\n\t@extends TextToken\n*/\nvar SYM = inheritsToken();\n\n/**\n\t@class TLD\n\t@extends TextToken\n*/\nvar TLD = inheritsToken();\n\n/**\n\tRepresents a string of consecutive whitespace characters\n\n\t@class WS\n\t@extends TextToken\n*/\nvar WS = inheritsToken();\n\n/**\n\tOpening/closing bracket classes\n*/\n\nvar OPENBRACE = inheritsToken('{');\nvar OPENBRACKET = inheritsToken('[');\nvar OPENANGLEBRACKET = inheritsToken('<');\nvar OPENPAREN = inheritsToken('(');\nvar CLOSEBRACE = inheritsToken('}');\nvar CLOSEBRACKET = inheritsToken(']');\nvar CLOSEANGLEBRACKET = inheritsToken('>');\nvar CLOSEPAREN = inheritsToken(')');\n\nvar AMPERSAND = inheritsToken('&');\n\nexports.Base = TextToken;\nexports.DOMAIN = DOMAIN;\nexports.AT = AT;\nexports.COLON = COLON;\nexports.DOT = DOT;\nexports.PUNCTUATION = PUNCTUATION;\nexports.LOCALHOST = LOCALHOST;\nexports.NL = NL;\nexports.NUM = NUM;\nexports.PLUS = PLUS;\nexports.POUND = POUND;\nexports.QUERY = QUERY;\nexports.PROTOCOL = PROTOCOL;\nexports.MAILTO = MAILTO;\nexports.SLASH = SLASH;\nexports.UNDERSCORE = UNDERSCORE;\nexports.SYM = SYM;\nexports.TLD = TLD;\nexports.WS = WS;\nexports.OPENBRACE = OPENBRACE;\nexports.OPENBRACKET = OPENBRACKET;\nexports.OPENANGLEBRACKET = OPENANGLEBRACKET;\nexports.OPENPAREN = OPENPAREN;\nexports.CLOSEBRACE = CLOSEBRACE;\nexports.CLOSEBRACKET = CLOSEBRACKET;\nexports.CLOSEANGLEBRACKET = CLOSEANGLEBRACKET;\nexports.CLOSEPAREN = CLOSEPAREN;\nexports.AMPERSAND = AMPERSAND;","\"use strict\";\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.string.replace\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getLocale = getLocale;\nexports.getCanonicalLocale = getCanonicalLocale;\nexports.getLanguage = getLanguage;\nexports.translate = translate;\nexports.translatePlural = translatePlural;\nexports.getFirstDay = getFirstDay;\nexports.getDayNames = getDayNames;\nexports.getDayNamesShort = getDayNamesShort;\nexports.getDayNamesMin = getDayNamesMin;\nexports.getMonthNames = getMonthNames;\nexports.getMonthNamesShort = getMonthNamesShort;\n\n/// <reference types=\"@nextcloud/typings\" />\n\n/**\n * Returns the user's locale\n */\nfunction getLocale() {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return 'en';\n }\n\n return OC.getLocale();\n}\n\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, '-');\n}\n/**\n * Returns the user's language\n */\n\n\nfunction getLanguage() {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return 'en';\n }\n\n return OC.getLanguage();\n}\n\n/**\n * Translate a string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} text the string to translate\n * @param {object} vars map of placeholder key to value\n * @param {number} number to replace %n with\n * @param {object} [options] options object\n * @return {string}\n */\nfunction translate(app, text, vars, count, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return text;\n }\n\n return OC.L10N.translate(app, text, vars, count, options);\n}\n/**\n * Translate a plural string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} textSingular the string to translate for exactly one object\n * @param {string} textPlural the string to translate for n objects\n * @param {number} count number to determine whether to use singular or plural\n * @param {Object} vars of placeholder key to value\n * @param {object} options options object\n * @return {string}\n */\n\n\nfunction translatePlural(app, textSingular, textPlural, count, vars, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return textSingular;\n }\n\n return OC.L10N.translatePlural(app, textSingular, textPlural, count, vars, options);\n}\n/**\n * Get the first day of the week\n *\n * @return {number}\n */\n\n\nfunction getFirstDay() {\n if (typeof window.firstDay === 'undefined') {\n console.warn('No firstDay found');\n return 1;\n }\n\n return window.firstDay;\n}\n/**\n * Get a list of day names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNames() {\n if (typeof window.dayNames === 'undefined') {\n console.warn('No dayNames found');\n return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n }\n\n return window.dayNames;\n}\n/**\n * Get a list of day names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesShort() {\n if (typeof window.dayNamesShort === 'undefined') {\n console.warn('No dayNamesShort found');\n return ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.'];\n }\n\n return window.dayNamesShort;\n}\n/**\n * Get a list of day names (minified names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesMin() {\n if (typeof window.dayNamesMin === 'undefined') {\n console.warn('No dayNamesMin found');\n return ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\n }\n\n return window.dayNamesMin;\n}\n/**\n * Get a list of month names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNames() {\n if (typeof window.monthNames === 'undefined') {\n console.warn('No monthNames found');\n return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\n }\n\n return window.monthNames;\n}\n/**\n * Get a list of month names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNamesShort() {\n if (typeof window.monthNamesShort === 'undefined') {\n console.warn('No monthNamesShort found');\n return ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.'];\n }\n\n return window.monthNamesShort;\n}\n//# sourceMappingURL=index.js.map","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (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\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.<br />\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is <html> the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.<br />\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.<br />\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.<br />\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.<br />\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.<br />\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.<br />\n * It will read the variation of the `placement` property.<br />\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.<br />\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.<br />\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.<br />\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.<br />\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".<br />\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.<br />\n * These can be overridden using the `options` argument of Popper.js.<br />\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.<br />\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\nmodule.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n} : [].forEach;\n","import { EventBus } from \"./EventBus\"\nimport { ProxyBus } from \"./ProxyBus\"\nimport { SimpleBus } from \"./SimpleBus\"\n\ndeclare global {\n interface Window {\n OC: any\n _nc_event_bus: any\n }\n}\n\nfunction getBus(): EventBus {\n if ((typeof window.OC !== 'undefined') && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!')\n window._nc_event_bus = window.OC._eventBus\n }\n\n // Either use an existing event bus instance or create one\n if (typeof window._nc_event_bus !== 'undefined') {\n return new ProxyBus(window._nc_event_bus)\n } else {\n return window._nc_event_bus = new SimpleBus()\n }\n}\n\nconst bus = getBus()\n\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\nexport function subscribe(name: string, handler: (string) => void): void {\n bus.subscribe(name, handler)\n}\n\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\nexport function unsubscribe(name: string, handler: (string) => void): void {\n bus.unsubscribe(name, handler)\n}\n\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\nexport function emit(name: string, event: object): void {\n bus.emit(name, event)\n}\n","const { MAX_SAFE_COMPONENT_LENGTH } = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst src = exports.src = []\nconst t = exports.t = {}\nlet R = 0\n\nconst createToken = (name, value, isGlobal) => {\n const index = R++\n debug(index, value)\n t[name] = index\n src[index] = value\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('NUMERICIDENTIFIERLOOSE', '[0-9]+')\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', '\\\\d*[a-zA-Z-][a-zA-Z0-9-]*')\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\ncreateToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+')\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', `(?:\\\\+(${src[t.BUILDIDENTIFIER]\n}(?:\\\\.${src[t.BUILDIDENTIFIER]})*))`)\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('FULL', `^${src[t.FULLPLAIN]}$`)\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('GTLT', '((?:<|>)?=?)')\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('COERCE', `${'(^|[^\\\\d])' +\n '(\\\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:$|[^\\\\d])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('COMPARATOR', `^${src[t.GTLT]}\\\\s*(${src[t.FULLPLAIN]})$|^$`)\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\.0\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\.0\\.0-0\\\\s*$')\n","const debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n","const debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { re, t } = require('../internal/re')\n\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose &&\n version.includePrerelease === !!options.includePrerelease) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(`Invalid Version: ${version}`)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError(`Invalid Version: ${version}`)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map((id) => {\n if (/^[0-9]+$/.test(id)) {\n const num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n }\n\n format () {\n this.version = `${this.major}.${this.minor}.${this.patch}`\n if (this.prerelease.length) {\n this.version += `-${this.prerelease.join('.')}`\n }\n return this.version\n }\n\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return (\n compareIdentifiers(this.major, other.major) ||\n compareIdentifiers(this.minor, other.minor) ||\n compareIdentifiers(this.patch, other.patch)\n )\n }\n\n comparePre (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n let i = 0\n do {\n const a = this.prerelease[i]\n const b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const b = other.build[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n inc (release, identifier) {\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier)\n this.inc('pre', identifier)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier)\n }\n this.inc('pre', identifier)\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n case 'pre':\n if (this.prerelease.length === 0) {\n this.prerelease = [0]\n } else {\n let i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n this.prerelease.push(0)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n if (this.prerelease[0] === identifier) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = [identifier, 0]\n }\n } else {\n this.prerelease = [identifier, 0]\n }\n }\n break\n\n default:\n throw new Error(`invalid increment argument: ${release}`)\n }\n this.format()\n this.raw = this.version\n return this\n }\n}\n\nmodule.exports = SemVer\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar has = require('../internals/has');\nvar defineProperty = require('../internals/object-define-property').f;\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + ++id, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!has(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && meta.REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar meta = module.exports = {\n REQUIRED: false,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","import Popper from 'popper.js';\nimport { ResizeObserver } from 'vue-resize';\n\nfunction _typeof(obj) {\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 _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\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\nvar SVGAnimatedString = function SVGAnimatedString() {};\n\nif (typeof window !== 'undefined') {\n SVGAnimatedString = window.SVGAnimatedString;\n}\n\nfunction convertToArray(value) {\n if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n return value;\n}\n/**\n * Add classes to an element.\n * This method checks to ensure that the classes don't already exist before adding them.\n * It uses el.className rather than classList in order to be IE friendly.\n * @param {object} el - The element to add the classes to.\n * @param {classes} string - List of space separated classes to be added to the element.\n */\n\nfunction addClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n if (classList.indexOf(newClass) === -1) {\n classList.push(newClass);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\n/**\n * Remove classes from an element.\n * It uses el.className rather than classList in order to be IE friendly.\n * @export\n * @param {any} el The element to remove the classes from.\n * @param {any} classes List of space separated classes to be removed from the element.\n */\n\nfunction removeClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n var index = classList.indexOf(newClass);\n\n if (index !== -1) {\n classList.splice(index, 1);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\nvar supportsPassive = false;\n\nif (typeof window !== 'undefined') {\n supportsPassive = false;\n\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (e) {}\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nvar _listCacheClear = listCacheClear;\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nvar eq_1 = eq;\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq_1(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nvar _assocIndexOf = assocIndexOf;\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = _assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nvar _listCacheDelete = listCacheDelete;\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = _assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nvar _listCacheGet = listCacheGet;\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return _assocIndexOf(this.__data__, key) > -1;\n}\n\nvar _listCacheHas = listCacheHas;\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = _assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nvar _listCacheSet = listCacheSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = _listCacheClear;\nListCache.prototype['delete'] = _listCacheDelete;\nListCache.prototype.get = _listCacheGet;\nListCache.prototype.has = _listCacheHas;\nListCache.prototype.set = _listCacheSet;\n\nvar _ListCache = ListCache;\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new _ListCache;\n this.size = 0;\n}\n\nvar _stackClear = stackClear;\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nvar _stackDelete = stackDelete;\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nvar _stackGet = stackGet;\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nvar _stackHas = stackHas;\n\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;\n\nvar _freeGlobal = freeGlobal;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = _freeGlobal || freeSelf || Function('return this')();\n\nvar _root = root;\n\n/** Built-in value references. */\nvar Symbol$1 = _root.Symbol;\n\nvar _Symbol = Symbol$1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nvar _getRawTag = getRawTag;\n\n/** Used for built-in method references. */\nvar objectProto$1 = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString$1 = objectProto$1.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString$1.call(value);\n}\n\nvar _objectToString = objectToString;\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag$1 && symToStringTag$1 in Object(value))\n ? _getRawTag(value)\n : _objectToString(value);\n}\n\nvar _baseGetTag = baseGetTag;\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nvar isObject_1 = isObject;\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject_1(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = _baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nvar isFunction_1 = isFunction;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = _root['__core-js_shared__'];\n\nvar _coreJsData = coreJsData;\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(_coreJsData && _coreJsData.keys && _coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nvar _isMasked = isMasked;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nvar _toSource = toSource;\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto$1 = Function.prototype,\n objectProto$2 = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString$1 = funcProto$1.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$1 = objectProto$2.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString$1.call(hasOwnProperty$1).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject_1(value) || _isMasked(value)) {\n return false;\n }\n var pattern = isFunction_1(value) ? reIsNative : reIsHostCtor;\n return pattern.test(_toSource(value));\n}\n\nvar _baseIsNative = baseIsNative;\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nvar _getValue = getValue;\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = _getValue(object, key);\n return _baseIsNative(value) ? value : undefined;\n}\n\nvar _getNative = getNative;\n\n/* Built-in method references that are verified to be native. */\nvar Map = _getNative(_root, 'Map');\n\nvar _Map = Map;\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = _getNative(Object, 'create');\n\nvar _nativeCreate = nativeCreate;\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = _nativeCreate ? _nativeCreate(null) : {};\n this.size = 0;\n}\n\nvar _hashClear = hashClear;\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nvar _hashDelete = hashDelete;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto$3 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$2 = objectProto$3.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (_nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty$2.call(data, key) ? data[key] : undefined;\n}\n\nvar _hashGet = hashGet;\n\n/** Used for built-in method references. */\nvar objectProto$4 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$3 = objectProto$4.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return _nativeCreate ? (data[key] !== undefined) : hasOwnProperty$3.call(data, key);\n}\n\nvar _hashHas = hashHas;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED$1 = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (_nativeCreate && value === undefined) ? HASH_UNDEFINED$1 : value;\n return this;\n}\n\nvar _hashSet = hashSet;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = _hashClear;\nHash.prototype['delete'] = _hashDelete;\nHash.prototype.get = _hashGet;\nHash.prototype.has = _hashHas;\nHash.prototype.set = _hashSet;\n\nvar _Hash = Hash;\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new _Hash,\n 'map': new (_Map || _ListCache),\n 'string': new _Hash\n };\n}\n\nvar _mapCacheClear = mapCacheClear;\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nvar _isKeyable = isKeyable;\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return _isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nvar _getMapData = getMapData;\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = _getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nvar _mapCacheDelete = mapCacheDelete;\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return _getMapData(this, key).get(key);\n}\n\nvar _mapCacheGet = mapCacheGet;\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return _getMapData(this, key).has(key);\n}\n\nvar _mapCacheHas = mapCacheHas;\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = _getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nvar _mapCacheSet = mapCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = _mapCacheClear;\nMapCache.prototype['delete'] = _mapCacheDelete;\nMapCache.prototype.get = _mapCacheGet;\nMapCache.prototype.has = _mapCacheHas;\nMapCache.prototype.set = _mapCacheSet;\n\nvar _MapCache = MapCache;\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof _ListCache) {\n var pairs = data.__data__;\n if (!_Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new _MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nvar _stackSet = stackSet;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new _ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = _stackClear;\nStack.prototype['delete'] = _stackDelete;\nStack.prototype.get = _stackGet;\nStack.prototype.has = _stackHas;\nStack.prototype.set = _stackSet;\n\nvar _Stack = Stack;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED$2 = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED$2);\n return this;\n}\n\nvar _setCacheAdd = setCacheAdd;\n\n/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nvar _setCacheHas = setCacheHas;\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new _MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = _setCacheAdd;\nSetCache.prototype.has = _setCacheHas;\n\nvar _SetCache = SetCache;\n\n/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nvar _arraySome = arraySome;\n\n/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nvar _cacheHas = cacheHas;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(array);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new _SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!_arraySome(other, function(othValue, othIndex) {\n if (!_cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nvar _equalArrays = equalArrays;\n\n/** Built-in value references. */\nvar Uint8Array = _root.Uint8Array;\n\nvar _Uint8Array = Uint8Array;\n\n/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nvar _mapToArray = mapToArray;\n\n/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nvar _setToArray = setToArray;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$1 = 1,\n COMPARE_UNORDERED_FLAG$1 = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = _Symbol ? _Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new _Uint8Array(object), new _Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq_1(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = _mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG$1;\n convert || (convert = _setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG$1;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = _equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nvar _equalByTag = equalByTag;\n\n/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nvar _arrayPush = arrayPush;\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nvar isArray_1 = isArray;\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray_1(object) ? result : _arrayPush(result, symbolsFunc(object));\n}\n\nvar _baseGetAllKeys = baseGetAllKeys;\n\n/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nvar _arrayFilter = arrayFilter;\n\n/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nvar stubArray_1 = stubArray;\n\n/** Used for built-in method references. */\nvar objectProto$5 = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto$5.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray_1 : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return _arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nvar _getSymbols = getSymbols;\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nvar _baseTimes = baseTimes;\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nvar isObjectLike_1 = isObjectLike;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike_1(value) && _baseGetTag(value) == argsTag;\n}\n\nvar _baseIsArguments = baseIsArguments;\n\n/** Used for built-in method references. */\nvar objectProto$6 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$4 = objectProto$6.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable$1 = objectProto$6.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = _baseIsArguments(function() { return arguments; }()) ? _baseIsArguments : function(value) {\n return isObjectLike_1(value) && hasOwnProperty$4.call(value, 'callee') &&\n !propertyIsEnumerable$1.call(value, 'callee');\n};\n\nvar isArguments_1 = isArguments;\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nvar stubFalse_1 = stubFalse;\n\nvar isBuffer_1 = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? _root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse_1;\n\nmodule.exports = isBuffer;\n});\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nvar _isIndex = isIndex;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER$1 = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER$1;\n}\n\nvar isLength_1 = isLength;\n\n/** `Object#toString` result references. */\nvar argsTag$1 = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag$1 = '[object Boolean]',\n dateTag$1 = '[object Date]',\n errorTag$1 = '[object Error]',\n funcTag$1 = '[object Function]',\n mapTag$1 = '[object Map]',\n numberTag$1 = '[object Number]',\n objectTag = '[object Object]',\n regexpTag$1 = '[object RegExp]',\n setTag$1 = '[object Set]',\n stringTag$1 = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag$1 = '[object ArrayBuffer]',\n dataViewTag$1 = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag$1] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag$1] = typedArrayTags[boolTag$1] =\ntypedArrayTags[dataViewTag$1] = typedArrayTags[dateTag$1] =\ntypedArrayTags[errorTag$1] = typedArrayTags[funcTag$1] =\ntypedArrayTags[mapTag$1] = typedArrayTags[numberTag$1] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag$1] =\ntypedArrayTags[setTag$1] = typedArrayTags[stringTag$1] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike_1(value) &&\n isLength_1(value.length) && !!typedArrayTags[_baseGetTag(value)];\n}\n\nvar _baseIsTypedArray = baseIsTypedArray;\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nvar _baseUnary = baseUnary;\n\nvar _nodeUtil = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && _freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n});\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = _nodeUtil && _nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? _baseUnary(nodeIsTypedArray) : _baseIsTypedArray;\n\nvar isTypedArray_1 = isTypedArray;\n\n/** Used for built-in method references. */\nvar objectProto$7 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$5 = objectProto$7.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray_1(value),\n isArg = !isArr && isArguments_1(value),\n isBuff = !isArr && !isArg && isBuffer_1(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray_1(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? _baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty$5.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n _isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _arrayLikeKeys = arrayLikeKeys;\n\n/** Used for built-in method references. */\nvar objectProto$8 = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto$8;\n\n return value === proto;\n}\n\nvar _isPrototype = isPrototype;\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nvar _overArg = overArg;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = _overArg(Object.keys, Object);\n\nvar _nativeKeys = nativeKeys;\n\n/** Used for built-in method references. */\nvar objectProto$9 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$6 = objectProto$9.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!_isPrototype(object)) {\n return _nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty$6.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _baseKeys = baseKeys;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength_1(value.length) && !isFunction_1(value);\n}\n\nvar isArrayLike_1 = isArrayLike;\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike_1(object) ? _arrayLikeKeys(object) : _baseKeys(object);\n}\n\nvar keys_1 = keys;\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return _baseGetAllKeys(object, keys_1, _getSymbols);\n}\n\nvar _getAllKeys = getAllKeys;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$2 = 1;\n\n/** Used for built-in method references. */\nvar objectProto$a = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$7 = objectProto$a.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG$2,\n objProps = _getAllKeys(object),\n objLength = objProps.length,\n othProps = _getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty$7.call(other, key))) {\n return false;\n }\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nvar _equalObjects = equalObjects;\n\n/* Built-in method references that are verified to be native. */\nvar DataView = _getNative(_root, 'DataView');\n\nvar _DataView = DataView;\n\n/* Built-in method references that are verified to be native. */\nvar Promise$1 = _getNative(_root, 'Promise');\n\nvar _Promise = Promise$1;\n\n/* Built-in method references that are verified to be native. */\nvar Set = _getNative(_root, 'Set');\n\nvar _Set = Set;\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = _getNative(_root, 'WeakMap');\n\nvar _WeakMap = WeakMap;\n\n/** `Object#toString` result references. */\nvar mapTag$2 = '[object Map]',\n objectTag$1 = '[object Object]',\n promiseTag = '[object Promise]',\n setTag$2 = '[object Set]',\n weakMapTag$1 = '[object WeakMap]';\n\nvar dataViewTag$2 = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = _toSource(_DataView),\n mapCtorString = _toSource(_Map),\n promiseCtorString = _toSource(_Promise),\n setCtorString = _toSource(_Set),\n weakMapCtorString = _toSource(_WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = _baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((_DataView && getTag(new _DataView(new ArrayBuffer(1))) != dataViewTag$2) ||\n (_Map && getTag(new _Map) != mapTag$2) ||\n (_Promise && getTag(_Promise.resolve()) != promiseTag) ||\n (_Set && getTag(new _Set) != setTag$2) ||\n (_WeakMap && getTag(new _WeakMap) != weakMapTag$1)) {\n getTag = function(value) {\n var result = _baseGetTag(value),\n Ctor = result == objectTag$1 ? value.constructor : undefined,\n ctorString = Ctor ? _toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag$2;\n case mapCtorString: return mapTag$2;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag$2;\n case weakMapCtorString: return weakMapTag$1;\n }\n }\n return result;\n };\n}\n\nvar _getTag = getTag;\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG$3 = 1;\n\n/** `Object#toString` result references. */\nvar argsTag$2 = '[object Arguments]',\n arrayTag$1 = '[object Array]',\n objectTag$2 = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto$b = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$8 = objectProto$b.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray_1(object),\n othIsArr = isArray_1(other),\n objTag = objIsArr ? arrayTag$1 : _getTag(object),\n othTag = othIsArr ? arrayTag$1 : _getTag(other);\n\n objTag = objTag == argsTag$2 ? objectTag$2 : objTag;\n othTag = othTag == argsTag$2 ? objectTag$2 : othTag;\n\n var objIsObj = objTag == objectTag$2,\n othIsObj = othTag == objectTag$2,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer_1(object)) {\n if (!isBuffer_1(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new _Stack);\n return (objIsArr || isTypedArray_1(object))\n ? _equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG$3)) {\n var objIsWrapped = objIsObj && hasOwnProperty$8.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty$8.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new _Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new _Stack);\n return _equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nvar _baseIsEqualDeep = baseIsEqualDeep;\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike_1(value) && !isObjectLike_1(other))) {\n return value !== value && other !== other;\n }\n return _baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nvar _baseIsEqual = baseIsEqual;\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return _baseIsEqual(value, other);\n}\n\nvar isEqual_1 = isEqual;\n\nvar DEFAULT_OPTIONS = {\n container: false,\n delay: 0,\n html: false,\n placement: 'top',\n title: '',\n template: '<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',\n trigger: 'hover focus',\n offset: 0\n};\nvar openTooltips = [];\n\nvar Tooltip =\n/*#__PURE__*/\nfunction () {\n /**\n * Create a new Tooltip.js instance\n * @class Tooltip\n * @param {HTMLElement} reference - The DOM node used as reference of the tooltip (it can be a jQuery element).\n * @param {Object} options\n * @param {String} options.placement=bottom\n * Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -end),\n * left(-start, -end)`\n * @param {HTMLElement|String|false} options.container=false - Append the tooltip to a specific element.\n * @param {Number|Object} options.delay=0\n * Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type.\n * If a number is supplied, delay is applied to both hide/show.\n * Object structure is: `{ show: 500, hide: 100 }`\n * @param {Boolean} options.html=false - Insert HTML into the tooltip. If false, the content will inserted with `innerText`.\n * @param {String|PlacementFunction} options.placement='top' - One of the allowed placements, or a function returning one of them.\n * @param {String} [options.template='<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>']\n * Base HTML to used when creating the tooltip.\n * The tooltip's `title` will be injected into the `.tooltip-inner` or `.tooltip__inner`.\n * `.tooltip-arrow` or `.tooltip__arrow` will become the tooltip's arrow.\n * The outermost wrapper element should have the `.tooltip` class.\n * @param {String|HTMLElement|TitleFunction} options.title='' - Default title value if `title` attribute isn't present.\n * @param {String} [options.trigger='hover focus']\n * How tooltip is triggered - click, hover, focus, manual.\n * You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.\n * @param {HTMLElement} options.boundariesElement\n * The element used as boundaries for the tooltip. For more information refer to Popper.js'\n * [boundariesElement docs](https://popper.js.org/popper-documentation.html)\n * @param {Number|String} options.offset=0 - Offset of the tooltip relative to its reference. For more information refer to Popper.js'\n * [offset docs](https://popper.js.org/popper-documentation.html)\n * @param {Object} options.popperOptions={} - Popper options, will be passed directly to popper instance. For more information refer to Popper.js'\n * [options docs](https://popper.js.org/popper-documentation.html)\n * @return {Object} instance - The generated tooltip instance\n */\n function Tooltip(_reference, _options) {\n var _this = this;\n\n _classCallCheck(this, Tooltip);\n\n _defineProperty(this, \"_events\", []);\n\n _defineProperty(this, \"_setTooltipNodeEvent\", function (evt, reference, delay, options) {\n var relatedreference = evt.relatedreference || evt.toElement || evt.relatedTarget;\n\n var callback = function callback(evt2) {\n var relatedreference2 = evt2.relatedreference || evt2.toElement || evt2.relatedTarget; // Remove event listener after call\n\n _this._tooltipNode.removeEventListener(evt.type, callback); // If the new reference is not the reference element\n\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this._scheduleHide(reference, options.delay, options, evt2);\n }\n };\n\n if (_this._tooltipNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n _this._tooltipNode.addEventListener(evt.type, callback);\n\n return true;\n }\n\n return false;\n });\n\n // apply user options over default ones\n _options = _objectSpread2({}, DEFAULT_OPTIONS, {}, _options);\n _reference.jquery && (_reference = _reference[0]);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this); // cache reference and options\n\n this.reference = _reference;\n this.options = _options; // set initial state\n\n this._isOpen = false;\n\n this._init();\n } //\n // Public methods\n //\n\n /**\n * Reveals an element's tooltip. This is considered a \"manual\" triggering of the tooltip.\n * Tooltips with zero-length titles are never displayed.\n * @method Tooltip#show\n * @memberof Tooltip\n */\n\n\n _createClass(Tooltip, [{\n key: \"show\",\n value: function show() {\n this._show(this.reference, this.options);\n }\n /**\n * Hides an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#hide\n * @memberof Tooltip\n */\n\n }, {\n key: \"hide\",\n value: function hide() {\n this._hide();\n }\n /**\n * Hides and destroys an element’s tooltip.\n * @method Tooltip#dispose\n * @memberof Tooltip\n */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n this._dispose();\n }\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#toggle\n * @memberof Tooltip\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this._isOpen) {\n return this.hide();\n } else {\n return this.show();\n }\n }\n }, {\n key: \"setClasses\",\n value: function setClasses(classes) {\n this._classes = classes;\n }\n }, {\n key: \"setContent\",\n value: function setContent(content) {\n this.options.title = content;\n\n if (this._tooltipNode) {\n this._setContent(content, this.options);\n }\n }\n }, {\n key: \"setOptions\",\n value: function setOptions(options) {\n var classesUpdated = false;\n var classes = options && options.classes || directive.options.defaultClass;\n\n if (!isEqual_1(this._classes, classes)) {\n this.setClasses(classes);\n classesUpdated = true;\n }\n\n options = getOptions(options);\n var needPopperUpdate = false;\n var needRestart = false;\n\n if (this.options.offset !== options.offset || this.options.placement !== options.placement) {\n needPopperUpdate = true;\n }\n\n if (this.options.template !== options.template || this.options.trigger !== options.trigger || this.options.container !== options.container || classesUpdated) {\n needRestart = true;\n }\n\n for (var key in options) {\n this.options[key] = options[key];\n }\n\n if (this._tooltipNode) {\n if (needRestart) {\n var isOpen = this._isOpen;\n this.dispose();\n\n this._init();\n\n if (isOpen) {\n this.show();\n }\n } else if (needPopperUpdate) {\n this.popperInstance.update();\n }\n }\n } //\n // Private methods\n //\n\n }, {\n key: \"_init\",\n value: function _init() {\n // get events list\n var events = typeof this.options.trigger === 'string' ? this.options.trigger.split(' ') : [];\n this._isDisposed = false;\n this._enableDocumentTouch = events.indexOf('manual') === -1;\n events = events.filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }); // set event listeners\n\n this._setEventListeners(this.reference, events, this.options); // title attribute\n\n\n this.$_originalTitle = this.reference.getAttribute('title');\n this.reference.removeAttribute('title');\n this.reference.setAttribute('data-original-title', this.$_originalTitle);\n }\n /**\n * Creates a new tooltip node\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} reference\n * @param {String} template\n * @param {String|HTMLElement|TitleFunction} title\n * @param {Boolean} allowHtml\n * @return {HTMLelement} tooltipNode\n */\n\n }, {\n key: \"_create\",\n value: function _create(reference, template) {\n // create tooltip element\n var tooltipGenerator = window.document.createElement('div');\n tooltipGenerator.innerHTML = template.trim();\n var tooltipNode = tooltipGenerator.childNodes[0]; // add unique ID to our tooltip (needed for accessibility reasons)\n\n tooltipNode.id = \"tooltip_\".concat(Math.random().toString(36).substr(2, 10)); // Initially hide the tooltip\n // The attribute will be switched in a next frame so\n // CSS transitions can play\n\n tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.options.autoHide && this.options.trigger.indexOf('hover') !== -1) {\n tooltipNode.addEventListener('mouseenter', this.hide);\n tooltipNode.addEventListener('click', this.hide);\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this2 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n _this2.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this3 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this3._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this3.options.innerSelector);\n\n if (title.nodeType === 1) {\n // if title is a node, append it only if allowHtml is true\n if (allowHtml) {\n while (titleNode.firstChild) {\n titleNode.removeChild(titleNode.firstChild);\n }\n\n titleNode.appendChild(title);\n }\n } else if (typeof title === 'function') {\n // if title is a function, call it and set innerText or innerHtml depending by `allowHtml` value\n var result = title();\n\n if (result && typeof result.then === 'function') {\n _this3.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this3._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this3._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this3._applyContent(result, options).then(resolve).catch(reject);\n }\n\n return;\n } else {\n // if it's just a simple text, set innerText or innerHtml depending by `allowHtml` value\n allowHtml ? titleNode.innerHTML = title : titleNode.innerText = title;\n }\n\n resolve();\n });\n }\n }, {\n key: \"_show\",\n value: function _show(reference, options) {\n if (options && typeof options.container === 'string') {\n var container = document.querySelector(options.container);\n if (!container) return;\n }\n\n clearTimeout(this._disposeTimer);\n options = Object.assign({}, options);\n delete options.offset;\n var updateClasses = true;\n\n if (this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n updateClasses = false;\n }\n\n var result = this._ensureShown(reference, options);\n\n if (updateClasses && this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n }\n\n addClasses(reference, ['v-tooltip-open']);\n return result;\n }\n }, {\n key: \"_ensureShown\",\n value: function _ensureShown(reference, options) {\n var _this4 = this;\n\n // don't show if it's already visible\n if (this._isOpen) {\n return this;\n }\n\n this._isOpen = true;\n openTooltips.push(this); // if the tooltipNode already exists, just show it\n\n if (this._tooltipNode) {\n this._tooltipNode.style.display = '';\n\n this._tooltipNode.setAttribute('aria-hidden', 'false');\n\n this.popperInstance.enableEventListeners();\n this.popperInstance.update();\n\n if (this.asyncContent) {\n this._setContent(options.title, options);\n }\n\n return this;\n } // get title\n\n\n var title = reference.getAttribute('title') || options.title; // don't show tooltip if no title is defined\n\n if (!title) {\n return this;\n } // create tooltip node\n\n\n var tooltipNode = this._create(reference, options.template);\n\n this._tooltipNode = tooltipNode; // Add `aria-describedby` to our reference element for accessibility reasons\n\n reference.setAttribute('aria-describedby', tooltipNode.id); // append tooltip to container\n\n var container = this._findContainer(options.container, reference);\n\n this._append(tooltipNode, container);\n\n var popperOptions = _objectSpread2({}, options.popperOptions, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread2({}, popperOptions.modifiers, {\n arrow: {\n element: this.options.arrowSelector\n }\n });\n\n if (options.boundariesElement) {\n popperOptions.modifiers.preventOverflow = {\n boundariesElement: options.boundariesElement\n };\n }\n\n this.popperInstance = new Popper(reference, tooltipNode, popperOptions);\n\n this._setContent(title, options); // Fix position\n\n\n requestAnimationFrame(function () {\n if (!_this4._isDisposed && _this4.popperInstance) {\n _this4.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this4._isDisposed) {\n _this4._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this4.dispose();\n }\n });\n } else {\n _this4.dispose();\n }\n });\n return this;\n }\n }, {\n key: \"_noLongerOpen\",\n value: function _noLongerOpen() {\n var index = openTooltips.indexOf(this);\n\n if (index !== -1) {\n openTooltips.splice(index, 1);\n }\n }\n }, {\n key: \"_hide\",\n value: function _hide()\n /* reference, options */\n {\n var _this5 = this;\n\n // don't hide if it's already hidden\n if (!this._isOpen) {\n return this;\n }\n\n this._isOpen = false;\n\n this._noLongerOpen(); // hide tooltipNode\n\n\n this._tooltipNode.style.display = 'none';\n\n this._tooltipNode.setAttribute('aria-hidden', 'true');\n\n this.popperInstance.disableEventListeners();\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this5._tooltipNode) {\n _this5._tooltipNode.removeEventListener('mouseenter', _this5.hide);\n\n _this5._tooltipNode.removeEventListener('click', _this5.hide); // Don't remove popper instance, just the HTML element\n\n\n _this5._removeTooltipNode();\n }\n }, disposeTime);\n }\n\n removeClasses(this.reference, ['v-tooltip-open']);\n return this;\n }\n }, {\n key: \"_removeTooltipNode\",\n value: function _removeTooltipNode() {\n if (!this._tooltipNode) return;\n var parentNode = this._tooltipNode.parentNode;\n\n if (parentNode) {\n parentNode.removeChild(this._tooltipNode);\n this.reference.removeAttribute('aria-describedby');\n }\n\n this._tooltipNode = null;\n }\n }, {\n key: \"_dispose\",\n value: function _dispose() {\n var _this6 = this;\n\n this._isDisposed = true;\n this.reference.removeAttribute('data-original-title');\n\n if (this.$_originalTitle) {\n this.reference.setAttribute('title', this.$_originalTitle);\n } // remove event listeners first to prevent any unexpected behaviour\n\n\n this._events.forEach(function (_ref) {\n var func = _ref.func,\n event = _ref.event;\n\n _this6.reference.removeEventListener(event, func);\n });\n\n this._events = [];\n\n if (this._tooltipNode) {\n this._hide();\n\n this._tooltipNode.removeEventListener('mouseenter', this.hide);\n\n this._tooltipNode.removeEventListener('click', this.hide); // destroy instance\n\n\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n this._removeTooltipNode();\n }\n } else {\n this._noLongerOpen();\n }\n\n return this;\n }\n }, {\n key: \"_findContainer\",\n value: function _findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n }\n /**\n * Append tooltip to container\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} tooltip\n * @param {HTMLElement|String|false} container\n */\n\n }, {\n key: \"_append\",\n value: function _append(tooltipNode, container) {\n container.appendChild(tooltipNode);\n }\n }, {\n key: \"_setEventListeners\",\n value: function _setEventListeners(reference, events, options) {\n var _this7 = this;\n\n var directEvents = [];\n var oppositeEvents = [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n if (_this7.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this7.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(evt) {\n if (_this7._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this7._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this7._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(evt) {\n if (evt.usedByTooltip === true) {\n return;\n }\n\n _this7._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this7._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n }\n }, {\n key: \"_onDocumentTouch\",\n value: function _onDocumentTouch(event) {\n if (this._enableDocumentTouch) {\n this._scheduleHide(this.reference, this.options.delay, this.options, event);\n }\n }\n }, {\n key: \"_scheduleShow\",\n value: function _scheduleShow(reference, delay, options\n /*, evt */\n ) {\n var _this8 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.show || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n return _this8._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this9 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.hide || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n if (_this9._isOpen === false) {\n return;\n }\n\n if (!_this9._tooltipNode.ownerDocument.body.contains(_this9._tooltipNode)) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (evt.type === 'mouseleave') {\n var isSet = _this9._setTooltipNodeEvent(evt, reference, delay, options); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this9._hide(reference, options);\n }, computedDelay);\n }\n }]);\n\n return Tooltip;\n}(); // Hide tooltips on touch devices\n\nif (typeof document !== 'undefined') {\n document.addEventListener('touchstart', function (event) {\n for (var i = 0; i < openTooltips.length; i++) {\n openTooltips[i]._onDocumentTouch(event);\n }\n }, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n}\n/**\n * Placement function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback PlacementFunction\n * @param {HTMLElement} tooltip - tooltip DOM node.\n * @param {HTMLElement} reference - reference DOM node.\n * @return {String} placement - One of the allowed placement options.\n */\n\n/**\n * Title function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback TitleFunction\n * @return {String} placement - The desired title.\n */\n\nvar state = {\n enabled: true\n};\nvar positions = ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end'];\nvar defaultOptions = {\n // Default tooltip placement relative to target element\n defaultPlacement: 'top',\n // Default CSS classes applied to the tooltip element\n defaultClass: 'vue-tooltip-theme',\n // Default CSS classes applied to the target element of the tooltip\n defaultTargetClass: 'has-tooltip',\n // Is the content HTML by default?\n defaultHtml: true,\n // Default HTML template of the tooltip element\n // It must include `tooltip-arrow` & `tooltip-inner` CSS classes (can be configured, see below)\n // Change if the classes conflict with other libraries (for example bootstrap)\n defaultTemplate: '<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',\n // Selector used to get the arrow element in the tooltip template\n defaultArrowSelector: '.tooltip-arrow, .tooltip__arrow',\n // Selector used to get the inner content element in the tooltip template\n defaultInnerSelector: '.tooltip-inner, .tooltip__inner',\n // Delay (ms)\n defaultDelay: 0,\n // Default events that trigger the tooltip\n defaultTrigger: 'hover focus',\n // Default position offset (px)\n defaultOffset: 0,\n // Default container where the tooltip will be appended\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Class added when content is loading\n defaultLoadingClass: 'tooltip-loading',\n // Displayed when tooltip content is loading\n defaultLoadingContent: '...',\n // Hide on mouseover tooltip\n autoHide: true,\n // Close tooltip on click on tooltip target?\n defaultHideOnTargetClick: true,\n // Auto destroy tooltip DOM nodes (ms)\n disposeTimeout: 5000,\n // Options for popover\n popover: {\n defaultPlacement: 'bottom',\n // Use the `popoverClass` prop for theming\n defaultClass: 'vue-popover-theme',\n // Base class (change if conflicts with other libraries)\n defaultBaseClass: 'tooltip popover',\n // Wrapper class (contains arrow and inner)\n defaultWrapperClass: 'wrapper',\n // Inner content class\n defaultInnerClass: 'tooltip-inner popover-inner',\n // Arrow class\n defaultArrowClass: 'tooltip-arrow popover-arrow',\n // Class added when popover is open\n defaultOpenClass: 'open',\n defaultDelay: 0,\n defaultTrigger: 'click',\n defaultOffset: 0,\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Hides if clicked outside of popover\n defaultAutoHide: true,\n // Update popper on content resize\n defaultHandleResize: true\n }\n};\nfunction getOptions(options) {\n var result = {\n placement: typeof options.placement !== 'undefined' ? options.placement : directive.options.defaultPlacement,\n delay: typeof options.delay !== 'undefined' ? options.delay : directive.options.defaultDelay,\n html: typeof options.html !== 'undefined' ? options.html : directive.options.defaultHtml,\n template: typeof options.template !== 'undefined' ? options.template : directive.options.defaultTemplate,\n arrowSelector: typeof options.arrowSelector !== 'undefined' ? options.arrowSelector : directive.options.defaultArrowSelector,\n innerSelector: typeof options.innerSelector !== 'undefined' ? options.innerSelector : directive.options.defaultInnerSelector,\n trigger: typeof options.trigger !== 'undefined' ? options.trigger : directive.options.defaultTrigger,\n offset: typeof options.offset !== 'undefined' ? options.offset : directive.options.defaultOffset,\n container: typeof options.container !== 'undefined' ? options.container : directive.options.defaultContainer,\n boundariesElement: typeof options.boundariesElement !== 'undefined' ? options.boundariesElement : directive.options.defaultBoundariesElement,\n autoHide: typeof options.autoHide !== 'undefined' ? options.autoHide : directive.options.autoHide,\n hideOnTargetClick: typeof options.hideOnTargetClick !== 'undefined' ? options.hideOnTargetClick : directive.options.defaultHideOnTargetClick,\n loadingClass: typeof options.loadingClass !== 'undefined' ? options.loadingClass : directive.options.defaultLoadingClass,\n loadingContent: typeof options.loadingContent !== 'undefined' ? options.loadingContent : directive.options.defaultLoadingContent,\n popperOptions: _objectSpread2({}, typeof options.popperOptions !== 'undefined' ? options.popperOptions : directive.options.defaultPopperOptions)\n };\n\n if (result.offset) {\n var typeofOffset = _typeof(result.offset);\n\n var offset = result.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n if (!result.popperOptions.modifiers) {\n result.popperOptions.modifiers = {};\n }\n\n result.popperOptions.modifiers.offset = {\n offset: offset\n };\n }\n\n if (result.trigger && result.trigger.indexOf('click') !== -1) {\n result.hideOnTargetClick = false;\n }\n\n return result;\n}\nfunction getPlacement(value, modifiers) {\n var placement = value.placement;\n\n for (var i = 0; i < positions.length; i++) {\n var pos = positions[i];\n\n if (modifiers[pos]) {\n placement = pos;\n }\n }\n\n return placement;\n}\nfunction getContent(value) {\n var type = _typeof(value);\n\n if (type === 'string') {\n return value;\n } else if (value && type === 'object') {\n return value.content;\n } else {\n return false;\n }\n}\nfunction createTooltip(el, value) {\n var modifiers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var content = getContent(value);\n var classes = typeof value.classes !== 'undefined' ? value.classes : directive.options.defaultClass;\n\n var opts = _objectSpread2({\n title: content\n }, getOptions(_objectSpread2({}, value, {\n placement: getPlacement(value, modifiers)\n })));\n\n var tooltip = el._tooltip = new Tooltip(el, opts);\n tooltip.setClasses(classes);\n tooltip._vueEl = el; // Class on target\n\n var targetClasses = typeof value.targetClasses !== 'undefined' ? value.targetClasses : directive.options.defaultTargetClass;\n el._tooltipTargetClasses = targetClasses;\n addClasses(el, targetClasses);\n return tooltip;\n}\nfunction destroyTooltip(el) {\n if (el._tooltip) {\n el._tooltip.dispose();\n\n delete el._tooltip;\n delete el._tooltipOldShow;\n }\n\n if (el._tooltipTargetClasses) {\n removeClasses(el, el._tooltipTargetClasses);\n delete el._tooltipTargetClasses;\n }\n}\nfunction bind(el, _ref) {\n var value = _ref.value,\n oldValue = _ref.oldValue,\n modifiers = _ref.modifiers;\n var content = getContent(value);\n\n if (!content || !state.enabled) {\n destroyTooltip(el);\n } else {\n var tooltip;\n\n if (el._tooltip) {\n tooltip = el._tooltip; // Content\n\n tooltip.setContent(content); // Options\n\n tooltip.setOptions(_objectSpread2({}, value, {\n placement: getPlacement(value, modifiers)\n }));\n } else {\n tooltip = createTooltip(el, value, modifiers);\n } // Manual show\n\n\n if (typeof value.show !== 'undefined' && value.show !== el._tooltipOldShow) {\n el._tooltipOldShow = value.show;\n value.show ? tooltip.show() : tooltip.hide();\n }\n }\n}\nvar directive = {\n options: defaultOptions,\n bind: bind,\n update: bind,\n unbind: function unbind(el) {\n destroyTooltip(el);\n }\n};\n\nfunction addListeners(el) {\n el.addEventListener('click', onClick);\n el.addEventListener('touchstart', onTouchStart, supportsPassive ? {\n passive: true\n } : false);\n}\n\nfunction removeListeners(el) {\n el.removeEventListener('click', onClick);\n el.removeEventListener('touchstart', onTouchStart);\n el.removeEventListener('touchend', onTouchEnd);\n el.removeEventListener('touchcancel', onTouchCancel);\n}\n\nfunction onClick(event) {\n var el = event.currentTarget;\n event.closePopover = !el.$_vclosepopover_touch;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n}\n\nfunction onTouchStart(event) {\n if (event.changedTouches.length === 1) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = true;\n var touch = event.changedTouches[0];\n el.$_vclosepopover_touchPoint = touch;\n el.addEventListener('touchend', onTouchEnd);\n el.addEventListener('touchcancel', onTouchCancel);\n }\n}\n\nfunction onTouchEnd(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n\n if (event.changedTouches.length === 1) {\n var touch = event.changedTouches[0];\n var firstTouch = el.$_vclosepopover_touchPoint;\n event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n }\n}\n\nfunction onTouchCancel(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n}\n\nvar vclosepopover = {\n bind: function bind(el, _ref) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n }\n },\n update: function update(el, _ref2) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (value !== oldValue) {\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n } else {\n removeListeners(el);\n }\n }\n },\n unbind: function unbind(el) {\n removeListeners(el);\n }\n};\n\nfunction getDefault(key) {\n var value = directive.options.popover[key];\n\n if (typeof value === 'undefined') {\n return directive.options[key];\n }\n\n return value;\n}\n\nvar isIOS = false;\n\nif (typeof window !== 'undefined' && typeof navigator !== 'undefined') {\n isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;\n}\n\nvar openPopovers = [];\n\nvar Element = function Element() {};\n\nif (typeof window !== 'undefined') {\n Element = window.Element;\n}\n\nvar script = {\n name: 'VPopover',\n components: {\n ResizeObserver: ResizeObserver\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n placement: {\n type: String,\n default: function _default() {\n return getDefault('defaultPlacement');\n }\n },\n delay: {\n type: [String, Number, Object],\n default: function _default() {\n return getDefault('defaultDelay');\n }\n },\n offset: {\n type: [String, Number],\n default: function _default() {\n return getDefault('defaultOffset');\n }\n },\n trigger: {\n type: String,\n default: function _default() {\n return getDefault('defaultTrigger');\n }\n },\n container: {\n type: [String, Object, Element, Boolean],\n default: function _default() {\n return getDefault('defaultContainer');\n }\n },\n boundariesElement: {\n type: [String, Element],\n default: function _default() {\n return getDefault('defaultBoundariesElement');\n }\n },\n popperOptions: {\n type: Object,\n default: function _default() {\n return getDefault('defaultPopperOptions');\n }\n },\n popoverClass: {\n type: [String, Array],\n default: function _default() {\n return getDefault('defaultClass');\n }\n },\n popoverBaseClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultBaseClass;\n }\n },\n popoverInnerClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultInnerClass;\n }\n },\n popoverWrapperClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultWrapperClass;\n }\n },\n popoverArrowClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultArrowClass;\n }\n },\n autoHide: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultAutoHide;\n }\n },\n handleResize: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultHandleResize;\n }\n },\n openGroup: {\n type: String,\n default: null\n },\n openClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultOpenClass;\n }\n }\n },\n data: function data() {\n return {\n isOpen: false,\n id: Math.random().toString(36).substr(2, 10)\n };\n },\n computed: {\n cssClass: function cssClass() {\n return _defineProperty({}, this.openClass, this.isOpen);\n },\n popoverId: function popoverId() {\n return \"popover_\".concat(this.id);\n }\n },\n watch: {\n open: function open(val) {\n if (val) {\n this.show();\n } else {\n this.hide();\n }\n },\n disabled: function disabled(val, oldVal) {\n if (val !== oldVal) {\n if (val) {\n this.hide();\n } else if (this.open) {\n this.show();\n }\n }\n },\n container: function container(val) {\n if (this.isOpen && this.popperInstance) {\n var popoverNode = this.$refs.popover;\n var reference = this.$refs.trigger;\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.popperInstance.scheduleUpdate();\n }\n },\n trigger: function trigger(val) {\n this.$_removeEventListeners();\n this.$_addEventListeners();\n },\n placement: function placement(val) {\n var _this = this;\n\n this.$_updatePopper(function () {\n _this.popperInstance.options.placement = val;\n });\n },\n offset: '$_restartPopper',\n boundariesElement: '$_restartPopper',\n popperOptions: {\n handler: '$_restartPopper',\n deep: true\n }\n },\n created: function created() {\n this.$_isDisposed = false;\n this.$_mounted = false;\n this.$_events = [];\n this.$_preventOpen = false;\n },\n mounted: function mounted() {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n this.$_init();\n\n if (this.open) {\n this.show();\n }\n },\n deactivated: function deactivated() {\n this.hide();\n },\n beforeDestroy: function beforeDestroy() {\n this.dispose();\n },\n methods: {\n show: function show() {\n var _this2 = this;\n\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref2.event,\n _ref2$skipDelay = _ref2.skipDelay,\n _ref2$force = _ref2.force,\n force = _ref2$force === void 0 ? false : _ref2$force;\n\n if (force || !this.disabled) {\n this.$_scheduleShow(event);\n this.$emit('show');\n }\n\n this.$emit('update:open', true);\n this.$_beingShowed = true;\n requestAnimationFrame(function () {\n _this2.$_beingShowed = false;\n });\n },\n hide: function hide() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref3.event,\n _ref3$skipDelay = _ref3.skipDelay;\n\n this.$_scheduleHide(event);\n this.$emit('hide');\n this.$emit('update:open', false);\n },\n dispose: function dispose() {\n this.$_isDisposed = true;\n this.$_removeEventListeners();\n this.hide({\n skipDelay: true\n });\n\n if (this.popperInstance) {\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n }\n }\n\n this.$_mounted = false;\n this.popperInstance = null;\n this.isOpen = false;\n this.$emit('dispose');\n },\n $_init: function $_init() {\n if (this.trigger.indexOf('manual') === -1) {\n this.$_addEventListeners();\n }\n },\n $_show: function $_show() {\n var _this3 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n clearTimeout(this.$_disposeTimer); // Already open\n\n if (this.isOpen) {\n return;\n } // Popper is already initialized\n\n\n if (this.popperInstance) {\n this.isOpen = true;\n this.popperInstance.enableEventListeners();\n this.popperInstance.scheduleUpdate();\n }\n\n if (!this.$_mounted) {\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.$_mounted = true;\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread2({}, this.popperOptions, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread2({}, popperOptions.modifiers, {\n arrow: _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.arrow, {\n element: this.$refs.arrow\n })\n });\n\n if (this.offset) {\n var offset = this.$_getOffset();\n popperOptions.modifiers.offset = _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.offset, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread2({}, popperOptions.modifiers && popperOptions.modifiers.preventOverflow, {\n boundariesElement: this.boundariesElement\n });\n }\n\n this.popperInstance = new Popper(reference, popoverNode, popperOptions); // Fix position\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed && _this3.popperInstance) {\n _this3.popperInstance.scheduleUpdate(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed) {\n _this3.isOpen = true;\n } else {\n _this3.dispose();\n }\n });\n } else {\n _this3.dispose();\n }\n });\n }\n\n var openGroup = this.openGroup;\n\n if (openGroup) {\n var popover;\n\n for (var i = 0; i < openPopovers.length; i++) {\n popover = openPopovers[i];\n\n if (popover.openGroup !== openGroup) {\n popover.hide();\n popover.$emit('close-group');\n }\n }\n }\n\n openPopovers.push(this);\n this.$emit('apply-show');\n },\n $_hide: function $_hide() {\n var _this4 = this;\n\n // Already hidden\n if (!this.isOpen) {\n return;\n }\n\n var index = openPopovers.indexOf(this);\n\n if (index !== -1) {\n openPopovers.splice(index, 1);\n }\n\n this.isOpen = false;\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this.$_disposeTimer);\n var disposeTime = directive.options.popover.disposeTimeout || directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this.$_disposeTimer = setTimeout(function () {\n var popoverNode = _this4.$refs.popover;\n\n if (popoverNode) {\n // Don't remove popper instance, just the HTML element\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n _this4.$_mounted = false;\n }\n }, disposeTime);\n }\n\n this.$emit('apply-hide');\n },\n $_findContainer: function $_findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n },\n $_getOffset: function $_getOffset() {\n var typeofOffset = _typeof(this.offset);\n\n var offset = this.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n return offset;\n },\n $_addEventListeners: function $_addEventListeners() {\n var _this5 = this;\n\n var reference = this.$refs.trigger;\n var directEvents = [];\n var oppositeEvents = [];\n var events = typeof this.trigger === 'string' ? this.trigger.split(' ').filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }) : [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(event) {\n if (_this5.isOpen) {\n return;\n }\n\n event.usedByTooltip = true;\n !_this5.$_preventOpen && _this5.show({\n event: event\n });\n _this5.hidden = false;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(event) {\n if (event.usedByTooltip) {\n return;\n }\n\n _this5.hide({\n event: event\n });\n\n _this5.hidden = true;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n },\n $_scheduleShow: function $_scheduleShow() {\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_show();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.show || this.delay || 0);\n this.$_scheduleTimer = setTimeout(this.$_show.bind(this), computedDelay);\n }\n },\n $_scheduleHide: function $_scheduleHide() {\n var _this6 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_hide();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.hide || this.delay || 0);\n this.$_scheduleTimer = setTimeout(function () {\n if (!_this6.isOpen) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (event && event.type === 'mouseleave') {\n var isSet = _this6.$_setTooltipNodeEvent(event); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this6.$_hide();\n }, computedDelay);\n }\n },\n $_setTooltipNodeEvent: function $_setTooltipNodeEvent(event) {\n var _this7 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n var relatedreference = event.relatedreference || event.toElement || event.relatedTarget;\n\n var callback = function callback(event2) {\n var relatedreference2 = event2.relatedreference || event2.toElement || event2.relatedTarget; // Remove event listener after call\n\n popoverNode.removeEventListener(event.type, callback); // If the new reference is not the reference element\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this7.hide({\n event: event2\n });\n }\n };\n\n if (popoverNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n popoverNode.addEventListener(event.type, callback);\n return true;\n }\n\n return false;\n },\n $_removeEventListeners: function $_removeEventListeners() {\n var reference = this.$refs.trigger;\n this.$_events.forEach(function (_ref4) {\n var func = _ref4.func,\n event = _ref4.event;\n reference.removeEventListener(event, func);\n });\n this.$_events = [];\n },\n $_updatePopper: function $_updatePopper(cb) {\n if (this.popperInstance) {\n cb();\n if (this.isOpen) this.popperInstance.scheduleUpdate();\n }\n },\n $_restartPopper: function $_restartPopper() {\n if (this.popperInstance) {\n var isOpen = this.isOpen;\n this.dispose();\n this.$_isDisposed = false;\n this.$_init();\n\n if (isOpen) {\n this.show({\n skipDelay: true,\n force: true\n });\n }\n }\n },\n $_handleGlobalClose: function $_handleGlobalClose(event) {\n var _this8 = this;\n\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (this.$_beingShowed) return;\n this.hide({\n event: event\n });\n\n if (event.closePopover) {\n this.$emit('close-directive');\n } else {\n this.$emit('auto-hide');\n }\n\n if (touch) {\n this.$_preventOpen = true;\n setTimeout(function () {\n _this8.$_preventOpen = false;\n }, 300);\n }\n },\n $_handleResize: function $_handleResize() {\n if (this.isOpen && this.popperInstance) {\n this.popperInstance.scheduleUpdate();\n this.$emit('resize');\n }\n }\n }\n};\n\nif (typeof document !== 'undefined' && typeof window !== 'undefined') {\n if (isIOS) {\n document.addEventListener('touchend', handleGlobalTouchend, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n } else {\n window.addEventListener('click', handleGlobalClick, true);\n }\n}\n\nfunction handleGlobalClick(event) {\n handleGlobalClose(event);\n}\n\nfunction handleGlobalTouchend(event) {\n handleGlobalClose(event, true);\n}\n\nfunction handleGlobalClose(event) {\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var _loop = function _loop(i) {\n var popover = openPopovers[i];\n\n if (popover.$refs.popover) {\n var contains = popover.$refs.popover.contains(event.target);\n requestAnimationFrame(function () {\n if (event.closeAllPopover || event.closePopover && contains || popover.autoHide && !contains) {\n popover.$_handleGlobalClose(event, touch);\n }\n });\n }\n };\n\n // Delay so that close directive has time to set values\n for (var i = 0; i < openPopovers.length; i++) {\n _loop(i);\n }\n}\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"v-popover\",\n class: _vm.cssClass\n }, [_c(\"div\", {\n ref: \"trigger\",\n staticClass: \"trigger\",\n staticStyle: {\n display: \"inline-block\"\n },\n attrs: {\n \"aria-describedby\": _vm.popoverId,\n tabindex: _vm.trigger.indexOf(\"focus\") !== -1 ? 0 : undefined\n }\n }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _c(\"div\", {\n ref: \"popover\",\n class: [_vm.popoverBaseClass, _vm.popoverClass, _vm.cssClass],\n style: {\n visibility: _vm.isOpen ? \"visible\" : \"hidden\"\n },\n attrs: {\n id: _vm.popoverId,\n \"aria-hidden\": _vm.isOpen ? \"false\" : \"true\",\n tabindex: _vm.autoHide ? 0 : undefined\n },\n on: {\n keyup: function keyup($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) {\n return null;\n }\n\n _vm.autoHide && _vm.hide();\n }\n }\n }, [_c(\"div\", {\n class: _vm.popoverWrapperClass\n }, [_c(\"div\", {\n ref: \"inner\",\n class: _vm.popoverInnerClass,\n staticStyle: {\n position: \"relative\"\n }\n }, [_c(\"div\", [_vm._t(\"popover\")], 2), _vm._v(\" \"), _vm.handleResize ? _c(\"ResizeObserver\", {\n on: {\n notify: _vm.$_handleResize\n }\n }) : _vm._e()], 1), _vm._v(\" \"), _c(\"div\", {\n ref: \"arrow\",\n class: _vm.popoverArrowClass\n })])])]);\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nvar defineProperty = (function() {\n try {\n var func = _getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nvar _defineProperty$1 = defineProperty;\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && _defineProperty$1) {\n _defineProperty$1(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nvar _baseAssignValue = baseAssignValue;\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq_1(object[key], value)) ||\n (value === undefined && !(key in object))) {\n _baseAssignValue(object, key, value);\n }\n}\n\nvar _assignMergeValue = assignMergeValue;\n\n/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nvar _createBaseFor = createBaseFor;\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = _createBaseFor();\n\nvar _baseFor = baseFor;\n\nvar _cloneBuffer = createCommonjsModule(function (module, exports) {\n/** Detect free variable `exports`. */\nvar freeExports = exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && 'object' == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? _root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n});\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new _Uint8Array(result).set(new _Uint8Array(arrayBuffer));\n return result;\n}\n\nvar _cloneArrayBuffer = cloneArrayBuffer;\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? _cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nvar _cloneTypedArray = cloneTypedArray;\n\n/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nvar _copyArray = copyArray;\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject_1(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nvar _baseCreate = baseCreate;\n\n/** Built-in value references. */\nvar getPrototype = _overArg(Object.getPrototypeOf, Object);\n\nvar _getPrototype = getPrototype;\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !_isPrototype(object))\n ? _baseCreate(_getPrototype(object))\n : {};\n}\n\nvar _initCloneObject = initCloneObject;\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike_1(value) && isArrayLike_1(value);\n}\n\nvar isArrayLikeObject_1 = isArrayLikeObject;\n\n/** `Object#toString` result references. */\nvar objectTag$3 = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto$2 = Function.prototype,\n objectProto$c = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString$2 = funcProto$2.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$9 = objectProto$c.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString$2.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike_1(value) || _baseGetTag(value) != objectTag$3) {\n return false;\n }\n var proto = _getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty$9.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString$2.call(Ctor) == objectCtorString;\n}\n\nvar isPlainObject_1 = isPlainObject;\n\n/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nvar _safeGet = safeGet;\n\n/** Used for built-in method references. */\nvar objectProto$d = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$a = objectProto$d.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty$a.call(object, key) && eq_1(objValue, value)) ||\n (value === undefined && !(key in object))) {\n _baseAssignValue(object, key, value);\n }\n}\n\nvar _assignValue = assignValue;\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n _baseAssignValue(object, key, newValue);\n } else {\n _assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nvar _copyObject = copyObject;\n\n/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _nativeKeysIn = nativeKeysIn;\n\n/** Used for built-in method references. */\nvar objectProto$e = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty$b = objectProto$e.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject_1(object)) {\n return _nativeKeysIn(object);\n }\n var isProto = _isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty$b.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nvar _baseKeysIn = baseKeysIn;\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike_1(object) ? _arrayLikeKeys(object, true) : _baseKeysIn(object);\n}\n\nvar keysIn_1 = keysIn;\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return _copyObject(value, keysIn_1(value));\n}\n\nvar toPlainObject_1 = toPlainObject;\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = _safeGet(object, key),\n srcValue = _safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n _assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray_1(srcValue),\n isBuff = !isArr && isBuffer_1(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray_1(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray_1(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject_1(objValue)) {\n newValue = _copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = _cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = _cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject_1(srcValue) || isArguments_1(srcValue)) {\n newValue = objValue;\n if (isArguments_1(objValue)) {\n newValue = toPlainObject_1(objValue);\n }\n else if (!isObject_1(objValue) || isFunction_1(objValue)) {\n newValue = _initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n _assignMergeValue(object, key, newValue);\n}\n\nvar _baseMergeDeep = baseMergeDeep;\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n _baseFor(source, function(srcValue, key) {\n stack || (stack = new _Stack);\n if (isObject_1(srcValue)) {\n _baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(_safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n _assignMergeValue(object, key, newValue);\n }\n }, keysIn_1);\n}\n\nvar _baseMerge = baseMerge;\n\n/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nvar identity_1 = identity;\n\n/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nvar _apply = apply;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return _apply(func, this, otherArgs);\n };\n}\n\nvar _overRest = overRest;\n\n/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nvar constant_1 = constant;\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !_defineProperty$1 ? identity_1 : function(func, string) {\n return _defineProperty$1(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant_1(string),\n 'writable': true\n });\n};\n\nvar _baseSetToString = baseSetToString;\n\n/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nvar _shortOut = shortOut;\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = _shortOut(_baseSetToString);\n\nvar _setToString = setToString;\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return _setToString(_overRest(func, start, identity_1), func + '');\n}\n\nvar _baseRest = baseRest;\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject_1(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike_1(object) && _isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq_1(object[index], value);\n }\n return false;\n}\n\nvar _isIterateeCall = isIterateeCall;\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return _baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && _isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nvar _createAssigner = createAssigner;\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = _createAssigner(function(object, source, srcIndex) {\n _baseMerge(object, source, srcIndex);\n});\n\nvar merge_1 = merge;\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css = \".resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css);\n\nfunction install(Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (install.installed) return;\n install.installed = true;\n var finalOptions = {};\n merge_1(finalOptions, defaultOptions, options);\n plugin.options = finalOptions;\n directive.options = finalOptions;\n Vue.directive('tooltip', directive);\n Vue.directive('close-popover', vclosepopover);\n Vue.component('v-popover', __vue_component__);\n}\nvar VTooltip = directive;\nvar VClosePopover = vclosepopover;\nvar VPopover = __vue_component__;\nvar plugin = {\n install: install,\n\n get enabled() {\n return state.enabled;\n },\n\n set enabled(value) {\n state.enabled = value;\n }\n\n}; // Auto-install\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { VClosePopover, VPopover, VTooltip, createTooltip, destroyTooltip, install };\n","'use strict';\nvar $ = require('../internals/export');\nvar $indexOf = require('../internals/array-includes').indexOf;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar nativeIndexOf = [].indexOf;\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('indexOf');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.indexOf` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(timeoutErrorMessage, config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n var valueFromConfig2Keys = ['url', 'method', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n var defaultToConfig2Keys = [\n 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',\n 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'\n ];\n var directMergeKeys = ['validateStatus'];\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n }\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n utils.forEach(directMergeKeys, function merge(prop) {\n if (prop in config2) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys)\n .concat(directMergeKeys);\n\n var otherKeys = Object\n .keys(config1)\n .concat(Object.keys(config2))\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, mergeDeepProperties);\n\n return config;\n};\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classof(process) == 'process') {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n !fails(post) &&\n location.protocol !== 'file:'\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar fails = require('../internals/fails');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = HAS_SPECIES_SUPPORT && !fails(function () {\n [].filter.call({ length: -1, 0: 1 }, function (it) { throw it; });\n});\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n","module.exports = false;\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","module.exports = {};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var bind = require('../internals/bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","var global = require('../internals/global');\nvar userAgent = require('../internals/user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar fails = require('../internals/fails');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = HAS_SPECIES_SUPPORT && !fails(function () {\n [].map.call({ length: -1, 0: 1 }, function (it) { throw it; });\n});\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.map\");\n\nrequire(\"core-js/modules/es.object.keys\");\n\nrequire(\"core-js/modules/es.string.starts-with\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar ScopedStorage =\n/*#__PURE__*/\nfunction () {\n function ScopedStorage(scope, wrapped, persistent) {\n _classCallCheck(this, ScopedStorage);\n\n _defineProperty(this, \"scope\", void 0);\n\n _defineProperty(this, \"wrapped\", void 0);\n\n this.scope = \"\".concat(persistent ? ScopedStorage.GLOBAL_SCOPE_PERSISTENT : ScopedStorage.GLOBAL_SCOPE_VOLATILE, \"_\").concat(btoa(scope), \"_\");\n this.wrapped = wrapped;\n }\n\n _createClass(ScopedStorage, [{\n key: \"scopeKey\",\n value: function scopeKey(key) {\n return \"\".concat(this.scope).concat(key);\n }\n }, {\n key: \"setItem\",\n value: function setItem(key, value) {\n this.wrapped.setItem(this.scopeKey(key), value);\n }\n }, {\n key: \"getItem\",\n value: function getItem(key) {\n return this.wrapped.getItem(this.scopeKey(key));\n }\n }, {\n key: \"removeItem\",\n value: function removeItem(key) {\n this.wrapped.removeItem(this.scopeKey(key));\n }\n }, {\n key: \"clear\",\n value: function clear() {\n var _this = this;\n\n Object.keys(this.wrapped).filter(function (key) {\n return key.startsWith(_this.scope);\n }).map(this.wrapped.removeItem.bind(this.wrapped));\n }\n }]);\n\n return ScopedStorage;\n}();\n\nexports.default = ScopedStorage;\n\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_VOLATILE\", 'nextcloud_vol');\n\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_PERSISTENT\", 'nextcloud_per');\n//# sourceMappingURL=scopedstorage.js.map","'use strict';\n\nexports.__esModule = true;\nexports.stateify = exports.TokenState = exports.CharacterState = undefined;\n\nvar _class = require('../utils/class');\n\nfunction createStateClass() {\n\treturn function (tClass) {\n\t\tthis.j = [];\n\t\tthis.T = tClass || null;\n\t};\n}\n\n/**\n\tA simple state machine that can emit token classes\n\n\tThe `j` property in this class refers to state jumps. It's a\n\tmultidimensional array where for each element:\n\n\t* index [0] is a symbol or class of symbols to transition to.\n\t* index [1] is a State instance which matches\n\n\tThe type of symbol will depend on the target implementation for this class.\n\tIn Linkify, we have a two-stage scanner. Each stage uses this state machine\n\tbut with a slighly different (polymorphic) implementation.\n\n\tThe `T` property refers to the token class.\n\n\tTODO: Can the `on` and `next` methods be combined?\n\n\t@class BaseState\n*/\nvar BaseState = createStateClass();\nBaseState.prototype = {\n\tdefaultTransition: false,\n\n\t/**\n \t@method constructor\n \t@param {Class} tClass Pass in the kind of token to emit if there are\n \t\tno jumps after this state and the state is accepting.\n */\n\n\t/**\n \tOn the given symbol(s), this machine should go to the given state\n \t\t@method on\n \t@param {Array|Mixed} symbol\n \t@param {BaseState} state Note that the type of this state should be the\n \t\tsame as the current instance (i.e., don't pass in a different\n \t\tsubclass)\n */\n\ton: function on(symbol, state) {\n\t\tif (symbol instanceof Array) {\n\t\t\tfor (var i = 0; i < symbol.length; i++) {\n\t\t\t\tthis.j.push([symbol[i], state]);\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\t\tthis.j.push([symbol, state]);\n\t\treturn this;\n\t},\n\n\n\t/**\n \tGiven the next item, returns next state for that item\n \t@method next\n \t@param {Mixed} item Should be an instance of the symbols handled by\n \t\tthis particular machine.\n \t@return {State} state Returns false if no jumps are available\n */\n\tnext: function next(item) {\n\t\tfor (var i = 0; i < this.j.length; i++) {\n\t\t\tvar jump = this.j[i];\n\t\t\tvar symbol = jump[0]; // Next item to check for\n\t\t\tvar state = jump[1]; // State to jump to if items match\n\n\t\t\t// compare item with symbol\n\t\t\tif (this.test(item, symbol)) {\n\t\t\t\treturn state;\n\t\t\t}\n\t\t}\n\n\t\t// Nowhere left to jump!\n\t\treturn this.defaultTransition;\n\t},\n\n\n\t/**\n \tDoes this state accept?\n \t`true` only of `this.T` exists\n \t\t@method accepts\n \t@return {Boolean}\n */\n\taccepts: function accepts() {\n\t\treturn !!this.T;\n\t},\n\n\n\t/**\n \tDetermine whether a given item \"symbolizes\" the symbol, where symbol is\n \ta class of items handled by this state machine.\n \t\tThis method should be overriden in extended classes.\n \t\t@method test\n \t@param {Mixed} item Does this item match the given symbol?\n \t@param {Mixed} symbol\n \t@return {Boolean}\n */\n\ttest: function test(item, symbol) {\n\t\treturn item === symbol;\n\t},\n\n\n\t/**\n \tEmit the token for this State (just return it in this case)\n \tIf this emits a token, this instance is an accepting state\n \t@method emit\n \t@return {Class} T\n */\n\temit: function emit() {\n\t\treturn this.T;\n\t}\n};\n\n/**\n\tState machine for string-based input\n\n\t@class CharacterState\n\t@extends BaseState\n*/\nvar CharacterState = (0, _class.inherits)(BaseState, createStateClass(), {\n\t/**\n \tDoes the given character match the given character or regular\n \texpression?\n \t\t@method test\n \t@param {String} char\n \t@param {String|RegExp} charOrRegExp\n \t@return {Boolean}\n */\n\ttest: function test(character, charOrRegExp) {\n\t\treturn character === charOrRegExp || charOrRegExp instanceof RegExp && charOrRegExp.test(character);\n\t}\n});\n\n/**\n\tState machine for input in the form of TextTokens\n\n\t@class TokenState\n\t@extends BaseState\n*/\nvar TokenState = (0, _class.inherits)(BaseState, createStateClass(), {\n\n\t/**\n * Similar to `on`, but returns the state the results in the transition from\n * the given item\n * @method jump\n * @param {Mixed} item\n * @param {Token} [token]\n * @return state\n */\n\tjump: function jump(token) {\n\t\tvar tClass = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n\t\tvar state = this.next(new token('')); // dummy temp token\n\t\tif (state === this.defaultTransition) {\n\t\t\t// Make a new state!\n\t\t\tstate = new this.constructor(tClass);\n\t\t\tthis.on(token, state);\n\t\t} else if (tClass) {\n\t\t\tstate.T = tClass;\n\t\t}\n\t\treturn state;\n\t},\n\n\n\t/**\n \tIs the given token an instance of the given token class?\n \t\t@method test\n \t@param {TextToken} token\n \t@param {Class} tokenClass\n \t@return {Boolean}\n */\n\ttest: function test(token, tokenClass) {\n\t\treturn token instanceof tokenClass;\n\t}\n});\n\n/**\n\tGiven a non-empty target string, generates states (if required) for each\n\tconsecutive substring of characters in str starting from the beginning of\n\tthe string. The final state will have a special value, as specified in\n\toptions. All other \"in between\" substrings will have a default end state.\n\n\tThis turns the state machine into a Trie-like data structure (rather than a\n\tintelligently-designed DFA).\n\n\tNote that I haven't really tried these with any strings other than\n\tDOMAIN.\n\n\t@param {String} str\n\t@param {CharacterState} start State to jump from the first character\n\t@param {Class} endToken Token class to emit when the given string has been\n\t\tmatched and no more jumps exist.\n\t@param {Class} defaultToken \"Filler token\", or which token type to emit when\n\t\twe don't have a full match\n\t@return {Array} list of newly-created states\n*/\nfunction stateify(str, start, endToken, defaultToken) {\n\tvar i = 0,\n\t len = str.length,\n\t state = start,\n\t newStates = [],\n\t nextState = void 0;\n\n\t// Find the next state without a jump to the next character\n\twhile (i < len && (nextState = state.next(str[i]))) {\n\t\tstate = nextState;\n\t\ti++;\n\t}\n\n\tif (i >= len) {\n\t\treturn [];\n\t} // no new tokens were added\n\n\twhile (i < len - 1) {\n\t\tnextState = new CharacterState(defaultToken);\n\t\tnewStates.push(nextState);\n\t\tstate.on(str[i], nextState);\n\t\tstate = nextState;\n\t\ti++;\n\t}\n\n\tnextState = new CharacterState(endToken);\n\tnewStates.push(nextState);\n\tstate.on(str[len - 1], nextState);\n\n\treturn newStates;\n}\n\nexports.CharacterState = CharacterState;\nexports.TokenState = TokenState;\nexports.stateify = stateify;","\"use strict\";\n\nexports.__esModule = true;\nfunction createTokenClass() {\n\treturn function (value) {\n\t\tif (value) {\n\t\t\tthis.v = value;\n\t\t}\n\t};\n}\n\nexports.createTokenClass = createTokenClass;","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BackgroundSettings.vue?vue&type=style&index=0&id=5e3de762&scoped=true&lang=scss&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"ce7447e2\", content, true, {});","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (useSourceMap) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item, useSourceMap);\n\n if (item[2]) {\n return \"@media \".concat(item[2], \" {\").concat(content, \"}\");\n }\n\n return content;\n }).join('');\n }; // import a list of modules into the list\n // eslint-disable-next-line func-names\n\n\n list.i = function (modules, mediaQuery, dedupe) {\n if (typeof modules === 'string') {\n // eslint-disable-next-line no-param-reassign\n modules = [[null, modules, '']];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var i = 0; i < this.length; i++) {\n // eslint-disable-next-line prefer-destructuring\n var id = this[i][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _i = 0; _i < modules.length; _i++) {\n var item = [].concat(modules[_i]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (mediaQuery) {\n if (!item[2]) {\n item[2] = mediaQuery;\n } else {\n item[2] = \"\".concat(mediaQuery, \" and \").concat(item[2]);\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring\n\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (useSourceMap && typeof btoa === 'function') {\n var sourceMapping = toComment(cssMapping);\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || '').concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n }\n\n return [content].join('\\n');\n} // Adapted from convert-source-map (MIT)\n\n\nfunction toComment(sourceMap) {\n // eslint-disable-next-line no-undef\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n return \"/*# \".concat(data, \" */\");\n}","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=0ebea47a&lang=scss&scoped=true&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"33095740\", content, true, {});","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nexport default function addStylesClient (parentId, list, _isProduction, _options) {\n isProduction = _isProduction\n\n options = _options || {}\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[' + ssrIdKey + '~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n if (options.ssrId) {\n styleElement.setAttribute(ssrIdKey, obj.id)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(\"ncvuecomponents\",[],t):\"object\"==typeof exports?exports.ncvuecomponents=t():(e.NextcloudVue=e.NextcloudVue||{},e.NextcloudVue.ncvuecomponents=t())}(window,(function(){return function(e){var t={};function n(a){if(t[a])return t[a].exports;var o=t[a]={i:a,l:!1,exports:{}};return e[a].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var o in e)n.d(a,o,function(t){return e[t]}.bind(null,o));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"/dist/\",n(n.s=332)}([function(e,t,n){\"use strict\";function a(e,t,n,a,o,i,r,s){var c,l=\"function\"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=n,l._compiled=!0),a&&(l.functional=!0),i&&(l._scopeId=\"data-v-\"+i),r?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},l._ssrRegister=c):o&&(c=s?function(){o.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(l.functional){l._injectStyles=c;var d=l.render;l.render=function(e,t){return c.call(t),d(e,t)}}else{var m=l.beforeCreate;l.beforeCreate=m?[].concat(m,c):[c]}return{exports:e,options:l}}n.d(t,\"a\",(function(){return a}))},function(e,t,n){\"use strict\";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||\"\",a=e[3];if(!a)return n;if(t&&\"function\"==typeof btoa){var o=(r=a,s=btoa(unescape(encodeURIComponent(JSON.stringify(r)))),c=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(s),\"/*# \".concat(c,\" */\")),i=a.sources.map((function(e){return\"/*# sourceURL=\".concat(a.sourceRoot||\"\").concat(e,\" */\")}));return[n].concat(i).concat([o]).join(\"\\n\")}var r,s,c;return[n].join(\"\\n\")}(t,e);return t[2]?\"@media \".concat(t[2],\" {\").concat(n,\"}\"):n})).join(\"\")},t.i=function(e,n,a){\"string\"==typeof e&&(e=[[null,e,\"\"]]);var o={};if(a)for(var i=0;i<this.length;i++){var r=this[i][0];null!=r&&(o[r]=!0)}for(var s=0;s<e.length;s++){var c=[].concat(e[s]);a&&o[c[0]]||(n&&(c[2]?c[2]=\"\".concat(n,\" and \").concat(c[2]):c[2]=n),t.push(c))}},t}},function(e,t,n){\"use strict\";function a(e,t){for(var n=[],a={},o=0;o<t.length;o++){var i=t[o],r=i[0],s={id:e+\":\"+o,css:i[1],media:i[2],sourceMap:i[3]};a[r]?a[r].parts.push(s):n.push(a[r]={id:r,parts:[s]})}return n}n.r(t),n.d(t,\"default\",(function(){return p}));var o=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!o)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var i={},r=o&&(document.head||document.getElementsByTagName(\"head\")[0]),s=null,c=0,l=!1,d=function(){},m=null,u=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function p(e,t,n,o){l=n,m=o||{};var r=a(e,t);return g(r),function(t){for(var n=[],o=0;o<r.length;o++){var s=r[o];(c=i[s.id]).refs--,n.push(c)}t?g(r=a(e,t)):r=[];for(o=0;o<n.length;o++){var c;if(0===(c=n[o]).refs){for(var l=0;l<c.parts.length;l++)c.parts[l]();delete i[c.id]}}}}function g(e){for(var t=0;t<e.length;t++){var n=e[t],a=i[n.id];if(a){a.refs++;for(var o=0;o<a.parts.length;o++)a.parts[o](n.parts[o]);for(;o<n.parts.length;o++)a.parts.push(A(n.parts[o]));a.parts.length>n.parts.length&&(a.parts.length=n.parts.length)}else{var r=[];for(o=0;o<n.parts.length;o++)r.push(A(n.parts[o]));i[n.id]={id:n.id,refs:1,parts:r}}}}function f(){var e=document.createElement(\"style\");return e.type=\"text/css\",r.appendChild(e),e}function A(e){var t,n,a=document.querySelector('style[data-vue-ssr-id~=\"'+e.id+'\"]');if(a){if(l)return d;a.parentNode.removeChild(a)}if(u){var o=c++;a=s||(s=f()),t=h.bind(null,a,o,!1),n=h.bind(null,a,o,!0)}else a=f(),t=x.bind(null,a),n=function(){a.parentNode.removeChild(a)};return t(e),function(a){if(a){if(a.css===e.css&&a.media===e.media&&a.sourceMap===e.sourceMap)return;t(e=a)}else n()}}var v,b=(v=[],function(e,t){return v[e]=t,v.filter(Boolean).join(\"\\n\")});function h(e,t,n,a){var o=n?\"\":a.css;if(e.styleSheet)e.styleSheet.cssText=b(t,o);else{var i=document.createTextNode(o),r=e.childNodes;r[t]&&e.removeChild(r[t]),r.length?e.insertBefore(i,r[t]):e.appendChild(i)}}function x(e,t){var n=t.css,a=t.media,o=t.sourceMap;if(a&&e.setAttribute(\"media\",a),m.ssrId&&e.setAttribute(\"data-vue-ssr-id\",t.id),o&&(n+=\"\\n/*# sourceURL=\"+o.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+\" */\"),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}},function(e,t){e.exports=require(\"vue\")},function(e,t){e.exports=require(\"core-js/modules/es.object.to-string\")},function(e,t,n){\"use strict\";n.d(t,\"b\",(function(){return s})),n.d(t,\"a\",(function(){return r}));n(9);var a=n(27),o=Object(a.getGettextBuilder)().detectLocale();[{locale:\"br\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Kervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\",\"Language-Team\":\"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"br\",\"Plural-Forms\":\"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nKervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\\n\"},msgstr:[\"Last-Translator: Kervoas-Le Nabat Ewen <ewenkervoas@free.fr>, 2020\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (diwelus)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (bevennet)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Oberioù\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Oberiantizoù\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Loened & Natur\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Dibab\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Serriñ\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Personelañ\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Bannieloù\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Boued & Evajoù\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Implijet alies\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Da heul\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Emoji ebet kavet\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Disoc'h ebet\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Traoù\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Arsav an diaporama\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Tud & Korf\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Choaz un emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"A-raok\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Klask\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Disoc'hoù an enklask\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Choaz ur c'hlav\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Arventennoù\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Smileyioù & Fromoù\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Kregiñ an diaporama\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Arouezioù\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Beaj & Lec'hioù\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Dibosupl eo klask ar strollad\"]}}}}},{locale:\"ca\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Toni Hermoso Pulido <toniher@softcatala.cat>, 2020\",\"Language-Team\":\"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ca\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nCarles Ferrando Garcia <carles.ferrando@gnuescultura.eu>, 2020\\nMarc Riera <marcriera@softcatala.org>, 2020\\nToni Hermoso Pulido <toniher@softcatala.cat>, 2020\\n\"},msgstr:[\"Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2020\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisible)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (restringit)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Accions\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Activitats\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Animals i natura\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Tria\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Tanca\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Personalitzat\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Marques\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Menjar i begudes\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Utilitzats recentment\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Següent\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"No s'ha trobat cap emoji\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Sense resultats\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Objectes\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Atura la presentació\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Persones i cos\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Trieu un emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Anterior\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Cerca\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Resultats de cerca\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Selecciona una etiqueta\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Paràmetres\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Cares i emocions\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Inicia la presentació\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Símbols\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Viatges i llocs\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"No es pot cercar el grup\"]}}}}},{locale:\"cs_CZ\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Pavel Borecki <pavel.borecki@gmail.com>, 2020\",\"Language-Team\":\"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"cs_CZ\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (neviditelný)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (omezený)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Akce\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Aktivity\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Zvířata a příroda\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Zvolit\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Zavřít\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Uživatelsky určené\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Příznaky\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Jídlo a pití\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Často používané\"]},\"Message limit of {count} characters reached\":{msgid:\"Message limit of {count} characters reached\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:254\"},msgstr:[\"Dosaženo limitu počtu znaků {count}\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Následující\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Nenalezeno žádné emoji\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Žádné výsledky\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Objekty\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pozastavit prezentaci\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Lidé a tělo\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Vyberte emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Předchozí\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Hledat\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Výsledky hledání\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Vybrat štítek\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Nastavení\"]},\"Settings navigation\":{msgid:\"Settings navigation\",comments:{reference:\"src/components/AppSettingsDialog/AppSettingsDialog.vue:106\"},msgstr:[\"Pohyb po nastavení\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Úsměvy a emoce\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Spustit prezentaci\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Symboly\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Cestování a místa\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Nedaří se hledat skupinu\"]},\"Write message, @ to mention someone …\":{msgid:\"Write message, @ to mention someone …\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:151\"},msgstr:[\"Pište zprávu, pokud chcete někoho zmínit, použijte @ …\"]}}}}},{locale:\"da\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Thomas Nielsen <thsnielsen@gmail.com>, 2020\",\"Language-Team\":\"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"da\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nThomas Nielsen <thsnielsen@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Thomas Nielsen <thsnielsen@gmail.com>, 2020\\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (usynlig)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (begrænset)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:247\"},msgstr:[\"Handlinger\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Vælg\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Luk\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Videre\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:172\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Ingen resultater\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Suspender fremvisning\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Forrige\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Vælg et mærke\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Indstillinger\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Start fremvisning\"]}}}}},{locale:\"de\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Mario Siegmann <mario_siegmann@web.de>, 2020\",\"Language-Team\":\"German (https://www.transifex.com/nextcloud/teams/64236/de/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"de\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nPhilipp Fischbeck <pfischbeck@googlemail.com>, 2020\\nAndreas Eitel <github-aneitel@online.de>, 2020\\nJoachim Sokolowski, 2020\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\\nMario Siegmann <mario_siegmann@web.de>, 2020\\n\"},msgstr:[\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2020\\nLanguage-Team: German (https://www.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (unsichtbar)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (eingeschränkt)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Aktionen\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Aktivitäten\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Tiere & Natur\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Auswählen\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Schließen\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Benutzerdefiniert\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Flaggen\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Essen & Trinken\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Häufig verwendet\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Weiter\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Kein Emoji gefunden\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Keine Ergebnisse\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Gegenstände\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Diashow pausieren\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Menschen & Körper\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Ein Emoji auswählen\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Vorherige\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Suche\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Suchergebnisse\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Schlagwort auswählen\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Einstellungen\"]},\"Settings navigation\":{msgid:\"Settings navigation\",comments:{reference:\"src/components/AppSettingsDialog/AppSettingsDialog.vue:106\"},msgstr:[\"Einstellungen-Navigation\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Smileys & Emotionen\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Diashow starten\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Symbole\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Reisen & Orte\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Die Gruppe konnte nicht durchsucht werden\"]},\"Write message, @ to mention someone …\":{msgid:\"Write message, @ to mention someone …\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:126\"},msgstr:[\"Nachricht schreiben, @ um jemanden zu erwähnen ...\"]}}}}},{locale:\"de_DE\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Mario Siegmann <mario_siegmann@web.de>, 2020\",\"Language-Team\":\"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"de_DE\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nPhilipp Fischbeck <pfischbeck@googlemail.com>, 2020\\nProfDrJones <jones@fs.cs.hm.edu>, 2020\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\\nMario Siegmann <mario_siegmann@web.de>, 2020\\n\"},msgstr:[\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2020\\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (unsichtbar)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (eingeschränkt)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Aktionen\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Aktivitäten\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Tiere & Natur\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Auswählen\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Schließen\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Benutzerdefiniert\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Flaggen\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Essen & Trinken\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Häufig verwendet\"]},\"Message limit of {count} characters reached\":{msgid:\"Message limit of {count} characters reached\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:254\"},msgstr:[\"Nachrichtenlimit von {count} Zeichen erreicht\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Weiter\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Kein Emoji gefunden\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Keine Ergebnisse\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Gegenstände\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Diashow pausieren\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Menschen & Körper\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Ein Emoji auswählen\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Vorherige\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Suche\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Suchergebnisse\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Schlagwort auswählen\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Einstellungen\"]},\"Settings navigation\":{msgid:\"Settings navigation\",comments:{reference:\"src/components/AppSettingsDialog/AppSettingsDialog.vue:106\"},msgstr:[\"Einstellungen-Navigation\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Smileys & Emotionen\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Diashow starten\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Symbole\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Reisen & Orte\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Die Gruppe kann nicht durchsucht werden\"]},\"Write message, @ to mention someone …\":{msgid:\"Write message, @ to mention someone …\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:151\"},msgstr:[\"Nachricht schreiben, @ um jemanden zu erwähnen ...\"]}}}}},{locale:\"el\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Efstathios Iosifidis <iefstathios@gmail.com>, 2020\",\"Language-Team\":\"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"el\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\ngeorge k <norhorn@gmail.com>, 2020\\nEfstathios Iosifidis <iefstathios@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Efstathios Iosifidis <iefstathios@gmail.com>, 2020\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (αόρατο)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (περιορισμένο)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Ενέργειες\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Δραστηριότητες\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Ζώα & Φύση\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Επιλογή\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Κλείσιμο\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Προσαρμογή\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Σημαίες\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Φαγητό & Ποτό\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Συχνά χρησιμοποιούμενο\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Επόμενο\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Δεν βρέθηκε emoji\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Κανένα αποτέλεσμα\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Αντικείμενα\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Παύση προβολής διαφανειών\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Άνθρωποι & Σώμα\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Επιλέξτε ένα emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Προηγούμενο\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Αναζήτηση\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Αποτελέσματα αναζήτησης\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Επιλογή ετικέτας\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Ρυθμίσεις\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Φατσούλες & Συναίσθημα\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Έναρξη προβολής διαφανειών\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Σύμβολα\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Ταξίδια & Τοποθεσίες\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Δεν είναι δυνατή η αναζήτηση της ομάδας\"]}}}}},{locale:\"es\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"asd fgh <c1@cgps.xyz>, 2020\",\"Language-Team\":\"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"es\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\njavier san felipe <jsanfe@gmail.com>, 2020\\nasd fgh <c1@cgps.xyz>, 2020\\n\"},msgstr:[\"Last-Translator: asd fgh <c1@cgps.xyz>, 2020\\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{etiqueta} (invisible)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{etiqueta} (restringido)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:247\"},msgstr:[\"acciones\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Elige\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Cierra\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Siguiente\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:172\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\" Ningún resultado\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pausa la presentación \"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Anterior\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Selecciona una etiqueta\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Ajustes\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Comienza la presentación \"]}}}}},{locale:\"eu\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\",\"Language-Team\":\"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"eu\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAsier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:169\"},msgstr:[\"{tag} (ikusezina)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:172\"},msgstr:[\"{tag} (mugatua)\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Aukeratu\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:109\"},msgstr:[\"Itxi\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:154\"},msgstr:[\"Hurrengoa\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:169\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Emaitzarik ez\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:290\"},msgstr:[\"Pausatu diaporama\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:134\"},msgstr:[\"Aurrekoa\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Hautatu etiketa bat\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Ezarpenak\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:290\"},msgstr:[\"Hasi diaporama\"]}}}}},{locale:\"fi_FI\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Robin Lahtinen <robin.lahtinen@gmail.com>, 2020\",\"Language-Team\":\"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"fi_FI\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nRobin Lahtinen <robin.lahtinen@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Robin Lahtinen <robin.lahtinen@gmail.com>, 2020\\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (näkymätön)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (rajoitettu)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:247\"},msgstr:[\"Toiminnot\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Valitse\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Sulje\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Seuraava\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Ei tuloksia\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Keskeytä diaesitys\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Edellinen\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Valitse tagi\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Asetukset\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Aloita diaesitys\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Ryhmää ei voi hakea\"]}}}}},{locale:\"fr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Julien Veyssier <eneiluj@gmx.fr>, 2020\",\"Language-Team\":\"French (https://www.transifex.com/nextcloud/teams/64236/fr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"fr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nBrendan Abolivier <transifex@brendanabolivier.com>, 2020\\ngud bes <gudbes@protonmail.com>, 2020\\nGreg Greg <grena@grenabox.fr>, 2020\\nLuclu7 <theluc7andcompagnie@gmail.com>, 2020\\nJulien Veyssier <eneiluj@gmx.fr>, 2020\\n\"},msgstr:[\"Last-Translator: Julien Veyssier <eneiluj@gmx.fr>, 2020\\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisible)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (restreint)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Actions\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Activités\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Animaux & Nature\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Choisir\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Fermer\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Personnalisé\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Drapeaux\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Nourriture & Boissons\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Utilisés fréquemment\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Suivant\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Pas d’émoji trouvé\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Aucun résultat\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Objets\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Mettre le diaporama en pause\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Personnes & Corps\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Choisissez un émoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Précédent\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Chercher\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Résultats de recherche\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Sélectionnez une balise\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Paramètres\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Smileys & Émotions\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Démarrer le diaporama\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Symboles\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Voyage & Lieux\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Impossible de chercher le groupe\"]}}}}},{locale:\"gl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\",\"Language-Team\":\"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"gl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisíbel)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (restrinxido)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Accións\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Actividades\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Animais e natureza\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Escoller\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Pechar\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Personalizado\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Bandeiras\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Comida e bebida\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Usado con frecuencia\"]},\"Message limit of {count} characters reached\":{msgid:\"Message limit of {count} characters reached\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:254\"},msgstr:[\"Acadouse o límite de {count} caracteres por mensaxe\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Seguinte\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Non se atopou ningún «emoji»\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Sen resultados\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Obxectos\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pausar o diaporama\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Persoas e corpo\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Escolla un «emoji»\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Anterir\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Buscar\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Resultados da busca\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Seleccione unha etiqueta\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Axustes\"]},\"Settings navigation\":{msgid:\"Settings navigation\",comments:{reference:\"src/components/AppSettingsDialog/AppSettingsDialog.vue:106\"},msgstr:[\"Navegación de axustes\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Sorrisos e emocións\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Iniciar o diaporama\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Símbolos\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Viaxes e lugares\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Non foi posíbel buscar o grupo\"]},\"Write message, @ to mention someone …\":{msgid:\"Write message, @ to mention someone …\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:151\"},msgstr:[\"Escriba a mensaxe, @ para mencionar a alguén…\"]}}}}},{locale:\"he\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Yaron Shahrabani <sh.yaron@gmail.com>, 2020\",\"Language-Team\":\"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"he\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nYaron Shahrabani <sh.yaron@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>, 2020\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (נסתר)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (מוגבל)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"פעולות\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"פעילויות\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"חיות וטבע\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"בחירה\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"סגירה\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"בהתאמה אישית\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"דגלים\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"מזון ומשקאות\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"בשימוש תדיר\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"הבא\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"לא נמצא אמוג׳י\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"אין תוצאות\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"חפצים\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"השהיית מצגת\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"אנשים וגוף\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"נא לבחור אמוג׳י\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"הקודם\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"חיפוש\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"תוצאות חיפוש\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"בחירת תגית\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"הגדרות\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"חייכנים ורגשונים\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"התחלת המצגת\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"סמלים\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"טיולים ומקומות\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"לא ניתן לחפש בקבוצה\"]}}}}},{locale:\"hu_HU\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"asbot10 <asbot000@gmail.com>, 2020\",\"Language-Team\":\"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"hu_HU\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nBalázs Meskó <mesko.balazs@fsf.hu>, 2020\\nasbot10 <asbot000@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: asbot10 <asbot000@gmail.com>, 2020\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (láthatatlan)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (korlátozott)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:197\"},msgstr:[\"Műveletek\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Válassszon\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Bezárás\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Következő\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:172\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Nincs találat\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Diavetítés szüneteltetése\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Előző\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Válasszon címkét\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Beállítások\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Diavetítés indítása\"]}}}}},{locale:\"is\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Sveinn í Felli <sv1@fellsnet.is>, 2020\",\"Language-Team\":\"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"is\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nSveinn í Felli <sv1@fellsnet.is>, 2020\\n\"},msgstr:[\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2020\\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (ósýnilegt)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (takmarkað)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Aðgerðir\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Aðgerðir\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Dýr og náttúra\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Velja\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Loka\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Sérsniðið\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Flögg\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Matur og drykkur\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Oftast notað\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Næsta\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Ekkert tjáningartákn fannst\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Engar niðurstöður\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Hlutir\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Gera hlé á skyggnusýningu\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Fólk og líkami\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Veldu tjáningartákn\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Fyrri\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Leita\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Leitarniðurstöður\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Veldu merki\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Stillingar\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Broskallar og tilfinningar\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Byrja skyggnusýningu\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Tákn\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Staðir og ferðalög\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Get ekki leitað í hópnum\"]}}}}},{locale:\"it\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Vincenzo Reale <vinx.reale@gmail.com>, 2020\",\"Language-Team\":\"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"it\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nRandom_R, 2020\\nVincenzo Reale <vinx.reale@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>, 2020\\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisibile)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (limitato)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Azioni\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Attività\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Animali e natura\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Scegli\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Chiudi\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Personalizzato\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Bandiere\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Cibo e bevande\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Usati di frequente\"]},\"Message limit of {count} characters reached\":{msgid:\"Message limit of {count} characters reached\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:254\"},msgstr:[\"Limite dei messaggi di {count} caratteri raggiunto\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Successivo\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Nessun emoji trovato\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Nessun risultato\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Oggetti\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Presentazione in pausa\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Persone e corpo\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Scegli un emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Precedente\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Cerca\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Risultati di ricerca\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Seleziona un'etichetta\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Impostazioni\"]},\"Settings navigation\":{msgid:\"Settings navigation\",comments:{reference:\"src/components/AppSettingsDialog/AppSettingsDialog.vue:106\"},msgstr:[\"Navigazione delle impostazioni\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Faccine ed emozioni\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Avvia presentazione\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Simboli\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Viaggi e luoghi\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Impossibile cercare il gruppo\"]},\"Write message, @ to mention someone …\":{msgid:\"Write message, @ to mention someone …\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:151\"},msgstr:[\"Scrivi messaggio, @ per menzionare qualcuno…\"]}}}}},{locale:\"ja_JP\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"YANO Tetsu <tetuyano+transi@gmail.com>, 2020\",\"Language-Team\":\"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ja_JP\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nYANO Tetsu <tetuyano+transi@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: YANO Tetsu <tetuyano+transi@gmail.com>, 2020\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{タグ} (不可視)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{タグ} (制限付)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"操作\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"アクティビティ\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"動物と自然\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"選択\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"閉じる\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"カスタム\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"国旗\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"食べ物と飲み物\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"よく使うもの\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"次\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"絵文字が見つかりません\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"なし\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"物\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"スライドショーを一時停止\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"様々な人と体の部位\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"絵文字を選択\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"前\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"検索\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"検索結果\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"タグを選択\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"設定\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"笑顔と気持ち\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"スライドショーを開始\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"記号\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"旅行と場所\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"グループを検索できません\"]}}}}},{locale:\"lt_LT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Moo, 2020\",\"Language-Team\":\"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lt_LT\",\"Plural-Forms\":\"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nMoo, 2020\\n\"},msgstr:[\"Last-Translator: Moo, 2020\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (nematoma)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (apribota)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Veiksmai\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Veiklos\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Gyvūnai ir gamta\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Pasirinkti\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Užverti\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Tinkinti\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Vėliavos\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Maistas ir gėrimai\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Dažniausiai naudoti\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Kitas\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Nerasta jaustukų\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Nėra rezultatų\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Objektai\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pristabdyti skaidrių rodymą\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Žmonės ir kūnas\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Pasirinkti jaustuką\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Ankstesnis\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Ieškoti\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Paieškos rezultatai\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Pasirinkti žymę\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Nustatymai\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Šypsenos ir emocijos\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pradėti skaidrių rodymą\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Simboliai\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Kelionės ir vietos\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Nepavyko atlikti paiešką grupėje\"]}}}}},{locale:\"lv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"stendec <stendec@inbox.lv>, 2020\",\"Language-Team\":\"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lv\",\"Plural-Forms\":\"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nstendec <stendec@inbox.lv>, 2020\\n\"},msgstr:[\"Last-Translator: stendec <stendec@inbox.lv>, 2020\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:169\"},msgstr:[\"{tag} (neredzams)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:172\"},msgstr:[\"{tag} (ierobežots)\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Izvēlēties\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:109\"},msgstr:[\"Aizvērt\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:154\"},msgstr:[\"Nākamais\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:169\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Nav rezultātu\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:290\"},msgstr:[\"Pauzēt slaidrādi\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:134\"},msgstr:[\"Iepriekšējais\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Izvēlēties birku\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Iestatījumi\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:290\"},msgstr:[\"Sākt slaidrādi\"]}}}}},{locale:\"mk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Сашко Тодоров, 2020\",\"Language-Team\":\"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"mk\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nСашко Тодоров, 2020\\n\"},msgstr:[\"Last-Translator: Сашко Тодоров, 2020\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (невидливо)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (ограничено)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Акции\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Активности\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Животни & Природа\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Избери\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Затвори\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Прилагодени\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Знамиња\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Храна & Пијалоци\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Најчесто користени\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Следно\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Не се пронајдени емотикони\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Нема резултати\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Објекти\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Пузирај слајдшоу\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Луѓе & Тело\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Избери емотикон\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Предходно\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Барај\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Резултати од барувањето\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Избери ознака\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Параметри\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Смешковци & Емотикони\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Стартувај слајдшоу\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Симболи\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Патувања & Места\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Неможе да се принајде групата\"]}}}}},{locale:\"nb_NO\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"sverre.vikan <sverre.vikan@gmail.com>, 2020\",\"Language-Team\":\"Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"nb_NO\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nOle Jakob Brustad <ole.jakob@brustadbuss.no>, 2020\\nsverre.vikan <sverre.vikan@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: sverre.vikan <sverre.vikan@gmail.com>, 2020\\nLanguage-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (usynlig)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (beskyttet)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Handlinger\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Aktiviteter\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Dyr og natur\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Velg\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Lukk\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Selvvalgt\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Flagg\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Mat og drikke\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Ofte brukt\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Neste\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Fant ingen emoji\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Ingen resultater\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Objekter\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pause lysbildefremvisning\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Mennesker og kropp\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Velg en emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Forrige\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Søk\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Søkeresultater\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Velg en merkelapp\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Innstillinger\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Smilefjes og følelser\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Start lysbildefremvisning\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Symboler\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Reise og steder\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Kunne ikke søke i gruppen\"]}}}}},{locale:\"nl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Arjan van S, 2020\",\"Language-Team\":\"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"nl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nRoeland Jago Douma <roeland@famdouma.nl>, 2020\\nArjan van S, 2020\\n\"},msgstr:[\"Last-Translator: Arjan van S, 2020\\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (onzichtbaar)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (beperkt)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:196\"},msgstr:[\"Acties\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Kies\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Sluiten\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Volgende\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:172\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Geen resultaten\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pauzeer diavoorstelling\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Vorige\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Selecteer een label\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Instellingen\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Start diavoorstelling\"]}}}}},{locale:\"oc\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Quentin PAGÈS, 2020\",\"Language-Team\":\"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"oc\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nQuentin PAGÈS, 2020\\n\"},msgstr:[\"Last-Translator: Quentin PAGÈS, 2020\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisible)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (limit)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:194\"},msgstr:[\"Accions\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Causir\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Tampar\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Seguent\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:172\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Cap de resultat\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Metre en pausa lo diaporama\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Precedent\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Seleccionar una etiqueta\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Paramètres\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Lançar lo diaporama\"]}}}}},{locale:\"pl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Artur Skoczylas <art.skoczylas@gmail.com>, 2020\",\"Language-Team\":\"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pl\",\"Plural-Forms\":\"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nValdnet, 2020\\nArtur Skoczylas <art.skoczylas@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Artur Skoczylas <art.skoczylas@gmail.com>, 2020\\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (niewidoczna)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (ograniczona)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Działania\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Aktywność\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Zwierzęta i natura\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Wybierz\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Zamknij\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Zwyczajne\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Flagi\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Jedzenie i picie\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Często używane\"]},\"Message limit of {count} characters reached\":{msgid:\"Message limit of {count} characters reached\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:254\"},msgstr:[\"Przekroczono limit wiadomości wynoszący {count} znaków\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Następny\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Nie znaleziono emotikonów\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Brak wyników\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Obiekty\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Wstrzymaj pokaz slajdów\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Ludzie i ciało\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Wybierz emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Poprzedni\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Szukaj\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Wyniki wyszukiwania\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Wybierz etykietę\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Ustawienia\"]},\"Settings navigation\":{msgid:\"Settings navigation\",comments:{reference:\"src/components/AppSettingsDialog/AppSettingsDialog.vue:106\"},msgstr:[\"Ustawienia nawigacji\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Buźki i emotikony\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Rozpocznij pokaz slajdów\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Symbole\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Podróże i miejsca\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Nie można przeszukać grupy\"]},\"Write message, @ to mention someone …\":{msgid:\"Write message, @ to mention someone …\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:151\"},msgstr:[\"Napisz wiadomość, aby wspomnieć o kimś użyj @…\"]}}}}},{locale:\"pt_BR\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Paulo Schopf, 2020\",\"Language-Team\":\"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_BR\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nMaurício Gardini <accounts@mauriciogardini.com>, 2020\\nPaulo Schopf, 2020\\n\"},msgstr:[\"Last-Translator: Paulo Schopf, 2020\\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisível)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (restrito) \"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Ações\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Atividades\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Animais & Natureza\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Escolher\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Fechar\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Personalizado\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Bandeiras\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Comida & Bebida\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Mais usados\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Próximo\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Nenhum emoji encontrado\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Sem resultados\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Objetos\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pausar apresentação de slides\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Pessoas & Corpo\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Escolha um emoji\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Anterior\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Pesquisar\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Resultados da pesquisa\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Selecionar uma tag\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Configurações\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Smiles & Emoções\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Iniciar apresentação de slides\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Símbolo\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Viagem & Lugares\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Não foi possível pesquisar o grupo\"]}}}}},{locale:\"pt_PT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Manuela Silva <manuelarodsilva@gmail.com>, 2020\",\"Language-Team\":\"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_PT\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nfpapoila <fpapoila@gmail.com>, 2020\\nManuela Silva <manuelarodsilva@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Manuela Silva <manuelarodsilva@gmail.com>, 2020\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisivel)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (restrito)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Ações\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Escolher\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Fechar\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Seguinte\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Sem resultados\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pausar diaporama\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Anterior\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Selecionar uma etiqueta\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Definições\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Iniciar diaporama\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Não é possível pesquisar o grupo\"]}}}}},{locale:\"ru\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Alex <kekcuha@gmail.com>, 2020\",\"Language-Team\":\"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ru\",\"Plural-Forms\":\"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAlex <kekcuha@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Alex <kekcuha@gmail.com>, 2020\\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:169\"},msgstr:[\"{tag} (невидимое)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:172\"},msgstr:[\"{tag} (ограниченное)\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Выберите\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:109\"},msgstr:[\"Закрыть\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:154\"},msgstr:[\"Следующее\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:169\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Результаты отсуствуют\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:290\"},msgstr:[\"Приостановить показ слйдов\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:134\"},msgstr:[\"Предыдущее\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Выберите метку\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Параметры\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:290\"},msgstr:[\"Начать показ слайдов\"]}}}}},{locale:\"sk_SK\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Anton Kuchár <tonokuc@pobox.sk>, 2020\",\"Language-Team\":\"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sk_SK\",\"Plural-Forms\":\"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nAnton Kuchár <tonokuc@pobox.sk>, 2020\\n\"},msgstr:[\"Last-Translator: Anton Kuchár <tonokuc@pobox.sk>, 2020\\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (neviditeľný)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (obmedzený)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Akcie\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Aktivity\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Zvieratá a príroda\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Vybrať\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Zatvoriť\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Zvyk\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Vlajky\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Jedlo a nápoje\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Často používané\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Ďalší\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Nenašli sa žiadne emodži\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Žiadne výsledky\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Objekty\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pozastaviť prezentáciu\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Ľudia a telo\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Vyberte si emodži\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Predchádzajúci\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Hľadať\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Výsledky vyhľadávania\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Vybrať štítok\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Nastavenia\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Smajlíky a emócie\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Začať prezentáciu\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Symboly\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Cestovanie a miesta\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Skupinu sa nepodarilo nájsť\"]}}}}},{locale:\"sl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Matej Urbančič <>, 2020\",\"Language-Team\":\"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sl\",\"Plural-Forms\":\"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nMatej Urbančič <>, 2020\\n\"},msgstr:[\"Last-Translator: Matej Urbančič <>, 2020\\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (nevidno)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (omejeno)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"Dejanja\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Dejavnosti\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Živali in Narava\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Izbor\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Zapri\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Po meri\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Zastavice\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Hrana in Pijača\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Pogostost uporabe\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Naslednji\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Ni najdenih izraznih ikon\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Ni zadetkov\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Predmeti\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Ustavi predstavitev\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Ljudje in Telo\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Izbor izrazne ikone\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Predhodni\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Iskanje\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Zadetki iskanja\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Izbor oznake\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"Nastavitve\"]},\"Settings navigation\":{msgid:\"Settings navigation\",comments:{reference:\"src/components/AppSettingsDialog/AppSettingsDialog.vue:106\"},msgstr:[\"Krmarjenje nastavitev\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Izrazne ikone\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Začni predstavitev\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Simboli\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Potovanja in Kraji\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Ni mogoče iskati po skuspini\"]},\"Write message, @ to mention someone …\":{msgid:\"Write message, @ to mention someone …\",comments:{reference:\"src/components/RichContenteditable/RichContenteditable.vue:126\"},msgstr:[\"Napišite sporočilo, z @ omenite osebo ...\"]}}}}},{locale:\"sv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Jonatan Nyberg, 2020\",\"Language-Team\":\"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sv\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nGabriel Ekström <gabriel.ekstrom06@gmail.com>, 2020\\nErik Lennartsson, 2020\\nJonatan Nyberg, 2020\\n\"},msgstr:[\"Last-Translator: Jonatan Nyberg, 2020\\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (osynlig)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (begränsad)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:194\"},msgstr:[\"Åtgärder\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Välj\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Stäng\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Nästa\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:172\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\"},msgstr:[\"Inga resultat\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Pausa bildspel\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Föregående\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Välj en tag\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Inställningar\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Starta bildspel\"]}}}}},{locale:\"tr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\",\"Language-Team\":\"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"tr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nKemal Oktay Aktoğan <oktayaktogan@gmail.com>, 2020\\nabc Def <hdogan1974@gmail.com>, 2020\\nHüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\\n\"},msgstr:[\"Last-Translator: Hüseyin Fahri Uzun <mail@fahriuzun.com>, 2020\\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (görünmez)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (kısıtlı)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:247\"},msgstr:[\"Eylemler\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Seç\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Kapat\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Sonraki\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Sonuçlar yok\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Slayt gösterisini duraklat\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Önceki\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Bir etiket seçin\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Ayarlar\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Slayt gösterisini başlat\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Grupta arama yapılamıyor\"]}}}}},{locale:\"uk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\",\"Language-Team\":\"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"uk\",\"Plural-Forms\":\"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nOleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Oleksa Stasevych <oleksiy.stasevych@gmail.com>, 2020\\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (invisible)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (restricted)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:249\"},msgstr:[\"Дії\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"Діяльність\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"Тварини та природа\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"Виберіть\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"Закрити\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"Власне\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"Прапори\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"Їжа та напитки\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"Найчастіші\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"Вперед\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"Емоційки відсутні\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"Відсутні результати\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"Об'єкти\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Пауза у показі слайдів\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"Люди та жести\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"Виберіть емоційку\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"Назад\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"Пошук\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"Результати пошуку\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"Виберіть позначку\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"Налаштування\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"Усміхайлики та емоційки\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"Почати показ слайдів\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"Символи\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"Поїздки та місця\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"Неможливо шукати в групі\"]}}}}},{locale:\"zh_CN\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Pascal Janus <pascal_janus@163.com>, 2020\",\"Language-Team\":\"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_CN\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nSleepyJesse <Jesse_Xu@live.com>, 2020\\nJianming Liang <fuufuukun@163.com>, 2020\\nPascal Janus <pascal_janus@163.com>, 2020\\n\"},msgstr:[\"Last-Translator: Pascal Janus <pascal_janus@163.com>, 2020\\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (不可见)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (受限)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:247\"},msgstr:[\"行为\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"选择\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"关闭\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"下一个\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"无结果\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"暂停幻灯片\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"上一个\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"选择一个标签\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:53\"},msgstr:[\"设置\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"开始幻灯片\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"无法搜索分组\"]}}}}},{locale:\"zh_TW\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Natashia Maxins <railroad1987@gmail.com>, 2020\",\"Language-Team\":\"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_TW\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nbyStarTW (pan93412) <pan93412@gmail.com>, 2020\\nNatashia Maxins <railroad1987@gmail.com>, 2020\\n\"},msgstr:[\"Last-Translator: Natashia Maxins <railroad1987@gmail.com>, 2020\\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},\"{tag} (invisible)\":{msgid:\"{tag} (invisible)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:170\"},msgstr:[\"{tag} (隱藏)\"]},\"{tag} (restricted)\":{msgid:\"{tag} (restricted)\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:173\"},msgstr:[\"{tag} (受限)\"]},Actions:{msgid:\"Actions\",comments:{reference:\"src/components/Actions/Actions.vue:254\"},msgstr:[\"動作\"]},Activities:{msgid:\"Activities\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:176\"},msgstr:[\"活動\"]},\"Animals & Nature\":{msgid:\"Animals & Nature\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:174\"},msgstr:[\"動物與自然\"]},Choose:{msgid:\"Choose\",comments:{reference:\"src/components/ColorPicker/ColorPicker.vue:145\"},msgstr:[\"選擇\"]},Close:{msgid:\"Close\",comments:{reference:\"src/components/Modal/Modal.vue:117\"},msgstr:[\"關閉\"]},Custom:{msgid:\"Custom\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:181\"},msgstr:[\"自定義\"]},Flags:{msgid:\"Flags\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:180\"},msgstr:[\"旗幟\"]},\"Food & Drink\":{msgid:\"Food & Drink\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:175\"},msgstr:[\"食物與飲料\"]},\"Frequently used\":{msgid:\"Frequently used\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:171\"},msgstr:[\"最近使用\"]},Next:{msgid:\"Next\",comments:{reference:\"src/components/Modal/Modal.vue:166\"},msgstr:[\"下一個\"]},\"No emoji found\":{msgid:\"No emoji found\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:168\"},msgstr:[\"未找到表情符號\"]},\"No results\":{msgid:\"No results\",comments:{reference:\"src/components/Multiselect/Multiselect.vue:174\\nsrc/components/MultiselectTags/MultiselectTags.vue:78\\nsrc/components/SettingsSelectGroup/SettingsSelectGroup.vue:38\"},msgstr:[\"無結果\"]},Objects:{msgid:\"Objects\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:178\"},msgstr:[\"物件\"]},\"Pause slideshow\":{msgid:\"Pause slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"暫停幻燈片\"]},\"People & Body\":{msgid:\"People & Body\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:173\"},msgstr:[\"人物\"]},\"Pick an emoji\":{msgid:\"Pick an emoji\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:153\"},msgstr:[\"選擇表情符號\"]},Previous:{msgid:\"Previous\",comments:{reference:\"src/components/Modal/Modal.vue:144\"},msgstr:[\"上一個\"]},Search:{msgid:\"Search\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:167\"},msgstr:[\"搜尋\"]},\"Search results\":{msgid:\"Search results\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:170\"},msgstr:[\"搜尋結果\"]},\"Select a tag\":{msgid:\"Select a tag\",comments:{reference:\"src/components/MultiselectTags/MultiselectTags.vue:100\"},msgstr:[\"選擇標籤\"]},Settings:{msgid:\"Settings\",comments:{reference:\"src/components/AppNavigationSettings/AppNavigationSettings.vue:57\"},msgstr:[\"設定\"]},\"Smileys & Emotion\":{msgid:\"Smileys & Emotion\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:172\"},msgstr:[\"表情\"]},\"Start slideshow\":{msgid:\"Start slideshow\",comments:{reference:\"src/components/Modal/Modal.vue:302\"},msgstr:[\"開始幻燈片\"]},Symbols:{msgid:\"Symbols\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:179\"},msgstr:[\"標誌\"]},\"Travel & Places\":{msgid:\"Travel & Places\",comments:{reference:\"src/components/EmojiPicker/EmojiPicker.vue:177\"},msgstr:[\"旅遊與景點\"]},\"Unable to search the group\":{msgid:\"Unable to search the group\",comments:{reference:\"src/components/SettingsSelectGroup/SettingsSelectGroup.vue:143\"},msgstr:[\"無法搜尋群組\"]}}}}}].map((function(e){return o.addTranslation(e.locale,e.json)}));var i=o.build(),r=i.ngettext.bind(i),s=i.gettext.bind(i)},function(e,t){e.exports=require(\"v-tooltip\")},function(e,t){e.exports=require(\"core-js/modules/es.function.name\")},function(e,t){e.exports=require(\"core-js/modules/es.array.index-of\")},function(e,t){e.exports=require(\"core-js/modules/es.array.map\")},function(e,t){e.exports=require(\"core-js/modules/es.regexp.to-string\")},function(e,t){e.exports=require(\"core-js/modules/es.regexp.exec\")},function(e,t){e.exports=require(\"@nextcloud/router\")},function(e,t){e.exports=require(\"core-js/modules/es.array.iterator\")},function(e,t){e.exports=require(\"core-js/modules/es.string.iterator\")},function(e,t){e.exports=require(\"core-js/modules/web.dom-collections.iterator\")},function(e,t,n){\"use strict\";e.exports=function(e,t){return t||(t={}),\"string\"!=typeof(e=e&&e.__esModule?e.default:e)?e:(/^['\"].*['\"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/[\"'() \\t\\n]/.test(e)||t.needQuotes?'\"'.concat(e.replace(/\"/g,'\\\\\"').replace(/\\n/g,\"\\\\n\"),'\"'):e)}},function(e,t,n){\"use strict\";n.r(t),t.default=\"data:application/vnd.ms-fontobject;base64,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\"},function(e,t,n){\"use strict\";n.r(t),t.default=\"data:font/woff;base64,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PAE55eh8gAAAAQAAAAEAANeJaL1fDzz1AAsTiAAAAADbtbtrAAAAANtk32z/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNGU4ZGJhY1JlZ3VsYXJpY29uZm9udC12dWUtNGU4ZGJhY2ljb25mb250LXZ1ZS00ZThkYmFjVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNGU4ZGJhY0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANABlADgAZABiAGEAYwBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANABlADgAZABiAGEAYwBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADQAZQA4AGQAYgBhAGMAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANABlADgAZABiAGEAYwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(e,t,n){\"use strict\";n.r(t),t.default=\"data:font/ttf;base64,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AAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNGU4ZGJhY1JlZ3VsYXJpY29uZm9udC12dWUtNGU4ZGJhY2ljb25mb250LXZ1ZS00ZThkYmFjVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNGU4ZGJhY0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANABlADgAZABiAGEAYwBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANABlADgAZABiAGEAYwBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADQAZQA4AGQAYgBhAGMAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANABlADgAZABiAGEAYwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(e,t,n){\"use strict\";n.r(t),t.default=\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlLTRlOGRiYWMiIGhvcml6LWFkdi14PSI1MDAwIj48Zm9udC1mYWNlIGZvbnQtZmFtaWx5PSJpY29uZm9udC12dWUtNGU4ZGJhYyIgZm9udC13ZWlnaHQ9IjQwMCIgZm9udC1zdHJldGNoPSJub3JtYWwiIHVuaXRzLXBlci1lbT0iNTAwMCIgcGFub3NlLTE9IjIgMCA1IDMgMCAwIDAgMCAwIDAiIGFzY2VudD0iNTAwMCIgZGVzY2VudD0iMCIgeC1oZWlnaHQ9IjAiIGJib3g9Ii0zMiAwIDUwMTEgNTAwMCIgdW5kZXJsaW5lLXRoaWNrbmVzcz0iMCIgdW5kZXJsaW5lLXBvc2l0aW9uPSI1MCIgdW5pY29kZS1yYW5nZT0iVStlYTAxLWVhMTIiIC8+PG1pc3NpbmctZ2x5cGggaG9yaXotYWR2LXg9IjAiICAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1sZWZ0LWRvdWJsZSIgdW5pY29kZT0iJiN4ZWEwMTsiIGQ9Ik0zNzUwIDM5MDYgbC0xNDA2IC0xNDA2IGwxNDA2IC0xNDA2IGwwIDMxMiBsLTEwOTQgMTA5NCBsMTA5NCAxMDk0IGwwIDMxMiBaTTIzNDQgMzkwNiBsLTE0MDYgLTE0MDYgbDE0MDYgLTE0MDYgbDAgMzEyIGwtMTA5NCAxMDk0IGwxMDk0IDEwOTQgbDAgMzEyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LWxlZnQiIHVuaWNvZGU9IiYjeGVhMDI7IiBkPSJNMTU2MyAyNTAwIGwxODc1IC0xODc1IGwwIC0zMTIgbC0yMTg4IDIxODcgbDIxODggMjE4OCBsMCAtMzEzIGwtMTg3NSAtMTg3NSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1yaWdodC1kb3VibGUiIHVuaWNvZGU9IiYjeGVhMDM7IiBkPSJNMTI1MCAxMDk0IGwxNDA2IDE0MDYgbC0xNDA2IDE0MDYgbDAgLTMxMiBsMTA5NCAtMTA5NCBsLTEwOTQgLTEwOTQgbDAgLTMxMiBaTTI2NTYgMTA5NCBsMTQwNyAxNDA2IGwtMTQwNyAxNDA2IGwwIC0zMTIgbDEwOTQgLTEwOTQgbC0xMDk0IC0xMDk0IGwwIC0zMTIgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctcmlnaHQiIHVuaWNvZGU9IiYjeGVhMDQ7IiBkPSJNMzQzOCAyNTAwIGwtMTg3NSAxODc1IGwwIDMxMyBsMjE4NyAtMjE4OCBsLTIxODcgLTIxODcgbDAgMzEyIGwxODc1IDE4NzUgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYnJlYWRjcnVtYiIgdW5pY29kZT0iJiN4ZWEwNTsiIGQ9Ik0xNDggNTAwMCBsLTE0OCAtODUgbDEzOTQgLTI0MTUgbC0xMzk0IC0yNDE1IGwxNDggLTg1IGwxNDQzIDI1MDAgbC0xNDQzIDI1MDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY2hlY2ttYXJrIiB1bmljb2RlPSImI3hlYTA2OyIgZD0iTTQwNDUgMzk3MSBsLTIwNjEgLTIwNjEgbC0xMDI5IDEwMjkgbC00NDIgLTQ0MSBsMTQ3MSAtMTQ3MSBsMjUwMyAyNTAyIGwtNDQyIDQ0MiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJjbG9zZSIgdW5pY29kZT0iJiN4ZWEwNzsiIGQ9Ik00Mzc1IDExNTYgbC01MzEgLTUzMSBsLTEzNDQgMTM0NCBsLTEzNDQgLTEzNDQgbC01MzEgNTMxIGwxMzQ0IDEzNDQgbC0xMzQ0IDEzNDQgbDUzMSA1MzEgbDEzNDQgLTEzNDQgbDEzNDQgMTM0NCBsNTMxIC01MzEgbC0xMzQ0IC0xMzQ0IGwxMzQ0IC0xMzQ0IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNvbmZpcm0iIHVuaWNvZGU9IiYjeGVhMDg7IiBkPSJNMjY1NiA0ODQ0IHEtMTAxIDAgLTE4MCAtNTcgcS03NCAtNTIgLTEwOSAtMTM4IHEtMzUgLTg2IC0xOSAtMTc1IHExOCAtOTYgOTAgLTE2NyBsMTQ5NSAtMTQ5NCBsLTM2MTYgMCBxLTc3IDEgLTEzOSAtMjYgcS01OCAtMjQgLTk5IC03MCBxLTM5IC00NCAtNTkgLTEwMSBxLTIwIC01NiAtMjAgLTExNiBxMCAtNjAgMjAgLTExNiBxMjAgLTU3IDU5IC0xMDEgcTQxIC00NiA5OSAtNzAgcTYyIC0yNyAxMzkgLTI1IGwzNjE2IDAgbC0xNDk1IC0xNDk1IHEtNTUgLTUzIC04MSAtMTE2IHEtMjQgLTU5IC0yMSAtMTIxIHEzIC01OCAzMCAtMTEzIHEyNSAtNTQgNjggLTk3IHE0MyAtNDMgOTYgLTY4IHE1NSAtMjYgMTE0IC0yOSBxNjIgLTMgMTIwIDIxIHE2MyAyNSAxMTYgODEgbDIwMjkgMjAyOCBxNTkgNjAgODAgMTQxIHEyMSA4MCAxIDE1OSBxLTIxIDgyIC04MSAxNDIgbC0yMDI5IDIwMjggcS00NCA0NSAtMTAyIDcwIHEtNTggMjUgLTEyMiAyNSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJpbmZvIiB1bmljb2RlPSImI3hlYTA5OyIgZD0iTTI0MjIgNDY4OCBxLTExMSAwIC0yMTMgLTQzIHEtOTggLTQyIC0xNzQgLTExNy41IHEtNzYgLTc1LjUgLTExNyAtMTc0LjUgcS00MyAtMTAxIC00MyAtMjEyLjUgcTAgLTExMS41IDQzIC0yMTIuNSBxNDEgLTk4IDExNyAtMTc0IHE3NiAtNzYgMTc0IC0xMTcgcTEwMiAtNDMgMjEzIC00MyBxMTExIDAgMjEzIDQzIHE5OCA0MSAxNzMuNSAxMTcgcTc1LjUgNzYgMTE3LjUgMTc0IHE0MyAxMDEgNDMgMjEyLjUgcTAgMTExLjUgLTQzIDIxMi41IHEtNDIgOTkgLTExNy41IDE3NC41IHEtNzUuNSA3NS41IC0xNzMuNSAxMTcuNSBxLTEwMiA0MyAtMjEzIDQzIFpNMTU2MyAzMTI1IHEtODYgMCAtMTU4IC00MyBxLTcxIC00MSAtMTEyIC0xMTIgcS00MyAtNzIgLTQzIC0xNTcuNSBxMCAtODUuNSA0MyAtMTU3LjUgcTQxIC03MSAxMTIgLTExMiBxNzIgLTQzIDE1OCAtNDMgbDYyNSAwIGwwIC0xNTYyIGwtNjI1IDAgcS04NiAwIC0xNTggLTQzIHEtNzEgLTQxIC0xMTIgLTExMiBxLTQzIC03MyAtNDMgLTE1OCBxMCAtODUgNDMgLTE1OCBxNDEgLTcxIDExMiAtMTEyIHE3MiAtNDMgMTU4IC00MiBsMTg3NSAwIHE4NSAwIDE1NyA0MiBxNzEgNDEgMTEyIDExMiBxNDMgNzMgNDMgMTU4IHEwIDg1IC00MyAxNTggcS00MSA3MSAtMTEyIDExMiBxLTcyIDQzIC0xNTcgNDMgbC02MjUgMCBsMCAxODc1IHEwIDg1IC00MyAxNTcgcS00MSA3MSAtMTEyIDExMiBxLTczIDQzIC0xNTggNDMgbC05MzcgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtZW51IiB1bmljb2RlPSImI3hlYTBhOyIgZD0iTTYyNSA0Mzc1IGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMjgxMyBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFpNNjI1IDEyNTAgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtb3JlIiB1bmljb2RlPSImI3hlYTBiOyIgZD0iTTc4MSAzMDQ3IHExMTIgMCAyMTMgLTQzIHE5OCAtNDIgMTc0IC0xMTcuNSBxNzYgLTc1LjUgMTE3IC0xNzMuNSBxNDMgLTEwMiA0MyAtMjEzIHEwIC0xMTEgLTQzIC0yMTMgcS00MSAtOTggLTExNyAtMTczLjUgcS03NiAtNzUuNSAtMTc0IC0xMTcuNSBxLTEwMSAtNDMgLTIxMi41IC00MyBxLTExMS41IDAgLTIxMy41IDQzIHEtOTggNDIgLTE3My41IDExNy41IHEtNzUuNSA3NS41IC0xMTcuNSAxNzMuNSBxLTQzIDEwMiAtNDMgMjEzIHEwIDExMSA0MyAyMTMgcTQyIDk4IDExNy41IDE3My41IHE3NS41IDc1LjUgMTczLjUgMTE3LjUgcTEwMiA0MyAyMTMgNDMgWk0yNTAwIDMwNDcgcTExMSAwIDIxMyAtNDMgcTk4IC00MiAxNzMuNSAtMTE3LjUgcTc1LjUgLTc1LjUgMTE3LjUgLTE3My41IHE0MyAtMTAyIDQzIC0yMTMgcTAgLTExMSAtNDMgLTIxMyBxLTQyIC05OCAtMTE3LjUgLTE3My41IHEtNzUuNSAtNzUuNSAtMTczLjUgLTExNy41IHEtMTAyIC00MyAtMjEzIC00MyBxLTExMSAwIC0yMTMgNDMgcS05OCA0MiAtMTczLjUgMTE3LjUgcS03NS41IDc1LjUgLTExNy41IDE3My41IHEtNDMgMTAyIC00MyAyMTMgcTAgMTExIDQzIDIxMyBxNDIgOTggMTE3LjUgMTczLjUgcTc1LjUgNzUuNSAxNzMuNSAxMTcuNSBxMTAyIDQzIDIxMyA0MyBaTTQyMTkgMzA0NyBxMTExIDAgMjEzIC00MyBxOTggLTQyIDE3My41IC0xMTcuNSBxNzUuNSAtNzUuNSAxMTcuNSAtMTczLjUgcTQzIC0xMDIgNDMgLTIxMyBxMCAtMTExIC00MyAtMjEzIHEtNDIgLTk4IC0xMTcuNSAtMTczLjUgcS03NS41IC03NS41IC0xNzMuNSAtMTE3LjUgcS0xMDIgLTQzIC0yMTMuNSAtNDMgcS0xMTEuNSAwIC0yMTIuNSA0MyBxLTk4IDQyIC0xNzQgMTE3LjUgcS03NiA3NS41IC0xMTcgMTczLjUgcS00MyAxMDIgLTQzIDIxMyBxMCAxMTEgNDMgMjEzIHE0MSA5OCAxMTcgMTczLjUgcTc2IDc1LjUgMTc0IDExNy41IHExMDEgNDMgMjEzIDQzIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InBhdXNlIiB1bmljb2RlPSImI3hlYTBjOyIgZD0iTTkzOCA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaTTI4MTMgNDA2MyBsMCAtMzEyNSBsMTI1MCAwIGwwIDMxMjUgbC0xMjUwIDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGxheSIgdW5pY29kZT0iJiN4ZWEwZDsiIGQ9Ik02MjUgNDM3NSBsMzc1MCAtMTg3NSBsLTM3NTAgLTE4NzUgbDAgMzc1MCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJ0cmlhbmdsZS1zIiB1bmljb2RlPSImI3hlYTBlOyIgZD0iTTEyNTAgMzEyNSBsMTI1MCAtMTI1MCBsMTI1MCAxMjQ4IGwtMjUwMCAyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWF3YXkiIHVuaWNvZGU9IiYjeGVhMGY7IiBkPSJNMjE1NiA0OTY5IHEtMzYwIC00NiAtNjk1IC0xOTcgcS0zMjYgLTE0NyAtNjAxIC0zODAgcS0yNzQgLTIzMSAtNDcyIC01MjggcS0yMDIgLTMwMSAtMzA5IC02NDIgcS0xMTAgLTM1MyAtMTEwIC03MjIgcTAgLTQwNiAxMjggLTc4OCBxMTIzIC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTM2OSAwIDcyMiAxMDcgcTM0MiAxMDQgNjQ0IDMwMSBxMjk4IDE5NCA1MzMgNDYzIHEyMzYgMjcwIDM4OSA1OTMgcTE1NiAzMzEgMjEyIDY5MiBxLTE4OCAtMjA0IC00MjMuNSAtMzUxIHEtMjM1LjUgLTE0NyAtNDk4LjUgLTIyNSBxLTI2OSAtODAgLTU0NyAtODAgcS0zMjIgMCAtNjI4IDEwMyBxLTI5NSA5OSAtNTQ4IDI4NiBxLTI1MSAxODQgLTQzNSA0MzUgcS0xODcgMjUzIC0yODYgNTQ4IHEtMTAzIDMwNiAtMTAzIDYyOCBxMCAyOTMgODAgNTY4IHE3OCAyNjkgMjI1LjUgNDk4LjUgcTE0Ny41IDIyOS41IDM1MC41IDQwMi41IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWRuZCIgdW5pY29kZT0iJiN4ZWExMDsiIGQ9Ik0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFpNMTU2MyAyOTY5IGwxODc1IDAgcTkxIDAgMTc4IC0zOCBxODQgLTM3IDE1MCAtMTAzIHE2NiAtNjYgMTAyIC0xNDkgcTM4IC04NyAzOCAtMTc5IHEwIC05MiAtMzggLTE3OSBxLTM2IC04MyAtMTAyIC0xNDkgcS02NiAtNjYgLTE1MCAtMTAzIHEtODcgLTM4IC0xNzggLTM4IGwtMTg3NSAwIHEtOTIgMCAtMTc5IDM4IHEtODQgMzcgLTE1MCAxMDMgcS02NiA2NiAtMTAyIDE0OSBxLTM4IDg3IC0zOCAxNzkgcTAgOTIgMzggMTc5IHEzNiA4MyAxMDIgMTQ5IHE2NiA2NiAxNTAgMTAzIHE4NyAzOCAxNzkgMzggWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtaW52aXNpYmxlIiB1bmljb2RlPSImI3hlYTExOyIgZD0iTTI1MDAgNTAwMCBxLTQwNiAwIC03ODggLTEyOCBxLTM3MCAtMTI0IC02ODYgLTM1NiBxLTMxMyAtMjI5IC01NDIgLTU0MiBxLTIzMiAtMzE2IC0zNTYgLTY4NiBxLTEyOCAtMzgyIC0xMjggLTc4OCBxMCAtNDA2IDEyOCAtNzg4IHExMjQgLTM3MCAzNTYgLTY4NiBxMjI5IC0zMTMgNTQyIC01NDIgcTMxNiAtMjMyIDY4NiAtMzU2IHEzODIgLTEyOCA3ODggLTEyOCBxNDA2IDAgNzg4IDEyOCBxMzcwIDEyNCA2ODYgMzU2IHEzMTMgMjI5IDU0MiA1NDIgcTIzMiAzMTYgMzU2IDY4NiBxMTI4IDM4MiAxMjggNzg4IHEwIDQwNiAtMTI4IDc4OCBxLTEyNCAzNzAgLTM1NiA2ODYgcS0yMjkgMzEzIC01NDIgNTQyIHEtMzE2IDIzMiAtNjg2IDM1NiBxLTM4MiAxMjggLTc4OCAxMjggWk0yNTAwIDQwMDAgcTMxMSAwIDU5MCAtMTE2IHEyNzEgLTExMiA0NzYuNSAtMzE3LjUgcTIwNS41IC0yMDUuNSAzMTcuNSAtNDc2LjUgcTExNiAtMjc5IDExNiAtNTkwIHEwIC0zMTEgLTExNiAtNTkwIHEtMTEyIC0yNzEgLTMxNy41IC00NzYuNSBxLTIwNS41IC0yMDUuNSAtNDc2LjUgLTMxNy41IHEtMjc5IC0xMTYgLTU5MCAtMTE2IHEtMzExIDAgLTU5MCAxMTYgcS0yNzEgMTEyIC00NzYuNSAzMTcuNSBxLTIwNS41IDIwNS41IC0zMTcuNSA0NzYuNSBxLTExNiAyNzkgLTExNiA1OTAgcTAgMzExIDExNiA1OTAgcTExMiAyNzEgMzE3LjUgNDc2LjUgcTIwNS41IDIwNS41IDQ3Ni41IDMxNy41IHEyNzkgMTE2IDU5MCAxMTYgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtb25saW5lIiB1bmljb2RlPSImI3hlYTEyOyIgZD0iTTE1MDAgMTUwMCBsMjAwMCAwIGwwIDIwMDAgbC0yMDAwIDAgbDAgLTIwMDAgWk0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFoiIC8+PC9mb250PjwvZGVmcz48L3N2Zz4=\"},function(e,t,n){var a=n(71);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"7a7fb996\",a,!0,{})},function(e,t,n){\"use strict\";n.r(t);var a=n(6);n(58);\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\na.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"4e8dbac\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),a.VTooltip.options.defaultHtml=!1,t.default=a.VTooltip},function(e,t){e.exports=require(\"core-js/modules/es.string.replace\")},function(e,t,n){\"use strict\";n(4),n(11),n(10),n(23);t.a=function(e){return Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,e||5)}},function(e,t){e.exports=require(\"core-js/modules/es.array.concat\")},function(e,t){e.exports=require(\"@nextcloud/event-bus\")},function(e,t){e.exports=require(\"@nextcloud/l10n/dist/gettext\")},function(e,t){},function(e,t){e.exports=require(\"core-js/modules/es.symbol\")},function(e,t){e.exports=require(\"core-js/modules/es.string.trim\")},function(e,t){e.exports=require(\"core-js/modules/es.number.constructor\")},function(e,t,n){var a=n(94);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"0d897b1e\",a,!0,{})},function(e,t,n){\"use strict\";n(7),n(30);var a=n(3),o=n.n(a);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.a={before:function(){this.$slots.default&&\"\"!==this.text.trim()||(o.a.util.warn(\"\".concat(this.$options.name,\" cannot be empty and requires a meaningful text content\"),this),this.$destroy(),this.$el.remove())},beforeUpdate:function(){this.text=this.getText()},data:function(){return{text:this.getText()}},computed:{isLongText:function(){return this.text&&this.text.trim().length>20}},methods:{getText:function(){return this.$slots.default?this.$slots.default[0].text.trim():\"\"}}}},function(e,t){e.exports=require(\"core-js/modules/web.url\")},function(e,t,n){\"use strict\";n.r(t);var a={name:\"Popover\",components:{VPopover:n(6).VPopover}},o=(n(70),n(0)),i=n(28),r=n.n(i),s=Object(o.a)(a,(function(){var e=this.$createElement,t=this._self._c||e;return t(\"VPopover\",this._g(this._b({attrs:{\"popover-base-class\":\"popover\",\"popover-wrapper-class\":\"popover__wrapper\",\"popover-arrow-class\":\"popover__arrow\",\"popover-inner-class\":\"popover__inner\"}},\"VPopover\",this.$attrs,!1),this.$listeners),[this._t(\"trigger\"),this._v(\" \"),t(\"template\",{slot:\"popover\"},[this._t(\"default\")],2)],2)}),[],!1,null,null,null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=c},function(e,t,n){\"use strict\";var a=n(5);t.a={methods:{n:a.a,t:a.b}}},function(e,t){e.exports=require(\"core-js/modules/es.symbol.description\")},function(e,t,n){var a=n(99);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"7d4b1d60\",a,!0,{})},function(e,t,n){\"use strict\";n(13),n(4),n(14),n(15),n(34);var a=n(33),o=(n(7),function(e,t){for(var n=e.$parent;n;){if(n.$options.name===t)return n;n=n.$parent}});t.a={mixins:[a.a],props:{icon:{type:String,default:\"\"},title:{type:String,default:\"\"},closeAfterClick:{type:Boolean,default:!1},ariaLabel:{type:String,default:\"\"}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(e){return!1}}},methods:{onClick:function(e){if(this.$emit(\"click\",e),this.closeAfterClick){var t=o(this,\"Actions\");t&&t.closeMenu&&t.closeMenu()}}}}},function(e,t){e.exports=require(\"core-js/modules/es.array.slice\")},function(e,t){e.exports=require(\"@nextcloud/axios\")},function(e,t){e.exports=require(\"@nextcloud/auth\")},function(e,t,n){\"use strict\";n.r(t);var a=n(3),o=new(n.n(a).a)({data:function(){return{isMobile:!1}},watch:{isMobile:function(e){this.$emit(\"changed\",e)}},created:function(){window.addEventListener(\"resize\",this.handleWindowResize),this.handleWindowResize()},beforeDestroy:function(){window.removeEventListener(\"resize\",this.handleWindowResize)},methods:{handleWindowResize:function(){this.isMobile=document.documentElement.clientWidth<1024}}});t.default={data:function(){return{isMobile:!1}},mounted:function(){o.$on(\"changed\",this.onIsMobileChanged),this.isMobile=o.isMobile},beforeDestroy:function(){o.$off(\"changed\",this.onIsMobileChanged)},methods:{onIsMobileChanged:function(e){this.isMobile=e}}}},function(e,t,n){\"use strict\";n(25),n(8),n(89),n(7);var a=n(3),o=n.n(a);t.a=function(e,t,n){if(void 0!==e)for(var a=e.length-1;a>=0;a--){var i=e[a],r=!i.componentOptions&&i.tag&&-1===t.indexOf(i.tag),s=!!i.componentOptions&&\"string\"==typeof i.componentOptions.tag,c=s&&-1===t.indexOf(i.componentOptions.tag);(r||!s||c)&&((r||c)&&o.a.util.warn(\"\".concat(r?i.tag:i.componentOptions.tag,\" is not allowed inside the \").concat(n.$options.name,\" component\"),n),e.splice(a,1))}}},function(e,t){e.exports=require(\"core-js/modules/es.symbol.iterator\")},function(e,t){e.exports=require(\"striptags\")},function(e,t,n){var a=n(113);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"2c4a49e8\",a,!0,{})},function(e,t,n){var a=n(115);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"482a1b4c\",a,!0,{})},function(e,t,n){var a=n(117);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"93093140\",a,!0,{})},function(e,t){e.exports=require(\"core-js/modules/es.array.filter\")},function(e,t){e.exports=require(\"core-js/modules/es.array.from\")},function(e,t){e.exports=require(\"v-click-outside\")},function(e,t,n){\"use strict\";n.d(t,\"a\",(function(){return a.default})),n.d(t,\"b\",(function(){return o.default})),n.d(t,\"c\",(function(){return i.default})),n.d(t,\"d\",(function(){return r.default})),n.d(t,\"e\",(function(){return p}));var a=n(73),o=n(74),i=n(43),r=n(63),s=(n(4),n(61),n(62),n(41)),c=n.n(s),l=n(12),d=n(80),m=n(42);function u(e,t,n,a,o,i,r){try{var s=e[i](r),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(a,o)}\n/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */var p={data:function(){return{hasStatus:!1,userStatus:{status:null,message:null,icon:null}}},methods:{fetchUserStatus:function(e){var t,n=this;return(t=regeneratorRuntime.mark((function t(){var a,o,i,r,s,u,p,g,f;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=Object(d.getCapabilities)(),Object.prototype.hasOwnProperty.call(a,\"user_status\")&&a.user_status.enabled){t.next=3;break}return t.abrupt(\"return\");case 3:if(Object(m.getCurrentUser)()){t.next=5;break}return t.abrupt(\"return\");case 5:return t.prev=5,t.next=8,c.a.get(Object(l.generateOcsUrl)(\"apps/user_status/api/v1\",2)+\"statuses/\".concat(encodeURIComponent(e)));case 8:o=t.sent,i=o.data,r=i.ocs.data,s=r.status,u=r.message,p=r.icon,n.userStatus.status=s,n.userStatus.message=u||\"\",n.userStatus.icon=p||\"\",n.hasStatus=!0,t.next=22;break;case 17:if(t.prev=17,t.t0=t.catch(5),404!==t.t0.response.status||0!==(null===(g=t.t0.response.data.ocs)||void 0===g||null===(f=g.data)||void 0===f?void 0:f.length)){t.next=21;break}return t.abrupt(\"return\");case 21:console.error(t.t0);case 22:case\"end\":return t.stop()}}),t,null,[[5,17]])})),function(){var e=this,n=arguments;return new Promise((function(a,o){var i=t.apply(e,n);function r(e){u(i,a,o,r,s,\"next\",e)}function s(e){u(i,a,o,r,s,\"throw\",e)}r(void 0)}))})()}}};\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */},function(e,t){},function(e,t,n){var a=n(125);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"1752f12b\",a,!0,{})},function(e,t,n){\"use strict\";n.r(t);var a=n(67);\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=a.a},function(e,t){e.exports=require(\"core-js/modules/es.string.starts-with\")},function(e,t,n){var a=n(59);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"941c791e\",a,!0,{})},function(e,t,n){(t=n(1)(!1)).push([e.i,\".vue-tooltip[data-v-4e8dbac]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-4e8dbac][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-4e8dbac][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-4e8dbac][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-4e8dbac][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-4e8dbac][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-4e8dbac][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-4e8dbac] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-4e8dbac] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\"]),e.exports=t},function(e,t){e.exports=require(\"core-js/modules/es.array.join\")},function(e,t){e.exports=require(\"core-js/modules/es.promise\")},function(e,t){e.exports=require(\"regenerator-runtime/runtime\")},function(e,t,n){\"use strict\";n.r(t),n.d(t,\"USERID_REGEX\",(function(){return p})),n.d(t,\"USERID_REGEX_WITH_SPACE\",(function(){return g}));n(90),n(60),n(9),n(91),n(92),n(11),n(10),n(23),n(76),n(57);var a=n(3),o=n.n(a),i=n(46),r=n.n(i),s=n(65),c=n.n(s),l=(n(8),n(12)),d={name:\"MentionBubble\",props:{id:{type:String,required:!0},label:{type:String,required:!0},icon:{type:String,required:!0},source:{type:String,required:!0},primary:{type:Boolean,default:!1}},computed:{avatarUrl:function(){return this.id&&\"users\"===this.source?this.getAvatarUrl(this.id,44):null},mentionText:function(){return-1===this.id.indexOf(\" \")?\"@\".concat(this.id):'@\"'.concat(this.id,'\"')}},methods:{getAvatarUrl:function(e,t){return Object(l.generateUrl)(\"/avatar/{user}/{size}\",{user:e,size:t})}}},m=(n(93),n(0)),u=Object(m.a)(d,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"span\",{staticClass:\"mention-bubble\",class:{\"mention-bubble--primary\":e.primary},attrs:{contenteditable:\"false\"}},[n(\"span\",{staticClass:\"mention-bubble__wrapper\"},[n(\"span\",{staticClass:\"mention-bubble__content\"},[n(\"span\",{staticClass:\"mention-bubble__icon\",class:[e.icon,\"mention-bubble__icon--\"+(e.avatarUrl?\"with-avatar\":\"\")],style:e.avatarUrl?{backgroundImage:\"url(\"+e.avatarUrl+\")\"}:null}),e._v(\" \"),n(\"span\",{staticClass:\"mention-bubble__title\",attrs:{role:\"heading\",title:e.label}})]),e._v(\" \"),n(\"span\",{staticClass:\"mention-bubble__select\",attrs:{role:\"none\"}},[e._v(e._s(e.mentionText))])])])}),[],!1,null,\"724f9d58\",null).exports,p=new RegExp(\"\".concat(\"(?:^|\\\\s)\",\"(@[a-zA-Z0-9_.@\\\\-']+)(\").concat(\"(?:[^a-z]|$)\",\")\"),\"gi\"),g=new RegExp(\"\".concat(\"(?:^|\\\\s)\",'(@\"[a-zA-Z0-9 _.@\\\\-\\']+\")(').concat(\"(?:[^a-z]|$)\",\")\"),\"gi\");t.default={props:{userData:{type:Object,default:function(){return{}}}},methods:{renderContent:function(e){var t=this;return c()(e).split(p).map((function(e){return e.split(g)})).flat().map((function(e){if(!e.startsWith(\"@\"))return e;var n=e.replace(/[@\"]/gi,\"\");return\" \"+t.genSelectTemplate(n)})).join(\"\").replace(/\\n/gm,\"<br>\")},parseContent:function(e){var t=e.replace(/<br>/g,\"\\n\");return t=(t=t.replace(/ /g,\" \")).replace(/<\\/div>/gim,\"\\n\"),t=r()(t,\"<div>\"),t=r()(t)},genSelectTemplate:function(e){var t=this.userData[e];return t||(t={id:e,label:e,icon:\"icon-user\",source:\"users\"}),this.renderComponentHtml(t,u).replace(/[\\n\\t]/g,\"\")},renderComponentHtml:function(e,t){var n=new(o.a.extend(t))({propsData:e}),a=document.createElement(\"div\"),i=document.createElement(\"div\");a.style.display=\"none\",a.appendChild(i),document.body.appendChild(a),n.$mount(i);var r=a.innerHTML;return n.$destroy(),a.remove(),r}}}},function(e,t){},function(e,t){e.exports=require(\"escape-html\")},function(e,t,n){\"use strict\";n(25);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nfunction a(e,t,n){this.r=e,this.g=t,this.b=n}function o(e,t,n){var o=[];o.push(t);for(var i=function(e,t){var n=new Array(3);return n[0]=(t[1].r-t[0].r)/e,n[1]=(t[1].g-t[0].g)/e,n[2]=(t[1].b-t[0].b)/e,n}(e,[t,n]),r=1;r<e;r++){var s=parseInt(t.r+i[0]*r,10),c=parseInt(t.g+i[1]*r,10),l=parseInt(t.b+i[2]*r,10);o.push(new a(s,c,l))}return o}t.a=function(e){e||(e=6);var t=new a(182,70,157),n=new a(221,203,85),i=new a(0,130,201),r=o(e,t,n),s=o(e,n,i),c=o(e,i,t);return r.concat(s).concat(c)}},function(e,t,n){\"use strict\";n(29),n(37),n(45),n(25),n(50),n(51),n(8),n(13),n(40),n(7),n(4),n(10),n(14),n(15);var a=n(22),o=n(24),i=n(44),r=n(5),s=n(35);function c(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if(\"string\"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===n&&e.constructor&&(n=e.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(e);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}var d=[\"ActionButton\",\"ActionCheckbox\",\"ActionInput\",\"ActionLink\",\"ActionRadio\",\"ActionRouter\",\"ActionSeparator\",\"ActionText\",\"ActionTextEditable\"],m={name:\"Actions\",directives:{tooltip:a.default},components:{Popover:s.default},props:{open:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},menuTitle:{type:String,default:null},primary:{type:Boolean,default:!1},defaultIcon:{type:String,default:\"action-item__menutoggle--default-icon\"},ariaLabel:{type:String,default:Object(r.b)(\"Actions\")},placement:{type:String,default:\"bottom\"},boundariesElement:{type:Element,default:function(){return document.querySelector(\"body\")}},container:{type:String,default:\"body\"}},data:function(){return{actions:[],opened:this.open,focusIndex:0,randomId:\"menu-\"+Object(o.a)(),children:this.$children}},computed:{hasMultipleActions:function(){return this.actions.length>1},isValidSingleAction:function(){return 1===this.actions.length&&null!==this.firstActionElement},firstActionVNode:function(){return this.actions[0]},firstAction:function(){return this.children[0]?this.children[0]:{}},firstActionBinding:function(){if(this.firstActionVNode&&this.firstActionVNode.componentOptions){var e=this.firstActionVNode.componentOptions.tag;if(\"ActionLink\"===e)return{is:\"a\",href:this.firstAction.href,target:this.firstAction.target,\"aria-label\":this.firstAction.ariaLabel};if(\"ActionRouter\"===e)return{is:\"router-link\",to:this.firstAction.to,exact:this.firstAction.exact,\"aria-label\":this.firstAction.ariaLabel};if(\"ActionButton\"===e)return{is:\"button\",\"aria-label\":this.firstAction.ariaLabel}}return null},firstActionEvent:function(){return this.firstActionVNode&&this.firstActionVNode.componentOptions&&this.firstActionVNode.componentOptions.listeners&&this.firstActionVNode.componentOptions.listeners.click},firstActionEventBinding:function(){return this.firstActionEvent?\"click\":null},firstActionClass:function(){var e=this.firstActionVNode&&this.firstActionVNode.data.staticClass,t=this.firstActionVNode&&this.firstActionVNode.data.class;return\"\".concat(e,\" \").concat(t)}},watch:{open:function(e){e!==this.opened&&(this.opened=e)}},beforeMount:function(){this.initActions(),Object(i.a)(this.$slots.default,d,this)},beforeUpdate:function(){this.initActions(),Object(i.a)(this.$slots.default,d,this)},methods:{openMenu:function(e){this.opened||(this.opened=!0,this.$emit(\"update:open\",!0),this.$emit(\"open\"),this.onOpen(e))},closeMenu:function(e){this.opened&&(this.opened=!1,this.$emit(\"update:open\",!1),this.$emit(\"close\"),this.opened=!1,this.focusIndex=0,this.$refs.menuButton.focus())},onOpen:function(e){var t=this;this.$nextTick((function(){t.focusFirstAction(e)}))},onMouseFocusAction:function(e){if(document.activeElement!==e.target){var t=e.target.closest(\"li\");if(t){var n=t.querySelector(\".focusable\");if(n){var a=c(this.$refs.menu.querySelectorAll(\".focusable\")).indexOf(n);a>-1&&(this.focusIndex=a,this.focusAction())}}}},removeCurrentActive:function(){var e=this.$refs.menu.querySelector(\"li.active\");e&&e.classList.remove(\"active\")},focusAction:function(){var e=this.$refs.menu.querySelectorAll(\".focusable\")[this.focusIndex];if(e){this.removeCurrentActive();var t=e.closest(\"li.action\");e.focus(),t&&t.classList.add(\"active\")}},focusPreviousAction:function(e){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction:function(e){if(this.opened){var t=this.$refs.menu.querySelectorAll(\".focusable\").length-1;this.focusIndex===t?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction:function(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=0,this.focusAction())},focusLastAction:function(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=this.$el.querySelectorAll(\".focusable\").length-1,this.focusAction())},preventIfEvent:function(e){e&&(e.preventDefault(),e.stopPropagation())},execFirstAction:function(e){this.firstActionEvent&&this.firstActionEvent(e)},initActions:function(){this.actions=(this.$slots.default||[]).filter((function(e){return!!e&&!!e.componentOptions}))}}},u=(n(98),n(0)),p=n(54),g=n.n(p),f=Object(u.a)(m,(function(){var e,t=this,n=t.$createElement,a=t._self._c||n;return t.isValidSingleAction&&!t.forceMenu?a(\"element\",t._b({directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:t.firstAction.text,expression:\"firstAction.text\",modifiers:{auto:!0}}],staticClass:\"action-item action-item--single\",class:[t.firstAction.icon,t.firstActionClass],attrs:{rel:\"noreferrer noopener\"},on:t._d({},[t.firstActionEventBinding,t.execFirstAction])},\"element\",t.firstActionBinding,!1),[a(\"span\",{attrs:{\"aria-hidden\":!0,hidden:\"\"}},[t._t(\"default\")],2)]):a(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasMultipleActions||t.forceMenu,expression:\"hasMultipleActions || forceMenu\"}],staticClass:\"action-item\",class:{\"action-item--open\":t.opened}},[a(\"Popover\",{attrs:{delay:0,\"handle-resize\":!0,open:t.opened,placement:t.placement,\"boundaries-element\":t.boundariesElement,container:t.container},on:{\"update:open\":function(e){t.opened=e},show:t.openMenu,\"apply-show\":t.onOpen,hide:t.closeMenu}},[a(\"button\",{ref:\"menuButton\",staticClass:\"icon action-item__menutoggle\",class:(e={},e[t.defaultIcon]=!0,e[\"action-item__menutoggle--with-title\"]=t.menuTitle,e[\"action-item__menutoggle--primary\"]=t.primary,e),attrs:{slot:\"trigger\",\"aria-label\":t.ariaLabel,\"aria-haspopup\":\"true\",\"aria-controls\":t.randomId,\"aria-expanded\":t.opened},slot:\"trigger\"},[t._v(\"\\n\\t\\t\\t\"+t._s(t.menuTitle)+\"\\n\\t\\t\")]),t._v(\" \"),a(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.opened,expression:\"opened\"}],ref:\"menu\",class:{open:t.opened},attrs:{tabindex:\"-1\"},on:{keydown:[function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"up\",38,e.key,[\"Up\",\"ArrowUp\"])||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.focusPreviousAction(e)},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"down\",40,e.key,[\"Down\",\"ArrowDown\"])||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.focusNextAction(e)},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"tab\",9,e.key,\"Tab\")||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.focusNextAction(e)},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"tab\",9,e.key,\"Tab\")?null:e.shiftKey?e.ctrlKey||e.altKey||e.metaKey?null:t.focusPreviousAction(e):null},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"page-up\",void 0,e.key,void 0)||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.focusFirstAction(e)},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"page-down\",void 0,e.key,void 0)||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:t.focusLastAction(e)},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"esc\",27,e.key,[\"Esc\",\"Escape\"])||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.closeMenu(e))}],mousemove:t.onMouseFocusAction}},[a(\"ul\",{attrs:{id:t.randomId,tabindex:\"-1\"}},[t.opened?[t._t(\"default\")]:t._e()],2)])])],1)}),[],!1,null,\"69f4d5ed\",null);\"function\"==typeof g.a&&g()(f);t.a=f.exports},function(e,t,n){var a=n(136);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"ec11ce7c\",a,!0,{})},function(e,t,n){\"use strict\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.a=function(e){e.mounted?Array.isArray(e.mounted)||(e.mounted=[e.mounted]):e.mounted=[],e.mounted.push((function(){this.$el.setAttribute(\"data-v-\".concat(\"4e8dbac\"),\"\")}))}},function(e,t,n){\"use strict\";var a=n(21);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".popover{z-index:100000;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.popover__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius);background:var(--color-main-background)}.popover__arrow{position:absolute;z-index:1;width:0;height:0;margin:10px;border-style:solid;border-color:var(--color-main-background)}.popover[x-placement^='top']{margin-bottom:10px}.popover[x-placement^='top'] .popover__arrow{bottom:-10px;left:calc(50% - $arrow-width);margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent !important;border-bottom-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='bottom']{margin-top:10px}.popover[x-placement^='bottom'] .popover__arrow{top:-10px;left:calc(50% - $arrow-width);margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent !important;border-right-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='right']{margin-left:10px}.popover[x-placement^='right'] .popover__arrow{top:calc(50% - $arrow-width);left:-10px;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent !important;border-bottom-color:transparent !important;border-left-color:transparent !important}.popover[x-placement^='left']{margin-right:10px}.popover[x-placement^='left'] .popover__arrow{top:calc(50% - $arrow-width);right:-10px;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent !important;border-right-color:transparent !important;border-bottom-color:transparent !important}.popover[aria-hidden='true']{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.popover[aria-hidden='false']{visibility:visible;transition:opacity var(--animation-quick);opacity:1}\\n\",\"\"]),e.exports=t},function(e,t){},function(e,t,n){\"use strict\";n.r(t);n(29),n(37),n(45),n(51),n(13),n(40),n(7),n(4),n(10),n(14),n(15);function a(e,t){var n;if(\"undefined\"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if(\"string\"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===n&&e.constructor&&(n=e.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(e);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o(e,t)}(e))||t&&e&&\"number\"==typeof e.length){n&&(e=n);var a=0,i=function(){};return{s:i,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:i}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var r,s=!0,c=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return s=e.done,e},e:function(e){c=!0,r=e},f:function(){try{s||null==n.return||n.return()}finally{if(c)throw r}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}\n/**\n * @copyright Copyright (c) 2020 Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @author Georg Ehrke <georg-nextcloud@ehrke.email>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default={props:{excludeClickOutsideClasses:{type:String|Array,default:function(){return[]}}},methods:{clickOutsideMiddleware:function(e){var t=Array.isArray(this.excludeClickOutsideClasses)?this.excludeClickOutsideClasses:[this.excludeClickOutsideClasses];return 0===t.length||!this.hasNodeOrAnyParentClass(e.target,t)},hasNodeOrAnyParentClass:function(e,t){var n,o=a(t);try{for(o.s();!(n=o.n()).done;){var i=n.value;if(e.classList.contains(i))return!0}}catch(e){o.e(e)}finally{o.f()}return!!e.parentElement&&this.hasNodeOrAnyParentClass(e.parentElement,t)}}}},function(e,t,n){\"use strict\";n.r(t),\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default={data:function(){return{isFullscreen:this._isFullscreen()}},beforeMount:function(){window.addEventListener(\"resize\",this._onResize)},beforeDestroy:function(){window.removeEventListener(\"resize\",this._onResize)},methods:{_onResize:function(){this.isFullscreen=this._isFullscreen()},_isFullscreen:function(){return window.outerHeight===screen.height}}}},function(e,t,n){\"use strict\";n(8);t.a=function(e,t){for(var n=[],a=0,o=e.toLowerCase().indexOf(t.toLowerCase(),a),i=0;o>-1&&i<e.length;)a=o+t.length,n.push({start:o,end:a}),o=e.toLowerCase().indexOf(t.toLowerCase(),o+1),i++;return n}},function(e,t){e.exports=require(\"core-js/modules/es.string.split\")},function(e,t,n){\"use strict\";n.r(t);n(8),n(13),n(4),n(10),n(14),n(15),n(34);var a={name:\"PopoverMenuItem\",props:{item:{type:Object,required:!0,default:function(){return{key:\"nextcloud-link\",href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}},validator:function(e){return!e.input||-1!==[\"text\",\"checkbox\"].indexOf(e.input)}}},computed:{key:function(){return this.item.key?this.item.key:Math.round(16*Math.random()*1e6).toString(16)},iconIsUrl:function(){try{return new URL(this.item.icon),!0}catch(e){return!1}}},methods:{action:function(e){this.item.action&&this.item.action(e)}}},o=(n(112),n(114),n(0)),i={name:\"PopoverMenu\",components:{PopoverMenuItem:Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",[e.item.href?n(\"a\",{staticClass:\"focusable\",attrs:{href:e.item.href?e.item.href:\"#\",target:e.item.target?e.item.target:\"\",download:e.item.download,rel:\"noreferrer noopener\"},on:{click:e.action}},[e.iconIsUrl?n(\"img\",{attrs:{src:e.item.icon}}):n(\"span\",{class:e.item.icon}),e._v(\" \"),e.item.text&&e.item.longtext?n(\"p\",[n(\"strong\",{staticClass:\"menuitem-text\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.item.text)+\"\\n\\t\\t\\t\")]),n(\"br\"),e._v(\" \"),n(\"span\",{staticClass:\"menuitem-text-detail\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.item.longtext)+\"\\n\\t\\t\\t\")])]):e.item.text?n(\"span\",[e._v(\"\\n\\t\\t\\t\"+e._s(e.item.text)+\"\\n\\t\\t\")]):e.item.longtext?n(\"p\",[e._v(\"\\n\\t\\t\\t\"+e._s(e.item.longtext)+\"\\n\\t\\t\")]):e._e()]):e.item.input?n(\"span\",{staticClass:\"menuitem\",class:{active:e.item.active}},[\"checkbox\"!==e.item.input?n(\"span\",{class:e.item.icon}):e._e(),e._v(\" \"),\"text\"===e.item.input?n(\"form\",{class:e.item.input,on:{submit:function(t){return t.preventDefault(),e.item.action(t)}}},[n(\"input\",{attrs:{type:e.item.input,placeholder:e.item.text,required:\"\"},domProps:{value:e.item.value}}),e._v(\" \"),n(\"input\",{staticClass:\"icon-confirm\",attrs:{type:\"submit\",value:\"\"}})]):[\"checkbox\"===e.item.input?n(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:e.item.model,expression:\"item.model\"}],class:e.item.input,attrs:{id:e.key,type:\"checkbox\"},domProps:{checked:Array.isArray(e.item.model)?e._i(e.item.model,null)>-1:e.item.model},on:{change:[function(t){var n=e.item.model,a=t.target,o=!!a.checked;if(Array.isArray(n)){var i=e._i(n,null);a.checked?i<0&&e.$set(e.item,\"model\",n.concat([null])):i>-1&&e.$set(e.item,\"model\",n.slice(0,i).concat(n.slice(i+1)))}else e.$set(e.item,\"model\",o)},e.item.action]}}):\"radio\"===e.item.input?n(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:e.item.model,expression:\"item.model\"}],class:e.item.input,attrs:{id:e.key,type:\"radio\"},domProps:{checked:e._q(e.item.model,null)},on:{change:[function(t){return e.$set(e.item,\"model\",null)},e.item.action]}}):n(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:e.item.model,expression:\"item.model\"}],class:e.item.input,attrs:{id:e.key,type:e.item.input},domProps:{value:e.item.model},on:{change:e.item.action,input:function(t){t.target.composing||e.$set(e.item,\"model\",t.target.value)}}}),e._v(\" \"),n(\"label\",{attrs:{for:e.key},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.item.action(t)}}},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.item.text)+\"\\n\\t\\t\\t\")])]],2):e.item.action?n(\"button\",{staticClass:\"menuitem focusable\",class:{active:e.item.active},attrs:{disabled:e.item.disabled},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.item.action(t)}}},[n(\"span\",{class:e.item.icon}),e._v(\" \"),e.item.text&&e.item.longtext?n(\"p\",[n(\"strong\",{staticClass:\"menuitem-text\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.item.text)+\"\\n\\t\\t\\t\")]),n(\"br\"),e._v(\" \"),n(\"span\",{staticClass:\"menuitem-text-detail\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.item.longtext)+\"\\n\\t\\t\\t\")])]):e.item.text?n(\"span\",[e._v(\"\\n\\t\\t\\t\"+e._s(e.item.text)+\"\\n\\t\\t\")]):e.item.longtext?n(\"p\",[e._v(\"\\n\\t\\t\\t\"+e._s(e.item.longtext)+\"\\n\\t\\t\")]):e._e()]):n(\"span\",{staticClass:\"menuitem\",class:{active:e.item.active}},[n(\"span\",{class:e.item.icon}),e._v(\" \"),e.item.text&&e.item.longtext?n(\"p\",[n(\"strong\",{staticClass:\"menuitem-text\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.item.text)+\"\\n\\t\\t\\t\")]),n(\"br\"),e._v(\" \"),n(\"span\",{staticClass:\"menuitem-text-detail\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.item.longtext)+\"\\n\\t\\t\\t\")])]):e.item.text?n(\"span\",[e._v(\"\\n\\t\\t\\t\"+e._s(e.item.text)+\"\\n\\t\\t\")]):e.item.longtext?n(\"p\",[e._v(\"\\n\\t\\t\\t\"+e._s(e.item.longtext)+\"\\n\\t\\t\")]):e._e()])])}),[],!1,null,\"3ad7b73b\",null).exports},props:{menu:{type:Array,default:function(){return[{href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}]},required:!0}}},r=(n(116),n(64)),s=n.n(r),c=Object(o.a)(i,(function(){var e=this.$createElement,t=this._self._c||e;return t(\"ul\",this._l(this.menu,(function(e,n){return t(\"PopoverMenuItem\",{key:n,attrs:{item:e}})})),1)}),[],!1,null,\"81c2afc0\",null);\"function\"==typeof s.a&&s()(c);var l=c.exports;\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=l},function(e,t,n){\"use strict\";n.r(t);n(29),n(50),n(87),n(9),n(100),n(132),n(133),n(121),n(11),n(118),n(88);var a=n(75);function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var s={name:\"Highlight\",props:{text:{type:String,default:\"\"},search:{type:String,default:\"\"},highlight:{type:Array,default:function(){return[]}}},computed:{ranges:function(){var e=this,t=[];return this.search||0!==this.highlight.length?(t=this.highlight.length>0?this.highlight:Object(a.a)(this.text,this.search),t.reduce((function(t,n){return n.start<e.text.length&&n.end>0&&t.push({start:n.start<0?0:n.start,end:n.end>e.text.length?e.text.length:n.end}),t}),[])):t},chunks:function(){if(0===this.ranges.length)return[{start:0,end:this.text.length,highlight:!1,text:this.text}];for(var e=[],t=0,n=0;t<this.text.length;){var a=this.ranges[n];a.start!==t?(e.push({start:t,end:a.start,highlight:!1,text:this.text.substr(t,a.start-t)}),t=a.start):(e.push(i(i({},a),{},{highlight:!0,text:this.text.substr(a.start,a.end-a.start)})),n++,t=a.end,n>=this.ranges.length&&t<this.text.length&&(e.push({start:t,end:this.text.length,highlight:!1,text:this.text.substr(t,this.text.length-t)}),t=this.text.length))}return e}},render:function(e){return this.ranges.length?e(\"span\",{},this.chunks.map((function(t){return t.highlight?e(\"strong\",{},t.text):t.text}))):e(\"span\",{},this.text)}},c=n(0),l=n(86),d=n.n(l),m=Object(c.a)(s,void 0,void 0,!1,null,null,null);\"function\"==typeof d.a&&d()(m);var u=m.exports;\n/**\n * @copyright Copyright (c) 2020 Raimund Schlüßler <raimund.schluessler@mailbox.org>\n *\n * @author Raimund Schlüßler <raimund.schluessler@mailbox.org>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=u},function(e,t,n){\"use strict\";n.r(t);n(25),n(104),n(8),n(60),n(9),n(31),n(4),n(61),n(122),n(123),n(62);var a=n(95),o=n(52),i=n(77),r=n(42),s=n(26),c=n(41),l=n.n(c),d=n(12),m=n(22),u=n(84),p=n(53);function g(e,t,n,a,o,i,r){try{var s=e[i](r),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(a,o)}function f(e){return function(){var t=this,n=arguments;return new Promise((function(a,o){var i=e.apply(t,n);function r(e){g(i,a,o,r,s,\"next\",e)}function s(e){g(i,a,o,r,s,\"throw\",e)}r(void 0)}))}}var A=Object(a.getBuilder)(\"nextcloud\").persist().build();function v(e){var t=A.getItem(\"user-has-avatar.\"+e);return\"string\"==typeof t?Boolean(t):null}function b(e,t){e&&A.setItem(\"user-has-avatar.\"+e,t)}var h={name:\"Avatar\",directives:{tooltip:m.default,ClickOutside:o.directive},components:{PopoverMenu:i.default},mixins:[p.e],props:{url:{type:String,default:void 0},iconClass:{type:String,default:void 0},user:{type:String,default:void 0},showUserStatus:{type:Boolean,default:!0},showUserStatusCompact:{type:Boolean,default:!0},isGuest:{type:Boolean,default:!1},displayName:{type:String,default:void 0},size:{type:Number,default:32},allowPlaceholder:{type:Boolean,default:!0},disableTooltip:{type:Boolean,default:!1},disableMenu:{type:Boolean,default:!1},tooltipMessage:{type:String,default:null},isNoUser:{type:Boolean,default:!1},status:{type:String,default:null,validator:function(e){switch(e){case\"positive\":case\"negative\":case\"neutral\":return!0}return!1}},statusColor:{type:[Number,String],default:null,validator:function(e){return/^([a-f0-9]{3}){1,2}$/i.test(e)}},menuPosition:{type:String,default:\"center\"}},data:function(){return{avatarUrlLoaded:null,avatarSrcSetLoaded:null,userDoesNotExist:!1,isAvatarLoaded:!1,isMenuLoaded:!1,contactsMenuActions:[],contactsMenuOpenState:!1}},computed:{canDisplayUserStatus:function(){return this.showUserStatus&&this.hasStatus&&[\"online\",\"away\",\"dnd\"].includes(this.userStatus.status)},showUserStatusIconOnAvatar:function(){return this.showUserStatus&&this.showUserStatusCompact&&this.hasStatus&&\"dnd\"!==this.userStatus.status&&this.userStatus.icon},getUserIdentifier:function(){return this.isDisplayNameDefined?this.displayName:this.isUserDefined?this.user:\"\"},isUserDefined:function(){return void 0!==this.user},isDisplayNameDefined:function(){return void 0!==this.displayName},isUrlDefined:function(){return void 0!==this.url},hasMenu:function(){var e;return!this.disableMenu&&(this.isMenuLoaded?this.menu.length>0:!(this.user===(null===(e=Object(r.getCurrentUser)())||void 0===e?void 0:e.uid)||this.userDoesNotExist||this.url))},shouldShowPlaceholder:function(){return this.allowPlaceholder&&this.userDoesNotExist},avatarStyle:function(){var e={width:this.size+\"px\",height:this.size+\"px\",lineHeight:this.size+\"px\",fontSize:Math.round(.55*this.size)+\"px\"};if(!this.iconClass&&!this.avatarSrcSetLoaded){var t=Object(u.default)(this.getUserIdentifier);e.backgroundColor=\"rgb(\"+t.r+\", \"+t.g+\", \"+t.b+\")\"}return e},tooltip:function(){return!this.disableTooltip&&(this.tooltipMessage?this.tooltipMessage:this.displayName)},initials:function(){var e;if(this.shouldShowPlaceholder){var t=this.getUserIdentifier,n=t.indexOf(\" \");\"\"===t?e=\"?\":(e=String.fromCodePoint(t.codePointAt(0)),-1!==n&&(e=e.concat(String.fromCodePoint(t.codePointAt(n+1)))))}return e.toUpperCase()},menu:function(){var e,t,n,a=this.contactsMenuActions.map((function(e){return{href:e.hyperlink,icon:e.icon,text:e.title}}));return this.showUserStatus&&(this.userStatus.icon||this.userStatus.message)?[{href:\"#\",icon:\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><text x='0' y='14' font-size='14'>\".concat((e=this.userStatus.icon,t=document.createTextNode(e),n=document.createElement(\"p\"),n.appendChild(t),n.innerHTML),\"</text></svg>\"),text:\"\".concat(this.userStatus.message)}].concat(a):a}},watch:{url:function(){this.userDoesNotExist=!1,this.loadAvatarUrl()},user:function(){this.userDoesNotExist=!1,this.isMenuLoaded=!1,this.loadAvatarUrl()}},mounted:function(){this.loadAvatarUrl(),this.showUserStatus&&this.user&&!this.isNoUser&&(this.fetchUserStatus(this.user),Object(s.subscribe)(\"user_status:status.updated\",this.handleUserStatusUpdated))},beforeDestroyed:function(){this.showUserStatus&&this.user&&!this.isNoUser&&Object(s.unsubscribe)(\"user_status:status.updated\",this.handleUserStatusUpdated)},methods:{handleUserStatusUpdated:function(e){this.user===e.userId&&(this.userStatus={status:e.status,icon:e.icon,message:e.message})},toggleMenu:function(){var e=this;return f(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.hasMenu){t.next=2;break}return t.abrupt(\"return\");case 2:if(e.contactsMenuOpenState){t.next=5;break}return t.next=5,e.fetchContactsMenu();case 5:e.contactsMenuOpenState=!e.contactsMenuOpenState;case 6:case\"end\":return t.stop()}}),t)})))()},closeMenu:function(){this.contactsMenuOpenState=!1},fetchContactsMenu:function(){var e=this;return f(regeneratorRuntime.mark((function t(){var n,a,o;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,n=encodeURIComponent(e.user),t.next=4,l.a.post(Object(d.generateUrl)(\"contactsmenu/findOne\"),\"shareType=0&shareWith=\".concat(n));case 4:a=t.sent,o=a.data,e.contactsMenuActions=o.topAction?[o.topAction].concat(o.actions):o.actions,t.next=12;break;case 9:t.prev=9,t.t0=t.catch(0),e.contactsMenuOpenState=!1;case 12:e.isMenuLoaded=!0;case 13:case\"end\":return t.stop()}}),t,null,[[0,9]])})))()},loadAvatarUrl:function(){if(this.isAvatarLoaded=!1,!this.isUrlDefined&&(!this.isUserDefined||this.isNoUser))return this.isAvatarLoaded=!0,void(this.userDoesNotExist=!0);if(this.isUrlDefined)this.updateImageIfValid(this.url);else{var e=this.avatarUrlGenerator(this.user,this.size),t=[e+\" 1x\",this.avatarUrlGenerator(this.user,2*this.size)+\" 2x\",this.avatarUrlGenerator(this.user,4*this.size)+\" 4x\"].join(\", \");this.updateImageIfValid(e,t)}},avatarUrlGenerator:function(e,t){var n,a=\"/avatar/{user}/{size}\";this.isGuest&&(a=\"/avatar/guest/{user}/{size}\");var o=Object(d.generateUrl)(a,{user:e,size:t});return e===(null===(n=Object(r.getCurrentUser)())||void 0===n?void 0:n.uid)&&\"undefined\"!=typeof oc_userconfig&&(o+=\"?v=\"+oc_userconfig.avatar.version),o},updateImageIfValid:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=v(this.user);if(this.isUserDefined&&\"boolean\"==typeof a)return this.isAvatarLoaded=!0,this.avatarUrlLoaded=e,n&&(this.avatarSrcSetLoaded=n),void(!1===a&&(this.userDoesNotExist=!0));var o=new Image;o.onload=function(){t.avatarUrlLoaded=e,n&&(t.avatarSrcSetLoaded=n),t.isAvatarLoaded=!0,b(t.user,!0)},o.onerror=function(){console.debug(\"Invalid avatar url\",e),t.avatarUrlLoaded=null,t.avatarSrcSetLoaded=null,t.userDoesNotExist=!0,t.isAvatarLoaded=!1,b(t.user,!1)},n&&(o.srcset=n),o.src=e}}},x=(n(124),n(0)),y=n(72),k=n.n(y),w=Object(x.a)(h,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:e.tooltip,expression:\"tooltip\"},{name:\"click-outside\",rawName:\"v-click-outside\",value:e.closeMenu,expression:\"closeMenu\"}],staticClass:\"avatardiv popovermenu-wrapper\",class:{\"avatardiv--unknown\":e.userDoesNotExist,\"avatardiv--with-menu\":e.hasMenu},style:e.avatarStyle,on:{click:e.toggleMenu}},[e.iconClass?n(\"div\",{staticClass:\"avatar-class-icon\",class:e.iconClass}):e.isAvatarLoaded&&!e.userDoesNotExist?n(\"img\",{attrs:{src:e.avatarUrlLoaded,srcset:e.avatarSrcSetLoaded,alt:\"\"}}):e._e(),e._v(\" \"),e.hasMenu?n(\"div\",{staticClass:\"icon-more\"}):e._e(),e._v(\" \"),e.showUserStatusIconOnAvatar?n(\"div\",{staticClass:\"avatardiv__user-status avatardiv__user-status--icon\"},[e._v(\"\\n\\t\\t\"+e._s(e.userStatus.icon)+\"\\n\\t\")]):e.canDisplayUserStatus?n(\"div\",{staticClass:\"avatardiv__user-status\",class:\"avatardiv__user-status--\"+e.userStatus.status}):e.status?n(\"div\",{staticClass:\"avatardiv__status\",class:\"avatardiv__status--\"+e.status,style:{backgroundColor:\"#\"+e.statusColor}},[\"neutral\"===e.status?n(\"svg\",{attrs:{xmlns:\"http://www.w3.org/2000/svg\",width:\"12\",height:\"11\",viewBox:\"0 0 3.175 2.91\"}},[n(\"path\",{style:{fill:\"#\"+e.statusColor},attrs:{d:\"M3.21 3.043H.494l.679-1.177.68-1.176.678 1.176z\",stroke:\"#fff\",\"stroke-width\":\".265\",\"stroke-linecap\":\"square\"}})]):e._e()]):e._e(),e._v(\" \"),e.userDoesNotExist&&!e.iconClass?n(\"div\",{staticClass:\"unknown\"},[e._v(\"\\n\\t\\t\"+e._s(e.initials)+\"\\n\\t\")]):e._e(),e._v(\" \"),e.hasMenu?n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.contactsMenuOpenState,expression:\"contactsMenuOpenState\"}],staticClass:\"popovermenu\",class:\"menu-\"+e.menuPosition},[n(\"PopoverMenu\",{attrs:{\"is-open\":e.contactsMenuOpenState,menu:e.menu}})],1):e._e()])}),[],!1,null,\"69f84c82\",null);\"function\"==typeof k.a&&k()(w);var M=w.exports;\n/**\n * @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=M},function(e,t){e.exports=require(\"@nextcloud/capabilities\")},function(e,t){e.exports=require(\"md5\")},function(e,t,n){var a=n(179);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"617f676d\",a,!0,{})},function(e,t,n){var a=n(181);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"77554e44\",a,!0,{})},function(e,t,n){\"use strict\";n.r(t);n(11),n(96),n(23);var a=n(81),o=n.n(a),i=n(66),r=function(e){var t=e.toLowerCase();null===t.match(/^([0-9a-f]{4}-?){8}$/)&&(t=o()(t)),t=t.replace(/[^0-9a-f]/g,\"\");return Object(i.a)(6)[function(e,t){for(var n=0,a=[],o=0;o<e.length;o++)a.push(parseInt(e.charAt(o),16)%16);for(var i in a)n+=a[i];return parseInt(parseInt(n,10)%t,10)}(t,18)]};t.default=r},function(e,t){},function(e,t){},function(e,t){e.exports=require(\"core-js/modules/es.array.for-each\")},function(e,t){e.exports=require(\"core-js/modules/web.dom-collections.for-each\")},function(e,t){e.exports=require(\"core-js/modules/es.array.splice\")},function(e,t){e.exports=require(\"core-js/modules/es.array.flat\")},function(e,t){e.exports=require(\"core-js/modules/es.array.unscopables.flat\")},function(e,t){e.exports=require(\"core-js/modules/es.regexp.constructor\")},function(e,t,n){\"use strict\";var a=n(32);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".mention-bubble--primary .mention-bubble__content[data-v-724f9d58]{color:var(--color-primary-text);background-color:var(--color-primary-element)}.mention-bubble__wrapper[data-v-724f9d58]{max-width:150px;height:18px;vertical-align:text-bottom;display:inline-flex;align-items:center}.mention-bubble__content[data-v-724f9d58]{display:inline-flex;overflow:hidden;align-items:center;max-width:100%;height:20px;-webkit-user-select:none;user-select:none;padding-right:6px;padding-left:2px;border-radius:10px;background-color:var(--color-background-dark)}.mention-bubble__icon[data-v-724f9d58]{position:relative;width:16px;height:16px;border-radius:8px;background-color:var(--color-background-darker);background-repeat:no-repeat;background-position:center;background-size:12px}.mention-bubble__icon--with-avatar[data-v-724f9d58]{color:inherit;background-size:cover}.mention-bubble__title[data-v-724f9d58]{overflow:hidden;margin-left:2px;white-space:nowrap;text-overflow:ellipsis}.mention-bubble__title[data-v-724f9d58]::before{content:attr(title)}.mention-bubble__select[data-v-724f9d58]{position:absolute;z-index:-1;left:-1000px}\\n\",\"\"]),e.exports=t},function(e,t){e.exports=require(\"@nextcloud/browser-storage\")},function(e,t){e.exports=require(\"core-js/modules/es.string.match\")},function(e,t,n){\"use strict\";var a={name:\"ActionButton\",mixins:[n(39).a],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}},o=(n(135),n(0)),i=n(85),r=n.n(i),s=Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\",class:{\"action--disabled\":e.disabled}},[n(\"button\",{staticClass:\"action-button\",class:{focusable:e.isFocusable},attrs:{\"aria-label\":e.ariaLabel},on:{click:e.onClick}},[e._t(\"icon\",[n(\"span\",{staticClass:\"action-button__icon\",class:[e.isIconUrl?\"action-button__icon--url\":e.icon],style:{backgroundImage:e.isIconUrl?\"url(\"+e.icon+\")\":null}})]),e._v(\" \"),e.title?n(\"p\",[n(\"strong\",{staticClass:\"action-button__title\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\\t\")]),e._v(\" \"),n(\"br\"),e._v(\" \"),n(\"span\",{staticClass:\"action-button__longtext\",domProps:{textContent:e._s(e.text)}})]):e.isLongText?n(\"p\",{staticClass:\"action-button__longtext\",domProps:{textContent:e._s(e.text)}}):n(\"span\",{staticClass:\"action-button__text\"},[e._v(e._s(e.text))]),e._v(\" \"),e._e()],2)])}),[],!1,null,\"33d3d922\",null);\"function\"==typeof r.a&&r()(s);t.a=s.exports},function(e,t,n){\"use strict\";var a=n(38);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-69f4d5ed]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.action-item[data-v-69f4d5ed]{position:relative;display:inline-block}.action-item--single[data-v-69f4d5ed]:hover,.action-item--single[data-v-69f4d5ed]:focus,.action-item--single[data-v-69f4d5ed]:active,.action-item__menutoggle[data-v-69f4d5ed]:hover,.action-item__menutoggle[data-v-69f4d5ed]:focus,.action-item__menutoggle[data-v-69f4d5ed]:active{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item.action-item--open .action-item__menutoggle[data-v-69f4d5ed]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-69f4d5ed],.action-item__menutoggle[data-v-69f4d5ed]{box-sizing:border-box;width:auto;min-width:44px;height:44px;margin:0;padding:14px;cursor:pointer;border:none;border-radius:22px;background-color:transparent}.action-item__menutoggle[data-v-69f4d5ed]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle[data-v-69f4d5ed]:before{content:\\'\\'}.action-item__menutoggle--default-icon[data-v-69f4d5ed]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.action-item__menutoggle--default-icon[data-v-69f4d5ed]::before{font-size:16px}.action-item__menutoggle--with-title[data-v-69f4d5ed]{position:relative;padding-left:44px;white-space:nowrap;opacity:1;border:1px solid var(--color-border-dark);background-color:var(--color-background-dark);background-position:14px center;font-size:inherit}.action-item__menutoggle--with-title[data-v-69f4d5ed]:before{position:absolute;top:14px;left:14px}.action-item__menutoggle--primary[data-v-69f4d5ed]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-69f4d5ed],.action-item__menutoggle--primary[data-v-69f4d5ed]:hover,.action-item__menutoggle--primary[data-v-69f4d5ed]:focus,.action-item__menutoggle--primary[data-v-69f4d5ed]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-69f4d5ed]{opacity:.7}.action-item--single[data-v-69f4d5ed]:hover,.action-item--single[data-v-69f4d5ed]:focus,.action-item--single[data-v-69f4d5ed]:active{opacity:1}.action-item--single>[hidden][data-v-69f4d5ed]{display:none}.ie .action-item__menu[data-v-69f4d5ed],.ie .action-item__menu .action-item__menu_arrow[data-v-69f4d5ed],.edge .action-item__menu[data-v-69f4d5ed],.edge .action-item__menu .action-item__menu_arrow[data-v-69f4d5ed]{border:1px solid var(--color-border)}\\n',\"\"]),e.exports=t},function(e,t){e.exports=require(\"core-js/modules/es.array.reduce\")},function(e,t){e.exports=require(\"debounce\")},function(e,t){},function(e,t){},function(e,t){e.exports=require(\"core-js/modules/es.array.includes\")},function(e,t,n){var a=n(203);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"15565b81\",a,!0,{})},function(e,t,n){var a=n(205);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"5b587a1d\",a,!0,{})},function(e,t,n){var a=n(207);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"2b707e4d\",a,!0,{})},function(e,t,n){var a=n(209);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"1c311b69\",a,!0,{})},function(e,t,n){var a=n(211);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"5383cf7b\",a,!0,{})},function(e,t,n){var a=n(213);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"334adc1a\",a,!0,{})},function(e,t,n){\"use strict\";n(29),n(37),n(45),n(13),n(60),n(9),n(40),n(31),n(4),n(14),n(15);var a=n(79),o=n(78),i=n(53),r={name:\"AvatarSelectOption\",components:{Avatar:a.default,Highlight:o.default},mixins:[i.e],props:{desc:{type:String,default:\"\"},displayName:{type:String,required:!0},icon:{type:String,default:\"\"},user:{type:String,default:\"\"},status:{type:Object,default:null},isNoUser:{type:Boolean,default:!1},search:{type:String,default:\"\"}},beforeMount:function(){this.isNoUser||this.fetchUserStatus(this.user)}},s=(n(178),n(0)),c=n(102),l=n.n(c),d=Object(s.a)(r,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"span\",{staticClass:\"option\"},[n(\"Avatar\",{staticClass:\"option__avatar\",attrs:{\"display-name\":e.displayName,user:e.user,\"is-no-user\":e.isNoUser,\"disable-menu\":!0,\"disable-tooltip\":!0}}),e._v(\" \"),n(\"div\",{staticClass:\"option__desc\"},[n(\"Highlight\",{staticClass:\"option__desc--lineone\",attrs:{text:e.displayName,search:e.search}}),e._v(\" \"),\"\"!==e.desc?n(\"Highlight\",{staticClass:\"option__desc--linetwo\",attrs:{text:e.desc,search:e.search}}):e.hasStatus?n(\"span\",[n(\"span\",[e._v(e._s(e.userStatus.icon))]),e._v(\" \"),n(\"span\",[e._v(e._s(e.userStatus.message))])]):e._e()],1),e._v(\" \"),\"\"!==e.icon?n(\"span\",{staticClass:\"icon option__icon\",class:e.icon}):e._e()],1)}),[],!1,null,\"01dee904\",null);\"function\"==typeof l.a&&l()(d);var m=d.exports,u=(n(7),n(11),n(118),n(76),n(75)),p={name:\"EllipsisedOption\",components:{Highlight:o.default},props:{option:{type:[String,Object],required:!0,default:\"\"},label:{type:String,default:\"\"},search:{type:String,default:\"\"},name:{type:String,default:\"\"}},computed:{needsTruncate:function(){return this.name&&this.name.length>=10},split:function(){return this.name.length-Math.min(Math.floor(this.name.length/2),10)},part1:function(){return this.needsTruncate?this.name.substr(0,this.split):this.name},part2:function(){return this.needsTruncate?this.name.substr(this.split):\"\"},highlight1:function(){return this.search?Object(u.a)(this.name,this.search):[]},highlight2:function(){var e=this;return this.highlight1.map((function(t){return{start:t.start-e.split,end:t.end-e.split}}))}}},g=(n(180),Object(s.a)(p,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"name-parts\",attrs:{title:e.name}},[n(\"Highlight\",{staticClass:\"name-parts__first\",attrs:{text:e.part1,search:e.search,highlight:e.highlight1}}),e._v(\" \"),e.part2?n(\"Highlight\",{staticClass:\"name-parts__last\",attrs:{text:e.part2,search:e.search,highlight:e.highlight2}}):e._e()],1)}),[],!1,null,\"f855c4b8\",null).exports),f=n(36),A=n(22),v=n(126);function b(e){return(b=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}var h={name:\"Multiselect\",components:{AvatarSelectOption:m,EllipsisedOption:g,VueMultiselect:n.n(v).a},directives:{tooltip:A.default},mixins:[f.a],inheritAttrs:!1,props:{value:{default:function(){return[]}},multiple:{type:Boolean,default:!1},limit:{type:Number,default:99999},label:{type:String,default:\"\"},trackBy:{type:String,default:\"\"},options:{type:Array,required:!0},userSelect:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},autoLimit:{type:Boolean,default:!0},tagWidth:{type:Number,default:150,validator:function(e){return e>0}}},data:function(){return{elWidth:0}},computed:{maxOptions:function(){if(this.autoLimit&&this.elWidth>0&&0!==this.tagWidth){var e=Math.floor(this.elWidth/this.tagWidth);return e>0?e:1}return this.limit?this.limit:9999},limitString:function(){return\"+\".concat(this.value.length-this.maxOptions)},localValue:{get:function(){return this.trackBy&&this.options&&\"object\"!==b(this.value)&&this.options[this.value]?this.options[this.value]:this.value},set:function(e){this.$emit(\"update:value\",e),this.$emit(\"change\",e)}}},watch:{value:function(){this.updateWidth()}},mounted:function(){this.updateWidth(),window.addEventListener(\"resize\",this.updateWidth)},beforeDestroy:function(){window.removeEventListener(\"resize\",this.updateWidth)},methods:{getOptionLabel:function(e){var t;return String(null===(t=this.$refs.VueMultiselect)||void 0===t?void 0:t.getOptionLabel(e))},formatLimitTitle:function(e){var t=this;if(Array.isArray(e)&&e.length>0){var n=e;return\"object\"===b(e[0])&&(n=e.map((function(e){return e[t.label]}))),n.slice(this.maxOptions).join(\", \")}return\"\"},updateWidth:function(){this.$el&&this.$el.querySelector(\".multiselect__tags-wrap\")&&(this.elWidth=this.$el.querySelector(\".multiselect__tags-wrap\").offsetWidth-10)}}},x=n(103),y=n.n(x),k=Object(s.a)(h,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"VueMultiselect\",e._g(e._b({ref:\"VueMultiselect\",class:[{\"icon-loading-small\":e.loading},e.multiple?\"multiselect--multiple\":\"multiselect--single\"],attrs:{options:e.options,limit:e.maxOptions,\"close-on-select\":!e.multiple,multiple:e.multiple,label:e.label,\"track-by\":e.trackBy,\"tag-placeholder\":\"create\"},scopedSlots:e._u([{key:\"option\",fn:function(t){return[e.userSelect&&!e.$scopedSlots.option?n(\"AvatarSelectOption\",e._b({attrs:{search:t.search}},\"AvatarSelectOption\",t.option,!1)):e.$scopedSlots.option?e._t(\"option\",null,null,t):n(\"EllipsisedOption\",{attrs:{name:e.getOptionLabel(t.option),option:t.option,search:t.search,label:e.label}})]}},e.multiple?{key:\"limit\",fn:function(){return[n(\"span\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:e.formatLimitTitle(e.value),expression:\"formatLimitTitle(value)\",modifiers:{auto:!0}}],staticClass:\"multiselect__limit\"},[e._v(\"\\n\\t\\t\\t\"+e._s(e.limitString)+\"\\n\\t\\t\")])]},proxy:!0}:null,e._l(e.$scopedSlots,(function(t,n){return{key:n,fn:function(t){return[e._t(n,null,null,t)]}}}))],null,!0),model:{value:e.localValue,callback:function(t){e.localValue=t},expression:\"localValue\"}},\"VueMultiselect\",e.$attrs,!1),e.$listeners),[e._v(\" \"),e._v(\" \"),e._v(\" \"),n(\"span\",{attrs:{slot:\"noResult\"},slot:\"noResult\"},[e._v(e._s(e.t(\"No results\")))])])}),[],!1,null,null,null);\"function\"==typeof y.a&&y()(k);t.a=k.exports},function(e,t,n){\"use strict\";var a=n(47);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"\\nbutton.menuitem[data-v-3ad7b73b] {\\n\\ttext-align: left;\\n}\\nbutton.menuitem *[data-v-3ad7b73b] {\\n\\tcursor: pointer;\\n}\\nbutton.menuitem[data-v-3ad7b73b]:disabled {\\n\\topacity: 0.5 !important;\\n\\tcursor: default;\\n}\\nbutton.menuitem:disabled *[data-v-3ad7b73b] {\\n\\tcursor: default;\\n}\\n.menuitem.active[data-v-3ad7b73b] {\\n\\tbox-shadow: inset 2px 0 var(--color-primary);\\n\\tborder-radius: 0;\\n}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(48);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"li[data-v-3ad7b73b]{display:flex;flex:0 0 auto}li.hidden[data-v-3ad7b73b]{display:none}li>button[data-v-3ad7b73b],li>a[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]{cursor:pointer;line-height:44px;border:0;border-radius:0;background-color:transparent;display:flex;align-items:flex-start;height:auto;margin:0;padding:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap;opacity:.7}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{min-width:0;min-height:0;background-position:14px center;background-size:16px}li>button span[class^='icon-'][data-v-3ad7b73b],li>button span[class*=' icon-'][data-v-3ad7b73b],li>a span[class^='icon-'][data-v-3ad7b73b],li>a span[class*=' icon-'][data-v-3ad7b73b],li>.menuitem span[class^='icon-'][data-v-3ad7b73b],li>.menuitem span[class*=' icon-'][data-v-3ad7b73b]{padding:22px 0 22px 44px}li>button:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>button:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>a:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>span[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>input[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child,li>.menuitem:not([class^='icon-']):not([class*='icon-'])>form[data-v-3ad7b73b]:not([class^='icon-']):not([class*='icon-']):first-child{margin-left:44px}li>button[class^='icon-'][data-v-3ad7b73b],li>button[class*=' icon-'][data-v-3ad7b73b],li>a[class^='icon-'][data-v-3ad7b73b],li>a[class*=' icon-'][data-v-3ad7b73b],li>.menuitem[class^='icon-'][data-v-3ad7b73b],li>.menuitem[class*=' icon-'][data-v-3ad7b73b]{padding:0 14px 0 44px}li>button[data-v-3ad7b73b]:not(:disabled):hover,li>button[data-v-3ad7b73b]:not(:disabled):focus,li>button:not(:disabled).active[data-v-3ad7b73b],li>a[data-v-3ad7b73b]:not(:disabled):hover,li>a[data-v-3ad7b73b]:not(:disabled):focus,li>a:not(:disabled).active[data-v-3ad7b73b],li>.menuitem[data-v-3ad7b73b]:not(:disabled):hover,li>.menuitem[data-v-3ad7b73b]:not(:disabled):focus,li>.menuitem:not(:disabled).active[data-v-3ad7b73b]{opacity:1 !important}li>button.action[data-v-3ad7b73b],li>a.action[data-v-3ad7b73b],li>.menuitem.action[data-v-3ad7b73b]{padding:inherit !important}li>button>span[data-v-3ad7b73b],li>a>span[data-v-3ad7b73b],li>.menuitem>span[data-v-3ad7b73b]{cursor:pointer;white-space:nowrap}li>button>p[data-v-3ad7b73b],li>a>p[data-v-3ad7b73b],li>.menuitem>p[data-v-3ad7b73b]{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}li>button>select[data-v-3ad7b73b],li>a>select[data-v-3ad7b73b],li>.menuitem>select[data-v-3ad7b73b]{margin:0;margin-left:6px}li>button[data-v-3ad7b73b]:not(:empty),li>a[data-v-3ad7b73b]:not(:empty),li>.menuitem[data-v-3ad7b73b]:not(:empty){padding-right:14px !important}li>button>img[data-v-3ad7b73b],li>a>img[data-v-3ad7b73b],li>.menuitem>img[data-v-3ad7b73b]{width:44px;padding:14px}li>button>input.radio+label[data-v-3ad7b73b],li>button>input.checkbox+label[data-v-3ad7b73b],li>a>input.radio+label[data-v-3ad7b73b],li>a>input.checkbox+label[data-v-3ad7b73b],li>.menuitem>input.radio+label[data-v-3ad7b73b],li>.menuitem>input.checkbox+label[data-v-3ad7b73b]{padding:0 !important;width:100%}li>button>input.checkbox+label[data-v-3ad7b73b]::before,li>a>input.checkbox+label[data-v-3ad7b73b]::before,li>.menuitem>input.checkbox+label[data-v-3ad7b73b]::before{margin:-2px 13px 0}li>button>input.radio+label[data-v-3ad7b73b]::before,li>a>input.radio+label[data-v-3ad7b73b]::before,li>.menuitem>input.radio+label[data-v-3ad7b73b]::before{margin:-2px 12px 0}li>button>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>a>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]),li>.menuitem>input[data-v-3ad7b73b]:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}li>button form[data-v-3ad7b73b],li>a form[data-v-3ad7b73b],li>.menuitem form[data-v-3ad7b73b]{display:flex;flex:1 1 auto}li>button form[data-v-3ad7b73b]:not(:first-child),li>a form[data-v-3ad7b73b]:not(:first-child),li>.menuitem form[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li>button>span.hidden+form[data-v-3ad7b73b],li>button>span[style*='display:none']+form[data-v-3ad7b73b],li>a>span.hidden+form[data-v-3ad7b73b],li>a>span[style*='display:none']+form[data-v-3ad7b73b],li>.menuitem>span.hidden+form[data-v-3ad7b73b],li>.menuitem>span[style*='display:none']+form[data-v-3ad7b73b]{margin-left:0}li>button input[data-v-3ad7b73b],li>a input[data-v-3ad7b73b],li>.menuitem input[data-v-3ad7b73b]{min-width:44px;max-height:40px;margin:2px 0;flex:1 1 auto}li>button input[data-v-3ad7b73b]:not(:first-child),li>a input[data-v-3ad7b73b]:not(:first-child),li>.menuitem input[data-v-3ad7b73b]:not(:first-child){margin-left:5px}li:not(.hidden):not([style*='display:none']):first-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):first-of-type>.menuitem>input[data-v-3ad7b73b]{margin-top:12px}li:not(.hidden):not([style*='display:none']):last-of-type>button>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>button>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>a>input[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>form[data-v-3ad7b73b],li:not(.hidden):not([style*='display:none']):last-of-type>.menuitem>input[data-v-3ad7b73b]{margin-bottom:12px}li>button[data-v-3ad7b73b]{padding:0}li>button span[data-v-3ad7b73b]{opacity:1}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(49);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"ul[data-v-81c2afc0]{display:flex;flex-direction:column}\\n\",\"\"]),e.exports=t},function(e,t){e.exports=require(\"core-js/modules/es.string.search\")},function(e,t){e.exports=require(\"hammerjs\")},function(e,t,n){\"use strict\";n.r(t);var a=n(97);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=a.a},function(e,t){e.exports=require(\"core-js/modules/es.object.keys\")},function(e,t){e.exports=require(\"core-js/modules/es.string.code-point-at\")},function(e,t){e.exports=require(\"core-js/modules/es.string.from-code-point\")},function(e,t,n){\"use strict\";var a=n(55);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-69f84c82]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.avatardiv[data-v-69f84c82]{position:relative;display:inline-block}.avatardiv--unknown[data-v-69f84c82]{position:relative;background-color:var(--color-text-maxcontrast)}.avatardiv[data-v-69f84c82]:not(.avatardiv--unknown){background-color:#fff !important;box-shadow:0 0 5px rgba(0,0,0,0.05) inset}body.theme--dark .avatardiv[data-v-69f84c82]:not(.avatardiv--unknown){background-color:#000 !important}.avatardiv--with-menu[data-v-69f84c82]{cursor:pointer}.avatardiv--with-menu .icon-more[data-v-69f84c82]{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:inherit;height:inherit;cursor:pointer;opacity:0;background:none;font-size:18px}.avatardiv--with-menu .icon-more[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.avatardiv--with-menu .icon-more[data-v-69f84c82]::before{display:block}.avatardiv--with-menu:focus .icon-more[data-v-69f84c82],.avatardiv--with-menu:hover .icon-more[data-v-69f84c82]{opacity:1}.avatardiv--with-menu:focus img[data-v-69f84c82],.avatardiv--with-menu:hover img[data-v-69f84c82]{opacity:0.3}.avatardiv--with-menu .icon-more[data-v-69f84c82],.avatardiv--with-menu img[data-v-69f84c82]{transition:opacity var(--animation-quick)}.avatardiv>.unknown[data-v-69f84c82]{position:absolute;top:0;left:0;display:block;width:100%;text-align:center;font-weight:normal;color:var(--color-main-background)}.avatardiv img[data-v-69f84c82]{width:100%;height:100%;object-fit:cover}.avatardiv .avatardiv__status[data-v-69f84c82]{position:absolute;top:22px;left:22px;width:10px;height:10px;border:1px solid rgba(255,255,255,0.5);background-clip:content-box}.avatardiv .avatardiv__status--positive[data-v-69f84c82]{border-radius:50%;background-color:var(--color-success)}.avatardiv .avatardiv__status--negative[data-v-69f84c82]{background-color:var(--color-error)}.avatardiv .avatardiv__status--neutral[data-v-69f84c82]{border:none;background-color:transparent !important}.avatardiv .avatardiv__status--neutral svg[data-v-69f84c82]{position:absolute;top:-3px;left:-2px}.avatardiv .avatardiv__status--neutral svg path[data-v-69f84c82]{fill:#aaa}.avatardiv .avatardiv__user-status[data-v-69f84c82]{position:absolute;right:-4px;bottom:-4px;height:18px;width:18px;line-height:14px;font-size:14px;border:2px solid var(--color-main-background);background-color:var(--color-main-background);border-radius:50%}.acli:hover .avatardiv .avatardiv__user-status[data-v-69f84c82]{border-color:var(--color-background-hover);background-color:var(--color-background-hover)}.acli.active .avatardiv .avatardiv__user-status[data-v-69f84c82]{border-color:var(--color-primary-light);background-color:var(--color-primary-light)}.avatardiv .avatardiv__user-status--online[data-v-69f84c82]{color:#49b382}.avatardiv .avatardiv__user-status--online[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .avatardiv__user-status--dnd[data-v-69f84c82]{background-color:#ffffff;color:#ed484c}.avatardiv .avatardiv__user-status--dnd[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .avatardiv__user-status--away[data-v-69f84c82]{color:#f4a331}.avatardiv .avatardiv__user-status--away[data-v-69f84c82]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.avatardiv .avatardiv__user-status--icon[data-v-69f84c82]{border:none;background-color:transparent}.avatardiv .popovermenu-wrapper[data-v-69f84c82]{position:relative;display:inline-block}.avatardiv .popovermenu[data-v-69f84c82]{display:block;margin:0;font-size:14px}.avatar-class-icon[data-v-69f84c82]{border-radius:50%;background-color:var(--color-background-darker);height:100%}\\n',\"\"]),e.exports=t},function(e,t){e.exports=require(\"vue-multiselect\")},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){e.exports=require(\"core-js/modules/es.object.get-own-property-descriptor\")},function(e,t){e.exports=require(\"core-js/modules/es.object.get-own-property-descriptors\")},function(e,t,n){\"use strict\";var a={name:\"EmptyContent\",props:{icon:{type:String,required:!0}}},o=(n(208),n(0)),i=n(129),r=n.n(i),s=Object(o.a)(a,(function(){var e=this.$createElement,t=this._self._c||e;return t(\"div\",{staticClass:\"empty-content\",attrs:{role:\"note\"}},[t(\"div\",{staticClass:\"empty-content__icon\",class:this.icon,attrs:{role:\"img\"}}),this._v(\" \"),t(\"h2\",{staticClass:\"empty-content__title\"},[this._t(\"default\")],2),this._v(\" \"),t(\"p\",{directives:[{name:\"show\",rawName:\"v-show\",value:this.$slots.desc,expression:\"$slots.desc\"}]},[this._t(\"desc\")],2)])}),[],!1,null,null,null);\"function\"==typeof r.a&&r()(s);t.a=s.exports},function(e,t,n){\"use strict\";var a=n(68);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"li.active[data-v-33d3d922]{box-shadow:inset 4px 0 var(--color-primary)}.action--disabled[data-v-33d3d922]{pointer-events:none;opacity:.5}.action--disabled[data-v-33d3d922]:hover,.action--disabled[data-v-33d3d922]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-33d3d922]{opacity:1 !important}.action-button[data-v-33d3d922]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;line-height:44px}.action-button[data-v-33d3d922]:hover,.action-button[data-v-33d3d922]:focus{opacity:1}.action-button>span[data-v-33d3d922]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-33d3d922]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button p[data-v-33d3d922]{width:150px;padding:7px 0;margin:auto;cursor:pointer;text-align:left;line-height:1.6em}.action-button__longtext[data-v-33d3d922]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-33d3d922]{font-weight:bold}\\n\",\"\"]),e.exports=t},function(e,t,n){var a=n(252);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"151c433b\",a,!0,{})},function(e,t,n){var a=n(254);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"5461026f\",a,!0,{})},function(e,t,n){var a=n(256);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"676f3833\",a,!0,{})},function(e,t,n){var a=n(258);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"40ce99ba\",a,!0,{})},function(e,t,n){var a=n(260);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"01c29e18\",a,!0,{})},function(e,t,n){var a=n(262);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"45b2abfe\",a,!0,{})},function(e,t,n){var a=n(264);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"579fa05f\",a,!0,{})},function(e,t,n){var a=n(266);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"63515f98\",a,!0,{})},function(e,t,n){var a=n(268);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"358576b8\",a,!0,{})},function(e,t,n){var a=n(270);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"334af9b1\",a,!0,{})},function(e,t,n){var a=n(272);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"2d593614\",a,!0,{})},function(e,t,n){var a=n(274);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"2067c78a\",a,!0,{})},function(e,t,n){var a=n(276);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"4d8a64e6\",a,!0,{})},function(e,t,n){var a=n(278);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"361fd107\",a,!0,{})},function(e,t,n){var a=n(280);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"1baade86\",a,!0,{})},function(e,t,n){var a=n(282);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"1e3ece15\",a,!0,{})},function(e,t,n){\"use strict\";n.r(t),n.d(t,\"directive\",(function(){return a}));\n/**\n * @copyright Copyright (c) 2019 Georg Ehrke\n *\n * @author Georg Ehrke <oc.list@georgehrke.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nvar a={inserted:function(e){e.focus()}};t.default=a},function(e,t,n){\"use strict\";n.r(t),n.d(t,\"directive\",(function(){return i}));var a=n(177),o=n.n(a),i=function(e,t){var n;!0===(null===(n=t.value)||void 0===n?void 0:n.linkify)&&(e.innerHTML=o()(t.value.text,{defaultProtocol:\"https\"}))};t.default=i},function(e,t,n){var a=n(285);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"4b9d3da8\",a,!0,{})},function(e,t,n){var a=n(287);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"c9145790\",a,!0,{})},function(e,t,n){var a=n(289);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"4dd3631b\",a,!0,{})},function(e,t,n){var a=n(291);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"5354d770\",a,!0,{})},function(e,t,n){var a=n(294);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"a38c3be6\",a,!0,{})},function(e,t,n){var a=n(296);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"7c95d7e8\",a,!0,{})},function(e,t,n){var a=n(298);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"4617b840\",a,!0,{})},function(e,t,n){\"use strict\";n.r(t);var a=n(69),o=n(111);n(214);\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nObject(a.a)(o.a),t.default=o.a},function(e,t,n){var a=n(302);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"0c7f3db6\",a,!0,{})},function(e,t,n){var a=n(304);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"30d29862\",a,!0,{})},function(e,t,n){var a=n(306);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"9bba285a\",a,!0,{})},function(e,t,n){var a=n(308);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"2c80b26e\",a,!0,{})},function(e,t,n){var a=n(310);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"eb4debd2\",a,!0,{})},function(e,t,n){var a=n(312);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"3baeb55d\",a,!0,{})},function(e,t,n){var a=n(314);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"08a8e7da\",a,!0,{})},function(e,t,n){\"use strict\";n.r(t);var a=n(69),o=(n(8),n(31),n(119)),i=n.n(o),r=n(56),s=n(120),c=n(36),l=n(5),d=n(22);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nfunction m(e,t){var n,a,o,i=t;this.start=function(){o=!0,a=new Date,n=setTimeout(e,i)},this.pause=function(){o=!1,clearTimeout(n),i-=new Date-a},this.clear=function(){o=!1,clearTimeout(n),i=0},this.getTimeLeft=function(){return o&&(this.pause(),this.start()),i},this.getStateRunning=function(){return o},this.start()}var u={name:\"Modal\",components:{Actions:r.default,ActionButton:s.default},directives:{tooltip:d.default},mixins:[c.a],props:{title:{type:String,default:\"\"},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},clearViewDelay:{type:Number,default:5e3},slideshowDelay:{type:Number,default:3e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:\"normal\",validator:function(e){return-1!==[\"normal\",\"large\",\"full\"].indexOf(e)}},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1}},data:function(){return{mc:null,showModal:!1,clearView:!1,clearViewTimeout:null,playing:!1,slideshowTimeout:null}},computed:{modalTransitionName:function(){return\"modal-\".concat(this.outTransition?\"out\":\"in\")},playPauseTitle:function(){return this.playing?Object(l.b)(\"Pause slideshow\"):Object(l.b)(\"Start slideshow\")}},watch:{slideshowPaused:function(e){this.slideshowTimeout&&(e?this.slideshowTimeout.pause():this.slideshowTimeout.start())}},beforeMount:function(){window.addEventListener(\"keydown\",this.handleKeydown)},beforeDestroy:function(){window.removeEventListener(\"keydown\",this.handleKeydown),this.mc.off(\"swipeleft swiperight\"),this.mc.destroy()},mounted:function(){var e=this;this.showModal=!0,this.handleMouseMove(),this.mc=new i.a(this.$refs.mask),this.mc.on(\"swipeleft swiperight\",(function(t){e.handleSwipe(t)})),document.body.insertBefore(this.$el,document.body.lastChild)},destroyed:function(){this.$el.remove()},methods:{previous:function(e){this.hasPrevious&&(e&&this.resetSlideshow(),this.$emit(\"previous\",e))},next:function(e){this.hasNext&&(e&&this.resetSlideshow(),this.$emit(\"next\",e))},close:function(e){var t=this;this.canClose&&(this.showModal=!1,setTimeout((function(){t.$emit(\"close\",e)}),300))},handleKeydown:function(e){switch(e.keyCode){case 37:this.previous(e);break;case 13:case 39:this.next(e);break;case 27:this.close(e)}},handleSwipe:function(e){this.enableSwipe&&(\"swipeleft\"===e.type?this.next(e):\"swiperight\"===e.type&&this.previous(e))},handleMouseMove:function(){var e=this;this.clearViewDelay>0&&(this.clearView=!1,clearTimeout(this.clearViewTimeout),this.clearViewTimeout=setTimeout((function(){e.clearView=!0}),this.clearViewDelay))},togglePlayPause:function(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow:function(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow:function(){var e=this;this.playing=!0,this.hasNext?this.slideshowTimeout=new m((function(){e.next(),e.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},p=(n(212),n(0)),g=n(131),f=n.n(g),A=Object(p.a)(u,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"transition\",{attrs:{name:\"fade\"}},[n(\"div\",{ref:\"mask\",staticClass:\"modal-mask\",class:{\"modal-mask--dark\":e.dark},on:{click:e.handleMouseMove,mousemove:e.handleMouseMove,touchmove:e.handleMouseMove}},[n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:!e.clearView,expression:\"!clearView\"}],staticClass:\"modal-header\",class:{invisible:e.clearView}},[\"\"!==e.title.trim()?n(\"div\",{staticClass:\"modal-title\"},[e._v(\"\\n\\t\\t\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\\t\\t\")]):e._e(),e._v(\" \"),n(\"div\",{staticClass:\"icons-menu\"},[e.hasNext&&e.enableSlideshow?n(\"button\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:e.playPauseTitle,expression:\"playPauseTitle\",modifiers:{auto:!0}}],staticClass:\"play-pause\",class:{\"play-pause--paused\":e.slideshowPaused},on:{click:e.togglePlayPause}},[n(\"div\",{class:[e.playing?\"icon-pause\":\"icon-play\"]},[n(\"span\",{staticClass:\"hidden-visually\"},[e._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+e._s(e.playPauseTitle)+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])]),e._v(\" \"),e.playing?n(\"svg\",{staticClass:\"progress-ring\",attrs:{height:\"50\",width:\"50\"}},[n(\"circle\",{staticClass:\"progress-ring__circle\",attrs:{stroke:\"white\",\"stroke-width\":\"2\",fill:\"transparent\",r:\"15\",cx:\"25\",cy:\"25\"}})]):e._e()]):e._e(),e._v(\" \"),n(\"Actions\",{staticClass:\"header-actions\"},[e._t(\"actions\")],2),e._v(\" \"),e.canClose?n(\"Actions\",{staticClass:\"header-close\"},[n(\"ActionButton\",{attrs:{icon:\"icon-close\"},on:{click:e.close}},[e._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+e._s(e.t(\"Close\"))+\"\\n\\t\\t\\t\\t\\t\\t\")])],1):e._e()],1)])]),e._v(\" \"),n(\"transition\",{attrs:{name:e.modalTransitionName}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.showModal,expression:\"showModal\"}],staticClass:\"modal-wrapper\",class:[\"modal-wrapper--\"+e.size,e.spreadNavigation?\"modal-wrapper--spread-navigation\":\"\"],on:{click:function(t){return t.target!==t.currentTarget?null:e.close(t)}}},[n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.hasPrevious&&!e.clearView,expression:\"hasPrevious && !clearView\"}],staticClass:\"prev\",class:{invisible:e.clearView||!e.hasPrevious},on:{click:e.previous}},[n(\"div\",{staticClass:\"icon icon-previous\"},[n(\"span\",{staticClass:\"hidden-visually\"},[e._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+e._s(e.t(\"Previous\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])])])]),e._v(\" \"),n(\"div\",{staticClass:\"modal-container\"},[e._t(\"default\")],2),e._v(\" \"),n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.hasNext&&!e.clearView,expression:\"hasNext && !clearView\"}],staticClass:\"next\",class:{invisible:e.clearView||!e.hasNext},on:{click:e.next}},[n(\"div\",{staticClass:\"icon icon-next\"},[n(\"span\",{staticClass:\"hidden-visually\"},[e._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+e._s(e.t(\"Next\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])])])])],1)])],1)])}),[],!1,null,\"df113852\",null);\"function\"==typeof f.a&&f()(A);var v=A.exports;\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */Object(a.a)(v);t.default=v},function(e,t,n){\"use strict\";n.r(t);var a=n(69),o=(n(31),n(176)),i={name:\"DatetimePicker\",components:{DatePicker:n.n(o).a},inheritAttrs:!1,props:{clearable:{type:Boolean,default:function(){return!1}},minuteStep:{type:Number,default:function(){return 10}},type:{type:String,default:\"date\"},format:{type:[String,Object],default:function(){var e={date:\"YYYY-MM-DD\",datetime:\"YYYY-MM-DD H:mm:ss\",year:\"YYYY\",month:\"YYYY-MM\",time:\"H:mm:ss\",week:\"w\"};return e[this.type]||e.date}},value:{default:function(){return new Date}}},methods:{handleSelectYear:function(e){var t=this.$refs.datepicker.currentValue;if(t)try{var n=new Date(new Date(t).setFullYear(e));this.$refs.datepicker.selectDate(n)}catch(n){console.error(\"Invalid value\",t,e)}},handleSelectMonth:function(e){var t=this.$refs.datepicker.currentValue;if(t)try{var n=new Date(new Date(t).setMonth(e));this.$refs.datepicker.selectDate(n)}catch(n){console.error(\"Invalid value\",t,e)}}}},r=n(0),s=n(127),c=n.n(s),l=Object(r.a)(i,(function(){var e=this,t=e.$createElement;return(e._self._c||t)(\"DatePicker\",e._g(e._b({ref:\"datepicker\",attrs:{clearable:e.clearable,\"minute-step\":e.minuteStep,format:e.format,type:e.type,value:e.value,\"append-to-body\":!1},on:{\"select-year\":e.handleSelectYear,\"select-month\":e.handleSelectMonth,\"update:value\":function(t){return e.$emit(\"update:value\",e.value)}},scopedSlots:e._u([e._l(e.$scopedSlots,(function(t,n){return{key:n,fn:function(t){return[e._t(n,null,null,t)]}}}))],null,!0)},\"DatePicker\",e.$attrs,!1),e.$listeners))}),[],!1,null,null,null);\"function\"==typeof c.a&&c()(l);var d=l.exports;n(200);\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nObject(a.a)(d);t.default=d},function(e,t,n){\"use strict\";n.r(t);var a={name:\"Breadcrumb\",components:{Actions:n(56).default},props:{title:{type:String,required:!0},to:{type:String,default:void 0},href:{type:String,default:void 0},icon:{type:String,default:\"\"},disableDrop:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},open:{type:Boolean,default:!1}},data:function(){return{hovering:!1}},computed:{tag:function(){return this.to?\"router-link\":\"a\"}},methods:{onOpenChange:function(e){this.$emit(\"update:open\",e)},dropped:function(e){return this.disableDrop||(this.$emit(\"dropped\",e,this.to||this.href),this.$parent.$emit(\"dropped\",e,this.to||this.href),this.hovering=!1),!1},dragEnter:function(e){this.disableDrop||(this.hovering=!0)},dragLeave:function(e){this.disableDrop||e.target.contains(e.relatedTarget)||this.$refs.crumb.contains(e.relatedTarget)||(this.hovering=!1)}}},o=(n(210),n(0)),i=n(130),r=n.n(i),s=Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{ref:\"crumb\",staticClass:\"crumb\",class:{\"crumb--with-action\":e.$slots.default,\"crumb--hovered\":e.hovering},attrs:{draggable:\"false\"},on:{dragstart:function(e){e.preventDefault()},drop:function(t){return t.preventDefault(),e.dropped(t)},dragover:function(e){e.preventDefault()},dragenter:e.dragEnter,dragleave:e.dragLeave}},[e.title||e.icon?n(e.tag,{tag:\"element\",attrs:{to:e.to,href:e.href}},[e.icon?n(\"span\",{staticClass:\"icon\",class:e.icon}):n(\"span\",[e._v(e._s(e.title))])]):e._e(),e._v(\" \"),n(\"Actions\",{ref:\"actions\",attrs:{\"force-menu\":e.forceMenu,open:e.open},on:{\"update:open\":e.onOpenChange}},[e._t(\"default\")],2)],1)}),[],!1,null,\"7d9c1e9f\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2020 Raimund Schlüßler <raimund.schluessler@mailbox.org>\n *\n * @author Raimund Schlüßler <raimund.schluessler@mailbox.org>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=c},function(e,t,n){\"use strict\";n.r(t);var a={name:\"ActionRouter\",mixins:[n(39).a],props:{to:{type:[String,Object],default:\"\",required:!0},exact:{type:Boolean,default:!1}}},o=(n(204),n(0)),i=Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\"},[n(\"router-link\",{staticClass:\"action-router focusable\",attrs:{to:e.to,exact:e.exact,\"aria-label\":e.ariaLabel,rel:\"noreferrer noopener\"},nativeOn:{click:function(t){return e.onClick(t)}}},[e._t(\"icon\",[n(\"span\",{staticClass:\"action-router__icon\",class:[e.isIconUrl?\"action-router__icon--url\":e.icon],style:{backgroundImage:e.isIconUrl?\"url(\"+e.icon+\")\":null}})]),e._v(\" \"),e.title?n(\"p\",[n(\"strong\",{staticClass:\"action-router__title\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\\t\")]),e._v(\" \"),n(\"br\"),e._v(\" \"),n(\"span\",{staticClass:\"action-router__longtext\",domProps:{textContent:e._s(e.text)}})]):e.isLongText?n(\"p\",{staticClass:\"action-router__longtext\",domProps:{textContent:e._s(e.text)}}):n(\"span\",{staticClass:\"action-router__text\"},[e._v(e._s(e.text))]),e._v(\" \"),e._e()],2)],1)}),[],!1,null,\"196b3c3e\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);n(8),n(13),n(4),n(14),n(57),n(15),n(34);var a={name:\"ActionLink\",mixins:[n(39).a],props:{href:{type:String,default:\"#\",required:!0,validator:function(e){try{return new URL(e)}catch(t){return e.startsWith(\"#\")||e.startsWith(\"/\")}}},download:{type:String,default:null},target:{type:String,default:\"_self\",validator:function(e){return[\"_blank\",\"_self\",\"_parent\",\"_top\"].indexOf(e)>-1}}}},o=(n(202),n(0)),i=n(128),r=n.n(i),s=Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\"},[n(\"a\",{staticClass:\"action-link focusable\",attrs:{download:e.download,href:e.href,\"aria-label\":e.ariaLabel,target:e.target,rel:\"noreferrer noopener\"},on:{click:e.onClick}},[e._t(\"icon\",[n(\"span\",{staticClass:\"action-link__icon\",class:[e.isIconUrl?\"action-link__icon--url\":e.icon],style:{backgroundImage:e.isIconUrl?\"url(\"+e.icon+\")\":null}})]),e._v(\" \"),e.title?n(\"p\",[n(\"strong\",{staticClass:\"action-link__title\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\\t\")]),e._v(\" \"),n(\"br\"),e._v(\" \"),n(\"span\",{staticClass:\"action-link__longtext\",domProps:{textContent:e._s(e.text)}})]):e.isLongText?n(\"p\",{staticClass:\"action-link__longtext\",domProps:{textContent:e._s(e.text)}}):n(\"span\",{staticClass:\"action-link__text\"},[e._v(e._s(e.text))]),e._v(\" \"),e._e()],2)])}),[],!1,null,\"aee1c25a\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=c},function(e,t,n){\"use strict\";var a={name:\"AppNavigationToggle\",props:{open:{type:Boolean,required:!0}},methods:{toggleNavigation:function(){this.$emit(\"update:open\",!this.open)}}},o=(n(206),n(0)),i=Object(o.a)(a,(function(){var e=this,t=e.$createElement;return(e._self._c||t)(\"a\",{staticClass:\"app-navigation-toggle\",attrs:{href:\"#\",\"aria-expanded\":e.open,\"aria-controls\":\"app-navigation-vue\"},on:{click:function(t){return t.preventDefault(),e.toggleNavigation(t)},keydown:function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"space\",32,t.key,[\" \",\"Spacebar\"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.toggleNavigation(t))}}})}),[],!1,null,\"28dd8796\",null);t.a=i.exports},function(e,t){e.exports=require(\"vue2-datepicker\")},function(e,t){e.exports=require(\"linkifyjs/string\")},function(e,t,n){\"use strict\";var a=n(82);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".option[data-v-01dee904]{display:flex;align-items:center;width:100%;height:32px}.option__avatar[data-v-01dee904]{flex:0 0 32px;width:32px;height:32px;margin-right:6px}.option__desc[data-v-01dee904]{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0}.option__desc--lineone[data-v-01dee904]{color:var(--color-text-light)}.option__desc--linetwo[data-v-01dee904]{opacity:.7}.option__desc--lineone[data-v-01dee904],.option__desc--linetwo[data-v-01dee904]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.option__desc--lineone strong[data-v-01dee904],.option__desc--linetwo strong[data-v-01dee904]{font-weight:bold}.option__icon[data-v-01dee904]{flex:0 0 44px;width:44px;height:44px;margin:-6px;opacity:.5;background-position:center;background-size:16px}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(83);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".name-parts[data-v-f855c4b8]{display:flex;max-width:100%}.name-parts__first[data-v-f855c4b8]{overflow:hidden;text-overflow:ellipsis}.name-parts__first[data-v-f855c4b8],.name-parts__last[data-v-f855c4b8]{white-space:pre}.name-parts__first strong[data-v-f855c4b8],.name-parts__last strong[data-v-f855c4b8]{font-weight:bold}\\n\",\"\"]),e.exports=t},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t){e.exports=require(\"core-js/modules/es.object.values\")},function(e,t,n){var a=n(201);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"600615ea\",a,!0,{})},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon{font-style:normal;font-weight:400}.icon.arrow-left-double:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.mx-icon-left:before,.mx-icon-right:before,.mx-icon-double-left:before,.mx-icon-double-right:before,.mx-icon-double-left:after,.mx-icon-double-right:after{content:\\'\\';position:relative;top:-1px;display:inline-block;width:10px;height:10px;vertical-align:middle;border-style:solid;border-color:currentColor;border-width:2px 0 0 2px;border-radius:1px;box-sizing:border-box;transform-origin:center;transform:rotate(-45deg) scale(0.7)}.mx-icon-double-left:after{left:-4px}.mx-icon-double-right:before{left:4px}.mx-icon-right:before,.mx-icon-double-right:before,.mx-icon-double-right:after{transform:rotate(135deg) scale(0.7)}.mx-btn{box-sizing:border-box;line-height:1;font-size:14px;font-weight:500;padding:7px 15px;margin:0;cursor:pointer;background-color:transparent;outline:none;border:1px solid rgba(0,0,0,0.1);border-radius:4px;color:#73879c;white-space:nowrap}.mx-btn:hover{border-color:#1284e7;color:#1284e7}.mx-btn-text{border:0;padding:0 4px;text-align:left;line-height:inherit}.mx-scrollbar{height:100%}.mx-scrollbar:hover .mx-scrollbar-track{opacity:1}.mx-scrollbar-wrap{height:100%;overflow-x:hidden;overflow-y:auto}.mx-scrollbar-track{position:absolute;top:2px;right:2px;bottom:2px;width:6px;z-index:1;border-radius:4px;opacity:0;transition:opacity 0.24s ease-out}.mx-scrollbar-track .mx-scrollbar-thumb{position:absolute;width:100%;height:0;cursor:pointer;border-radius:inherit;background-color:rgba(144,147,153,0.3);transition:background-color 0.3s}.mx-zoom-in-down-enter-active,.mx-zoom-in-down-leave-active{opacity:1;transform:scaleY(1);transition:transform 0.3s cubic-bezier(0.23, 1, 0.32, 1),opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);transform-origin:center top}.mx-zoom-in-down-enter,.mx-zoom-in-down-leave-to{opacity:0;transform:scaleY(0)}.mx-datepicker{position:relative;display:inline-block;width:210px}.mx-datepicker svg{width:1em;height:1em;vertical-align:-0.15em;fill:currentColor;overflow:hidden}.mx-datepicker-range{width:320px}.mx-datepicker-inline{width:auto}.mx-input-wrapper{position:relative}.mx-input-wrapper .mx-icon-clear{display:none}.mx-input-wrapper:hover .mx-icon-clear{display:block}.mx-input-wrapper:hover .mx-icon-clear+.mx-icon-calendar{display:none}.mx-input{display:inline-block;box-sizing:border-box;width:100%;height:34px;padding:6px 30px;padding-left:10px;font-size:14px;line-height:1.4;color:#555;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.mx-input:hover,.mx-input:focus{border-color:#409aff}.mx-input:disabled,.mx-input.disabled{color:#ccc;background-color:#f3f3f3;border-color:#ccc;cursor:not-allowed}.mx-input:focus{outline:none}.mx-input::-ms-clear{display:none}.mx-icon-calendar,.mx-icon-clear{position:absolute;top:50%;right:8px;transform:translateY(-50%);font-size:16px;line-height:1;color:rgba(0,0,0,0.5);vertical-align:middle}.mx-icon-clear{cursor:pointer}.mx-icon-clear:hover{color:rgba(0,0,0,0.8)}.mx-datepicker-main{font:14px/1.5 \\'Helvetica Neue\\', Helvetica, Arial, \\'Microsoft Yahei\\', sans-serif;color:#73879c;background-color:#fff;border:1px solid #e8e8e8}.mx-datepicker-popup{position:absolute;margin-top:1px;margin-bottom:1px;box-shadow:0 6px 12px rgba(0,0,0,0.175);z-index:2001}.mx-datepicker-sidebar{float:left;box-sizing:border-box;width:100px;padding:6px;overflow:auto}.mx-datepicker-sidebar+.mx-datepicker-content{margin-left:100px;border-left:1px solid #e8e8e8}.mx-datepicker-body{position:relative;user-select:none}.mx-btn-shortcut{display:block;padding:0 6px;line-height:24px}.mx-range-wrapper{display:flex}@media (max-width: 750px){.mx-range-wrapper{flex-direction:column}}.mx-datepicker-header{padding:6px 8px;border-bottom:1px solid #e8e8e8}.mx-datepicker-footer{padding:6px 8px;text-align:right;border-top:1px solid #e8e8e8}.mx-calendar{box-sizing:border-box;width:248px;padding:6px 12px}.mx-calendar+.mx-calendar{border-left:1px solid #e8e8e8}.mx-calendar-header,.mx-time-header{box-sizing:border-box;height:34px;line-height:34px;text-align:center;overflow:hidden}.mx-btn-icon-left,.mx-btn-icon-double-left{float:left}.mx-btn-icon-right,.mx-btn-icon-double-right{float:right}.mx-calendar-header-label{font-size:14px}.mx-calendar-decade-separator{margin:0 2px}.mx-calendar-decade-separator:after{content:\\'~\\'}.mx-calendar-content{position:relative;height:224px;box-sizing:border-box}.mx-calendar-content .cell{cursor:pointer}.mx-calendar-content .cell:hover{color:#73879c;background-color:#f3f9fe}.mx-calendar-content .cell.active{color:#fff;background-color:#1284e7}.mx-calendar-content .cell.in-range{color:#73879c;background-color:#dbedfb}.mx-calendar-content .cell.disabled{cursor:not-allowed;color:#ccc;background-color:#f3f3f3}.mx-calendar-week-mode .mx-date-row{cursor:pointer}.mx-calendar-week-mode .mx-date-row:hover{background-color:#f3f9fe}.mx-calendar-week-mode .mx-date-row.mx-active-week{background-color:#dbedfb}.mx-calendar-week-mode .mx-date-row .cell:hover{color:inherit;background-color:transparent}.mx-calendar-week-mode .mx-date-row .cell.active{color:inherit;background-color:transparent}.mx-week-number{opacity:0.5}.mx-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;height:100%;box-sizing:border-box;text-align:center;vertical-align:middle}.mx-table th{padding:0;font-weight:500}.mx-table td{padding:0}.mx-table-date td,.mx-table-date th{height:32px;font-size:12px}.mx-table-date .today{color:#2a90e9}.mx-table-date .cell.not-current-month{color:#ccc}.mx-time{flex:1;width:224px;background:#fff}.mx-time+.mx-time{border-left:1px solid #e8e8e8}.mx-calendar-time{position:absolute;top:0;left:0;width:100%;height:100%}.mx-time-header{border-bottom:1px solid #e8e8e8}.mx-time-content{height:224px;box-sizing:border-box;overflow:hidden}.mx-time-columns{display:flex;width:100%;height:100%;overflow:hidden}.mx-time-column{flex:1;position:relative;border-left:1px solid #e8e8e8;text-align:center}.mx-time-column:first-child{border-left:0}.mx-time-column .mx-time-list{margin:0;padding:0;list-style:none}.mx-time-column .mx-time-list::after{content:\\'\\';display:block;height:192px}.mx-time-column .mx-time-item{cursor:pointer;font-size:12px;height:32px;line-height:32px}.mx-time-column .mx-time-item:hover{color:#73879c;background-color:#f3f9fe}.mx-time-column .mx-time-item.active{color:#1284e7;background-color:rgba(0,0,0,0);font-weight:700}.mx-time-column .mx-time-item.disabled{cursor:not-allowed;color:#ccc;background-color:#f3f3f3}.mx-time-option{cursor:pointer;padding:8px 10px;font-size:14px;line-height:20px}.mx-time-option:hover{color:#73879c;background-color:#f3f9fe}.mx-time-option.active{color:#1284e7;background-color:rgba(0,0,0,0);font-weight:700}.mx-time-option.disabled{cursor:not-allowed;color:#ccc;background-color:#f3f3f3}.mx-datepicker[data-v-4e8dbac]{user-select:none;color:var(--color-main-text)}.mx-datepicker[data-v-4e8dbac] svg{fill:var(--color-main-text)}.mx-datepicker[data-v-4e8dbac] .mx-input-wrapper .mx-input{width:100%;border:1px solid var(--color-border);background-color:var(--color-main-background);background-clip:content-box}.mx-datepicker[data-v-4e8dbac] .mx-input-wrapper:disabled,.mx-datepicker[data-v-4e8dbac] .mx-input-wrapper.disabled{cursor:not-allowed;opacity:.7}.mx-datepicker[data-v-4e8dbac] .mx-input-wrapper .mx-icon-calendar,.mx-datepicker[data-v-4e8dbac] .mx-input-wrapper .mx-icon-clear{color:var(--color-text-lighter)}.mx-datepicker[data-v-4e8dbac] .mx-datepicker-main{color:var(--color-main-text);border:1px solid var(--color-border);background-color:var(--color-main-background);font-family:var(--font-face) !important;line-height:1.5}.mx-datepicker[data-v-4e8dbac] .mx-datepicker-popup{z-index:1000;box-shadow:none}.mx-datepicker[data-v-4e8dbac] .mx-datepicker-popup .mx-datepicker-sidebar+.mx-datepicker-content{border-left:1px solid var(--color-border)}.mx-datepicker[data-v-4e8dbac] .mx-datepicker-header{border-bottom:1px solid var(--color-border)}.mx-datepicker[data-v-4e8dbac] .mx-datepicker-footer{border-top:1px solid var(--color-border)}.mx-datepicker[data-v-4e8dbac] .mx-calendar{width:234px;padding:5px}.mx-datepicker[data-v-4e8dbac] .mx-calendar.mx-calendar-week-mode{width:266px}.mx-datepicker[data-v-4e8dbac] .mx-time+.mx-time,.mx-datepicker[data-v-4e8dbac] .mx-calendar+.mx-calendar{border-left:1px solid var(--color-border)}.mx-datepicker[data-v-4e8dbac] .mx-range-wrapper{display:flex;overflow:hidden}.mx-datepicker[data-v-4e8dbac] .mx-range-wrapper .mx-calendar-content .mx-table-date .cell.active{border-radius:var(--border-radius) 0 0 var(--border-radius)}.mx-datepicker[data-v-4e8dbac] .mx-range-wrapper .mx-calendar-content .mx-table-date .cell.in-range+.cell.active{border-radius:0 var(--border-radius) var(--border-radius) 0}.mx-datepicker[data-v-4e8dbac] .mx-table{text-align:center}.mx-datepicker[data-v-4e8dbac] .mx-table thead>tr>th{text-align:center;opacity:.5;color:var(--color-text-lighter)}.mx-datepicker[data-v-4e8dbac] .mx-table tr:focus,.mx-datepicker[data-v-4e8dbac] .mx-table tr:hover,.mx-datepicker[data-v-4e8dbac] .mx-table tr:active{background-color:transparent}.mx-datepicker[data-v-4e8dbac] .mx-table .cell{transition:all 100ms ease-in-out;text-align:center;opacity:.7;border-radius:50px}.mx-datepicker[data-v-4e8dbac] .mx-table .cell>*{cursor:pointer}.mx-datepicker[data-v-4e8dbac] .mx-table .cell.today{opacity:1;color:var(--color-primary-element);font-weight:bold}.mx-datepicker[data-v-4e8dbac] .mx-table .cell.today:hover,.mx-datepicker[data-v-4e8dbac] .mx-table .cell.today:focus{color:var(--color-primary-text)}.mx-datepicker[data-v-4e8dbac] .mx-table .cell.in-range,.mx-datepicker[data-v-4e8dbac] .mx-table .cell.disabled{border-radius:0;font-weight:normal}.mx-datepicker[data-v-4e8dbac] .mx-table .cell.in-range{opacity:.7}.mx-datepicker[data-v-4e8dbac] .mx-table .cell.not-current-month{opacity:.5;color:var(--color-text-lighter)}.mx-datepicker[data-v-4e8dbac] .mx-table .cell.not-current-month:hover,.mx-datepicker[data-v-4e8dbac] .mx-table .cell.not-current-month:focus{opacity:1}.mx-datepicker[data-v-4e8dbac] .mx-table .cell:hover,.mx-datepicker[data-v-4e8dbac] .mx-table .cell:focus,.mx-datepicker[data-v-4e8dbac] .mx-table .cell.actived,.mx-datepicker[data-v-4e8dbac] .mx-table .cell.active,.mx-datepicker[data-v-4e8dbac] .mx-table .cell.in-range{opacity:1;color:var(--color-primary-text);background-color:var(--color-primary-element);font-weight:bold}.mx-datepicker[data-v-4e8dbac] .mx-table .cell.disabled{opacity:.5;color:var(--color-text-lighter);border-radius:0;background-color:var(--color-background-darker)}.mx-datepicker[data-v-4e8dbac] .mx-table .mx-week-number{text-align:center;opacity:.7;border-radius:50px}.mx-datepicker[data-v-4e8dbac] .mx-table span.mx-week-number,.mx-datepicker[data-v-4e8dbac] .mx-table li.mx-week-number,.mx-datepicker[data-v-4e8dbac] .mx-table span.cell,.mx-datepicker[data-v-4e8dbac] .mx-table li.cell{min-height:32px}.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date thead,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date tbody,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-year,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-month{display:flex;flex-direction:column;justify-content:space-around}.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date thead tr,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date tbody tr,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-year tr,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-month tr{display:inline-flex;align-items:center;flex:1 1 32px;justify-content:space-around;min-height:32px}.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date thead th,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date thead td,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date tbody th,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date tbody td,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-year th,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-year td,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-month th,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-month td{display:flex;align-items:center;flex:0 1 32%;justify-content:center;min-width:32px;height:95%;min-height:32px;transition:background 100ms ease-in-out}.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-year tr th,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-year tr td{flex-basis:48%}.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date tr th,.mx-datepicker[data-v-4e8dbac] .mx-table.mx-table-date tr td{flex-basis:32px}.mx-datepicker[data-v-4e8dbac] .mx-btn{min-width:32px;height:32px;margin:0 auto;padding:7px 10px;cursor:pointer;text-decoration:none;opacity:.5;color:var(--color-text-lighter);border-radius:32px;line-height:20px}.mx-datepicker[data-v-4e8dbac] .mx-btn:hover,.mx-datepicker[data-v-4e8dbac] .mx-btn:focus{opacity:1;color:var(--color-main-text);background-color:var(--color-background-darker)}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header,.mx-datepicker[data-v-4e8dbac] .mx-time-header{display:inline-flex;align-items:center;justify-content:space-between;width:100%;height:44px;margin-bottom:4px}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button,.mx-datepicker[data-v-4e8dbac] .mx-time-header button{min-width:32px;min-height:32px;margin:0;cursor:pointer;text-align:center;text-decoration:none;opacity:.7;color:var(--color-main-text);border-radius:32px;line-height:20px}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button:hover,.mx-datepicker[data-v-4e8dbac] .mx-time-header button:hover,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button:focus,.mx-datepicker[data-v-4e8dbac] .mx-time-header button:focus{opacity:1;color:var(--color-main-text);background-color:var(--color-background-darker)}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-double-left,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-double-left,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-left,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-left,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-right,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-right,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-double-right,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-double-right{align-items:center;justify-content:center;width:32px;padding:0}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-double-left:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-double-left:before,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-left:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-left:before,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-right:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-right:before,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-double-right:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-double-right:before{display:block;font-size:16px}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-double-left>i,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-double-left>i,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-left>i,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-left>i,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-right>i,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-right>i,.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-double-right>i,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-double-right>i{display:none}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header .mx-calendar-header-label,.mx-datepicker[data-v-4e8dbac] .mx-time-header .mx-calendar-header-label{display:flex}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header .mx-btn-icon-double-left:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header .mx-btn-icon-double-left:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header .mx-btn-icon-left:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header .mx-btn-icon-left:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header .mx-btn-icon-right:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header .mx-btn-icon-right:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header .mx-btn-icon-double-right:before,.mx-datepicker[data-v-4e8dbac] .mx-time-header .mx-btn-icon-double-right:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-right,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-right{order:2}.mx-datepicker[data-v-4e8dbac] .mx-calendar-header button.mx-btn-icon-double-right,.mx-datepicker[data-v-4e8dbac] .mx-time-header button.mx-btn-icon-double-right{order:3}.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row .mx-week-number{font-weight:bold}.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row:hover,.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row.mx-active-week{opacity:1;border-radius:50px;background-color:var(--color-background-dark)}.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row:hover td,.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row.mx-active-week td{background-color:transparent}.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row:hover td,.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row:hover td:hover,.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row:hover td:focus,.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row.mx-active-week td,.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row.mx-active-week td:hover,.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row.mx-active-week td:focus{color:inherit}.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row.mx-active-week{color:var(--color-primary-text);background-color:var(--color-primary-element)}.mx-datepicker[data-v-4e8dbac] .mx-calendar-week-mode .mx-date-row.mx-active-week td{opacity:.7;font-weight:normal}.mx-datepicker[data-v-4e8dbac] .mx-time{background-color:var(--color-main-background)}.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-header{justify-content:center;border-bottom:1px solid var(--color-border)}.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-column{border-left:1px solid var(--color-border)}.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-option.active,.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-option:hover,.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-item.active,.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-item:hover{color:var(--color-primary-text);background-color:var(--color-primary-element)}.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-option.disabled,.mx-datepicker[data-v-4e8dbac] .mx-time .mx-time-item.disabled{cursor:not-allowed;opacity:.5;color:var(--color-main-text);background-color:var(--color-main-background)}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(105);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"li.active[data-v-aee1c25a]{box-shadow:inset 4px 0 var(--color-primary)}.action-link[data-v-aee1c25a]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;line-height:44px}.action-link[data-v-aee1c25a]:hover,.action-link[data-v-aee1c25a]:focus{opacity:1}.action-link>span[data-v-aee1c25a]{cursor:pointer;white-space:nowrap}.action-link__icon[data-v-aee1c25a]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-link p[data-v-aee1c25a]{width:150px;padding:7px 0;margin:auto;cursor:pointer;text-align:left;line-height:1.6em}.action-link__longtext[data-v-aee1c25a]{cursor:pointer;white-space:pre-wrap}.action-link__title[data-v-aee1c25a]{font-weight:bold}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(106);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"li.active[data-v-196b3c3e]{box-shadow:inset 4px 0 var(--color-primary)}.action-router[data-v-196b3c3e]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;line-height:44px}.action-router[data-v-196b3c3e]:hover,.action-router[data-v-196b3c3e]:focus{opacity:1}.action-router>span[data-v-196b3c3e]{cursor:pointer;white-space:nowrap}.action-router__icon[data-v-196b3c3e]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-router p[data-v-196b3c3e]{width:150px;padding:7px 0;margin:auto;cursor:pointer;text-align:left;line-height:1.6em}.action-router__longtext[data-v-196b3c3e]{cursor:pointer;white-space:pre-wrap}.action-router__title[data-v-196b3c3e]{font-weight:bold}.action--disabled[data-v-196b3c3e]{pointer-events:none;opacity:.5}.action--disabled[data-v-196b3c3e]:hover,.action--disabled[data-v-196b3c3e]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-196b3c3e]{opacity:1 !important}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(107);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-28dd8796]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.app-navigation-toggle[data-v-28dd8796]{position:absolute;top:0;right:0;margin-right:-44px;width:44px;height:44px;padding:14px;cursor:pointer;opacity:0.6;font-size:16px;line-height:17px}.app-navigation-toggle[data-v-28dd8796]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.app-navigation-toggle[data-v-28dd8796]:hover,.app-navigation-toggle[data-v-28dd8796]:focus{opacity:1}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(108);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".empty-content{margin-top:20vh;display:flex;flex-direction:column;align-items:center}.empty-content__icon{width:64px;height:64px;margin:0 auto 15px;opacity:.4;background-size:64px;background-repeat:no-repeat;background-position:center}.empty-content__title{margin-bottom:10px}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(109);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-7d9c1e9f]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.crumb[data-v-7d9c1e9f]{background-image:none;display:inline-flex;height:44px;padding:0}.crumb[data-v-7d9c1e9f]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.crumb[data-v-7d9c1e9f]::before{display:flex;align-items:center;order:1;color:var(--color-border-dark);font-size:26px}.crumb--hidden[data-v-7d9c1e9f]{display:none}.crumb--with-action a[data-v-7d9c1e9f]{padding-right:2px}.crumb a[data-v-7d9c1e9f]{align-items:center;display:inline-flex}.crumb a>span[data-v-7d9c1e9f]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(110);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-df113852]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.modal-mask[data-v-df113852]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,0.5)}.modal-mask--dark[data-v-df113852]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-df113852]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;transition:opacity 250ms, visibility 250ms}.modal-header.invisible[style*=\\'display:none\\'][data-v-df113852],.modal-header.invisible[style*=\\'display: none\\'][data-v-df113852]{visibility:hidden}.modal-header .modal-title[data-v-df113852]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px}@media only screen and (min-width: 512px){.modal-header .modal-title[data-v-df113852]{text-align:center;padding-left:132px}}.modal-header .icons-menu[data-v-df113852]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .icon-close[data-v-df113852]{box-sizing:border-box;margin:3px;padding:10px 11px;color:#fff;background-image:none;font-size:23px}.modal-header .icons-menu .icon-close[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.modal-header .icons-menu .play-pause[data-v-df113852]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;color:white;border:none;background-color:transparent;font-size:22px}.modal-header .icons-menu .play-pause:hover .icon-play[data-v-df113852],.modal-header .icons-menu .play-pause:hover .icon-pause[data-v-df113852],.modal-header .icons-menu .play-pause:focus .icon-play[data-v-df113852],.modal-header .icons-menu .play-pause:focus .icon-pause[data-v-df113852]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause .icon-play[data-v-df113852],.modal-header .icons-menu .play-pause .icon-pause[data-v-df113852]{box-sizing:border-box;width:44px;height:44px;margin:3px;opacity:.7;background-image:none;cursor:pointer}.modal-header .icons-menu .play-pause .icon-play[data-v-df113852]{padding:11px 13px}.modal-header .icons-menu .play-pause .icon-play[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.modal-header .icons-menu .play-pause .icon-pause[data-v-df113852]{padding:12px;font-size:19.5px}.modal-header .icons-menu .play-pause .icon-pause[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.modal-header .icons-menu .header-actions[data-v-df113852]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-df113852]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-df113852] .action-item__menutoggle{padding:13px 11px;color:#fff;font-size:22px}.modal-wrapper[data-v-df113852]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-df113852],.modal-wrapper .next[data-v-df113852]{z-index:10000;display:flex !important;align-items:center;justify-content:center;width:15%;min-width:60px;height:100%;transition:opacity 250ms, visibility 250ms}.modal-wrapper .prev.invisible[style*=\\'display:none\\'][data-v-df113852],.modal-wrapper .prev.invisible[style*=\\'display: none\\'][data-v-df113852],.modal-wrapper .next.invisible[style*=\\'display:none\\'][data-v-df113852],.modal-wrapper .next.invisible[style*=\\'display: none\\'][data-v-df113852]{visibility:hidden}.modal-wrapper .icon-next[data-v-df113852],.modal-wrapper .icon-previous[data-v-df113852]{box-sizing:border-box;width:44px;height:44px;padding:12px 11px;color:white;border-radius:22px;background-image:none;font-size:24px}.modal-wrapper .icon-previous[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.modal-wrapper .icon-next[data-v-df113852]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.modal-wrapper .modal-container[data-v-df113852]{display:block;overflow:hidden;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);box-shadow:0 0 40px rgba(0,0,0,0.2)}.modal-wrapper:not(.modal-wrapper--large):not(.modal-wrapper--full) .modal-container[data-v-df113852]{max-width:900px;max-height:80%}.modal-wrapper--full .modal-container[data-v-df113852]{max-width:100%;max-height:100%;border-radius:0}.modal-wrapper--full .prev[data-v-df113852],.modal-wrapper--full .next[data-v-df113852],.modal-wrapper--spread-navigation .prev[data-v-df113852],.modal-wrapper--spread-navigation .next[data-v-df113852]{position:absolute;width:10%}.modal-wrapper--full .prev[data-v-df113852],.modal-wrapper--spread-navigation .prev[data-v-df113852]{left:0}.modal-wrapper--full .next[data-v-df113852],.modal-wrapper--spread-navigation .next[data-v-df113852]{right:0}.modal-wrapper--large .modal-container[data-v-df113852]{max-width:85%;max-height:90%}.modal-wrapper--large .prev[data-v-df113852],.modal-wrapper--large .next[data-v-df113852]{width:10%;min-width:44px}.fade-enter-active[data-v-df113852],.fade-leave-active[data-v-df113852]{transition:opacity 250ms}.fade-enter[data-v-df113852],.fade-leave-to[data-v-df113852]{opacity:0}.fade-visibility-enter[data-v-df113852],.fade-visibility-leave-to[data-v-df113852]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-df113852],.modal-in-leave-active[data-v-df113852],.modal-out-enter-active[data-v-df113852],.modal-out-leave-active[data-v-df113852]{transition:opacity 250ms}.modal-in-enter[data-v-df113852],.modal-in-leave-to[data-v-df113852],.modal-out-enter[data-v-df113852],.modal-out-leave-to[data-v-df113852]{opacity:0}.modal-in-enter .modal-container[data-v-df113852],.modal-in-leave-to .modal-container[data-v-df113852]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-df113852],.modal-out-leave-to .modal-container[data-v-df113852]{transform:scale(1.1)}.modal-mask .play-pause .progress-ring[data-v-df113852]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause .progress-ring .progress-ring__circle[data-v-df113852]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-df113852 linear 3s infinite;stroke-linecap:round;stroke-dashoffset:94.24778;stroke-dasharray:94.24778}.modal-mask .play-pause--paused .icon-pause[data-v-df113852]{animation:breath-data-v-df113852 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause--paused .progress-ring__circle[data-v-df113852]{animation-play-state:paused !important}@keyframes progressring-data-v-df113852{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-df113852{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\\n',\"\"]),e.exports=t},function(e,t,n){var a=n(215);\"string\"==typeof a&&(a=[[e.i,a,\"\"]]),a.locals&&(e.exports=a.locals);(0,n(2).default)(\"b5985a26\",a,!0,{})},function(e,t,n){(t=n(1)(!1)).push([e.i,\".multiselect[data-v-4e8dbac]{margin:0;padding:0 !important;display:inline-block;min-width:160px;position:relative;background-color:var(--color-main-background)}.multiselect[data-v-4e8dbac]:not(.multiselect--active) .multiselect__single{position:absolute;width:100%}.multiselect[data-v-4e8dbac].multiselect--active input.multiselect__input{opacity:1 !important;cursor:text !important;border-radius:var(--border-radius) var(--border-radius) 0 0}.multiselect[data-v-4e8dbac].multiselect--active .multiselect__limit{display:none}.multiselect[data-v-4e8dbac].multiselect--active.multiselect--above input.multiselect__input{border-radius:0 0 var(--border-radius) var(--border-radius)}.multiselect[data-v-4e8dbac].multiselect--disabled,.multiselect[data-v-4e8dbac].multiselect--disabled .multiselect__single{background-color:var(--color-background-dark) !important}.multiselect[data-v-4e8dbac].icon-loading-small::after{left:100%;margin-left:-24px}.multiselect[data-v-4e8dbac] .multiselect__tags{display:flex;flex-wrap:nowrap;overflow:hidden;border:1px solid var(--color-border-dark);cursor:pointer;position:relative;border-radius:3px;min-height:34px}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__tags-wrap{align-items:center;display:inline-flex;overflow:hidden;max-width:100%;position:relative;padding:3px 5px;flex-grow:1}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__tags-wrap:empty ~ input.multiselect__input{opacity:1 !important}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__tags-wrap:empty ~ input.multiselect__input+span:not(.multiselect__single){display:none}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__tags-wrap .multiselect__tag{flex:1 0 0;line-height:20px;padding:1px 5px;background-image:none;color:var(--color-main-text);border:1px solid var(--color-border-dark);display:inline-flex;align-items:center;border-radius:3px;min-width:0;max-width:50%;max-width:fit-content;max-width:-moz-fit-content}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__tags-wrap .multiselect__tag:only-child{flex:0 1 auto}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__tags-wrap .multiselect__tag:not(:last-child){margin-right:5px}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__tags-wrap .multiselect__tag>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__single,.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__placeholder{padding:7px 6px;flex:0 0 100%;z-index:1;background-color:var(--color-main-background);cursor:pointer;line-height:18px;color:var(--color-text-lighter)}.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__strong,.multiselect[data-v-4e8dbac] .multiselect__tags .multiselect__limit{flex:0 0 auto;line-height:20px;color:var(--color-text-lighter);display:inline-flex;align-items:center;opacity:.7;margin-right:5px;z-index:5}.multiselect[data-v-4e8dbac] .multiselect__tags input.multiselect__input{width:100% !important;position:absolute !important;top:0;left:0;margin:0;opacity:0;height:100%;border:none;display:block !important;cursor:pointer;padding:7px 6px !important}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper{position:absolute;width:100%;margin-top:-1px;border:1px solid var(--color-border-dark);background:var(--color-main-background);z-index:50;max-height:250px;overflow-y:auto;border-radius:0 0 var(--border-radius) var(--border-radius)}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper .multiselect__content{width:100%;padding:0}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li{position:relative;display:flex;align-items:center;background-color:transparent}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li,.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li span{cursor:pointer}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li>span{padding:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;height:auto;min-height:1em;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-flex;align-items:center;background-color:transparent;color:var(--color-text-lighter);width:100%}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li>span::before{content:' ';background-repeat:no-repeat;background-position:center;min-width:16px;min-height:16px;display:block;opacity:.5;margin-right:5px;visibility:hidden}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li>span.multiselect__option--disabled{background-color:var(--color-background-dark);opacity:.5}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li>span.multiselect__option--highlight{color:var(--color-main-text);background-color:var(--color-background-dark)}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li>span:not(.multiselect__option--disabled):hover::before{opacity:.3}.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li>span.multiselect__option--selected::before,.multiselect[data-v-4e8dbac] .multiselect__content-wrapper li>span:not(.multiselect__option--disabled):hover::before{visibility:visible}.multiselect[data-v-4e8dbac].multiselect--above .multiselect__content-wrapper{bottom:100%;margin-bottom:-1px}.multiselect[data-v-4e8dbac].multiselect--multiple .multiselect__content-wrapper li>span::before{background-image:var(--icon-checkmark-000)}.multiselect[data-v-4e8dbac].multiselect--multiple .multiselect__content-wrapper li>span[data-select='create']::before{background-image:var(--icon-add-000);visibility:visible}.multiselect[data-v-4e8dbac].multiselect--single .multiselect__content-wrapper li>span::before{display:none}.multiselect[data-v-4e8dbac]:hover .multiselect__placeholder,.multiselect[data-v-4e8dbac] input.multiselect__input .multiselect__placeholder{color:var(--color-main-text)}\\n\",\"\"]),e.exports=t},function(e,t){e.exports=require(\"vue-color\")},function(e,t){e.exports=require(\"tributejs/dist/tribute.esm\")},function(e,t){e.exports=require(\"string-length\")},function(e,t,n){\"use strict\";n.r(t);var a=n(134);\n/**\n * @copyright Copyright (c) 2020 Greta Doci <gretadoci@gmail.com>\n *\n * @author 2020 Greta Doci <gretadoci@gmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=a.a},function(e,t,n){\"use strict\";n.r(t);var a=n(56),o=n(153),i=n(154),r=n(36),s=(n(50),n(283),n(8),n(9),n(100),n(7),n(30),n(3)),c=n.n(s),l=function(e){return e&&\"string\"==typeof e&&\"\"!==e.trim()&&-1===e.indexOf(\" \")},d={name:\"AppSidebarTabs\",props:{active:{type:String,default:\"\"}},data:function(){return{tabs:[],activeTab:\"\",children:[]}},computed:{hasMultipleTabs:function(){return this.tabs.length>1},currentTabIndex:function(){var e=this;return this.tabs.findIndex((function(t){return t.id===e.activeTab}))}},watch:{active:function(e){e!==this.activeTab&&this.updateActive()},children:function(){this.updateTabs()}},mounted:function(){this.updateTabs(),this.children=this.$children},methods:{setActive:function(e){var t=e.target.closest(\"a\").dataset.id;this.activeTab=t,this.$emit(\"update:active\",this.activeTab)},focusPreviousTab:function(){this.currentTabIndex>0&&(this.activeTab=this.tabs[this.currentTabIndex-1].id,this.$emit(\"update:active\",this.activeTab)),this.focusActiveTab()},focusNextTab:function(){this.currentTabIndex<this.tabs.length-1&&(this.activeTab=this.tabs[this.currentTabIndex+1].id,this.$emit(\"update:active\",this.activeTab)),this.focusActiveTab()},focusFirstTab:function(){this.activeTab=this.tabs[0].id,this.$emit(\"update:active\",this.activeTab),this.focusActiveTab()},focusLastTab:function(){this.activeTab=this.tabs[this.tabs.length-1].id,this.$emit(\"update:active\",this.activeTab),this.focusActiveTab()},focusActiveTab:function(){this.$el.querySelector(\"#\"+this.activeTab).focus()},focusActiveTabContent:function(){this.$el.querySelector(\"#tab-\"+this.activeTab).focus()},updateActive:function(){var e=this;this.activeTab=this.active&&-1!==this.tabs.findIndex((function(t){return t.id===e.active}))?this.active:this.tabs.length>0?this.tabs[0].id:\"\"},updateTabs:function(){if(this.$slots.default){var e=this.$slots.default.filter((function(e){return e.tag||e.text.trim()})),t=[],n=e.reduce((function(e,n){var a,o=n.componentInstance;return(a=null==o?void 0:o.name)&&\"string\"==typeof a&&\"\"!==a.trim()&&l(null==o?void 0:o.id)&&l(null==o?void 0:o.icon)?e.push(o):t.push(n),e}),[]);0!==n.length&&n.length!==e.length&&(c.a.util.warn(\"Mixing tabs and non-tab-content is not possible.\"),t.map((function(e){return console.debug(\"Ignoring invalid tab\",e)}))),this.tabs=n.sort((function(e,t){var n=e.order||0,a=t.order||0;return n===a?OC.Util.naturalSortCompare(e.name,t.name):n-a})),this.tabs.length>0&&this.updateActive()}else this.tabs=[]}}},m=(n(284),n(0)),u=Object(m.a)(d,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"app-sidebar-tabs\"},[e.hasMultipleTabs?n(\"nav\",{staticClass:\"app-sidebar-tabs__nav\",on:{keydown:[function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"left\",37,t.key,[\"Left\",\"ArrowLeft\"])||\"button\"in t&&0!==t.button||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusPreviousTab(t))},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"right\",39,t.key,[\"Right\",\"ArrowRight\"])||\"button\"in t&&2!==t.button||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusNextTab(t))},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"tab\",9,t.key,\"Tab\")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusActiveTabContent(t))},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"page-up\",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusFirstTab(t))},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"page-down\",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusLastTab(t))}]}},[n(\"ul\",e._l(e.tabs,(function(t){return n(\"li\",{key:t.id,staticClass:\"app-sidebar-tabs__tab\"},[n(\"a\",{class:{active:e.activeTab===t.id},attrs:{id:t.id,\"aria-controls\":\"tab-\"+t.id,\"aria-selected\":e.activeTab===t.id,\"data-id\":t.id,href:\"#tab-\"+t.id,tabindex:e.activeTab===t.id?null:-1,role:\"tab\"},on:{click:function(t){return t.preventDefault(),e.setActive(t)}}},[n(\"span\",{staticClass:\"app-sidebar-tabs__tab-icon\",class:t.icon}),e._v(\"\\n\\t\\t\\t\\t\\t\"+e._s(t.name)+\"\\n\\t\\t\\t\\t\")])])})),0)]):e._e(),e._v(\" \"),n(\"div\",{staticClass:\"app-sidebar-tabs__content\",class:{\"app-sidebar-tabs__content--multiple\":e.hasMultipleTabs}},[e._t(\"default\")],2)])}),[],!1,null,\"40af5753\",null).exports,p=n(134),g=n(52),f={name:\"AppSidebar\",components:{Actions:a.default,AppSidebarTabs:u,EmptyContent:p.a},directives:{focus:o.default,linkify:i.default,ClickOutside:g.directive},mixins:[r.a],props:{active:{type:String,default:\"\"},title:{type:String,default:\"\",required:!0},titleEditable:{type:Boolean,default:!1},titlePlaceholder:{type:String,default:\"\"},subtitle:{type:String,default:\"\"},background:{type:String,default:\"\"},starred:{type:Boolean,default:null},starLoading:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},compact:{type:Boolean,default:!1},empty:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},linkifyTitle:{type:Boolean,default:!1}},data:function(){return{isStarred:this.starred}},computed:{canStar:function(){return null!==this.isStarred},hasFigure:function(){return this.$slots.header||this.background},hasFigureClickListener:function(){return this.$listeners[\"figure-click\"]}},watch:{starred:function(){this.isStarred=this.starred}},methods:{closeSidebar:function(e){this.$emit(\"close\",e)},onFigureClick:function(e){this.$emit(\"figure-click\",e)},toggleStarred:function(){this.isStarred=!this.isStarred,this.$emit(\"update:starred\",this.isStarred)},editTitle:function(){var e=this;this.$emit(\"update:titleEditable\",!0),this.titleEditable&&this.$nextTick((function(){return e.$refs.titleInput.focus()}))},onTitleInput:function(e){this.$emit(\"update:title\",e.target.value)},onSubmitTitle:function(e){this.$emit(\"update:titleEditable\",!1),this.$emit(\"submit-title\",e)},onDismissEditing:function(){this.$emit(\"update:titleEditable\",!1),this.$emit(\"dismiss-editing\")},onUpdateActive:function(e){this.$emit(\"update:active\",e)}}},A=(n(286),n(288),n(190)),v=n.n(A),b=Object(m.a)(f,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"transition\",{attrs:{name:\"slide-right\",appear:\"\"}},[n(\"aside\",{staticClass:\"app-sidebar\",attrs:{id:\"app-sidebar-vue\"}},[n(\"header\",{staticClass:\"app-sidebar-header\",class:{\"app-sidebar-header--with-figure\":e.hasFigure,\"app-sidebar-header--compact\":e.compact}},[n(\"a\",{staticClass:\"app-sidebar__close icon-close\",attrs:{href:\"#\",title:e.t(\"close\")},on:{click:function(t){return t.preventDefault(),e.closeSidebar(t)}}}),e._v(\" \"),n(\"div\",{staticClass:\"app-sidebar-header__info\"},[e.hasFigure&&!e.empty?n(\"div\",{staticClass:\"app-sidebar-header__figure\",class:{\"app-sidebar-header__figure--with-action\":e.hasFigureClickListener},style:{backgroundImage:\"url(\"+e.background+\")\"},on:{click:e.onFigureClick}},[e._t(\"header\")],2):e._e(),e._v(\" \"),e.empty?e._e():n(\"div\",{staticClass:\"app-sidebar-header__desc\",class:{\"app-sidebar-header__desc--with-tertiary-action\":e.canStar||e.$slots[\"tertiary-actions\"],\"app-sidebar-header__desc--editable\":e.titleEditable&&!e.subtitle,\"app-sidebar-header__desc--with-subtitle--editable\":e.titleEditable&&e.subtitle,\"app-sidebar-header__desc--without-actions\":!e.$slots[\"secondary-actions\"]}},[e.canStar||e.$slots[\"tertiary-actions\"]?n(\"div\",{staticClass:\"app-sidebar-header__tertiary-actions\"},[e._t(\"tertiary-actions\",[e.canStar?n(\"a\",{staticClass:\"app-sidebar-header__star\",class:{\"icon-starred\":e.isStarred&&!e.starLoading,\"icon-star\":!e.isStarred&&!e.starLoading,\"icon-loading-small\":e.starLoading},on:{click:function(t){return t.preventDefault(),e.toggleStarred(t)}}}):e._e()])],2):e._e(),e._v(\" \"),n(\"div\",{staticClass:\"app-sidebar-header__title-container\"},[n(\"h2\",{directives:[{name:\"show\",rawName:\"v-show\",value:!e.titleEditable,expression:\"!titleEditable\"},{name:\"linkify\",rawName:\"v-linkify\",value:{text:e.title,linkify:e.linkifyTitle},expression:\"{text: title, linkify: linkifyTitle}\"}],staticClass:\"app-sidebar-header__maintitle\",on:{click:function(t){return t.target!==t.currentTarget?null:e.editTitle(t)}}},[e._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\\t\\t\\t\\t\")]),e._v(\" \"),e.titleEditable?[n(\"form\",{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:function(){return e.onSubmitTitle()},expression:\"() => onSubmitTitle()\"}],staticClass:\"app-sidebar-header__maintitle-form\",on:{submit:function(t){return t.preventDefault(),e.onSubmitTitle(t)}}},[n(\"input\",{directives:[{name:\"focus\",rawName:\"v-focus\"}],ref:\"titleInput\",staticClass:\"app-sidebar-header__maintitle-input\",attrs:{type:\"text\",placeholder:e.titlePlaceholder},domProps:{value:e.title},on:{keydown:function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"esc\",27,t.key,[\"Esc\",\"Escape\"])?null:e.onDismissEditing(t)},input:e.onTitleInput}}),e._v(\" \"),n(\"button\",{staticClass:\"icon-confirm\",attrs:{type:\"submit\"}})])]:e._e(),e._v(\" \"),\"\"!==e.subtitle.trim()?n(\"p\",{staticClass:\"app-sidebar-header__subtitle\"},[e._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+e._s(e.subtitle)+\"\\n\\t\\t\\t\\t\\t\\t\")]):e._e()],2),e._v(\" \"),e.$slots[\"secondary-actions\"]?n(\"Actions\",{staticClass:\"app-sidebar-header__menu\",attrs:{\"force-menu\":e.forceMenu}},[e._t(\"secondary-actions\")],2):e._e()],1)]),e._v(\" \"),e.$slots[\"primary-actions\"]&&!e.empty?n(\"div\",{staticClass:\"app-sidebar-header__action\"},[e._t(\"primary-actions\")],2):e._e()]),e._v(\" \"),n(\"AppSidebarTabs\",{directives:[{name:\"show\",rawName:\"v-show\",value:!e.loading,expression:\"!loading\"}],ref:\"tabs\",attrs:{active:e.active},on:{\"update:active\":e.onUpdateActive}},[e._t(\"default\")],2),e._v(\" \"),e.loading?n(\"EmptyContent\",{attrs:{icon:\"icon-loading\"}}):e._e()],1)])}),[],!1,null,\"1772ff6b\",null);\"function\"==typeof v.a&&v()(b);var h=b.exports;\n/*\n * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */t.default=h},function(e,t,n){\"use strict\";n.r(t);n(25),n(300),n(31),n(4),n(199),n(61),n(11),n(96),n(57),n(30),n(62);var a=n(217),o=n.n(a),i=n(101),r=n.n(i),s=n(218),c=n.n(s),l=n(5),d=n(12),m={name:\"AutoCompleteResult\",props:{label:{type:String,required:!0},subline:{type:String,default:null},id:{type:String,default:null},icon:{type:String,required:!0},source:{type:String,required:!0},status:{type:[Object,Array],default:function(){return{}}}},computed:{avatarUrl:function(){return this.id&&\"users\"===this.source?this.getAvatarUrl(this.id,44):null},haveStatus:function(){var e,t;return(null===(e=this.status)||void 0===e?void 0:e.icon)||(null===(t=this.status)||void 0===t?void 0:t.status)}},methods:{getAvatarUrl:function(e,t){return Object(d.generateUrl)(\"/avatar/{user}/{size}\",{user:e,size:t})}}},u=(n(301),n(0)),p=Object(u.a)(m,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"autocomplete-result\"},[n(\"div\",{staticClass:\"autocomplete-result__icon\",class:[e.icon,\"autocomplete-result__icon--\"+(e.avatarUrl?\"with-avatar\":\"\")],style:e.avatarUrl?{backgroundImage:\"url(\"+e.avatarUrl+\")\"}:null},[e.haveStatus?n(\"div\",{staticClass:\"autocomplete-result__status\",class:[\"autocomplete-result__status--\"+(e.status&&e.status.icon?\"icon\":e.status.status)]},[e._v(\"\\n\\t\\t\\t\"+e._s(e.status&&e.status.icon||\"\")+\"\\n\\t\\t\")]):e._e()]),e._v(\" \"),n(\"span\",{staticClass:\"autocomplete-result__content\"},[n(\"span\",{staticClass:\"autocomplete-result__title\"},[e._v(\"\\n\\t\\t\\t\"+e._s(e.label)+\"\\n\\t\\t\")]),e._v(\" \"),e.subline?n(\"span\",{staticClass:\"autocomplete-result__subline\"},[e._v(\"\\n\\t\\t\\t\"+e._s(e.subline)+\"\\n\\t\\t\")]):e._e()])])}),[],!1,null,\"4f4ab098\",null).exports;function g(e,t,n,a,o,i,r){try{var s=e[i](r),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(a,o)}var f={name:\"RichContenteditable\",mixins:[n(63).default],props:{value:{type:String,required:!0},placeholder:{type:String,default:Object(l.b)(\"Write message, @ to mention someone …\")},autoComplete:{type:Function,required:!0},menuContainer:{type:Element,default:function(){return document.body}},multiline:{type:Boolean,default:!1},contenteditable:{type:Boolean,default:!0},maxlength:{type:Number,default:null}},data:function(){var e=this;return{tribute:null,options:{fillAttr:\"id\",lookup:function(e){return\"\".concat(e.id,\" \").concat(e.label)},menuContainer:this.menuContainer,menuItemTemplate:function(t){return e.renderComponentHtml(t.original,p)},noMatchTemplate:function(){return'<span class=\"hidden\"></span>'},selectTemplate:function(t){var n;return e.genSelectTemplate(null===(n=t.original)||void 0===n?void 0:n.id)},values:this.debouncedAutoComplete},localValue:\"\"}},computed:{isEmptyValue:function(){return!this.localValue||\"\"===this.localValue.trim()},isFF:function(){return!!navigator.userAgent.match(/firefox/i)},isOverMaxlength:function(){return!(this.isEmptyValue||!this.maxlength)&&c()(this.localValue)>this.maxlength},tooltip:function(){return this.isOverMaxlength?{content:Object(l.b)(\"Message limit of {count} characters reached\",{count:this.maxlength}),show:!0,trigger:\"manual\"}:null}},watch:{value:function(){var e=this.$refs.contenteditable.innerHTML;if(this.value.trim()!==this.parseContent(e).trim()){var t=this.renderContent(this.value);this.$refs.contenteditable.innerHTML=t,this.localValue=this.value}}},mounted:function(){this.tribute=new o.a(this.options),this.tribute.attach(this.$el);var e=this.renderContent(this.value);this.$refs.contenteditable.innerHTML=e},beforeDestroy:function(){this.tribute&&this.tribute.detach(this.$el)},methods:{onInput:function(e){this.updateValue(e.target.innerHTML)},onPaste:function(e){e.preventDefault();var t=e.clipboardData;if(this.$emit(\"paste\",e),0===t.files.length&&Object.values(t.items).every((function(e){return null==e?void 0:e.type.startsWith(\"text\")}))){var n=t.getData(\"text\"),a=window.getSelection();a.rangeCount||this.updateValue(n);var o=this.parseContent(n),i=a.getRangeAt(0);a.deleteFromDocument(),i.insertNode(document.createTextNode(o));var r=document.createRange();r.setStart(e.target,i.endOffset),r.collapse(!0),a.removeAllRanges(),a.addRange(r),this.updateValue(e.target.innerHTML)}},updateValue:function(e){var t=this.parseContent(e);this.localValue=t,this.$emit(\"input\",t),this.$emit(\"update:value\",t)},onDelete:function(e){if(this.isFF&&window.getSelection){var t=window.getSelection(),n=e.target;if(t.isCollapsed&&t.rangeCount){var a=t.getRangeAt(t.rangeCount-1);if(!(3===a.commonAncestorContainer.nodeType&&a.startOffset>0)){var o=document.createRange();if(t.anchorNode!==n)o.selectNodeContents(n),o.setEndBefore(t.anchorNode);else{if(!(t.anchorOffset>0))return;o.setEnd(n,t.anchorOffset)}o.setStart(n,o.endOffset-1);var i=o.cloneContents().lastChild;i&&\"false\"===i.contentEditable&&(o.deleteContents(),e.preventDefault())}}}},onEnter:function(e){this.multiline||this.isOverMaxlength||this.tribute.isActive||(e.preventDefault(),e.stopPropagation(),this.$emit(\"submit\",e))},onCtrlEnter:function(e){this.isOverMaxlength||this.$emit(\"submit\",e)},debouncedAutoComplete:r()(function(){var e,t=(e=regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.autoComplete(t,n);case 1:case\"end\":return e.stop()}}),e,this)})),function(){var t=this,n=arguments;return new Promise((function(a,o){var i=e.apply(t,n);function r(e){g(i,a,o,r,s,\"next\",e)}function s(e){g(i,a,o,r,s,\"throw\",e)}r(void 0)}))});return function(e,n){return t.apply(this,arguments)}}(),100)}},A=(n(303),n(305),n(195)),v=n.n(A),b=Object(u.a)(f,(function(){var e=this,t=e.$createElement;return(e._self._c||t)(\"div\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:e.tooltip,expression:\"tooltip\"}],ref:\"contenteditable\",staticClass:\"rich-contenteditable__input\",class:{\"rich-contenteditable__input--empty\":e.isEmptyValue,\"rich-contenteditable__input--multiline\":e.multiline,\"rich-contenteditable__input--overflow\":e.isOverMaxlength},attrs:{contenteditable:e.contenteditable,placeholder:e.placeholder,\"aria-multiline\":\"true\",role:\"textbox\"},on:{input:e.onInput,keydown:[function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"delete\",[8,46],t.key,[\"Backspace\",\"Delete\",\"Del\"])?null:e.onDelete(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"enter\",13,t.key,\"Enter\")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.onEnter(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"enter\",13,t.key,\"Enter\")?null:t.ctrlKey?t.shiftKey||t.altKey||t.metaKey?null:(t.stopPropagation(),t.preventDefault(),e.onCtrlEnter(t)):null}],paste:e.onPaste}})}),[],!1,null,\"1ea83994\",null);\"function\"==typeof v.a&&v()(b);var h=b.exports;\n/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=h},function(e,t,n){\"use strict\";n.r(t);var a=n(52),o=n(67),i=n(97),r={name:\"AppNavigationIconCollapsible\",props:{open:{type:Boolean,default:!0}},methods:{onClick:function(e){this.$emit(\"click\",e)}}},s=(n(273),n(0)),c=Object(s.a)(r,(function(){var e=this.$createElement;return(this._self._c||e)(\"button\",{staticClass:\"icon-collapse\",class:{\"icon-collapse--rotated\":this.open},on:{click:this.onClick}})}),[],!1,null,\"4e54d078\",null).exports,l=n(43),d={name:\"AppNavigationItem\",components:{Actions:o.a,ActionButton:i.a,AppNavigationIconCollapsible:c},directives:{ClickOutside:a.directive},mixins:[l.default],props:{title:{type:String,required:!0},icon:{type:String,default:\"\"},loading:{type:Boolean,default:!1},to:{type:[String,Object],default:\"\"},exact:{type:Boolean,default:!1},allowCollapse:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},editLabel:{type:String,default:\"\"},editPlaceholder:{type:String,default:\"\"},pinned:{type:Boolean,default:!1},undo:{type:Boolean,default:!1},open:{type:Boolean,default:!1},menuOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},menuIcon:{type:String,default:void 0},menuPlacement:{type:String,default:\"bottom\"}},data:function(){return{newTitle:\"\",opened:this.open,editing:!1}},computed:{collapsible:function(){return this.allowCollapse&&!!this.$slots.default},isIconShown:function(){return!this.collapsible||this.collapsible&&!this.isMobile},canHaveChildren:function(){return\"AppNavigationItem\"!==this.$parent.$options._componentTag},hasChildren:function(){return!!this.$slots.default},hasUtils:function(){return!this.editing&&!!(this.$slots.actions||this.$slots.counter||this.editable||this.undo)},navElement:function(){return this.to?{is:\"router-link\",tag:\"li\",to:this.to,exact:this.exact}:{is:\"li\"}},isActive:function(){return this.to&&this.$route===this.to}},watch:{open:function(e){this.opened=e}},methods:{onMenuToggle:function(e){this.$emit(\"update:menuOpen\",e)},toggleCollapse:function(){this.opened=!this.opened,this.$emit(\"update:open\",this.opened)},onClick:function(e){this.$emit(\"click\",e)},handleEdit:function(){var e=this;this.newTitle=this.title,this.editing=!0,this.onMenuToggle(!1),this.$nextTick((function(){e.$refs.inputTitle.focus()}))},cancelEdit:function(){this.editing=!1},handleRename:function(){this.$emit(\"update:title\",this.newTitle),this.newTitle=\"\",this.editing=!1},handleUndo:function(){this.$emit(\"undo\")}}},m=(n(275),n(189)),u=n.n(m),p=Object(s.a)(d,(function(){var e,t=this,n=t.$createElement,a=t._self._c||n;return a(\"nav-element\",t._b({staticClass:\"app-navigation-entry\",class:{\"app-navigation-entry--no-icon\":!t.isIconShown,\"app-navigation-entry--opened\":t.opened,\"app-navigation-entry--pinned\":t.pinned,\"app-navigation-entry--editing\":t.editing,\"app-navigation-entry--deleted\":t.undo,\"app-navigation-entry--collapsible\":t.collapsible,active:t.isActive}},\"nav-element\",t.navElement,!1),[t.undo||t.editing?t._e():a(\"a\",{staticClass:\"app-navigation-entry-link\",attrs:{href:\"#\"},on:{click:t.onClick}},[a(\"div\",{staticClass:\"app-navigation-entry-icon\",class:(e={\"icon-loading-small\":t.loading},e[t.icon]=t.icon&&t.isIconShown,e)},[t.loading?t._e():t._t(\"icon\")],2),t._v(\" \"),a(\"span\",{staticClass:\"app-navigation-entry__title\",attrs:{title:t.title}},[t._v(\"\\n\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\")])]),t._v(\" \"),t.collapsible?a(\"AppNavigationIconCollapsible\",{attrs:{open:t.opened},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.toggleCollapse(e)}}}):t._e(),t._v(\" \"),t.undo?a(\"div\",{staticClass:\"app-navigation-entry__deleted\"},[a(\"div\",{staticClass:\"app-navigation-entry__deleted-description\"},[t._v(\"\\n\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\")])]):t._e(),t._v(\" \"),t.hasUtils?a(\"div\",{staticClass:\"app-navigation-entry__utils\"},[t._t(\"counter\"),t._v(\" \"),a(\"Actions\",{attrs:{\"menu-align\":\"right\",placement:t.menuPlacement,open:t.menuOpen,\"force-menu\":t.forceMenu,\"default-icon\":t.menuIcon},on:{\"update:open\":t.onMenuToggle}},[t.editable&&!t.editing?a(\"ActionButton\",{attrs:{icon:\"icon-rename\"},on:{click:t.handleEdit}},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.editLabel)+\"\\n\\t\\t\\t\")]):t._e(),t._v(\" \"),t.undo?a(\"ActionButton\",{attrs:{icon:\"app-navigation-entry__deleted-button icon-history\"},on:{click:t.handleUndo}}):t._e(),t._v(\" \"),t._t(\"actions\")],2)],2):t._e(),t._v(\" \"),t.editing?a(\"div\",{staticClass:\"app-navigation-entry__edit\"},[a(\"form\",{on:{submit:function(e){return e.preventDefault(),t.handleRename(e)},keydown:function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"esc\",27,e.key,[\"Esc\",\"Escape\"])||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.cancelEdit(e))}}},[a(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.newTitle,expression:\"newTitle\"}],ref:\"inputTitle\",staticClass:\"app-navigation-entry__edit-input\",attrs:{type:\"text\",placeholder:\"\"!==t.editPlaceholder?t.editPlaceholder:t.title},domProps:{value:t.newTitle},on:{input:function(e){e.target.composing||(t.newTitle=e.target.value)}}}),t._v(\" \"),a(\"button\",{staticClass:\"icon-confirm\",attrs:{type:\"submit\"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.handleRename(e)}}}),t._v(\" \"),a(\"button\",{staticClass:\"icon-close\",attrs:{type:\"reset\"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.cancelEdit(e)}}})])]):t._e(),t._v(\" \"),t.canHaveChildren&&t.hasChildren?a(\"ul\",{staticClass:\"app-navigation-entry__children\"},[t._t(\"default\")],2):t._e(),t._v(\" \"),t._t(\"extra\")],2)}),[],!1,null,\"480b0897\",null);\"function\"==typeof u.a&&u()(p);var g=p.exports;\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=g},function(e,t,n){\"use strict\";n.r(t);n(50),n(299),n(9),n(31),n(4),n(61),n(62);var a=n(36),o=n(162),i=n(41),r=n.n(i),s=n(12);function c(e,t,n,a,o,i,r){try{var s=e[i](r),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(a,o)}\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nvar l=function(e){var t=function e(t){var n={};if(1===t.nodeType){if(t.attributes.length>0){n[\"@attributes\"]={};for(var a=0;a<t.attributes.length;a++){var o=t.attributes.item(a);n[\"@attributes\"][o.nodeName]=o.nodeValue}}}else 3===t.nodeType&&(n=t.nodeValue);if(t.hasChildNodes())for(var i=0;i<t.childNodes.length;i++){var r=t.childNodes.item(i),s=r.nodeName;if(void 0===n[s])n[s]=e(r);else{if(void 0===n[s].push){var c=n[s];n[s]=[],n[s].push(c)}n[s].push(e(r))}}return n}(function(e){var t=null;try{t=(new DOMParser).parseFromString(e,\"text/xml\")}catch(e){console.error(\"Failed to parse xml document\",e)}return t}(e))[\"d:multistatus\"][\"d:response\"],n=[];for(var a in t){var o=t[a][\"d:propstat\"];\"HTTP/1.1 200 OK\"===o[\"d:status\"][\"#text\"]&&n.push({id:parseInt(o[\"d:prop\"][\"oc:id\"][\"#text\"]),displayName:o[\"d:prop\"][\"oc:display-name\"][\"#text\"],canAssign:\"true\"===o[\"d:prop\"][\"oc:can-assign\"][\"#text\"],userAssignable:\"true\"===o[\"d:prop\"][\"oc:user-assignable\"][\"#text\"],userVisible:\"true\"===o[\"d:prop\"][\"oc:user-visible\"][\"#text\"]})}return n},d=function(){var e,t=(e=regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!window.NextcloudVueDocs){e.next=2;break}return e.abrupt(\"return\",Promise.resolve(l(window.NextcloudVueDocs.tags)));case 2:return e.next=4,r()({method:\"PROPFIND\",url:Object(s.generateRemoteUrl)(\"dav\")+\"/systemtags/\",data:'<?xml version=\"1.0\"?>\\n\\t\\t\\t\\t\\t<d:propfind xmlns:d=\"DAV:\" xmlns:oc=\"http://owncloud.org/ns\">\\n\\t\\t\\t\\t\\t <d:prop>\\n\\t\\t\\t\\t\\t\\t<oc:id />\\n\\t\\t\\t\\t\\t\\t<oc:display-name />\\n\\t\\t\\t\\t\\t\\t<oc:user-visible />\\n\\t\\t\\t\\t\\t\\t<oc:user-assignable />\\n\\t\\t\\t\\t\\t\\t<oc:can-assign />\\n\\t\\t\\t\\t\\t </d:prop>\\n\\t\\t\\t\\t\\t</d:propfind>'});case 4:return t=e.sent,e.abrupt(\"return\",l(t.data));case 6:case\"end\":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(a,o){var i=e.apply(t,n);function r(e){c(i,a,o,r,s,\"next\",e)}function s(e){c(i,a,o,r,s,\"throw\",e)}r(void 0)}))});return function(){return t.apply(this,arguments)}}(),m=n(5);function u(e,t,n,a,o,i,r){try{var s=e[i](r),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(a,o)}var p={name:\"MultiselectTags\",components:{Multiselect:o.default},mixins:[a.a],props:{label:{type:String,default:Object(m.b)(\"Select a tag\")},value:{type:[Number,Array],required:!0},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!0}},data:function(){return{tags:[]}},computed:{inputValue:function(){return this.getValueObject()}},beforeCreate:function(){var e,t=this;return(e=regeneratorRuntime.mark((function e(){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,d();case 3:n=e.sent,t.tags=n,e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),console.error(\"Loading systemtags failed\",e.t0);case 10:case\"end\":return e.stop()}}),e,null,[[0,7]])})),function(){var t=this,n=arguments;return new Promise((function(a,o){var i=e.apply(t,n);function r(e){u(i,a,o,r,s,\"next\",e)}function s(e){u(i,a,o,r,s,\"throw\",e)}r(void 0)}))})()},methods:{getValueObject:function(){var e=this;return 0===this.tags.length?[]:this.multiple?this.value.filter((function(e){return\"\"!==e})).map((function(t){return e.tags.find((function(e){return e.id===t}))})):this.tags.find((function(t){return t.id===e.value}))},update:function(e){this.multiple?this.$emit(\"input\",e.map((function(e){return e.id}))):null===e?this.$emit(\"input\",null):this.$emit(\"input\",e.id)},tagLabel:function(e){var t=e.displayName,n=e.userVisible,a=e.userAssignable;return!1===n?Object(m.b)(\"{tag} (invisible)\",{tag:t}):!1===a?Object(m.b)(\"{tag} (restricted)\",{tag:t}):t}}},g=n(0),f=n(194),A=n.n(f),v=Object(g.a)(p,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"Multiselect\",{attrs:{value:e.inputValue,options:e.tags,\"options-limit\":5,placeholder:e.label,\"track-by\":\"id\",\"custom-label\":e.tagLabel,multiple:e.multiple,\"close-on-select\":e.multiple,\"tag-width\":60,disabled:e.disabled},on:{input:e.update},scopedSlots:e._u([{key:\"option\",fn:function(t){return[e._v(\"\\n\\t\\t\"+e._s(e.tagLabel(t.option))+\"\\n\\t\")]}}])},[n(\"span\",{attrs:{slot:\"noResult\"},slot:\"noResult\"},[e._v(e._s(e.t(\"No results\")))])])}),[],!1,null,null,null);\"function\"==typeof A.a&&A()(v);var b=v.exports;\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */t.default=b},function(e,t,n){\"use strict\";n.r(t);n(31),n(30);var a=n(33),o=n(24),i={name:\"ActionCheckbox\",mixins:[a.a],props:{id:{type:String,default:function(){return\"action-\"+Object(o.a)()},validator:function(e){return\"\"!==e.trim()}},checked:{type:Boolean,default:!1},value:{type:[String,Number],default:\"\"},disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}},methods:{checkInput:function(e){this.$refs.label.click()},onChange:function(e){this.$emit(\"update:checked\",this.$refs.checkbox.checked),this.$emit(\"change\",e),this.$refs.checkbox.checked?this.$emit(\"check\"):this.$emit(\"uncheck\")}}},r=(n(251),n(0)),s=n(182),c=n.n(s),l=Object(r.a)(i,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\",class:{\"action--disabled\":e.disabled}},[n(\"span\",{staticClass:\"action-checkbox\"},[n(\"input\",{ref:\"checkbox\",staticClass:\"checkbox action-checkbox__checkbox\",class:{focusable:e.isFocusable},attrs:{id:e.id,disabled:e.disabled,type:\"checkbox\"},domProps:{checked:e.checked,value:e.value},on:{keydown:function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"enter\",13,t.key,\"Enter\")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.checkInput(t))},change:e.onChange}}),e._v(\" \"),n(\"label\",{ref:\"label\",staticClass:\"action-checkbox__label\",attrs:{for:e.id}},[e._v(e._s(e.text))]),e._v(\" \"),e._e()],2)])}),[],!1,null,\"395fa6ac\",null);\"function\"==typeof c.a&&c()(l);var d=l.exports;\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=d},function(e,t,n){\"use strict\";n.r(t);var a=n(119),o=n.n(a),i=n(26),r={name:\"AppContent\",props:{allowSwipeNavigation:{type:Boolean,default:!0}},mounted:function(){this.allowSwipeNavigation&&(this.mc=new o.a(this.$el,{cssProps:{userSelect:\"text\"}}),this.mc.on(\"swipeleft swiperight\",this.handleSwipe))},beforeDestroy:function(){this.mc.off(\"swipeleft swiperight\",this.handleSwipe)},methods:{handleSwipe:function(e){var t=e.srcEvent.pageX-e.deltaX,n=Math.abs(e.deltaX)>70;n&&t<40?Object(i.emit)(\"toggle-navigation\",{open:!0}):n&&t<340&&Object(i.emit)(\"toggle-navigation\",{open:!1})}}},s=(n(263),n(0)),c=Object(s.a)(r,(function(){var e=this.$createElement;return(this._self._c||e)(\"main\",{staticClass:\"app-content no-snapper\",attrs:{id:\"app-content-vue\"}},[this._t(\"default\")],2)}),[],!1,null,\"2c9fa664\",null).exports;t.default=c},function(e,t,n){\"use strict\";n.r(t);n(8),n(13),n(31),n(4),n(14),n(30),n(15),n(34);var a=n(33),o=n(24),i={name:\"ActionInput\",components:{DatetimePicker:n(171).default},mixins:[a.a],props:{id:{type:String,default:function(){return\"action-\"+Object(o.a)()},validator:function(e){return\"\"!==e.trim()}},icon:{type:String,default:\"\",required:!0},type:{type:String,default:\"text\",validator:function(e){return[\"date\",\"datetime-local\",\"month\",\"number\",\"password\",\"search\",\"tel\",\"text\",\"time\",\"url\",\"week\"].indexOf(e)>-1}},value:{type:[String,Date,Number],default:\"\"},disabled:{type:Boolean,default:!1}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(e){return!1}},isDatePickerType:function(){switch(this.type){case\"date\":case\"month\":case\"time\":return this.type;case\"datetime-local\":return\"datetime\"}return!1},isFocusable:function(){return!this.disabled}},methods:{onLeave:function(){this.$refs.datetimepicker&&this.$refs.datetimepicker.$refs.datepicker&&this.$refs.datetimepicker.$refs.datepicker.closePopup()},onInput:function(e){this.$emit(\"input\",e),this.$emit(\"update:value\",e.target?e.target.value:e)},onSubmit:function(e){if(e.preventDefault(),e.stopPropagation(),this.disabled)return!1;this.$emit(\"submit\",e)},onChange:function(e){this.$emit(\"change\",e)}}},r=(n(253),n(0)),s=n(183),c=n.n(s),l=Object(r.a)(i,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\",class:{\"action--disabled\":e.disabled}},[n(\"span\",{staticClass:\"action-input\",class:{\"action-input--picker\":e.isDatePickerType,\"action-input-picker--disabled\":e.disabled},on:{mouseleave:e.onLeave}},[e._t(\"icon\",[n(\"span\",{staticClass:\"action-input__icon\",class:[e.isIconUrl?\"action-input__icon--url\":e.icon],style:{backgroundImage:e.isIconUrl?\"url(\"+e.icon+\")\":null}})]),e._v(\" \"),n(\"form\",{ref:\"form\",staticClass:\"action-input__form\",attrs:{disabled:e.disabled},on:{submit:function(t){return t.preventDefault(),e.onSubmit(t)}}},[e.isDatePickerType?n(\"DatetimePicker\",e._b({ref:\"datetimepicker\",staticClass:\"action-input__picker\",attrs:{value:e.value,placeholder:e.text,disabled:e.disabled,type:e.isDatePickerType,\"input-class\":[\"mx-input\",{focusable:e.isFocusable}]},on:{input:e.onInput,change:e.onChange}},\"DatetimePicker\",e.$attrs,!1)):[n(\"input\",{staticClass:\"action-input__submit\",attrs:{id:e.id,type:\"submit\"}}),e._v(\" \"),n(\"input\",e._b({staticClass:\"action-input__input\",class:{focusable:e.isFocusable},attrs:{type:e.type,placeholder:e.text,disabled:e.disabled},domProps:{value:e.value},on:{input:e.onInput,change:e.onChange}},\"input\",e.$attrs,!1)),e._v(\" \"),n(\"label\",{directives:[{name:\"show\",rawName:\"v-show\",value:!e.disabled,expression:\"!disabled\"}],staticClass:\"action-input__label\",attrs:{for:e.id}})]],2)],2)])}),[],!1,null,\"98d46a10\",null);\"function\"==typeof c.a&&c()(l);var d=l.exports;\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=d},function(e,t,n){\"use strict\";n.r(t);var a={props:{appName:{type:String,required:!0}}},o=(n(297),n(0)),i=n(193),r=n.n(i),s=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"div\",{staticClass:\"content\",class:\"app-\"+this.appName.toLowerCase(),attrs:{id:\"content-vue\"}},[this._t(\"default\")],2)}),[],!1,null,\"07b3675a\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/*\n * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */t.default=c},function(e,t,n){\"use strict\";n.r(t);n(9),n(4),n(10);var a=n(216),o=n(66),i=n(36),r=n(35),s={name:\"ColorPicker\",components:{Chrome:a.Chrome,Popover:r.default},mixins:[i.a],props:{value:{type:String,required:!0}},data:function(){var e=this;return{currentColor:this.value,advanced:!1,palette:Object(o.a)(4).map((function(t){return\"#\"+e.rgbToHex(t.r)+e.rgbToHex(t.g)+e.rgbToHex(t.b)})),open:!0}},watch:{value:function(e){this.currentColor=e}},methods:{handleConfirm:function(){this.$emit(\"close\"),this.$emit(\"submit\",this.currentColor),this.advanced=!1},handleBack:function(){this.advanced=!1},handleMoreSettings:function(){this.advanced=!0},pickColor:function(e){\"string\"!=typeof e&&(e=this.currentColor.hex),this.currentColor=e,this.$emit(\"close\"),this.$emit(\"update:value\",e),this.$emit(\"input\",e)},rgbToHex:function(e){var t=e.toString(16);return 1===t.length?\"0\"+t:t}}},c=(n(295),n(0)),l=n(192),d=n.n(l),m=Object(c.a)(s,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"Popover\",e._g(e._b({scopedSlots:e._u([{key:\"trigger\",fn:function(){return[e._t(\"default\")]},proxy:!0}],null,!0)},\"Popover\",e.$attrs,!1),e.$listeners),[e._v(\" \"),n(\"div\",{staticClass:\"color-picker\"},[n(\"transition\",{attrs:{name:\"slide\",mode:\"out-in\"}},[e.advanced?e._e():n(\"div\",{staticClass:\"color-picker-simple\"},e._l(e.palette,(function(t,a){return n(\"button\",{key:a,staticClass:\"color-picker-simple-color-circle\",class:{\"color-picker-simple-color-circle--active\":t===e.currentColor},style:{\"background-color\":t},on:{click:function(n){return e.pickColor(t)}}})})),0),e._v(\" \"),e.advanced?n(\"Chrome\",{staticClass:\"color-picker-advanced\",attrs:{\"disable-alpha\":!0,\"disable-fields\":!0},on:{input:e.pickColor},model:{value:e.currentColor,callback:function(t){e.currentColor=t},expression:\"currentColor\"}}):e._e()],1),e._v(\" \"),n(\"div\",{staticClass:\"color-picker-navigation\"},[e.advanced?n(\"button\",{staticClass:\"color-picker-navigation-button back\",on:{click:e.handleBack}}):e._e(),e._v(\" \"),e.advanced?e._e():n(\"button\",{staticClass:\"color-picker-navigation-button more-settings\",on:{click:e.handleMoreSettings}}),e._v(\" \"),e.advanced?n(\"button\",{staticClass:\"color-picker-navigation-button confirm\",on:{click:e.handleConfirm}},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.t(\"Choose\"))+\"\\n\\t\\t\\t\")]):e._e()])],1)])}),[],!1,null,\"072260c7\",null);\"function\"==typeof d.a&&d()(m);var u=m.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=u},function(e,t,n){\"use strict\";n.r(t);var a={name:\"AppContentDetails\"},o=n(0),i=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"div\",{staticClass:\"app-content-details\"},[this._t(\"default\")],2)}),[],!1,null,null,null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);var a={name:\"AppContentList\",props:{selection:{type:Boolean,default:!1},showDetails:{type:Boolean,default:!1}}},o=n(0),i=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"div\",{staticClass:\"app-content-list\",class:{selection:this.selection,showdetails:this.showDetails}},[this._t(\"default\")],2)}),[],!1,null,null,null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);n(31);var a={name:\"AppSidebarTab\",props:{id:{type:String,required:!0},name:{type:String,required:!0},icon:{type:String,required:!0},order:{type:Number,default:0}},computed:{isActive:function(){return this.$parent.activeTab===this.id}},methods:{onScroll:function(e){this.$el.scrollHeight-this.$el.scrollTop===this.$el.clientHeight&&this.$emit(\"bottomReached\",e),this.$emit(\"scroll\",e)}}},o=(n(290),n(0)),i=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"section\",{staticClass:\"app-sidebar__tab\",class:{\"app-sidebar__tab--active\":this.isActive},attrs:{id:\"tab-\"+this.id,\"aria-hidden\":!this.isActive,\"aria-labelledby\":this.name,tabindex:\"0\",role:\"tabpanel\"},on:{scroll:this.onScroll}},[this._t(\"default\")],2)}),[],!1,null,\"56b1f56c\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);n(31),n(30);var a=n(33),o=n(24),i={name:\"ActionRadio\",mixins:[a.a],props:{id:{type:String,default:function(){return\"action-\"+Object(o.a)()},validator:function(e){return\"\"!==e.trim()}},checked:{type:Boolean,default:!1},name:{type:String,required:!0},value:{type:[String,Number],default:\"\"},disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}},methods:{toggleInput:function(e){this.$refs.label.click()},onChange:function(e){this.$emit(\"update:checked\",this.$refs.radio.checked),this.$emit(\"change\",e)}}},r=(n(255),n(0)),s=n(184),c=n.n(s),l=Object(r.a)(i,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\",class:{\"action--disabled\":e.disabled}},[n(\"span\",{staticClass:\"action-radio\"},[n(\"input\",{ref:\"radio\",staticClass:\"radio action-radio__radio\",class:{focusable:e.isFocusable},attrs:{id:e.id,disabled:e.disabled,name:e.name,type:\"radio\"},domProps:{checked:e.checked,value:e.value},on:{keydown:function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"enter\",13,t.key,\"Enter\")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.toggleInput(t))},change:e.onChange}}),e._v(\" \"),n(\"label\",{ref:\"label\",staticClass:\"action-radio__label\",attrs:{for:e.id}},[e._v(e._s(e.text))]),e._v(\" \"),e._e()],2)])}),[],!1,null,\"047cd0d4\",null);\"function\"==typeof c.a&&c()(l);var d=l.exports;\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=d},function(e,t,n){\"use strict\";n.r(t);n(29),n(37);var a={name:\"SettingsSection\",components:{},mixins:[n(36).a],props:{title:{type:String,required:!0},description:{type:String,default:\"\"},docUrl:{type:String,default:\"\"}},computed:{hasDescription:function(){return this.description.length>0},hasDocUrl:function(){return this.docUrl.length>0}}},o=(n(307),n(0)),i=n(196),r=n.n(i),s=Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"settings-section\"},[n(\"h2\",{staticClass:\"settings-section__title\"},[e._v(\"\\n\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\"),e.hasDocUrl?n(\"a\",{staticClass:\"settings-section__info\",attrs:{href:e.docUrl,role:\"\",title:e.t(\"External documentation for {title}\",{title:e.title})}}):e._e()]),e._v(\" \"),e.hasDescription?n(\"p\",{staticClass:\"settings-section__desc\"},[e._v(\"\\n\\t\\t\"+e._s(e.description)+\"\\n\\t\")]):e._e(),e._v(\" \"),e._t(\"default\")],2)}),[],!1,null,\"41759dcb\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2019 Greta Doci <gretadoci@gmail.com>\n *\n * @author Greta Doci <gretadoci@gmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=c},function(e,t,n){\"use strict\";n.r(t);var a={name:\"AppNavigationSpacer\"},o=(n(281),n(0)),i=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"li\",{staticClass:\"app-navigation-spacer\"})}),[],!1,null,\"42195cc8\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);n(13),n(31),n(4),n(14),n(30),n(15),n(34);var a=n(35),o=n(79),i={name:\"UserBubble\",components:{Popover:a.default,Avatar:o.default},props:{avatarImage:{type:String,default:void 0},user:{type:String,default:void 0},displayName:{type:String,required:!0},showUserStatus:{type:Boolean,default:!1},url:{type:String,default:void 0,validator:function(e){try{return!!(e=new URL(e))}catch(e){return!1}}},open:{type:Boolean,default:!1},primary:{type:Boolean,default:!1},size:{type:Number,default:20},margin:{type:Number,default:2}},computed:{isPopoverComponent:function(){return this.popoverEmpty?\"div\":\"Popover\"},isAvatarUrl:function(){if(!this.avatarImage)return!1;try{return!!new URL(this.avatarImage)}catch(e){return!1}},isCustomAvatar:function(){return!!this.avatarImage},isLinkComponent:function(){return this.url&&\"\"!==this.url.trim()?{is:\"a\",href:this.url}:{is:\"div\"}},popoverEmpty:function(){return!(\"default\"in this.$slots)},styles:function(){return{content:{height:this.size+\"px\",lineHeight:this.size+\"px\",borderRadius:this.size/2+\"px\"},avatar:{marginLeft:this.margin+\"px\"}}}},methods:{onOpenChange:function(e){this.$emit(\"update:open\",e)},onClick:function(e){this.$emit(\"click\",e)}}},r=(n(309),n(0)),s=n(197),c=n.n(s),l=Object(r.a)(i,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(e.isPopoverComponent,{tag:\"Popover\",staticClass:\"user-bubble__wrapper\",attrs:{trigger:\"hover focus\",open:e.open},on:{\"update:open\":e.onOpenChange}},[n(\"div\",e._b({staticClass:\"user-bubble__content\",class:e.primary?\"user-bubble__content--primary\":\"\",style:e.styles.content,attrs:{slot:\"trigger\"},on:{click:e.onClick},slot:\"trigger\"},\"div\",e.isLinkComponent,!1),[n(\"Avatar\",e._b({staticClass:\"user-bubble__avatar\",style:e.styles.avatar,attrs:{url:e.isCustomAvatar&&e.isAvatarUrl?e.avatarImage:void 0,\"icon-class\":e.isCustomAvatar&&!e.isAvatarUrl?e.avatarImage:void 0,user:e.user,\"display-name\":e.displayName,size:e.size-2*e.margin,\"disable-tooltip\":!0,\"disable-menu\":!0}},\"Avatar\",e.$props,!1)),e._v(\" \"),n(\"h6\",{staticClass:\"user-bubble__title\"},[e._v(\"\\n\\t\\t\\t\"+e._s(e.displayName||e.user)+\"\\n\\t\\t\")]),e._v(\" \"),e.$slots.title?n(\"span\",{staticClass:\"user-bubble__secondary\"},[e._t(\"title\")],2):e._e()],1),e._v(\" \"),e._t(\"default\")],2)}),[],!1,null,\"4442f088\",null);\"function\"==typeof c.a&&c()(l);var d=l.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=d},function(e,t,n){\"use strict\";n.r(t);var a=n(52),o=n(5),i=n(53),r={directives:{ClickOutside:a.directive},mixins:[i.a],props:{title:{type:String,required:!1,default:Object(o.b)(\"Settings\")}},data:function(){return{open:!1,clickOutsideConfig:{handler:this.closeMenu,middleware:this.clickOutsideMiddleware}}},methods:{toggleMenu:function(){this.open=!this.open},closeMenu:function(){this.open=!1}}},s=(n(279),n(0)),c=Object(s.a)(r,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:e.clickOutsideConfig,expression:\"clickOutsideConfig\"}],class:{open:e.open},attrs:{id:\"app-settings\"}},[n(\"div\",{attrs:{id:\"app-settings-header\"}},[n(\"button\",{staticClass:\"settings-button\",on:{click:e.toggleMenu}},[e._v(\"\\n\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\")])]),e._v(\" \"),n(\"transition\",{attrs:{name:\"slide-up\"}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.open,expression:\"open\"}],attrs:{id:\"app-settings-content\"}},[e._t(\"default\")],2)])],1)}),[],!1,null,\"73c43fbe\",null).exports;t.default=c},function(e,t,n){\"use strict\";n.r(t);var a={props:{buttonId:{type:String,required:!1,default:\"\"},buttonClass:{type:[String,Array,Object],required:!1,default:\"\"},disabled:{type:Boolean,required:!1,default:!1},text:{type:String,required:!0}}},o=(n(277),n(0)),i=Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"app-navigation-new\"},[n(\"button\",{class:e.buttonClass,attrs:{id:e.buttonId,type:\"button\",disabled:e.disabled},on:{click:function(t){return e.$emit(\"click\")}}},[e._v(\"\\n\\t\\t\"+e._s(e.text)+\"\\n\\t\")])])}),[],!1,null,\"ecee326e\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);n(11),n(23);var a={name:\"AppSettingsSection\",props:{title:{type:String,required:!0}},computed:{id:function(){return\"settings-section_\"+this.title.replace(/\\s+/g,\"\")}}},o=(n(313),n(0)),i=Object(o.a)(a,(function(){var e=this.$createElement,t=this._self._c||e;return t(\"div\",{staticClass:\"app-settings-section\",attrs:{id:this.id}},[t(\"h3\",{staticClass:\"app-settings-section__title\",attrs:{id:this.title}},[this._v(\"\\n\\t\\t\"+this._s(this.title)+\"\\n\\t\")]),this._v(\" \"),this._t(\"default\")],2)}),[],!1,null,\"0e33da14\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);n(57);var a={name:\"AppNavigationIconBullet\",props:{color:{type:String,required:!0,validator:function(e){return/^#?([0-9A-F]{3}){1,2}$/i.test(e)}}},computed:{formattedColor:function(){return this.color.startsWith(\"#\")?this.color:\"#\"+this.color}},methods:{onClick:function(e){this.$emit(\"click\",e)}}},o=(n(271),n(0)),i=n(188),r=n.n(i),s=Object(o.a)(a,(function(){var e=this.$createElement,t=this._self._c||e;return t(\"div\",{staticClass:\"app-navigation-entry__icon-bullet\",on:{click:this.onClick}},[t(\"div\",{style:{backgroundColor:this.formattedColor}})])}),[],!1,null,\"8f9e955c\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=c},function(e,t,n){\"use strict\";n.r(t);var a={name:\"ActionSeparator\"},o=(n(257),n(0)),i=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"li\",{staticClass:\"action action-separator action--disabled\"})}),[],!1,null,\"5339ba06\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);var a={name:\"AppNavigationCounter\",props:{highlighted:{type:Boolean,default:!1}}},o=(n(269),n(0)),i=n(187),r=n.n(i),s=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"div\",{staticClass:\"app-navigation-entry__counter\",class:{\"app-navigation-entry__counter--highlighted\":this.highlighted}},[this._t(\"default\")],2)}),[],!1,null,\"03f63035\",null);\"function\"==typeof r.a&&r()(s);var c=s.exports;\n/**\n * @copyright Copyright (c) 2019 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=c},function(e,t,n){\"use strict\";n.r(t);var a={name:\"AppNavigationCaption\",props:{title:{type:String,required:!0}}},o=(n(267),n(0)),i=Object(o.a)(a,(function(){var e=this.$createElement;return(this._self._c||e)(\"li\",{staticClass:\"app-navigation-caption\"},[this._v(\"\\n\\t\"+this._s(this.title)+\"\\n\")])}),[],!1,null,\"46add67c\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);n(30);var a=n(39),o=n(24),i={name:\"ActionTextEditable\",mixins:[a.a],props:{id:{type:String,default:function(){return\"action-\"+Object(o.a)()},validator:function(e){return\"\"!==e.trim()}},disabled:{type:Boolean,default:!1},value:{type:String,default:\"\"}},computed:{isFocusable:function(){return!this.disabled}},methods:{onInput:function(e){this.$emit(\"input\",e),this.$emit(\"update:value\",e.target.value)},onSubmit:function(e){if(e.preventDefault(),e.stopPropagation(),this.disabled)return!1;this.$emit(\"submit\",e)}}},r=(n(261),n(0)),s=n(185),c=n.n(s),l=Object(r.a)(i,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\",class:{\"action--disabled\":e.disabled}},[n(\"span\",{staticClass:\"action-text-editable\",on:{click:e.onClick}},[n(\"span\",{staticClass:\"action-text-editable__icon\",class:[e.isIconUrl?\"action-text-editable__icon--url\":e.icon],style:{backgroundImage:e.isIconUrl?\"url(\"+e.icon+\")\":null}}),e._v(\" \"),n(\"form\",{ref:\"form\",staticClass:\"action-text-editable__form\",attrs:{disabled:e.disabled},on:{submit:function(t){return t.preventDefault(),e.onSubmit(t)}}},[n(\"input\",{staticClass:\"action-text-editable__submit\",attrs:{id:e.id,type:\"submit\"}}),e._v(\" \"),e.title?n(\"strong\",{staticClass:\"action-text__title\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\\t\")]):e._e(),e._v(\" \"),n(\"textarea\",e._b({class:[\"action-text-editable__textarea\",{focusable:e.isFocusable}],attrs:{disabled:e.disabled},domProps:{value:e.value},on:{input:e.onInput}},\"textarea\",e.$attrs,!1)),e._v(\" \"),n(\"label\",{directives:[{name:\"show\",rawName:\"v-show\",value:!e.disabled,expression:\"!disabled\"}],staticClass:\"action-text-editable__label\",attrs:{for:e.id}})])])])}),[],!1,null,\"a3150afa\",null);\"function\"==typeof c.a&&c()(l);var d=l.exports;\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=d},function(e,t,n){\"use strict\";n.r(t);var a={name:\"ActionText\",mixins:[n(39).a]},o=(n(259),n(0)),i=Object(o.a)(a,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"li\",{staticClass:\"action\"},[n(\"span\",{staticClass:\"action-text\",on:{click:e.onClick}},[e._t(\"icon\",[\"\"!==e.icon?n(\"span\",{staticClass:\"action-text__icon\",class:[e.isIconUrl?\"action-text__icon--url\":e.icon],style:{backgroundImage:e.isIconUrl?\"url(\"+e.icon+\")\":null}}):e._e()]),e._v(\" \"),e.title?n(\"p\",[n(\"strong\",{staticClass:\"action-text__title\"},[e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.title)+\"\\n\\t\\t\\t\")]),e._v(\" \"),n(\"br\"),e._v(\" \"),n(\"span\",{staticClass:\"action-text__longtext\",domProps:{textContent:e._s(e.text)}})]):e.isLongText?n(\"p\",{staticClass:\"action-text__longtext\",domProps:{textContent:e._s(e.text)}}):n(\"span\",{staticClass:\"action-text__text\"},[e._v(e._s(e.text))]),e._v(\" \"),e._e()],2)])}),[],!1,null,\"90adea72\",null).exports;t.default=i},function(e,t,n){\"use strict\";n.r(t);var a=n(26),o=n(175),i=n(43),r={name:\"AppNavigation\",components:{AppNavigationToggle:o.a},mixins:[i.default],data:function(){return{open:!0}},watch:{isMobile:function(){this.open=!this.isMobile}},mounted:function(){Object(a.subscribe)(\"toggle-navigation\",this.toggleNavigationByEventBus),Object(a.emit)(\"navigation-toggled\",{open:this.open})},unmounted:function(){this.mc.off(\"swipeleft swiperight\"),this.mc.destroy(),Object(a.unsubscribe)(\"toggle-navigation\",this.toggleNavigationByEventBus)},methods:{toggleNavigation:function(e){var t=this;this.open=void 0===e?!this.open:e;var n=getComputedStyle(document.body),o=parseInt(n.getPropertyValue(\"--animation-quick\"))||100;setTimeout((function(){Object(a.emit)(\"navigation-toggled\",{open:t.open})}),1.5*o)},toggleNavigationByEventBus:function(e){var t=e.open;this.toggleNavigation(t)}}},s=(n(265),n(0)),c=n(186),l=n.n(c),d=Object(s.a)(r,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"app-navigation\",class:{\"app-navigation--close\":!e.open},attrs:{id:\"app-navigation-vue\"}},[n(\"AppNavigationToggle\",{attrs:{open:e.open},on:{\"update:open\":e.toggleNavigation}}),e._v(\" \"),e._t(\"default\"),e._v(\" \"),n(\"ul\",{staticClass:\"app-navigation__list\"},[e._t(\"list\")],2),e._v(\" \"),e._t(\"footer\")],2)}),[],!1,null,\"53d3760a\",null);\"function\"==typeof l.a&&l()(d);var m=d.exports;\n/**\n * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */t.default=m},function(e,t,n){\"use strict\";n.r(t);n(87),n(104),n(9),n(100),n(40),n(292),n(88);var a=n(3),o=n.n(a),i=n(101),r=n.n(i),s=n(56),c=n(173),l=n(174),d=n(44),m=n(172),u=n(26),p={name:\"Breadcrumbs\",components:{Actions:s.default,ActionRouter:c.default,ActionLink:l.default,Breadcrumb:m.default},props:{rootIcon:{type:String,default:\"icon-home\"}},data:function(){return{hiddenCrumbs:[],hiddenIndices:[],menuBreadcrumbProps:{title:\"\",forceMenu:!0,disableDrop:!0,open:!1}}},beforeMount:function(){Object(d.a)(this.$slots.default,[\"Breadcrumb\"],this)},beforeUpdate:function(){Object(d.a)(this.$slots.default,[\"Breadcrumb\"],this)},created:function(){var e=this;window.addEventListener(\"resize\",r()((function(){e.handleWindowResize()}),100)),Object(u.subscribe)(\"navigation-toggled\",this.delayedResize)},mounted:function(){this.handleWindowResize()},updated:function(){var e=this;this.$nextTick((function(){e.handleWindowResize()}))},beforeDestroy:function(){window.removeEventListener(\"resize\",this.handleWindowResize),Object(u.unsubscribe)(\"navigation-toggled\",this.delayedResize)},methods:{closeActions:function(e){this.$refs.actionsBreadcrumb.$el.contains(e.relatedTarget)||(this.menuBreadcrumbProps.open=!1)},delayedResize:function(){var e=this;this.$nextTick((function(){e.handleWindowResize()}))},handleWindowResize:function(){var e=this.$slots.default||[];if(this.$refs.container){var t=e.length,n=[],a=this.$refs.container.offsetWidth,o=this.getTotalWidth(e)-a;o+=o>0?51:0;for(var i=0,r=Math.floor(t/2);o>0&&i<t-2;){var s=r+(i%2?i+1:i)/2*Math.pow(-1,i+t%2);o-=this.getWidth(e[s].elm),n.push(s),i++}this.arraysEqual(this.hiddenIndices,n.sort((function(e,t){return e-t})))||(this.hiddenCrumbs=n.map((function(t){return e[t]})),this.hiddenIndices=n)}},arraysEqual:function(e,t){if(e.length!==t.length)return!1;if(e===t)return!0;if(null===e||null===t)return!1;for(var n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0},getTotalWidth:function(e){var t=this;return e.reduce((function(e,n,a){return e+t.getWidth(n.elm)}),0)},getWidth:function(e){if(!e.classList)return 0;var t=e.classList.contains(\"crumb--hidden\");e.classList.remove(\"crumb--hidden\");var n=e.offsetWidth;return t&&e.classList.add(\"crumb--hidden\"),n},preventDefault:function(e){return e.preventDefault&&e.preventDefault(),!1},dragStart:function(e){return this.preventDefault(e)},dropped:function(e,t,n){return n||this.$emit(\"dropped\",e,t),this.menuBreadcrumbProps.open=!1,document.querySelectorAll(\".crumb\").forEach((function(e){e.classList.remove(\"crumb--hovered\")})),this.preventDefault(e)},dragOver:function(e){return this.preventDefault(e)},dragEnter:function(e,t){if(!t&&e.target.closest){var n=e.target.closest(\".crumb\");if(n.classList&&n.classList.contains(\"crumb\"))document.querySelectorAll(\".crumb\").forEach((function(e){e.classList.remove(\"crumb--hovered\")})),n.classList.add(\"crumb--hovered\")}},dragLeave:function(e,t){if(!t&&!e.target.contains(e.relatedTarget)&&e.target.closest){var n=e.target.closest(\".crumb\");if(n.contains(e.relatedTarget))return;n.classList&&n.classList.contains(\"crumb\")&&n.classList.remove(\"crumb--hovered\")}},addCrumbs:function(e,t){var n=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;t.forEach((function(t,o){t.elm&&t.elm.classList&&(n.hiddenIndices.includes(o+a)?t.elm.classList.add(\"crumb--hidden\"):t.elm.classList.remove(\"crumb--hidden\")),e.push(t)}))}},render:function(e){var t=this,n=this.$slots.default||[];if(0!==n.length){o.a.set(n[0].componentOptions.propsData,\"icon\",this.rootIcon);var a=[],i=this.hiddenCrumbs.length?n.slice(0,Math.round(n.length/2)):n;this.addCrumbs(a,i),this.hiddenCrumbs.length&&a.push(e(\"Breadcrumb\",{class:\"dropdown\",props:this.menuBreadcrumbProps,ref:\"actionsBreadcrumb\",key:\"actions-breadcrumb-1\",nativeOn:{dragstart:this.dragStart,dragenter:function(){t.menuBreadcrumbProps.open=!0},dragleave:this.closeActions},on:{\"update:open\":function(e){t.menuBreadcrumbProps.open=e}}},this.hiddenCrumbs.map((function(n){var a=n.componentOptions.propsData.to,o=n.componentOptions.propsData.href,i=n.componentOptions.propsData.disableDrop,r=\"ActionLink\",s=o;return a&&(r=\"ActionRouter\",s=a),e(r,{class:\"crumb\",props:{to:a,href:o,icon:\"icon-folder\"},attrs:{draggable:!1},nativeOn:{dragstart:t.dragStart,drop:function(e){return t.dropped(e,s,i)},dragover:t.dragOver,dragenter:function(e){return t.dragEnter(e,i)},dragleave:function(e){return t.dragLeave(e,i)}}},n.componentOptions.propsData.title)}))));var r=this.hiddenCrumbs.length?n.slice(Math.round(n.length/2)):[];return this.addCrumbs(a,r,i.length),e(\"div\",{class:\"breadcrumb\",ref:\"container\"},a)}}},g=(n(293),n(0)),f=n(191),A=n.n(f),v=Object(g.a)(p,void 0,void 0,!1,null,\"80e3b766\",null);\"function\"==typeof A.a&&A()(v);var b=v.exports;\n/**\n * @copyright Copyright (c) 2020 Raimund Schlüßler <raimund.schluessler@mailbox.org>\n *\n * @author Raimund Schlüßler <raimund.schluessler@mailbox.org>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default=b},function(e,n,a){\"use strict\";a.r(n);a(29),a(37),a(45),a(25),a(50),a(87),a(51),a(8),a(13),a(9),a(40),a(89),a(7),a(4),a(11),a(10),a(14),a(23),a(88),a(15);var o=a(170),i=a(43),r=a(101),s=a.n(r);function c(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if(\"string\"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===n&&e.constructor&&(n=e.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(e);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}var d={name:\"AppSettingsDialog\",components:{Modal:o.default},mixins:[i.default],props:{open:{type:Boolean,required:!0},hideNavigation:{type:Boolean,default:!1}},data:function(){return{selectedSection:\"\",linkClicked:!1,addedScrollListener:!1,scroller:null}},computed:{hasNavigation:function(){return!this.isMobile&&!this.hideNavigation},settingsNavigationAriaLabel:function(){return t(\"Settings navigation\")}},mounted:function(){this.selectedSection=this.$slots.default[0].componentOptions.propsData.title},updated:function(){this.scroller||(this.scroller=this.$el.querySelector(\".app-settings__content\")),this.scroller&&!this.addedScrollListener&&(this.scroller.addEventListener(\"scroll\",this.handleScroll),this.addedScrollListener=!0)},beforeDestroy:function(){this.scroller.removeEventListener(\"scroll\",this.handleScroll)},methods:{getSettingsNavigation:function(e){var t=e.filter((function(e){return e.componentOptions})).map((function(e){var t;return null===(t=e.componentOptions.propsData)||void 0===t?void 0:t.title}));return t.forEach((function(e,n){var a=c(t);if(a.splice(n,1),-1!==a.indexOf(e))throw new Error(\"Duplicate section title found: \".concat(e,\". Settings navigation sections must have unique section titles.\"))})),t},handleSettingsNavigationClick:function(e){var t=this;this.linkClicked=!0,document.getElementById(\"settings-section_\"+e.replace(/\\s+/g,\"\")).scrollIntoView({behavior:\"smooth\",inline:\"nearest\"}),this.selectedSection=e,setTimeout((function(){t.linkClicked=!1}),1e3)},handleCloseModal:function(){this.$emit(\"update:open\",!1)},handleScroll:function(){var e=this;this.linkClicked||s()((function(){e.selectedSection=\"\",document.activeElement.blur()}),300)},handleLinkKeydown:function(e,t){\"Enter\"===e.code&&this.handleSettingsNavigationClick(t)}},render:function(e){var t=this,n=function(n){return e(\"li\",{},[e(\"a\",{class:{\"navigation-list__link\":!0,\"navigation-list__link--active\":n===t.selectedSection},attrs:{role:\"tab\",\"aria-selected\":n===t.selectedSection,tabindex:\"0\"},on:{click:function(){return t.handleSettingsNavigationClick(n)},keydown:function(){return t.handleLinkKeydown(event,n)}}},n)])};return this.open?e(\"Modal\",{on:{close:function(){t.handleCloseModal()}}},[e(\"div\",{attrs:{class:\"app-settings\"}},[].concat(c(t.hasNavigation?[e(\"div\",{attrs:{class:\"app-settings__navigation\",role:\"tablist\",\"aria-label\":t.settingsNavigationAriaLabel}},[e(\"ul\",{attrs:{class:\"navigation-list\",role:\"tablist\"}},t.getSettingsNavigation(t.$slots.default).map((function(e){return n(e)})))])]:[]),[e(\"div\",{attrs:{class:\"app-settings__content\"}},this.$slots.default)]))]):void 0}},m=(a(311),a(0)),u=a(198),p=a.n(u),g=Object(m.a)(d,void 0,void 0,!1,null,\"ca61dea6\",null);\"function\"==typeof p.a&&p()(g);var f=g.exports;\n/**\n * @copyright Copyright (c) 2020 Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @author Marco Ambrosini <marcoambrosini@pm.me>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */n.default=f},,,,function(e,t,n){\"use strict\";var a=n(137);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"li.active[data-v-395fa6ac]{box-shadow:inset 4px 0 var(--color-primary)}.action--disabled[data-v-395fa6ac]{pointer-events:none;opacity:.5}.action--disabled[data-v-395fa6ac]:hover,.action--disabled[data-v-395fa6ac]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-395fa6ac]{opacity:1 !important}.action-checkbox[data-v-395fa6ac]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;line-height:44px}.action-checkbox__checkbox[data-v-395fa6ac]{position:absolute;top:auto;left:-10000px;overflow:hidden;width:1px;height:1px}.action-checkbox__checkbox:focus+.action-checkbox__label[data-v-395fa6ac]{opacity:1}.action-checkbox__label[data-v-395fa6ac]{display:flex;align-items:center;width:100%;padding:0 !important;padding-right:14px !important;opacity:.7}.action-checkbox__label[data-v-395fa6ac]::before{margin:0 14px 0 !important}.action-checkbox--disabled[data-v-395fa6ac],.action-checkbox--disabled .action-checkbox__label[data-v-395fa6ac]{cursor:pointer}.action-checkbox:not(.action-checkbox--disabled):hover .action-checkbox__label[data-v-395fa6ac],.action-checkbox:not(.action-checkbox--disabled):focus .action-checkbox__label[data-v-395fa6ac]{opacity:1}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(138);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-98d46a10]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}button[data-v-98d46a10],input[data-v-98d46a10]:not([type=\\'range\\']),textarea[data-v-98d46a10]{margin:0;padding:7px 6px;cursor:text;color:var(--color-text-lighter);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);outline:none;background-color:var(--color-main-background);font-size:13px}button[data-v-98d46a10]:not(:disabled):not(.primary):hover,button[data-v-98d46a10]:not(:disabled):not(.primary):focus,button:not(:disabled):not(.primary).active[data-v-98d46a10],input[data-v-98d46a10]:not([type=\\'range\\']):not(:disabled):not(.primary):hover,input[data-v-98d46a10]:not([type=\\'range\\']):not(:disabled):not(.primary):focus,input:not([type=\\'range\\']):not(:disabled):not(.primary).active[data-v-98d46a10],textarea[data-v-98d46a10]:not(:disabled):not(.primary):hover,textarea[data-v-98d46a10]:not(:disabled):not(.primary):focus,textarea:not(:disabled):not(.primary).active[data-v-98d46a10]{border-color:var(--color-primary-element);outline:none}button[data-v-98d46a10]:not(:disabled):not(.primary):active,input[data-v-98d46a10]:not([type=\\'range\\']):not(:disabled):not(.primary):active,textarea[data-v-98d46a10]:not(:disabled):not(.primary):active{color:var(--color-text-light);outline:none;background-color:var(--color-main-background)}button[data-v-98d46a10]:disabled,input[data-v-98d46a10]:not([type=\\'range\\']):disabled,textarea[data-v-98d46a10]:disabled{cursor:default;opacity:.5;color:var(--color-text-maxcontrast);background-color:var(--color-background-dark)}button[data-v-98d46a10]:required,input[data-v-98d46a10]:not([type=\\'range\\']):required,textarea[data-v-98d46a10]:required{box-shadow:none}button[data-v-98d46a10]:invalid,input[data-v-98d46a10]:not([type=\\'range\\']):invalid,textarea[data-v-98d46a10]:invalid{border-color:var(--color-error);box-shadow:none !important}button.primary[data-v-98d46a10],input:not([type=\\'range\\']).primary[data-v-98d46a10],textarea.primary[data-v-98d46a10]{cursor:pointer;color:var(--color-primary-text);border-color:var(--color-primary-element);background-color:var(--color-primary-element)}button.primary[data-v-98d46a10]:not(:disabled):hover,button.primary[data-v-98d46a10]:not(:disabled):focus,button.primary[data-v-98d46a10]:not(:disabled):active,input:not([type=\\'range\\']).primary[data-v-98d46a10]:not(:disabled):hover,input:not([type=\\'range\\']).primary[data-v-98d46a10]:not(:disabled):focus,input:not([type=\\'range\\']).primary[data-v-98d46a10]:not(:disabled):active,textarea.primary[data-v-98d46a10]:not(:disabled):hover,textarea.primary[data-v-98d46a10]:not(:disabled):focus,textarea.primary[data-v-98d46a10]:not(:disabled):active{border-color:var(--color-primary-element-light);background-color:var(--color-primary-element-light)}button.primary[data-v-98d46a10]:not(:disabled):active,input:not([type=\\'range\\']).primary[data-v-98d46a10]:not(:disabled):active,textarea.primary[data-v-98d46a10]:not(:disabled):active{color:var(--color-primary-text-dark)}button.primary[data-v-98d46a10]:disabled,input:not([type=\\'range\\']).primary[data-v-98d46a10]:disabled,textarea.primary[data-v-98d46a10]:disabled{cursor:default;color:var(--color-primary-text-dark);background-color:var(--color-primary-element)}li.active[data-v-98d46a10]{box-shadow:inset 4px 0 var(--color-primary)}.action--disabled[data-v-98d46a10]{pointer-events:none;opacity:.5}.action--disabled[data-v-98d46a10]:hover,.action--disabled[data-v-98d46a10]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-98d46a10]{opacity:1 !important}.action-input[data-v-98d46a10]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal}.action-input[data-v-98d46a10]:not(.action-input--picker){opacity:.7}.action-input[data-v-98d46a10]:not(.action-input--picker):hover,.action-input[data-v-98d46a10]:not(.action-input--picker):focus{opacity:1}.action-input--picker .action-input__icon[data-v-98d46a10]{opacity:.7}.action-input--picker:hover .action-input__icon[data-v-98d46a10],.action-input--picker:focus .action-input__icon[data-v-98d46a10]{opacity:1}.action-input>span[data-v-98d46a10]{cursor:pointer;white-space:nowrap}.action-input__icon[data-v-98d46a10]{min-width:0;min-height:0;padding:22px 0 22px 44px;background-position:14px center;background-size:16px}.action-input__form[data-v-98d46a10]{display:flex;align-items:center;flex:1 1 auto;margin:4px 0;padding-right:14px}.action-input__submit[data-v-98d46a10]{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.action-input__label[data-v-98d46a10]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;box-sizing:border-box;margin:0 0 0 -8px;padding:7px 6px;cursor:pointer;opacity:1;color:var(--color-text-lighter);border:1px solid var(--color-border-dark);border-left-color:transparent;border-radius:0 var(--border-radius) var(--border-radius) 0;background-color:var(--color-main-background);background-clip:padding-box;font-size:16px}.action-input__label[data-v-98d46a10]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.action-input__input[data-v-98d46a10]{flex:1 1 auto;min-width:132px;min-height:36px;max-height:36px;margin:0}.action-input__input[data-v-98d46a10]:disabled{cursor:default}.action-input__input:not(:active):not(:hover):not(:focus):invalid+.action-input__label[data-v-98d46a10]{border-color:var(--color-error);border-left-color:transparent}.action-input__input:not(:active):not(:hover):not(:focus):not(:disabled)+.action-input__label[data-v-98d46a10]:active,.action-input__input:not(:active):not(:hover):not(:focus):not(:disabled)+.action-input__label[data-v-98d46a10]:hover,.action-input__input:not(:active):not(:hover):not(:focus):not(:disabled)+.action-input__label[data-v-98d46a10]:focus{border-color:var(--color-primary-element);border-radius:var(--border-radius)}.action-input__input:active:not(:disabled)+.action-input__label[data-v-98d46a10],.action-input__input:hover:not(:disabled)+.action-input__label[data-v-98d46a10],.action-input__input:focus:not(:disabled)+.action-input__label[data-v-98d46a10]{z-index:2;border-color:var(--color-primary-element);border-left-color:transparent}.action-input__picker[data-v-98d46a10] .mx-input{margin:0}li:last-child>.action-input[data-v-98d46a10]{margin-bottom:10px}li:first-child>.action-input[data-v-98d46a10]{margin-top:10px}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(139);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"li.active[data-v-047cd0d4]{box-shadow:inset 4px 0 var(--color-primary)}.action--disabled[data-v-047cd0d4]{pointer-events:none;opacity:.5}.action--disabled[data-v-047cd0d4]:hover,.action--disabled[data-v-047cd0d4]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-047cd0d4]{opacity:1 !important}.action-radio[data-v-047cd0d4]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;line-height:44px}.action-radio__radio[data-v-047cd0d4]{position:absolute;top:auto;left:-10000px;overflow:hidden;width:1px;height:1px}.action-radio__radio:focus+.action-radio__label[data-v-047cd0d4]{opacity:1}.action-radio__label[data-v-047cd0d4]{display:flex;align-items:center;width:100%;padding:0 !important;padding-right:14px !important;opacity:.7}.action-radio__label[data-v-047cd0d4]::before{margin:0 14px 0 !important}.action-radio--disabled[data-v-047cd0d4],.action-radio--disabled .action-radio__label[data-v-047cd0d4]{cursor:pointer}.action-radio:not(.action-radio--disabled):hover .action-radio__label[data-v-047cd0d4],.action-radio:not(.action-radio--disabled):focus .action-radio__label[data-v-047cd0d4]{opacity:1}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(140);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".action-separator[data-v-5339ba06]{height:0;margin:5px 10px 5px 15px;border-bottom:1px solid var(--color-border-dark);cursor:default}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(141);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"li.active[data-v-90adea72]{box-shadow:inset 4px 0 var(--color-primary)}.action-text[data-v-90adea72]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;line-height:44px}.action-text[data-v-90adea72]:hover,.action-text[data-v-90adea72]:focus{opacity:1}.action-text>span[data-v-90adea72]{cursor:pointer;white-space:nowrap}.action-text__icon[data-v-90adea72]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-text p[data-v-90adea72]{width:150px;padding:7px 0;margin:auto;cursor:pointer;text-align:left;line-height:1.6em}.action-text__longtext[data-v-90adea72]{cursor:pointer;white-space:pre-wrap}.action-text__title[data-v-90adea72]{font-weight:bold}.action--disabled[data-v-90adea72]{pointer-events:none;opacity:.5}.action--disabled[data-v-90adea72]:hover,.action--disabled[data-v-90adea72]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-90adea72]{opacity:1 !important}.action-text[data-v-90adea72],.action-text span[data-v-90adea72]{cursor:default}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(142);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-a3150afa]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}button[data-v-a3150afa],input[data-v-a3150afa]:not([type=\\'range\\']),textarea[data-v-a3150afa]{margin:0;padding:7px 6px;cursor:text;color:var(--color-text-lighter);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);outline:none;background-color:var(--color-main-background);font-size:13px}button[data-v-a3150afa]:not(:disabled):not(.primary):hover,button[data-v-a3150afa]:not(:disabled):not(.primary):focus,button:not(:disabled):not(.primary).active[data-v-a3150afa],input[data-v-a3150afa]:not([type=\\'range\\']):not(:disabled):not(.primary):hover,input[data-v-a3150afa]:not([type=\\'range\\']):not(:disabled):not(.primary):focus,input:not([type=\\'range\\']):not(:disabled):not(.primary).active[data-v-a3150afa],textarea[data-v-a3150afa]:not(:disabled):not(.primary):hover,textarea[data-v-a3150afa]:not(:disabled):not(.primary):focus,textarea:not(:disabled):not(.primary).active[data-v-a3150afa]{border-color:var(--color-primary-element);outline:none}button[data-v-a3150afa]:not(:disabled):not(.primary):active,input[data-v-a3150afa]:not([type=\\'range\\']):not(:disabled):not(.primary):active,textarea[data-v-a3150afa]:not(:disabled):not(.primary):active{color:var(--color-text-light);outline:none;background-color:var(--color-main-background)}button[data-v-a3150afa]:disabled,input[data-v-a3150afa]:not([type=\\'range\\']):disabled,textarea[data-v-a3150afa]:disabled{cursor:default;opacity:.5;color:var(--color-text-maxcontrast);background-color:var(--color-background-dark)}button[data-v-a3150afa]:required,input[data-v-a3150afa]:not([type=\\'range\\']):required,textarea[data-v-a3150afa]:required{box-shadow:none}button[data-v-a3150afa]:invalid,input[data-v-a3150afa]:not([type=\\'range\\']):invalid,textarea[data-v-a3150afa]:invalid{border-color:var(--color-error);box-shadow:none !important}button.primary[data-v-a3150afa],input:not([type=\\'range\\']).primary[data-v-a3150afa],textarea.primary[data-v-a3150afa]{cursor:pointer;color:var(--color-primary-text);border-color:var(--color-primary-element);background-color:var(--color-primary-element)}button.primary[data-v-a3150afa]:not(:disabled):hover,button.primary[data-v-a3150afa]:not(:disabled):focus,button.primary[data-v-a3150afa]:not(:disabled):active,input:not([type=\\'range\\']).primary[data-v-a3150afa]:not(:disabled):hover,input:not([type=\\'range\\']).primary[data-v-a3150afa]:not(:disabled):focus,input:not([type=\\'range\\']).primary[data-v-a3150afa]:not(:disabled):active,textarea.primary[data-v-a3150afa]:not(:disabled):hover,textarea.primary[data-v-a3150afa]:not(:disabled):focus,textarea.primary[data-v-a3150afa]:not(:disabled):active{border-color:var(--color-primary-element-light);background-color:var(--color-primary-element-light)}button.primary[data-v-a3150afa]:not(:disabled):active,input:not([type=\\'range\\']).primary[data-v-a3150afa]:not(:disabled):active,textarea.primary[data-v-a3150afa]:not(:disabled):active{color:var(--color-primary-text-dark)}button.primary[data-v-a3150afa]:disabled,input:not([type=\\'range\\']).primary[data-v-a3150afa]:disabled,textarea.primary[data-v-a3150afa]:disabled{cursor:default;color:var(--color-primary-text-dark);background-color:var(--color-primary-element)}li.active[data-v-a3150afa]{box-shadow:inset 4px 0 var(--color-primary)}.action--disabled[data-v-a3150afa]{pointer-events:none;opacity:.5}.action--disabled[data-v-a3150afa]:hover,.action--disabled[data-v-a3150afa]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-a3150afa]{opacity:1 !important}.action-text-editable[data-v-a3150afa]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;line-height:44px}.action-text-editable[data-v-a3150afa]:hover,.action-text-editable[data-v-a3150afa]:focus{opacity:1}.action-text-editable>span[data-v-a3150afa]{cursor:pointer;white-space:nowrap}.action-text-editable__icon[data-v-a3150afa]{min-width:0;min-height:0;padding:22px 0 22px 44px;background-position:14px center;background-size:16px}.action-text-editable__form[data-v-a3150afa]{display:flex;flex:1 1 auto;flex-direction:column;position:relative;margin:4px 0;padding-right:14px}.action-text-editable__submit[data-v-a3150afa]{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.action-text-editable__label[data-v-a3150afa]{display:flex;align-items:center;justify-content:center;position:absolute;right:15px;bottom:1px;width:36px;height:36px;margin:0;padding:7px 6px;cursor:pointer;opacity:1;color:var(--color-text-lighter);border:0;border-radius:50%;background-color:var(--color-main-background);background-clip:padding-box;font-size:16px}.action-text-editable__label[data-v-a3150afa]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.action-text-editable__textarea[data-v-a3150afa]{flex:1 1 auto;min-height:80px;max-height:124px;min-width:176px;width:100% !important;margin:0}.action-text-editable__textarea[data-v-a3150afa]:disabled{cursor:default}.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid+.action-text-editable__label[data-v-a3150afa]{background-color:var(--color-error)}.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled)+.action-text-editable__label[data-v-a3150afa]:active,.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled)+.action-text-editable__label[data-v-a3150afa]:hover,.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled)+.action-text-editable__label[data-v-a3150afa]:focus{background-color:var(--color-primary-element);color:var(--color-primary-text)}.action-text-editable__textarea:active:not(:disabled)+.action-text-editable__label[data-v-a3150afa],.action-text-editable__textarea:hover:not(:disabled)+.action-text-editable__label[data-v-a3150afa],.action-text-editable__textarea:focus:not(:disabled)+.action-text-editable__label[data-v-a3150afa]{z-index:2;border-color:var(--color-primary-element);border-left-color:transparent}li:last-child>.action-text-editable[data-v-a3150afa]{margin-bottom:10px}li:first-child>.action-text-editable[data-v-a3150afa]{margin-top:10px}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(143);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-content[data-v-2c9fa664]{position:relative;z-index:1000;flex-basis:100vw;min-width:0;min-height:100%;margin:0 !important;background-color:var(--color-main-background)}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(144);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-navigation[data-v-53d3760a]{will-change:transform;transition:transform var(--animation-quick),margin var(--animation-quick);width:300px;position:sticky;position:-webkit-sticky;top:50px;left:0;z-index:1800;height:calc(100vh - 50px);box-sizing:border-box;background-color:var(--color-main-background);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-grow:0;flex-shrink:0}.app-navigation--close[data-v-53d3760a]{margin-left:-300px;transform:translateX(-100%)}.app-navigation ul[data-v-53d3760a],.app-navigation__list[data-v-53d3760a]{position:relative;height:100%;width:inherit;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column}@media only screen and (max-width: 1024px){.app-navigation[data-v-53d3760a]:not(.app-navigation--close){margin-left:-300px}}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(145);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-navigation-caption[data-v-46add67c]{font-weight:bold;color:var(--color-text-maxcontrast);line-height:44px;padding-left:44px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0.7;box-shadow:none !important;order:1;flex-shrink:0}.app-navigation-caption[data-v-46add67c]:not(:first-child){margin-top:22px}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(146);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-navigation-entry__counter[data-v-03f63035]{overflow:hidden;max-width:44px;margin:4px;padding:0 4px;text-align:center;text-overflow:ellipsis;line-height:1em}.app-navigation-entry__counter--highlighted[data-v-03f63035]{padding:4px 6px;color:var(--color-primary-text);border-radius:10px;background-color:var(--color-primary)}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(147);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-navigation-entry__icon-bullet[data-v-8f9e955c]{display:block;padding:15px}.app-navigation-entry__icon-bullet div[data-v-8f9e955c]{width:14px;height:14px;cursor:pointer;transition:background 100ms ease-in-out;border:none;border-radius:50%}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(148);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-4e54d078]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon-collapse[data-v-4e54d078]{position:absolute;z-index:105;width:44px;height:44px;margin:0;padding:0;transition:opacity var(--animation-quick) ease-in-out;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);color:var(--color-main-text);border:none;border-radius:0;outline:none !important;background-color:transparent;box-shadow:none;font-size:18px}.icon-collapse[data-v-4e54d078]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.icon-collapse[data-v-4e54d078]:hover{color:var(--color-primary)}.icon-collapse--rotated[data-v-4e54d078]{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);color:var(--color-main-text)}.icon-collapse--rotated[data-v-4e54d078]:hover{color:var(--color-primary)}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(149);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-480b0897]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.app-navigation-entry[data-v-480b0897]{position:relative;display:flex;flex-shrink:0;flex-wrap:wrap;order:1;box-sizing:border-box;width:100%;min-height:44px}.app-navigation-entry.active[data-v-480b0897]{background-color:var(--color-primary-light) !important}.app-navigation-entry[data-v-480b0897]:focus-within,.app-navigation-entry[data-v-480b0897]:hover{background-color:var(--color-background-hover)}.app-navigation-entry.active .app-navigation-entry__children[data-v-480b0897],.app-navigation-entry:focus-within .app-navigation-entry__children[data-v-480b0897],.app-navigation-entry:hover .app-navigation-entry__children[data-v-480b0897]{background-color:var(--color-main-background)}.app-navigation-entry.app-navigation-entry--deleted>ul[data-v-480b0897],.app-navigation-entry.app-navigation-entry--collapsible:not(.app-navigation-entry--opened)>ul[data-v-480b0897]{display:none}.app-navigation-entry .app-navigation-entry-link[data-v-480b0897]{z-index:100;display:flex;overflow:hidden;flex:1 1 0;box-sizing:border-box;min-height:44px;padding:0;padding-right:14px;white-space:nowrap;color:var(--color-main-text);background-repeat:no-repeat;background-position:14px center;background-size:16px 16px;line-height:44px}.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-480b0897]{display:flex;align-items:center;flex:0 0 44px;justify-content:center;width:44px;height:44px;background-size:16px 16px}.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__title[data-v-480b0897]{overflow:hidden;max-width:100%;white-space:nowrap;text-overflow:ellipsis}.app-navigation-entry .app-navigation-entry__children[data-v-480b0897]{position:relative;display:flex;flex:0 1 auto;flex-direction:column;width:100%}.app-navigation-entry .app-navigation-entry__children .app-navigation-entry[data-v-480b0897]{display:inline-flex;flex-wrap:wrap;padding-left:30px}.app-navigation-entry__deleted[data-v-480b0897]{display:inline-flex;flex:1 1 0;padding-left:30px !important}.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-480b0897]{position:relative;overflow:hidden;flex:1 1 0;white-space:nowrap;text-overflow:ellipsis;line-height:44px}.app-navigation-entry__edit[data-v-480b0897]{flex:1 0 100%;padding-left:24px !important}.app-navigation-entry__edit form[data-v-480b0897]{display:flex;width:100%}.app-navigation-entry__edit form .app-navigation-entry__edit-input[data-v-480b0897]{flex:1 1 100%}.app-navigation-entry__edit form button[data-v-480b0897]{display:flex;align-items:center;justify-content:center;width:44px !important;color:var(--color-main-text);background:none;font-size:16px}.app-navigation-entry__edit form button[data-v-480b0897]::before{opacity:.7}.app-navigation-entry__edit form button[data-v-480b0897]:hover::before,.app-navigation-entry__edit form button[data-v-480b0897]:focus::before{opacity:1}.app-navigation-entry__edit form button.icon-confirm[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.app-navigation-entry__edit form button.icon-close[data-v-480b0897]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.app-navigation-entry__edit form .icon-close[data-v-480b0897]{margin:0;border:none;background-color:transparent}.app-navigation-entry--collapsible .icon-collapse[data-v-480b0897]{visibility:hidden}.app-navigation-entry--collapsible.app-navigation-entry--no-icon a .app-navigation-entry-icon[data-v-480b0897],.app-navigation-entry--collapsible:hover a .app-navigation-entry-icon[data-v-480b0897],.app-navigation-entry--collapsible:focus a .app-navigation-entry-icon[data-v-480b0897]{visibility:hidden}.app-navigation-entry--collapsible.app-navigation-entry--no-icon .icon-collapse[data-v-480b0897],.app-navigation-entry--collapsible:hover .icon-collapse[data-v-480b0897],.app-navigation-entry--collapsible:focus .icon-collapse[data-v-480b0897]{visibility:visible}.app-navigation-entry--collapsible.app-navigation-entry--no-icon .app-navigation-entry__children li:not(.app-navigation-entry--collapsible) a[data-v-480b0897] :first-child,.app-navigation-entry--collapsible:hover .app-navigation-entry__children li:not(.app-navigation-entry--collapsible) a[data-v-480b0897] :first-child,.app-navigation-entry--collapsible:focus .app-navigation-entry__children li:not(.app-navigation-entry--collapsible) a[data-v-480b0897] :first-child{visibility:visible}.app-navigation-entry__utils[data-v-480b0897]{display:flex;align-items:center;flex:0 1 auto}.app-navigation-entry__utils .action-item[data-v-480b0897]{margin-right:2px}.app-navigation-entry--editing .app-navigation-entry-edit[data-v-480b0897]{z-index:250;opacity:1}.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-480b0897]{z-index:250;transform:translateX(0)}.app-navigation-entry--pinned[data-v-480b0897]{order:2;margin-top:auto}.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-480b0897]{margin-top:0}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(150);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-navigation-new[data-v-ecee326e]{display:block;padding:10px}.app-navigation-new button[data-v-ecee326e]{display:inline-block;width:100%;padding:10px;padding-left:34px;background-position:10px center;text-align:left;margin:0}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(151);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"#app-settings-content[data-v-73c43fbe]{display:block;padding:10px;background-color:var(--color-main-background);max-height:300px;overflow-y:auto;box-sizing:border-box}.slide-up-leave-active[data-v-73c43fbe],.slide-up-enter-active[data-v-73c43fbe]{transition-duration:var(--animation-slow);transition-property:max-height, padding;overflow-y:hidden !important}.slide-up-enter[data-v-73c43fbe],.slide-up-leave-to[data-v-73c43fbe]{max-height:0 !important;padding:0 10px !important}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(152);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\"\\n.app-navigation-spacer[data-v-42195cc8] {\\n\\tflex-shrink: 0;\\n\\torder: 1;\\n\\theight: 22px;\\n}\\n\\n\",\"\"]),e.exports=t},function(e,t){e.exports=require(\"core-js/modules/es.array.find-index\")},function(e,t,n){\"use strict\";var a=n(155);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-sidebar-tabs[data-v-40af5753]{display:flex;flex-direction:column;min-height:0;flex:1 1 100%}.app-sidebar-tabs__nav[data-v-40af5753]{margin-top:10px}.app-sidebar-tabs__nav ul[data-v-40af5753]{display:flex;justify-content:stretch}.app-sidebar-tabs__tab[data-v-40af5753]{display:block;flex:1 1;min-width:0;text-align:center}.app-sidebar-tabs__tab a[data-v-40af5753]{position:relative;display:block;overflow:hidden;padding:25px 5px 5px 5px;transition:color var(--animation-quick),opacity var(--animation-quick),border-color var(--animation-quick);text-align:center;white-space:nowrap;text-overflow:ellipsis;opacity:.7;color:var(--color-main-text);border-bottom:1px solid var(--color-border)}.app-sidebar-tabs__tab a[data-v-40af5753]:hover,.app-sidebar-tabs__tab a[data-v-40af5753]:focus,.app-sidebar-tabs__tab a[data-v-40af5753]:active,.app-sidebar-tabs__tab a.active[data-v-40af5753]{opacity:1}.app-sidebar-tabs__tab a:hover .app-sidebar-tabs__tab-icon[data-v-40af5753],.app-sidebar-tabs__tab a:focus .app-sidebar-tabs__tab-icon[data-v-40af5753],.app-sidebar-tabs__tab a:active .app-sidebar-tabs__tab-icon[data-v-40af5753],.app-sidebar-tabs__tab a.active .app-sidebar-tabs__tab-icon[data-v-40af5753]{opacity:1}.app-sidebar-tabs__tab a[data-v-40af5753]:not(.active):hover,.app-sidebar-tabs__tab a[data-v-40af5753]:not(.active):focus{border-bottom-color:var(--color-background-darker);box-shadow:inset 0 -1px 0 var(--color-background-darker)}.app-sidebar-tabs__tab a.active[data-v-40af5753]{color:var(--color-text-light);border-bottom-color:var(--color-text-light);box-shadow:inset 0 -1px 0 var(--color-text-light);font-weight:bold}.app-sidebar-tabs__tab a[data-v-40af5753]:focus{border-bottom-color:var(--color-primary-element);box-shadow:inset 0 -1px 0 var(--color-primary-element)}.app-sidebar-tabs__tab-icon[data-v-40af5753]{position:absolute;top:0;left:0;width:100%;height:25px;transition:opacity var(--animation-quick);opacity:.7;background-position:center 8px;background-size:16px}.app-sidebar-tabs__content[data-v-40af5753]{position:relative;min-height:0;height:100%}.app-sidebar-tabs__content--multiple[data-v-40af5753]>:not(section){display:none}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(156);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-sidebar[data-v-1772ff6b]{position:-webkit-sticky;position:sticky;z-index:1500;top:var(--header-height);right:0;display:flex;overflow-x:hidden;overflow-y:auto;flex-direction:column;flex-shrink:0;width:27vw;min-width:300px;max-width:500px;height:calc(100vh - var(--header-height));border-left:1px solid var(--color-border);background:var(--color-main-background)}.app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1772ff6b]{position:absolute;z-index:100;top:6px;right:6px;width:44px;height:44px;opacity:.7;border-radius:22px}.app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1772ff6b]:hover,.app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1772ff6b]:active,.app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1772ff6b]:focus{opacity:1;background-color:rgba(127,127,127,0.25)}.app-sidebar .app-sidebar-header--compact.app-sidebar-header--with-figure .app-sidebar-header__info[data-v-1772ff6b]{flex-direction:row}.app-sidebar .app-sidebar-header--compact.app-sidebar-header--with-figure .app-sidebar-header__info .app-sidebar-header__figure[data-v-1772ff6b]{z-index:2;width:70px;height:70px;margin:9px;border-radius:3px;flex:0 0 auto}.app-sidebar .app-sidebar-header--compact.app-sidebar-header--with-figure .app-sidebar-header__info .app-sidebar-header__desc[data-v-1772ff6b]{height:52px;padding-left:0;flex:1 1 auto;min-width:0;padding-right:94px}.app-sidebar .app-sidebar-header--compact.app-sidebar-header--with-figure .app-sidebar-header__info .app-sidebar-header__desc.app-sidebar-header__desc--without-actions[data-v-1772ff6b]{padding-right:50px}.app-sidebar .app-sidebar-header--compact.app-sidebar-header--with-figure .app-sidebar-header__info .app-sidebar-header__desc .app-sidebar-header__tertiary-actions[data-v-1772ff6b]{z-index:3;position:absolute;top:9px;left:-44px}.app-sidebar .app-sidebar-header--compact.app-sidebar-header--with-figure .app-sidebar-header__info .app-sidebar-header__desc .app-sidebar-header__menu[data-v-1772ff6b]{top:6px;right:50px;background-color:transparent;position:absolute}.app-sidebar .app-sidebar-header:not(.app-sidebar-header--with-figure) .app-sidebar-header__menu[data-v-1772ff6b]{position:absolute;top:6px;right:50px}.app-sidebar .app-sidebar-header:not(.app-sidebar-header--with-figure) .app-sidebar-header__desc[data-v-1772ff6b]{padding-right:94px}.app-sidebar .app-sidebar-header:not(.app-sidebar-header--with-figure) .app-sidebar-header__desc.app-sidebar-header__desc--without-actions[data-v-1772ff6b]{padding-right:50px}.app-sidebar .app-sidebar-header .app-sidebar-header__info[data-v-1772ff6b]{display:flex;flex-direction:column}.app-sidebar .app-sidebar-header__figure[data-v-1772ff6b]{width:100%;height:250px;max-height:250px;background-repeat:no-repeat;background-position:center;background-size:contain}.app-sidebar .app-sidebar-header__figure--with-action[data-v-1772ff6b]{cursor:pointer}.app-sidebar .app-sidebar-header__desc[data-v-1772ff6b]{position:relative;display:flex;flex-direction:row;justify-content:center;box-sizing:content-box;padding:18px 6px 18px 9px}.app-sidebar .app-sidebar-header__desc--with-tertiary-action[data-v-1772ff6b]{padding-left:0}.app-sidebar .app-sidebar-header__desc--editable .app-sidebar-header__maintitle-form[data-v-1772ff6b]{margin-top:-2px;margin-bottom:-2px}.app-sidebar .app-sidebar-header__desc--with-subtitle--editable .app-sidebar-header__subtitle[data-v-1772ff6b]{margin-top:-2px}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__tertiary-actions[data-v-1772ff6b]{display:flex;height:44px;width:44px;justify-content:center;flex:0 0 auto}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container[data-v-1772ff6b]{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;min-width:0}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__maintitle[data-v-1772ff6b]{padding:0;min-height:30px;font-size:20px;line-height:30px}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__maintitle[data-v-1772ff6b] .linkified{cursor:pointer;text-decoration:underline}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__maintitle[data-v-1772ff6b],.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__subtitle[data-v-1772ff6b]{overflow:hidden;width:100%;margin:0;white-space:nowrap;text-overflow:ellipsis}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__subtitle[data-v-1772ff6b]{padding:0;opacity:.7;font-size:14px}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__maintitle-form[data-v-1772ff6b]{display:flex;margin-left:-7.5px}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__maintitle-form .icon-confirm[data-v-1772ff6b]{margin:0}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__title-container .app-sidebar-header__maintitle-form input.app-sidebar-header__maintitle-input[data-v-1772ff6b]{flex:1 1 auto;margin:0;padding:7px;font-size:20px;font-weight:bold}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__star[data-v-1772ff6b]{display:block;width:44px;height:44px;padding:14px}.app-sidebar .app-sidebar-header__desc .app-sidebar-header__menu[data-v-1772ff6b]{height:44px;width:44px;border-radius:22px;background-color:rgba(127,127,127,0.25)}.app-sidebar .app-sidebar-header__action[data-v-1772ff6b]{display:flex;align-items:center;max-height:50px;margin:0 10px}.slide-right-leave-active[data-v-1772ff6b],.slide-right-enter-active[data-v-1772ff6b]{transition-duration:var(--animation-quick);transition-property:max-width, min-width}.slide-right-enter-to[data-v-1772ff6b],.slide-right-leave[data-v-1772ff6b]{min-width:300px;max-width:500px}.slide-right-enter[data-v-1772ff6b],.slide-right-leave-to[data-v-1772ff6b]{min-width:0 !important;max-width:0 !important}.fade-leave-active[data-v-1772ff6b],.fade-enter-active[data-v-1772ff6b]{position:absolute;top:0;left:0;width:100%;transition-duration:var(--animation-quick);transition-property:opacity;opacity:1}.fade-enter[data-v-1772ff6b],.fade-leave-to[data-v-1772ff6b]{opacity:0}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(157);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-sidebar-header__action button,.app-sidebar-header__action .button,.app-sidebar-header__action input[type='button'],.app-sidebar-header__action input[type='submit'],.app-sidebar-header__action input[type='reset']{padding:6px 22px}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(158);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-sidebar__tab[data-v-56b1f56c]{display:none;padding:10px;min-height:100%;max-height:100%;overflow:auto}.app-sidebar__tab[data-v-56b1f56c]:focus{border-color:var(--color-primary);box-shadow:0 0 0.2em var(--color-primary);outline:0}.app-sidebar__tab--active[data-v-56b1f56c]{display:block}\\n\",\"\"]),e.exports=t},function(e,t){e.exports=require(\"core-js/modules/es.string.includes\")},function(e,t,n){\"use strict\";var a=n(159);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".breadcrumb[data-v-80e3b766]{width:100%;flex-grow:1}.breadcrumb .crumb--hovered[data-v-80e3b766]{background-color:var(--color-primary-light)}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(160);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-072260c7]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.color-picker[data-v-072260c7]{display:flex;overflow:hidden;align-content:flex-end;flex-direction:column;justify-content:space-between;box-sizing:content-box !important;width:176px;padding:4px;border-radius:3px;height:196px}.color-picker-simple[data-v-072260c7]{display:grid;grid-template-columns:repeat(4, 44px);grid-auto-rows:44px}.color-picker-simple-color-circle[data-v-072260c7]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;min-height:34px;margin:auto;padding:0;color:white;border:none;border-radius:17px;font-size:16px}.color-picker-simple-color-circle[data-v-072260c7]:hover{opacity:.6}.color-picker-simple-color-circle--active[data-v-072260c7]{opacity:1 !important}.color-picker-simple-color-circle--active[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.color-picker-advanced[data-v-072260c7]{box-shadow:none !important}.color-picker-navigation[data-v-072260c7]{display:flex;flex-direction:row;justify-content:space-between;margin-top:10px}.color-picker-navigation-button[data-v-072260c7]{display:flex;align-content:center;justify-content:center;min-width:44px;height:44px;padding:14px;margin:0;border:none;border-radius:22px;background:none;justify-self:flex-end}.color-picker-navigation-button[data-v-072260c7]::before{font-size:16px}.color-picker-navigation-button[data-v-072260c7]:hover{background-color:rgba(127,127,127,0.25)}.color-picker-navigation-button.back[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.color-picker-navigation-button.confirm[data-v-072260c7]{color:white;background-color:var(--color-primary)}.color-picker-navigation-button.confirm[data-v-072260c7]:hover{background-color:var(--color-primary-element-light)}.color-picker-navigation-button.more-settings[data-v-072260c7]{margin-left:auto}.color-picker-navigation-button.more-settings[data-v-072260c7]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}[data-v-072260c7] .vc-chrome{width:176px;height:13}[data-v-072260c7] .vc-chrome-color-wrap{width:30px;height:30px}[data-v-072260c7] .vc-chrome-active-color{width:34px;height:34px;border-radius:17px}[data-v-072260c7] .vc-chrome-body{padding:14px 0 0 0}[data-v-072260c7] .vc-chrome-saturation-wrap{border-radius:3px}[data-v-072260c7] .vc-chrome-saturation-circle{width:20px;height:20px}.slide-enter[data-v-072260c7]{transform:translateX(-50%);opacity:0}.slide-enter-to[data-v-072260c7]{transform:translateX(0);opacity:1}.slide-leave[data-v-072260c7]{transform:translateX(0);opacity:1}.slide-leave-to[data-v-072260c7]{transform:translateX(-50%);opacity:0}.slide-enter-active[data-v-072260c7],.slide-leave-active[data-v-072260c7]{transition:all 50ms ease-in-out}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(161);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".content[data-v-07b3675a]{box-sizing:border-box;position:relative;display:flex;padding-top:50px;min-height:100%}.content[data-v-07b3675a] *{box-sizing:border-box}\\n\",\"\"]),e.exports=t},function(e,t){e.exports=require(\"core-js/modules/es.array.find\")},function(e,t){e.exports=require(\"core-js/modules/es.array.every\")},function(e,t,n){\"use strict\";var a=n(163);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-4f4ab098]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.autocomplete-result[data-v-4f4ab098]{display:flex;height:44px;padding:10px}.highlight .autocomplete-result[data-v-4f4ab098]{color:var(--color-main-text);background:var(--color-primary-light)}.highlight .autocomplete-result[data-v-4f4ab098],.highlight .autocomplete-result *[data-v-4f4ab098]{cursor:pointer}.autocomplete-result__icon[data-v-4f4ab098]{position:relative;flex:0 0 44px;width:44px;min-width:44px;height:44px;border-radius:44px;background-color:var(--color-background-darker);background-repeat:no-repeat;background-position:center;background-size:24px}.autocomplete-result__icon--with-avatar[data-v-4f4ab098]{color:inherit;background-size:cover}.autocomplete-result__status[data-v-4f4ab098]{position:absolute;right:-4px;bottom:-4px;box-sizing:border-box;width:18px;height:18px;border:2px solid var(--color-main-background);border-radius:50%;background-color:var(--color-main-background);font-size:14px;line-height:14px}.autocomplete-result__status--online[data-v-4f4ab098]{color:#49b382}.autocomplete-result__status--online[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.autocomplete-result__status--dnd[data-v-4f4ab098]{color:#ed484c;background-color:#fff}.autocomplete-result__status--dnd[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.autocomplete-result__status--away[data-v-4f4ab098]{color:#f4a331}.autocomplete-result__status--away[data-v-4f4ab098]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.autocomplete-result__status--offline[data-v-4f4ab098],.autocomplete-result__status--icon[data-v-4f4ab098]{border:none;background-color:transparent}.autocomplete-result__content[data-v-4f4ab098]{display:flex;flex:1 1 100%;flex-direction:column;justify-content:center;min-width:0;padding-left:10px}.autocomplete-result__title[data-v-4f4ab098],.autocomplete-result__subline[data-v-4f4ab098]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-result__subline[data-v-4f4ab098]{color:var(--color-text-lighter)}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(164);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".rich-contenteditable__input[data-v-1ea83994]{overflow-y:auto;width:auto;margin:0;padding:6px;cursor:text;white-space:pre-wrap;word-break:break-word;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);outline:none;background-color:var(--color-main-background);font-family:var(--font-face);font-size:inherit;min-height:44px;max-height:242px}.rich-contenteditable__input--empty[data-v-1ea83994]:before{position:absolute;content:attr(placeholder);color:var(--color-text-maxcontrast)}.rich-contenteditable__input[contenteditable='false'][data-v-1ea83994]{cursor:default;opacity:.5;color:var(--color-text-lighter);border:1px solid var(--color-background-darker);border-radius:var(--border-radius);background-color:var(--color-background-dark)}.rich-contenteditable__input--multiline[data-v-1ea83994]{min-height:132px;max-height:none}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(165);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon{font-style:normal;font-weight:400}.icon.arrow-left-double:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.tribute-container{z-index:9000;overflow:auto;min-width:250px;max-width:300px;max-height:288px;margin:5px 0;color:var(--color-main-text);border-radius:var(--border-radius);background:var(--color-main-background);box-shadow:0 1px 5px var(--color-box-shadow)}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(166);n.n(a).a},function(e,t,n){var a=n(1),o=n(16),i=n(17),r=n(18),s=n(19),c=n(20);t=a(!1);var l=o(i),d=o(r),m=o(s),u=o(c);t.push([e.i,'@font-face{font-family:\"iconfont-vue-4e8dbac\";src:url('+l+\");src:url(\"+l+') format(\"embedded-opentype\"),url('+d+') format(\"woff\"),url('+m+') format(\"truetype\"),url('+u+') format(\"svg\")}.icon[data-v-41759dcb]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-left[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right-double[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.arrow-right[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.breadcrumb[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.checkmark[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.close[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.confirm[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.info[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.menu[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.more[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.pause[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.play[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.triangle-s[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-away[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-dnd[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-invisible[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.icon.user-status-online[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";content:\"\"}.settings-section[data-v-41759dcb]{display:block;margin-bottom:auto;padding:30px}.settings-section__title[data-v-41759dcb]{display:inline-flex;align-items:center;justify-content:center;font-size:20px;font-weight:bold}.settings-section__info[data-v-41759dcb]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-14px;margin-left:0;opacity:.7;font-size:16px}.settings-section__info[data-v-41759dcb]:before{font-family:\"iconfont-vue-4e8dbac\";font-style:normal;font-weight:400;content:\"\"}.settings-section__info[data-v-41759dcb]:hover,.settings-section__info[data-v-41759dcb]:focus,.settings-section__info[data-v-41759dcb]:active{opacity:1}.settings-section__desc[data-v-41759dcb]{margin-top:-1em;margin-bottom:1em;opacity:.7}\\n',\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(167);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".user-bubble__wrapper[data-v-4442f088]{display:inline-block;vertical-align:middle;min-width:0;max-width:100%}.user-bubble__content[data-v-4442f088]{display:inline-flex;max-width:100%;background-color:var(--color-background-dark)}.user-bubble__content--primary[data-v-4442f088]{color:var(--color-primary-text);background-color:var(--color-primary-element)}.user-bubble__content[data-v-4442f088]>:last-child{padding-right:8px}.user-bubble__avatar[data-v-4442f088]{align-self:center}.user-bubble__title[data-v-4442f088]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.user-bubble__title[data-v-4442f088],.user-bubble__secondary[data-v-4442f088]{padding:0;padding-left:4px}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(168);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-settings[data-v-ca61dea6]{padding:28px 16px;display:flex;height:600px;width:100%}.app-settings__navigation[data-v-ca61dea6]{width:200px;margin-right:20px}.app-settings__content[data-v-ca61dea6]{width:350px;max-width:100vw;overflow-y:auto;overflow-x:hidden;padding:0 20px}.navigation-list__link[data-v-ca61dea6]{display:block;font-size:16px;height:44px;margin:4px;line-height:44px;border-radius:var(--border-radius-pill);font-weight:bold;padding:0 20px;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background-color:transparent;border:none}.navigation-list__link[data-v-ca61dea6]:hover,.navigation-list__link[data-v-ca61dea6]:focus{background-color:var(--color-background-hover)}.navigation-list__link--active[data-v-ca61dea6]{background-color:var(--color-primary-light) !important}\\n\",\"\"]),e.exports=t},function(e,t,n){\"use strict\";var a=n(169);n.n(a).a},function(e,t,n){(t=n(1)(!1)).push([e.i,\".app-settings-section[data-v-0e33da14]{margin-bottom:80px}.app-settings-section__title[data-v-0e33da14]{font-size:20px;font-weight:bold;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\\n\",\"\"]),e.exports=t},,,,,,,,,,,,,,,,,,function(e,t,n){\"use strict\";n.r(t),n.d(t,\"ActionButton\",(function(){return o.default})),n.d(t,\"ActionCheckbox\",(function(){return i.default})),n.d(t,\"ActionInput\",(function(){return r.default})),n.d(t,\"ActionLink\",(function(){return s.default})),n.d(t,\"ActionRadio\",(function(){return c.default})),n.d(t,\"ActionRouter\",(function(){return l.default})),n.d(t,\"Actions\",(function(){return d.default})),n.d(t,\"ActionSeparator\",(function(){return m.default})),n.d(t,\"ActionText\",(function(){return u.default})),n.d(t,\"ActionTextEditable\",(function(){return p.default})),n.d(t,\"AppContent\",(function(){return g.default})),n.d(t,\"AppContentDetails\",(function(){return f.default})),n.d(t,\"AppContentList\",(function(){return A.default})),n.d(t,\"AppNavigation\",(function(){return v.default})),n.d(t,\"AppNavigationCaption\",(function(){return b.default})),n.d(t,\"AppNavigationCounter\",(function(){return h.default})),n.d(t,\"AppNavigationIconBullet\",(function(){return x.default})),n.d(t,\"AppNavigationItem\",(function(){return y.default})),n.d(t,\"AppNavigationNew\",(function(){return k.default})),n.d(t,\"AppNavigationSettings\",(function(){return w.default})),n.d(t,\"AppNavigationSpacer\",(function(){return M.default})),n.d(t,\"AppSidebar\",(function(){return E.default})),n.d(t,\"AppSidebarTab\",(function(){return _.default})),n.d(t,\"Avatar\",(function(){return T.default})),n.d(t,\"Breadcrumb\",(function(){return S.default})),n.d(t,\"Breadcrumbs\",(function(){return P.default})),n.d(t,\"ColorPicker\",(function(){return j.default})),n.d(t,\"Content\",(function(){return C.default})),n.d(t,\"DatetimePicker\",(function(){return N.default})),n.d(t,\"EmptyContent\",(function(){return I.default})),n.d(t,\"Modal\",(function(){return B.default})),n.d(t,\"Multiselect\",(function(){return D.default})),n.d(t,\"MultiselectTags\",(function(){return L.default})),n.d(t,\"Popover\",(function(){return z.default})),n.d(t,\"PopoverMenu\",(function(){return O.default})),n.d(t,\"RichContenteditable\",(function(){return U.default})),n.d(t,\"SettingsSection\",(function(){return F.default})),n.d(t,\"UserBubble\",(function(){return Q.default})),n.d(t,\"AppSettingsDialog\",(function(){return G.default})),n.d(t,\"AppSettingsSection\",(function(){return Y.default})),n.d(t,\"Focus\",(function(){return H.default})),n.d(t,\"Linkify\",(function(){return R.default})),n.d(t,\"Tooltip\",(function(){return Z.default})),n.d(t,\"excludeClickOutsideClasses\",(function(){return q.a})),n.d(t,\"isFullscreen\",(function(){return q.b})),n.d(t,\"isMobile\",(function(){return q.c})),n.d(t,\"richEditor\",(function(){return q.d})),n.d(t,\"userStatus\",(function(){return q.e}));var a={};n.r(a),n.d(a,\"ActionButton\",(function(){return o.default})),n.d(a,\"ActionCheckbox\",(function(){return i.default})),n.d(a,\"ActionInput\",(function(){return r.default})),n.d(a,\"ActionLink\",(function(){return s.default})),n.d(a,\"ActionRadio\",(function(){return c.default})),n.d(a,\"ActionRouter\",(function(){return l.default})),n.d(a,\"Actions\",(function(){return d.default})),n.d(a,\"ActionSeparator\",(function(){return m.default})),n.d(a,\"ActionText\",(function(){return u.default})),n.d(a,\"ActionTextEditable\",(function(){return p.default})),n.d(a,\"AppContent\",(function(){return g.default})),n.d(a,\"AppContentDetails\",(function(){return f.default})),n.d(a,\"AppContentList\",(function(){return A.default})),n.d(a,\"AppNavigation\",(function(){return v.default})),n.d(a,\"AppNavigationCaption\",(function(){return b.default})),n.d(a,\"AppNavigationCounter\",(function(){return h.default})),n.d(a,\"AppNavigationIconBullet\",(function(){return x.default})),n.d(a,\"AppNavigationItem\",(function(){return y.default})),n.d(a,\"AppNavigationNew\",(function(){return k.default})),n.d(a,\"AppNavigationSettings\",(function(){return w.default})),n.d(a,\"AppNavigationSpacer\",(function(){return M.default})),n.d(a,\"AppSidebar\",(function(){return E.default})),n.d(a,\"AppSidebarTab\",(function(){return _.default})),n.d(a,\"Avatar\",(function(){return T.default})),n.d(a,\"Breadcrumb\",(function(){return S.default})),n.d(a,\"Breadcrumbs\",(function(){return P.default})),n.d(a,\"ColorPicker\",(function(){return j.default})),n.d(a,\"Content\",(function(){return C.default})),n.d(a,\"DatetimePicker\",(function(){return N.default})),n.d(a,\"EmptyContent\",(function(){return I.default})),n.d(a,\"Modal\",(function(){return B.default})),n.d(a,\"Multiselect\",(function(){return D.default})),n.d(a,\"MultiselectTags\",(function(){return L.default})),n.d(a,\"Popover\",(function(){return z.default})),n.d(a,\"PopoverMenu\",(function(){return O.default})),n.d(a,\"RichContenteditable\",(function(){return U.default})),n.d(a,\"SettingsSection\",(function(){return F.default})),n.d(a,\"UserBubble\",(function(){return Q.default})),n.d(a,\"AppSettingsDialog\",(function(){return G.default})),n.d(a,\"AppSettingsSection\",(function(){return Y.default}));n(29),n(50),n(87),n(7),n(132),n(133),n(121),n(199),n(88);var o=n(120),i=n(224),r=n(226),s=n(174),c=n(232),l=n(173),d=n(56),m=n(240),u=n(244),p=n(243),g=n(225),f=n(229),A=n(230),v=n(245),b=n(242),h=n(241),x=n(239),y=n(222),k=n(237),w=n(236),M=n(234),E=n(220),_=n(231),T=n(79),S=n(172),P=n(246),j=n(228),C=n(227),N=n(171),I=n(219),B=n(170),D=n(162),L=n(223),z=n(35),O=n(77),U=n(221),F=n(233),Q=n(235),G=n(247),Y=n(238),H=n(153),R=n(154),Z=n(22),q=n(53);function J(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function V(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */function K(e){Object.values(a).forEach((function(t){e.component(t.name,t)}))}\"undefined\"!=typeof window&&window.Vue&&K(window.Vue);t.default=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?J(Object(n),!0).forEach((function(t){V(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({install:K},a)}])}));\n//# sourceMappingURL=ncvuecomponents.js.map","function getInternetExplorerVersion() {\n\tvar ua = window.navigator.userAgent;\n\n\tvar msie = ua.indexOf('MSIE ');\n\tif (msie > 0) {\n\t\t// IE 10 or older => return version number\n\t\treturn parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n\t}\n\n\tvar trident = ua.indexOf('Trident/');\n\tif (trident > 0) {\n\t\t// IE 11 => return version number\n\t\tvar rv = ua.indexOf('rv:');\n\t\treturn parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n\t}\n\n\tvar edge = ua.indexOf('Edge/');\n\tif (edge > 0) {\n\t\t// Edge (IE 12+) => return version number\n\t\treturn parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n\t}\n\n\t// other browser\n\treturn -1;\n}\n\nvar isIE = void 0;\n\nfunction initCompat() {\n\tif (!initCompat.init) {\n\t\tinitCompat.init = true;\n\t\tisIE = getInternetExplorerVersion() !== -1;\n\t}\n}\n\nvar ResizeObserver = { render: function render() {\n\t\tvar _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { staticClass: \"resize-observer\", attrs: { \"tabindex\": \"-1\" } });\n\t}, staticRenderFns: [], _scopeId: 'data-v-b329ee4c',\n\tname: 'resize-observer',\n\n\tmethods: {\n\t\tcompareAndNotify: function compareAndNotify() {\n\t\t\tif (this._w !== this.$el.offsetWidth || this._h !== this.$el.offsetHeight) {\n\t\t\t\tthis._w = this.$el.offsetWidth;\n\t\t\t\tthis._h = this.$el.offsetHeight;\n\t\t\t\tthis.$emit('notify');\n\t\t\t}\n\t\t},\n\t\taddResizeHandlers: function addResizeHandlers() {\n\t\t\tthis._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\t\t\tthis.compareAndNotify();\n\t\t},\n\t\tremoveResizeHandlers: function removeResizeHandlers() {\n\t\t\tif (this._resizeObject && this._resizeObject.onload) {\n\t\t\t\tif (!isIE && this._resizeObject.contentDocument) {\n\t\t\t\t\tthis._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n\t\t\t\t}\n\t\t\t\tdelete this._resizeObject.onload;\n\t\t\t}\n\t\t}\n\t},\n\n\tmounted: function mounted() {\n\t\tvar _this = this;\n\n\t\tinitCompat();\n\t\tthis.$nextTick(function () {\n\t\t\t_this._w = _this.$el.offsetWidth;\n\t\t\t_this._h = _this.$el.offsetHeight;\n\t\t});\n\t\tvar object = document.createElement('object');\n\t\tthis._resizeObject = object;\n\t\tobject.setAttribute('aria-hidden', 'true');\n\t\tobject.setAttribute('tabindex', -1);\n\t\tobject.onload = this.addResizeHandlers;\n\t\tobject.type = 'text/html';\n\t\tif (isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t\tobject.data = 'about:blank';\n\t\tif (!isIE) {\n\t\t\tthis.$el.appendChild(object);\n\t\t}\n\t},\n\tbeforeDestroy: function beforeDestroy() {\n\t\tthis.removeResizeHandlers();\n\t}\n};\n\n// Install the components\nfunction install(Vue) {\n\tVue.component('resize-observer', ResizeObserver);\n\tVue.component('ResizeObserver', ResizeObserver);\n}\n\n// Plugin\nvar plugin = {\n\t// eslint-disable-next-line no-undef\n\tversion: \"0.4.5\",\n\tinstall: install\n};\n\n// Auto-install\nvar GlobalVue = null;\nif (typeof window !== 'undefined') {\n\tGlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n\tGlobalVue = global.Vue;\n}\nif (GlobalVue) {\n\tGlobalVue.use(plugin);\n}\n\nexport { install, ResizeObserver };\nexport default plugin;\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"sortablejs\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"sortablejs\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"vuedraggable\"] = factory(require(\"sortablejs\"));\n\telse\n\t\troot[\"vuedraggable\"] = factory(root[\"Sortable\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE_a352__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"01f9\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar LIBRARY = __webpack_require__(\"2d00\");\nvar $export = __webpack_require__(\"5ca1\");\nvar redefine = __webpack_require__(\"2aba\");\nvar hide = __webpack_require__(\"32e9\");\nvar Iterators = __webpack_require__(\"84f2\");\nvar $iterCreate = __webpack_require__(\"41a0\");\nvar setToStringTag = __webpack_require__(\"7f20\");\nvar getPrototypeOf = __webpack_require__(\"38fd\");\nvar ITERATOR = __webpack_require__(\"2b4c\")('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n\n\n/***/ }),\n\n/***/ \"02f4\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(\"4588\");\nvar defined = __webpack_require__(\"be13\");\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n\n/***/ }),\n\n/***/ \"0390\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar at = __webpack_require__(\"02f4\")(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n\n\n/***/ }),\n\n/***/ \"0bfb\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = __webpack_require__(\"cb7c\");\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n\n\n/***/ }),\n\n/***/ \"0d58\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = __webpack_require__(\"ce10\");\nvar enumBugKeys = __webpack_require__(\"e11e\");\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n\n/***/ }),\n\n/***/ \"1495\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(\"86cc\");\nvar anObject = __webpack_require__(\"cb7c\");\nvar getKeys = __webpack_require__(\"0d58\");\n\nmodule.exports = __webpack_require__(\"9e1e\") ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n\n\n/***/ }),\n\n/***/ \"214f\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n__webpack_require__(\"b0c5\");\nvar redefine = __webpack_require__(\"2aba\");\nvar hide = __webpack_require__(\"32e9\");\nvar fails = __webpack_require__(\"79e5\");\nvar defined = __webpack_require__(\"be13\");\nvar wks = __webpack_require__(\"2b4c\");\nvar regexpExec = __webpack_require__(\"520a\");\n\nvar SPECIES = wks('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {\n // Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length === 2 && result[0] === 'a' && result[1] === 'b';\n})();\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n re[SYMBOL]('');\n return !execCalled;\n }) : undefined;\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var fns = exec(\n defined,\n SYMBOL,\n ''[KEY],\n function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }\n );\n var strfn = fns[0];\n var rxfn = fns[1];\n\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n\n\n/***/ }),\n\n/***/ \"230e\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(\"d3f4\");\nvar document = __webpack_require__(\"7726\").document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n\n\n/***/ }),\n\n/***/ \"23c6\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = __webpack_require__(\"2d95\");\nvar TAG = __webpack_require__(\"2b4c\")('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n\n/***/ }),\n\n/***/ \"2621\":\n/***/ (function(module, exports) {\n\nexports.f = Object.getOwnPropertySymbols;\n\n\n/***/ }),\n\n/***/ \"2aba\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(\"7726\");\nvar hide = __webpack_require__(\"32e9\");\nvar has = __webpack_require__(\"69a8\");\nvar SRC = __webpack_require__(\"ca5a\")('src');\nvar $toString = __webpack_require__(\"fa5b\");\nvar TO_STRING = 'toString';\nvar TPL = ('' + $toString).split(TO_STRING);\n\n__webpack_require__(\"8378\").inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n\n\n/***/ }),\n\n/***/ \"2aeb\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = __webpack_require__(\"cb7c\");\nvar dPs = __webpack_require__(\"1495\");\nvar enumBugKeys = __webpack_require__(\"e11e\");\nvar IE_PROTO = __webpack_require__(\"613b\")('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = __webpack_require__(\"230e\")('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n __webpack_require__(\"fab2\").appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n\n\n/***/ }),\n\n/***/ \"2b4c\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar store = __webpack_require__(\"5537\")('wks');\nvar uid = __webpack_require__(\"ca5a\");\nvar Symbol = __webpack_require__(\"7726\").Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n\n/***/ }),\n\n/***/ \"2d00\":\n/***/ (function(module, exports) {\n\nmodule.exports = false;\n\n\n/***/ }),\n\n/***/ \"2d95\":\n/***/ (function(module, exports) {\n\nvar toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n/***/ }),\n\n/***/ \"2fdb\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n\nvar $export = __webpack_require__(\"5ca1\");\nvar context = __webpack_require__(\"d2c8\");\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * __webpack_require__(\"5147\")(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n\n/***/ }),\n\n/***/ \"32e9\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(\"86cc\");\nvar createDesc = __webpack_require__(\"4630\");\nmodule.exports = __webpack_require__(\"9e1e\") ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n\n/***/ }),\n\n/***/ \"38fd\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = __webpack_require__(\"69a8\");\nvar toObject = __webpack_require__(\"4bf8\");\nvar IE_PROTO = __webpack_require__(\"613b\")('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n\n\n/***/ }),\n\n/***/ \"41a0\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar create = __webpack_require__(\"2aeb\");\nvar descriptor = __webpack_require__(\"4630\");\nvar setToStringTag = __webpack_require__(\"7f20\");\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\n__webpack_require__(\"32e9\")(IteratorPrototype, __webpack_require__(\"2b4c\")('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n\n/***/ }),\n\n/***/ \"456d\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 Object.keys(O)\nvar toObject = __webpack_require__(\"4bf8\");\nvar $keys = __webpack_require__(\"0d58\");\n\n__webpack_require__(\"5eda\")('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n\n\n/***/ }),\n\n/***/ \"4588\":\n/***/ (function(module, exports) {\n\n// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n/***/ }),\n\n/***/ \"4630\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n\n/***/ }),\n\n/***/ \"4bf8\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.13 ToObject(argument)\nvar defined = __webpack_require__(\"be13\");\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n\n\n/***/ }),\n\n/***/ \"5147\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar MATCH = __webpack_require__(\"2b4c\")('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n\n\n/***/ }),\n\n/***/ \"520a\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar regexpFlags = __webpack_require__(\"0bfb\");\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar LAST_INDEX = 'lastIndex';\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/,\n re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n // eslint-disable-next-line no-loop-func\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n\n\n/***/ }),\n\n/***/ \"52a7\":\n/***/ (function(module, exports) {\n\nexports.f = {}.propertyIsEnumerable;\n\n\n/***/ }),\n\n/***/ \"5537\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar core = __webpack_require__(\"8378\");\nvar global = __webpack_require__(\"7726\");\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: __webpack_require__(\"2d00\") ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n\n\n/***/ }),\n\n/***/ \"5ca1\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(\"7726\");\nvar core = __webpack_require__(\"8378\");\nvar hide = __webpack_require__(\"32e9\");\nvar redefine = __webpack_require__(\"2aba\");\nvar ctx = __webpack_require__(\"9b43\");\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n\n\n/***/ }),\n\n/***/ \"5eda\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// most Object methods by ES6 should accept primitives\nvar $export = __webpack_require__(\"5ca1\");\nvar core = __webpack_require__(\"8378\");\nvar fails = __webpack_require__(\"79e5\");\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n\n\n/***/ }),\n\n/***/ \"5f1b\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar classof = __webpack_require__(\"23c6\");\nvar builtinExec = RegExp.prototype.exec;\n\n // `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw new TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n if (classof(R) !== 'RegExp') {\n throw new TypeError('RegExp#exec called on incompatible receiver');\n }\n return builtinExec.call(R, S);\n};\n\n\n/***/ }),\n\n/***/ \"613b\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar shared = __webpack_require__(\"5537\")('keys');\nvar uid = __webpack_require__(\"ca5a\");\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n/***/ }),\n\n/***/ \"626a\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = __webpack_require__(\"2d95\");\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n/***/ }),\n\n/***/ \"6762\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// https://github.com/tc39/Array.prototype.includes\nvar $export = __webpack_require__(\"5ca1\");\nvar $includes = __webpack_require__(\"c366\")(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n__webpack_require__(\"9c6c\")('includes');\n\n\n/***/ }),\n\n/***/ \"6821\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = __webpack_require__(\"626a\");\nvar defined = __webpack_require__(\"be13\");\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n/***/ }),\n\n/***/ \"69a8\":\n/***/ (function(module, exports) {\n\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n/***/ }),\n\n/***/ \"6a99\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = __webpack_require__(\"d3f4\");\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n/***/ }),\n\n/***/ \"7333\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = __webpack_require__(\"0d58\");\nvar gOPS = __webpack_require__(\"2621\");\nvar pIE = __webpack_require__(\"52a7\");\nvar toObject = __webpack_require__(\"4bf8\");\nvar IObject = __webpack_require__(\"626a\");\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || __webpack_require__(\"79e5\")(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n\n\n/***/ }),\n\n/***/ \"7726\":\n/***/ (function(module, exports) {\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n\n\n/***/ }),\n\n/***/ \"77f1\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(\"4588\");\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n/***/ }),\n\n/***/ \"79e5\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n/***/ }),\n\n/***/ \"7f20\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar def = __webpack_require__(\"86cc\").f;\nvar has = __webpack_require__(\"69a8\");\nvar TAG = __webpack_require__(\"2b4c\")('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n\n\n/***/ }),\n\n/***/ \"8378\":\n/***/ (function(module, exports) {\n\nvar core = module.exports = { version: '2.6.5' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n/***/ }),\n\n/***/ \"84f2\":\n/***/ (function(module, exports) {\n\nmodule.exports = {};\n\n\n/***/ }),\n\n/***/ \"86cc\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(\"cb7c\");\nvar IE8_DOM_DEFINE = __webpack_require__(\"c69a\");\nvar toPrimitive = __webpack_require__(\"6a99\");\nvar dP = Object.defineProperty;\n\nexports.f = __webpack_require__(\"9e1e\") ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n\n\n/***/ }),\n\n/***/ \"9b43\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// optional / simple context binding\nvar aFunction = __webpack_require__(\"d8e8\");\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n\n\n/***/ }),\n\n/***/ \"9c6c\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = __webpack_require__(\"2b4c\")('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(\"32e9\")(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n\n\n/***/ }),\n\n/***/ \"9def\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.15 ToLength\nvar toInteger = __webpack_require__(\"4588\");\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n/***/ }),\n\n/***/ \"9e1e\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !__webpack_require__(\"79e5\")(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n\n/***/ \"a352\":\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_a352__;\n\n/***/ }),\n\n/***/ \"a481\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar anObject = __webpack_require__(\"cb7c\");\nvar toObject = __webpack_require__(\"4bf8\");\nvar toLength = __webpack_require__(\"9def\");\nvar toInteger = __webpack_require__(\"4588\");\nvar advanceStringIndex = __webpack_require__(\"0390\");\nvar regExpExec = __webpack_require__(\"5f1b\");\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\n__webpack_require__(\"214f\")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n\n\n/***/ }),\n\n/***/ \"aae3\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.2.8 IsRegExp(argument)\nvar isObject = __webpack_require__(\"d3f4\");\nvar cof = __webpack_require__(\"2d95\");\nvar MATCH = __webpack_require__(\"2b4c\")('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n\n\n/***/ }),\n\n/***/ \"ac6a\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $iterators = __webpack_require__(\"cadf\");\nvar getKeys = __webpack_require__(\"0d58\");\nvar redefine = __webpack_require__(\"2aba\");\nvar global = __webpack_require__(\"7726\");\nvar hide = __webpack_require__(\"32e9\");\nvar Iterators = __webpack_require__(\"84f2\");\nvar wks = __webpack_require__(\"2b4c\");\nvar ITERATOR = wks('iterator');\nvar TO_STRING_TAG = wks('toStringTag');\nvar ArrayValues = Iterators.Array;\n\nvar DOMIterables = {\n CSSRuleList: true, // TODO: Not spec compliant, should be false.\n CSSStyleDeclaration: false,\n CSSValueList: false,\n ClientRectList: false,\n DOMRectList: false,\n DOMStringList: false,\n DOMTokenList: true,\n DataTransferItemList: false,\n FileList: false,\n HTMLAllCollection: false,\n HTMLCollection: false,\n HTMLFormElement: false,\n HTMLSelectElement: false,\n MediaList: true, // TODO: Not spec compliant, should be false.\n MimeTypeArray: false,\n NamedNodeMap: false,\n NodeList: true,\n PaintRequestList: false,\n Plugin: false,\n PluginArray: false,\n SVGLengthList: false,\n SVGNumberList: false,\n SVGPathSegList: false,\n SVGPointList: false,\n SVGStringList: false,\n SVGTransformList: false,\n SourceBufferList: false,\n StyleSheetList: true, // TODO: Not spec compliant, should be false.\n TextTrackCueList: false,\n TextTrackList: false,\n TouchList: false\n};\n\nfor (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {\n var NAME = collections[i];\n var explicit = DOMIterables[NAME];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n var key;\n if (proto) {\n if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);\n if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);\n }\n}\n\n\n/***/ }),\n\n/***/ \"b0c5\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar regexpExec = __webpack_require__(\"520a\");\n__webpack_require__(\"5ca1\")({\n target: 'RegExp',\n proto: true,\n forced: regexpExec !== /./.exec\n}, {\n exec: regexpExec\n});\n\n\n/***/ }),\n\n/***/ \"be13\":\n/***/ (function(module, exports) {\n\n// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"c366\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = __webpack_require__(\"6821\");\nvar toLength = __webpack_require__(\"9def\");\nvar toAbsoluteIndex = __webpack_require__(\"77f1\");\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n/***/ }),\n\n/***/ \"c649\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return insertNodeAt; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return camelize; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return console; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"d\", function() { return removeNode; });\n/* harmony import */ var core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"a481\");\n/* harmony import */ var core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0__);\n\n\nfunction getConsole() {\n if (typeof window !== \"undefined\") {\n return window.console;\n }\n\n return global.console;\n}\n\nvar console = getConsole();\n\nfunction cached(fn) {\n var cache = Object.create(null);\n return function cachedFn(str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n}\n\nvar regex = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(regex, function (_, c) {\n return c ? c.toUpperCase() : \"\";\n });\n});\n\nfunction removeNode(node) {\n if (node.parentElement !== null) {\n node.parentElement.removeChild(node);\n }\n}\n\nfunction insertNodeAt(fatherNode, node, position) {\n var refNode = position === 0 ? fatherNode.children[0] : fatherNode.children[position - 1].nextSibling;\n fatherNode.insertBefore(node, refNode);\n}\n\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(\"c8ba\")))\n\n/***/ }),\n\n/***/ \"c69a\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = !__webpack_require__(\"9e1e\") && !__webpack_require__(\"79e5\")(function () {\n return Object.defineProperty(__webpack_require__(\"230e\")('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n\n/***/ \"c8ba\":\n/***/ (function(module, exports) {\n\nvar g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n\n\n/***/ }),\n\n/***/ \"ca5a\":\n/***/ (function(module, exports) {\n\nvar id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n/***/ }),\n\n/***/ \"cadf\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar addToUnscopables = __webpack_require__(\"9c6c\");\nvar step = __webpack_require__(\"d53b\");\nvar Iterators = __webpack_require__(\"84f2\");\nvar toIObject = __webpack_require__(\"6821\");\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = __webpack_require__(\"01f9\")(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n\n/***/ }),\n\n/***/ \"cb7c\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(\"d3f4\");\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"ce10\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar has = __webpack_require__(\"69a8\");\nvar toIObject = __webpack_require__(\"6821\");\nvar arrayIndexOf = __webpack_require__(\"c366\")(false);\nvar IE_PROTO = __webpack_require__(\"613b\")('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n\n/***/ }),\n\n/***/ \"d2c8\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = __webpack_require__(\"aae3\");\nvar defined = __webpack_require__(\"be13\");\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n\n\n/***/ }),\n\n/***/ \"d3f4\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n/***/ }),\n\n/***/ \"d53b\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n\n\n/***/ }),\n\n/***/ \"d8e8\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"e11e\":\n/***/ (function(module, exports) {\n\n// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n/***/ }),\n\n/***/ \"f559\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n\nvar $export = __webpack_require__(\"5ca1\");\nvar toLength = __webpack_require__(\"9def\");\nvar context = __webpack_require__(\"d2c8\");\nvar STARTS_WITH = 'startsWith';\nvar $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * __webpack_require__(\"5147\")(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = context(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n\n\n/***/ }),\n\n/***/ \"f6fd\":\n/***/ (function(module, exports) {\n\n// document.currentScript polyfill by Adam Miller\n\n// MIT license\n\n(function(document){\n var currentScript = \"currentScript\",\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n // If browser needs currentScript polyfill, add get currentScript() to the document object\n if (!(currentScript in document)) {\n Object.defineProperty(document, currentScript, {\n get: function(){\n\n // IE 6-10 supports script readyState\n // IE 10+ support stack trace\n try { throw new Error(); }\n catch (err) {\n\n // Find the second match for the \"at\" string to get file src url from stack.\n // Specifically works with the format of stack traces in IE.\n var i, res = ((/.*at [^\\(]*\\((.*):.+:.+\\)$/ig).exec(err.stack) || [false])[1];\n\n // For all scripts on the page, if src matches or if ready state is interactive, return the script tag\n for(i in scripts){\n if(scripts[i].src == res || scripts[i].readyState == \"interactive\"){\n return scripts[i];\n }\n }\n\n // If no match, return null\n return null;\n }\n }\n });\n }\n})(document);\n\n\n/***/ }),\n\n/***/ \"f751\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.3.1 Object.assign(target, source)\nvar $export = __webpack_require__(\"5ca1\");\n\n$export($export.S + $export.F, 'Object', { assign: __webpack_require__(\"7333\") });\n\n\n/***/ }),\n\n/***/ \"fa5b\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"5537\")('native-function-to-string', Function.toString);\n\n\n/***/ }),\n\n/***/ \"fab2\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar document = __webpack_require__(\"7726\").document;\nmodule.exports = document && document.documentElement;\n\n\n/***/ }),\n\n/***/ \"fb15\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js\n// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n if (true) {\n __webpack_require__(\"f6fd\")\n }\n\n var setPublicPath_i\n if ((setPublicPath_i = window.document.currentScript) && (setPublicPath_i = setPublicPath_i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_require__.p = setPublicPath_i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\n/* harmony default export */ var setPublicPath = (null);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.assign.js\nvar es6_object_assign = __webpack_require__(\"f751\");\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.starts-with.js\nvar es6_string_starts_with = __webpack_require__(\"f559\");\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom.iterable.js\nvar web_dom_iterable = __webpack_require__(\"ac6a\");\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.array.iterator.js\nvar es6_array_iterator = __webpack_require__(\"cadf\");\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.keys.js\nvar es6_object_keys = __webpack_require__(\"456d\");\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js\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++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js\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// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\n\n\n\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es7.array.includes.js\nvar es7_array_includes = __webpack_require__(\"6762\");\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.includes.js\nvar es6_string_includes = __webpack_require__(\"2fdb\");\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js\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// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\n\n\n\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n// EXTERNAL MODULE: external {\"commonjs\":\"sortablejs\",\"commonjs2\":\"sortablejs\",\"amd\":\"sortablejs\",\"root\":\"Sortable\"}\nvar external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_ = __webpack_require__(\"a352\");\nvar external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_);\n\n// EXTERNAL MODULE: ./src/util/helper.js\nvar helper = __webpack_require__(\"c649\");\n\n// CONCATENATED MODULE: ./src/vuedraggable.js\n\n\n\n\n\n\n\n\n\n\n\n\nfunction buildAttribute(object, propName, value) {\n if (value === undefined) {\n return object;\n }\n\n object = object || {};\n object[propName] = value;\n return object;\n}\n\nfunction computeVmIndex(vnodes, element) {\n return vnodes.map(function (elt) {\n return elt.elm;\n }).indexOf(element);\n}\n\nfunction _computeIndexes(slots, children, isTransition, footerOffset) {\n if (!slots) {\n return [];\n }\n\n var elmFromNodes = slots.map(function (elt) {\n return elt.elm;\n });\n var footerIndex = children.length - footerOffset;\n\n var rawIndexes = _toConsumableArray(children).map(function (elt, idx) {\n return idx >= footerIndex ? elmFromNodes.length : elmFromNodes.indexOf(elt);\n });\n\n return isTransition ? rawIndexes.filter(function (ind) {\n return ind !== -1;\n }) : rawIndexes;\n}\n\nfunction emit(evtName, evtData) {\n var _this = this;\n\n this.$nextTick(function () {\n return _this.$emit(evtName.toLowerCase(), evtData);\n });\n}\n\nfunction delegateAndEmit(evtName) {\n var _this2 = this;\n\n return function (evtData) {\n if (_this2.realList !== null) {\n _this2[\"onDrag\" + evtName](evtData);\n }\n\n emit.call(_this2, evtName, evtData);\n };\n}\n\nfunction isTransitionName(name) {\n return [\"transition-group\", \"TransitionGroup\"].includes(name);\n}\n\nfunction vuedraggable_isTransition(slots) {\n if (!slots || slots.length !== 1) {\n return false;\n }\n\n var _slots = _slicedToArray(slots, 1),\n componentOptions = _slots[0].componentOptions;\n\n if (!componentOptions) {\n return false;\n }\n\n return isTransitionName(componentOptions.tag);\n}\n\nfunction getSlot(slot, scopedSlot, key) {\n return slot[key] || (scopedSlot[key] ? scopedSlot[key]() : undefined);\n}\n\nfunction computeChildrenAndOffsets(children, slot, scopedSlot) {\n var headerOffset = 0;\n var footerOffset = 0;\n var header = getSlot(slot, scopedSlot, \"header\");\n\n if (header) {\n headerOffset = header.length;\n children = children ? [].concat(_toConsumableArray(header), _toConsumableArray(children)) : _toConsumableArray(header);\n }\n\n var footer = getSlot(slot, scopedSlot, \"footer\");\n\n if (footer) {\n footerOffset = footer.length;\n children = children ? [].concat(_toConsumableArray(children), _toConsumableArray(footer)) : _toConsumableArray(footer);\n }\n\n return {\n children: children,\n headerOffset: headerOffset,\n footerOffset: footerOffset\n };\n}\n\nfunction getComponentAttributes($attrs, componentData) {\n var attributes = null;\n\n var update = function update(name, value) {\n attributes = buildAttribute(attributes, name, value);\n };\n\n var attrs = Object.keys($attrs).filter(function (key) {\n return key === \"id\" || key.startsWith(\"data-\");\n }).reduce(function (res, key) {\n res[key] = $attrs[key];\n return res;\n }, {});\n update(\"attrs\", attrs);\n\n if (!componentData) {\n return attributes;\n }\n\n var on = componentData.on,\n props = componentData.props,\n componentDataAttrs = componentData.attrs;\n update(\"on\", on);\n update(\"props\", props);\n Object.assign(attributes.attrs, componentDataAttrs);\n return attributes;\n}\n\nvar eventsListened = [\"Start\", \"Add\", \"Remove\", \"Update\", \"End\"];\nvar eventsToEmit = [\"Choose\", \"Unchoose\", \"Sort\", \"Filter\", \"Clone\"];\nvar readonlyProperties = [\"Move\"].concat(eventsListened, eventsToEmit).map(function (evt) {\n return \"on\" + evt;\n});\nvar draggingElement = null;\nvar props = {\n options: Object,\n list: {\n type: Array,\n required: false,\n default: null\n },\n value: {\n type: Array,\n required: false,\n default: null\n },\n noTransitionOnDrag: {\n type: Boolean,\n default: false\n },\n clone: {\n type: Function,\n default: function _default(original) {\n return original;\n }\n },\n element: {\n type: String,\n default: \"div\"\n },\n tag: {\n type: String,\n default: null\n },\n move: {\n type: Function,\n default: null\n },\n componentData: {\n type: Object,\n required: false,\n default: null\n }\n};\nvar draggableComponent = {\n name: \"draggable\",\n inheritAttrs: false,\n props: props,\n data: function data() {\n return {\n transitionMode: false,\n noneFunctionalComponentMode: false\n };\n },\n render: function render(h) {\n var slots = this.$slots.default;\n this.transitionMode = vuedraggable_isTransition(slots);\n\n var _computeChildrenAndOf = computeChildrenAndOffsets(slots, this.$slots, this.$scopedSlots),\n children = _computeChildrenAndOf.children,\n headerOffset = _computeChildrenAndOf.headerOffset,\n footerOffset = _computeChildrenAndOf.footerOffset;\n\n this.headerOffset = headerOffset;\n this.footerOffset = footerOffset;\n var attributes = getComponentAttributes(this.$attrs, this.componentData);\n return h(this.getTag(), attributes, children);\n },\n created: function created() {\n if (this.list !== null && this.value !== null) {\n helper[\"b\" /* console */].error(\"Value and list props are mutually exclusive! Please set one or another.\");\n }\n\n if (this.element !== \"div\") {\n helper[\"b\" /* console */].warn(\"Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props\");\n }\n\n if (this.options !== undefined) {\n helper[\"b\" /* console */].warn(\"Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props\");\n }\n },\n mounted: function mounted() {\n var _this3 = this;\n\n this.noneFunctionalComponentMode = this.getTag().toLowerCase() !== this.$el.nodeName.toLowerCase() && !this.getIsFunctional();\n\n if (this.noneFunctionalComponentMode && this.transitionMode) {\n throw new Error(\"Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: \".concat(this.getTag()));\n }\n\n var optionsAdded = {};\n eventsListened.forEach(function (elt) {\n optionsAdded[\"on\" + elt] = delegateAndEmit.call(_this3, elt);\n });\n eventsToEmit.forEach(function (elt) {\n optionsAdded[\"on\" + elt] = emit.bind(_this3, elt);\n });\n var attributes = Object.keys(this.$attrs).reduce(function (res, key) {\n res[Object(helper[\"a\" /* camelize */])(key)] = _this3.$attrs[key];\n return res;\n }, {});\n var options = Object.assign({}, this.options, attributes, optionsAdded, {\n onMove: function onMove(evt, originalEvent) {\n return _this3.onDragMove(evt, originalEvent);\n }\n });\n !(\"draggable\" in options) && (options.draggable = \">*\");\n this._sortable = new external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default.a(this.rootContainer, options);\n this.computeIndexes();\n },\n beforeDestroy: function beforeDestroy() {\n if (this._sortable !== undefined) this._sortable.destroy();\n },\n computed: {\n rootContainer: function rootContainer() {\n return this.transitionMode ? this.$el.children[0] : this.$el;\n },\n realList: function realList() {\n return this.list ? this.list : this.value;\n }\n },\n watch: {\n options: {\n handler: function handler(newOptionValue) {\n this.updateOptions(newOptionValue);\n },\n deep: true\n },\n $attrs: {\n handler: function handler(newOptionValue) {\n this.updateOptions(newOptionValue);\n },\n deep: true\n },\n realList: function realList() {\n this.computeIndexes();\n }\n },\n methods: {\n getIsFunctional: function getIsFunctional() {\n var fnOptions = this._vnode.fnOptions;\n return fnOptions && fnOptions.functional;\n },\n getTag: function getTag() {\n return this.tag || this.element;\n },\n updateOptions: function updateOptions(newOptionValue) {\n for (var property in newOptionValue) {\n var value = Object(helper[\"a\" /* camelize */])(property);\n\n if (readonlyProperties.indexOf(value) === -1) {\n this._sortable.option(value, newOptionValue[property]);\n }\n }\n },\n getChildrenNodes: function getChildrenNodes() {\n if (this.noneFunctionalComponentMode) {\n return this.$children[0].$slots.default;\n }\n\n var rawNodes = this.$slots.default;\n return this.transitionMode ? rawNodes[0].child.$slots.default : rawNodes;\n },\n computeIndexes: function computeIndexes() {\n var _this4 = this;\n\n this.$nextTick(function () {\n _this4.visibleIndexes = _computeIndexes(_this4.getChildrenNodes(), _this4.rootContainer.children, _this4.transitionMode, _this4.footerOffset);\n });\n },\n getUnderlyingVm: function getUnderlyingVm(htmlElt) {\n var index = computeVmIndex(this.getChildrenNodes() || [], htmlElt);\n\n if (index === -1) {\n //Edge case during move callback: related element might be\n //an element different from collection\n return null;\n }\n\n var element = this.realList[index];\n return {\n index: index,\n element: element\n };\n },\n getUnderlyingPotencialDraggableComponent: function getUnderlyingPotencialDraggableComponent(_ref) {\n var vue = _ref.__vue__;\n\n if (!vue || !vue.$options || !isTransitionName(vue.$options._componentTag)) {\n if (!(\"realList\" in vue) && vue.$children.length === 1 && \"realList\" in vue.$children[0]) return vue.$children[0];\n return vue;\n }\n\n return vue.$parent;\n },\n emitChanges: function emitChanges(evt) {\n var _this5 = this;\n\n this.$nextTick(function () {\n _this5.$emit(\"change\", evt);\n });\n },\n alterList: function alterList(onList) {\n if (this.list) {\n onList(this.list);\n return;\n }\n\n var newList = _toConsumableArray(this.value);\n\n onList(newList);\n this.$emit(\"input\", newList);\n },\n spliceList: function spliceList() {\n var _arguments = arguments;\n\n var spliceList = function spliceList(list) {\n return list.splice.apply(list, _toConsumableArray(_arguments));\n };\n\n this.alterList(spliceList);\n },\n updatePosition: function updatePosition(oldIndex, newIndex) {\n var updatePosition = function updatePosition(list) {\n return list.splice(newIndex, 0, list.splice(oldIndex, 1)[0]);\n };\n\n this.alterList(updatePosition);\n },\n getRelatedContextFromMoveEvent: function getRelatedContextFromMoveEvent(_ref2) {\n var to = _ref2.to,\n related = _ref2.related;\n var component = this.getUnderlyingPotencialDraggableComponent(to);\n\n if (!component) {\n return {\n component: component\n };\n }\n\n var list = component.realList;\n var context = {\n list: list,\n component: component\n };\n\n if (to !== related && list && component.getUnderlyingVm) {\n var destination = component.getUnderlyingVm(related);\n\n if (destination) {\n return Object.assign(destination, context);\n }\n }\n\n return context;\n },\n getVmIndex: function getVmIndex(domIndex) {\n var indexes = this.visibleIndexes;\n var numberIndexes = indexes.length;\n return domIndex > numberIndexes - 1 ? numberIndexes : indexes[domIndex];\n },\n getComponent: function getComponent() {\n return this.$slots.default[0].componentInstance;\n },\n resetTransitionData: function resetTransitionData(index) {\n if (!this.noTransitionOnDrag || !this.transitionMode) {\n return;\n }\n\n var nodes = this.getChildrenNodes();\n nodes[index].data = null;\n var transitionContainer = this.getComponent();\n transitionContainer.children = [];\n transitionContainer.kept = undefined;\n },\n onDragStart: function onDragStart(evt) {\n this.context = this.getUnderlyingVm(evt.item);\n evt.item._underlying_vm_ = this.clone(this.context.element);\n draggingElement = evt.item;\n },\n onDragAdd: function onDragAdd(evt) {\n var element = evt.item._underlying_vm_;\n\n if (element === undefined) {\n return;\n }\n\n Object(helper[\"d\" /* removeNode */])(evt.item);\n var newIndex = this.getVmIndex(evt.newIndex);\n this.spliceList(newIndex, 0, element);\n this.computeIndexes();\n var added = {\n element: element,\n newIndex: newIndex\n };\n this.emitChanges({\n added: added\n });\n },\n onDragRemove: function onDragRemove(evt) {\n Object(helper[\"c\" /* insertNodeAt */])(this.rootContainer, evt.item, evt.oldIndex);\n\n if (evt.pullMode === \"clone\") {\n Object(helper[\"d\" /* removeNode */])(evt.clone);\n return;\n }\n\n var oldIndex = this.context.index;\n this.spliceList(oldIndex, 1);\n var removed = {\n element: this.context.element,\n oldIndex: oldIndex\n };\n this.resetTransitionData(oldIndex);\n this.emitChanges({\n removed: removed\n });\n },\n onDragUpdate: function onDragUpdate(evt) {\n Object(helper[\"d\" /* removeNode */])(evt.item);\n Object(helper[\"c\" /* insertNodeAt */])(evt.from, evt.item, evt.oldIndex);\n var oldIndex = this.context.index;\n var newIndex = this.getVmIndex(evt.newIndex);\n this.updatePosition(oldIndex, newIndex);\n var moved = {\n element: this.context.element,\n oldIndex: oldIndex,\n newIndex: newIndex\n };\n this.emitChanges({\n moved: moved\n });\n },\n updateProperty: function updateProperty(evt, propertyName) {\n evt.hasOwnProperty(propertyName) && (evt[propertyName] += this.headerOffset);\n },\n computeFutureIndex: function computeFutureIndex(relatedContext, evt) {\n if (!relatedContext.element) {\n return 0;\n }\n\n var domChildren = _toConsumableArray(evt.to.children).filter(function (el) {\n return el.style[\"display\"] !== \"none\";\n });\n\n var currentDOMIndex = domChildren.indexOf(evt.related);\n var currentIndex = relatedContext.component.getVmIndex(currentDOMIndex);\n var draggedInList = domChildren.indexOf(draggingElement) !== -1;\n return draggedInList || !evt.willInsertAfter ? currentIndex : currentIndex + 1;\n },\n onDragMove: function onDragMove(evt, originalEvent) {\n var onMove = this.move;\n\n if (!onMove || !this.realList) {\n return true;\n }\n\n var relatedContext = this.getRelatedContextFromMoveEvent(evt);\n var draggedContext = this.context;\n var futureIndex = this.computeFutureIndex(relatedContext, evt);\n Object.assign(draggedContext, {\n futureIndex: futureIndex\n });\n var sendEvt = Object.assign({}, evt, {\n relatedContext: relatedContext,\n draggedContext: draggedContext\n });\n return onMove(sendEvt, originalEvent);\n },\n onDragEnd: function onDragEnd() {\n this.computeIndexes();\n draggingElement = null;\n }\n }\n};\n\nif (typeof window !== \"undefined\" && \"Vue\" in window) {\n window.Vue.component(\"draggable\", draggableComponent);\n}\n\n/* harmony default export */ var vuedraggable = (draggableComponent);\n// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js\n\n\n/* harmony default export */ var entry_lib = __webpack_exports__[\"default\"] = (vuedraggable);\n\n\n\n/***/ })\n\n/******/ })[\"default\"];\n});\n//# sourceMappingURL=vuedraggable.umd.js.map","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"Directives/Tooltip\",[],e):\"object\"==typeof exports?exports[\"Directives/Tooltip\"]=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Directives/Tooltip\"]=e())}(window,(function(){return function(t){var e={};function r(o){if(e[o])return e[o].exports;var n=e[o]={i:o,l:!1,exports:{}};return t[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,o){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var n in t)r.d(o,n,function(e){return t[e]}.bind(null,n));return o},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,\"a\",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p=\"/dist/\",r(r.s=22)}({1:function(t,e,r){\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var r=function(t,e){var r=t[1]||\"\",o=t[3];if(!o)return r;if(e&&\"function\"==typeof btoa){var n=(i=o,l=btoa(unescape(encodeURIComponent(JSON.stringify(i)))),c=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(l),\"/*# \".concat(c,\" */\")),a=o.sources.map((function(t){return\"/*# sourceURL=\".concat(o.sourceRoot||\"\").concat(t,\" */\")}));return[r].concat(a).concat([n]).join(\"\\n\")}var i,l,c;return[r].join(\"\\n\")}(e,t);return e[2]?\"@media \".concat(e[2],\" {\").concat(r,\"}\"):r})).join(\"\")},e.i=function(t,r,o){\"string\"==typeof t&&(t=[[null,t,\"\"]]);var n={};if(o)for(var a=0;a<this.length;a++){var i=this[a][0];null!=i&&(n[i]=!0)}for(var l=0;l<t.length;l++){var c=[].concat(t[l]);o&&n[c[0]]||(r&&(c[2]?c[2]=\"\".concat(r,\" and \").concat(c[2]):c[2]=r),e.push(c))}},e}},2:function(t,e,r){\"use strict\";function o(t,e){for(var r=[],o={},n=0;n<e.length;n++){var a=e[n],i=a[0],l={id:t+\":\"+n,css:a[1],media:a[2],sourceMap:a[3]};o[i]?o[i].parts.push(l):r.push(o[i]={id:i,parts:[l]})}return r}r.r(e),r.d(e,\"default\",(function(){return f}));var n=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!n)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var a={},i=n&&(document.head||document.getElementsByTagName(\"head\")[0]),l=null,c=0,s=!1,d=function(){},p=null,u=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function f(t,e,r,n){s=r,p=n||{};var i=o(t,e);return v(i),function(e){for(var r=[],n=0;n<i.length;n++){var l=i[n];(c=a[l.id]).refs--,r.push(c)}e?v(i=o(t,e)):i=[];for(n=0;n<r.length;n++){var c;if(0===(c=r[n]).refs){for(var s=0;s<c.parts.length;s++)c.parts[s]();delete a[c.id]}}}}function v(t){for(var e=0;e<t.length;e++){var r=t[e],o=a[r.id];if(o){o.refs++;for(var n=0;n<o.parts.length;n++)o.parts[n](r.parts[n]);for(;n<r.parts.length;n++)o.parts.push(h(r.parts[n]));o.parts.length>r.parts.length&&(o.parts.length=r.parts.length)}else{var i=[];for(n=0;n<r.parts.length;n++)i.push(h(r.parts[n]));a[r.id]={id:r.id,refs:1,parts:i}}}}function b(){var t=document.createElement(\"style\");return t.type=\"text/css\",i.appendChild(t),t}function h(t){var e,r,o=document.querySelector('style[data-vue-ssr-id~=\"'+t.id+'\"]');if(o){if(s)return d;o.parentNode.removeChild(o)}if(u){var n=c++;o=l||(l=b()),e=x.bind(null,o,n,!1),r=x.bind(null,o,n,!0)}else o=b(),e=y.bind(null,o),r=function(){o.parentNode.removeChild(o)};return e(t),function(o){if(o){if(o.css===t.css&&o.media===t.media&&o.sourceMap===t.sourceMap)return;e(t=o)}else r()}}var g,m=(g=[],function(t,e){return g[t]=e,g.filter(Boolean).join(\"\\n\")});function x(t,e,r,o){var n=r?\"\":o.css;if(t.styleSheet)t.styleSheet.cssText=m(e,n);else{var a=document.createTextNode(n),i=t.childNodes;i[e]&&t.removeChild(i[e]),i.length?t.insertBefore(a,i[e]):t.appendChild(a)}}function y(t,e){var r=e.css,o=e.media,n=e.sourceMap;if(o&&t.setAttribute(\"media\",o),p.ssrId&&t.setAttribute(\"data-vue-ssr-id\",e.id),n&&(r+=\"\\n/*# sourceURL=\"+n.sources[0]+\" */\",r+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(n))))+\" */\"),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}},22:function(t,e,r){\"use strict\";r.r(e);var o=r(6);r(58);\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\no.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"4e8dbac\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),o.VTooltip.options.defaultHtml=!1,e.default=o.VTooltip},58:function(t,e,r){var o=r(59);\"string\"==typeof o&&(o=[[t.i,o,\"\"]]),o.locals&&(t.exports=o.locals);(0,r(2).default)(\"941c791e\",o,!0,{})},59:function(t,e,r){(e=r(1)(!1)).push([t.i,\".vue-tooltip[data-v-4e8dbac]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-4e8dbac][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-4e8dbac][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-4e8dbac][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-4e8dbac][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-4e8dbac][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-4e8dbac][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-4e8dbac] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-4e8dbac] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\"]),t.exports=e},6:function(t,e){t.exports=require(\"v-tooltip\")}})}));\n//# sourceMappingURL=Tooltip.js.map","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","\"use strict\";\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRequestToken = getRequestToken;\nexports.onRequestTokenUpdate = onRequestTokenUpdate;\n\nvar _eventBus = require(\"@nextcloud/event-bus\");\n\nvar tokenElement = document.getElementsByTagName('head')[0];\nvar token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\nvar observers = [];\n\nfunction getRequestToken() {\n return token;\n}\n\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n} // Listen to server event and keep token in sync\n\n\n(0, _eventBus.subscribe)('csrf-token-update', function (e) {\n token = e.token;\n observers.forEach(function (observer) {\n try {\n observer(e.token);\n } catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n//# sourceMappingURL=requesttoken.js.map","import valid from \"semver/functions/valid\";\nimport major from \"semver/functions/major\";\n\nimport packageJson from \"../package.json\";\nimport { Event } from \"./Event.js\";\nimport { EventBus } from \"./EventBus.js\";\nimport { EventHandler } from \"./EventHandler.js\";\n\nexport class ProxyBus implements EventBus {\n\n private bus: EventBus;\n\n constructor(bus: EventBus) {\n if (typeof bus.getVersion !== 'function' || !valid(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version')\n } else if (major(bus.getVersion()) !== major(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion())\n }\n\n this.bus = bus;\n }\n\n getVersion(): string {\n return packageJson.version\n }\n\n subscribe(name: string, handler: EventHandler): void {\n this.bus.subscribe(name, handler);\n }\n\n unsubscribe(name: string, handler: EventHandler): void {\n this.bus.unsubscribe(name, handler);\n }\n\n emit(name: string, event: Event): void {\n this.bus.emit(name, event);\n }\n\n}\n","const parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n","const {MAX_LENGTH} = require('../internal/constants')\nconst { re, t } = require('../internal/re')\nconst SemVer = require('../classes/semver')\n\nconst parse = (version, options) => {\n if (!options || typeof options !== 'object') {\n options = {\n loose: !!options,\n includePrerelease: false\n }\n }\n\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n if (version.length > MAX_LENGTH) {\n return null\n }\n\n const r = options.loose ? re[t.LOOSE] : re[t.FULL]\n if (!r.test(version)) {\n return null\n }\n\n try {\n return new SemVer(version, options)\n } catch (er) {\n return null\n }\n}\n\nmodule.exports = parse\n","const numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n const anum = numeric.test(a)\n const bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers\n}\n","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","import packageJson from \"../package.json\";\nimport { Event } from \"./Event.js\";\nimport { EventBus } from \"./EventBus.js\";\nimport { EventHandler } from \"./EventHandler.js\";\n\nexport class SimpleBus implements EventBus {\n\n private handlers = new Map<string, EventHandler[]>();\n\n getVersion(): string {\n return packageJson.version\n }\n\n subscribe(name: string, handler: EventHandler): void {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n\n unsubscribe(name: string, handler: EventHandler): void {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(h => h != handler));\n }\n\n emit(name: string, event: Event): void {\n (this.handlers.get(name) || []).forEach(h => {\n try {\n h(event)\n } catch (e) {\n console.error('could not invoke event listener', e)\n }\n })\n }\n\n}\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.github.io/ecma262/#sec-map-objects\nmodule.exports = collection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var nativeMethod = NativePrototype[KEY];\n redefine(NativePrototype, KEY,\n KEY == 'add' ? function add(value) {\n nativeMethod.call(this, value === 0 ? 0 : value);\n return this;\n } : KEY == 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);\n } : KEY == 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : nativeMethod.call(this, key === 0 ? 0 : key);\n } : KEY == 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n nativeMethod.call(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n // eslint-disable-next-line max-len\n if (isForced(CONSTRUCTOR_NAME, typeof NativeConstructor != 'function' || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n })))) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.REQUIRED = true;\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, Constructor, CONSTRUCTOR_NAME);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, forced: Constructor != NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar create = require('../internals/object-create');\nvar redefineAll = require('../internals/redefine-all');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/define-iterator');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, CONSTRUCTOR_NAME);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n });\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n redefineAll(C.prototype, IS_MAP ? {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineProperty(C.prototype, 'size', {\n get: function () {\n return getInternalState(this).size;\n }\n });\n return C;\n },\n setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return { value: undefined, done: true };\n }\n // return step by kind\n if (kind == 'keys') return { value: entry.key, done: false };\n if (kind == 'values') return { value: entry.value, done: false };\n return { value: [entry.key, entry.value], done: false };\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCurrentUser = getCurrentUser;\n/// <reference types=\"@nextcloud/typings\" />\nvar uidElement = document.getElementsByTagName('head')[0];\nvar uid = uidElement ? uidElement.getAttribute('data-user') : null;\nvar displayNameElement = document.getElementsByTagName('head')[0];\nvar displayName = displayNameElement ? displayNameElement.getAttribute('data-user-displayname') : null;\nvar isAdmin = typeof OC === 'undefined' ? false : OC.isUserAdmin();\n\nfunction getCurrentUser() {\n if (uid === null) {\n return null;\n }\n\n return {\n uid: uid,\n displayName: displayName,\n isAdmin: isAdmin\n };\n}\n//# sourceMappingURL=user.js.map","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","\"use strict\";\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.regexp.to-string\");\n\nrequire(\"core-js/modules/es.string.replace\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getGettextBuilder = getGettextBuilder;\n\nvar _nodeGettext = _interopRequireDefault(require(\"node-gettext\"));\n\nvar _ = require(\".\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar GettextBuilder = /*#__PURE__*/function () {\n function GettextBuilder() {\n _classCallCheck(this, GettextBuilder);\n\n this.translations = {};\n this.debug = false;\n }\n\n _createClass(GettextBuilder, [{\n key: \"setLanguage\",\n value: function setLanguage(language) {\n this.locale = language;\n return this;\n }\n }, {\n key: \"detectLocale\",\n value: function detectLocale() {\n return this.setLanguage((0, _.getLanguage)().replace('-', '_'));\n }\n }, {\n key: \"addTranslation\",\n value: function addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n }, {\n key: \"enableDebugMode\",\n value: function enableDebugMode() {\n this.debug = true;\n return this;\n }\n }, {\n key: \"build\",\n value: function build() {\n return new GettextWrapper(this.locale || 'en', this.translations, this.debug);\n }\n }]);\n\n return GettextBuilder;\n}();\n\nvar GettextWrapper = /*#__PURE__*/function () {\n function GettextWrapper(locale, data, debug) {\n _classCallCheck(this, GettextWrapper);\n\n this.gt = new _nodeGettext.default({\n debug: debug,\n sourceLocale: 'en'\n });\n\n for (var key in data) {\n this.gt.addTranslations(key, 'messages', data[key]);\n }\n\n this.gt.setLocale(locale);\n }\n\n _createClass(GettextWrapper, [{\n key: \"subtitudePlaceholders\",\n value: function subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n\n if (typeof r === 'string' || typeof r === 'number') {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n }, {\n key: \"gettext\",\n value: function gettext(original) {\n var placeholders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return this.subtitudePlaceholders(this.gt.gettext(original), placeholders);\n }\n }, {\n key: \"ngettext\",\n value: function ngettext(singular, plural, count) {\n var placeholders = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n return this.subtitudePlaceholders(this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()), placeholders);\n }\n }]);\n\n return GettextWrapper;\n}();\n\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\n//# sourceMappingURL=gettext.js.map","'use strict';\n\nvar get = require('lodash.get');\nvar plurals = require('./plurals');\n\nmodule.exports = Gettext;\n\n/**\n * Creates and returns a new Gettext instance.\n *\n * @constructor\n * @param {Object} [options] A set of options\n * @param {String} options.sourceLocale The locale that the source code and its\n * texts are written in. Translations for\n * this locale is not necessary.\n * @param {Boolean} options.debug Whether to output debug info into the\n * console.\n * @return {Object} A Gettext instance\n */\nfunction Gettext(options) {\n options = options || {};\n\n this.catalogs = {};\n this.locale = '';\n this.domain = 'messages';\n\n this.listeners = [];\n\n // Set source locale\n this.sourceLocale = '';\n if (options.sourceLocale) {\n if (typeof options.sourceLocale === 'string') {\n this.sourceLocale = options.sourceLocale;\n }\n else {\n this.warn('The `sourceLocale` option should be a string');\n }\n }\n\n // Set debug flag\n this.debug = 'debug' in options && options.debug === true;\n}\n\n/**\n * Adds an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback An event handler function\n */\nGettext.prototype.on = function(eventName, callback) {\n this.listeners.push({\n eventName: eventName,\n callback: callback\n });\n};\n\n/**\n * Removes an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback A previously registered event handler function\n */\nGettext.prototype.off = function(eventName, callback) {\n this.listeners = this.listeners.filter(function(listener) {\n return (\n listener.eventName === eventName &&\n listener.callback === callback\n ) === false;\n });\n};\n\n/**\n * Emits an event to all registered event listener.\n *\n * @private\n * @param {String} eventName An event name\n * @param {any} eventData Data to pass to event listeners\n */\nGettext.prototype.emit = function(eventName, eventData) {\n for (var i = 0; i < this.listeners.length; i++) {\n var listener = this.listeners[i];\n if (listener.eventName === eventName) {\n listener.callback(eventData);\n }\n }\n};\n\n/**\n * Logs a warning to the console if debug mode is enabled.\n *\n * @ignore\n * @param {String} message A warning message\n */\nGettext.prototype.warn = function(message) {\n if (this.debug) {\n console.warn(message);\n }\n\n this.emit('error', new Error(message));\n};\n\n/**\n * Stores a set of translations in the set of gettext\n * catalogs.\n *\n * @example\n * gt.addTranslations('sv-SE', 'messages', translationsObject)\n *\n * @param {String} locale A locale string\n * @param {String} domain A domain name\n * @param {Object} translations An object of gettext-parser JSON shape\n */\nGettext.prototype.addTranslations = function(locale, domain, translations) {\n if (!this.catalogs[locale]) {\n this.catalogs[locale] = {};\n }\n\n this.catalogs[locale][domain] = translations;\n};\n\n/**\n * Sets the locale to get translated messages for.\n *\n * @example\n * gt.setLocale('sv-SE')\n *\n * @param {String} locale A locale\n */\nGettext.prototype.setLocale = function(locale) {\n if (typeof locale !== 'string') {\n this.warn(\n 'You called setLocale() with an argument of type ' + (typeof locale) + '. ' +\n 'The locale must be a string.'\n );\n return;\n }\n\n if (locale.trim() === '') {\n this.warn('You called setLocale() with an empty value, which makes little sense.');\n }\n\n if (locale !== this.sourceLocale && !this.catalogs[locale]) {\n this.warn('You called setLocale() with \"' + locale + '\", but no translations for that locale has been added.');\n }\n\n this.locale = locale;\n};\n\n/**\n * Sets the default gettext domain.\n *\n * @example\n * gt.setTextDomain('domainname')\n *\n * @param {String} domain A gettext domain name\n */\nGettext.prototype.setTextDomain = function(domain) {\n if (typeof domain !== 'string') {\n this.warn(\n 'You called setTextDomain() with an argument of type ' + (typeof domain) + '. ' +\n 'The domain must be a string.'\n );\n return;\n }\n\n if (domain.trim() === '') {\n this.warn('You called setTextDomain() with an empty `domain` value.');\n }\n\n this.domain = domain;\n};\n\n/**\n * Translates a string using the default textdomain\n *\n * @example\n * gt.gettext('Some text')\n *\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.gettext = function(msgid) {\n return this.dnpgettext(this.domain, '', msgid);\n};\n\n/**\n * Translates a string using a specific domain\n *\n * @example\n * gt.dgettext('domainname', 'Some text')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dgettext = function(domain, msgid) {\n return this.dnpgettext(domain, '', msgid);\n};\n\n/**\n * Translates a plural string using the default textdomain\n *\n * @example\n * gt.ngettext('One thing', 'Many things', numberOfThings)\n *\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.ngettext = function(msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string using a specific textdomain\n *\n * @example\n * gt.dngettext('domainname', 'One thing', 'Many things', numberOfThings)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dngettext = function(domain, msgid, msgidPlural, count) {\n return this.dnpgettext(domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a string from a specific context using the default textdomain\n *\n * @example\n * gt.pgettext('sports', 'Back')\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.pgettext = function(msgctxt, msgid) {\n return this.dnpgettext(this.domain, msgctxt, msgid);\n};\n\n/**\n * Translates a string from a specific context using s specific textdomain\n *\n * @example\n * gt.dpgettext('domainname', 'sports', 'Back')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dpgettext = function(domain, msgctxt, msgid) {\n return this.dnpgettext(domain, msgctxt, msgid);\n};\n\n/**\n * Translates a plural string from a specific context using the default textdomain\n *\n * @example\n * gt.npgettext('sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.npgettext = function(msgctxt, msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, msgctxt, msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string from a specifi context using a specific textdomain\n *\n * @example\n * gt.dnpgettext('domainname', 'sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @param {String} msgidPlural If no translation was found, return this on count!=1\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dnpgettext = function(domain, msgctxt, msgid, msgidPlural, count) {\n var defaultTranslation = msgid;\n var translation;\n var index;\n\n msgctxt = msgctxt || '';\n\n if (!isNaN(count) && count !== 1) {\n defaultTranslation = msgidPlural || msgid;\n }\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n\n if (translation) {\n if (typeof count === 'number') {\n var pluralsFunc = plurals[Gettext.getLanguageCode(this.locale)].pluralsFunc;\n index = pluralsFunc(count);\n if (typeof index === 'boolean') {\n index = index ? 1 : 0;\n }\n } else {\n index = 0;\n }\n\n return translation.msgstr[index] || defaultTranslation;\n }\n else if (!this.sourceLocale || this.locale !== this.sourceLocale) {\n this.warn('No translation was found for msgid \"' + msgid + '\" in msgctxt \"' + msgctxt + '\" and domain \"' + domain + '\"');\n }\n\n return defaultTranslation;\n};\n\n/**\n * Retrieves comments object for a translation. The comments object\n * has the shape `{ translator, extracted, reference, flag, previous }`.\n *\n * @example\n * const comment = gt.getComment('domainname', 'sports', 'Backs')\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Comments object or false if not found\n */\nGettext.prototype.getComment = function(domain, msgctxt, msgid) {\n var translation;\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n if (translation) {\n return translation.comments || {};\n }\n\n return {};\n};\n\n/**\n * Retrieves translation object from the domain and context\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Translation object or false if not found\n */\nGettext.prototype._getTranslation = function(domain, msgctxt, msgid) {\n msgctxt = msgctxt || '';\n\n return get(this.catalogs, [this.locale, domain, 'translations', msgctxt, msgid]);\n};\n\n/**\n * Returns the language code part of a locale\n *\n * @example\n * Gettext.getLanguageCode('sv-SE')\n * // -> \"sv\"\n *\n * @private\n * @param {String} locale A case-insensitive locale string\n * @returns {String} A language code\n */\nGettext.getLanguageCode = function(locale) {\n return locale.split(/[\\-_]/)[0].toLowerCase();\n};\n\n/* C-style aliases */\n\n/**\n * C-style alias for [setTextDomain](#gettextsettextdomaindomain)\n *\n * @see Gettext#setTextDomain\n */\nGettext.prototype.textdomain = function(domain) {\n if (this.debug) {\n console.warn('textdomain(domain) was used to set locales in node-gettext v1. ' +\n 'Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\\n\\n ' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\\n\\n' +\n 'This warning will be removed in the final 2.0.0');\n }\n\n this.setTextDomain(domain);\n};\n\n/**\n * C-style alias for [setLocale](#gettextsetlocalelocale)\n *\n * @see Gettext#setLocale\n */\nGettext.prototype.setlocale = function(locale) {\n this.setLocale(locale);\n};\n\n/* Deprecated functions */\n\n/**\n * This function will be removed in the final 2.0.0 release.\n *\n * @deprecated\n */\nGettext.prototype.addTextdomain = function() {\n console.error('addTextdomain() is deprecated.\\n\\n' +\n '* To add translations, use addTranslations()\\n' +\n '* To set the default domain, use setTextDomain() (or its alias textdomain())\\n' +\n '\\n' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x');\n};\n","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** `Object#toString` result references. */\nvar funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n symbolTag = '[object Symbol]';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n reLeadingDot = /^\\./,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Checks if `value` is a host object in IE < 9.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a host object, else `false`.\n */\nfunction isHostObject(value) {\n // Many host objects are `Object` objects that can coerce to strings\n // despite having improperly defined `toString` methods.\n var result = false;\n if (value != null && typeof value.toString != 'function') {\n try {\n result = !!(value + '');\n } catch (e) {}\n }\n return result;\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Symbol = root.Symbol,\n splice = arrayProto.splice;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n return this.has(key) && delete this.__data__[key];\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n return getMapData(this, key)['delete'](key);\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n getMapData(this, key).set(key, value);\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = isKey(path, object) ? [path] : castPath(path);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value) {\n return isArray(value) ? value : stringToPath(value);\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoize(function(string) {\n string = toString(string);\n\n var result = [];\n if (reLeadingDot.test(string)) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, string) {\n result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to process.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result);\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Assign cache to `_.memoize`.\nmemoize.Cache = MapCache;\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 8-9 which returns 'object' for typed array and other constructors.\n var tag = isObject(value) ? objectToString.call(value) : '';\n return tag == funcTag || tag == genTag;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","'use strict';\n\nmodule.exports = {\n ach: {\n name: 'Acholi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n af: {\n name: 'Afrikaans',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ak: {\n name: 'Akan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n am: {\n name: 'Amharic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n an: {\n name: 'Aragonese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ar: {\n name: 'Arabic',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }, {\n plural: 3,\n sample: 3\n }, {\n plural: 4,\n sample: 11\n }, {\n plural: 5,\n sample: 100\n }],\n nplurals: 6,\n pluralsText: 'nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n }\n },\n arn: {\n name: 'Mapudungun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ast: {\n name: 'Asturian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ay: {\n name: 'Aymará',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n az: {\n name: 'Azerbaijani',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n be: {\n name: 'Belarusian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n bg: {\n name: 'Bulgarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bn: {\n name: 'Bengali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bo: {\n name: 'Tibetan',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n br: {\n name: 'Breton',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n brx: {\n name: 'Bodo',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bs: {\n name: 'Bosnian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ca: {\n name: 'Catalan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n cgg: {\n name: 'Chiga',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n cs: {\n name: 'Czech',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n csb: {\n name: 'Kashubian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n cy: {\n name: 'Welsh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 8\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3);\n }\n },\n da: {\n name: 'Danish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n de: {\n name: 'German',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n doi: {\n name: 'Dogri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n dz: {\n name: 'Dzongkha',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n el: {\n name: 'Greek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n en: {\n name: 'English',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eo: {\n name: 'Esperanto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n es: {\n name: 'Spanish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n et: {\n name: 'Estonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eu: {\n name: 'Basque',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fa: {\n name: 'Persian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ff: {\n name: 'Fulah',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fi: {\n name: 'Finnish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fil: {\n name: 'Filipino',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fo: {\n name: 'Faroese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fr: {\n name: 'French',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fur: {\n name: 'Friulian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fy: {\n name: 'Frisian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ga: {\n name: 'Irish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 7\n }, {\n plural: 4,\n sample: 11\n }],\n nplurals: 5,\n pluralsText: 'nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n }\n },\n gd: {\n name: 'Scottish Gaelic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)',\n pluralsFunc: function(n) {\n return ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3);\n }\n },\n gl: {\n name: 'Galician',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gu: {\n name: 'Gujarati',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gun: {\n name: 'Gun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ha: {\n name: 'Hausa',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n he: {\n name: 'Hebrew',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hi: {\n name: 'Hindi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hne: {\n name: 'Chhattisgarhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hr: {\n name: 'Croatian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n hu: {\n name: 'Hungarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hy: {\n name: 'Armenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n id: {\n name: 'Indonesian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n is: {\n name: 'Icelandic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)',\n pluralsFunc: function(n) {\n return (n % 10 !== 1 || n % 100 === 11);\n }\n },\n it: {\n name: 'Italian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ja: {\n name: 'Japanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jbo: {\n name: 'Lojban',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jv: {\n name: 'Javanese',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 0)',\n pluralsFunc: function(n) {\n return (n !== 0);\n }\n },\n ka: {\n name: 'Georgian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kk: {\n name: 'Kazakh',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n km: {\n name: 'Khmer',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kn: {\n name: 'Kannada',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ko: {\n name: 'Korean',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ku: {\n name: 'Kurdish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n kw: {\n name: 'Cornish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 4\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3);\n }\n },\n ky: {\n name: 'Kyrgyz',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lb: {\n name: 'Letzeburgesch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ln: {\n name: 'Lingala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n lo: {\n name: 'Lao',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lt: {\n name: 'Lithuanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 10\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n lv: {\n name: 'Latvian',\n examples: [{\n plural: 2,\n sample: 0\n }, {\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2);\n }\n },\n mai: {\n name: 'Maithili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mfe: {\n name: 'Mauritian Creole',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mg: {\n name: 'Malagasy',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mi: {\n name: 'Maori',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mk: {\n name: 'Macedonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)',\n pluralsFunc: function(n) {\n return (n === 1 || n % 10 === 1 ? 0 : 1);\n }\n },\n ml: {\n name: 'Malayalam',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mn: {\n name: 'Mongolian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mni: {\n name: 'Manipuri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mnk: {\n name: 'Mandinka',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : 2);\n }\n },\n mr: {\n name: 'Marathi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ms: {\n name: 'Malay',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n mt: {\n name: 'Maltese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 11\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 0 || (n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20) ? 2 : 3);\n }\n },\n my: {\n name: 'Burmese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n nah: {\n name: 'Nahuatl',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nap: {\n name: 'Neapolitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nb: {\n name: 'Norwegian Bokmal',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ne: {\n name: 'Nepali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nl: {\n name: 'Dutch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nn: {\n name: 'Norwegian Nynorsk',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n no: {\n name: 'Norwegian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nso: {\n name: 'Northern Sotho',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n oc: {\n name: 'Occitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n or: {\n name: 'Oriya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pa: {\n name: 'Punjabi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pap: {\n name: 'Papiamento',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pl: {\n name: 'Polish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n pms: {\n name: 'Piemontese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ps: {\n name: 'Pashto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pt: {\n name: 'Portuguese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n rm: {\n name: 'Romansh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ro: {\n name: 'Romanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 20\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2);\n }\n },\n ru: {\n name: 'Russian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n rw: {\n name: 'Kinyarwanda',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sah: {\n name: 'Yakut',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sat: {\n name: 'Santali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sco: {\n name: 'Scots',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sd: {\n name: 'Sindhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n se: {\n name: 'Northern Sami',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n si: {\n name: 'Sinhala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sk: {\n name: 'Slovak',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n sl: {\n name: 'Slovenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 5\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3);\n }\n },\n so: {\n name: 'Somali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n son: {\n name: 'Songhay',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sq: {\n name: 'Albanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sr: {\n name: 'Serbian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n su: {\n name: 'Sundanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sv: {\n name: 'Swedish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sw: {\n name: 'Swahili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ta: {\n name: 'Tamil',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n te: {\n name: 'Telugu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tg: {\n name: 'Tajik',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n th: {\n name: 'Thai',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ti: {\n name: 'Tigrinya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tk: {\n name: 'Turkmen',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tr: {\n name: 'Turkish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tt: {\n name: 'Tatar',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ug: {\n name: 'Uyghur',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n uk: {\n name: 'Ukrainian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ur: {\n name: 'Urdu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n uz: {\n name: 'Uzbek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n vi: {\n name: 'Vietnamese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n wa: {\n name: 'Walloon',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n wo: {\n name: 'Wolof',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n yo: {\n name: 'Yoruba',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n zh: {\n name: 'Chinese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n }\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.github.io/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.github.io/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar defineProperties = require('../internals/object-define-properties');\nvar redefine = require('../internals/redefine');\nvar anInstance = require('../internals/an-instance');\nvar has = require('../internals/has');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar URLSearchParamsModule = require('../modules/web.url-search-params');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar NativeURL = global.URL;\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar floor = Math.floor;\nvar pow = Math.pow;\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[A-Za-z]/;\nvar ALPHANUMERIC = /[\\d+-.A-Za-z]/;\nvar DIGIT = /\\d/;\nvar HEX_START = /^(0x|0X)/;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\dA-Fa-f]+$/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT = /[\\u0000\\u0009\\u000A\\u000D #%/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\u0000\\u0009\\u000A\\u000D #/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u001F ]+|[\\u0000-\\u001F ]+$/g;\n// eslint-disable-next-line no-control-regex\nvar TAB_AND_NEW_LINE = /[\\u0009\\u000A\\u000D]/g;\nvar EOF;\n\nvar parseHost = function (url, input) {\n var result, codePoints, index;\n if (input.charAt(0) == '[') {\n if (input.charAt(input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(input.slice(1, -1));\n if (!result) return INVALID_HOST;\n url.host = result;\n // opaque host\n } else if (!isSpecial(url)) {\n if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n url.host = result;\n } else {\n input = toASCII(input);\n if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n url.host = result;\n }\n};\n\nvar parseIPv4 = function (input) {\n var parts = input.split('.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.pop();\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && part.charAt(0) == '0') {\n radix = HEX_START.test(part) ? 16 : 8;\n part = part.slice(radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;\n number = parseInt(part, radix);\n }\n numbers.push(number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = numbers.pop();\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// eslint-disable-next-line max-statements\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var char = function () {\n return input.charAt(pointer);\n };\n\n if (char() == ':') {\n if (input.charAt(1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (char()) {\n if (pieceIndex == 8) return;\n if (char() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && HEX.test(char())) {\n value = value * 16 + parseInt(char(), 16);\n pointer++;\n length++;\n }\n if (char() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (char()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (char() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!DIGIT.test(char())) return;\n while (DIGIT.test(char())) {\n number = parseInt(char(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (char() == ':') {\n pointer++;\n if (!char()) return;\n } else if (char()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n result.unshift(host % 256);\n host = floor(host / 256);\n } return result.join('.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += host[index].toString(16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (char, set) {\n var code = codeAt(char, 0);\n return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);\n};\n\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\nvar isSpecial = function (url) {\n return has(specialSchemes, url.scheme);\n};\n\nvar includesCredentials = function (url) {\n return url.username != '' || url.password != '';\n};\n\nvar cannotHaveUsernamePasswordPort = function (url) {\n return !url.host || url.cannotBeABaseURL || url.scheme == 'file';\n};\n\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && ALPHA.test(string.charAt(0))\n && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));\n};\n\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (\n string.length == 2 ||\n ((third = string.charAt(2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\nvar shortenURLsPath = function (url) {\n var path = url.path;\n var pathSize = path.length;\n if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.pop();\n }\n};\n\nvar isSingleDot = function (segment) {\n return segment === '.' || segment.toLowerCase() === '%2e';\n};\n\nvar isDoubleDot = function (segment) {\n segment = segment.toLowerCase();\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\n// eslint-disable-next-line max-statements\nvar parseURL = function (url, input, stateOverride, base) {\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, char, bufferCodePoints, failure;\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = input.replace(TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n char = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (char && ALPHA.test(char)) {\n buffer += char.toLowerCase();\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {\n buffer += char.toLowerCase();\n } else if (char == ':') {\n if (stateOverride && (\n (isSpecial(url) != has(specialSchemes, buffer)) ||\n (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (isSpecial(url) && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (isSpecial(url)) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n url.path.push('');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && char == '#') {\n url.scheme = base.scheme;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (char == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (char == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (char == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '/' || (char == '\\\\' && isSpecial(url))) {\n state = RELATIVE_SLASH;\n } else if (char == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.path.pop();\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (isSpecial(url) && (char == '/' || char == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (char == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (char != '/' && char != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (char == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += char;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (char == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (isSpecial(url) && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (char == '[') seenBracket = true;\n else if (char == ']') seenBracket = false;\n buffer += char;\n } break;\n\n case PORT:\n if (DIGIT.test(char)) {\n buffer += char;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url)) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (char == '/' || char == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (char == EOF) {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '?') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n url.host = base.host;\n url.path = base.path.slice();\n shortenURLsPath(url);\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (char == '/' || char == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (char == EOF || char == '/' || char == '\\\\' || char == '?' || char == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = parseHost(url, buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += char;\n break;\n\n case PATH_START:\n if (isSpecial(url)) {\n state = PATH;\n if (char != '/' && char != '\\\\') continue;\n } else if (!stateOverride && char == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n state = PATH;\n if (char != '/') continue;\n } break;\n\n case PATH:\n if (\n char == EOF || char == '/' ||\n (char == '\\\\' && isSpecial(url)) ||\n (!stateOverride && (char == '?' || char == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n shortenURLsPath(url);\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else if (isSingleDot(buffer)) {\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = buffer.charAt(0) + ':'; // normalize windows drive letter\n }\n url.path.push(buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n url.path.shift();\n }\n }\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(char, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n if (char == \"'\" && isSpecial(url)) url.query += '%27';\n else if (char == '#') url.query += '%23';\n else url.query += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLConstructor, 'URL');\n var base = arguments.length > 1 ? arguments[1] : undefined;\n var urlString = String(url);\n var state = setInternalState(that, { type: 'URL' });\n var baseState, failure;\n if (base !== undefined) {\n if (base instanceof URLConstructor) baseState = getInternalURLState(base);\n else {\n failure = parseURL(baseState = {}, String(base));\n if (failure) throw TypeError(failure);\n }\n }\n failure = parseURL(state, urlString, null, baseState);\n if (failure) throw TypeError(failure);\n var searchParams = state.searchParams = new URLSearchParams();\n var searchParamsState = getInternalSearchParamsState(searchParams);\n searchParamsState.updateSearchParams(state.query);\n searchParamsState.updateURL = function () {\n state.query = String(searchParams) || null;\n };\n if (!DESCRIPTORS) {\n that.href = serializeURL.call(that);\n that.origin = getOrigin.call(that);\n that.protocol = getProtocol.call(that);\n that.username = getUsername.call(that);\n that.password = getPassword.call(that);\n that.host = getHost.call(that);\n that.hostname = getHostname.call(that);\n that.port = getPort.call(that);\n that.pathname = getPathname.call(that);\n that.search = getSearch.call(that);\n that.searchParams = getSearchParams.call(that);\n that.hash = getHash.call(that);\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar serializeURL = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (includesCredentials(url)) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n};\n\nvar getOrigin = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var port = url.port;\n if (scheme == 'blob') try {\n return new URL(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !isSpecial(url)) return 'null';\n return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');\n};\n\nvar getProtocol = function () {\n return getInternalURLState(this).scheme + ':';\n};\n\nvar getUsername = function () {\n return getInternalURLState(this).username;\n};\n\nvar getPassword = function () {\n return getInternalURLState(this).password;\n};\n\nvar getHost = function () {\n var url = getInternalURLState(this);\n var host = url.host;\n var port = url.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n};\n\nvar getHostname = function () {\n var host = getInternalURLState(this).host;\n return host === null ? '' : serializeHost(host);\n};\n\nvar getPort = function () {\n var port = getInternalURLState(this).port;\n return port === null ? '' : String(port);\n};\n\nvar getPathname = function () {\n var url = getInternalURLState(this);\n var path = url.path;\n return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n};\n\nvar getSearch = function () {\n var query = getInternalURLState(this).query;\n return query ? '?' + query : '';\n};\n\nvar getSearchParams = function () {\n return getInternalURLState(this).searchParams;\n};\n\nvar getHash = function () {\n var fragment = getInternalURLState(this).fragment;\n return fragment ? '#' + fragment : '';\n};\n\nvar accessorDescriptor = function (getter, setter) {\n return { get: getter, set: setter, configurable: true, enumerable: true };\n};\n\nif (DESCRIPTORS) {\n defineProperties(URLPrototype, {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n href: accessorDescriptor(serializeURL, function (href) {\n var url = getInternalURLState(this);\n var urlString = String(href);\n var failure = parseURL(url, urlString);\n if (failure) throw TypeError(failure);\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n origin: accessorDescriptor(getOrigin),\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n protocol: accessorDescriptor(getProtocol, function (protocol) {\n var url = getInternalURLState(this);\n parseURL(url, String(protocol) + ':', SCHEME_START);\n }),\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n username: accessorDescriptor(getUsername, function (username) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(username));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n password: accessorDescriptor(getPassword, function (password) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(password));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n host: accessorDescriptor(getHost, function (host) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(host), HOST);\n }),\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n hostname: accessorDescriptor(getHostname, function (hostname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(hostname), HOSTNAME);\n }),\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n port: accessorDescriptor(getPort, function (port) {\n var url = getInternalURLState(this);\n if (cannotHaveUsernamePasswordPort(url)) return;\n port = String(port);\n if (port == '') url.port = null;\n else parseURL(url, port, PORT);\n }),\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n pathname: accessorDescriptor(getPathname, function (pathname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n url.path = [];\n parseURL(url, pathname + '', PATH_START);\n }),\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n search: accessorDescriptor(getSearch, function (search) {\n var url = getInternalURLState(this);\n search = String(search);\n if (search == '') {\n url.query = null;\n } else {\n if ('?' == search.charAt(0)) search = search.slice(1);\n url.query = '';\n parseURL(url, search, QUERY);\n }\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n searchParams: accessorDescriptor(getSearchParams),\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n hash: accessorDescriptor(getHash, function (hash) {\n var url = getInternalURLState(this);\n hash = String(hash);\n if (hash == '') {\n url.fragment = null;\n return;\n }\n if ('#' == hash.charAt(0)) hash = hash.slice(1);\n url.fragment = '';\n parseURL(url, hash, FRAGMENT);\n })\n });\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\nredefine(URLPrototype, 'toJSON', function toJSON() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\nredefine(URLPrototype, 'toString', function toString() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {\n return nativeCreateObjectURL.apply(NativeURL, arguments);\n });\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {\n return nativeRevokeObjectURL.apply(NativeURL, arguments);\n });\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\nvar floor = Math.floor;\nvar stringFromCharCode = String.fromCharCode;\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n for (; delta > baseMinusTMin * tMax >> 1; k += base) {\n delta = floor(delta / baseMinusTMin);\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\n// eslint-disable-next-line max-statements\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n output.push(stringFromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n output.push(delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's <n,i> state to <m,0>, but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n for (var k = base; /* no condition */; k += base) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n }\n\n output.push(stringFromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n ++handledCPCount;\n }\n }\n\n ++delta;\n ++n;\n }\n return output.join('');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = input.toLowerCase().replace(regexSeparators, '\\u002E').split('.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);\n }\n return encoded.join('.');\n};\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $fetch = getBuiltIn('fetch');\nvar Headers = getBuiltIn('Headers');\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = it.replace(plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = result.replace(percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replace[match];\n};\n\nvar serialize = function (it) {\n return encodeURIComponent(it).replace(find, replacer);\n};\n\nvar parseSearchParams = function (result, query) {\n if (query) {\n var attributes = query.split('&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = attribute.split('=');\n result.push({\n key: deserialize(entry.shift()),\n value: deserialize(entry.join('='))\n });\n }\n }\n }\n};\n\nvar updateSearchParams = function (query) {\n this.entries.length = 0;\n parseSearchParams(this.entries, query);\n};\n\nvar validateArgumentsLength = function (passed, required) {\n if (passed < required) throw TypeError('Not enough arguments');\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n});\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n var that = this;\n var entries = [];\n var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;\n\n setInternalState(that, {\n type: URL_SEARCH_PARAMS,\n entries: entries,\n updateURL: function () { /* empty */ },\n updateSearchParams: updateSearchParams\n });\n\n if (init !== undefined) {\n if (isObject(init)) {\n iteratorMethod = getIteratorMethod(init);\n if (typeof iteratorMethod === 'function') {\n iterator = iteratorMethod.call(init);\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = entryNext.call(entryIterator)).done ||\n (second = entryNext.call(entryIterator)).done ||\n !entryNext.call(entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n entries.push({ key: first.value + '', value: second.value + '' });\n }\n } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });\n } else {\n parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');\n }\n }\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\nredefineAll(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.appent` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n state.entries.push({ key: name + '', value: value + '' });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) entries.splice(index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) result.push(entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = name + '';\n var val = value + '';\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) entries.splice(index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) entries.push({ key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n var entries = state.entries;\n // Array#sort is not stable in some engines\n var slice = entries.slice();\n var entry, entriesIndex, sliceIndex;\n entries.length = 0;\n for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {\n entry = slice[sliceIndex];\n for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {\n if (entries[entriesIndex].key > entry.key) {\n entries.splice(entriesIndex, 0, entry);\n break;\n }\n }\n if (entriesIndex === sliceIndex) entries.push(entry);\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\nredefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\nredefine(URLSearchParamsPrototype, 'toString', function toString() {\n var entries = getInternalParamsState(this).entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n result.push(serialize(entry.key) + '=' + serialize(entry.value));\n } return result.join('&');\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` for correct work with polyfilled `URLSearchParams`\n// https://github.com/zloirock/core-js/issues/674\nif (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {\n $({ global: true, enumerable: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n var args = [input];\n var init, body, headers;\n if (arguments.length > 1) {\n init = arguments[1];\n if (isObject(init)) {\n body = init.body;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headers.has('content-type')) {\n headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n init = create(init, {\n body: createPropertyDescriptor(0, String(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n }\n args.push(init);\n } return $fetch.apply(this, args);\n }\n });\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","var anObject = require('../internals/an-object');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nmodule.exports = function (it) {\n var iteratorMethod = getIteratorMethod(it);\n if (typeof iteratorMethod != 'function') {\n throw TypeError(String(it) + ' is not iterable');\n } return anObject(iteratorMethod.call(it));\n};\n","// `Symbol.prototype.description` getter\n// https://tc39.github.io/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 });\n\nvar SPECIES = wellKnownSymbol('species');\nvar nativeSlice = [].slice;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === Array || Constructor === undefined) {\n return nativeSlice.call(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code\n };\n };\n return error;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"<scheme>://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","var defineWellKnownSymbol = require('../internals/define-well-known-symbol');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.github.io/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n","'use strict';\n\n(function (global) {\n\n // minimal symbol polyfill for IE11 and others\n if (typeof Symbol !== 'function') {\n var Symbol = function(name) {\n return name;\n }\n\n Symbol.nonNative = true;\n }\n\n const STATE_PLAINTEXT = Symbol('plaintext');\n const STATE_HTML = Symbol('html');\n const STATE_COMMENT = Symbol('comment');\n\n const ALLOWED_TAGS_REGEX = /<(\\w*)>/g;\n const NORMALIZE_TAG_REGEX = /<\\/?([^\\s\\/>]+)/;\n\n function striptags(html, allowable_tags, tag_replacement) {\n html = html || '';\n allowable_tags = allowable_tags || [];\n tag_replacement = tag_replacement || '';\n\n let context = init_context(allowable_tags, tag_replacement);\n\n return striptags_internal(html, context);\n }\n\n function init_striptags_stream(allowable_tags, tag_replacement) {\n allowable_tags = allowable_tags || [];\n tag_replacement = tag_replacement || '';\n\n let context = init_context(allowable_tags, tag_replacement);\n\n return function striptags_stream(html) {\n return striptags_internal(html || '', context);\n };\n }\n\n striptags.init_streaming_mode = init_striptags_stream;\n\n function init_context(allowable_tags, tag_replacement) {\n allowable_tags = parse_allowable_tags(allowable_tags);\n\n return {\n allowable_tags : allowable_tags,\n tag_replacement: tag_replacement,\n\n state : STATE_PLAINTEXT,\n tag_buffer : '',\n depth : 0,\n in_quote_char : ''\n };\n }\n\n function striptags_internal(html, context) {\n let allowable_tags = context.allowable_tags;\n let tag_replacement = context.tag_replacement;\n\n let state = context.state;\n let tag_buffer = context.tag_buffer;\n let depth = context.depth;\n let in_quote_char = context.in_quote_char;\n let output = '';\n\n for (let idx = 0, length = html.length; idx < length; idx++) {\n let char = html[idx];\n\n if (state === STATE_PLAINTEXT) {\n switch (char) {\n case '<':\n state = STATE_HTML;\n tag_buffer += char;\n break;\n\n default:\n output += char;\n break;\n }\n }\n\n else if (state === STATE_HTML) {\n switch (char) {\n case '<':\n // ignore '<' if inside a quote\n if (in_quote_char) {\n break;\n }\n\n // we're seeing a nested '<'\n depth++;\n break;\n\n case '>':\n // ignore '>' if inside a quote\n if (in_quote_char) {\n break;\n }\n\n // something like this is happening: '<<>>'\n if (depth) {\n depth--;\n\n break;\n }\n\n // this is closing the tag in tag_buffer\n in_quote_char = '';\n state = STATE_PLAINTEXT;\n tag_buffer += '>';\n\n if (allowable_tags.has(normalize_tag(tag_buffer))) {\n output += tag_buffer;\n } else {\n output += tag_replacement;\n }\n\n tag_buffer = '';\n break;\n\n case '\"':\n case '\\'':\n // catch both single and double quotes\n\n if (char === in_quote_char) {\n in_quote_char = '';\n } else {\n in_quote_char = in_quote_char || char;\n }\n\n tag_buffer += char;\n break;\n\n case '-':\n if (tag_buffer === '<!-') {\n state = STATE_COMMENT;\n }\n\n tag_buffer += char;\n break;\n\n case ' ':\n case '\\n':\n if (tag_buffer === '<') {\n state = STATE_PLAINTEXT;\n output += '< ';\n tag_buffer = '';\n\n break;\n }\n\n tag_buffer += char;\n break;\n\n default:\n tag_buffer += char;\n break;\n }\n }\n\n else if (state === STATE_COMMENT) {\n switch (char) {\n case '>':\n if (tag_buffer.slice(-2) == '--') {\n // close the comment\n state = STATE_PLAINTEXT;\n }\n\n tag_buffer = '';\n break;\n\n default:\n tag_buffer += char;\n break;\n }\n }\n }\n\n // save the context for future iterations\n context.state = state;\n context.tag_buffer = tag_buffer;\n context.depth = depth;\n context.in_quote_char = in_quote_char;\n\n return output;\n }\n\n function parse_allowable_tags(allowable_tags) {\n let tag_set = new Set();\n\n if (typeof allowable_tags === 'string') {\n let match;\n\n while ((match = ALLOWED_TAGS_REGEX.exec(allowable_tags))) {\n tag_set.add(match[1]);\n }\n }\n\n else if (!Symbol.nonNative &&\n typeof allowable_tags[Symbol.iterator] === 'function') {\n\n tag_set = new Set(allowable_tags);\n }\n\n else if (typeof allowable_tags.forEach === 'function') {\n // IE11 compatible\n allowable_tags.forEach(tag_set.add, tag_set);\n }\n\n return tag_set;\n }\n\n function normalize_tag(tag_buffer) {\n let match = NORMALIZE_TAG_REGEX.exec(tag_buffer);\n\n return match ? match[1].toLowerCase() : null;\n }\n\n if (typeof define === 'function' && define.amd) {\n // AMD\n define(function module_factory() { return striptags; });\n }\n\n else if (typeof module === 'object' && module.exports) {\n // Node\n module.exports = striptags;\n }\n\n else {\n // Browser\n global.striptags = striptags;\n }\n}(this));\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\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","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar classof = require('../internals/classof-raw');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar PromiseConstructor = NativePromise;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar IS_NODE = classof(process) == 'process';\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (V8_VERSION === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE && typeof PromiseRejectionEvent != 'function') return true;\n }\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (promise, state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(promise, state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (handler = global['on' + name]) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (promise, state) {\n task.call(global, function () {\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (promise, state) {\n task.call(global, function () {\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, promise, state, unwrap) {\n return function (value) {\n fn(promise, state, value, unwrap);\n };\n};\n\nvar internalReject = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(promise, state, true);\n};\n\nvar internalResolve = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, promise, wrapper, state),\n bind(internalReject, promise, wrapper, state)\n );\n } catch (error) {\n internalReject(promise, wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(promise, state, false);\n }\n } catch (error) {\n internalReject(promise, { done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, this, state), bind(internalReject, this, state));\n } catch (error) {\n internalReject(this, state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(this, state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, promise, state);\n this.reject = bind(internalReject, promise, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function') {\n nativeThen = NativePromise.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));\n }\n });\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar classof = require('../internals/classof-raw');\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar IS_NODE = classof(process) == 'process';\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n } else if (MutationObserver && !IS_IOS) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '"';\n break;\n case 38: // &\n escape = '&';\n break;\n case 39: // '\n escape = ''';\n break;\n case 60: // <\n escape = '<';\n break;\n case 62: // >\n escape = '>';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCapabilities = getCapabilities;\n\nvar _initialState = require(\"@nextcloud/initial-state\");\n\nfunction getCapabilities() {\n try {\n return (0, _initialState.loadState)('core', 'capabilities');\n } catch (error) {\n console.debug('Could not find capabilities initial state fall back to _oc_capabilities');\n\n if (!('_oc_capabilities' in window)) {\n return {};\n }\n\n return window['_oc_capabilities'];\n }\n}\n//# sourceMappingURL=index.js.map","(function(){\r\n var crypt = require('crypt'),\r\n utf8 = require('charenc').utf8,\r\n isBuffer = require('is-buffer'),\r\n bin = require('charenc').bin,\r\n\r\n // The core\r\n md5 = function (message, options) {\r\n // Convert to byte array\r\n if (message.constructor == String)\r\n if (options && options.encoding === 'binary')\r\n message = bin.stringToBytes(message);\r\n else\r\n message = utf8.stringToBytes(message);\r\n else if (isBuffer(message))\r\n message = Array.prototype.slice.call(message, 0);\r\n else if (!Array.isArray(message) && message.constructor !== Uint8Array)\r\n message = message.toString();\r\n // else, assume byte array already\r\n\r\n var m = crypt.bytesToWords(message),\r\n l = message.length * 8,\r\n a = 1732584193,\r\n b = -271733879,\r\n c = -1732584194,\r\n d = 271733878;\r\n\r\n // Swap endian\r\n for (var i = 0; i < m.length; i++) {\r\n m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF |\r\n ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00;\r\n }\r\n\r\n // Padding\r\n m[l >>> 5] |= 0x80 << (l % 32);\r\n m[(((l + 64) >>> 9) << 4) + 14] = l;\r\n\r\n // Method shortcuts\r\n var FF = md5._ff,\r\n GG = md5._gg,\r\n HH = md5._hh,\r\n II = md5._ii;\r\n\r\n for (var i = 0; i < m.length; i += 16) {\r\n\r\n var aa = a,\r\n bb = b,\r\n cc = c,\r\n dd = d;\r\n\r\n a = FF(a, b, c, d, m[i+ 0], 7, -680876936);\r\n d = FF(d, a, b, c, m[i+ 1], 12, -389564586);\r\n c = FF(c, d, a, b, m[i+ 2], 17, 606105819);\r\n b = FF(b, c, d, a, m[i+ 3], 22, -1044525330);\r\n a = FF(a, b, c, d, m[i+ 4], 7, -176418897);\r\n d = FF(d, a, b, c, m[i+ 5], 12, 1200080426);\r\n c = FF(c, d, a, b, m[i+ 6], 17, -1473231341);\r\n b = FF(b, c, d, a, m[i+ 7], 22, -45705983);\r\n a = FF(a, b, c, d, m[i+ 8], 7, 1770035416);\r\n d = FF(d, a, b, c, m[i+ 9], 12, -1958414417);\r\n c = FF(c, d, a, b, m[i+10], 17, -42063);\r\n b = FF(b, c, d, a, m[i+11], 22, -1990404162);\r\n a = FF(a, b, c, d, m[i+12], 7, 1804603682);\r\n d = FF(d, a, b, c, m[i+13], 12, -40341101);\r\n c = FF(c, d, a, b, m[i+14], 17, -1502002290);\r\n b = FF(b, c, d, a, m[i+15], 22, 1236535329);\r\n\r\n a = GG(a, b, c, d, m[i+ 1], 5, -165796510);\r\n d = GG(d, a, b, c, m[i+ 6], 9, -1069501632);\r\n c = GG(c, d, a, b, m[i+11], 14, 643717713);\r\n b = GG(b, c, d, a, m[i+ 0], 20, -373897302);\r\n a = GG(a, b, c, d, m[i+ 5], 5, -701558691);\r\n d = GG(d, a, b, c, m[i+10], 9, 38016083);\r\n c = GG(c, d, a, b, m[i+15], 14, -660478335);\r\n b = GG(b, c, d, a, m[i+ 4], 20, -405537848);\r\n a = GG(a, b, c, d, m[i+ 9], 5, 568446438);\r\n d = GG(d, a, b, c, m[i+14], 9, -1019803690);\r\n c = GG(c, d, a, b, m[i+ 3], 14, -187363961);\r\n b = GG(b, c, d, a, m[i+ 8], 20, 1163531501);\r\n a = GG(a, b, c, d, m[i+13], 5, -1444681467);\r\n d = GG(d, a, b, c, m[i+ 2], 9, -51403784);\r\n c = GG(c, d, a, b, m[i+ 7], 14, 1735328473);\r\n b = GG(b, c, d, a, m[i+12], 20, -1926607734);\r\n\r\n a = HH(a, b, c, d, m[i+ 5], 4, -378558);\r\n d = HH(d, a, b, c, m[i+ 8], 11, -2022574463);\r\n c = HH(c, d, a, b, m[i+11], 16, 1839030562);\r\n b = HH(b, c, d, a, m[i+14], 23, -35309556);\r\n a = HH(a, b, c, d, m[i+ 1], 4, -1530992060);\r\n d = HH(d, a, b, c, m[i+ 4], 11, 1272893353);\r\n c = HH(c, d, a, b, m[i+ 7], 16, -155497632);\r\n b = HH(b, c, d, a, m[i+10], 23, -1094730640);\r\n a = HH(a, b, c, d, m[i+13], 4, 681279174);\r\n d = HH(d, a, b, c, m[i+ 0], 11, -358537222);\r\n c = HH(c, d, a, b, m[i+ 3], 16, -722521979);\r\n b = HH(b, c, d, a, m[i+ 6], 23, 76029189);\r\n a = HH(a, b, c, d, m[i+ 9], 4, -640364487);\r\n d = HH(d, a, b, c, m[i+12], 11, -421815835);\r\n c = HH(c, d, a, b, m[i+15], 16, 530742520);\r\n b = HH(b, c, d, a, m[i+ 2], 23, -995338651);\r\n\r\n a = II(a, b, c, d, m[i+ 0], 6, -198630844);\r\n d = II(d, a, b, c, m[i+ 7], 10, 1126891415);\r\n c = II(c, d, a, b, m[i+14], 15, -1416354905);\r\n b = II(b, c, d, a, m[i+ 5], 21, -57434055);\r\n a = II(a, b, c, d, m[i+12], 6, 1700485571);\r\n d = II(d, a, b, c, m[i+ 3], 10, -1894986606);\r\n c = II(c, d, a, b, m[i+10], 15, -1051523);\r\n b = II(b, c, d, a, m[i+ 1], 21, -2054922799);\r\n a = II(a, b, c, d, m[i+ 8], 6, 1873313359);\r\n d = II(d, a, b, c, m[i+15], 10, -30611744);\r\n c = II(c, d, a, b, m[i+ 6], 15, -1560198380);\r\n b = II(b, c, d, a, m[i+13], 21, 1309151649);\r\n a = II(a, b, c, d, m[i+ 4], 6, -145523070);\r\n d = II(d, a, b, c, m[i+11], 10, -1120210379);\r\n c = II(c, d, a, b, m[i+ 2], 15, 718787259);\r\n b = II(b, c, d, a, m[i+ 9], 21, -343485551);\r\n\r\n a = (a + aa) >>> 0;\r\n b = (b + bb) >>> 0;\r\n c = (c + cc) >>> 0;\r\n d = (d + dd) >>> 0;\r\n }\r\n\r\n return crypt.endian([a, b, c, d]);\r\n };\r\n\r\n // Auxiliary functions\r\n md5._ff = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & c | ~b & d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._gg = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & d | c & ~d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._hh = function (a, b, c, d, x, s, t) {\r\n var n = a + (b ^ c ^ d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._ii = function (a, b, c, d, x, s, t) {\r\n var n = a + (c ^ (b | ~d)) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n\r\n // Package private blocksize\r\n md5._blocksize = 16;\r\n md5._digestsize = 16;\r\n\r\n module.exports = function (message, options) {\r\n if (message === undefined || message === null)\r\n throw new Error('Illegal argument ' + message);\r\n\r\n var digestbytes = crypt.wordsToBytes(md5(message, options));\r\n return options && options.asBytes ? digestbytes :\r\n options && options.asString ? bin.bytesToString(digestbytes) :\r\n crypt.bytesToHex(digestbytes);\r\n };\r\n\r\n})();\r\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar toObject = require('../internals/to-object');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('splice', { ACCESSORS: true, 0: 0, 1: 2 });\n\nvar max = Math.max;\nvar min = Math.min;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';\n\n// `Array.prototype.splice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);\n }\n if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {\n throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);\n }\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar flattenIntoArray = require('../internals/flatten-into-array');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.flat` method\n// https://github.com/tc39/proposal-flatMap\n$({ target: 'Array', proto: true }, {\n flat: function flat(/* depthArg = 1 */) {\n var depthArg = arguments.length ? arguments[0] : undefined;\n var O = toObject(this);\n var sourceLen = toLength(O.length);\n var A = arraySpeciesCreate(O, 0);\n A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg));\n return A;\n }\n});\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\n\n// `FlattenIntoArray` abstract operation\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? bind(mapper, thisArg, 3) : false;\n var element;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n if (depth > 0 && isArray(element)) {\n targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;\n } else {\n if (targetIndex >= 0x1FFFFFFFFFFFFF) throw TypeError('Exceed the acceptable array length');\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n};\n\nmodule.exports = flattenIntoArray;\n","// this method was added to unscopables after implementation\n// in popular engines, so it's moved to a separate module\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\naddToUnscopables('flat');\n","var DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar isRegExp = require('../internals/is-regexp');\nvar getFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar setInternalState = require('../internals/internal-state').set;\nvar setSpecies = require('../internals/set-species');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\nvar NativeRegExp = global.RegExp;\nvar RegExpPrototype = NativeRegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n\n// \"new\" should create a new object, old webkit bug\nvar CORRECT_NEW = new NativeRegExp(re1) !== re1;\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\n\nvar FORCED = DESCRIPTORS && isForced('RegExp', (!CORRECT_NEW || UNSUPPORTED_Y || fails(function () {\n re2[MATCH] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';\n})));\n\n// `RegExp` constructor\n// https://tc39.github.io/ecma262/#sec-regexp-constructor\nif (FORCED) {\n var RegExpWrapper = function RegExp(pattern, flags) {\n var thisIsRegExp = this instanceof RegExpWrapper;\n var patternIsRegExp = isRegExp(pattern);\n var flagsAreUndefined = flags === undefined;\n var sticky;\n\n if (!thisIsRegExp && patternIsRegExp && pattern.constructor === RegExpWrapper && flagsAreUndefined) {\n return pattern;\n }\n\n if (CORRECT_NEW) {\n if (patternIsRegExp && !flagsAreUndefined) pattern = pattern.source;\n } else if (pattern instanceof RegExpWrapper) {\n if (flagsAreUndefined) flags = getFlags.call(pattern);\n pattern = pattern.source;\n }\n\n if (UNSUPPORTED_Y) {\n sticky = !!flags && flags.indexOf('y') > -1;\n if (sticky) flags = flags.replace(/y/g, '');\n }\n\n var result = inheritIfRequired(\n CORRECT_NEW ? new NativeRegExp(pattern, flags) : NativeRegExp(pattern, flags),\n thisIsRegExp ? this : RegExpPrototype,\n RegExpWrapper\n );\n\n if (UNSUPPORTED_Y && sticky) setInternalState(result, { sticky: sticky });\n\n return result;\n };\n var proxy = function (key) {\n key in RegExpWrapper || defineProperty(RegExpWrapper, key, {\n configurable: true,\n get: function () { return NativeRegExp[key]; },\n set: function (it) { NativeRegExp[key] = it; }\n });\n };\n var keys = getOwnPropertyNames(NativeRegExp);\n var index = 0;\n while (keys.length > index) proxy(keys[index++]);\n RegExpPrototype.constructor = RegExpWrapper;\n RegExpWrapper.prototype = RegExpPrototype;\n redefine(global, 'RegExp', RegExpWrapper);\n}\n\n// https://tc39.github.io/ecma262/#sec-get-regexp-@@species\nsetSpecies('RegExp');\n","\"use strict\";\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.map\");\n\nrequire(\"core-js/modules/es.object.keys\");\n\nrequire(\"core-js/modules/es.string.starts-with\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getBuilder = getBuilder;\nexports.clearAll = clearAll;\nexports.clearNonPersistent = clearNonPersistent;\n\nvar _storagebuilder = _interopRequireDefault(require(\"./storagebuilder\"));\n\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getBuilder(appId) {\n return new _storagebuilder.default(appId);\n}\n\nfunction clearStorage(storage, pred) {\n Object.keys(storage).filter(function (k) {\n return pred ? pred(k) : true;\n }).map(storage.removeItem.bind(storage));\n}\n\nfunction clearAll() {\n var storages = [window.sessionStorage, window.localStorage];\n storages.map(function (s) {\n return clearStorage(s);\n });\n}\n\nfunction clearNonPersistent() {\n var storages = [window.sessionStorage, window.localStorage];\n storages.map(function (s) {\n return clearStorage(s, function (k) {\n return !k.startsWith(_scopedstorage.default.GLOBAL_SCOPE_PERSISTENT);\n });\n });\n}\n//# sourceMappingURL=index.js.map","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","exports.f = Object.getOwnPropertySymbols;\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar StorageBuilder =\n/*#__PURE__*/\nfunction () {\n function StorageBuilder(appId) {\n _classCallCheck(this, StorageBuilder);\n\n _defineProperty(this, \"appId\", void 0);\n\n _defineProperty(this, \"persisted\", false);\n\n _defineProperty(this, \"clearedOnLogout\", false);\n\n this.appId = appId;\n }\n\n _createClass(StorageBuilder, [{\n key: \"persist\",\n value: function persist() {\n var _persist = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n this.persisted = _persist;\n return this;\n }\n }, {\n key: \"clearOnLogout\",\n value: function clearOnLogout() {\n var clear = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n this.clearedOnLogout = clear;\n return this;\n }\n }, {\n key: \"build\",\n value: function build() {\n return new _scopedstorage.default(this.appId, this.persisted ? window.localStorage : window.sessionStorage, !this.clearedOnLogout);\n }\n }]);\n\n return StorageBuilder;\n}();\n\nexports.default = StorageBuilder;\n//# sourceMappingURL=storagebuilder.js.map","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n concat: function concat(arg) { // eslint-disable-line no-unused-vars\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $reduce = require('../internals/array-reduce').left;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('reduce');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 });\n\n// `Array.prototype.reduce` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","/**\n * Returns a function, that, as long as it continues to be invoked, will not\n * be triggered. The function will be called after it stops being called for\n * N milliseconds. If `immediate` is passed, trigger the function on the\n * leading edge, instead of the trailing. The function also has a property 'clear' \n * that is a function which will clear the timer to prevent previously scheduled executions. \n *\n * @source underscore.js\n * @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/\n * @param {Function} function to wrap\n * @param {Number} timeout in ms (`100`)\n * @param {Boolean} whether to execute at the beginning (`false`)\n * @api public\n */\nfunction debounce(func, wait, immediate){\n var timeout, args, context, timestamp, result;\n if (null == wait) wait = 100;\n\n function later() {\n var last = Date.now() - timestamp;\n\n if (last < wait && last >= 0) {\n timeout = setTimeout(later, wait - last);\n } else {\n timeout = null;\n if (!immediate) {\n result = func.apply(context, args);\n context = args = null;\n }\n }\n };\n\n var debounced = function(){\n context = this;\n args = arguments;\n timestamp = Date.now();\n var callNow = immediate && !timeout;\n if (!timeout) timeout = setTimeout(later, wait);\n if (callNow) {\n result = func.apply(context, args);\n context = args = null;\n }\n\n return result;\n };\n\n debounced.clear = function() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n };\n \n debounced.flush = function() {\n if (timeout) {\n result = func.apply(context, args);\n context = args = null;\n \n clearTimeout(timeout);\n timeout = null;\n }\n };\n\n return debounced;\n};\n\n// Adds compatibility for ES modules\ndebounce.debounce = debounce;\n\nmodule.exports = debounce;\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', 1, function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : regexp[SEARCH];\n return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative(nativeSearch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","// `SameValue` abstract operation\n// https://tc39.github.io/ecma262/#sec-samevalue\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","/*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n(function(window, document, exportName, undefined) {\n 'use strict';\n\nvar VENDOR_PREFIXES = ['', 'webkit', 'Moz', 'MS', 'ms', 'o'];\nvar TEST_ELEMENT = document.createElement('div');\n\nvar TYPE_FUNCTION = 'function';\n\nvar round = Math.round;\nvar abs = Math.abs;\nvar now = Date.now;\n\n/**\n * set a timeout with a given scope\n * @param {Function} fn\n * @param {Number} timeout\n * @param {Object} context\n * @returns {number}\n */\nfunction setTimeoutContext(fn, timeout, context) {\n return setTimeout(bindFn(fn, context), timeout);\n}\n\n/**\n * if the argument is an array, we want to execute the fn on each entry\n * if it aint an array we don't want to do a thing.\n * this is used by all the methods that accept a single and array argument.\n * @param {*|Array} arg\n * @param {String} fn\n * @param {Object} [context]\n * @returns {Boolean}\n */\nfunction invokeArrayArg(arg, fn, context) {\n if (Array.isArray(arg)) {\n each(arg, context[fn], context);\n return true;\n }\n return false;\n}\n\n/**\n * walk objects and arrays\n * @param {Object} obj\n * @param {Function} iterator\n * @param {Object} context\n */\nfunction each(obj, iterator, context) {\n var i;\n\n if (!obj) {\n return;\n }\n\n if (obj.forEach) {\n obj.forEach(iterator, context);\n } else if (obj.length !== undefined) {\n i = 0;\n while (i < obj.length) {\n iterator.call(context, obj[i], i, obj);\n i++;\n }\n } else {\n for (i in obj) {\n obj.hasOwnProperty(i) && iterator.call(context, obj[i], i, obj);\n }\n }\n}\n\n/**\n * wrap a method with a deprecation warning and stack trace\n * @param {Function} method\n * @param {String} name\n * @param {String} message\n * @returns {Function} A new function wrapping the supplied method.\n */\nfunction deprecate(method, name, message) {\n var deprecationMessage = 'DEPRECATED METHOD: ' + name + '\\n' + message + ' AT \\n';\n return function() {\n var e = new Error('get-stack-trace');\n var stack = e && e.stack ? e.stack.replace(/^[^\\(]+?[\\n$]/gm, '')\n .replace(/^\\s+at\\s+/gm, '')\n .replace(/^Object.<anonymous>\\s*\\(/gm, '{anonymous}()@') : 'Unknown Stack Trace';\n\n var log = window.console && (window.console.warn || window.console.log);\n if (log) {\n log.call(window.console, deprecationMessage, stack);\n }\n return method.apply(this, arguments);\n };\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} target\n * @param {...Object} objects_to_assign\n * @returns {Object} target\n */\nvar assign;\nif (typeof Object.assign !== 'function') {\n assign = function assign(target) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert undefined or null to object');\n }\n\n var output = Object(target);\n for (var index = 1; index < arguments.length; index++) {\n var source = arguments[index];\n if (source !== undefined && source !== null) {\n for (var nextKey in source) {\n if (source.hasOwnProperty(nextKey)) {\n output[nextKey] = source[nextKey];\n }\n }\n }\n }\n return output;\n };\n} else {\n assign = Object.assign;\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} dest\n * @param {Object} src\n * @param {Boolean} [merge=false]\n * @returns {Object} dest\n */\nvar extend = deprecate(function extend(dest, src, merge) {\n var keys = Object.keys(src);\n var i = 0;\n while (i < keys.length) {\n if (!merge || (merge && dest[keys[i]] === undefined)) {\n dest[keys[i]] = src[keys[i]];\n }\n i++;\n }\n return dest;\n}, 'extend', 'Use `assign`.');\n\n/**\n * merge the values from src in the dest.\n * means that properties that exist in dest will not be overwritten by src\n * @param {Object} dest\n * @param {Object} src\n * @returns {Object} dest\n */\nvar merge = deprecate(function merge(dest, src) {\n return extend(dest, src, true);\n}, 'merge', 'Use `assign`.');\n\n/**\n * simple class inheritance\n * @param {Function} child\n * @param {Function} base\n * @param {Object} [properties]\n */\nfunction inherit(child, base, properties) {\n var baseP = base.prototype,\n childP;\n\n childP = child.prototype = Object.create(baseP);\n childP.constructor = child;\n childP._super = baseP;\n\n if (properties) {\n assign(childP, properties);\n }\n}\n\n/**\n * simple function bind\n * @param {Function} fn\n * @param {Object} context\n * @returns {Function}\n */\nfunction bindFn(fn, context) {\n return function boundFn() {\n return fn.apply(context, arguments);\n };\n}\n\n/**\n * let a boolean value also be a function that must return a boolean\n * this first item in args will be used as the context\n * @param {Boolean|Function} val\n * @param {Array} [args]\n * @returns {Boolean}\n */\nfunction boolOrFn(val, args) {\n if (typeof val == TYPE_FUNCTION) {\n return val.apply(args ? args[0] || undefined : undefined, args);\n }\n return val;\n}\n\n/**\n * use the val2 when val1 is undefined\n * @param {*} val1\n * @param {*} val2\n * @returns {*}\n */\nfunction ifUndefined(val1, val2) {\n return (val1 === undefined) ? val2 : val1;\n}\n\n/**\n * addEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction addEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.addEventListener(type, handler, false);\n });\n}\n\n/**\n * removeEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction removeEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.removeEventListener(type, handler, false);\n });\n}\n\n/**\n * find if a node is in the given parent\n * @method hasParent\n * @param {HTMLElement} node\n * @param {HTMLElement} parent\n * @return {Boolean} found\n */\nfunction hasParent(node, parent) {\n while (node) {\n if (node == parent) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n}\n\n/**\n * small indexOf wrapper\n * @param {String} str\n * @param {String} find\n * @returns {Boolean} found\n */\nfunction inStr(str, find) {\n return str.indexOf(find) > -1;\n}\n\n/**\n * split string on whitespace\n * @param {String} str\n * @returns {Array} words\n */\nfunction splitStr(str) {\n return str.trim().split(/\\s+/g);\n}\n\n/**\n * find if a array contains the object using indexOf or a simple polyFill\n * @param {Array} src\n * @param {String} find\n * @param {String} [findByKey]\n * @return {Boolean|Number} false when not found, or the index\n */\nfunction inArray(src, find, findByKey) {\n if (src.indexOf && !findByKey) {\n return src.indexOf(find);\n } else {\n var i = 0;\n while (i < src.length) {\n if ((findByKey && src[i][findByKey] == find) || (!findByKey && src[i] === find)) {\n return i;\n }\n i++;\n }\n return -1;\n }\n}\n\n/**\n * convert array-like objects to real arrays\n * @param {Object} obj\n * @returns {Array}\n */\nfunction toArray(obj) {\n return Array.prototype.slice.call(obj, 0);\n}\n\n/**\n * unique array with objects based on a key (like 'id') or just by the array's value\n * @param {Array} src [{id:1},{id:2},{id:1}]\n * @param {String} [key]\n * @param {Boolean} [sort=False]\n * @returns {Array} [{id:1},{id:2}]\n */\nfunction uniqueArray(src, key, sort) {\n var results = [];\n var values = [];\n var i = 0;\n\n while (i < src.length) {\n var val = key ? src[i][key] : src[i];\n if (inArray(values, val) < 0) {\n results.push(src[i]);\n }\n values[i] = val;\n i++;\n }\n\n if (sort) {\n if (!key) {\n results = results.sort();\n } else {\n results = results.sort(function sortUniqueArray(a, b) {\n return a[key] > b[key];\n });\n }\n }\n\n return results;\n}\n\n/**\n * get the prefixed property\n * @param {Object} obj\n * @param {String} property\n * @returns {String|Undefined} prefixed\n */\nfunction prefixed(obj, property) {\n var prefix, prop;\n var camelProp = property[0].toUpperCase() + property.slice(1);\n\n var i = 0;\n while (i < VENDOR_PREFIXES.length) {\n prefix = VENDOR_PREFIXES[i];\n prop = (prefix) ? prefix + camelProp : property;\n\n if (prop in obj) {\n return prop;\n }\n i++;\n }\n return undefined;\n}\n\n/**\n * get a unique id\n * @returns {number} uniqueId\n */\nvar _uniqueId = 1;\nfunction uniqueId() {\n return _uniqueId++;\n}\n\n/**\n * get the window object of an element\n * @param {HTMLElement} element\n * @returns {DocumentView|Window}\n */\nfunction getWindowForElement(element) {\n var doc = element.ownerDocument || element;\n return (doc.defaultView || doc.parentWindow || window);\n}\n\nvar MOBILE_REGEX = /mobile|tablet|ip(ad|hone|od)|android/i;\n\nvar SUPPORT_TOUCH = ('ontouchstart' in window);\nvar SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined;\nvar SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent);\n\nvar INPUT_TYPE_TOUCH = 'touch';\nvar INPUT_TYPE_PEN = 'pen';\nvar INPUT_TYPE_MOUSE = 'mouse';\nvar INPUT_TYPE_KINECT = 'kinect';\n\nvar COMPUTE_INTERVAL = 25;\n\nvar INPUT_START = 1;\nvar INPUT_MOVE = 2;\nvar INPUT_END = 4;\nvar INPUT_CANCEL = 8;\n\nvar DIRECTION_NONE = 1;\nvar DIRECTION_LEFT = 2;\nvar DIRECTION_RIGHT = 4;\nvar DIRECTION_UP = 8;\nvar DIRECTION_DOWN = 16;\n\nvar DIRECTION_HORIZONTAL = DIRECTION_LEFT | DIRECTION_RIGHT;\nvar DIRECTION_VERTICAL = DIRECTION_UP | DIRECTION_DOWN;\nvar DIRECTION_ALL = DIRECTION_HORIZONTAL | DIRECTION_VERTICAL;\n\nvar PROPS_XY = ['x', 'y'];\nvar PROPS_CLIENT_XY = ['clientX', 'clientY'];\n\n/**\n * create new input type manager\n * @param {Manager} manager\n * @param {Function} callback\n * @returns {Input}\n * @constructor\n */\nfunction Input(manager, callback) {\n var self = this;\n this.manager = manager;\n this.callback = callback;\n this.element = manager.element;\n this.target = manager.options.inputTarget;\n\n // smaller wrapper around the handler, for the scope and the enabled state of the manager,\n // so when disabled the input events are completely bypassed.\n this.domHandler = function(ev) {\n if (boolOrFn(manager.options.enable, [manager])) {\n self.handler(ev);\n }\n };\n\n this.init();\n\n}\n\nInput.prototype = {\n /**\n * should handle the inputEvent data and trigger the callback\n * @virtual\n */\n handler: function() { },\n\n /**\n * bind the events\n */\n init: function() {\n this.evEl && addEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && addEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && addEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n },\n\n /**\n * unbind the events\n */\n destroy: function() {\n this.evEl && removeEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && removeEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && removeEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n }\n};\n\n/**\n * create new input type manager\n * called by the Manager constructor\n * @param {Hammer} manager\n * @returns {Input}\n */\nfunction createInputInstance(manager) {\n var Type;\n var inputClass = manager.options.inputClass;\n\n if (inputClass) {\n Type = inputClass;\n } else if (SUPPORT_POINTER_EVENTS) {\n Type = PointerEventInput;\n } else if (SUPPORT_ONLY_TOUCH) {\n Type = TouchInput;\n } else if (!SUPPORT_TOUCH) {\n Type = MouseInput;\n } else {\n Type = TouchMouseInput;\n }\n return new (Type)(manager, inputHandler);\n}\n\n/**\n * handle input events\n * @param {Manager} manager\n * @param {String} eventType\n * @param {Object} input\n */\nfunction inputHandler(manager, eventType, input) {\n var pointersLen = input.pointers.length;\n var changedPointersLen = input.changedPointers.length;\n var isFirst = (eventType & INPUT_START && (pointersLen - changedPointersLen === 0));\n var isFinal = (eventType & (INPUT_END | INPUT_CANCEL) && (pointersLen - changedPointersLen === 0));\n\n input.isFirst = !!isFirst;\n input.isFinal = !!isFinal;\n\n if (isFirst) {\n manager.session = {};\n }\n\n // source event is the normalized value of the domEvents\n // like 'touchstart, mouseup, pointerdown'\n input.eventType = eventType;\n\n // compute scale, rotation etc\n computeInputData(manager, input);\n\n // emit secret event\n manager.emit('hammer.input', input);\n\n manager.recognize(input);\n manager.session.prevInput = input;\n}\n\n/**\n * extend the data with some usable properties like scale, rotate, velocity etc\n * @param {Object} manager\n * @param {Object} input\n */\nfunction computeInputData(manager, input) {\n var session = manager.session;\n var pointers = input.pointers;\n var pointersLength = pointers.length;\n\n // store the first input to calculate the distance and direction\n if (!session.firstInput) {\n session.firstInput = simpleCloneInputData(input);\n }\n\n // to compute scale and rotation we need to store the multiple touches\n if (pointersLength > 1 && !session.firstMultiple) {\n session.firstMultiple = simpleCloneInputData(input);\n } else if (pointersLength === 1) {\n session.firstMultiple = false;\n }\n\n var firstInput = session.firstInput;\n var firstMultiple = session.firstMultiple;\n var offsetCenter = firstMultiple ? firstMultiple.center : firstInput.center;\n\n var center = input.center = getCenter(pointers);\n input.timeStamp = now();\n input.deltaTime = input.timeStamp - firstInput.timeStamp;\n\n input.angle = getAngle(offsetCenter, center);\n input.distance = getDistance(offsetCenter, center);\n\n computeDeltaXY(session, input);\n input.offsetDirection = getDirection(input.deltaX, input.deltaY);\n\n var overallVelocity = getVelocity(input.deltaTime, input.deltaX, input.deltaY);\n input.overallVelocityX = overallVelocity.x;\n input.overallVelocityY = overallVelocity.y;\n input.overallVelocity = (abs(overallVelocity.x) > abs(overallVelocity.y)) ? overallVelocity.x : overallVelocity.y;\n\n input.scale = firstMultiple ? getScale(firstMultiple.pointers, pointers) : 1;\n input.rotation = firstMultiple ? getRotation(firstMultiple.pointers, pointers) : 0;\n\n input.maxPointers = !session.prevInput ? input.pointers.length : ((input.pointers.length >\n session.prevInput.maxPointers) ? input.pointers.length : session.prevInput.maxPointers);\n\n computeIntervalInputData(session, input);\n\n // find the correct target\n var target = manager.element;\n if (hasParent(input.srcEvent.target, target)) {\n target = input.srcEvent.target;\n }\n input.target = target;\n}\n\nfunction computeDeltaXY(session, input) {\n var center = input.center;\n var offset = session.offsetDelta || {};\n var prevDelta = session.prevDelta || {};\n var prevInput = session.prevInput || {};\n\n if (input.eventType === INPUT_START || prevInput.eventType === INPUT_END) {\n prevDelta = session.prevDelta = {\n x: prevInput.deltaX || 0,\n y: prevInput.deltaY || 0\n };\n\n offset = session.offsetDelta = {\n x: center.x,\n y: center.y\n };\n }\n\n input.deltaX = prevDelta.x + (center.x - offset.x);\n input.deltaY = prevDelta.y + (center.y - offset.y);\n}\n\n/**\n * velocity is calculated every x ms\n * @param {Object} session\n * @param {Object} input\n */\nfunction computeIntervalInputData(session, input) {\n var last = session.lastInterval || input,\n deltaTime = input.timeStamp - last.timeStamp,\n velocity, velocityX, velocityY, direction;\n\n if (input.eventType != INPUT_CANCEL && (deltaTime > COMPUTE_INTERVAL || last.velocity === undefined)) {\n var deltaX = input.deltaX - last.deltaX;\n var deltaY = input.deltaY - last.deltaY;\n\n var v = getVelocity(deltaTime, deltaX, deltaY);\n velocityX = v.x;\n velocityY = v.y;\n velocity = (abs(v.x) > abs(v.y)) ? v.x : v.y;\n direction = getDirection(deltaX, deltaY);\n\n session.lastInterval = input;\n } else {\n // use latest velocity info if it doesn't overtake a minimum period\n velocity = last.velocity;\n velocityX = last.velocityX;\n velocityY = last.velocityY;\n direction = last.direction;\n }\n\n input.velocity = velocity;\n input.velocityX = velocityX;\n input.velocityY = velocityY;\n input.direction = direction;\n}\n\n/**\n * create a simple clone from the input used for storage of firstInput and firstMultiple\n * @param {Object} input\n * @returns {Object} clonedInputData\n */\nfunction simpleCloneInputData(input) {\n // make a simple copy of the pointers because we will get a reference if we don't\n // we only need clientXY for the calculations\n var pointers = [];\n var i = 0;\n while (i < input.pointers.length) {\n pointers[i] = {\n clientX: round(input.pointers[i].clientX),\n clientY: round(input.pointers[i].clientY)\n };\n i++;\n }\n\n return {\n timeStamp: now(),\n pointers: pointers,\n center: getCenter(pointers),\n deltaX: input.deltaX,\n deltaY: input.deltaY\n };\n}\n\n/**\n * get the center of all the pointers\n * @param {Array} pointers\n * @return {Object} center contains `x` and `y` properties\n */\nfunction getCenter(pointers) {\n var pointersLength = pointers.length;\n\n // no need to loop when only one touch\n if (pointersLength === 1) {\n return {\n x: round(pointers[0].clientX),\n y: round(pointers[0].clientY)\n };\n }\n\n var x = 0, y = 0, i = 0;\n while (i < pointersLength) {\n x += pointers[i].clientX;\n y += pointers[i].clientY;\n i++;\n }\n\n return {\n x: round(x / pointersLength),\n y: round(y / pointersLength)\n };\n}\n\n/**\n * calculate the velocity between two points. unit is in px per ms.\n * @param {Number} deltaTime\n * @param {Number} x\n * @param {Number} y\n * @return {Object} velocity `x` and `y`\n */\nfunction getVelocity(deltaTime, x, y) {\n return {\n x: x / deltaTime || 0,\n y: y / deltaTime || 0\n };\n}\n\n/**\n * get the direction between two points\n * @param {Number} x\n * @param {Number} y\n * @return {Number} direction\n */\nfunction getDirection(x, y) {\n if (x === y) {\n return DIRECTION_NONE;\n }\n\n if (abs(x) >= abs(y)) {\n return x < 0 ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return y < 0 ? DIRECTION_UP : DIRECTION_DOWN;\n}\n\n/**\n * calculate the absolute distance between two points\n * @param {Object} p1 {x, y}\n * @param {Object} p2 {x, y}\n * @param {Array} [props] containing x and y keys\n * @return {Number} distance\n */\nfunction getDistance(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n\n return Math.sqrt((x * x) + (y * y));\n}\n\n/**\n * calculate the angle between two coordinates\n * @param {Object} p1\n * @param {Object} p2\n * @param {Array} [props] containing x and y keys\n * @return {Number} angle\n */\nfunction getAngle(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n return Math.atan2(y, x) * 180 / Math.PI;\n}\n\n/**\n * calculate the rotation degrees between two pointersets\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} rotation\n */\nfunction getRotation(start, end) {\n return getAngle(end[1], end[0], PROPS_CLIENT_XY) + getAngle(start[1], start[0], PROPS_CLIENT_XY);\n}\n\n/**\n * calculate the scale factor between two pointersets\n * no scale is 1, and goes down to 0 when pinched together, and bigger when pinched out\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} scale\n */\nfunction getScale(start, end) {\n return getDistance(end[0], end[1], PROPS_CLIENT_XY) / getDistance(start[0], start[1], PROPS_CLIENT_XY);\n}\n\nvar MOUSE_INPUT_MAP = {\n mousedown: INPUT_START,\n mousemove: INPUT_MOVE,\n mouseup: INPUT_END\n};\n\nvar MOUSE_ELEMENT_EVENTS = 'mousedown';\nvar MOUSE_WINDOW_EVENTS = 'mousemove mouseup';\n\n/**\n * Mouse events input\n * @constructor\n * @extends Input\n */\nfunction MouseInput() {\n this.evEl = MOUSE_ELEMENT_EVENTS;\n this.evWin = MOUSE_WINDOW_EVENTS;\n\n this.pressed = false; // mousedown state\n\n Input.apply(this, arguments);\n}\n\ninherit(MouseInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function MEhandler(ev) {\n var eventType = MOUSE_INPUT_MAP[ev.type];\n\n // on start we want to have the left mouse button down\n if (eventType & INPUT_START && ev.button === 0) {\n this.pressed = true;\n }\n\n if (eventType & INPUT_MOVE && ev.which !== 1) {\n eventType = INPUT_END;\n }\n\n // mouse must be down\n if (!this.pressed) {\n return;\n }\n\n if (eventType & INPUT_END) {\n this.pressed = false;\n }\n\n this.callback(this.manager, eventType, {\n pointers: [ev],\n changedPointers: [ev],\n pointerType: INPUT_TYPE_MOUSE,\n srcEvent: ev\n });\n }\n});\n\nvar POINTER_INPUT_MAP = {\n pointerdown: INPUT_START,\n pointermove: INPUT_MOVE,\n pointerup: INPUT_END,\n pointercancel: INPUT_CANCEL,\n pointerout: INPUT_CANCEL\n};\n\n// in IE10 the pointer types is defined as an enum\nvar IE10_POINTER_TYPE_ENUM = {\n 2: INPUT_TYPE_TOUCH,\n 3: INPUT_TYPE_PEN,\n 4: INPUT_TYPE_MOUSE,\n 5: INPUT_TYPE_KINECT // see https://twitter.com/jacobrossi/status/480596438489890816\n};\n\nvar POINTER_ELEMENT_EVENTS = 'pointerdown';\nvar POINTER_WINDOW_EVENTS = 'pointermove pointerup pointercancel';\n\n// IE10 has prefixed support, and case-sensitive\nif (window.MSPointerEvent && !window.PointerEvent) {\n POINTER_ELEMENT_EVENTS = 'MSPointerDown';\n POINTER_WINDOW_EVENTS = 'MSPointerMove MSPointerUp MSPointerCancel';\n}\n\n/**\n * Pointer events input\n * @constructor\n * @extends Input\n */\nfunction PointerEventInput() {\n this.evEl = POINTER_ELEMENT_EVENTS;\n this.evWin = POINTER_WINDOW_EVENTS;\n\n Input.apply(this, arguments);\n\n this.store = (this.manager.session.pointerEvents = []);\n}\n\ninherit(PointerEventInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function PEhandler(ev) {\n var store = this.store;\n var removePointer = false;\n\n var eventTypeNormalized = ev.type.toLowerCase().replace('ms', '');\n var eventType = POINTER_INPUT_MAP[eventTypeNormalized];\n var pointerType = IE10_POINTER_TYPE_ENUM[ev.pointerType] || ev.pointerType;\n\n var isTouch = (pointerType == INPUT_TYPE_TOUCH);\n\n // get index of the event in the store\n var storeIndex = inArray(store, ev.pointerId, 'pointerId');\n\n // start and mouse must be down\n if (eventType & INPUT_START && (ev.button === 0 || isTouch)) {\n if (storeIndex < 0) {\n store.push(ev);\n storeIndex = store.length - 1;\n }\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n removePointer = true;\n }\n\n // it not found, so the pointer hasn't been down (so it's probably a hover)\n if (storeIndex < 0) {\n return;\n }\n\n // update the event in the store\n store[storeIndex] = ev;\n\n this.callback(this.manager, eventType, {\n pointers: store,\n changedPointers: [ev],\n pointerType: pointerType,\n srcEvent: ev\n });\n\n if (removePointer) {\n // remove from the store\n store.splice(storeIndex, 1);\n }\n }\n});\n\nvar SINGLE_TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar SINGLE_TOUCH_TARGET_EVENTS = 'touchstart';\nvar SINGLE_TOUCH_WINDOW_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Touch events input\n * @constructor\n * @extends Input\n */\nfunction SingleTouchInput() {\n this.evTarget = SINGLE_TOUCH_TARGET_EVENTS;\n this.evWin = SINGLE_TOUCH_WINDOW_EVENTS;\n this.started = false;\n\n Input.apply(this, arguments);\n}\n\ninherit(SingleTouchInput, Input, {\n handler: function TEhandler(ev) {\n var type = SINGLE_TOUCH_INPUT_MAP[ev.type];\n\n // should we handle the touch events?\n if (type === INPUT_START) {\n this.started = true;\n }\n\n if (!this.started) {\n return;\n }\n\n var touches = normalizeSingleTouches.call(this, ev, type);\n\n // when done, reset the started state\n if (type & (INPUT_END | INPUT_CANCEL) && touches[0].length - touches[1].length === 0) {\n this.started = false;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction normalizeSingleTouches(ev, type) {\n var all = toArray(ev.touches);\n var changed = toArray(ev.changedTouches);\n\n if (type & (INPUT_END | INPUT_CANCEL)) {\n all = uniqueArray(all.concat(changed), 'identifier', true);\n }\n\n return [all, changed];\n}\n\nvar TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar TOUCH_TARGET_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Multi-user touch events input\n * @constructor\n * @extends Input\n */\nfunction TouchInput() {\n this.evTarget = TOUCH_TARGET_EVENTS;\n this.targetIds = {};\n\n Input.apply(this, arguments);\n}\n\ninherit(TouchInput, Input, {\n handler: function MTEhandler(ev) {\n var type = TOUCH_INPUT_MAP[ev.type];\n var touches = getTouches.call(this, ev, type);\n if (!touches) {\n return;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction getTouches(ev, type) {\n var allTouches = toArray(ev.touches);\n var targetIds = this.targetIds;\n\n // when there is only one touch, the process can be simplified\n if (type & (INPUT_START | INPUT_MOVE) && allTouches.length === 1) {\n targetIds[allTouches[0].identifier] = true;\n return [allTouches, allTouches];\n }\n\n var i,\n targetTouches,\n changedTouches = toArray(ev.changedTouches),\n changedTargetTouches = [],\n target = this.target;\n\n // get target touches from touches\n targetTouches = allTouches.filter(function(touch) {\n return hasParent(touch.target, target);\n });\n\n // collect touches\n if (type === INPUT_START) {\n i = 0;\n while (i < targetTouches.length) {\n targetIds[targetTouches[i].identifier] = true;\n i++;\n }\n }\n\n // filter changed touches to only contain touches that exist in the collected target ids\n i = 0;\n while (i < changedTouches.length) {\n if (targetIds[changedTouches[i].identifier]) {\n changedTargetTouches.push(changedTouches[i]);\n }\n\n // cleanup removed touches\n if (type & (INPUT_END | INPUT_CANCEL)) {\n delete targetIds[changedTouches[i].identifier];\n }\n i++;\n }\n\n if (!changedTargetTouches.length) {\n return;\n }\n\n return [\n // merge targetTouches with changedTargetTouches so it contains ALL touches, including 'end' and 'cancel'\n uniqueArray(targetTouches.concat(changedTargetTouches), 'identifier', true),\n changedTargetTouches\n ];\n}\n\n/**\n * Combined touch and mouse input\n *\n * Touch has a higher priority then mouse, and while touching no mouse events are allowed.\n * This because touch devices also emit mouse events while doing a touch.\n *\n * @constructor\n * @extends Input\n */\n\nvar DEDUP_TIMEOUT = 2500;\nvar DEDUP_DISTANCE = 25;\n\nfunction TouchMouseInput() {\n Input.apply(this, arguments);\n\n var handler = bindFn(this.handler, this);\n this.touch = new TouchInput(this.manager, handler);\n this.mouse = new MouseInput(this.manager, handler);\n\n this.primaryTouch = null;\n this.lastTouches = [];\n}\n\ninherit(TouchMouseInput, Input, {\n /**\n * handle mouse and touch events\n * @param {Hammer} manager\n * @param {String} inputEvent\n * @param {Object} inputData\n */\n handler: function TMEhandler(manager, inputEvent, inputData) {\n var isTouch = (inputData.pointerType == INPUT_TYPE_TOUCH),\n isMouse = (inputData.pointerType == INPUT_TYPE_MOUSE);\n\n if (isMouse && inputData.sourceCapabilities && inputData.sourceCapabilities.firesTouchEvents) {\n return;\n }\n\n // when we're in a touch event, record touches to de-dupe synthetic mouse event\n if (isTouch) {\n recordTouches.call(this, inputEvent, inputData);\n } else if (isMouse && isSyntheticEvent.call(this, inputData)) {\n return;\n }\n\n this.callback(manager, inputEvent, inputData);\n },\n\n /**\n * remove the event listeners\n */\n destroy: function destroy() {\n this.touch.destroy();\n this.mouse.destroy();\n }\n});\n\nfunction recordTouches(eventType, eventData) {\n if (eventType & INPUT_START) {\n this.primaryTouch = eventData.changedPointers[0].identifier;\n setLastTouch.call(this, eventData);\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n setLastTouch.call(this, eventData);\n }\n}\n\nfunction setLastTouch(eventData) {\n var touch = eventData.changedPointers[0];\n\n if (touch.identifier === this.primaryTouch) {\n var lastTouch = {x: touch.clientX, y: touch.clientY};\n this.lastTouches.push(lastTouch);\n var lts = this.lastTouches;\n var removeLastTouch = function() {\n var i = lts.indexOf(lastTouch);\n if (i > -1) {\n lts.splice(i, 1);\n }\n };\n setTimeout(removeLastTouch, DEDUP_TIMEOUT);\n }\n}\n\nfunction isSyntheticEvent(eventData) {\n var x = eventData.srcEvent.clientX, y = eventData.srcEvent.clientY;\n for (var i = 0; i < this.lastTouches.length; i++) {\n var t = this.lastTouches[i];\n var dx = Math.abs(x - t.x), dy = Math.abs(y - t.y);\n if (dx <= DEDUP_DISTANCE && dy <= DEDUP_DISTANCE) {\n return true;\n }\n }\n return false;\n}\n\nvar PREFIXED_TOUCH_ACTION = prefixed(TEST_ELEMENT.style, 'touchAction');\nvar NATIVE_TOUCH_ACTION = PREFIXED_TOUCH_ACTION !== undefined;\n\n// magical touchAction value\nvar TOUCH_ACTION_COMPUTE = 'compute';\nvar TOUCH_ACTION_AUTO = 'auto';\nvar TOUCH_ACTION_MANIPULATION = 'manipulation'; // not implemented\nvar TOUCH_ACTION_NONE = 'none';\nvar TOUCH_ACTION_PAN_X = 'pan-x';\nvar TOUCH_ACTION_PAN_Y = 'pan-y';\nvar TOUCH_ACTION_MAP = getTouchActionProps();\n\n/**\n * Touch Action\n * sets the touchAction property or uses the js alternative\n * @param {Manager} manager\n * @param {String} value\n * @constructor\n */\nfunction TouchAction(manager, value) {\n this.manager = manager;\n this.set(value);\n}\n\nTouchAction.prototype = {\n /**\n * set the touchAction value on the element or enable the polyfill\n * @param {String} value\n */\n set: function(value) {\n // find out the touch-action by the event handlers\n if (value == TOUCH_ACTION_COMPUTE) {\n value = this.compute();\n }\n\n if (NATIVE_TOUCH_ACTION && this.manager.element.style && TOUCH_ACTION_MAP[value]) {\n this.manager.element.style[PREFIXED_TOUCH_ACTION] = value;\n }\n this.actions = value.toLowerCase().trim();\n },\n\n /**\n * just re-set the touchAction value\n */\n update: function() {\n this.set(this.manager.options.touchAction);\n },\n\n /**\n * compute the value for the touchAction property based on the recognizer's settings\n * @returns {String} value\n */\n compute: function() {\n var actions = [];\n each(this.manager.recognizers, function(recognizer) {\n if (boolOrFn(recognizer.options.enable, [recognizer])) {\n actions = actions.concat(recognizer.getTouchAction());\n }\n });\n return cleanTouchActions(actions.join(' '));\n },\n\n /**\n * this method is called on each input cycle and provides the preventing of the browser behavior\n * @param {Object} input\n */\n preventDefaults: function(input) {\n var srcEvent = input.srcEvent;\n var direction = input.offsetDirection;\n\n // if the touch action did prevented once this session\n if (this.manager.session.prevented) {\n srcEvent.preventDefault();\n return;\n }\n\n var actions = this.actions;\n var hasNone = inStr(actions, TOUCH_ACTION_NONE) && !TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];\n\n if (hasNone) {\n //do not prevent defaults if this is a tap gesture\n\n var isTapPointer = input.pointers.length === 1;\n var isTapMovement = input.distance < 2;\n var isTapTouchTime = input.deltaTime < 250;\n\n if (isTapPointer && isTapMovement && isTapTouchTime) {\n return;\n }\n }\n\n if (hasPanX && hasPanY) {\n // `pan-x pan-y` means browser handles all scrolling/panning, do not prevent\n return;\n }\n\n if (hasNone ||\n (hasPanY && direction & DIRECTION_HORIZONTAL) ||\n (hasPanX && direction & DIRECTION_VERTICAL)) {\n return this.preventSrc(srcEvent);\n }\n },\n\n /**\n * call preventDefault to prevent the browser's default behavior (scrolling in most cases)\n * @param {Object} srcEvent\n */\n preventSrc: function(srcEvent) {\n this.manager.session.prevented = true;\n srcEvent.preventDefault();\n }\n};\n\n/**\n * when the touchActions are collected they are not a valid value, so we need to clean things up. *\n * @param {String} actions\n * @returns {*}\n */\nfunction cleanTouchActions(actions) {\n // none\n if (inStr(actions, TOUCH_ACTION_NONE)) {\n return TOUCH_ACTION_NONE;\n }\n\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X);\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y);\n\n // if both pan-x and pan-y are set (different recognizers\n // for different directions, e.g. horizontal pan but vertical swipe?)\n // we need none (as otherwise with pan-x pan-y combined none of these\n // recognizers will work, since the browser would handle all panning\n if (hasPanX && hasPanY) {\n return TOUCH_ACTION_NONE;\n }\n\n // pan-x OR pan-y\n if (hasPanX || hasPanY) {\n return hasPanX ? TOUCH_ACTION_PAN_X : TOUCH_ACTION_PAN_Y;\n }\n\n // manipulation\n if (inStr(actions, TOUCH_ACTION_MANIPULATION)) {\n return TOUCH_ACTION_MANIPULATION;\n }\n\n return TOUCH_ACTION_AUTO;\n}\n\nfunction getTouchActionProps() {\n if (!NATIVE_TOUCH_ACTION) {\n return false;\n }\n var touchMap = {};\n var cssSupports = window.CSS && window.CSS.supports;\n ['auto', 'manipulation', 'pan-y', 'pan-x', 'pan-x pan-y', 'none'].forEach(function(val) {\n\n // If css.supports is not supported but there is native touch-action assume it supports\n // all values. This is the case for IE 10 and 11.\n touchMap[val] = cssSupports ? window.CSS.supports('touch-action', val) : true;\n });\n return touchMap;\n}\n\n/**\n * Recognizer flow explained; *\n * All recognizers have the initial state of POSSIBLE when a input session starts.\n * The definition of a input session is from the first input until the last input, with all it's movement in it. *\n * Example session for mouse-input: mousedown -> mousemove -> mouseup\n *\n * On each recognizing cycle (see Manager.recognize) the .recognize() method is executed\n * which determines with state it should be.\n *\n * If the recognizer has the state FAILED, CANCELLED or RECOGNIZED (equals ENDED), it is reset to\n * POSSIBLE to give it another change on the next cycle.\n *\n * Possible\n * |\n * +-----+---------------+\n * | |\n * +-----+-----+ |\n * | | |\n * Failed Cancelled |\n * +-------+------+\n * | |\n * Recognized Began\n * |\n * Changed\n * |\n * Ended/Recognized\n */\nvar STATE_POSSIBLE = 1;\nvar STATE_BEGAN = 2;\nvar STATE_CHANGED = 4;\nvar STATE_ENDED = 8;\nvar STATE_RECOGNIZED = STATE_ENDED;\nvar STATE_CANCELLED = 16;\nvar STATE_FAILED = 32;\n\n/**\n * Recognizer\n * Every recognizer needs to extend from this class.\n * @constructor\n * @param {Object} options\n */\nfunction Recognizer(options) {\n this.options = assign({}, this.defaults, options || {});\n\n this.id = uniqueId();\n\n this.manager = null;\n\n // default is enable true\n this.options.enable = ifUndefined(this.options.enable, true);\n\n this.state = STATE_POSSIBLE;\n\n this.simultaneous = {};\n this.requireFail = [];\n}\n\nRecognizer.prototype = {\n /**\n * @virtual\n * @type {Object}\n */\n defaults: {},\n\n /**\n * set options\n * @param {Object} options\n * @return {Recognizer}\n */\n set: function(options) {\n assign(this.options, options);\n\n // also update the touchAction, in case something changed about the directions/enabled state\n this.manager && this.manager.touchAction.update();\n return this;\n },\n\n /**\n * recognize simultaneous with an other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n recognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'recognizeWith', this)) {\n return this;\n }\n\n var simultaneous = this.simultaneous;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (!simultaneous[otherRecognizer.id]) {\n simultaneous[otherRecognizer.id] = otherRecognizer;\n otherRecognizer.recognizeWith(this);\n }\n return this;\n },\n\n /**\n * drop the simultaneous link. it doesnt remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRecognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRecognizeWith', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n delete this.simultaneous[otherRecognizer.id];\n return this;\n },\n\n /**\n * recognizer can only run when an other is failing\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n requireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'requireFailure', this)) {\n return this;\n }\n\n var requireFail = this.requireFail;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (inArray(requireFail, otherRecognizer) === -1) {\n requireFail.push(otherRecognizer);\n otherRecognizer.requireFailure(this);\n }\n return this;\n },\n\n /**\n * drop the requireFailure link. it does not remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRequireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRequireFailure', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n var index = inArray(this.requireFail, otherRecognizer);\n if (index > -1) {\n this.requireFail.splice(index, 1);\n }\n return this;\n },\n\n /**\n * has require failures boolean\n * @returns {boolean}\n */\n hasRequireFailures: function() {\n return this.requireFail.length > 0;\n },\n\n /**\n * if the recognizer can recognize simultaneous with an other recognizer\n * @param {Recognizer} otherRecognizer\n * @returns {Boolean}\n */\n canRecognizeWith: function(otherRecognizer) {\n return !!this.simultaneous[otherRecognizer.id];\n },\n\n /**\n * You should use `tryEmit` instead of `emit` directly to check\n * that all the needed recognizers has failed before emitting.\n * @param {Object} input\n */\n emit: function(input) {\n var self = this;\n var state = this.state;\n\n function emit(event) {\n self.manager.emit(event, input);\n }\n\n // 'panstart' and 'panmove'\n if (state < STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n\n emit(self.options.event); // simple 'eventName' events\n\n if (input.additionalEvent) { // additional event(panleft, panright, pinchin, pinchout...)\n emit(input.additionalEvent);\n }\n\n // panend and pancancel\n if (state >= STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n },\n\n /**\n * Check that all the require failure recognizers has failed,\n * if true, it emits a gesture event,\n * otherwise, setup the state to FAILED.\n * @param {Object} input\n */\n tryEmit: function(input) {\n if (this.canEmit()) {\n return this.emit(input);\n }\n // it's failing anyway\n this.state = STATE_FAILED;\n },\n\n /**\n * can we emit?\n * @returns {boolean}\n */\n canEmit: function() {\n var i = 0;\n while (i < this.requireFail.length) {\n if (!(this.requireFail[i].state & (STATE_FAILED | STATE_POSSIBLE))) {\n return false;\n }\n i++;\n }\n return true;\n },\n\n /**\n * update the recognizer\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n // make a new copy of the inputData\n // so we can change the inputData without messing up the other recognizers\n var inputDataClone = assign({}, inputData);\n\n // is is enabled and allow recognizing?\n if (!boolOrFn(this.options.enable, [this, inputDataClone])) {\n this.reset();\n this.state = STATE_FAILED;\n return;\n }\n\n // reset when we've reached the end\n if (this.state & (STATE_RECOGNIZED | STATE_CANCELLED | STATE_FAILED)) {\n this.state = STATE_POSSIBLE;\n }\n\n this.state = this.process(inputDataClone);\n\n // the recognizer has recognized a gesture\n // so trigger an event\n if (this.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED | STATE_CANCELLED)) {\n this.tryEmit(inputDataClone);\n }\n },\n\n /**\n * return the state of the recognizer\n * the actual recognizing happens in this method\n * @virtual\n * @param {Object} inputData\n * @returns {Const} STATE\n */\n process: function(inputData) { }, // jshint ignore:line\n\n /**\n * return the preferred touch-action\n * @virtual\n * @returns {Array}\n */\n getTouchAction: function() { },\n\n /**\n * called when the gesture isn't allowed to recognize\n * like when another is being recognized or it is disabled\n * @virtual\n */\n reset: function() { }\n};\n\n/**\n * get a usable string, used as event postfix\n * @param {Const} state\n * @returns {String} state\n */\nfunction stateStr(state) {\n if (state & STATE_CANCELLED) {\n return 'cancel';\n } else if (state & STATE_ENDED) {\n return 'end';\n } else if (state & STATE_CHANGED) {\n return 'move';\n } else if (state & STATE_BEGAN) {\n return 'start';\n }\n return '';\n}\n\n/**\n * direction cons to string\n * @param {Const} direction\n * @returns {String}\n */\nfunction directionStr(direction) {\n if (direction == DIRECTION_DOWN) {\n return 'down';\n } else if (direction == DIRECTION_UP) {\n return 'up';\n } else if (direction == DIRECTION_LEFT) {\n return 'left';\n } else if (direction == DIRECTION_RIGHT) {\n return 'right';\n }\n return '';\n}\n\n/**\n * get a recognizer by name if it is bound to a manager\n * @param {Recognizer|String} otherRecognizer\n * @param {Recognizer} recognizer\n * @returns {Recognizer}\n */\nfunction getRecognizerByNameIfManager(otherRecognizer, recognizer) {\n var manager = recognizer.manager;\n if (manager) {\n return manager.get(otherRecognizer);\n }\n return otherRecognizer;\n}\n\n/**\n * This recognizer is just used as a base for the simple attribute recognizers.\n * @constructor\n * @extends Recognizer\n */\nfunction AttrRecognizer() {\n Recognizer.apply(this, arguments);\n}\n\ninherit(AttrRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof AttrRecognizer\n */\n defaults: {\n /**\n * @type {Number}\n * @default 1\n */\n pointers: 1\n },\n\n /**\n * Used to check if it the recognizer receives valid input, like input.distance > 10.\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {Boolean} recognized\n */\n attrTest: function(input) {\n var optionPointers = this.options.pointers;\n return optionPointers === 0 || input.pointers.length === optionPointers;\n },\n\n /**\n * Process the input and return the state for the recognizer\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {*} State\n */\n process: function(input) {\n var state = this.state;\n var eventType = input.eventType;\n\n var isRecognized = state & (STATE_BEGAN | STATE_CHANGED);\n var isValid = this.attrTest(input);\n\n // on cancel input and we've recognized before, return STATE_CANCELLED\n if (isRecognized && (eventType & INPUT_CANCEL || !isValid)) {\n return state | STATE_CANCELLED;\n } else if (isRecognized || isValid) {\n if (eventType & INPUT_END) {\n return state | STATE_ENDED;\n } else if (!(state & STATE_BEGAN)) {\n return STATE_BEGAN;\n }\n return state | STATE_CHANGED;\n }\n return STATE_FAILED;\n }\n});\n\n/**\n * Pan\n * Recognized when the pointer is down and moved in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PanRecognizer() {\n AttrRecognizer.apply(this, arguments);\n\n this.pX = null;\n this.pY = null;\n}\n\ninherit(PanRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PanRecognizer\n */\n defaults: {\n event: 'pan',\n threshold: 10,\n pointers: 1,\n direction: DIRECTION_ALL\n },\n\n getTouchAction: function() {\n var direction = this.options.direction;\n var actions = [];\n if (direction & DIRECTION_HORIZONTAL) {\n actions.push(TOUCH_ACTION_PAN_Y);\n }\n if (direction & DIRECTION_VERTICAL) {\n actions.push(TOUCH_ACTION_PAN_X);\n }\n return actions;\n },\n\n directionTest: function(input) {\n var options = this.options;\n var hasMoved = true;\n var distance = input.distance;\n var direction = input.direction;\n var x = input.deltaX;\n var y = input.deltaY;\n\n // lock to axis?\n if (!(direction & options.direction)) {\n if (options.direction & DIRECTION_HORIZONTAL) {\n direction = (x === 0) ? DIRECTION_NONE : (x < 0) ? DIRECTION_LEFT : DIRECTION_RIGHT;\n hasMoved = x != this.pX;\n distance = Math.abs(input.deltaX);\n } else {\n direction = (y === 0) ? DIRECTION_NONE : (y < 0) ? DIRECTION_UP : DIRECTION_DOWN;\n hasMoved = y != this.pY;\n distance = Math.abs(input.deltaY);\n }\n }\n input.direction = direction;\n return hasMoved && distance > options.threshold && direction & options.direction;\n },\n\n attrTest: function(input) {\n return AttrRecognizer.prototype.attrTest.call(this, input) &&\n (this.state & STATE_BEGAN || (!(this.state & STATE_BEGAN) && this.directionTest(input)));\n },\n\n emit: function(input) {\n\n this.pX = input.deltaX;\n this.pY = input.deltaY;\n\n var direction = directionStr(input.direction);\n\n if (direction) {\n input.additionalEvent = this.options.event + direction;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Pinch\n * Recognized when two or more pointers are moving toward (zoom-in) or away from each other (zoom-out).\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PinchRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(PinchRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'pinch',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.scale - 1) > this.options.threshold || this.state & STATE_BEGAN);\n },\n\n emit: function(input) {\n if (input.scale !== 1) {\n var inOut = input.scale < 1 ? 'in' : 'out';\n input.additionalEvent = this.options.event + inOut;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Press\n * Recognized when the pointer is down for x ms without any movement.\n * @constructor\n * @extends Recognizer\n */\nfunction PressRecognizer() {\n Recognizer.apply(this, arguments);\n\n this._timer = null;\n this._input = null;\n}\n\ninherit(PressRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PressRecognizer\n */\n defaults: {\n event: 'press',\n pointers: 1,\n time: 251, // minimal time of the pointer to be pressed\n threshold: 9 // a minimal movement is ok, but keep it low\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_AUTO];\n },\n\n process: function(input) {\n var options = this.options;\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTime = input.deltaTime > options.time;\n\n this._input = input;\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (!validMovement || !validPointers || (input.eventType & (INPUT_END | INPUT_CANCEL) && !validTime)) {\n this.reset();\n } else if (input.eventType & INPUT_START) {\n this.reset();\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.time, this);\n } else if (input.eventType & INPUT_END) {\n return STATE_RECOGNIZED;\n }\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function(input) {\n if (this.state !== STATE_RECOGNIZED) {\n return;\n }\n\n if (input && (input.eventType & INPUT_END)) {\n this.manager.emit(this.options.event + 'up', input);\n } else {\n this._input.timeStamp = now();\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Rotate\n * Recognized when two or more pointer are moving in a circular motion.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction RotateRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(RotateRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof RotateRecognizer\n */\n defaults: {\n event: 'rotate',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.rotation) > this.options.threshold || this.state & STATE_BEGAN);\n }\n});\n\n/**\n * Swipe\n * Recognized when the pointer is moving fast (velocity), with enough distance in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction SwipeRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(SwipeRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof SwipeRecognizer\n */\n defaults: {\n event: 'swipe',\n threshold: 10,\n velocity: 0.3,\n direction: DIRECTION_HORIZONTAL | DIRECTION_VERTICAL,\n pointers: 1\n },\n\n getTouchAction: function() {\n return PanRecognizer.prototype.getTouchAction.call(this);\n },\n\n attrTest: function(input) {\n var direction = this.options.direction;\n var velocity;\n\n if (direction & (DIRECTION_HORIZONTAL | DIRECTION_VERTICAL)) {\n velocity = input.overallVelocity;\n } else if (direction & DIRECTION_HORIZONTAL) {\n velocity = input.overallVelocityX;\n } else if (direction & DIRECTION_VERTICAL) {\n velocity = input.overallVelocityY;\n }\n\n return this._super.attrTest.call(this, input) &&\n direction & input.offsetDirection &&\n input.distance > this.options.threshold &&\n input.maxPointers == this.options.pointers &&\n abs(velocity) > this.options.velocity && input.eventType & INPUT_END;\n },\n\n emit: function(input) {\n var direction = directionStr(input.offsetDirection);\n if (direction) {\n this.manager.emit(this.options.event + direction, input);\n }\n\n this.manager.emit(this.options.event, input);\n }\n});\n\n/**\n * A tap is ecognized when the pointer is doing a small tap/click. Multiple taps are recognized if they occur\n * between the given interval and position. The delay option can be used to recognize multi-taps without firing\n * a single tap.\n *\n * The eventData from the emitted event contains the property `tapCount`, which contains the amount of\n * multi-taps being recognized.\n * @constructor\n * @extends Recognizer\n */\nfunction TapRecognizer() {\n Recognizer.apply(this, arguments);\n\n // previous time and center,\n // used for tap counting\n this.pTime = false;\n this.pCenter = false;\n\n this._timer = null;\n this._input = null;\n this.count = 0;\n}\n\ninherit(TapRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'tap',\n pointers: 1,\n taps: 1,\n interval: 300, // max time between the multi-tap taps\n time: 250, // max time of the pointer to be down (like finger on the screen)\n threshold: 9, // a minimal movement is ok, but keep it low\n posThreshold: 10 // a multi-tap can be a bit off the initial position\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_MANIPULATION];\n },\n\n process: function(input) {\n var options = this.options;\n\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTouchTime = input.deltaTime < options.time;\n\n this.reset();\n\n if ((input.eventType & INPUT_START) && (this.count === 0)) {\n return this.failTimeout();\n }\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (validMovement && validTouchTime && validPointers) {\n if (input.eventType != INPUT_END) {\n return this.failTimeout();\n }\n\n var validInterval = this.pTime ? (input.timeStamp - this.pTime < options.interval) : true;\n var validMultiTap = !this.pCenter || getDistance(this.pCenter, input.center) < options.posThreshold;\n\n this.pTime = input.timeStamp;\n this.pCenter = input.center;\n\n if (!validMultiTap || !validInterval) {\n this.count = 1;\n } else {\n this.count += 1;\n }\n\n this._input = input;\n\n // if tap count matches we have recognized it,\n // else it has began recognizing...\n var tapCount = this.count % options.taps;\n if (tapCount === 0) {\n // no failing requirements, immediately trigger the tap event\n // or wait as long as the multitap interval to trigger\n if (!this.hasRequireFailures()) {\n return STATE_RECOGNIZED;\n } else {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.interval, this);\n return STATE_BEGAN;\n }\n }\n }\n return STATE_FAILED;\n },\n\n failTimeout: function() {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_FAILED;\n }, this.options.interval, this);\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function() {\n if (this.state == STATE_RECOGNIZED) {\n this._input.tapCount = this.count;\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Simple way to create a manager with a default set of recognizers.\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Hammer(element, options) {\n options = options || {};\n options.recognizers = ifUndefined(options.recognizers, Hammer.defaults.preset);\n return new Manager(element, options);\n}\n\n/**\n * @const {string}\n */\nHammer.VERSION = '2.0.7';\n\n/**\n * default settings\n * @namespace\n */\nHammer.defaults = {\n /**\n * set if DOM events are being triggered.\n * But this is slower and unused by simple implementations, so disabled by default.\n * @type {Boolean}\n * @default false\n */\n domEvents: false,\n\n /**\n * The value for the touchAction property/fallback.\n * When set to `compute` it will magically set the correct value based on the added recognizers.\n * @type {String}\n * @default compute\n */\n touchAction: TOUCH_ACTION_COMPUTE,\n\n /**\n * @type {Boolean}\n * @default true\n */\n enable: true,\n\n /**\n * EXPERIMENTAL FEATURE -- can be removed/changed\n * Change the parent input target element.\n * If Null, then it is being set the to main element.\n * @type {Null|EventTarget}\n * @default null\n */\n inputTarget: null,\n\n /**\n * force an input class\n * @type {Null|Function}\n * @default null\n */\n inputClass: null,\n\n /**\n * Default recognizer setup when calling `Hammer()`\n * When creating a new Manager these will be skipped.\n * @type {Array}\n */\n preset: [\n // RecognizerClass, options, [recognizeWith, ...], [requireFailure, ...]\n [RotateRecognizer, {enable: false}],\n [PinchRecognizer, {enable: false}, ['rotate']],\n [SwipeRecognizer, {direction: DIRECTION_HORIZONTAL}],\n [PanRecognizer, {direction: DIRECTION_HORIZONTAL}, ['swipe']],\n [TapRecognizer],\n [TapRecognizer, {event: 'doubletap', taps: 2}, ['tap']],\n [PressRecognizer]\n ],\n\n /**\n * Some CSS properties can be used to improve the working of Hammer.\n * Add them to this method and they will be set when creating a new Manager.\n * @namespace\n */\n cssProps: {\n /**\n * Disables text selection to improve the dragging gesture. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userSelect: 'none',\n\n /**\n * Disable the Windows Phone grippers when pressing an element.\n * @type {String}\n * @default 'none'\n */\n touchSelect: 'none',\n\n /**\n * Disables the default callout shown when you touch and hold a touch target.\n * On iOS, when you touch and hold a touch target such as a link, Safari displays\n * a callout containing information about the link. This property allows you to disable that callout.\n * @type {String}\n * @default 'none'\n */\n touchCallout: 'none',\n\n /**\n * Specifies whether zooming is enabled. Used by IE10>\n * @type {String}\n * @default 'none'\n */\n contentZooming: 'none',\n\n /**\n * Specifies that an entire element should be draggable instead of its contents. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userDrag: 'none',\n\n /**\n * Overrides the highlight color shown when the user taps a link or a JavaScript\n * clickable element in iOS. This property obeys the alpha value, if specified.\n * @type {String}\n * @default 'rgba(0,0,0,0)'\n */\n tapHighlightColor: 'rgba(0,0,0,0)'\n }\n};\n\nvar STOP = 1;\nvar FORCED_STOP = 2;\n\n/**\n * Manager\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Manager(element, options) {\n this.options = assign({}, Hammer.defaults, options || {});\n\n this.options.inputTarget = this.options.inputTarget || element;\n\n this.handlers = {};\n this.session = {};\n this.recognizers = [];\n this.oldCssProps = {};\n\n this.element = element;\n this.input = createInputInstance(this);\n this.touchAction = new TouchAction(this, this.options.touchAction);\n\n toggleCssProps(this, true);\n\n each(this.options.recognizers, function(item) {\n var recognizer = this.add(new (item[0])(item[1]));\n item[2] && recognizer.recognizeWith(item[2]);\n item[3] && recognizer.requireFailure(item[3]);\n }, this);\n}\n\nManager.prototype = {\n /**\n * set options\n * @param {Object} options\n * @returns {Manager}\n */\n set: function(options) {\n assign(this.options, options);\n\n // Options that need a little more setup\n if (options.touchAction) {\n this.touchAction.update();\n }\n if (options.inputTarget) {\n // Clean up existing event listeners and reinitialize\n this.input.destroy();\n this.input.target = options.inputTarget;\n this.input.init();\n }\n return this;\n },\n\n /**\n * stop recognizing for this session.\n * This session will be discarded, when a new [input]start event is fired.\n * When forced, the recognizer cycle is stopped immediately.\n * @param {Boolean} [force]\n */\n stop: function(force) {\n this.session.stopped = force ? FORCED_STOP : STOP;\n },\n\n /**\n * run the recognizers!\n * called by the inputHandler function on every movement of the pointers (touches)\n * it walks through all the recognizers and tries to detect the gesture that is being made\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n var session = this.session;\n if (session.stopped) {\n return;\n }\n\n // run the touch-action polyfill\n this.touchAction.preventDefaults(inputData);\n\n var recognizer;\n var recognizers = this.recognizers;\n\n // this holds the recognizer that is being recognized.\n // so the recognizer's state needs to be BEGAN, CHANGED, ENDED or RECOGNIZED\n // if no recognizer is detecting a thing, it is set to `null`\n var curRecognizer = session.curRecognizer;\n\n // reset when the last recognizer is recognized\n // or when we're in a new session\n if (!curRecognizer || (curRecognizer && curRecognizer.state & STATE_RECOGNIZED)) {\n curRecognizer = session.curRecognizer = null;\n }\n\n var i = 0;\n while (i < recognizers.length) {\n recognizer = recognizers[i];\n\n // find out if we are allowed try to recognize the input for this one.\n // 1. allow if the session is NOT forced stopped (see the .stop() method)\n // 2. allow if we still haven't recognized a gesture in this session, or the this recognizer is the one\n // that is being recognized.\n // 3. allow if the recognizer is allowed to run simultaneous with the current recognized recognizer.\n // this can be setup with the `recognizeWith()` method on the recognizer.\n if (session.stopped !== FORCED_STOP && ( // 1\n !curRecognizer || recognizer == curRecognizer || // 2\n recognizer.canRecognizeWith(curRecognizer))) { // 3\n recognizer.recognize(inputData);\n } else {\n recognizer.reset();\n }\n\n // if the recognizer has been recognizing the input as a valid gesture, we want to store this one as the\n // current active recognizer. but only if we don't already have an active recognizer\n if (!curRecognizer && recognizer.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED)) {\n curRecognizer = session.curRecognizer = recognizer;\n }\n i++;\n }\n },\n\n /**\n * get a recognizer by its event name.\n * @param {Recognizer|String} recognizer\n * @returns {Recognizer|Null}\n */\n get: function(recognizer) {\n if (recognizer instanceof Recognizer) {\n return recognizer;\n }\n\n var recognizers = this.recognizers;\n for (var i = 0; i < recognizers.length; i++) {\n if (recognizers[i].options.event == recognizer) {\n return recognizers[i];\n }\n }\n return null;\n },\n\n /**\n * add a recognizer to the manager\n * existing recognizers with the same event name will be removed\n * @param {Recognizer} recognizer\n * @returns {Recognizer|Manager}\n */\n add: function(recognizer) {\n if (invokeArrayArg(recognizer, 'add', this)) {\n return this;\n }\n\n // remove existing\n var existing = this.get(recognizer.options.event);\n if (existing) {\n this.remove(existing);\n }\n\n this.recognizers.push(recognizer);\n recognizer.manager = this;\n\n this.touchAction.update();\n return recognizer;\n },\n\n /**\n * remove a recognizer by name or instance\n * @param {Recognizer|String} recognizer\n * @returns {Manager}\n */\n remove: function(recognizer) {\n if (invokeArrayArg(recognizer, 'remove', this)) {\n return this;\n }\n\n recognizer = this.get(recognizer);\n\n // let's make sure this recognizer exists\n if (recognizer) {\n var recognizers = this.recognizers;\n var index = inArray(recognizers, recognizer);\n\n if (index !== -1) {\n recognizers.splice(index, 1);\n this.touchAction.update();\n }\n }\n\n return this;\n },\n\n /**\n * bind event\n * @param {String} events\n * @param {Function} handler\n * @returns {EventEmitter} this\n */\n on: function(events, handler) {\n if (events === undefined) {\n return;\n }\n if (handler === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n handlers[event] = handlers[event] || [];\n handlers[event].push(handler);\n });\n return this;\n },\n\n /**\n * unbind event, leave emit blank to remove all handlers\n * @param {String} events\n * @param {Function} [handler]\n * @returns {EventEmitter} this\n */\n off: function(events, handler) {\n if (events === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n if (!handler) {\n delete handlers[event];\n } else {\n handlers[event] && handlers[event].splice(inArray(handlers[event], handler), 1);\n }\n });\n return this;\n },\n\n /**\n * emit event to the listeners\n * @param {String} event\n * @param {Object} data\n */\n emit: function(event, data) {\n // we also want to trigger dom events\n if (this.options.domEvents) {\n triggerDomEvent(event, data);\n }\n\n // no handlers, so skip it all\n var handlers = this.handlers[event] && this.handlers[event].slice();\n if (!handlers || !handlers.length) {\n return;\n }\n\n data.type = event;\n data.preventDefault = function() {\n data.srcEvent.preventDefault();\n };\n\n var i = 0;\n while (i < handlers.length) {\n handlers[i](data);\n i++;\n }\n },\n\n /**\n * destroy the manager and unbinds all events\n * it doesn't unbind dom events, that is the user own responsibility\n */\n destroy: function() {\n this.element && toggleCssProps(this, false);\n\n this.handlers = {};\n this.session = {};\n this.input.destroy();\n this.element = null;\n }\n};\n\n/**\n * add/remove the css properties as defined in manager.options.cssProps\n * @param {Manager} manager\n * @param {Boolean} add\n */\nfunction toggleCssProps(manager, add) {\n var element = manager.element;\n if (!element.style) {\n return;\n }\n var prop;\n each(manager.options.cssProps, function(value, name) {\n prop = prefixed(element.style, name);\n if (add) {\n manager.oldCssProps[prop] = element.style[prop];\n element.style[prop] = value;\n } else {\n element.style[prop] = manager.oldCssProps[prop] || '';\n }\n });\n if (!add) {\n manager.oldCssProps = {};\n }\n}\n\n/**\n * trigger dom event\n * @param {String} event\n * @param {Object} data\n */\nfunction triggerDomEvent(event, data) {\n var gestureEvent = document.createEvent('Event');\n gestureEvent.initEvent(event, true, true);\n gestureEvent.gesture = data;\n data.target.dispatchEvent(gestureEvent);\n}\n\nassign(Hammer, {\n INPUT_START: INPUT_START,\n INPUT_MOVE: INPUT_MOVE,\n INPUT_END: INPUT_END,\n INPUT_CANCEL: INPUT_CANCEL,\n\n STATE_POSSIBLE: STATE_POSSIBLE,\n STATE_BEGAN: STATE_BEGAN,\n STATE_CHANGED: STATE_CHANGED,\n STATE_ENDED: STATE_ENDED,\n STATE_RECOGNIZED: STATE_RECOGNIZED,\n STATE_CANCELLED: STATE_CANCELLED,\n STATE_FAILED: STATE_FAILED,\n\n DIRECTION_NONE: DIRECTION_NONE,\n DIRECTION_LEFT: DIRECTION_LEFT,\n DIRECTION_RIGHT: DIRECTION_RIGHT,\n DIRECTION_UP: DIRECTION_UP,\n DIRECTION_DOWN: DIRECTION_DOWN,\n DIRECTION_HORIZONTAL: DIRECTION_HORIZONTAL,\n DIRECTION_VERTICAL: DIRECTION_VERTICAL,\n DIRECTION_ALL: DIRECTION_ALL,\n\n Manager: Manager,\n Input: Input,\n TouchAction: TouchAction,\n\n TouchInput: TouchInput,\n MouseInput: MouseInput,\n PointerEventInput: PointerEventInput,\n TouchMouseInput: TouchMouseInput,\n SingleTouchInput: SingleTouchInput,\n\n Recognizer: Recognizer,\n AttrRecognizer: AttrRecognizer,\n Tap: TapRecognizer,\n Pan: PanRecognizer,\n Swipe: SwipeRecognizer,\n Pinch: PinchRecognizer,\n Rotate: RotateRecognizer,\n Press: PressRecognizer,\n\n on: addEventListeners,\n off: removeEventListeners,\n each: each,\n merge: merge,\n extend: extend,\n assign: assign,\n inherit: inherit,\n bindFn: bindFn,\n prefixed: prefixed\n});\n\n// this prevents errors when Hammer is loaded in the presence of an AMD\n// style loader but by script tag, not by the loader.\nvar freeGlobal = (typeof window !== 'undefined' ? window : (typeof self !== 'undefined' ? self : {})); // jshint ignore:line\nfreeGlobal.Hammer = Hammer;\n\nif (typeof define === 'function' && define.amd) {\n define(function() {\n return Hammer;\n });\n} else if (typeof module != 'undefined' && module.exports) {\n module.exports = Hammer;\n} else {\n window[exportName] = Hammer;\n}\n\n})(window, document, 'Hammer');\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar codeAt = require('../internals/string-multibyte').codeAt;\n\n// `String.prototype.codePointAt` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n$({ target: 'String', proto: true }, {\n codePointAt: function codePointAt(pos) {\n return codeAt(this, pos);\n }\n});\n","var $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\nvar fromCharCode = String.fromCharCode;\nvar nativeFromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\nvar INCORRECT_LENGTH = !!nativeFromCodePoint && nativeFromCodePoint.length != 1;\n\n// `String.fromCodePoint` method\n// https://tc39.github.io/ecma262/#sec-string.fromcodepoint\n$({ target: 'String', stat: true, forced: INCORRECT_LENGTH }, {\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var elements = [];\n var length = arguments.length;\n var i = 0;\n var code;\n while (length > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw RangeError(code + ' is not a valid code point');\n elements.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00)\n );\n } return elements.join('');\n }\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.VueMultiselect=e():t.VueMultiselect=e()}(this,function(){return function(t){function e(i){if(n[i])return n[i].exports;var r=n[i]={i:i,l:!1,exports:{}};return t[i].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,i){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:i})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,\"a\",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p=\"/\",e(e.s=60)}([function(t,e){var n=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=n)},function(t,e,n){var i=n(49)(\"wks\"),r=n(30),o=n(0).Symbol,s=\"function\"==typeof o;(t.exports=function(t){return i[t]||(i[t]=s&&o[t]||(s?o:r)(\"Symbol.\"+t))}).store=i},function(t,e,n){var i=n(5);t.exports=function(t){if(!i(t))throw TypeError(t+\" is not an object!\");return t}},function(t,e,n){var i=n(0),r=n(10),o=n(8),s=n(6),u=n(11),a=function(t,e,n){var l,c,f,p,h=t&a.F,d=t&a.G,v=t&a.S,g=t&a.P,y=t&a.B,m=d?i:v?i[e]||(i[e]={}):(i[e]||{}).prototype,b=d?r:r[e]||(r[e]={}),_=b.prototype||(b.prototype={});d&&(n=e);for(l in n)c=!h&&m&&void 0!==m[l],f=(c?m:n)[l],p=y&&c?u(f,i):g&&\"function\"==typeof f?u(Function.call,f):f,m&&s(m,l,f,t&a.U),b[l]!=f&&o(b,l,p),g&&_[l]!=f&&(_[l]=f)};i.core=r,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,t.exports=a},function(t,e,n){t.exports=!n(7)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},function(t,e){t.exports=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t}},function(t,e,n){var i=n(0),r=n(8),o=n(12),s=n(30)(\"src\"),u=Function.toString,a=(\"\"+u).split(\"toString\");n(10).inspectSource=function(t){return u.call(t)},(t.exports=function(t,e,n,u){var l=\"function\"==typeof n;l&&(o(n,\"name\")||r(n,\"name\",e)),t[e]!==n&&(l&&(o(n,s)||r(n,s,t[e]?\"\"+t[e]:a.join(String(e)))),t===i?t[e]=n:u?t[e]?t[e]=n:r(t,e,n):(delete t[e],r(t,e,n)))})(Function.prototype,\"toString\",function(){return\"function\"==typeof this&&this[s]||u.call(this)})},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e,n){var i=n(13),r=n(25);t.exports=n(4)?function(t,e,n){return i.f(t,e,r(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e){var n=t.exports={version:\"2.5.7\"};\"number\"==typeof __e&&(__e=n)},function(t,e,n){var i=n(14);t.exports=function(t,e,n){if(i(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,i){return t.call(e,n,i)};case 3:return function(n,i,r){return t.call(e,n,i,r)}}return function(){return t.apply(e,arguments)}}},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var i=n(2),r=n(41),o=n(29),s=Object.defineProperty;e.f=n(4)?Object.defineProperty:function(t,e,n){if(i(t),e=o(e,!0),i(n),r)try{return s(t,e,n)}catch(t){}if(\"get\"in n||\"set\"in n)throw TypeError(\"Accessors not supported!\");return\"value\"in n&&(t[e]=n.value),t}},function(t,e){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},function(t,e){t.exports={}},function(t,e){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},function(t,e,n){\"use strict\";var i=n(7);t.exports=function(t,e){return!!t&&i(function(){e?t.call(null,function(){},1):t.call(null)})}},function(t,e,n){var i=n(23),r=n(16);t.exports=function(t){return i(r(t))}},function(t,e,n){var i=n(53),r=Math.min;t.exports=function(t){return t>0?r(i(t),9007199254740991):0}},function(t,e,n){var i=n(11),r=n(23),o=n(28),s=n(19),u=n(64);t.exports=function(t,e){var n=1==t,a=2==t,l=3==t,c=4==t,f=6==t,p=5==t||f,h=e||u;return function(e,u,d){for(var v,g,y=o(e),m=r(y),b=i(u,d,3),_=s(m.length),x=0,w=n?h(e,_):a?h(e,0):void 0;_>x;x++)if((p||x in m)&&(v=m[x],g=b(v,x,y),t))if(n)w[x]=g;else if(g)switch(t){case 3:return!0;case 5:return v;case 6:return x;case 2:w.push(v)}else if(c)return!1;return f?-1:l||c?c:w}}},function(t,e,n){var i=n(5),r=n(0).document,o=i(r)&&i(r.createElement);t.exports=function(t){return o?r.createElement(t):{}}},function(t,e){t.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(t,e,n){var i=n(9);t.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(t){return\"String\"==i(t)?t.split(\"\"):Object(t)}},function(t,e){t.exports=!1},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var i=n(13).f,r=n(12),o=n(1)(\"toStringTag\");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,o)&&i(t,o,{configurable:!0,value:e})}},function(t,e,n){var i=n(49)(\"keys\"),r=n(30);t.exports=function(t){return i[t]||(i[t]=r(t))}},function(t,e,n){var i=n(16);t.exports=function(t){return Object(i(t))}},function(t,e,n){var i=n(5);t.exports=function(t,e){if(!i(t))return t;var n,r;if(e&&\"function\"==typeof(n=t.toString)&&!i(r=n.call(t)))return r;if(\"function\"==typeof(n=t.valueOf)&&!i(r=n.call(t)))return r;if(!e&&\"function\"==typeof(n=t.toString)&&!i(r=n.call(t)))return r;throw TypeError(\"Can't convert object to primitive value\")}},function(t,e){var n=0,i=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++n+i).toString(36))}},function(t,e,n){\"use strict\";var i=n(0),r=n(12),o=n(9),s=n(67),u=n(29),a=n(7),l=n(77).f,c=n(45).f,f=n(13).f,p=n(51).trim,h=i.Number,d=h,v=h.prototype,g=\"Number\"==o(n(44)(v)),y=\"trim\"in String.prototype,m=function(t){var e=u(t,!1);if(\"string\"==typeof e&&e.length>2){e=y?e.trim():p(e,3);var n,i,r,o=e.charCodeAt(0);if(43===o||45===o){if(88===(n=e.charCodeAt(2))||120===n)return NaN}else if(48===o){switch(e.charCodeAt(1)){case 66:case 98:i=2,r=49;break;case 79:case 111:i=8,r=55;break;default:return+e}for(var s,a=e.slice(2),l=0,c=a.length;l<c;l++)if((s=a.charCodeAt(l))<48||s>r)return NaN;return parseInt(a,i)}}return+e};if(!h(\" 0o1\")||!h(\"0b1\")||h(\"+0x1\")){h=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof h&&(g?a(function(){v.valueOf.call(n)}):\"Number\"!=o(n))?s(new d(m(e)),n,h):m(e)};for(var b,_=n(4)?l(d):\"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger\".split(\",\"),x=0;_.length>x;x++)r(d,b=_[x])&&!r(h,b)&&f(h,b,c(d,b));h.prototype=v,v.constructor=h,n(6)(i,\"Number\",h)}},function(t,e,n){\"use strict\";function i(t){return 0!==t&&(!(!Array.isArray(t)||0!==t.length)||!t)}function r(t){return function(){return!t.apply(void 0,arguments)}}function o(t,e){return void 0===t&&(t=\"undefined\"),null===t&&(t=\"null\"),!1===t&&(t=\"false\"),-1!==t.toString().toLowerCase().indexOf(e.trim())}function s(t,e,n,i){return t.filter(function(t){return o(i(t,n),e)})}function u(t){return t.filter(function(t){return!t.$isLabel})}function a(t,e){return function(n){return n.reduce(function(n,i){return i[t]&&i[t].length?(n.push({$groupLabel:i[e],$isLabel:!0}),n.concat(i[t])):n},[])}}function l(t,e,i,r,o){return function(u){return u.map(function(u){var a;if(!u[i])return console.warn(\"Options passed to vue-multiselect do not contain groups, despite the config.\"),[];var l=s(u[i],t,e,o);return l.length?(a={},n.i(d.a)(a,r,u[r]),n.i(d.a)(a,i,l),a):[]})}}var c=n(59),f=n(54),p=(n.n(f),n(95)),h=(n.n(p),n(31)),d=(n.n(h),n(58)),v=n(91),g=(n.n(v),n(98)),y=(n.n(g),n(92)),m=(n.n(y),n(88)),b=(n.n(m),n(97)),_=(n.n(b),n(89)),x=(n.n(_),n(96)),w=(n.n(x),n(93)),S=(n.n(w),n(90)),O=(n.n(S),function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return function(t){return e.reduce(function(t,e){return e(t)},t)}});e.a={data:function(){return{search:\"\",isOpen:!1,preferredOpenDirection:\"below\",optimizedHeight:this.maxHeight}},props:{internalSearch:{type:Boolean,default:!0},options:{type:Array,required:!0},multiple:{type:Boolean,default:!1},value:{type:null,default:function(){return[]}},trackBy:{type:String},label:{type:String},searchable:{type:Boolean,default:!0},clearOnSelect:{type:Boolean,default:!0},hideSelected:{type:Boolean,default:!1},placeholder:{type:String,default:\"Select option\"},allowEmpty:{type:Boolean,default:!0},resetAfter:{type:Boolean,default:!1},closeOnSelect:{type:Boolean,default:!0},customLabel:{type:Function,default:function(t,e){return i(t)?\"\":e?t[e]:t}},taggable:{type:Boolean,default:!1},tagPlaceholder:{type:String,default:\"Press enter to create a tag\"},tagPosition:{type:String,default:\"top\"},max:{type:[Number,Boolean],default:!1},id:{default:null},optionsLimit:{type:Number,default:1e3},groupValues:{type:String},groupLabel:{type:String},groupSelect:{type:Boolean,default:!1},blockKeys:{type:Array,default:function(){return[]}},preserveSearch:{type:Boolean,default:!1},preselectFirst:{type:Boolean,default:!1}},mounted:function(){!this.multiple&&this.max&&console.warn(\"[Vue-Multiselect warn]: Max prop should not be used when prop Multiple equals false.\"),this.preselectFirst&&!this.internalValue.length&&this.options.length&&this.select(this.filteredOptions[0])},computed:{internalValue:function(){return this.value||0===this.value?Array.isArray(this.value)?this.value:[this.value]:[]},filteredOptions:function(){var t=this.search||\"\",e=t.toLowerCase().trim(),n=this.options.concat();return n=this.internalSearch?this.groupValues?this.filterAndFlat(n,e,this.label):s(n,e,this.label,this.customLabel):this.groupValues?a(this.groupValues,this.groupLabel)(n):n,n=this.hideSelected?n.filter(r(this.isSelected)):n,this.taggable&&e.length&&!this.isExistingOption(e)&&(\"bottom\"===this.tagPosition?n.push({isTag:!0,label:t}):n.unshift({isTag:!0,label:t})),n.slice(0,this.optionsLimit)},valueKeys:function(){var t=this;return this.trackBy?this.internalValue.map(function(e){return e[t.trackBy]}):this.internalValue},optionKeys:function(){var t=this;return(this.groupValues?this.flatAndStrip(this.options):this.options).map(function(e){return t.customLabel(e,t.label).toString().toLowerCase()})},currentOptionLabel:function(){return this.multiple?this.searchable?\"\":this.placeholder:this.internalValue.length?this.getOptionLabel(this.internalValue[0]):this.searchable?\"\":this.placeholder}},watch:{internalValue:function(){this.resetAfter&&this.internalValue.length&&(this.search=\"\",this.$emit(\"input\",this.multiple?[]:null))},search:function(){this.$emit(\"search-change\",this.search,this.id)}},methods:{getValue:function(){return this.multiple?this.internalValue:0===this.internalValue.length?null:this.internalValue[0]},filterAndFlat:function(t,e,n){return O(l(e,n,this.groupValues,this.groupLabel,this.customLabel),a(this.groupValues,this.groupLabel))(t)},flatAndStrip:function(t){return O(a(this.groupValues,this.groupLabel),u)(t)},updateSearch:function(t){this.search=t},isExistingOption:function(t){return!!this.options&&this.optionKeys.indexOf(t)>-1},isSelected:function(t){var e=this.trackBy?t[this.trackBy]:t;return this.valueKeys.indexOf(e)>-1},isOptionDisabled:function(t){return!!t.$isDisabled},getOptionLabel:function(t){if(i(t))return\"\";if(t.isTag)return t.label;if(t.$isLabel)return t.$groupLabel;var e=this.customLabel(t,this.label);return i(e)?\"\":e},select:function(t,e){if(t.$isLabel&&this.groupSelect)return void this.selectGroup(t);if(!(-1!==this.blockKeys.indexOf(e)||this.disabled||t.$isDisabled||t.$isLabel)&&(!this.max||!this.multiple||this.internalValue.length!==this.max)&&(\"Tab\"!==e||this.pointerDirty)){if(t.isTag)this.$emit(\"tag\",t.label,this.id),this.search=\"\",this.closeOnSelect&&!this.multiple&&this.deactivate();else{if(this.isSelected(t))return void(\"Tab\"!==e&&this.removeElement(t));this.$emit(\"select\",t,this.id),this.multiple?this.$emit(\"input\",this.internalValue.concat([t]),this.id):this.$emit(\"input\",t,this.id),this.clearOnSelect&&(this.search=\"\")}this.closeOnSelect&&this.deactivate()}},selectGroup:function(t){var e=this,n=this.options.find(function(n){return n[e.groupLabel]===t.$groupLabel});if(n)if(this.wholeGroupSelected(n)){this.$emit(\"remove\",n[this.groupValues],this.id);var i=this.internalValue.filter(function(t){return-1===n[e.groupValues].indexOf(t)});this.$emit(\"input\",i,this.id)}else{var r=n[this.groupValues].filter(function(t){return!(e.isOptionDisabled(t)||e.isSelected(t))});this.$emit(\"select\",r,this.id),this.$emit(\"input\",this.internalValue.concat(r),this.id)}},wholeGroupSelected:function(t){var e=this;return t[this.groupValues].every(function(t){return e.isSelected(t)||e.isOptionDisabled(t)})},wholeGroupDisabled:function(t){return t[this.groupValues].every(this.isOptionDisabled)},removeElement:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!this.disabled&&!t.$isDisabled){if(!this.allowEmpty&&this.internalValue.length<=1)return void this.deactivate();var i=\"object\"===n.i(c.a)(t)?this.valueKeys.indexOf(t[this.trackBy]):this.valueKeys.indexOf(t);if(this.$emit(\"remove\",t,this.id),this.multiple){var r=this.internalValue.slice(0,i).concat(this.internalValue.slice(i+1));this.$emit(\"input\",r,this.id)}else this.$emit(\"input\",null,this.id);this.closeOnSelect&&e&&this.deactivate()}},removeLastElement:function(){-1===this.blockKeys.indexOf(\"Delete\")&&0===this.search.length&&Array.isArray(this.internalValue)&&this.internalValue.length&&this.removeElement(this.internalValue[this.internalValue.length-1],!1)},activate:function(){var t=this;this.isOpen||this.disabled||(this.adjustPosition(),this.groupValues&&0===this.pointer&&this.filteredOptions.length&&(this.pointer=1),this.isOpen=!0,this.searchable?(this.preserveSearch||(this.search=\"\"),this.$nextTick(function(){return t.$refs.search.focus()})):this.$el.focus(),this.$emit(\"open\",this.id))},deactivate:function(){this.isOpen&&(this.isOpen=!1,this.searchable?this.$refs.search.blur():this.$el.blur(),this.preserveSearch||(this.search=\"\"),this.$emit(\"close\",this.getValue(),this.id))},toggle:function(){this.isOpen?this.deactivate():this.activate()},adjustPosition:function(){if(\"undefined\"!=typeof window){var t=this.$el.getBoundingClientRect().top,e=window.innerHeight-this.$el.getBoundingClientRect().bottom;e>this.maxHeight||e>t||\"below\"===this.openDirection||\"bottom\"===this.openDirection?(this.preferredOpenDirection=\"below\",this.optimizedHeight=Math.min(e-40,this.maxHeight)):(this.preferredOpenDirection=\"above\",this.optimizedHeight=Math.min(t-40,this.maxHeight))}}}}},function(t,e,n){\"use strict\";var i=n(54),r=(n.n(i),n(31));n.n(r);e.a={data:function(){return{pointer:0,pointerDirty:!1}},props:{showPointer:{type:Boolean,default:!0},optionHeight:{type:Number,default:40}},computed:{pointerPosition:function(){return this.pointer*this.optionHeight},visibleElements:function(){return this.optimizedHeight/this.optionHeight}},watch:{filteredOptions:function(){this.pointerAdjust()},isOpen:function(){this.pointerDirty=!1}},methods:{optionHighlight:function(t,e){return{\"multiselect__option--highlight\":t===this.pointer&&this.showPointer,\"multiselect__option--selected\":this.isSelected(e)}},groupHighlight:function(t,e){var n=this;if(!this.groupSelect)return[\"multiselect__option--group\",\"multiselect__option--disabled\"];var i=this.options.find(function(t){return t[n.groupLabel]===e.$groupLabel});return i&&!this.wholeGroupDisabled(i)?[\"multiselect__option--group\",{\"multiselect__option--highlight\":t===this.pointer&&this.showPointer},{\"multiselect__option--group-selected\":this.wholeGroupSelected(i)}]:\"multiselect__option--disabled\"},addPointerElement:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"Enter\",e=t.key;this.filteredOptions.length>0&&this.select(this.filteredOptions[this.pointer],e),this.pointerReset()},pointerForward:function(){this.pointer<this.filteredOptions.length-1&&(this.pointer++,this.$refs.list.scrollTop<=this.pointerPosition-(this.visibleElements-1)*this.optionHeight&&(this.$refs.list.scrollTop=this.pointerPosition-(this.visibleElements-1)*this.optionHeight),this.filteredOptions[this.pointer]&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerForward()),this.pointerDirty=!0},pointerBackward:function(){this.pointer>0?(this.pointer--,this.$refs.list.scrollTop>=this.pointerPosition&&(this.$refs.list.scrollTop=this.pointerPosition),this.filteredOptions[this.pointer]&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerBackward()):this.filteredOptions[this.pointer]&&this.filteredOptions[0].$isLabel&&!this.groupSelect&&this.pointerForward(),this.pointerDirty=!0},pointerReset:function(){this.closeOnSelect&&(this.pointer=0,this.$refs.list&&(this.$refs.list.scrollTop=0))},pointerAdjust:function(){this.pointer>=this.filteredOptions.length-1&&(this.pointer=this.filteredOptions.length?this.filteredOptions.length-1:0),this.filteredOptions.length>0&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerForward()},pointerSet:function(t){this.pointer=t,this.pointerDirty=!0}}}},function(t,e,n){\"use strict\";var i=n(36),r=n(74),o=n(15),s=n(18);t.exports=n(72)(Array,\"Array\",function(t,e){this._t=s(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,r(1)):\"keys\"==e?r(0,n):\"values\"==e?r(0,t[n]):r(0,[n,t[n]])},\"values\"),o.Arguments=o.Array,i(\"keys\"),i(\"values\"),i(\"entries\")},function(t,e,n){\"use strict\";var i=n(31),r=(n.n(i),n(32)),o=n(33);e.a={name:\"vue-multiselect\",mixins:[r.a,o.a],props:{name:{type:String,default:\"\"},selectLabel:{type:String,default:\"Press enter to select\"},selectGroupLabel:{type:String,default:\"Press enter to select group\"},selectedLabel:{type:String,default:\"Selected\"},deselectLabel:{type:String,default:\"Press enter to remove\"},deselectGroupLabel:{type:String,default:\"Press enter to deselect group\"},showLabels:{type:Boolean,default:!0},limit:{type:Number,default:99999},maxHeight:{type:Number,default:300},limitText:{type:Function,default:function(t){return\"and \".concat(t,\" more\")}},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},openDirection:{type:String,default:\"\"},showNoOptions:{type:Boolean,default:!0},showNoResults:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},computed:{isSingleLabelVisible:function(){return(this.singleValue||0===this.singleValue)&&(!this.isOpen||!this.searchable)&&!this.visibleValues.length},isPlaceholderVisible:function(){return!(this.internalValue.length||this.searchable&&this.isOpen)},visibleValues:function(){return this.multiple?this.internalValue.slice(0,this.limit):[]},singleValue:function(){return this.internalValue[0]},deselectLabelText:function(){return this.showLabels?this.deselectLabel:\"\"},deselectGroupLabelText:function(){return this.showLabels?this.deselectGroupLabel:\"\"},selectLabelText:function(){return this.showLabels?this.selectLabel:\"\"},selectGroupLabelText:function(){return this.showLabels?this.selectGroupLabel:\"\"},selectedLabelText:function(){return this.showLabels?this.selectedLabel:\"\"},inputStyle:function(){if(this.searchable||this.multiple&&this.value&&this.value.length)return this.isOpen?{width:\"100%\"}:{width:\"0\",position:\"absolute\",padding:\"0\"}},contentStyle:function(){return this.options.length?{display:\"inline-block\"}:{display:\"block\"}},isAbove:function(){return\"above\"===this.openDirection||\"top\"===this.openDirection||\"below\"!==this.openDirection&&\"bottom\"!==this.openDirection&&\"above\"===this.preferredOpenDirection},showSearchInput:function(){return this.searchable&&(!this.hasSingleSelectedSlot||!this.visibleSingleValue&&0!==this.visibleSingleValue||this.isOpen)}}}},function(t,e,n){var i=n(1)(\"unscopables\"),r=Array.prototype;void 0==r[i]&&n(8)(r,i,{}),t.exports=function(t){r[i][t]=!0}},function(t,e,n){var i=n(18),r=n(19),o=n(85);t.exports=function(t){return function(e,n,s){var u,a=i(e),l=r(a.length),c=o(s,l);if(t&&n!=n){for(;l>c;)if((u=a[c++])!=u)return!0}else for(;l>c;c++)if((t||c in a)&&a[c]===n)return t||c||0;return!t&&-1}}},function(t,e,n){var i=n(9),r=n(1)(\"toStringTag\"),o=\"Arguments\"==i(function(){return arguments}()),s=function(t,e){try{return t[e]}catch(t){}};t.exports=function(t){var e,n,u;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(n=s(e=Object(t),r))?n:o?i(e):\"Object\"==(u=i(e))&&\"function\"==typeof e.callee?\"Arguments\":u}},function(t,e,n){\"use strict\";var i=n(2);t.exports=function(){var t=i(this),e=\"\";return t.global&&(e+=\"g\"),t.ignoreCase&&(e+=\"i\"),t.multiline&&(e+=\"m\"),t.unicode&&(e+=\"u\"),t.sticky&&(e+=\"y\"),e}},function(t,e,n){var i=n(0).document;t.exports=i&&i.documentElement},function(t,e,n){t.exports=!n(4)&&!n(7)(function(){return 7!=Object.defineProperty(n(21)(\"div\"),\"a\",{get:function(){return 7}}).a})},function(t,e,n){var i=n(9);t.exports=Array.isArray||function(t){return\"Array\"==i(t)}},function(t,e,n){\"use strict\";function i(t){var e,n;this.promise=new t(function(t,i){if(void 0!==e||void 0!==n)throw TypeError(\"Bad Promise constructor\");e=t,n=i}),this.resolve=r(e),this.reject=r(n)}var r=n(14);t.exports.f=function(t){return new i(t)}},function(t,e,n){var i=n(2),r=n(76),o=n(22),s=n(27)(\"IE_PROTO\"),u=function(){},a=function(){var t,e=n(21)(\"iframe\"),i=o.length;for(e.style.display=\"none\",n(40).appendChild(e),e.src=\"javascript:\",t=e.contentWindow.document,t.open(),t.write(\"<script>document.F=Object<\\/script>\"),t.close(),a=t.F;i--;)delete a.prototype[o[i]];return a()};t.exports=Object.create||function(t,e){var n;return null!==t?(u.prototype=i(t),n=new u,u.prototype=null,n[s]=t):n=a(),void 0===e?n:r(n,e)}},function(t,e,n){var i=n(79),r=n(25),o=n(18),s=n(29),u=n(12),a=n(41),l=Object.getOwnPropertyDescriptor;e.f=n(4)?l:function(t,e){if(t=o(t),e=s(e,!0),a)try{return l(t,e)}catch(t){}if(u(t,e))return r(!i.f.call(t,e),t[e])}},function(t,e,n){var i=n(12),r=n(18),o=n(37)(!1),s=n(27)(\"IE_PROTO\");t.exports=function(t,e){var n,u=r(t),a=0,l=[];for(n in u)n!=s&&i(u,n)&&l.push(n);for(;e.length>a;)i(u,n=e[a++])&&(~o(l,n)||l.push(n));return l}},function(t,e,n){var i=n(46),r=n(22);t.exports=Object.keys||function(t){return i(t,r)}},function(t,e,n){var i=n(2),r=n(5),o=n(43);t.exports=function(t,e){if(i(t),r(e)&&e.constructor===t)return e;var n=o.f(t);return(0,n.resolve)(e),n.promise}},function(t,e,n){var i=n(10),r=n(0),o=r[\"__core-js_shared__\"]||(r[\"__core-js_shared__\"]={});(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})(\"versions\",[]).push({version:i.version,mode:n(24)?\"pure\":\"global\",copyright:\"© 2018 Denis Pushkarev (zloirock.ru)\"})},function(t,e,n){var i=n(2),r=n(14),o=n(1)(\"species\");t.exports=function(t,e){var n,s=i(t).constructor;return void 0===s||void 0==(n=i(s)[o])?e:r(n)}},function(t,e,n){var i=n(3),r=n(16),o=n(7),s=n(84),u=\"[\"+s+\"]\",a=\"
\",l=RegExp(\"^\"+u+u+\"*\"),c=RegExp(u+u+\"*$\"),f=function(t,e,n){var r={},u=o(function(){return!!s[t]()||a[t]()!=a}),l=r[t]=u?e(p):s[t];n&&(r[n]=l),i(i.P+i.F*u,\"String\",r)},p=f.trim=function(t,e){return t=String(r(t)),1&e&&(t=t.replace(l,\"\")),2&e&&(t=t.replace(c,\"\")),t};t.exports=f},function(t,e,n){var i,r,o,s=n(11),u=n(68),a=n(40),l=n(21),c=n(0),f=c.process,p=c.setImmediate,h=c.clearImmediate,d=c.MessageChannel,v=c.Dispatch,g=0,y={},m=function(){var t=+this;if(y.hasOwnProperty(t)){var e=y[t];delete y[t],e()}},b=function(t){m.call(t.data)};p&&h||(p=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return y[++g]=function(){u(\"function\"==typeof t?t:Function(t),e)},i(g),g},h=function(t){delete y[t]},\"process\"==n(9)(f)?i=function(t){f.nextTick(s(m,t,1))}:v&&v.now?i=function(t){v.now(s(m,t,1))}:d?(r=new d,o=r.port2,r.port1.onmessage=b,i=s(o.postMessage,o,1)):c.addEventListener&&\"function\"==typeof postMessage&&!c.importScripts?(i=function(t){c.postMessage(t+\"\",\"*\")},c.addEventListener(\"message\",b,!1)):i=\"onreadystatechange\"in l(\"script\")?function(t){a.appendChild(l(\"script\")).onreadystatechange=function(){a.removeChild(this),m.call(t)}}:function(t){setTimeout(s(m,t,1),0)}),t.exports={set:p,clear:h}},function(t,e){var n=Math.ceil,i=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?i:n)(t)}},function(t,e,n){\"use strict\";var i=n(3),r=n(20)(5),o=!0;\"find\"in[]&&Array(1).find(function(){o=!1}),i(i.P+i.F*o,\"Array\",{find:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),n(36)(\"find\")},function(t,e,n){\"use strict\";var i,r,o,s,u=n(24),a=n(0),l=n(11),c=n(38),f=n(3),p=n(5),h=n(14),d=n(61),v=n(66),g=n(50),y=n(52).set,m=n(75)(),b=n(43),_=n(80),x=n(86),w=n(48),S=a.TypeError,O=a.process,L=O&&O.versions,k=L&&L.v8||\"\",P=a.Promise,T=\"process\"==c(O),V=function(){},E=r=b.f,A=!!function(){try{var t=P.resolve(1),e=(t.constructor={})[n(1)(\"species\")]=function(t){t(V,V)};return(T||\"function\"==typeof PromiseRejectionEvent)&&t.then(V)instanceof e&&0!==k.indexOf(\"6.6\")&&-1===x.indexOf(\"Chrome/66\")}catch(t){}}(),C=function(t){var e;return!(!p(t)||\"function\"!=typeof(e=t.then))&&e},D=function(t,e){if(!t._n){t._n=!0;var n=t._c;m(function(){for(var i=t._v,r=1==t._s,o=0;n.length>o;)!function(e){var n,o,s,u=r?e.ok:e.fail,a=e.resolve,l=e.reject,c=e.domain;try{u?(r||(2==t._h&&$(t),t._h=1),!0===u?n=i:(c&&c.enter(),n=u(i),c&&(c.exit(),s=!0)),n===e.promise?l(S(\"Promise-chain cycle\")):(o=C(n))?o.call(n,a,l):a(n)):l(i)}catch(t){c&&!s&&c.exit(),l(t)}}(n[o++]);t._c=[],t._n=!1,e&&!t._h&&j(t)})}},j=function(t){y.call(a,function(){var e,n,i,r=t._v,o=N(t);if(o&&(e=_(function(){T?O.emit(\"unhandledRejection\",r,t):(n=a.onunhandledrejection)?n({promise:t,reason:r}):(i=a.console)&&i.error&&i.error(\"Unhandled promise rejection\",r)}),t._h=T||N(t)?2:1),t._a=void 0,o&&e.e)throw e.v})},N=function(t){return 1!==t._h&&0===(t._a||t._c).length},$=function(t){y.call(a,function(){var e;T?O.emit(\"rejectionHandled\",t):(e=a.onrejectionhandled)&&e({promise:t,reason:t._v})})},F=function(t){var e=this;e._d||(e._d=!0,e=e._w||e,e._v=t,e._s=2,e._a||(e._a=e._c.slice()),D(e,!0))},M=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw S(\"Promise can't be resolved itself\");(e=C(t))?m(function(){var i={_w:n,_d:!1};try{e.call(t,l(M,i,1),l(F,i,1))}catch(t){F.call(i,t)}}):(n._v=t,n._s=1,D(n,!1))}catch(t){F.call({_w:n,_d:!1},t)}}};A||(P=function(t){d(this,P,\"Promise\",\"_h\"),h(t),i.call(this);try{t(l(M,this,1),l(F,this,1))}catch(t){F.call(this,t)}},i=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},i.prototype=n(81)(P.prototype,{then:function(t,e){var n=E(g(this,P));return n.ok=\"function\"!=typeof t||t,n.fail=\"function\"==typeof e&&e,n.domain=T?O.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&D(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new i;this.promise=t,this.resolve=l(M,t,1),this.reject=l(F,t,1)},b.f=E=function(t){return t===P||t===s?new o(t):r(t)}),f(f.G+f.W+f.F*!A,{Promise:P}),n(26)(P,\"Promise\"),n(83)(\"Promise\"),s=n(10).Promise,f(f.S+f.F*!A,\"Promise\",{reject:function(t){var e=E(this);return(0,e.reject)(t),e.promise}}),f(f.S+f.F*(u||!A),\"Promise\",{resolve:function(t){return w(u&&this===s?P:this,t)}}),f(f.S+f.F*!(A&&n(73)(function(t){P.all(t).catch(V)})),\"Promise\",{all:function(t){var e=this,n=E(e),i=n.resolve,r=n.reject,o=_(function(){var n=[],o=0,s=1;v(t,!1,function(t){var u=o++,a=!1;n.push(void 0),s++,e.resolve(t).then(function(t){a||(a=!0,n[u]=t,--s||i(n))},r)}),--s||i(n)});return o.e&&r(o.v),n.promise},race:function(t){var e=this,n=E(e),i=n.reject,r=_(function(){v(t,!1,function(t){e.resolve(t).then(n.resolve,i)})});return r.e&&i(r.v),n.promise}})},function(t,e,n){\"use strict\";var i=n(3),r=n(10),o=n(0),s=n(50),u=n(48);i(i.P+i.R,\"Promise\",{finally:function(t){var e=s(this,r.Promise||o.Promise),n=\"function\"==typeof t;return this.then(n?function(n){return u(e,t()).then(function(){return n})}:t,n?function(n){return u(e,t()).then(function(){throw n})}:t)}})},function(t,e,n){\"use strict\";function i(t){n(99)}var r=n(35),o=n(101),s=n(100),u=i,a=s(r.a,o.a,!1,u,null,null);e.a=a.exports},function(t,e,n){\"use strict\";function i(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}e.a=i},function(t,e,n){\"use strict\";function i(t){return(i=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t})(t)}function r(t){return(r=\"function\"==typeof Symbol&&\"symbol\"===i(Symbol.iterator)?function(t){return i(t)}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":i(t)})(t)}e.a=r},function(t,e,n){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var i=n(34),r=(n.n(i),n(55)),o=(n.n(r),n(56)),s=(n.n(o),n(57)),u=n(32),a=n(33);n.d(e,\"Multiselect\",function(){return s.a}),n.d(e,\"multiselectMixin\",function(){return u.a}),n.d(e,\"pointerMixin\",function(){return a.a}),e.default=s.a},function(t,e){t.exports=function(t,e,n,i){if(!(t instanceof e)||void 0!==i&&i in t)throw TypeError(n+\": incorrect invocation!\");return t}},function(t,e,n){var i=n(14),r=n(28),o=n(23),s=n(19);t.exports=function(t,e,n,u,a){i(e);var l=r(t),c=o(l),f=s(l.length),p=a?f-1:0,h=a?-1:1;if(n<2)for(;;){if(p in c){u=c[p],p+=h;break}if(p+=h,a?p<0:f<=p)throw TypeError(\"Reduce of empty array with no initial value\")}for(;a?p>=0:f>p;p+=h)p in c&&(u=e(u,c[p],p,l));return u}},function(t,e,n){var i=n(5),r=n(42),o=n(1)(\"species\");t.exports=function(t){var e;return r(t)&&(e=t.constructor,\"function\"!=typeof e||e!==Array&&!r(e.prototype)||(e=void 0),i(e)&&null===(e=e[o])&&(e=void 0)),void 0===e?Array:e}},function(t,e,n){var i=n(63);t.exports=function(t,e){return new(i(t))(e)}},function(t,e,n){\"use strict\";var i=n(8),r=n(6),o=n(7),s=n(16),u=n(1);t.exports=function(t,e,n){var a=u(t),l=n(s,a,\"\"[t]),c=l[0],f=l[1];o(function(){var e={};return e[a]=function(){return 7},7!=\"\"[t](e)})&&(r(String.prototype,t,c),i(RegExp.prototype,a,2==e?function(t,e){return f.call(t,this,e)}:function(t){return f.call(t,this)}))}},function(t,e,n){var i=n(11),r=n(70),o=n(69),s=n(2),u=n(19),a=n(87),l={},c={},e=t.exports=function(t,e,n,f,p){var h,d,v,g,y=p?function(){return t}:a(t),m=i(n,f,e?2:1),b=0;if(\"function\"!=typeof y)throw TypeError(t+\" is not iterable!\");if(o(y)){for(h=u(t.length);h>b;b++)if((g=e?m(s(d=t[b])[0],d[1]):m(t[b]))===l||g===c)return g}else for(v=y.call(t);!(d=v.next()).done;)if((g=r(v,m,d.value,e))===l||g===c)return g};e.BREAK=l,e.RETURN=c},function(t,e,n){var i=n(5),r=n(82).set;t.exports=function(t,e,n){var o,s=e.constructor;return s!==n&&\"function\"==typeof s&&(o=s.prototype)!==n.prototype&&i(o)&&r&&r(t,o),t}},function(t,e){t.exports=function(t,e,n){var i=void 0===n;switch(e.length){case 0:return i?t():t.call(n);case 1:return i?t(e[0]):t.call(n,e[0]);case 2:return i?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return i?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return i?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},function(t,e,n){var i=n(15),r=n(1)(\"iterator\"),o=Array.prototype;t.exports=function(t){return void 0!==t&&(i.Array===t||o[r]===t)}},function(t,e,n){var i=n(2);t.exports=function(t,e,n,r){try{return r?e(i(n)[0],n[1]):e(n)}catch(e){var o=t.return;throw void 0!==o&&i(o.call(t)),e}}},function(t,e,n){\"use strict\";var i=n(44),r=n(25),o=n(26),s={};n(8)(s,n(1)(\"iterator\"),function(){return this}),t.exports=function(t,e,n){t.prototype=i(s,{next:r(1,n)}),o(t,e+\" Iterator\")}},function(t,e,n){\"use strict\";var i=n(24),r=n(3),o=n(6),s=n(8),u=n(15),a=n(71),l=n(26),c=n(78),f=n(1)(\"iterator\"),p=!([].keys&&\"next\"in[].keys()),h=function(){return this};t.exports=function(t,e,n,d,v,g,y){a(n,e,d);var m,b,_,x=function(t){if(!p&&t in L)return L[t];switch(t){case\"keys\":case\"values\":return function(){return new n(this,t)}}return function(){return new n(this,t)}},w=e+\" Iterator\",S=\"values\"==v,O=!1,L=t.prototype,k=L[f]||L[\"@@iterator\"]||v&&L[v],P=k||x(v),T=v?S?x(\"entries\"):P:void 0,V=\"Array\"==e?L.entries||k:k;if(V&&(_=c(V.call(new t)))!==Object.prototype&&_.next&&(l(_,w,!0),i||\"function\"==typeof _[f]||s(_,f,h)),S&&k&&\"values\"!==k.name&&(O=!0,P=function(){return k.call(this)}),i&&!y||!p&&!O&&L[f]||s(L,f,P),u[e]=P,u[w]=h,v)if(m={values:S?P:x(\"values\"),keys:g?P:x(\"keys\"),entries:T},y)for(b in m)b in L||o(L,b,m[b]);else r(r.P+r.F*(p||O),e,m);return m}},function(t,e,n){var i=n(1)(\"iterator\"),r=!1;try{var o=[7][i]();o.return=function(){r=!0},Array.from(o,function(){throw 2})}catch(t){}t.exports=function(t,e){if(!e&&!r)return!1;var n=!1;try{var o=[7],s=o[i]();s.next=function(){return{done:n=!0}},o[i]=function(){return s},t(o)}catch(t){}return n}},function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},function(t,e,n){var i=n(0),r=n(52).set,o=i.MutationObserver||i.WebKitMutationObserver,s=i.process,u=i.Promise,a=\"process\"==n(9)(s);t.exports=function(){var t,e,n,l=function(){var i,r;for(a&&(i=s.domain)&&i.exit();t;){r=t.fn,t=t.next;try{r()}catch(i){throw t?n():e=void 0,i}}e=void 0,i&&i.enter()};if(a)n=function(){s.nextTick(l)};else if(!o||i.navigator&&i.navigator.standalone)if(u&&u.resolve){var c=u.resolve(void 0);n=function(){c.then(l)}}else n=function(){r.call(i,l)};else{var f=!0,p=document.createTextNode(\"\");new o(l).observe(p,{characterData:!0}),n=function(){p.data=f=!f}}return function(i){var r={fn:i,next:void 0};e&&(e.next=r),t||(t=r,n()),e=r}}},function(t,e,n){var i=n(13),r=n(2),o=n(47);t.exports=n(4)?Object.defineProperties:function(t,e){r(t);for(var n,s=o(e),u=s.length,a=0;u>a;)i.f(t,n=s[a++],e[n]);return t}},function(t,e,n){var i=n(46),r=n(22).concat(\"length\",\"prototype\");e.f=Object.getOwnPropertyNames||function(t){return i(t,r)}},function(t,e,n){var i=n(12),r=n(28),o=n(27)(\"IE_PROTO\"),s=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=r(t),i(t,o)?t[o]:\"function\"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?s:null}},function(t,e){e.f={}.propertyIsEnumerable},function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},function(t,e,n){var i=n(6);t.exports=function(t,e,n){for(var r in e)i(t,r,e[r],n);return t}},function(t,e,n){var i=n(5),r=n(2),o=function(t,e){if(r(t),!i(e)&&null!==e)throw TypeError(e+\": can't set as prototype!\")};t.exports={set:Object.setPrototypeOf||(\"__proto__\"in{}?function(t,e,i){try{i=n(11)(Function.call,n(45).f(Object.prototype,\"__proto__\").set,2),i(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function(t,n){return o(t,n),e?t.__proto__=n:i(t,n),t}}({},!1):void 0),check:o}},function(t,e,n){\"use strict\";var i=n(0),r=n(13),o=n(4),s=n(1)(\"species\");t.exports=function(t){var e=i[t];o&&e&&!e[s]&&r.f(e,s,{configurable:!0,get:function(){return this}})}},function(t,e){t.exports=\"\\t\\n\\v\\f\\r \\u2028\\u2029\\ufeff\"},function(t,e,n){var i=n(53),r=Math.max,o=Math.min;t.exports=function(t,e){return t=i(t),t<0?r(t+e,0):o(t,e)}},function(t,e,n){var i=n(0),r=i.navigator;t.exports=r&&r.userAgent||\"\"},function(t,e,n){var i=n(38),r=n(1)(\"iterator\"),o=n(15);t.exports=n(10).getIteratorMethod=function(t){if(void 0!=t)return t[r]||t[\"@@iterator\"]||o[i(t)]}},function(t,e,n){\"use strict\";var i=n(3),r=n(20)(2);i(i.P+i.F*!n(17)([].filter,!0),\"Array\",{filter:function(t){return r(this,t,arguments[1])}})},function(t,e,n){\"use strict\";var i=n(3),r=n(37)(!1),o=[].indexOf,s=!!o&&1/[1].indexOf(1,-0)<0;i(i.P+i.F*(s||!n(17)(o)),\"Array\",{indexOf:function(t){return s?o.apply(this,arguments)||0:r(this,t,arguments[1])}})},function(t,e,n){var i=n(3);i(i.S,\"Array\",{isArray:n(42)})},function(t,e,n){\"use strict\";var i=n(3),r=n(20)(1);i(i.P+i.F*!n(17)([].map,!0),\"Array\",{map:function(t){return r(this,t,arguments[1])}})},function(t,e,n){\"use strict\";var i=n(3),r=n(62);i(i.P+i.F*!n(17)([].reduce,!0),\"Array\",{reduce:function(t){return r(this,t,arguments.length,arguments[1],!1)}})},function(t,e,n){var i=Date.prototype,r=i.toString,o=i.getTime;new Date(NaN)+\"\"!=\"Invalid Date\"&&n(6)(i,\"toString\",function(){var t=o.call(this);return t===t?r.call(this):\"Invalid Date\"})},function(t,e,n){n(4)&&\"g\"!=/./g.flags&&n(13).f(RegExp.prototype,\"flags\",{configurable:!0,get:n(39)})},function(t,e,n){n(65)(\"search\",1,function(t,e,n){return[function(n){\"use strict\";var i=t(this),r=void 0==n?void 0:n[e];return void 0!==r?r.call(n,i):new RegExp(n)[e](String(i))},n]})},function(t,e,n){\"use strict\";n(94);var i=n(2),r=n(39),o=n(4),s=/./.toString,u=function(t){n(6)(RegExp.prototype,\"toString\",t,!0)};n(7)(function(){return\"/a/b\"!=s.call({source:\"a\",flags:\"b\"})})?u(function(){var t=i(this);return\"/\".concat(t.source,\"/\",\"flags\"in t?t.flags:!o&&t instanceof RegExp?r.call(t):void 0)}):\"toString\"!=s.name&&u(function(){return s.call(this)})},function(t,e,n){\"use strict\";n(51)(\"trim\",function(t){return function(){return t(this,3)}})},function(t,e,n){for(var i=n(34),r=n(47),o=n(6),s=n(0),u=n(8),a=n(15),l=n(1),c=l(\"iterator\"),f=l(\"toStringTag\"),p=a.Array,h={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},d=r(h),v=0;v<d.length;v++){var g,y=d[v],m=h[y],b=s[y],_=b&&b.prototype;if(_&&(_[c]||u(_,c,p),_[f]||u(_,f,y),a[y]=p,m))for(g in i)_[g]||o(_,g,i[g],!0)}},function(t,e){},function(t,e){t.exports=function(t,e,n,i,r,o){var s,u=t=t||{},a=typeof t.default;\"object\"!==a&&\"function\"!==a||(s=t,u=t.default);var l=\"function\"==typeof u?u.options:u;e&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns,l._compiled=!0),n&&(l.functional=!0),r&&(l._scopeId=r);var c;if(o?(c=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},l._ssrRegister=c):i&&(c=i),c){var f=l.functional,p=f?l.render:l.beforeCreate;f?(l._injectStyles=c,l.render=function(t,e){return c.call(e),p(t,e)}):l.beforeCreate=p?[].concat(p,c):[c]}return{esModule:s,exports:u,options:l}}},function(t,e,n){\"use strict\";var i=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"div\",{staticClass:\"multiselect\",class:{\"multiselect--active\":t.isOpen,\"multiselect--disabled\":t.disabled,\"multiselect--above\":t.isAbove},attrs:{tabindex:t.searchable?-1:t.tabindex},on:{focus:function(e){t.activate()},blur:function(e){!t.searchable&&t.deactivate()},keydown:[function(e){return\"button\"in e||!t._k(e.keyCode,\"down\",40,e.key,[\"Down\",\"ArrowDown\"])?e.target!==e.currentTarget?null:(e.preventDefault(),void t.pointerForward()):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"up\",38,e.key,[\"Up\",\"ArrowUp\"])?e.target!==e.currentTarget?null:(e.preventDefault(),void t.pointerBackward()):null}],keypress:function(e){return\"button\"in e||!t._k(e.keyCode,\"enter\",13,e.key,\"Enter\")||!t._k(e.keyCode,\"tab\",9,e.key,\"Tab\")?(e.stopPropagation(),e.target!==e.currentTarget?null:void t.addPointerElement(e)):null},keyup:function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"esc\",27,e.key,\"Escape\"))return null;t.deactivate()}}},[t._t(\"caret\",[n(\"div\",{staticClass:\"multiselect__select\",on:{mousedown:function(e){e.preventDefault(),e.stopPropagation(),t.toggle()}}})],{toggle:t.toggle}),t._v(\" \"),t._t(\"clear\",null,{search:t.search}),t._v(\" \"),n(\"div\",{ref:\"tags\",staticClass:\"multiselect__tags\"},[t._t(\"selection\",[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.visibleValues.length>0,expression:\"visibleValues.length > 0\"}],staticClass:\"multiselect__tags-wrap\"},[t._l(t.visibleValues,function(e,i){return[t._t(\"tag\",[n(\"span\",{key:i,staticClass:\"multiselect__tag\"},[n(\"span\",{domProps:{textContent:t._s(t.getOptionLabel(e))}}),t._v(\" \"),n(\"i\",{staticClass:\"multiselect__tag-icon\",attrs:{\"aria-hidden\":\"true\",tabindex:\"1\"},on:{keypress:function(n){if(!(\"button\"in n)&&t._k(n.keyCode,\"enter\",13,n.key,\"Enter\"))return null;n.preventDefault(),t.removeElement(e)},mousedown:function(n){n.preventDefault(),t.removeElement(e)}}})])],{option:e,search:t.search,remove:t.removeElement})]})],2),t._v(\" \"),t.internalValue&&t.internalValue.length>t.limit?[t._t(\"limit\",[n(\"strong\",{staticClass:\"multiselect__strong\",domProps:{textContent:t._s(t.limitText(t.internalValue.length-t.limit))}})])]:t._e()],{search:t.search,remove:t.removeElement,values:t.visibleValues,isOpen:t.isOpen}),t._v(\" \"),n(\"transition\",{attrs:{name:\"multiselect__loading\"}},[t._t(\"loading\",[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.loading,expression:\"loading\"}],staticClass:\"multiselect__spinner\"})])],2),t._v(\" \"),t.searchable?n(\"input\",{ref:\"search\",staticClass:\"multiselect__input\",style:t.inputStyle,attrs:{name:t.name,id:t.id,type:\"text\",autocomplete:\"nope\",placeholder:t.placeholder,disabled:t.disabled,tabindex:t.tabindex},domProps:{value:t.search},on:{input:function(e){t.updateSearch(e.target.value)},focus:function(e){e.preventDefault(),t.activate()},blur:function(e){e.preventDefault(),t.deactivate()},keyup:function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"esc\",27,e.key,\"Escape\"))return null;t.deactivate()},keydown:[function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"down\",40,e.key,[\"Down\",\"ArrowDown\"]))return null;e.preventDefault(),t.pointerForward()},function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"up\",38,e.key,[\"Up\",\"ArrowUp\"]))return null;e.preventDefault(),t.pointerBackward()},function(e){if(!(\"button\"in e)&&t._k(e.keyCode,\"delete\",[8,46],e.key,[\"Backspace\",\"Delete\"]))return null;e.stopPropagation(),t.removeLastElement()}],keypress:function(e){return\"button\"in e||!t._k(e.keyCode,\"enter\",13,e.key,\"Enter\")?(e.preventDefault(),e.stopPropagation(),e.target!==e.currentTarget?null:void t.addPointerElement(e)):null}}}):t._e(),t._v(\" \"),t.isSingleLabelVisible?n(\"span\",{staticClass:\"multiselect__single\",on:{mousedown:function(e){return e.preventDefault(),t.toggle(e)}}},[t._t(\"singleLabel\",[[t._v(t._s(t.currentOptionLabel))]],{option:t.singleValue})],2):t._e(),t._v(\" \"),t.isPlaceholderVisible?n(\"span\",{staticClass:\"multiselect__placeholder\",on:{mousedown:function(e){return e.preventDefault(),t.toggle(e)}}},[t._t(\"placeholder\",[t._v(\"\\n \"+t._s(t.placeholder)+\"\\n \")])],2):t._e()],2),t._v(\" \"),n(\"transition\",{attrs:{name:\"multiselect\"}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.isOpen,expression:\"isOpen\"}],ref:\"list\",staticClass:\"multiselect__content-wrapper\",style:{maxHeight:t.optimizedHeight+\"px\"},attrs:{tabindex:\"-1\"},on:{focus:t.activate,mousedown:function(t){t.preventDefault()}}},[n(\"ul\",{staticClass:\"multiselect__content\",style:t.contentStyle},[t._t(\"beforeList\"),t._v(\" \"),t.multiple&&t.max===t.internalValue.length?n(\"li\",[n(\"span\",{staticClass:\"multiselect__option\"},[t._t(\"maxElements\",[t._v(\"Maximum of \"+t._s(t.max)+\" options selected. First remove a selected option to select another.\")])],2)]):t._e(),t._v(\" \"),!t.max||t.internalValue.length<t.max?t._l(t.filteredOptions,function(e,i){return n(\"li\",{key:i,staticClass:\"multiselect__element\"},[e&&(e.$isLabel||e.$isDisabled)?t._e():n(\"span\",{staticClass:\"multiselect__option\",class:t.optionHighlight(i,e),attrs:{\"data-select\":e&&e.isTag?t.tagPlaceholder:t.selectLabelText,\"data-selected\":t.selectedLabelText,\"data-deselect\":t.deselectLabelText},on:{click:function(n){n.stopPropagation(),t.select(e)},mouseenter:function(e){if(e.target!==e.currentTarget)return null;t.pointerSet(i)}}},[t._t(\"option\",[n(\"span\",[t._v(t._s(t.getOptionLabel(e)))])],{option:e,search:t.search})],2),t._v(\" \"),e&&(e.$isLabel||e.$isDisabled)?n(\"span\",{staticClass:\"multiselect__option\",class:t.groupHighlight(i,e),attrs:{\"data-select\":t.groupSelect&&t.selectGroupLabelText,\"data-deselect\":t.groupSelect&&t.deselectGroupLabelText},on:{mouseenter:function(e){if(e.target!==e.currentTarget)return null;t.groupSelect&&t.pointerSet(i)},mousedown:function(n){n.preventDefault(),t.selectGroup(e)}}},[t._t(\"option\",[n(\"span\",[t._v(t._s(t.getOptionLabel(e)))])],{option:e,search:t.search})],2):t._e()])}):t._e(),t._v(\" \"),n(\"li\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showNoResults&&0===t.filteredOptions.length&&t.search&&!t.loading,expression:\"showNoResults && (filteredOptions.length === 0 && search && !loading)\"}]},[n(\"span\",{staticClass:\"multiselect__option\"},[t._t(\"noResult\",[t._v(\"No elements found. Consider changing the search query.\")],{search:t.search})],2)]),t._v(\" \"),n(\"li\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showNoOptions&&0===t.options.length&&!t.search&&!t.loading,expression:\"showNoOptions && (options.length === 0 && !search && !loading)\"}]},[n(\"span\",{staticClass:\"multiselect__option\"},[t._t(\"noOptions\",[t._v(\"List is empty.\")])],2)]),t._v(\" \"),t._t(\"afterList\")],2)])])],2)},r=[],o={render:i,staticRenderFns:r};e.a=o}])});","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\n }\n});\n","module.exports = require('./lib/linkify-string').default;\n","'use strict';\n\nexports.__esModule = true;\n\nvar _linkify = require('./linkify');\n\nvar linkify = _interopRequireWildcard(_linkify);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nvar tokenize = linkify.tokenize,\n options = linkify.options; /**\n \tConvert strings of text into linkable HTML text\n */\n\nvar Options = options.Options;\n\n\nfunction escapeText(text) {\n\treturn text.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');\n}\n\nfunction escapeAttr(href) {\n\treturn href.replace(/\"/g, '"');\n}\n\nfunction attributesToString(attributes) {\n\tif (!attributes) {\n\t\treturn '';\n\t}\n\tvar result = [];\n\n\tfor (var attr in attributes) {\n\t\tvar val = attributes[attr] + '';\n\t\tresult.push(attr + '=\"' + escapeAttr(val) + '\"');\n\t}\n\treturn result.join(' ');\n}\n\nfunction linkifyStr(str) {\n\tvar opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\topts = new Options(opts);\n\n\tvar tokens = tokenize(str);\n\tvar result = [];\n\n\tfor (var i = 0; i < tokens.length; i++) {\n\t\tvar token = tokens[i];\n\n\t\tif (token.type === 'nl' && opts.nl2br) {\n\t\t\tresult.push('<br>\\n');\n\t\t\tcontinue;\n\t\t} else if (!token.isLink || !opts.check(token)) {\n\t\t\tresult.push(escapeText(token.toString()));\n\t\t\tcontinue;\n\t\t}\n\n\t\tvar _opts$resolve = opts.resolve(token),\n\t\t formatted = _opts$resolve.formatted,\n\t\t formattedHref = _opts$resolve.formattedHref,\n\t\t tagName = _opts$resolve.tagName,\n\t\t className = _opts$resolve.className,\n\t\t target = _opts$resolve.target,\n\t\t attributes = _opts$resolve.attributes;\n\n\t\tvar link = '<' + tagName + ' href=\"' + escapeAttr(formattedHref) + '\"';\n\n\t\tif (className) {\n\t\t\tlink += ' class=\"' + escapeAttr(className) + '\"';\n\t\t}\n\n\t\tif (target) {\n\t\t\tlink += ' target=\"' + escapeAttr(target) + '\"';\n\t\t}\n\n\t\tif (attributes) {\n\t\t\tlink += ' ' + attributesToString(attributes);\n\t\t}\n\n\t\tlink += '>' + escapeText(formatted) + '</' + tagName + '>';\n\t\tresult.push(link);\n\t}\n\n\treturn result.join('');\n}\n\nif (!String.prototype.linkify) {\n\ttry {\n\t\tObject.defineProperty(String.prototype, 'linkify', {\n\t\t\tset: function set() {},\n\t\t\tget: function get() {\n\t\t\t\treturn function linkify(opts) {\n\t\t\t\t\treturn linkifyStr(this, opts);\n\t\t\t\t};\n\t\t\t}\n\t\t});\n\t} catch (e) {\n\t\t// IE 8 doesn't like Object.defineProperty on non-DOM objects\n\t\tif (!String.prototype.linkify) {\n\t\t\tString.prototype.linkify = function (opts) {\n\t\t\t\treturn linkifyStr(this, opts);\n\t\t\t};\n\t\t}\n\t}\n}\n\nexports.default = linkifyStr;","'use strict';\n\nexports.__esModule = true;\nexports.tokenize = exports.test = exports.scanner = exports.parser = exports.options = exports.inherits = exports.find = undefined;\n\nvar _class = require('./linkify/utils/class');\n\nvar _options = require('./linkify/utils/options');\n\nvar options = _interopRequireWildcard(_options);\n\nvar _scanner = require('./linkify/core/scanner');\n\nvar scanner = _interopRequireWildcard(_scanner);\n\nvar _parser = require('./linkify/core/parser');\n\nvar parser = _interopRequireWildcard(_parser);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nif (!Array.isArray) {\n\tArray.isArray = function (arg) {\n\t\treturn Object.prototype.toString.call(arg) === '[object Array]';\n\t};\n}\n\n/**\n\tConverts a string into tokens that represent linkable and non-linkable bits\n\t@method tokenize\n\t@param {String} str\n\t@return {Array} tokens\n*/\nvar tokenize = function tokenize(str) {\n\treturn parser.run(scanner.run(str));\n};\n\n/**\n\tReturns a list of linkable items in the given string.\n*/\nvar find = function find(str) {\n\tvar type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n\tvar tokens = tokenize(str);\n\tvar filtered = [];\n\n\tfor (var i = 0; i < tokens.length; i++) {\n\t\tvar token = tokens[i];\n\t\tif (token.isLink && (!type || token.type === type)) {\n\t\t\tfiltered.push(token.toObject());\n\t\t}\n\t}\n\n\treturn filtered;\n};\n\n/**\n\tIs the given string valid linkable text of some sort\n\tNote that this does not trim the text for you.\n\n\tOptionally pass in a second `type` param, which is the type of link to test\n\tfor.\n\n\tFor example,\n\n\t\ttest(str, 'email');\n\n\tWill return `true` if str is a valid email.\n*/\nvar test = function test(str) {\n\tvar type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n\tvar tokens = tokenize(str);\n\treturn tokens.length === 1 && tokens[0].isLink && (!type || tokens[0].type === type);\n};\n\n// Scanner and parser provide states and tokens for the lexicographic stage\n// (will be used to add additional link types)\nexports.find = find;\nexports.inherits = _class.inherits;\nexports.options = options;\nexports.parser = parser;\nexports.scanner = scanner;\nexports.test = test;\nexports.tokenize = tokenize;","'use strict';\n\nexports.__esModule = true;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar defaults = {\n\tdefaultProtocol: 'http',\n\tevents: null,\n\tformat: noop,\n\tformatHref: noop,\n\tnl2br: false,\n\ttagName: 'a',\n\ttarget: typeToTarget,\n\tvalidate: true,\n\tignoreTags: [],\n\tattributes: null,\n\tclassName: 'linkified' // Deprecated value - no default class will be provided in the future\n};\n\nexports.defaults = defaults;\nexports.Options = Options;\nexports.contains = contains;\n\n\nfunction Options(opts) {\n\topts = opts || {};\n\n\tthis.defaultProtocol = opts.hasOwnProperty('defaultProtocol') ? opts.defaultProtocol : defaults.defaultProtocol;\n\tthis.events = opts.hasOwnProperty('events') ? opts.events : defaults.events;\n\tthis.format = opts.hasOwnProperty('format') ? opts.format : defaults.format;\n\tthis.formatHref = opts.hasOwnProperty('formatHref') ? opts.formatHref : defaults.formatHref;\n\tthis.nl2br = opts.hasOwnProperty('nl2br') ? opts.nl2br : defaults.nl2br;\n\tthis.tagName = opts.hasOwnProperty('tagName') ? opts.tagName : defaults.tagName;\n\tthis.target = opts.hasOwnProperty('target') ? opts.target : defaults.target;\n\tthis.validate = opts.hasOwnProperty('validate') ? opts.validate : defaults.validate;\n\tthis.ignoreTags = [];\n\n\t// linkAttributes and linkClass is deprecated\n\tthis.attributes = opts.attributes || opts.linkAttributes || defaults.attributes;\n\tthis.className = opts.hasOwnProperty('className') ? opts.className : opts.linkClass || defaults.className;\n\n\t// Make all tags names upper case\n\tvar ignoredTags = opts.hasOwnProperty('ignoreTags') ? opts.ignoreTags : defaults.ignoreTags;\n\tfor (var i = 0; i < ignoredTags.length; i++) {\n\t\tthis.ignoreTags.push(ignoredTags[i].toUpperCase());\n\t}\n}\n\nOptions.prototype = {\n\t/**\n * Given the token, return all options for how it should be displayed\n */\n\tresolve: function resolve(token) {\n\t\tvar href = token.toHref(this.defaultProtocol);\n\t\treturn {\n\t\t\tformatted: this.get('format', token.toString(), token),\n\t\t\tformattedHref: this.get('formatHref', href, token),\n\t\t\ttagName: this.get('tagName', href, token),\n\t\t\tclassName: this.get('className', href, token),\n\t\t\ttarget: this.get('target', href, token),\n\t\t\tevents: this.getObject('events', href, token),\n\t\t\tattributes: this.getObject('attributes', href, token)\n\t\t};\n\t},\n\n\n\t/**\n * Returns true or false based on whether a token should be displayed as a\n * link based on the user options. By default,\n */\n\tcheck: function check(token) {\n\t\treturn this.get('validate', token.toString(), token);\n\t},\n\n\n\t// Private methods\n\n\t/**\n * Resolve an option's value based on the value of the option and the given\n * params.\n * @param {String} key Name of option to use\n * @param operator will be passed to the target option if it's method\n * @param {MultiToken} token The token from linkify.tokenize\n */\n\tget: function get(key, operator, token) {\n\t\tvar optionValue = void 0,\n\t\t option = this[key];\n\t\tif (!option) {\n\t\t\treturn option;\n\t\t}\n\n\t\tswitch (typeof option === 'undefined' ? 'undefined' : _typeof(option)) {\n\t\t\tcase 'function':\n\t\t\t\treturn option(operator, token.type);\n\t\t\tcase 'object':\n\t\t\t\toptionValue = option.hasOwnProperty(token.type) ? option[token.type] : defaults[key];\n\t\t\t\treturn typeof optionValue === 'function' ? optionValue(operator, token.type) : optionValue;\n\t\t}\n\n\t\treturn option;\n\t},\n\tgetObject: function getObject(key, operator, token) {\n\t\tvar option = this[key];\n\t\treturn typeof option === 'function' ? option(operator, token.type) : option;\n\t}\n};\n\n/**\n * Quick indexOf replacement for checking the ignoreTags option\n */\nfunction contains(arr, value) {\n\tfor (var i = 0; i < arr.length; i++) {\n\t\tif (arr[i] === value) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\nfunction noop(val) {\n\treturn val;\n}\n\nfunction typeToTarget(href, type) {\n\treturn type === 'url' ? '_blank' : null;\n}","'use strict';\n\nexports.__esModule = true;\nexports.start = exports.run = exports.TOKENS = exports.State = undefined;\n\nvar _state = require('./state');\n\nvar _text = require('./tokens/text');\n\nvar TOKENS = _interopRequireWildcard(_text);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nvar tlds = 'aaa|aarp|abarth|abb|abbott|abbvie|abc|able|abogado|abudhabi|ac|academy|accenture|accountant|accountants|aco|active|actor|ad|adac|ads|adult|ae|aeg|aero|aetna|af|afamilycompany|afl|africa|ag|agakhan|agency|ai|aig|aigo|airbus|airforce|airtel|akdn|al|alfaromeo|alibaba|alipay|allfinanz|allstate|ally|alsace|alstom|am|americanexpress|americanfamily|amex|amfam|amica|amsterdam|analytics|android|anquan|anz|ao|aol|apartments|app|apple|aq|aquarelle|ar|arab|aramco|archi|army|arpa|art|arte|as|asda|asia|associates|at|athleta|attorney|au|auction|audi|audible|audio|auspost|author|auto|autos|avianca|aw|aws|ax|axa|az|azure|ba|baby|baidu|banamex|bananarepublic|band|bank|bar|barcelona|barclaycard|barclays|barefoot|bargains|baseball|basketball|bauhaus|bayern|bb|bbc|bbt|bbva|bcg|bcn|bd|be|beats|beauty|beer|bentley|berlin|best|bestbuy|bet|bf|bg|bh|bharti|bi|bible|bid|bike|bing|bingo|bio|biz|bj|black|blackfriday|blanco|blockbuster|blog|bloomberg|blue|bm|bms|bmw|bn|bnl|bnpparibas|bo|boats|boehringer|bofa|bom|bond|boo|book|booking|boots|bosch|bostik|boston|bot|boutique|box|br|bradesco|bridgestone|broadway|broker|brother|brussels|bs|bt|budapest|bugatti|build|builders|business|buy|buzz|bv|bw|by|bz|bzh|ca|cab|cafe|cal|call|calvinklein|cam|camera|camp|cancerresearch|canon|capetown|capital|capitalone|car|caravan|cards|care|career|careers|cars|cartier|casa|case|caseih|cash|casino|cat|catering|catholic|cba|cbn|cbre|cbs|cc|cd|ceb|center|ceo|cern|cf|cfa|cfd|cg|ch|chanel|channel|chase|chat|cheap|chintai|chloe|christmas|chrome|chrysler|church|ci|cipriani|circle|cisco|citadel|citi|citic|city|cityeats|ck|cl|claims|cleaning|click|clinic|clinique|clothing|cloud|club|clubmed|cm|cn|co|coach|codes|coffee|college|cologne|com|comcast|commbank|community|company|compare|computer|comsec|condos|construction|consulting|contact|contractors|cooking|cookingchannel|cool|coop|corsica|country|coupon|coupons|courses|cr|credit|creditcard|creditunion|cricket|crown|crs|cruise|cruises|csc|cu|cuisinella|cv|cw|cx|cy|cymru|cyou|cz|dabur|dad|dance|data|date|dating|datsun|day|dclk|dds|de|deal|dealer|deals|degree|delivery|dell|deloitte|delta|democrat|dental|dentist|desi|design|dev|dhl|diamonds|diet|digital|direct|directory|discount|discover|dish|diy|dj|dk|dm|dnp|do|docs|doctor|dodge|dog|doha|domains|dot|download|drive|dtv|dubai|duck|dunlop|duns|dupont|durban|dvag|dvr|dz|earth|eat|ec|eco|edeka|edu|education|ee|eg|email|emerck|energy|engineer|engineering|enterprises|epost|epson|equipment|er|ericsson|erni|es|esq|estate|esurance|et|etisalat|eu|eurovision|eus|events|everbank|exchange|expert|exposed|express|extraspace|fage|fail|fairwinds|faith|family|fan|fans|farm|farmers|fashion|fast|fedex|feedback|ferrari|ferrero|fi|fiat|fidelity|fido|film|final|finance|financial|fire|firestone|firmdale|fish|fishing|fit|fitness|fj|fk|flickr|flights|flir|florist|flowers|fly|fm|fo|foo|food|foodnetwork|football|ford|forex|forsale|forum|foundation|fox|fr|free|fresenius|frl|frogans|frontdoor|frontier|ftr|fujitsu|fujixerox|fun|fund|furniture|futbol|fyi|ga|gal|gallery|gallo|gallup|game|games|gap|garden|gb|gbiz|gd|gdn|ge|gea|gent|genting|george|gf|gg|ggee|gh|gi|gift|gifts|gives|giving|gl|glade|glass|gle|global|globo|gm|gmail|gmbh|gmo|gmx|gn|godaddy|gold|goldpoint|golf|goo|goodhands|goodyear|goog|google|gop|got|gov|gp|gq|gr|grainger|graphics|gratis|green|gripe|grocery|group|gs|gt|gu|guardian|gucci|guge|guide|guitars|guru|gw|gy|hair|hamburg|hangout|haus|hbo|hdfc|hdfcbank|health|healthcare|help|helsinki|here|hermes|hgtv|hiphop|hisamitsu|hitachi|hiv|hk|hkt|hm|hn|hockey|holdings|holiday|homedepot|homegoods|homes|homesense|honda|honeywell|horse|hospital|host|hosting|hot|hoteles|hotels|hotmail|house|how|hr|hsbc|ht|htc|hu|hughes|hyatt|hyundai|ibm|icbc|ice|icu|id|ie|ieee|ifm|ikano|il|im|imamat|imdb|immo|immobilien|in|industries|infiniti|info|ing|ink|institute|insurance|insure|int|intel|international|intuit|investments|io|ipiranga|iq|ir|irish|is|iselect|ismaili|ist|istanbul|it|itau|itv|iveco|iwc|jaguar|java|jcb|jcp|je|jeep|jetzt|jewelry|jio|jlc|jll|jm|jmp|jnj|jo|jobs|joburg|jot|joy|jp|jpmorgan|jprs|juegos|juniper|kaufen|kddi|ke|kerryhotels|kerrylogistics|kerryproperties|kfh|kg|kh|ki|kia|kim|kinder|kindle|kitchen|kiwi|km|kn|koeln|komatsu|kosher|kp|kpmg|kpn|kr|krd|kred|kuokgroup|kw|ky|kyoto|kz|la|lacaixa|ladbrokes|lamborghini|lamer|lancaster|lancia|lancome|land|landrover|lanxess|lasalle|lat|latino|latrobe|law|lawyer|lb|lc|lds|lease|leclerc|lefrak|legal|lego|lexus|lgbt|li|liaison|lidl|life|lifeinsurance|lifestyle|lighting|like|lilly|limited|limo|lincoln|linde|link|lipsy|live|living|lixil|lk|loan|loans|locker|locus|loft|lol|london|lotte|lotto|love|lpl|lplfinancial|lr|ls|lt|ltd|ltda|lu|lundbeck|lupin|luxe|luxury|lv|ly|ma|macys|madrid|maif|maison|makeup|man|management|mango|map|market|marketing|markets|marriott|marshalls|maserati|mattel|mba|mc|mckinsey|md|me|med|media|meet|melbourne|meme|memorial|men|menu|meo|merckmsd|metlife|mg|mh|miami|microsoft|mil|mini|mint|mit|mitsubishi|mk|ml|mlb|mls|mm|mma|mn|mo|mobi|mobile|mobily|moda|moe|moi|mom|monash|money|monster|mopar|mormon|mortgage|moscow|moto|motorcycles|mov|movie|movistar|mp|mq|mr|ms|msd|mt|mtn|mtr|mu|museum|mutual|mv|mw|mx|my|mz|na|nab|nadex|nagoya|name|nationwide|natura|navy|nba|nc|ne|nec|net|netbank|netflix|network|neustar|new|newholland|news|next|nextdirect|nexus|nf|nfl|ng|ngo|nhk|ni|nico|nike|nikon|ninja|nissan|nissay|nl|no|nokia|northwesternmutual|norton|now|nowruz|nowtv|np|nr|nra|nrw|ntt|nu|nyc|nz|obi|observer|off|office|okinawa|olayan|olayangroup|oldnavy|ollo|om|omega|one|ong|onl|online|onyourside|ooo|open|oracle|orange|org|organic|origins|osaka|otsuka|ott|ovh|pa|page|panasonic|panerai|paris|pars|partners|parts|party|passagens|pay|pccw|pe|pet|pf|pfizer|pg|ph|pharmacy|phd|philips|phone|photo|photography|photos|physio|piaget|pics|pictet|pictures|pid|pin|ping|pink|pioneer|pizza|pk|pl|place|play|playstation|plumbing|plus|pm|pn|pnc|pohl|poker|politie|porn|post|pr|pramerica|praxi|press|prime|pro|prod|productions|prof|progressive|promo|properties|property|protection|pru|prudential|ps|pt|pub|pw|pwc|py|qa|qpon|quebec|quest|qvc|racing|radio|raid|re|read|realestate|realtor|realty|recipes|red|redstone|redumbrella|rehab|reise|reisen|reit|reliance|ren|rent|rentals|repair|report|republican|rest|restaurant|review|reviews|rexroth|rich|richardli|ricoh|rightathome|ril|rio|rip|rmit|ro|rocher|rocks|rodeo|rogers|room|rs|rsvp|ru|rugby|ruhr|run|rw|rwe|ryukyu|sa|saarland|safe|safety|sakura|sale|salon|samsclub|samsung|sandvik|sandvikcoromant|sanofi|sap|sapo|sarl|sas|save|saxo|sb|sbi|sbs|sc|sca|scb|schaeffler|schmidt|scholarships|school|schule|schwarz|science|scjohnson|scor|scot|sd|se|search|seat|secure|security|seek|select|sener|services|ses|seven|sew|sex|sexy|sfr|sg|sh|shangrila|sharp|shaw|shell|shia|shiksha|shoes|shop|shopping|shouji|show|showtime|shriram|si|silk|sina|singles|site|sj|sk|ski|skin|sky|skype|sl|sling|sm|smart|smile|sn|sncf|so|soccer|social|softbank|software|sohu|solar|solutions|song|sony|soy|space|spiegel|spot|spreadbetting|sr|srl|srt|st|stada|staples|star|starhub|statebank|statefarm|statoil|stc|stcgroup|stockholm|storage|store|stream|studio|study|style|su|sucks|supplies|supply|support|surf|surgery|suzuki|sv|swatch|swiftcover|swiss|sx|sy|sydney|symantec|systems|sz|tab|taipei|talk|taobao|target|tatamotors|tatar|tattoo|tax|taxi|tc|tci|td|tdk|team|tech|technology|tel|telecity|telefonica|temasek|tennis|teva|tf|tg|th|thd|theater|theatre|tiaa|tickets|tienda|tiffany|tips|tires|tirol|tj|tjmaxx|tjx|tk|tkmaxx|tl|tm|tmall|tn|to|today|tokyo|tools|top|toray|toshiba|total|tours|town|toyota|toys|tr|trade|trading|training|travel|travelchannel|travelers|travelersinsurance|trust|trv|tt|tube|tui|tunes|tushu|tv|tvs|tw|tz|ua|ubank|ubs|uconnect|ug|uk|unicom|university|uno|uol|ups|us|uy|uz|va|vacations|vana|vanguard|vc|ve|vegas|ventures|verisign|versicherung|vet|vg|vi|viajes|video|vig|viking|villas|vin|vip|virgin|visa|vision|vista|vistaprint|viva|vivo|vlaanderen|vn|vodka|volkswagen|volvo|vote|voting|voto|voyage|vu|vuelos|wales|walmart|walter|wang|wanggou|warman|watch|watches|weather|weatherchannel|webcam|weber|website|wed|wedding|weibo|weir|wf|whoswho|wien|wiki|williamhill|win|windows|wine|winners|wme|wolterskluwer|woodside|work|works|world|wow|ws|wtc|wtf|xbox|xerox|xfinity|xihuan|xin|xn--11b4c3d|xn--1ck2e1b|xn--1qqw23a|xn--2scrj9c|xn--30rr7y|xn--3bst00m|xn--3ds443g|xn--3e0b707e|xn--3hcrj9c|xn--3oq18vl8pn36a|xn--3pxu8k|xn--42c2d9a|xn--45br5cyl|xn--45brj9c|xn--45q11c|xn--4gbrim|xn--54b7fta0cc|xn--55qw42g|xn--55qx5d|xn--5su34j936bgsg|xn--5tzm5g|xn--6frz82g|xn--6qq986b3xl|xn--80adxhks|xn--80ao21a|xn--80aqecdr1a|xn--80asehdb|xn--80aswg|xn--8y0a063a|xn--90a3ac|xn--90ae|xn--90ais|xn--9dbq2a|xn--9et52u|xn--9krt00a|xn--b4w605ferd|xn--bck1b9a5dre4c|xn--c1avg|xn--c2br7g|xn--cck2b3b|xn--cg4bki|xn--clchc0ea0b2g2a9gcd|xn--czr694b|xn--czrs0t|xn--czru2d|xn--d1acj3b|xn--d1alf|xn--e1a4c|xn--eckvdtc9d|xn--efvy88h|xn--estv75g|xn--fct429k|xn--fhbei|xn--fiq228c5hs|xn--fiq64b|xn--fiqs8s|xn--fiqz9s|xn--fjq720a|xn--flw351e|xn--fpcrj9c3d|xn--fzc2c9e2c|xn--fzys8d69uvgm|xn--g2xx48c|xn--gckr3f0f|xn--gecrj9c|xn--gk3at1e|xn--h2breg3eve|xn--h2brj9c|xn--h2brj9c8c|xn--hxt814e|xn--i1b6b1a6a2e|xn--imr513n|xn--io0a7i|xn--j1aef|xn--j1amh|xn--j6w193g|xn--jlq61u9w7b|xn--jvr189m|xn--kcrx77d1x4a|xn--kprw13d|xn--kpry57d|xn--kpu716f|xn--kput3i|xn--l1acc|xn--lgbbat1ad8j|xn--mgb9awbf|xn--mgba3a3ejt|xn--mgba3a4f16a|xn--mgba7c0bbn0a|xn--mgbaakc7dvf|xn--mgbaam7a8h|xn--mgbab2bd|xn--mgbai9azgqp6j|xn--mgbayh7gpa|xn--mgbb9fbpob|xn--mgbbh1a|xn--mgbbh1a71e|xn--mgbc0a9azcg|xn--mgbca7dzdo|xn--mgberp4a5d4ar|xn--mgbgu82a|xn--mgbi4ecexp|xn--mgbpl2fh|xn--mgbt3dhd|xn--mgbtx2b|xn--mgbx4cd0ab|xn--mix891f|xn--mk1bu44c|xn--mxtq1m|xn--ngbc5azd|xn--ngbe9e0a|xn--ngbrx|xn--node|xn--nqv7f|xn--nqv7fs00ema|xn--nyqy26a|xn--o3cw4h|xn--ogbpf8fl|xn--p1acf|xn--p1ai|xn--pbt977c|xn--pgbs0dh|xn--pssy2u|xn--q9jyb4c|xn--qcka1pmc|xn--qxam|xn--rhqv96g|xn--rovu88b|xn--rvc1e0am3e|xn--s9brj9c|xn--ses554g|xn--t60b56a|xn--tckwe|xn--tiq49xqyj|xn--unup4y|xn--vermgensberater-ctb|xn--vermgensberatung-pwb|xn--vhquv|xn--vuq861b|xn--w4r85el8fhu5dnra|xn--w4rs40l|xn--wgbh1c|xn--wgbl6a|xn--xhq521b|xn--xkc2al3hye2a|xn--xkc2dl3a5ee0h|xn--y9a3aq|xn--yfro4i67o|xn--ygbi2ammx|xn--zfr164b|xperia|xxx|xyz|yachts|yahoo|yamaxun|yandex|ye|yodobashi|yoga|yokohama|you|youtube|yt|yun|za|zappos|zara|zero|zip|zippo|zm|zone|zuerich|zw'.split('|'); // macro, see gulpfile.js\n\n/**\n\tThe scanner provides an interface that takes a string of text as input, and\n\toutputs an array of tokens instances that can be used for easy URL parsing.\n\n\t@module linkify\n\t@submodule scanner\n\t@main scanner\n*/\n\nvar NUMBERS = '0123456789'.split('');\nvar ALPHANUM = '0123456789abcdefghijklmnopqrstuvwxyz'.split('');\nvar WHITESPACE = [' ', '\\f', '\\r', '\\t', '\\v', '\\xA0', '\\u1680', '\\u180E']; // excluding line breaks\n\nvar domainStates = []; // states that jump to DOMAIN on /[a-z0-9]/\nvar makeState = function makeState(tokenClass) {\n\treturn new _state.CharacterState(tokenClass);\n};\n\n// Frequently used states\nvar S_START = makeState();\nvar S_NUM = makeState(_text.NUM);\nvar S_DOMAIN = makeState(_text.DOMAIN);\nvar S_DOMAIN_HYPHEN = makeState(); // domain followed by 1 or more hyphen characters\nvar S_WS = makeState(_text.WS);\n\n// States for special URL symbols\nS_START.on('@', makeState(_text.AT)).on('.', makeState(_text.DOT)).on('+', makeState(_text.PLUS)).on('#', makeState(_text.POUND)).on('?', makeState(_text.QUERY)).on('/', makeState(_text.SLASH)).on('_', makeState(_text.UNDERSCORE)).on(':', makeState(_text.COLON)).on('{', makeState(_text.OPENBRACE)).on('[', makeState(_text.OPENBRACKET)).on('<', makeState(_text.OPENANGLEBRACKET)).on('(', makeState(_text.OPENPAREN)).on('}', makeState(_text.CLOSEBRACE)).on(']', makeState(_text.CLOSEBRACKET)).on('>', makeState(_text.CLOSEANGLEBRACKET)).on(')', makeState(_text.CLOSEPAREN)).on('&', makeState(_text.AMPERSAND)).on([',', ';', '!', '\"', '\\''], makeState(_text.PUNCTUATION));\n\n// Whitespace jumps\n// Tokens of only non-newline whitespace are arbitrarily long\nS_START.on('\\n', makeState(_text.NL)).on(WHITESPACE, S_WS);\n\n// If any whitespace except newline, more whitespace!\nS_WS.on(WHITESPACE, S_WS);\n\n// Generates states for top-level domains\n// Note that this is most accurate when tlds are in alphabetical order\nfor (var i = 0; i < tlds.length; i++) {\n\tvar newStates = (0, _state.stateify)(tlds[i], S_START, _text.TLD, _text.DOMAIN);\n\tdomainStates.push.apply(domainStates, newStates);\n}\n\n// Collect the states generated by different protocls\nvar partialProtocolFileStates = (0, _state.stateify)('file', S_START, _text.DOMAIN, _text.DOMAIN);\nvar partialProtocolFtpStates = (0, _state.stateify)('ftp', S_START, _text.DOMAIN, _text.DOMAIN);\nvar partialProtocolHttpStates = (0, _state.stateify)('http', S_START, _text.DOMAIN, _text.DOMAIN);\nvar partialProtocolMailtoStates = (0, _state.stateify)('mailto', S_START, _text.DOMAIN, _text.DOMAIN);\n\n// Add the states to the array of DOMAINeric states\ndomainStates.push.apply(domainStates, partialProtocolFileStates);\ndomainStates.push.apply(domainStates, partialProtocolFtpStates);\ndomainStates.push.apply(domainStates, partialProtocolHttpStates);\ndomainStates.push.apply(domainStates, partialProtocolMailtoStates);\n\n// Protocol states\nvar S_PROTOCOL_FILE = partialProtocolFileStates.pop();\nvar S_PROTOCOL_FTP = partialProtocolFtpStates.pop();\nvar S_PROTOCOL_HTTP = partialProtocolHttpStates.pop();\nvar S_MAILTO = partialProtocolMailtoStates.pop();\nvar S_PROTOCOL_SECURE = makeState(_text.DOMAIN);\nvar S_FULL_PROTOCOL = makeState(_text.PROTOCOL); // Full protocol ends with COLON\nvar S_FULL_MAILTO = makeState(_text.MAILTO); // Mailto ends with COLON\n\n// Secure protocols (end with 's')\nS_PROTOCOL_FTP.on('s', S_PROTOCOL_SECURE).on(':', S_FULL_PROTOCOL);\n\nS_PROTOCOL_HTTP.on('s', S_PROTOCOL_SECURE).on(':', S_FULL_PROTOCOL);\n\ndomainStates.push(S_PROTOCOL_SECURE);\n\n// Become protocol tokens after a COLON\nS_PROTOCOL_FILE.on(':', S_FULL_PROTOCOL);\nS_PROTOCOL_SECURE.on(':', S_FULL_PROTOCOL);\nS_MAILTO.on(':', S_FULL_MAILTO);\n\n// Localhost\nvar partialLocalhostStates = (0, _state.stateify)('localhost', S_START, _text.LOCALHOST, _text.DOMAIN);\ndomainStates.push.apply(domainStates, partialLocalhostStates);\n\n// Everything else\n// DOMAINs make more DOMAINs\n// Number and character transitions\nS_START.on(NUMBERS, S_NUM);\nS_NUM.on('-', S_DOMAIN_HYPHEN).on(NUMBERS, S_NUM).on(ALPHANUM, S_DOMAIN); // number becomes DOMAIN\n\nS_DOMAIN.on('-', S_DOMAIN_HYPHEN).on(ALPHANUM, S_DOMAIN);\n\n// All the generated states should have a jump to DOMAIN\nfor (var _i = 0; _i < domainStates.length; _i++) {\n\tdomainStates[_i].on('-', S_DOMAIN_HYPHEN).on(ALPHANUM, S_DOMAIN);\n}\n\nS_DOMAIN_HYPHEN.on('-', S_DOMAIN_HYPHEN).on(NUMBERS, S_DOMAIN).on(ALPHANUM, S_DOMAIN);\n\n// Set default transition\nS_START.defaultTransition = makeState(_text.SYM);\n\n/**\n\tGiven a string, returns an array of TOKEN instances representing the\n\tcomposition of that string.\n\n\t@method run\n\t@param {String} str Input string to scan\n\t@return {Array} Array of TOKEN instances\n*/\nvar run = function run(str) {\n\n\t// The state machine only looks at lowercase strings.\n\t// This selective `toLowerCase` is used because lowercasing the entire\n\t// string causes the length and character position to vary in some in some\n\t// non-English strings. This happens only on V8-based runtimes.\n\tvar lowerStr = str.replace(/[A-Z]/g, function (c) {\n\t\treturn c.toLowerCase();\n\t});\n\tvar len = str.length;\n\tvar tokens = []; // return value\n\n\tvar cursor = 0;\n\n\t// Tokenize the string\n\twhile (cursor < len) {\n\t\tvar state = S_START;\n\t\tvar nextState = null;\n\t\tvar tokenLength = 0;\n\t\tvar latestAccepting = null;\n\t\tvar sinceAccepts = -1;\n\n\t\twhile (cursor < len && (nextState = state.next(lowerStr[cursor]))) {\n\t\t\tstate = nextState;\n\n\t\t\t// Keep track of the latest accepting state\n\t\t\tif (state.accepts()) {\n\t\t\t\tsinceAccepts = 0;\n\t\t\t\tlatestAccepting = state;\n\t\t\t} else if (sinceAccepts >= 0) {\n\t\t\t\tsinceAccepts++;\n\t\t\t}\n\n\t\t\ttokenLength++;\n\t\t\tcursor++;\n\t\t}\n\n\t\tif (sinceAccepts < 0) {\n\t\t\tcontinue;\n\t\t} // Should never happen\n\n\t\t// Roll back to the latest accepting state\n\t\tcursor -= sinceAccepts;\n\t\ttokenLength -= sinceAccepts;\n\n\t\t// Get the class for the new token\n\t\tvar TOKEN = latestAccepting.emit(); // Current token class\n\n\t\t// No more jumps, just make a new token\n\t\ttokens.push(new TOKEN(str.substr(cursor - tokenLength, tokenLength)));\n\t}\n\n\treturn tokens;\n};\n\nvar start = S_START;\nexports.State = _state.CharacterState;\nexports.TOKENS = TOKENS;\nexports.run = run;\nexports.start = start;","'use strict';\n\nexports.__esModule = true;\nexports.start = exports.run = exports.TOKENS = exports.State = undefined;\n\nvar _state = require('./state');\n\nvar _multi = require('./tokens/multi');\n\nvar MULTI_TOKENS = _interopRequireWildcard(_multi);\n\nvar _text = require('./tokens/text');\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\n/**\n\tNot exactly parser, more like the second-stage scanner (although we can\n\ttheoretically hotswap the code here with a real parser in the future... but\n\tfor a little URL-finding utility abstract syntax trees may be a little\n\toverkill).\n\n\tURL format: http://en.wikipedia.org/wiki/URI_scheme\n\tEmail format: http://en.wikipedia.org/wiki/Email_address (links to RFC in\n\treference)\n\n\t@module linkify\n\t@submodule parser\n\t@main parser\n*/\n\nvar makeState = function makeState(tokenClass) {\n\treturn new _state.TokenState(tokenClass);\n};\n\n// The universal starting state.\nvar S_START = makeState();\n\n// Intermediate states for URLs. Note that domains that begin with a protocol\n// are treated slighly differently from those that don't.\nvar S_PROTOCOL = makeState(); // e.g., 'http:'\nvar S_MAILTO = makeState(); // 'mailto:'\nvar S_PROTOCOL_SLASH = makeState(); // e.g., '/', 'http:/''\nvar S_PROTOCOL_SLASH_SLASH = makeState(); // e.g., '//', 'http://'\nvar S_DOMAIN = makeState(); // parsed string ends with a potential domain name (A)\nvar S_DOMAIN_DOT = makeState(); // (A) domain followed by DOT\nvar S_TLD = makeState(_multi.URL); // (A) Simplest possible URL with no query string\nvar S_TLD_COLON = makeState(); // (A) URL followed by colon (potential port number here)\nvar S_TLD_PORT = makeState(_multi.URL); // TLD followed by a port number\nvar S_URL = makeState(_multi.URL); // Long URL with optional port and maybe query string\nvar S_URL_NON_ACCEPTING = makeState(); // URL followed by some symbols (will not be part of the final URL)\nvar S_URL_OPENBRACE = makeState(); // URL followed by {\nvar S_URL_OPENBRACKET = makeState(); // URL followed by [\nvar S_URL_OPENANGLEBRACKET = makeState(); // URL followed by <\nvar S_URL_OPENPAREN = makeState(); // URL followed by (\nvar S_URL_OPENBRACE_Q = makeState(_multi.URL); // URL followed by { and some symbols that the URL can end it\nvar S_URL_OPENBRACKET_Q = makeState(_multi.URL); // URL followed by [ and some symbols that the URL can end it\nvar S_URL_OPENANGLEBRACKET_Q = makeState(_multi.URL); // URL followed by < and some symbols that the URL can end it\nvar S_URL_OPENPAREN_Q = makeState(_multi.URL); // URL followed by ( and some symbols that the URL can end it\nvar S_URL_OPENBRACE_SYMS = makeState(); // S_URL_OPENBRACE_Q followed by some symbols it cannot end it\nvar S_URL_OPENBRACKET_SYMS = makeState(); // S_URL_OPENBRACKET_Q followed by some symbols it cannot end it\nvar S_URL_OPENANGLEBRACKET_SYMS = makeState(); // S_URL_OPENANGLEBRACKET_Q followed by some symbols it cannot end it\nvar S_URL_OPENPAREN_SYMS = makeState(); // S_URL_OPENPAREN_Q followed by some symbols it cannot end it\nvar S_EMAIL_DOMAIN = makeState(); // parsed string starts with local email info + @ with a potential domain name (C)\nvar S_EMAIL_DOMAIN_DOT = makeState(); // (C) domain followed by DOT\nvar S_EMAIL = makeState(_multi.EMAIL); // (C) Possible email address (could have more tlds)\nvar S_EMAIL_COLON = makeState(); // (C) URL followed by colon (potential port number here)\nvar S_EMAIL_PORT = makeState(_multi.EMAIL); // (C) Email address with a port\nvar S_MAILTO_EMAIL = makeState(_multi.MAILTOEMAIL); // Email that begins with the mailto prefix (D)\nvar S_MAILTO_EMAIL_NON_ACCEPTING = makeState(); // (D) Followed by some non-query string chars\nvar S_LOCALPART = makeState(); // Local part of the email address\nvar S_LOCALPART_AT = makeState(); // Local part of the email address plus @\nvar S_LOCALPART_DOT = makeState(); // Local part of the email address plus '.' (localpart cannot end in .)\nvar S_NL = makeState(_multi.NL); // single new line\n\n// Make path from start to protocol (with '//')\nS_START.on(_text.NL, S_NL).on(_text.PROTOCOL, S_PROTOCOL).on(_text.MAILTO, S_MAILTO).on(_text.SLASH, S_PROTOCOL_SLASH);\n\nS_PROTOCOL.on(_text.SLASH, S_PROTOCOL_SLASH);\nS_PROTOCOL_SLASH.on(_text.SLASH, S_PROTOCOL_SLASH_SLASH);\n\n// The very first potential domain name\nS_START.on(_text.TLD, S_DOMAIN).on(_text.DOMAIN, S_DOMAIN).on(_text.LOCALHOST, S_TLD).on(_text.NUM, S_DOMAIN);\n\n// Force URL for protocol followed by anything sane\nS_PROTOCOL_SLASH_SLASH.on(_text.TLD, S_URL).on(_text.DOMAIN, S_URL).on(_text.NUM, S_URL).on(_text.LOCALHOST, S_URL);\n\n// Account for dots and hyphens\n// hyphens are usually parts of domain names\nS_DOMAIN.on(_text.DOT, S_DOMAIN_DOT);\nS_EMAIL_DOMAIN.on(_text.DOT, S_EMAIL_DOMAIN_DOT);\n\n// Hyphen can jump back to a domain name\n\n// After the first domain and a dot, we can find either a URL or another domain\nS_DOMAIN_DOT.on(_text.TLD, S_TLD).on(_text.DOMAIN, S_DOMAIN).on(_text.NUM, S_DOMAIN).on(_text.LOCALHOST, S_DOMAIN);\n\nS_EMAIL_DOMAIN_DOT.on(_text.TLD, S_EMAIL).on(_text.DOMAIN, S_EMAIL_DOMAIN).on(_text.NUM, S_EMAIL_DOMAIN).on(_text.LOCALHOST, S_EMAIL_DOMAIN);\n\n// S_TLD accepts! But the URL could be longer, try to find a match greedily\n// The `run` function should be able to \"rollback\" to the accepting state\nS_TLD.on(_text.DOT, S_DOMAIN_DOT);\nS_EMAIL.on(_text.DOT, S_EMAIL_DOMAIN_DOT);\n\n// Become real URLs after `SLASH` or `COLON NUM SLASH`\n// Here PSS and non-PSS converge\nS_TLD.on(_text.COLON, S_TLD_COLON).on(_text.SLASH, S_URL);\nS_TLD_COLON.on(_text.NUM, S_TLD_PORT);\nS_TLD_PORT.on(_text.SLASH, S_URL);\nS_EMAIL.on(_text.COLON, S_EMAIL_COLON);\nS_EMAIL_COLON.on(_text.NUM, S_EMAIL_PORT);\n\n// Types of characters the URL can definitely end in\nvar qsAccepting = [_text.DOMAIN, _text.AT, _text.LOCALHOST, _text.NUM, _text.PLUS, _text.POUND, _text.PROTOCOL, _text.SLASH, _text.TLD, _text.UNDERSCORE, _text.SYM, _text.AMPERSAND];\n\n// Types of tokens that can follow a URL and be part of the query string\n// but cannot be the very last characters\n// Characters that cannot appear in the URL at all should be excluded\nvar qsNonAccepting = [_text.COLON, _text.DOT, _text.QUERY, _text.PUNCTUATION, _text.CLOSEBRACE, _text.CLOSEBRACKET, _text.CLOSEANGLEBRACKET, _text.CLOSEPAREN, _text.OPENBRACE, _text.OPENBRACKET, _text.OPENANGLEBRACKET, _text.OPENPAREN];\n\n// These states are responsible primarily for determining whether or not to\n// include the final round bracket.\n\n// URL, followed by an opening bracket\nS_URL.on(_text.OPENBRACE, S_URL_OPENBRACE).on(_text.OPENBRACKET, S_URL_OPENBRACKET).on(_text.OPENANGLEBRACKET, S_URL_OPENANGLEBRACKET).on(_text.OPENPAREN, S_URL_OPENPAREN);\n\n// URL with extra symbols at the end, followed by an opening bracket\nS_URL_NON_ACCEPTING.on(_text.OPENBRACE, S_URL_OPENBRACE).on(_text.OPENBRACKET, S_URL_OPENBRACKET).on(_text.OPENANGLEBRACKET, S_URL_OPENANGLEBRACKET).on(_text.OPENPAREN, S_URL_OPENPAREN);\n\n// Closing bracket component. This character WILL be included in the URL\nS_URL_OPENBRACE.on(_text.CLOSEBRACE, S_URL);\nS_URL_OPENBRACKET.on(_text.CLOSEBRACKET, S_URL);\nS_URL_OPENANGLEBRACKET.on(_text.CLOSEANGLEBRACKET, S_URL);\nS_URL_OPENPAREN.on(_text.CLOSEPAREN, S_URL);\nS_URL_OPENBRACE_Q.on(_text.CLOSEBRACE, S_URL);\nS_URL_OPENBRACKET_Q.on(_text.CLOSEBRACKET, S_URL);\nS_URL_OPENANGLEBRACKET_Q.on(_text.CLOSEANGLEBRACKET, S_URL);\nS_URL_OPENPAREN_Q.on(_text.CLOSEPAREN, S_URL);\nS_URL_OPENBRACE_SYMS.on(_text.CLOSEBRACE, S_URL);\nS_URL_OPENBRACKET_SYMS.on(_text.CLOSEBRACKET, S_URL);\nS_URL_OPENANGLEBRACKET_SYMS.on(_text.CLOSEANGLEBRACKET, S_URL);\nS_URL_OPENPAREN_SYMS.on(_text.CLOSEPAREN, S_URL);\n\n// URL that beings with an opening bracket, followed by a symbols.\n// Note that the final state can still be `S_URL_OPENBRACE_Q` (if the URL only\n// has a single opening bracket for some reason).\nS_URL_OPENBRACE.on(qsAccepting, S_URL_OPENBRACE_Q);\nS_URL_OPENBRACKET.on(qsAccepting, S_URL_OPENBRACKET_Q);\nS_URL_OPENANGLEBRACKET.on(qsAccepting, S_URL_OPENANGLEBRACKET_Q);\nS_URL_OPENPAREN.on(qsAccepting, S_URL_OPENPAREN_Q);\nS_URL_OPENBRACE.on(qsNonAccepting, S_URL_OPENBRACE_SYMS);\nS_URL_OPENBRACKET.on(qsNonAccepting, S_URL_OPENBRACKET_SYMS);\nS_URL_OPENANGLEBRACKET.on(qsNonAccepting, S_URL_OPENANGLEBRACKET_SYMS);\nS_URL_OPENPAREN.on(qsNonAccepting, S_URL_OPENPAREN_SYMS);\n\n// URL that begins with an opening bracket, followed by some symbols\nS_URL_OPENBRACE_Q.on(qsAccepting, S_URL_OPENBRACE_Q);\nS_URL_OPENBRACKET_Q.on(qsAccepting, S_URL_OPENBRACKET_Q);\nS_URL_OPENANGLEBRACKET_Q.on(qsAccepting, S_URL_OPENANGLEBRACKET_Q);\nS_URL_OPENPAREN_Q.on(qsAccepting, S_URL_OPENPAREN_Q);\nS_URL_OPENBRACE_Q.on(qsNonAccepting, S_URL_OPENBRACE_Q);\nS_URL_OPENBRACKET_Q.on(qsNonAccepting, S_URL_OPENBRACKET_Q);\nS_URL_OPENANGLEBRACKET_Q.on(qsNonAccepting, S_URL_OPENANGLEBRACKET_Q);\nS_URL_OPENPAREN_Q.on(qsNonAccepting, S_URL_OPENPAREN_Q);\n\nS_URL_OPENBRACE_SYMS.on(qsAccepting, S_URL_OPENBRACE_Q);\nS_URL_OPENBRACKET_SYMS.on(qsAccepting, S_URL_OPENBRACKET_Q);\nS_URL_OPENANGLEBRACKET_SYMS.on(qsAccepting, S_URL_OPENANGLEBRACKET_Q);\nS_URL_OPENPAREN_SYMS.on(qsAccepting, S_URL_OPENPAREN_Q);\nS_URL_OPENBRACE_SYMS.on(qsNonAccepting, S_URL_OPENBRACE_SYMS);\nS_URL_OPENBRACKET_SYMS.on(qsNonAccepting, S_URL_OPENBRACKET_SYMS);\nS_URL_OPENANGLEBRACKET_SYMS.on(qsNonAccepting, S_URL_OPENANGLEBRACKET_SYMS);\nS_URL_OPENPAREN_SYMS.on(qsNonAccepting, S_URL_OPENPAREN_SYMS);\n\n// Account for the query string\nS_URL.on(qsAccepting, S_URL);\nS_URL_NON_ACCEPTING.on(qsAccepting, S_URL);\n\nS_URL.on(qsNonAccepting, S_URL_NON_ACCEPTING);\nS_URL_NON_ACCEPTING.on(qsNonAccepting, S_URL_NON_ACCEPTING);\n\n// Email address-specific state definitions\n// Note: We are not allowing '/' in email addresses since this would interfere\n// with real URLs\n\n// For addresses with the mailto prefix\n// 'mailto:' followed by anything sane is a valid email\nS_MAILTO.on(_text.TLD, S_MAILTO_EMAIL).on(_text.DOMAIN, S_MAILTO_EMAIL).on(_text.NUM, S_MAILTO_EMAIL).on(_text.LOCALHOST, S_MAILTO_EMAIL);\n\n// Greedily get more potential valid email values\nS_MAILTO_EMAIL.on(qsAccepting, S_MAILTO_EMAIL).on(qsNonAccepting, S_MAILTO_EMAIL_NON_ACCEPTING);\nS_MAILTO_EMAIL_NON_ACCEPTING.on(qsAccepting, S_MAILTO_EMAIL).on(qsNonAccepting, S_MAILTO_EMAIL_NON_ACCEPTING);\n\n// For addresses without the mailto prefix\n// Tokens allowed in the localpart of the email\nvar localpartAccepting = [_text.DOMAIN, _text.NUM, _text.PLUS, _text.POUND, _text.QUERY, _text.UNDERSCORE, _text.SYM, _text.AMPERSAND, _text.TLD];\n\n// Some of the tokens in `localpartAccepting` are already accounted for here and\n// will not be overwritten (don't worry)\nS_DOMAIN.on(localpartAccepting, S_LOCALPART).on(_text.AT, S_LOCALPART_AT);\nS_TLD.on(localpartAccepting, S_LOCALPART).on(_text.AT, S_LOCALPART_AT);\nS_DOMAIN_DOT.on(localpartAccepting, S_LOCALPART);\n\n// Okay we're on a localpart. Now what?\n// TODO: IP addresses and what if the email starts with numbers?\nS_LOCALPART.on(localpartAccepting, S_LOCALPART).on(_text.AT, S_LOCALPART_AT) // close to an email address now\n.on(_text.DOT, S_LOCALPART_DOT);\nS_LOCALPART_DOT.on(localpartAccepting, S_LOCALPART);\nS_LOCALPART_AT.on(_text.TLD, S_EMAIL_DOMAIN).on(_text.DOMAIN, S_EMAIL_DOMAIN).on(_text.LOCALHOST, S_EMAIL);\n// States following `@` defined above\n\nvar run = function run(tokens) {\n\tvar len = tokens.length;\n\tvar cursor = 0;\n\tvar multis = [];\n\tvar textTokens = [];\n\n\twhile (cursor < len) {\n\t\tvar state = S_START;\n\t\tvar secondState = null;\n\t\tvar nextState = null;\n\t\tvar multiLength = 0;\n\t\tvar latestAccepting = null;\n\t\tvar sinceAccepts = -1;\n\n\t\twhile (cursor < len && !(secondState = state.next(tokens[cursor]))) {\n\t\t\t// Starting tokens with nowhere to jump to.\n\t\t\t// Consider these to be just plain text\n\t\t\ttextTokens.push(tokens[cursor++]);\n\t\t}\n\n\t\twhile (cursor < len && (nextState = secondState || state.next(tokens[cursor]))) {\n\n\t\t\t// Get the next state\n\t\t\tsecondState = null;\n\t\t\tstate = nextState;\n\n\t\t\t// Keep track of the latest accepting state\n\t\t\tif (state.accepts()) {\n\t\t\t\tsinceAccepts = 0;\n\t\t\t\tlatestAccepting = state;\n\t\t\t} else if (sinceAccepts >= 0) {\n\t\t\t\tsinceAccepts++;\n\t\t\t}\n\n\t\t\tcursor++;\n\t\t\tmultiLength++;\n\t\t}\n\n\t\tif (sinceAccepts < 0) {\n\n\t\t\t// No accepting state was found, part of a regular text token\n\t\t\t// Add all the tokens we looked at to the text tokens array\n\t\t\tfor (var i = cursor - multiLength; i < cursor; i++) {\n\t\t\t\ttextTokens.push(tokens[i]);\n\t\t\t}\n\t\t} else {\n\n\t\t\t// Accepting state!\n\n\t\t\t// First close off the textTokens (if available)\n\t\t\tif (textTokens.length > 0) {\n\t\t\t\tmultis.push(new _multi.TEXT(textTokens));\n\t\t\t\ttextTokens = [];\n\t\t\t}\n\n\t\t\t// Roll back to the latest accepting state\n\t\t\tcursor -= sinceAccepts;\n\t\t\tmultiLength -= sinceAccepts;\n\n\t\t\t// Create a new multitoken\n\t\t\tvar MULTI = latestAccepting.emit();\n\t\t\tmultis.push(new MULTI(tokens.slice(cursor - multiLength, cursor)));\n\t\t}\n\t}\n\n\t// Finally close off the textTokens (if available)\n\tif (textTokens.length > 0) {\n\t\tmultis.push(new _multi.TEXT(textTokens));\n\t}\n\n\treturn multis;\n};\n\nexports.State = _state.TokenState;\nexports.TOKENS = MULTI_TOKENS;\nexports.run = run;\nexports.start = S_START;","'use strict';\n\nexports.__esModule = true;\nexports.URL = exports.TEXT = exports.NL = exports.EMAIL = exports.MAILTOEMAIL = exports.Base = undefined;\n\nvar _createTokenClass = require('./create-token-class');\n\nvar _class = require('../../utils/class');\n\nvar _text = require('./text');\n\n/******************************************************************************\n\tMulti-Tokens\n\tTokens composed of arrays of TextTokens\n******************************************************************************/\n\n// Is the given token a valid domain token?\n// Should nums be included here?\nfunction isDomainToken(token) {\n\treturn token instanceof _text.DOMAIN || token instanceof _text.TLD;\n}\n\n/**\n\tAbstract class used for manufacturing tokens of text tokens. That is rather\n\tthan the value for a token being a small string of text, it's value an array\n\tof text tokens.\n\n\tUsed for grouping together URLs, emails, hashtags, and other potential\n\tcreations.\n\n\t@class MultiToken\n\t@abstract\n*/\nvar MultiToken = (0, _createTokenClass.createTokenClass)();\n\nMultiToken.prototype = {\n\t/**\n \tString representing the type for this token\n \t@property type\n \t@default 'TOKEN'\n */\n\ttype: 'token',\n\n\t/**\n \tIs this multitoken a link?\n \t@property isLink\n \t@default false\n */\n\tisLink: false,\n\n\t/**\n \tReturn the string this token represents.\n \t@method toString\n \t@return {String}\n */\n\ttoString: function toString() {\n\t\tvar result = [];\n\t\tfor (var i = 0; i < this.v.length; i++) {\n\t\t\tresult.push(this.v[i].toString());\n\t\t}\n\t\treturn result.join('');\n\t},\n\n\n\t/**\n \tWhat should the value for this token be in the `href` HTML attribute?\n \tReturns the `.toString` value by default.\n \t\t@method toHref\n \t@return {String}\n */\n\ttoHref: function toHref() {\n\t\treturn this.toString();\n\t},\n\n\n\t/**\n \tReturns a hash of relevant values for this token, which includes keys\n \t* type - Kind of token ('url', 'email', etc.)\n \t* value - Original text\n \t* href - The value that should be added to the anchor tag's href\n \t\tattribute\n \t\t@method toObject\n \t@param {String} [protocol] `'http'` by default\n \t@return {Object}\n */\n\ttoObject: function toObject() {\n\t\tvar protocol = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'http';\n\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tvalue: this.toString(),\n\t\t\thref: this.toHref(protocol)\n\t\t};\n\t}\n};\n\n/**\n\tRepresents an arbitrarily mailto email address with the prefix included\n\t@class MAILTO\n\t@extends MultiToken\n*/\nvar MAILTOEMAIL = (0, _class.inherits)(MultiToken, (0, _createTokenClass.createTokenClass)(), {\n\ttype: 'email',\n\tisLink: true\n});\n\n/**\n\tRepresents a list of tokens making up a valid email address\n\t@class EMAIL\n\t@extends MultiToken\n*/\nvar EMAIL = (0, _class.inherits)(MultiToken, (0, _createTokenClass.createTokenClass)(), {\n\ttype: 'email',\n\tisLink: true,\n\ttoHref: function toHref() {\n\t\treturn 'mailto:' + this.toString();\n\t}\n});\n\n/**\n\tRepresents some plain text\n\t@class TEXT\n\t@extends MultiToken\n*/\nvar TEXT = (0, _class.inherits)(MultiToken, (0, _createTokenClass.createTokenClass)(), { type: 'text' });\n\n/**\n\tMulti-linebreak token - represents a line break\n\t@class NL\n\t@extends MultiToken\n*/\nvar NL = (0, _class.inherits)(MultiToken, (0, _createTokenClass.createTokenClass)(), { type: 'nl' });\n\n/**\n\tRepresents a list of tokens making up a valid URL\n\t@class URL\n\t@extends MultiToken\n*/\nvar URL = (0, _class.inherits)(MultiToken, (0, _createTokenClass.createTokenClass)(), {\n\ttype: 'url',\n\tisLink: true,\n\n\t/**\n \tLowercases relevant parts of the domain and adds the protocol if\n \trequired. Note that this will not escape unsafe HTML characters in the\n \tURL.\n \t\t@method href\n \t@param {String} protocol\n \t@return {String}\n */\n\ttoHref: function toHref() {\n\t\tvar protocol = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'http';\n\n\t\tvar hasProtocol = false;\n\t\tvar hasSlashSlash = false;\n\t\tvar tokens = this.v;\n\t\tvar result = [];\n\t\tvar i = 0;\n\n\t\t// Make the first part of the domain lowercase\n\t\t// Lowercase protocol\n\t\twhile (tokens[i] instanceof _text.PROTOCOL) {\n\t\t\thasProtocol = true;\n\t\t\tresult.push(tokens[i].toString().toLowerCase());\n\t\t\ti++;\n\t\t}\n\n\t\t// Skip slash-slash\n\t\twhile (tokens[i] instanceof _text.SLASH) {\n\t\t\thasSlashSlash = true;\n\t\t\tresult.push(tokens[i].toString());\n\t\t\ti++;\n\t\t}\n\n\t\t// Lowercase all other characters in the domain\n\t\twhile (isDomainToken(tokens[i])) {\n\t\t\tresult.push(tokens[i].toString().toLowerCase());\n\t\t\ti++;\n\t\t}\n\n\t\t// Leave all other characters as they were written\n\t\tfor (; i < tokens.length; i++) {\n\t\t\tresult.push(tokens[i].toString());\n\t\t}\n\n\t\tresult = result.join('');\n\n\t\tif (!(hasProtocol || hasSlashSlash)) {\n\t\t\tresult = protocol + '://' + result;\n\t\t}\n\n\t\treturn result;\n\t},\n\thasProtocol: function hasProtocol() {\n\t\treturn this.v[0] instanceof _text.PROTOCOL;\n\t}\n});\n\nexports.Base = MultiToken;\nexports.MAILTOEMAIL = MAILTOEMAIL;\nexports.EMAIL = EMAIL;\nexports.NL = NL;\nexports.TEXT = TEXT;\nexports.URL = URL;","var $ = require('../internals/export');\nvar $values = require('../internals/object-to-array').values;\n\n// `Object.values` method\n// https://tc39.github.io/ecma262/#sec-object.values\n$({ target: 'Object', stat: true }, {\n values: function values(O) {\n return $values(O);\n }\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(O, key)) {\n result.push(TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.github.io/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.github.io/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.VueColor=t():e.VueColor=t()}(\"undefined\"!=typeof self?self:this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var a=n[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,t),a.l=!0,a.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,\"a\",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p=\"\",t(t.s=22)}([function(e,t){function n(e,t){var n=e[1]||\"\",a=e[3];if(!a)return n;if(t&&\"function\"==typeof btoa){var i=r(a);return[n].concat(a.sources.map(function(e){return\"/*# sourceURL=\"+a.sourceRoot+e+\" */\"})).concat([i]).join(\"\\n\")}return[n].join(\"\\n\")}function r(e){return\"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(e))))+\" */\"}e.exports=function(e){var t=[];return t.toString=function(){return this.map(function(t){var r=n(t,e);return t[2]?\"@media \"+t[2]+\"{\"+r+\"}\":r}).join(\"\")},t.i=function(e,n){\"string\"==typeof e&&(e=[[null,e,\"\"]]);for(var r={},a=0;a<this.length;a++){var i=this[a][0];\"number\"==typeof i&&(r[i]=!0)}for(a=0;a<e.length;a++){var o=e[a];\"number\"==typeof o[0]&&r[o[0]]||(n&&!o[2]?o[2]=n:n&&(o[2]=\"(\"+o[2]+\") and (\"+n+\")\"),t.push(o))}},t}},function(e,t,n){function r(e){for(var t=0;t<e.length;t++){var n=e[t],r=u[n.id];if(r){r.refs++;for(var a=0;a<r.parts.length;a++)r.parts[a](n.parts[a]);for(;a<n.parts.length;a++)r.parts.push(i(n.parts[a]));r.parts.length>n.parts.length&&(r.parts.length=n.parts.length)}else{for(var o=[],a=0;a<n.parts.length;a++)o.push(i(n.parts[a]));u[n.id]={id:n.id,refs:1,parts:o}}}}function a(){var e=document.createElement(\"style\");return e.type=\"text/css\",d.appendChild(e),e}function i(e){var t,n,r=document.querySelector(\"style[\"+b+'~=\"'+e.id+'\"]');if(r){if(p)return v;r.parentNode.removeChild(r)}if(x){var i=f++;r=h||(h=a()),t=o.bind(null,r,i,!1),n=o.bind(null,r,i,!0)}else r=a(),t=s.bind(null,r),n=function(){r.parentNode.removeChild(r)};return t(e),function(r){if(r){if(r.css===e.css&&r.media===e.media&&r.sourceMap===e.sourceMap)return;t(e=r)}else n()}}function o(e,t,n,r){var a=n?\"\":r.css;if(e.styleSheet)e.styleSheet.cssText=m(t,a);else{var i=document.createTextNode(a),o=e.childNodes;o[t]&&e.removeChild(o[t]),o.length?e.insertBefore(i,o[t]):e.appendChild(i)}}function s(e,t){var n=t.css,r=t.media,a=t.sourceMap;if(r&&e.setAttribute(\"media\",r),g.ssrId&&e.setAttribute(b,t.id),a&&(n+=\"\\n/*# sourceURL=\"+a.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(a))))+\" */\"),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}var c=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!c)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var l=n(26),u={},d=c&&(document.head||document.getElementsByTagName(\"head\")[0]),h=null,f=0,p=!1,v=function(){},g=null,b=\"data-vue-ssr-id\",x=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());e.exports=function(e,t,n,a){p=n,g=a||{};var i=l(e,t);return r(i),function(t){for(var n=[],a=0;a<i.length;a++){var o=i[a],s=u[o.id];s.refs--,n.push(s)}t?(i=l(e,t),r(i)):i=[];for(var a=0;a<n.length;a++){var s=n[a];if(0===s.refs){for(var c=0;c<s.parts.length;c++)s.parts[c]();delete u[s.id]}}}};var m=function(){var e=[];return function(t,n){return e[t]=n,e.filter(Boolean).join(\"\\n\")}}()},function(e,t){e.exports=function(e,t,n,r,a,i){var o,s=e=e||{},c=typeof e.default;\"object\"!==c&&\"function\"!==c||(o=e,s=e.default);var l=\"function\"==typeof s?s.options:s;t&&(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0),n&&(l.functional=!0),a&&(l._scopeId=a);var u;if(i?(u=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},l._ssrRegister=u):r&&(u=r),u){var d=l.functional,h=d?l.render:l.beforeCreate;d?(l._injectStyles=u,l.render=function(e,t){return u.call(t),h(e,t)}):l.beforeCreate=h?[].concat(h,u):[u]}return{esModule:o,exports:s,options:l}}},function(e,t,n){\"use strict\";function r(e,t){var n,r=e&&e.a;!(n=e&&e.hsl?(0,i.default)(e.hsl):e&&e.hex&&e.hex.length>0?(0,i.default)(e.hex):e&&e.hsv?(0,i.default)(e.hsv):e&&e.rgba?(0,i.default)(e.rgba):e&&e.rgb?(0,i.default)(e.rgb):(0,i.default)(e))||void 0!==n._a&&null!==n._a||n.setAlpha(r||1);var a=n.toHsl(),o=n.toHsv();return 0===a.s&&(o.h=a.h=e.h||e.hsl&&e.hsl.h||t||0),{hsl:a,hex:n.toHexString().toUpperCase(),hex8:n.toHex8String().toUpperCase(),rgba:n.toRgb(),hsv:o,oldHue:e.h||t||a.h,source:e.source,a:e.a||n.getAlpha()}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(27),i=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default={props:[\"value\"],data:function(){return{val:r(this.value)}},computed:{colors:{get:function(){return this.val},set:function(e){this.val=e,this.$emit(\"input\",e)}}},watch:{value:function(e){this.val=r(e)}},methods:{colorChange:function(e,t){this.oldHue=this.colors.hsl.h,this.colors=r(e,t||this.oldHue)},isValidHex:function(e){return(0,i.default)(e).isValid()},simpleCheckForValidColor:function(e){for(var t=[\"r\",\"g\",\"b\",\"a\",\"h\",\"s\",\"l\",\"v\"],n=0,r=0,a=0;a<t.length;a++){var i=t[a];e[i]&&(n++,isNaN(e[i])||r++)}if(n===r)return e},paletteUpperCase:function(e){return e.map(function(e){return e.toUpperCase()})},isTransparent:function(e){return 0===(0,i.default)(e).getAlpha()}}}},function(e,t,n){\"use strict\";function r(e){c||n(28)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(10),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(30),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/common/EditableInput.vue\",t.default=d.exports},function(e,t,n){\"use strict\";function r(e){c||n(43)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(14),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(45),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/common/Hue.vue\",t.default=d.exports},function(e,t,n){\"use strict\";function r(e){c||n(55)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(17),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(59),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/common/Saturation.vue\",t.default=d.exports},function(e,t,n){\"use strict\";function r(e){c||n(60)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(18),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(65),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/common/Alpha.vue\",t.default=d.exports},function(e,t,n){\"use strict\";function r(e){c||n(62)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(19),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(64),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/common/Checkboard.vue\",t.default=d.exports},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=[\"#4D4D4D\",\"#999999\",\"#FFFFFF\",\"#F44E3B\",\"#FE9200\",\"#FCDC00\",\"#DBDF00\",\"#A4DD00\",\"#68CCCA\",\"#73D8FF\",\"#AEA1FF\",\"#FDA1FF\",\"#333333\",\"#808080\",\"#CCCCCC\",\"#D33115\",\"#E27300\",\"#FCC400\",\"#B0BC00\",\"#68BC00\",\"#16A5A5\",\"#009CE0\",\"#7B64FF\",\"#FA28FF\",\"#000000\",\"#666666\",\"#B3B3B3\",\"#9F0500\",\"#C45100\",\"#FB9E00\",\"#808900\",\"#194D33\",\"#0C797D\",\"#0062B1\",\"#653294\",\"#AB149E\"];t.default={name:\"Compact\",mixins:[i.default],props:{palette:{type:Array,default:function(){return c}}},components:{\"ed-in\":s.default},computed:{pick:function(){return this.colors.hex.toUpperCase()}},methods:{handlerClick:function(e){this.colorChange({hex:e,source:\"hex\"})}}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default={name:\"editableInput\",props:{label:String,labelText:String,desc:String,value:[String,Number],max:Number,min:Number,arrowOffset:{type:Number,default:1}},computed:{val:{get:function(){return this.value},set:function(e){if(!(void 0!==this.max&&+e>this.max))return e;this.$refs.input.value=this.max}},labelId:function(){return\"input__label__\"+this.label+\"__\"+Math.random().toString().slice(2,5)},labelSpanText:function(){return this.labelText||this.label}},methods:{update:function(e){this.handleChange(e.target.value)},handleChange:function(e){var t={};t[this.label]=e,void 0===t.hex&&void 0===t[\"#\"]?this.$emit(\"change\",t):e.length>5&&this.$emit(\"change\",t)},handleKeyDown:function(e){var t=this.val,n=Number(t);if(n){var r=this.arrowOffset||1;38===e.keyCode&&(t=n+r,this.handleChange(t),e.preventDefault()),40===e.keyCode&&(t=n-r,this.handleChange(t),e.preventDefault())}}}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(3),a=function(e){return e&&e.__esModule?e:{default:e}}(r),i=[\"#FFFFFF\",\"#F2F2F2\",\"#E6E6E6\",\"#D9D9D9\",\"#CCCCCC\",\"#BFBFBF\",\"#B3B3B3\",\"#A6A6A6\",\"#999999\",\"#8C8C8C\",\"#808080\",\"#737373\",\"#666666\",\"#595959\",\"#4D4D4D\",\"#404040\",\"#333333\",\"#262626\",\"#0D0D0D\",\"#000000\"];t.default={name:\"Grayscale\",mixins:[a.default],props:{palette:{type:Array,default:function(){return i}}},components:{},computed:{pick:function(){return this.colors.hex.toUpperCase()}},methods:{handlerClick:function(e){this.colorChange({hex:e,source:\"hex\"})}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(4),i=r(a),o=n(3),s=r(o);t.default={name:\"Material\",mixins:[s.default],components:{\"ed-in\":i.default},methods:{onChange:function(e){e&&(e.hex?this.isValidHex(e.hex)&&this.colorChange({hex:e.hex,source:\"hex\"}):(e.r||e.g||e.b)&&this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:\"rgba\"}))}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(3),i=r(a),o=n(5),s=r(o);t.default={name:\"Slider\",mixins:[i.default],props:{swatches:{type:Array,default:function(){return[\".80\",\".65\",\".50\",\".35\",\".20\"]}}},components:{hue:s.default},computed:{activeOffset:function(){var e=this.swatches.includes(\"0\"),t=this.swatches.includes(\"1\"),n=this.colors.hsl;return Math.round(100*n.s)/100==.5?Math.round(100*n.l)/100:e&&0===n.l?0:t&&1===n.l?1:-1}},methods:{hueChange:function(e){this.colorChange(e)},handleSwClick:function(e,t){this.colorChange({h:this.colors.hsl.h,s:.5,l:t,source:\"hsl\"})}}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default={name:\"Hue\",props:{value:Object,direction:{type:String,default:\"horizontal\"}},data:function(){return{oldHue:0,pullDirection:\"\"}},computed:{colors:function(){var e=this.value.hsl.h;return 0!==e&&e-this.oldHue>0&&(this.pullDirection=\"right\"),0!==e&&e-this.oldHue<0&&(this.pullDirection=\"left\"),this.oldHue=e,this.value},directionClass:function(){return{\"vc-hue--horizontal\":\"horizontal\"===this.direction,\"vc-hue--vertical\":\"vertical\"===this.direction}},pointerTop:function(){return\"vertical\"===this.direction?0===this.colors.hsl.h&&\"right\"===this.pullDirection?0:-100*this.colors.hsl.h/360+100+\"%\":0},pointerLeft:function(){return\"vertical\"===this.direction?0:0===this.colors.hsl.h&&\"right\"===this.pullDirection?\"100%\":100*this.colors.hsl.h/360+\"%\"}},methods:{handleChange:function(e,t){!t&&e.preventDefault();var n,r,a=this.$refs.container,i=a.clientWidth,o=a.clientHeight,s=a.getBoundingClientRect().left+window.pageXOffset,c=a.getBoundingClientRect().top+window.pageYOffset,l=e.pageX||(e.touches?e.touches[0].pageX:0),u=e.pageY||(e.touches?e.touches[0].pageY:0),d=l-s,h=u-c;\"vertical\"===this.direction?(h<0?n=360:h>o?n=0:(r=-100*h/o+100,n=360*r/100),this.colors.hsl.h!==n&&this.$emit(\"change\",{h:n,s:this.colors.hsl.s,l:this.colors.hsl.l,a:this.colors.hsl.a,source:\"hsl\"})):(d<0?n=0:d>i?n=360:(r=100*d/i,n=360*r/100),this.colors.hsl.h!==n&&this.$emit(\"change\",{h:n,s:this.colors.hsl.s,l:this.colors.hsl.l,a:this.colors.hsl.a,source:\"hsl\"}))},handleMouseDown:function(e){this.handleChange(e,!0),window.addEventListener(\"mousemove\",this.handleChange),window.addEventListener(\"mouseup\",this.handleMouseUp)},handleMouseUp:function(e){this.unbindEventListeners()},unbindEventListeners:function(){window.removeEventListener(\"mousemove\",this.handleChange),window.removeEventListener(\"mouseup\",this.handleMouseUp)}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(50),i=r(a),o=n(3),s=r(o),c=[\"red\",\"pink\",\"purple\",\"deepPurple\",\"indigo\",\"blue\",\"lightBlue\",\"cyan\",\"teal\",\"green\",\"lightGreen\",\"lime\",\"yellow\",\"amber\",\"orange\",\"deepOrange\",\"brown\",\"blueGrey\",\"black\"],l=[\"900\",\"700\",\"500\",\"300\",\"100\"],u=function(){var e=[];return c.forEach(function(t){var n=[];\"black\"===t.toLowerCase()||\"white\"===t.toLowerCase()?n=n.concat([\"#000000\",\"#FFFFFF\"]):l.forEach(function(e){var r=i.default[t][e];n.push(r.toUpperCase())}),e.push(n)}),e}();t.default={name:\"Swatches\",mixins:[s.default],props:{palette:{type:Array,default:function(){return u}}},computed:{pick:function(){return this.colors.hex}},methods:{equal:function(e){return e.toLowerCase()===this.colors.hex.toLowerCase()},handlerClick:function(e){this.colorChange({hex:e,source:\"hex\"})}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=n(6),l=r(c),u=n(5),d=r(u),h=n(7),f=r(h);t.default={name:\"Photoshop\",mixins:[i.default],props:{head:{type:String,default:\"Color Picker\"},disableFields:{type:Boolean,default:!1},hasResetButton:{type:Boolean,default:!1},acceptLabel:{type:String,default:\"OK\"},cancelLabel:{type:String,default:\"Cancel\"},resetLabel:{type:String,default:\"Reset\"},newLabel:{type:String,default:\"new\"},currentLabel:{type:String,default:\"current\"}},components:{saturation:l.default,hue:d.default,alpha:f.default,\"ed-in\":s.default},data:function(){return{currentColor:\"#FFF\"}},computed:{hsv:function(){var e=this.colors.hsv;return{h:e.h.toFixed(),s:(100*e.s).toFixed(),v:(100*e.v).toFixed()}},hex:function(){var e=this.colors.hex;return e&&e.replace(\"#\",\"\")}},created:function(){this.currentColor=this.colors.hex},methods:{childChange:function(e){this.colorChange(e)},inputChange:function(e){e&&(e[\"#\"]?this.isValidHex(e[\"#\"])&&this.colorChange({hex:e[\"#\"],source:\"hex\"}):e.r||e.g||e.b||e.a?this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:\"rgba\"}):(e.h||e.s||e.v)&&this.colorChange({h:e.h||this.colors.hsv.h,s:e.s/100||this.colors.hsv.s,v:e.v/100||this.colors.hsv.v,source:\"hsv\"}))},clickCurrentColor:function(){this.colorChange({hex:this.currentColor,source:\"hex\"})},handleAccept:function(){this.$emit(\"ok\")},handleCancel:function(){this.$emit(\"cancel\")},handleReset:function(){this.$emit(\"reset\")}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(57),i=r(a),o=n(58),s=r(o);t.default={name:\"Saturation\",props:{value:Object},computed:{colors:function(){return this.value},bgColor:function(){return\"hsl(\"+this.colors.hsv.h+\", 100%, 50%)\"},pointerTop:function(){return-100*this.colors.hsv.v+1+100+\"%\"},pointerLeft:function(){return 100*this.colors.hsv.s+\"%\"}},methods:{throttle:(0,s.default)(function(e,t){e(t)},20,{leading:!0,trailing:!1}),handleChange:function(e,t){!t&&e.preventDefault();var n=this.$refs.container,r=n.clientWidth,a=n.clientHeight,o=n.getBoundingClientRect().left+window.pageXOffset,s=n.getBoundingClientRect().top+window.pageYOffset,c=e.pageX||(e.touches?e.touches[0].pageX:0),l=e.pageY||(e.touches?e.touches[0].pageY:0),u=(0,i.default)(c-o,0,r),d=(0,i.default)(l-s,0,a),h=u/r,f=(0,i.default)(-d/a+1,0,1);this.throttle(this.onChange,{h:this.colors.hsv.h,s:h,v:f,a:this.colors.hsv.a,source:\"hsva\"})},onChange:function(e){this.$emit(\"change\",e)},handleMouseDown:function(e){window.addEventListener(\"mousemove\",this.handleChange),window.addEventListener(\"mouseup\",this.handleChange),window.addEventListener(\"mouseup\",this.handleMouseUp)},handleMouseUp:function(e){this.unbindEventListeners()},unbindEventListeners:function(){window.removeEventListener(\"mousemove\",this.handleChange),window.removeEventListener(\"mouseup\",this.handleChange),window.removeEventListener(\"mouseup\",this.handleMouseUp)}}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var r=n(8),a=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default={name:\"Alpha\",props:{value:Object,onChange:Function},components:{checkboard:a.default},computed:{colors:function(){return this.value},gradientColor:function(){var e=this.colors.rgba,t=[e.r,e.g,e.b].join(\",\");return\"linear-gradient(to right, rgba(\"+t+\", 0) 0%, rgba(\"+t+\", 1) 100%)\"}},methods:{handleChange:function(e,t){!t&&e.preventDefault();var n,r=this.$refs.container,a=r.clientWidth,i=r.getBoundingClientRect().left+window.pageXOffset,o=e.pageX||(e.touches?e.touches[0].pageX:0),s=o-i;n=s<0?0:s>a?1:Math.round(100*s/a)/100,this.colors.a!==n&&this.$emit(\"change\",{h:this.colors.hsl.h,s:this.colors.hsl.s,l:this.colors.hsl.l,a:n,source:\"rgba\"})},handleMouseDown:function(e){this.handleChange(e,!0),window.addEventListener(\"mousemove\",this.handleChange),window.addEventListener(\"mouseup\",this.handleMouseUp)},handleMouseUp:function(){this.unbindEventListeners()},unbindEventListeners:function(){window.removeEventListener(\"mousemove\",this.handleChange),window.removeEventListener(\"mouseup\",this.handleMouseUp)}}}},function(e,t,n){\"use strict\";function r(e,t,n){if(\"undefined\"==typeof document)return null;var r=document.createElement(\"canvas\");r.width=r.height=2*n;var a=r.getContext(\"2d\");return a?(a.fillStyle=e,a.fillRect(0,0,r.width,r.height),a.fillStyle=t,a.fillRect(0,0,n,n),a.translate(n,n),a.fillRect(0,0,n,n),r.toDataURL()):null}function a(e,t,n){var a=e+\",\"+t+\",\"+n;if(i[a])return i[a];var o=r(e,t,n);return i[a]=o,o}Object.defineProperty(t,\"__esModule\",{value:!0});var i={};t.default={name:\"Checkboard\",props:{size:{type:[Number,String],default:8},white:{type:String,default:\"#fff\"},grey:{type:String,default:\"#e6e6e6\"}},computed:{bgStyle:function(){return{\"background-image\":\"url(\"+a(this.white,this.grey,this.size)+\")\"}}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=n(6),l=r(c),u=n(5),d=r(u),h=n(7),f=r(h),p=n(8),v=r(p),g=[\"#D0021B\",\"#F5A623\",\"#F8E71C\",\"#8B572A\",\"#7ED321\",\"#417505\",\"#BD10E0\",\"#9013FE\",\"#4A90E2\",\"#50E3C2\",\"#B8E986\",\"#000000\",\"#4A4A4A\",\"#9B9B9B\",\"#FFFFFF\",\"rgba(0,0,0,0)\"];t.default={name:\"Sketch\",mixins:[i.default],components:{saturation:l.default,hue:d.default,alpha:f.default,\"ed-in\":s.default,checkboard:v.default},props:{presetColors:{type:Array,default:function(){return g}},disableAlpha:{type:Boolean,default:!1},disableFields:{type:Boolean,default:!1}},computed:{hex:function(){var e=void 0;return e=this.colors.a<1?this.colors.hex8:this.colors.hex,e.replace(\"#\",\"\")},activeColor:function(){var e=this.colors.rgba;return\"rgba(\"+[e.r,e.g,e.b,e.a].join(\",\")+\")\"}},methods:{handlePreset:function(e){this.colorChange({hex:e,source:\"hex\"})},childChange:function(e){this.colorChange(e)},inputChange:function(e){e&&(e.hex?this.isValidHex(e.hex)&&this.colorChange({hex:e.hex,source:\"hex\"}):(e.r||e.g||e.b||e.a)&&this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:\"rgba\"}))}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=n(6),l=r(c),u=n(5),d=r(u),h=n(7),f=r(h),p=n(8),v=r(p);t.default={name:\"Chrome\",mixins:[i.default],props:{disableAlpha:{type:Boolean,default:!1},disableFields:{type:Boolean,default:!1}},components:{saturation:l.default,hue:d.default,alpha:f.default,\"ed-in\":s.default,checkboard:v.default},data:function(){return{fieldsIndex:0,highlight:!1}},computed:{hsl:function(){var e=this.colors.hsl,t=e.h,n=e.s,r=e.l;return{h:t.toFixed(),s:(100*n).toFixed()+\"%\",l:(100*r).toFixed()+\"%\"}},activeColor:function(){var e=this.colors.rgba;return\"rgba(\"+[e.r,e.g,e.b,e.a].join(\",\")+\")\"},hasAlpha:function(){return this.colors.a<1}},methods:{childChange:function(e){this.colorChange(e)},inputChange:function(e){if(e)if(e.hex)this.isValidHex(e.hex)&&this.colorChange({hex:e.hex,source:\"hex\"});else if(e.r||e.g||e.b||e.a)this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:\"rgba\"});else if(e.h||e.s||e.l){var t=e.s?e.s.replace(\"%\",\"\")/100:this.colors.hsl.s,n=e.l?e.l.replace(\"%\",\"\")/100:this.colors.hsl.l;this.colorChange({h:e.h||this.colors.hsl.h,s:t,l:n,source:\"hsl\"})}},toggleViews:function(){if(this.fieldsIndex>=2)return void(this.fieldsIndex=0);this.fieldsIndex++},showHighlight:function(){this.highlight=!0},hideHighlight:function(){this.highlight=!1}}}},function(e,t,n){\"use strict\";function r(e){return e&&e.__esModule?e:{default:e}}var a=n(23),i=r(a),o=n(32),s=r(o),c=n(36),l=r(c),u=n(40),d=r(u),h=n(47),f=r(h),p=n(52),v=r(p),g=n(67),b=r(g),x=n(71),m=r(x),_=n(7),w=r(_),C=n(8),y=r(C),k=n(4),F=r(k),A=n(5),S=r(A),M=n(6),E=r(M),L=n(3),R=r(L),O={version:\"2.7.1\",Compact:i.default,Grayscale:s.default,Material:l.default,Slider:d.default,Swatches:f.default,Photoshop:v.default,Sketch:b.default,Chrome:m.default,Alpha:w.default,Checkboard:y.default,EditableInput:F.default,Hue:S.default,Saturation:E.default,ColorMixin:R.default};e.exports=O},function(e,t,n){\"use strict\";function r(e){c||n(24)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(9),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(31),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Compact.vue\",t.default=d.exports},function(e,t,n){var r=n(25);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"6ce8a5a8\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-compact {\\n padding-top: 5px;\\n padding-left: 5px;\\n width: 245px;\\n border-radius: 2px;\\n box-sizing: border-box;\\n box-shadow: 0 2px 10px rgba(0,0,0,.12), 0 2px 5px rgba(0,0,0,.16);\\n background-color: #fff;\\n}\\n.vc-compact-colors {\\n overflow: hidden;\\n padding: 0;\\n margin: 0;\\n}\\n.vc-compact-color-item {\\n list-style: none;\\n width: 15px;\\n height: 15px;\\n float: left;\\n margin-right: 5px;\\n margin-bottom: 5px;\\n position: relative;\\n cursor: pointer;\\n}\\n.vc-compact-color-item--white {\\n box-shadow: inset 0 0 0 1px #ddd;\\n}\\n.vc-compact-color-item--white .vc-compact-dot {\\n background: #000;\\n}\\n.vc-compact-dot {\\n position: absolute;\\n top: 5px;\\n right: 5px;\\n bottom: 5px;\\n left: 5px;\\n border-radius: 50%;\\n opacity: 1;\\n background: #fff;\\n}\\n\",\"\"])},function(e,t){e.exports=function(e,t){for(var n=[],r={},a=0;a<t.length;a++){var i=t[a],o=i[0],s=i[1],c=i[2],l=i[3],u={id:e+\":\"+a,css:s,media:c,sourceMap:l};r[o]?r[o].parts.push(u):n.push(r[o]={id:o,parts:[u]})}return n}},function(e,t,n){var r;!function(a){function i(e,t){if(e=e||\"\",t=t||{},e instanceof i)return e;if(!(this instanceof i))return new i(e,t);var n=o(e);this._originalInput=e,this._r=n.r,this._g=n.g,this._b=n.b,this._a=n.a,this._roundA=q(100*this._a)/100,this._format=t.format||n.format,this._gradientType=t.gradientType,this._r<1&&(this._r=q(this._r)),this._g<1&&(this._g=q(this._g)),this._b<1&&(this._b=q(this._b)),this._ok=n.ok,this._tc_id=U++}function o(e){var t={r:0,g:0,b:0},n=1,r=null,a=null,i=null,o=!1,c=!1;return\"string\"==typeof e&&(e=$(e)),\"object\"==typeof e&&(z(e.r)&&z(e.g)&&z(e.b)?(t=s(e.r,e.g,e.b),o=!0,c=\"%\"===String(e.r).substr(-1)?\"prgb\":\"rgb\"):z(e.h)&&z(e.s)&&z(e.v)?(r=D(e.s),a=D(e.v),t=d(e.h,r,a),o=!0,c=\"hsv\"):z(e.h)&&z(e.s)&&z(e.l)&&(r=D(e.s),i=D(e.l),t=l(e.h,r,i),o=!0,c=\"hsl\"),e.hasOwnProperty(\"a\")&&(n=e.a)),n=M(n),{ok:o,format:e.format||c,r:V(255,X(t.r,0)),g:V(255,X(t.g,0)),b:V(255,X(t.b,0)),a:n}}function s(e,t,n){return{r:255*E(e,255),g:255*E(t,255),b:255*E(n,255)}}function c(e,t,n){e=E(e,255),t=E(t,255),n=E(n,255);var r,a,i=X(e,t,n),o=V(e,t,n),s=(i+o)/2;if(i==o)r=a=0;else{var c=i-o;switch(a=s>.5?c/(2-i-o):c/(i+o),i){case e:r=(t-n)/c+(t<n?6:0);break;case t:r=(n-e)/c+2;break;case n:r=(e-t)/c+4}r/=6}return{h:r,s:a,l:s}}function l(e,t,n){function r(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var a,i,o;if(e=E(e,360),t=E(t,100),n=E(n,100),0===t)a=i=o=n;else{var s=n<.5?n*(1+t):n+t-n*t,c=2*n-s;a=r(c,s,e+1/3),i=r(c,s,e),o=r(c,s,e-1/3)}return{r:255*a,g:255*i,b:255*o}}function u(e,t,n){e=E(e,255),t=E(t,255),n=E(n,255);var r,a,i=X(e,t,n),o=V(e,t,n),s=i,c=i-o;if(a=0===i?0:c/i,i==o)r=0;else{switch(i){case e:r=(t-n)/c+(t<n?6:0);break;case t:r=(n-e)/c+2;break;case n:r=(e-t)/c+4}r/=6}return{h:r,s:a,v:s}}function d(e,t,n){e=6*E(e,360),t=E(t,100),n=E(n,100);var r=a.floor(e),i=e-r,o=n*(1-t),s=n*(1-i*t),c=n*(1-(1-i)*t),l=r%6;return{r:255*[n,s,o,o,c,n][l],g:255*[c,n,n,s,o,o][l],b:255*[o,o,c,n,n,s][l]}}function h(e,t,n,r){var a=[B(q(e).toString(16)),B(q(t).toString(16)),B(q(n).toString(16))];return r&&a[0].charAt(0)==a[0].charAt(1)&&a[1].charAt(0)==a[1].charAt(1)&&a[2].charAt(0)==a[2].charAt(1)?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0):a.join(\"\")}function f(e,t,n,r,a){var i=[B(q(e).toString(16)),B(q(t).toString(16)),B(q(n).toString(16)),B(H(r))];return a&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)&&i[3].charAt(0)==i[3].charAt(1)?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0)+i[3].charAt(0):i.join(\"\")}function p(e,t,n,r){return[B(H(r)),B(q(e).toString(16)),B(q(t).toString(16)),B(q(n).toString(16))].join(\"\")}function v(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.s-=t/100,n.s=L(n.s),i(n)}function g(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.s+=t/100,n.s=L(n.s),i(n)}function b(e){return i(e).desaturate(100)}function x(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.l+=t/100,n.l=L(n.l),i(n)}function m(e,t){t=0===t?0:t||10;var n=i(e).toRgb();return n.r=X(0,V(255,n.r-q(-t/100*255))),n.g=X(0,V(255,n.g-q(-t/100*255))),n.b=X(0,V(255,n.b-q(-t/100*255))),i(n)}function _(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.l-=t/100,n.l=L(n.l),i(n)}function w(e,t){var n=i(e).toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,i(n)}function C(e){var t=i(e).toHsl();return t.h=(t.h+180)%360,i(t)}function y(e){var t=i(e).toHsl(),n=t.h;return[i(e),i({h:(n+120)%360,s:t.s,l:t.l}),i({h:(n+240)%360,s:t.s,l:t.l})]}function k(e){var t=i(e).toHsl(),n=t.h;return[i(e),i({h:(n+90)%360,s:t.s,l:t.l}),i({h:(n+180)%360,s:t.s,l:t.l}),i({h:(n+270)%360,s:t.s,l:t.l})]}function F(e){var t=i(e).toHsl(),n=t.h;return[i(e),i({h:(n+72)%360,s:t.s,l:t.l}),i({h:(n+216)%360,s:t.s,l:t.l})]}function A(e,t,n){t=t||6,n=n||30;var r=i(e).toHsl(),a=360/n,o=[i(e)];for(r.h=(r.h-(a*t>>1)+720)%360;--t;)r.h=(r.h+a)%360,o.push(i(r));return o}function S(e,t){t=t||6;for(var n=i(e).toHsv(),r=n.h,a=n.s,o=n.v,s=[],c=1/t;t--;)s.push(i({h:r,s:a,v:o})),o=(o+c)%1;return s}function M(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function E(e,t){O(e)&&(e=\"100%\");var n=j(e);return e=V(t,X(0,parseFloat(e))),n&&(e=parseInt(e*t,10)/100),a.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function L(e){return V(1,X(0,e))}function R(e){return parseInt(e,16)}function O(e){return\"string\"==typeof e&&-1!=e.indexOf(\".\")&&1===parseFloat(e)}function j(e){return\"string\"==typeof e&&-1!=e.indexOf(\"%\")}function B(e){return 1==e.length?\"0\"+e:\"\"+e}function D(e){return e<=1&&(e=100*e+\"%\"),e}function H(e){return a.round(255*parseFloat(e)).toString(16)}function P(e){return R(e)/255}function z(e){return!!K.CSS_UNIT.exec(e)}function $(e){e=e.replace(T,\"\").replace(I,\"\").toLowerCase();var t=!1;if(W[e])e=W[e],t=!0;else if(\"transparent\"==e)return{r:0,g:0,b:0,a:0,format:\"name\"};var n;return(n=K.rgb.exec(e))?{r:n[1],g:n[2],b:n[3]}:(n=K.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=K.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=K.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=K.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=K.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=K.hex8.exec(e))?{r:R(n[1]),g:R(n[2]),b:R(n[3]),a:P(n[4]),format:t?\"name\":\"hex8\"}:(n=K.hex6.exec(e))?{r:R(n[1]),g:R(n[2]),b:R(n[3]),format:t?\"name\":\"hex\"}:(n=K.hex4.exec(e))?{r:R(n[1]+\"\"+n[1]),g:R(n[2]+\"\"+n[2]),b:R(n[3]+\"\"+n[3]),a:P(n[4]+\"\"+n[4]),format:t?\"name\":\"hex8\"}:!!(n=K.hex3.exec(e))&&{r:R(n[1]+\"\"+n[1]),g:R(n[2]+\"\"+n[2]),b:R(n[3]+\"\"+n[3]),format:t?\"name\":\"hex\"}}function N(e){var t,n;return e=e||{level:\"AA\",size:\"small\"},t=(e.level||\"AA\").toUpperCase(),n=(e.size||\"small\").toLowerCase(),\"AA\"!==t&&\"AAA\"!==t&&(t=\"AA\"),\"small\"!==n&&\"large\"!==n&&(n=\"small\"),{level:t,size:n}}var T=/^\\s+/,I=/\\s+$/,U=0,q=a.round,V=a.min,X=a.max,G=a.random;i.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,n,r,i,o,s=this.toRgb();return e=s.r/255,t=s.g/255,n=s.b/255,r=e<=.03928?e/12.92:a.pow((e+.055)/1.055,2.4),i=t<=.03928?t/12.92:a.pow((t+.055)/1.055,2.4),o=n<=.03928?n/12.92:a.pow((n+.055)/1.055,2.4),.2126*r+.7152*i+.0722*o},setAlpha:function(e){return this._a=M(e),this._roundA=q(100*this._a)/100,this},toHsv:function(){var e=u(this._r,this._g,this._b);return{h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=u(this._r,this._g,this._b),t=q(360*e.h),n=q(100*e.s),r=q(100*e.v);return 1==this._a?\"hsv(\"+t+\", \"+n+\"%, \"+r+\"%)\":\"hsva(\"+t+\", \"+n+\"%, \"+r+\"%, \"+this._roundA+\")\"},toHsl:function(){var e=c(this._r,this._g,this._b);return{h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=c(this._r,this._g,this._b),t=q(360*e.h),n=q(100*e.s),r=q(100*e.l);return 1==this._a?\"hsl(\"+t+\", \"+n+\"%, \"+r+\"%)\":\"hsla(\"+t+\", \"+n+\"%, \"+r+\"%, \"+this._roundA+\")\"},toHex:function(e){return h(this._r,this._g,this._b,e)},toHexString:function(e){return\"#\"+this.toHex(e)},toHex8:function(e){return f(this._r,this._g,this._b,this._a,e)},toHex8String:function(e){return\"#\"+this.toHex8(e)},toRgb:function(){return{r:q(this._r),g:q(this._g),b:q(this._b),a:this._a}},toRgbString:function(){return 1==this._a?\"rgb(\"+q(this._r)+\", \"+q(this._g)+\", \"+q(this._b)+\")\":\"rgba(\"+q(this._r)+\", \"+q(this._g)+\", \"+q(this._b)+\", \"+this._roundA+\")\"},toPercentageRgb:function(){return{r:q(100*E(this._r,255))+\"%\",g:q(100*E(this._g,255))+\"%\",b:q(100*E(this._b,255))+\"%\",a:this._a}},toPercentageRgbString:function(){return 1==this._a?\"rgb(\"+q(100*E(this._r,255))+\"%, \"+q(100*E(this._g,255))+\"%, \"+q(100*E(this._b,255))+\"%)\":\"rgba(\"+q(100*E(this._r,255))+\"%, \"+q(100*E(this._g,255))+\"%, \"+q(100*E(this._b,255))+\"%, \"+this._roundA+\")\"},toName:function(){return 0===this._a?\"transparent\":!(this._a<1)&&(Y[h(this._r,this._g,this._b,!0)]||!1)},toFilter:function(e){var t=\"#\"+p(this._r,this._g,this._b,this._a),n=t,r=this._gradientType?\"GradientType = 1, \":\"\";if(e){var a=i(e);n=\"#\"+p(a._r,a._g,a._b,a._a)}return\"progid:DXImageTransform.Microsoft.gradient(\"+r+\"startColorstr=\"+t+\",endColorstr=\"+n+\")\"},toString:function(e){var t=!!e;e=e||this._format;var n=!1,r=this._a<1&&this._a>=0;return t||!r||\"hex\"!==e&&\"hex6\"!==e&&\"hex3\"!==e&&\"hex4\"!==e&&\"hex8\"!==e&&\"name\"!==e?(\"rgb\"===e&&(n=this.toRgbString()),\"prgb\"===e&&(n=this.toPercentageRgbString()),\"hex\"!==e&&\"hex6\"!==e||(n=this.toHexString()),\"hex3\"===e&&(n=this.toHexString(!0)),\"hex4\"===e&&(n=this.toHex8String(!0)),\"hex8\"===e&&(n=this.toHex8String()),\"name\"===e&&(n=this.toName()),\"hsl\"===e&&(n=this.toHslString()),\"hsv\"===e&&(n=this.toHsvString()),n||this.toHexString()):\"name\"===e&&0===this._a?this.toName():this.toRgbString()},clone:function(){return i(this.toString())},_applyModification:function(e,t){var n=e.apply(null,[this].concat([].slice.call(t)));return this._r=n._r,this._g=n._g,this._b=n._b,this.setAlpha(n._a),this},lighten:function(){return this._applyModification(x,arguments)},brighten:function(){return this._applyModification(m,arguments)},darken:function(){return this._applyModification(_,arguments)},desaturate:function(){return this._applyModification(v,arguments)},saturate:function(){return this._applyModification(g,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(w,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(A,arguments)},complement:function(){return this._applyCombination(C,arguments)},monochromatic:function(){return this._applyCombination(S,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(k,arguments)}},i.fromRatio=function(e,t){if(\"object\"==typeof e){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]=\"a\"===r?e[r]:D(e[r]));e=n}return i(e,t)},i.equals=function(e,t){return!(!e||!t)&&i(e).toRgbString()==i(t).toRgbString()},i.random=function(){return i.fromRatio({r:G(),g:G(),b:G()})},i.mix=function(e,t,n){n=0===n?0:n||50;var r=i(e).toRgb(),a=i(t).toRgb(),o=n/100;return i({r:(a.r-r.r)*o+r.r,g:(a.g-r.g)*o+r.g,b:(a.b-r.b)*o+r.b,a:(a.a-r.a)*o+r.a})},i.readability=function(e,t){var n=i(e),r=i(t);return(a.max(n.getLuminance(),r.getLuminance())+.05)/(a.min(n.getLuminance(),r.getLuminance())+.05)},i.isReadable=function(e,t,n){var r,a,o=i.readability(e,t);switch(a=!1,r=N(n),r.level+r.size){case\"AAsmall\":case\"AAAlarge\":a=o>=4.5;break;case\"AAlarge\":a=o>=3;break;case\"AAAsmall\":a=o>=7}return a},i.mostReadable=function(e,t,n){var r,a,o,s,c=null,l=0;n=n||{},a=n.includeFallbackColors,o=n.level,s=n.size;for(var u=0;u<t.length;u++)(r=i.readability(e,t[u]))>l&&(l=r,c=i(t[u]));return i.isReadable(e,c,{level:o,size:s})||!a?c:(n.includeFallbackColors=!1,i.mostReadable(e,[\"#fff\",\"#000\"],n))};var W=i.names={aliceblue:\"f0f8ff\",antiquewhite:\"faebd7\",aqua:\"0ff\",aquamarine:\"7fffd4\",azure:\"f0ffff\",beige:\"f5f5dc\",bisque:\"ffe4c4\",black:\"000\",blanchedalmond:\"ffebcd\",blue:\"00f\",blueviolet:\"8a2be2\",brown:\"a52a2a\",burlywood:\"deb887\",burntsienna:\"ea7e5d\",cadetblue:\"5f9ea0\",chartreuse:\"7fff00\",chocolate:\"d2691e\",coral:\"ff7f50\",cornflowerblue:\"6495ed\",cornsilk:\"fff8dc\",crimson:\"dc143c\",cyan:\"0ff\",darkblue:\"00008b\",darkcyan:\"008b8b\",darkgoldenrod:\"b8860b\",darkgray:\"a9a9a9\",darkgreen:\"006400\",darkgrey:\"a9a9a9\",darkkhaki:\"bdb76b\",darkmagenta:\"8b008b\",darkolivegreen:\"556b2f\",darkorange:\"ff8c00\",darkorchid:\"9932cc\",darkred:\"8b0000\",darksalmon:\"e9967a\",darkseagreen:\"8fbc8f\",darkslateblue:\"483d8b\",darkslategray:\"2f4f4f\",darkslategrey:\"2f4f4f\",darkturquoise:\"00ced1\",darkviolet:\"9400d3\",deeppink:\"ff1493\",deepskyblue:\"00bfff\",dimgray:\"696969\",dimgrey:\"696969\",dodgerblue:\"1e90ff\",firebrick:\"b22222\",floralwhite:\"fffaf0\",forestgreen:\"228b22\",fuchsia:\"f0f\",gainsboro:\"dcdcdc\",ghostwhite:\"f8f8ff\",gold:\"ffd700\",goldenrod:\"daa520\",gray:\"808080\",green:\"008000\",greenyellow:\"adff2f\",grey:\"808080\",honeydew:\"f0fff0\",hotpink:\"ff69b4\",indianred:\"cd5c5c\",indigo:\"4b0082\",ivory:\"fffff0\",khaki:\"f0e68c\",lavender:\"e6e6fa\",lavenderblush:\"fff0f5\",lawngreen:\"7cfc00\",lemonchiffon:\"fffacd\",lightblue:\"add8e6\",lightcoral:\"f08080\",lightcyan:\"e0ffff\",lightgoldenrodyellow:\"fafad2\",lightgray:\"d3d3d3\",lightgreen:\"90ee90\",lightgrey:\"d3d3d3\",lightpink:\"ffb6c1\",lightsalmon:\"ffa07a\",lightseagreen:\"20b2aa\",lightskyblue:\"87cefa\",lightslategray:\"789\",lightslategrey:\"789\",lightsteelblue:\"b0c4de\",lightyellow:\"ffffe0\",lime:\"0f0\",limegreen:\"32cd32\",linen:\"faf0e6\",magenta:\"f0f\",maroon:\"800000\",mediumaquamarine:\"66cdaa\",mediumblue:\"0000cd\",mediumorchid:\"ba55d3\",mediumpurple:\"9370db\",mediumseagreen:\"3cb371\",mediumslateblue:\"7b68ee\",mediumspringgreen:\"00fa9a\",mediumturquoise:\"48d1cc\",mediumvioletred:\"c71585\",midnightblue:\"191970\",mintcream:\"f5fffa\",mistyrose:\"ffe4e1\",moccasin:\"ffe4b5\",navajowhite:\"ffdead\",navy:\"000080\",oldlace:\"fdf5e6\",olive:\"808000\",olivedrab:\"6b8e23\",orange:\"ffa500\",orangered:\"ff4500\",orchid:\"da70d6\",palegoldenrod:\"eee8aa\",palegreen:\"98fb98\",paleturquoise:\"afeeee\",palevioletred:\"db7093\",papayawhip:\"ffefd5\",peachpuff:\"ffdab9\",peru:\"cd853f\",pink:\"ffc0cb\",plum:\"dda0dd\",powderblue:\"b0e0e6\",purple:\"800080\",rebeccapurple:\"663399\",red:\"f00\",rosybrown:\"bc8f8f\",royalblue:\"4169e1\",saddlebrown:\"8b4513\",salmon:\"fa8072\",sandybrown:\"f4a460\",seagreen:\"2e8b57\",seashell:\"fff5ee\",sienna:\"a0522d\",silver:\"c0c0c0\",skyblue:\"87ceeb\",slateblue:\"6a5acd\",slategray:\"708090\",slategrey:\"708090\",snow:\"fffafa\",springgreen:\"00ff7f\",steelblue:\"4682b4\",tan:\"d2b48c\",teal:\"008080\",thistle:\"d8bfd8\",tomato:\"ff6347\",turquoise:\"40e0d0\",violet:\"ee82ee\",wheat:\"f5deb3\",white:\"fff\",whitesmoke:\"f5f5f5\",yellow:\"ff0\",yellowgreen:\"9acd32\"},Y=i.hexNames=function(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[e[n]]=n);return t}(W),K=function(){var e=\"(?:[-\\\\+]?\\\\d*\\\\.\\\\d+%?)|(?:[-\\\\+]?\\\\d+%?)\",t=\"[\\\\s|\\\\(]+(\"+e+\")[,|\\\\s]+(\"+e+\")[,|\\\\s]+(\"+e+\")\\\\s*\\\\)?\",n=\"[\\\\s|\\\\(]+(\"+e+\")[,|\\\\s]+(\"+e+\")[,|\\\\s]+(\"+e+\")[,|\\\\s]+(\"+e+\")\\\\s*\\\\)?\";return{CSS_UNIT:new RegExp(e),rgb:new RegExp(\"rgb\"+t),rgba:new RegExp(\"rgba\"+n),hsl:new RegExp(\"hsl\"+t),hsla:new RegExp(\"hsla\"+n),hsv:new RegExp(\"hsv\"+t),hsva:new RegExp(\"hsva\"+n),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();void 0!==e&&e.exports?e.exports=i:void 0!==(r=function(){return i}.call(t,n,t,e))&&(e.exports=r)}(Math)},function(e,t,n){var r=n(29);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"0f73e73c\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-editable-input {\\n position: relative;\\n}\\n.vc-input__input {\\n padding: 0;\\n border: 0;\\n outline: none;\\n}\\n.vc-input__label {\\n text-transform: capitalize;\\n}\\n\",\"\"])},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"vc-editable-input\"},[n(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:e.val,expression:\"val\"}],ref:\"input\",staticClass:\"vc-input__input\",attrs:{\"aria-labelledby\":e.labelId},domProps:{value:e.val},on:{keydown:e.handleKeyDown,input:[function(t){t.target.composing||(e.val=t.target.value)},e.update]}}),e._v(\" \"),n(\"span\",{staticClass:\"vc-input__label\",attrs:{for:e.label,id:e.labelId}},[e._v(e._s(e.labelSpanText))]),e._v(\" \"),n(\"span\",{staticClass:\"vc-input__desc\"},[e._v(e._s(e.desc))])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"vc-compact\",attrs:{role:\"application\",\"aria-label\":\"Compact color picker\"}},[n(\"ul\",{staticClass:\"vc-compact-colors\",attrs:{role:\"listbox\"}},e._l(e.paletteUpperCase(e.palette),function(t){return n(\"li\",{key:t,staticClass:\"vc-compact-color-item\",class:{\"vc-compact-color-item--white\":\"#FFFFFF\"===t},style:{background:t},attrs:{role:\"option\",\"aria-label\":\"color:\"+t,\"aria-selected\":t===e.pick},on:{click:function(n){e.handlerClick(t)}}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t===e.pick,expression:\"c === pick\"}],staticClass:\"vc-compact-dot\"})])}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";function r(e){c||n(33)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(11),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(35),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Grayscale.vue\",t.default=d.exports},function(e,t,n){var r=n(34);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"21ddbb74\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-grayscale {\\n width: 125px;\\n border-radius: 2px;\\n box-shadow: 0 2px 15px rgba(0,0,0,.12), 0 2px 10px rgba(0,0,0,.16);\\n background-color: #fff;\\n}\\n.vc-grayscale-colors {\\n border-radius: 2px;\\n overflow: hidden;\\n padding: 0;\\n margin: 0;\\n}\\n.vc-grayscale-color-item {\\n list-style: none;\\n width: 25px;\\n height: 25px;\\n float: left;\\n position: relative;\\n cursor: pointer;\\n}\\n.vc-grayscale-color-item--white .vc-grayscale-dot {\\n background: #000;\\n}\\n.vc-grayscale-dot {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n width: 6px;\\n height: 6px;\\n margin: -3px 0 0 -2px;\\n border-radius: 50%;\\n opacity: 1;\\n background: #fff;\\n}\\n\",\"\"])},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"vc-grayscale\",attrs:{role:\"application\",\"aria-label\":\"Grayscale color picker\"}},[n(\"ul\",{staticClass:\"vc-grayscale-colors\",attrs:{role:\"listbox\"}},e._l(e.paletteUpperCase(e.palette),function(t){return n(\"li\",{key:t,staticClass:\"vc-grayscale-color-item\",class:{\"vc-grayscale-color-item--white\":\"#FFFFFF\"==t},style:{background:t},attrs:{role:\"option\",\"aria-label\":\"Color:\"+t,\"aria-selected\":t===e.pick},on:{click:function(n){e.handlerClick(t)}}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t===e.pick,expression:\"c === pick\"}],staticClass:\"vc-grayscale-dot\"})])}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";function r(e){c||n(37)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(12),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(39),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Material.vue\",t.default=d.exports},function(e,t,n){var r=n(38);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"1ff3af73\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,'\\n.vc-material {\\n width: 98px;\\n height: 98px;\\n padding: 16px;\\n font-family: \"Roboto\";\\n position: relative;\\n border-radius: 2px;\\n box-shadow: 0 2px 10px rgba(0,0,0,.12), 0 2px 5px rgba(0,0,0,.16);\\n background-color: #fff;\\n}\\n.vc-material .vc-input__input {\\n width: 100%;\\n margin-top: 12px;\\n font-size: 15px;\\n color: #333;\\n height: 30px;\\n}\\n.vc-material .vc-input__label {\\n position: absolute;\\n top: 0;\\n left: 0;\\n font-size: 11px;\\n color: #999;\\n text-transform: capitalize;\\n}\\n.vc-material-hex {\\n border-bottom-width: 2px;\\n border-bottom-style: solid;\\n}\\n.vc-material-split {\\n display: flex;\\n margin-right: -10px;\\n padding-top: 11px;\\n}\\n.vc-material-third {\\n flex: 1;\\n padding-right: 10px;\\n}\\n',\"\"])},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"vc-material\",attrs:{role:\"application\",\"aria-label\":\"Material color picker\"}},[n(\"ed-in\",{staticClass:\"vc-material-hex\",style:{borderColor:e.colors.hex},attrs:{label:\"hex\"},on:{change:e.onChange},model:{value:e.colors.hex,callback:function(t){e.$set(e.colors,\"hex\",t)},expression:\"colors.hex\"}}),e._v(\" \"),n(\"div\",{staticClass:\"vc-material-split\"},[n(\"div\",{staticClass:\"vc-material-third\"},[n(\"ed-in\",{attrs:{label:\"r\"},on:{change:e.onChange},model:{value:e.colors.rgba.r,callback:function(t){e.$set(e.colors.rgba,\"r\",t)},expression:\"colors.rgba.r\"}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-material-third\"},[n(\"ed-in\",{attrs:{label:\"g\"},on:{change:e.onChange},model:{value:e.colors.rgba.g,callback:function(t){e.$set(e.colors.rgba,\"g\",t)},expression:\"colors.rgba.g\"}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-material-third\"},[n(\"ed-in\",{attrs:{label:\"b\"},on:{change:e.onChange},model:{value:e.colors.rgba.b,callback:function(t){e.$set(e.colors.rgba,\"b\",t)},expression:\"colors.rgba.b\"}})],1)])],1)},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";function r(e){c||n(41)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(13),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(46),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Slider.vue\",t.default=d.exports},function(e,t,n){var r=n(42);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"7982aa43\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-slider {\\n position: relative;\\n width: 410px;\\n}\\n.vc-slider-hue-warp {\\n height: 12px;\\n position: relative;\\n}\\n.vc-slider-hue-warp .vc-hue-picker {\\n width: 14px;\\n height: 14px;\\n border-radius: 6px;\\n transform: translate(-7px, -2px);\\n background-color: rgb(248, 248, 248);\\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);\\n}\\n.vc-slider-swatches {\\n display: flex;\\n margin-top: 20px;\\n}\\n.vc-slider-swatch {\\n margin-right: 1px;\\n flex: 1;\\n width: 20%;\\n}\\n.vc-slider-swatch:first-child {\\n margin-right: 1px;\\n}\\n.vc-slider-swatch:first-child .vc-slider-swatch-picker {\\n border-radius: 2px 0px 0px 2px;\\n}\\n.vc-slider-swatch:last-child {\\n margin-right: 0;\\n}\\n.vc-slider-swatch:last-child .vc-slider-swatch-picker {\\n border-radius: 0px 2px 2px 0px;\\n}\\n.vc-slider-swatch-picker {\\n cursor: pointer;\\n height: 12px;\\n}\\n.vc-slider-swatch:nth-child(n) .vc-slider-swatch-picker.vc-slider-swatch-picker--active {\\n transform: scaleY(1.8);\\n border-radius: 3.6px/2px;\\n}\\n.vc-slider-swatch-picker--white {\\n box-shadow: inset 0 0 0 1px #ddd;\\n}\\n.vc-slider-swatch-picker--active.vc-slider-swatch-picker--white {\\n box-shadow: inset 0 0 0 0.6px #ddd;\\n}\\n\",\"\"])},function(e,t,n){var r=n(44);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"7c5f1a1c\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-hue {\\n position: absolute;\\n top: 0px;\\n right: 0px;\\n bottom: 0px;\\n left: 0px;\\n border-radius: 2px;\\n}\\n.vc-hue--horizontal {\\n background: linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%);\\n}\\n.vc-hue--vertical {\\n background: linear-gradient(to top, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%);\\n}\\n.vc-hue-container {\\n cursor: pointer;\\n margin: 0 2px;\\n position: relative;\\n height: 100%;\\n}\\n.vc-hue-pointer {\\n z-index: 2;\\n position: absolute;\\n}\\n.vc-hue-picker {\\n cursor: pointer;\\n margin-top: 1px;\\n width: 4px;\\n border-radius: 1px;\\n height: 8px;\\n box-shadow: 0 0 2px rgba(0, 0, 0, .6);\\n background: #fff;\\n transform: translateX(-2px) ;\\n}\\n\",\"\"])},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{class:[\"vc-hue\",e.directionClass]},[n(\"div\",{ref:\"container\",staticClass:\"vc-hue-container\",attrs:{role:\"slider\",\"aria-valuenow\":e.colors.hsl.h,\"aria-valuemin\":\"0\",\"aria-valuemax\":\"360\"},on:{mousedown:e.handleMouseDown,touchmove:e.handleChange,touchstart:e.handleChange}},[n(\"div\",{staticClass:\"vc-hue-pointer\",style:{top:e.pointerTop,left:e.pointerLeft},attrs:{role:\"presentation\"}},[n(\"div\",{staticClass:\"vc-hue-picker\"})])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"vc-slider\",attrs:{role:\"application\",\"aria-label\":\"Slider color picker\"}},[n(\"div\",{staticClass:\"vc-slider-hue-warp\"},[n(\"hue\",{on:{change:e.hueChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-slider-swatches\",attrs:{role:\"group\"}},e._l(e.swatches,function(t,r){return n(\"div\",{key:r,staticClass:\"vc-slider-swatch\",attrs:{\"data-index\":r,\"aria-label\":\"color:\"+e.colors.hex,role:\"button\"},on:{click:function(n){e.handleSwClick(r,t)}}},[n(\"div\",{staticClass:\"vc-slider-swatch-picker\",class:{\"vc-slider-swatch-picker--active\":t==e.activeOffset,\"vc-slider-swatch-picker--white\":\"1\"===t},style:{background:\"hsl(\"+e.colors.hsl.h+\", 50%, \"+100*t+\"%)\"}})])}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";function r(e){c||n(48)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(15),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(51),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Swatches.vue\",t.default=d.exports},function(e,t,n){var r=n(49);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"10f839a2\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-swatches {\\n width: 320px;\\n height: 240px;\\n overflow-y: scroll;\\n background-color: #fff;\\n box-shadow: 0 2px 10px rgba(0,0,0,.12), 0 2px 5px rgba(0,0,0,.16);\\n}\\n.vc-swatches-box {\\n padding: 16px 0 6px 16px;\\n overflow: hidden;\\n}\\n.vc-swatches-color-group {\\n padding-bottom: 10px;\\n width: 40px;\\n float: left;\\n margin-right: 10px;\\n}\\n.vc-swatches-color-it {\\n box-sizing: border-box;\\n width: 40px;\\n height: 24px;\\n cursor: pointer;\\n background: #880e4f;\\n margin-bottom: 1px;\\n overflow: hidden;\\n -ms-border-radius: 2px 2px 0 0;\\n -moz-border-radius: 2px 2px 0 0;\\n -o-border-radius: 2px 2px 0 0;\\n -webkit-border-radius: 2px 2px 0 0;\\n border-radius: 2px 2px 0 0;\\n}\\n.vc-swatches-color--white {\\n border: 1px solid #DDD;\\n}\\n.vc-swatches-pick {\\n fill: rgb(255, 255, 255);\\n margin-left: 8px;\\n display: block;\\n}\\n.vc-swatches-color--white .vc-swatches-pick {\\n fill: rgb(51, 51, 51);\\n}\\n\",\"\"])},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),n.d(t,\"red\",function(){return r}),n.d(t,\"pink\",function(){return a}),n.d(t,\"purple\",function(){return i}),n.d(t,\"deepPurple\",function(){return o}),n.d(t,\"indigo\",function(){return s}),n.d(t,\"blue\",function(){return c}),n.d(t,\"lightBlue\",function(){return l}),n.d(t,\"cyan\",function(){return u}),n.d(t,\"teal\",function(){return d}),n.d(t,\"green\",function(){return h}),n.d(t,\"lightGreen\",function(){return f}),n.d(t,\"lime\",function(){return p}),n.d(t,\"yellow\",function(){return v}),n.d(t,\"amber\",function(){return g}),n.d(t,\"orange\",function(){return b}),n.d(t,\"deepOrange\",function(){return x}),n.d(t,\"brown\",function(){return m}),n.d(t,\"grey\",function(){return _}),n.d(t,\"blueGrey\",function(){return w}),n.d(t,\"darkText\",function(){return C}),n.d(t,\"lightText\",function(){return y}),n.d(t,\"darkIcons\",function(){return k}),n.d(t,\"lightIcons\",function(){return F}),n.d(t,\"white\",function(){return A}),n.d(t,\"black\",function(){return S});var r={50:\"#ffebee\",100:\"#ffcdd2\",200:\"#ef9a9a\",300:\"#e57373\",400:\"#ef5350\",500:\"#f44336\",600:\"#e53935\",700:\"#d32f2f\",800:\"#c62828\",900:\"#b71c1c\",a100:\"#ff8a80\",a200:\"#ff5252\",a400:\"#ff1744\",a700:\"#d50000\"},a={50:\"#fce4ec\",100:\"#f8bbd0\",200:\"#f48fb1\",300:\"#f06292\",400:\"#ec407a\",500:\"#e91e63\",600:\"#d81b60\",700:\"#c2185b\",800:\"#ad1457\",900:\"#880e4f\",a100:\"#ff80ab\",a200:\"#ff4081\",a400:\"#f50057\",a700:\"#c51162\"},i={50:\"#f3e5f5\",100:\"#e1bee7\",200:\"#ce93d8\",300:\"#ba68c8\",400:\"#ab47bc\",500:\"#9c27b0\",600:\"#8e24aa\",700:\"#7b1fa2\",800:\"#6a1b9a\",900:\"#4a148c\",a100:\"#ea80fc\",a200:\"#e040fb\",a400:\"#d500f9\",a700:\"#aa00ff\"},o={50:\"#ede7f6\",100:\"#d1c4e9\",200:\"#b39ddb\",300:\"#9575cd\",400:\"#7e57c2\",500:\"#673ab7\",600:\"#5e35b1\",700:\"#512da8\",800:\"#4527a0\",900:\"#311b92\",a100:\"#b388ff\",a200:\"#7c4dff\",a400:\"#651fff\",a700:\"#6200ea\"},s={50:\"#e8eaf6\",100:\"#c5cae9\",200:\"#9fa8da\",300:\"#7986cb\",400:\"#5c6bc0\",500:\"#3f51b5\",600:\"#3949ab\",700:\"#303f9f\",800:\"#283593\",900:\"#1a237e\",a100:\"#8c9eff\",a200:\"#536dfe\",a400:\"#3d5afe\",a700:\"#304ffe\"},c={50:\"#e3f2fd\",100:\"#bbdefb\",200:\"#90caf9\",300:\"#64b5f6\",400:\"#42a5f5\",500:\"#2196f3\",600:\"#1e88e5\",700:\"#1976d2\",800:\"#1565c0\",900:\"#0d47a1\",a100:\"#82b1ff\",a200:\"#448aff\",a400:\"#2979ff\",a700:\"#2962ff\"},l={50:\"#e1f5fe\",100:\"#b3e5fc\",200:\"#81d4fa\",300:\"#4fc3f7\",400:\"#29b6f6\",500:\"#03a9f4\",600:\"#039be5\",700:\"#0288d1\",800:\"#0277bd\",900:\"#01579b\",a100:\"#80d8ff\",a200:\"#40c4ff\",a400:\"#00b0ff\",a700:\"#0091ea\"},u={50:\"#e0f7fa\",100:\"#b2ebf2\",200:\"#80deea\",300:\"#4dd0e1\",400:\"#26c6da\",500:\"#00bcd4\",600:\"#00acc1\",700:\"#0097a7\",800:\"#00838f\",900:\"#006064\",a100:\"#84ffff\",a200:\"#18ffff\",a400:\"#00e5ff\",a700:\"#00b8d4\"},d={50:\"#e0f2f1\",100:\"#b2dfdb\",200:\"#80cbc4\",300:\"#4db6ac\",400:\"#26a69a\",500:\"#009688\",600:\"#00897b\",700:\"#00796b\",800:\"#00695c\",900:\"#004d40\",a100:\"#a7ffeb\",a200:\"#64ffda\",a400:\"#1de9b6\",a700:\"#00bfa5\"},h={50:\"#e8f5e9\",100:\"#c8e6c9\",200:\"#a5d6a7\",300:\"#81c784\",400:\"#66bb6a\",500:\"#4caf50\",600:\"#43a047\",700:\"#388e3c\",800:\"#2e7d32\",900:\"#1b5e20\",a100:\"#b9f6ca\",a200:\"#69f0ae\",a400:\"#00e676\",a700:\"#00c853\"},f={50:\"#f1f8e9\",100:\"#dcedc8\",200:\"#c5e1a5\",300:\"#aed581\",400:\"#9ccc65\",500:\"#8bc34a\",600:\"#7cb342\",700:\"#689f38\",800:\"#558b2f\",900:\"#33691e\",a100:\"#ccff90\",a200:\"#b2ff59\",a400:\"#76ff03\",a700:\"#64dd17\"},p={50:\"#f9fbe7\",100:\"#f0f4c3\",200:\"#e6ee9c\",300:\"#dce775\",400:\"#d4e157\",500:\"#cddc39\",600:\"#c0ca33\",700:\"#afb42b\",800:\"#9e9d24\",900:\"#827717\",a100:\"#f4ff81\",a200:\"#eeff41\",a400:\"#c6ff00\",a700:\"#aeea00\"},v={50:\"#fffde7\",100:\"#fff9c4\",200:\"#fff59d\",300:\"#fff176\",400:\"#ffee58\",500:\"#ffeb3b\",600:\"#fdd835\",700:\"#fbc02d\",800:\"#f9a825\",900:\"#f57f17\",a100:\"#ffff8d\",a200:\"#ffff00\",a400:\"#ffea00\",a700:\"#ffd600\"},g={50:\"#fff8e1\",100:\"#ffecb3\",200:\"#ffe082\",300:\"#ffd54f\",400:\"#ffca28\",500:\"#ffc107\",600:\"#ffb300\",700:\"#ffa000\",800:\"#ff8f00\",900:\"#ff6f00\",a100:\"#ffe57f\",a200:\"#ffd740\",a400:\"#ffc400\",a700:\"#ffab00\"},b={50:\"#fff3e0\",100:\"#ffe0b2\",200:\"#ffcc80\",300:\"#ffb74d\",400:\"#ffa726\",500:\"#ff9800\",600:\"#fb8c00\",700:\"#f57c00\",800:\"#ef6c00\",900:\"#e65100\",a100:\"#ffd180\",a200:\"#ffab40\",a400:\"#ff9100\",a700:\"#ff6d00\"},x={50:\"#fbe9e7\",100:\"#ffccbc\",200:\"#ffab91\",300:\"#ff8a65\",400:\"#ff7043\",500:\"#ff5722\",600:\"#f4511e\",700:\"#e64a19\",800:\"#d84315\",900:\"#bf360c\",a100:\"#ff9e80\",a200:\"#ff6e40\",a400:\"#ff3d00\",a700:\"#dd2c00\"},m={50:\"#efebe9\",100:\"#d7ccc8\",200:\"#bcaaa4\",300:\"#a1887f\",400:\"#8d6e63\",500:\"#795548\",600:\"#6d4c41\",700:\"#5d4037\",800:\"#4e342e\",900:\"#3e2723\"},_={50:\"#fafafa\",100:\"#f5f5f5\",200:\"#eeeeee\",300:\"#e0e0e0\",400:\"#bdbdbd\",500:\"#9e9e9e\",600:\"#757575\",700:\"#616161\",800:\"#424242\",900:\"#212121\"},w={50:\"#eceff1\",100:\"#cfd8dc\",200:\"#b0bec5\",300:\"#90a4ae\",400:\"#78909c\",500:\"#607d8b\",600:\"#546e7a\",700:\"#455a64\",800:\"#37474f\",900:\"#263238\"},C={primary:\"rgba(0, 0, 0, 0.87)\",secondary:\"rgba(0, 0, 0, 0.54)\",disabled:\"rgba(0, 0, 0, 0.38)\",dividers:\"rgba(0, 0, 0, 0.12)\"},y={primary:\"rgba(255, 255, 255, 1)\",secondary:\"rgba(255, 255, 255, 0.7)\",disabled:\"rgba(255, 255, 255, 0.5)\",dividers:\"rgba(255, 255, 255, 0.12)\"},k={active:\"rgba(0, 0, 0, 0.54)\",inactive:\"rgba(0, 0, 0, 0.38)\"},F={active:\"rgba(255, 255, 255, 1)\",inactive:\"rgba(255, 255, 255, 0.5)\"},A=\"#ffffff\",S=\"#000000\";t.default={red:r,pink:a,purple:i,deepPurple:o,indigo:s,blue:c,lightBlue:l,cyan:u,teal:d,green:h,lightGreen:f,lime:p,yellow:v,amber:g,orange:b,deepOrange:x,brown:m,grey:_,blueGrey:w,darkText:C,lightText:y,darkIcons:k,lightIcons:F,white:A,black:S}},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"vc-swatches\",attrs:{role:\"application\",\"aria-label\":\"Swatches color picker\",\"data-pick\":e.pick}},[n(\"div\",{staticClass:\"vc-swatches-box\",attrs:{role:\"listbox\"}},e._l(e.palette,function(t,r){return n(\"div\",{key:r,staticClass:\"vc-swatches-color-group\"},e._l(t,function(t){return n(\"div\",{key:t,class:[\"vc-swatches-color-it\",{\"vc-swatches-color--white\":\"#FFFFFF\"===t}],style:{background:t},attrs:{role:\"option\",\"aria-label\":\"Color:\"+t,\"aria-selected\":e.equal(t),\"data-color\":t},on:{click:function(n){e.handlerClick(t)}}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.equal(t),expression:\"equal(c)\"}],staticClass:\"vc-swatches-pick\"},[n(\"svg\",{staticStyle:{width:\"24px\",height:\"24px\"},attrs:{viewBox:\"0 0 24 24\"}},[n(\"path\",{attrs:{d:\"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z\"}})])])])}))}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";function r(e){c||n(53)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(16),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(66),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Photoshop.vue\",t.default=d.exports},function(e,t,n){var r=n(54);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"080365d4\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,'\\n.vc-photoshop {\\n background: #DCDCDC;\\n border-radius: 4px;\\n box-shadow: 0 0 0 1px rgba(0,0,0,.25), 0 8px 16px rgba(0,0,0,.15);\\n box-sizing: initial;\\n width: 513px;\\n font-family: Roboto;\\n}\\n.vc-photoshop__disable-fields {\\n width: 390px;\\n}\\n.vc-ps-head {\\n background-image: linear-gradient(-180deg, #F0F0F0 0%, #D4D4D4 100%);\\n border-bottom: 1px solid #B1B1B1;\\n box-shadow: inset 0 1px 0 0 rgba(255,255,255,.2), inset 0 -1px 0 0 rgba(0,0,0,.02);\\n height: 23px;\\n line-height: 24px;\\n border-radius: 4px 4px 0 0;\\n font-size: 13px;\\n color: #4D4D4D;\\n text-align: center;\\n}\\n.vc-ps-body {\\n padding: 15px;\\n display: flex;\\n}\\n.vc-ps-saturation-wrap {\\n width: 256px;\\n height: 256px;\\n position: relative;\\n border: 2px solid #B3B3B3;\\n border-bottom: 2px solid #F0F0F0;\\n overflow: hidden;\\n}\\n.vc-ps-saturation-wrap .vc-saturation-circle {\\n width: 12px;\\n height: 12px;\\n}\\n.vc-ps-hue-wrap {\\n position: relative;\\n height: 256px;\\n width: 19px;\\n margin-left: 10px;\\n border: 2px solid #B3B3B3;\\n border-bottom: 2px solid #F0F0F0;\\n}\\n.vc-ps-hue-pointer {\\n position: relative;\\n}\\n.vc-ps-hue-pointer--left,\\n.vc-ps-hue-pointer--right {\\n position: absolute;\\n width: 0;\\n height: 0;\\n border-style: solid;\\n border-width: 5px 0 5px 8px;\\n border-color: transparent transparent transparent #555;\\n}\\n.vc-ps-hue-pointer--left:after,\\n.vc-ps-hue-pointer--right:after {\\n content: \"\";\\n width: 0;\\n height: 0;\\n border-style: solid;\\n border-width: 4px 0 4px 6px;\\n border-color: transparent transparent transparent #fff;\\n position: absolute;\\n top: 1px;\\n left: 1px;\\n transform: translate(-8px, -5px);\\n}\\n.vc-ps-hue-pointer--left {\\n transform: translate(-13px, -4px);\\n}\\n.vc-ps-hue-pointer--right {\\n transform: translate(20px, -4px) rotate(180deg);\\n}\\n.vc-ps-controls {\\n width: 180px;\\n margin-left: 10px;\\n display: flex;\\n}\\n.vc-ps-controls__disable-fields {\\n width: auto;\\n}\\n.vc-ps-actions {\\n margin-left: 20px;\\n flex: 1;\\n}\\n.vc-ps-ac-btn {\\n cursor: pointer;\\n background-image: linear-gradient(-180deg, #FFFFFF 0%, #E6E6E6 100%);\\n border: 1px solid #878787;\\n border-radius: 2px;\\n height: 20px;\\n box-shadow: 0 1px 0 0 #EAEAEA;\\n font-size: 14px;\\n color: #000;\\n line-height: 20px;\\n text-align: center;\\n margin-bottom: 10px;\\n}\\n.vc-ps-previews {\\n width: 60px;\\n}\\n.vc-ps-previews__swatches {\\n border: 1px solid #B3B3B3;\\n border-bottom: 1px solid #F0F0F0;\\n margin-bottom: 2px;\\n margin-top: 1px;\\n}\\n.vc-ps-previews__pr-color {\\n height: 34px;\\n box-shadow: inset 1px 0 0 #000, inset -1px 0 0 #000, inset 0 1px 0 #000;\\n}\\n.vc-ps-previews__label {\\n font-size: 14px;\\n color: #000;\\n text-align: center;\\n}\\n.vc-ps-fields {\\n padding-top: 5px;\\n padding-bottom: 9px;\\n width: 80px;\\n position: relative;\\n}\\n.vc-ps-fields .vc-input__input {\\n margin-left: 40%;\\n width: 40%;\\n height: 18px;\\n border: 1px solid #888888;\\n box-shadow: inset 0 1px 1px rgba(0,0,0,.1), 0 1px 0 0 #ECECEC;\\n margin-bottom: 5px;\\n font-size: 13px;\\n padding-left: 3px;\\n margin-right: 10px;\\n}\\n.vc-ps-fields .vc-input__label, .vc-ps-fields .vc-input__desc {\\n top: 0;\\n text-transform: uppercase;\\n font-size: 13px;\\n height: 18px;\\n line-height: 22px;\\n position: absolute;\\n}\\n.vc-ps-fields .vc-input__label {\\n left: 0;\\n width: 34px;\\n}\\n.vc-ps-fields .vc-input__desc {\\n right: 0;\\n width: 0;\\n}\\n.vc-ps-fields__divider {\\n height: 5px;\\n}\\n.vc-ps-fields__hex .vc-input__input {\\n margin-left: 20%;\\n width: 80%;\\n height: 18px;\\n border: 1px solid #888888;\\n box-shadow: inset 0 1px 1px rgba(0,0,0,.1), 0 1px 0 0 #ECECEC;\\n margin-bottom: 6px;\\n font-size: 13px;\\n padding-left: 3px;\\n}\\n.vc-ps-fields__hex .vc-input__label {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 14px;\\n text-transform: uppercase;\\n font-size: 13px;\\n height: 18px;\\n line-height: 22px;\\n}\\n',\"\"])},function(e,t,n){var r=n(56);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"b5380e52\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-saturation,\\n.vc-saturation--white,\\n.vc-saturation--black {\\n cursor: pointer;\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n}\\n.vc-saturation--white {\\n background: linear-gradient(to right, #fff, rgba(255,255,255,0));\\n}\\n.vc-saturation--black {\\n background: linear-gradient(to top, #000, rgba(0,0,0,0));\\n}\\n.vc-saturation-pointer {\\n cursor: pointer;\\n position: absolute;\\n}\\n.vc-saturation-circle {\\n cursor: head;\\n width: 4px;\\n height: 4px;\\n box-shadow: 0 0 0 1.5px #fff, inset 0 0 1px 1px rgba(0,0,0,.3), 0 0 1px 2px rgba(0,0,0,.4);\\n border-radius: 50%;\\n transform: translate(-2px, -2px);\\n}\\n\",\"\"])},function(e,t){function n(e,t,n){return t<n?e<t?t:e>n?n:e:e<n?n:e>t?t:e}e.exports=n},function(e,t){function n(e,t,n){function r(t){var n=v,r=g;return v=g=void 0,k=t,x=e.apply(r,n)}function i(e){return k=e,m=setTimeout(u,t),F?r(e):x}function o(e){var n=e-_,r=e-k,a=t-n;return A?C(a,b-r):a}function l(e){var n=e-_,r=e-k;return void 0===_||n>=t||n<0||A&&r>=b}function u(){var e=y();if(l(e))return d(e);m=setTimeout(u,o(e))}function d(e){return m=void 0,S&&v?r(e):(v=g=void 0,x)}function h(){void 0!==m&&clearTimeout(m),k=0,v=_=g=m=void 0}function f(){return void 0===m?x:d(y())}function p(){var e=y(),n=l(e);if(v=arguments,g=this,_=e,n){if(void 0===m)return i(_);if(A)return m=setTimeout(u,t),r(_)}return void 0===m&&(m=setTimeout(u,t)),x}var v,g,b,x,m,_,k=0,F=!1,A=!1,S=!0;if(\"function\"!=typeof e)throw new TypeError(c);return t=s(t)||0,a(n)&&(F=!!n.leading,A=\"maxWait\"in n,b=A?w(s(n.maxWait)||0,t):b,S=\"trailing\"in n?!!n.trailing:S),p.cancel=h,p.flush=f,p}function r(e,t,r){var i=!0,o=!0;if(\"function\"!=typeof e)throw new TypeError(c);return a(r)&&(i=\"leading\"in r?!!r.leading:i,o=\"trailing\"in r?!!r.trailing:o),n(e,t,{leading:i,maxWait:t,trailing:o})}function a(e){var t=typeof e;return!!e&&(\"object\"==t||\"function\"==t)}function i(e){return!!e&&\"object\"==typeof e}function o(e){return\"symbol\"==typeof e||i(e)&&_.call(e)==u}function s(e){if(\"number\"==typeof e)return e;if(o(e))return l;if(a(e)){var t=\"function\"==typeof e.valueOf?e.valueOf():e;e=a(t)?t+\"\":t}if(\"string\"!=typeof e)return 0===e?e:+e;e=e.replace(d,\"\");var n=f.test(e);return n||p.test(e)?v(e.slice(2),n?2:8):h.test(e)?l:+e}var c=\"Expected a function\",l=NaN,u=\"[object Symbol]\",d=/^\\s+|\\s+$/g,h=/^[-+]0x[0-9a-f]+$/i,f=/^0b[01]+$/i,p=/^0o[0-7]+$/i,v=parseInt,g=\"object\"==typeof global&&global&&global.Object===Object&&global,b=\"object\"==typeof self&&self&&self.Object===Object&&self,x=g||b||Function(\"return this\")(),m=Object.prototype,_=m.toString,w=Math.max,C=Math.min,y=function(){return x.Date.now()};e.exports=r},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{ref:\"container\",staticClass:\"vc-saturation\",style:{background:e.bgColor},on:{mousedown:e.handleMouseDown,touchmove:e.handleChange,touchstart:e.handleChange}},[n(\"div\",{staticClass:\"vc-saturation--white\"}),e._v(\" \"),n(\"div\",{staticClass:\"vc-saturation--black\"}),e._v(\" \"),n(\"div\",{staticClass:\"vc-saturation-pointer\",style:{top:e.pointerTop,left:e.pointerLeft}},[n(\"div\",{staticClass:\"vc-saturation-circle\"})])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){var r=n(61);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"4dc1b086\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-alpha {\\n position: absolute;\\n top: 0px;\\n right: 0px;\\n bottom: 0px;\\n left: 0px;\\n}\\n.vc-alpha-checkboard-wrap {\\n position: absolute;\\n top: 0px;\\n right: 0px;\\n bottom: 0px;\\n left: 0px;\\n overflow: hidden;\\n}\\n.vc-alpha-gradient {\\n position: absolute;\\n top: 0px;\\n right: 0px;\\n bottom: 0px;\\n left: 0px;\\n}\\n.vc-alpha-container {\\n cursor: pointer;\\n position: relative;\\n z-index: 2;\\n height: 100%;\\n margin: 0 3px;\\n}\\n.vc-alpha-pointer {\\n z-index: 2;\\n position: absolute;\\n}\\n.vc-alpha-picker {\\n cursor: pointer;\\n width: 4px;\\n border-radius: 1px;\\n height: 8px;\\n box-shadow: 0 0 2px rgba(0, 0, 0, .6);\\n background: #fff;\\n margin-top: 1px;\\n transform: translateX(-2px);\\n}\\n\",\"\"])},function(e,t,n){var r=n(63);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"7e15c05b\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-checkerboard {\\n position: absolute;\\n top: 0px;\\n right: 0px;\\n bottom: 0px;\\n left: 0px;\\n background-size: contain;\\n}\\n\",\"\"])},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement;return(e._self._c||t)(\"div\",{staticClass:\"vc-checkerboard\",style:e.bgStyle})},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"vc-alpha\"},[n(\"div\",{staticClass:\"vc-alpha-checkboard-wrap\"},[n(\"checkboard\")],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-alpha-gradient\",style:{background:e.gradientColor}}),e._v(\" \"),n(\"div\",{ref:\"container\",staticClass:\"vc-alpha-container\",on:{mousedown:e.handleMouseDown,touchmove:e.handleChange,touchstart:e.handleChange}},[n(\"div\",{staticClass:\"vc-alpha-pointer\",style:{left:100*e.colors.a+\"%\"}},[n(\"div\",{staticClass:\"vc-alpha-picker\"})])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{class:[\"vc-photoshop\",e.disableFields?\"vc-photoshop__disable-fields\":\"\"],attrs:{role:\"application\",\"aria-label\":\"PhotoShop color picker\"}},[n(\"div\",{staticClass:\"vc-ps-head\",attrs:{role:\"heading\"}},[e._v(e._s(e.head))]),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-body\"},[n(\"div\",{staticClass:\"vc-ps-saturation-wrap\"},[n(\"saturation\",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-hue-wrap\"},[n(\"hue\",{attrs:{direction:\"vertical\"},on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}},[n(\"div\",{staticClass:\"vc-ps-hue-pointer\"},[n(\"i\",{staticClass:\"vc-ps-hue-pointer--left\"}),n(\"i\",{staticClass:\"vc-ps-hue-pointer--right\"})])])],1),e._v(\" \"),n(\"div\",{class:[\"vc-ps-controls\",e.disableFields?\"vc-ps-controls__disable-fields\":\"\"]},[n(\"div\",{staticClass:\"vc-ps-previews\"},[n(\"div\",{staticClass:\"vc-ps-previews__label\"},[e._v(e._s(e.newLabel))]),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-previews__swatches\"},[n(\"div\",{staticClass:\"vc-ps-previews__pr-color\",style:{background:e.colors.hex},attrs:{\"aria-label\":\"New color is \"+e.colors.hex}}),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-previews__pr-color\",style:{background:e.currentColor},attrs:{\"aria-label\":\"Current color is \"+e.currentColor},on:{click:e.clickCurrentColor}})]),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-previews__label\"},[e._v(e._s(e.currentLabel))])]),e._v(\" \"),e.disableFields?e._e():n(\"div\",{staticClass:\"vc-ps-actions\"},[n(\"div\",{staticClass:\"vc-ps-ac-btn\",attrs:{role:\"button\",\"aria-label\":e.acceptLabel},on:{click:e.handleAccept}},[e._v(e._s(e.acceptLabel))]),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-ac-btn\",attrs:{role:\"button\",\"aria-label\":e.cancelLabel},on:{click:e.handleCancel}},[e._v(e._s(e.cancelLabel))]),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-fields\"},[n(\"ed-in\",{attrs:{label:\"h\",desc:\"°\",value:e.hsv.h},on:{change:e.inputChange}}),e._v(\" \"),n(\"ed-in\",{attrs:{label:\"s\",desc:\"%\",value:e.hsv.s,max:100},on:{change:e.inputChange}}),e._v(\" \"),n(\"ed-in\",{attrs:{label:\"v\",desc:\"%\",value:e.hsv.v,max:100},on:{change:e.inputChange}}),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-fields__divider\"}),e._v(\" \"),n(\"ed-in\",{attrs:{label:\"r\",value:e.colors.rgba.r},on:{change:e.inputChange}}),e._v(\" \"),n(\"ed-in\",{attrs:{label:\"g\",value:e.colors.rgba.g},on:{change:e.inputChange}}),e._v(\" \"),n(\"ed-in\",{attrs:{label:\"b\",value:e.colors.rgba.b},on:{change:e.inputChange}}),e._v(\" \"),n(\"div\",{staticClass:\"vc-ps-fields__divider\"}),e._v(\" \"),n(\"ed-in\",{staticClass:\"vc-ps-fields__hex\",attrs:{label:\"#\",value:e.hex},on:{change:e.inputChange}})],1),e._v(\" \"),e.hasResetButton?n(\"div\",{staticClass:\"vc-ps-ac-btn\",attrs:{\"aria-label\":\"reset\"},on:{click:e.handleReset}},[e._v(e._s(e.resetLabel))]):e._e()])])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";function r(e){c||n(68)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(20),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(70),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Sketch.vue\",t.default=d.exports},function(e,t,n){var r=n(69);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"612c6604\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-sketch {\\n position: relative;\\n width: 200px;\\n padding: 10px 10px 0;\\n box-sizing: initial;\\n background: #fff;\\n border-radius: 4px;\\n box-shadow: 0 0 0 1px rgba(0, 0, 0, .15), 0 8px 16px rgba(0, 0, 0, .15);\\n}\\n.vc-sketch-saturation-wrap {\\n width: 100%;\\n padding-bottom: 75%;\\n position: relative;\\n overflow: hidden;\\n}\\n.vc-sketch-controls {\\n display: flex;\\n}\\n.vc-sketch-sliders {\\n padding: 4px 0;\\n flex: 1;\\n}\\n.vc-sketch-sliders .vc-hue,\\n.vc-sketch-sliders .vc-alpha-gradient {\\n border-radius: 2px;\\n}\\n.vc-sketch-hue-wrap {\\n position: relative;\\n height: 10px;\\n}\\n.vc-sketch-alpha-wrap {\\n position: relative;\\n height: 10px;\\n margin-top: 4px;\\n overflow: hidden;\\n}\\n.vc-sketch-color-wrap {\\n width: 24px;\\n height: 24px;\\n position: relative;\\n margin-top: 4px;\\n margin-left: 4px;\\n border-radius: 3px;\\n}\\n.vc-sketch-active-color {\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n border-radius: 2px;\\n box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15), inset 0 0 4px rgba(0, 0, 0, .25);\\n z-index: 2;\\n}\\n.vc-sketch-color-wrap .vc-checkerboard {\\n background-size: auto;\\n}\\n.vc-sketch-field {\\n display: flex;\\n padding-top: 4px;\\n}\\n.vc-sketch-field .vc-input__input {\\n width: 90%;\\n padding: 4px 0 3px 10%;\\n border: none;\\n box-shadow: inset 0 0 0 1px #ccc;\\n font-size: 10px;\\n}\\n.vc-sketch-field .vc-input__label {\\n display: block;\\n text-align: center;\\n font-size: 11px;\\n color: #222;\\n padding-top: 3px;\\n padding-bottom: 4px;\\n text-transform: capitalize;\\n}\\n.vc-sketch-field--single {\\n flex: 1;\\n padding-left: 6px;\\n}\\n.vc-sketch-field--double {\\n flex: 2;\\n}\\n.vc-sketch-presets {\\n margin-right: -10px;\\n margin-left: -10px;\\n padding-left: 10px;\\n padding-top: 10px;\\n border-top: 1px solid #eee;\\n}\\n.vc-sketch-presets-color {\\n border-radius: 3px;\\n overflow: hidden;\\n position: relative;\\n display: inline-block;\\n margin: 0 10px 10px 0;\\n vertical-align: top;\\n cursor: pointer;\\n width: 16px;\\n height: 16px;\\n box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15);\\n}\\n.vc-sketch-presets-color .vc-checkerboard {\\n box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15);\\n border-radius: 3px;\\n}\\n.vc-sketch__disable-alpha .vc-sketch-color-wrap {\\n height: 10px;\\n}\\n\",\"\"])},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{class:[\"vc-sketch\",e.disableAlpha?\"vc-sketch__disable-alpha\":\"\"],attrs:{role:\"application\",\"aria-label\":\"Sketch color picker\"}},[n(\"div\",{staticClass:\"vc-sketch-saturation-wrap\"},[n(\"saturation\",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-sketch-controls\"},[n(\"div\",{staticClass:\"vc-sketch-sliders\"},[n(\"div\",{staticClass:\"vc-sketch-hue-wrap\"},[n(\"hue\",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1),e._v(\" \"),e.disableAlpha?e._e():n(\"div\",{staticClass:\"vc-sketch-alpha-wrap\"},[n(\"alpha\",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1)]),e._v(\" \"),n(\"div\",{staticClass:\"vc-sketch-color-wrap\"},[n(\"div\",{staticClass:\"vc-sketch-active-color\",style:{background:e.activeColor},attrs:{\"aria-label\":\"Current color is \"+e.activeColor}}),e._v(\" \"),n(\"checkboard\")],1)]),e._v(\" \"),e.disableFields?e._e():n(\"div\",{staticClass:\"vc-sketch-field\"},[n(\"div\",{staticClass:\"vc-sketch-field--double\"},[n(\"ed-in\",{attrs:{label:\"hex\",value:e.hex},on:{change:e.inputChange}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-sketch-field--single\"},[n(\"ed-in\",{attrs:{label:\"r\",value:e.colors.rgba.r},on:{change:e.inputChange}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-sketch-field--single\"},[n(\"ed-in\",{attrs:{label:\"g\",value:e.colors.rgba.g},on:{change:e.inputChange}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-sketch-field--single\"},[n(\"ed-in\",{attrs:{label:\"b\",value:e.colors.rgba.b},on:{change:e.inputChange}})],1),e._v(\" \"),e.disableAlpha?e._e():n(\"div\",{staticClass:\"vc-sketch-field--single\"},[n(\"ed-in\",{attrs:{label:\"a\",value:e.colors.a,\"arrow-offset\":.01,max:1},on:{change:e.inputChange}})],1)]),e._v(\" \"),n(\"div\",{staticClass:\"vc-sketch-presets\",attrs:{role:\"group\",\"aria-label\":\"A color preset, pick one to set as current color\"}},[e._l(e.presetColors,function(t){return[e.isTransparent(t)?n(\"div\",{key:t,staticClass:\"vc-sketch-presets-color\",attrs:{\"aria-label\":\"Color:\"+t},on:{click:function(n){e.handlePreset(t)}}},[n(\"checkboard\")],1):n(\"div\",{key:t,staticClass:\"vc-sketch-presets-color\",style:{background:t},attrs:{\"aria-label\":\"Color:\"+t},on:{click:function(n){e.handlePreset(t)}}})]})],2)])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i},function(e,t,n){\"use strict\";function r(e){c||n(72)}Object.defineProperty(t,\"__esModule\",{value:!0});var a=n(21),i=n.n(a);for(var o in a)\"default\"!==o&&function(e){n.d(t,e,function(){return a[e]})}(o);var s=n(74),c=!1,l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file=\"src/components/Chrome.vue\",t.default=d.exports},function(e,t,n){var r=n(73);\"string\"==typeof r&&(r=[[e.i,r,\"\"]]),r.locals&&(e.exports=r.locals);n(1)(\"1cd16048\",r,!1,{})},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,\"\\n.vc-chrome {\\n background: #fff;\\n border-radius: 2px;\\n box-shadow: 0 0 2px rgba(0,0,0,.3), 0 4px 8px rgba(0,0,0,.3);\\n box-sizing: initial;\\n width: 225px;\\n font-family: Menlo;\\n background-color: #fff;\\n}\\n.vc-chrome-controls {\\n display: flex;\\n}\\n.vc-chrome-color-wrap {\\n position: relative;\\n width: 36px;\\n}\\n.vc-chrome-active-color {\\n position: relative;\\n width: 30px;\\n height: 30px;\\n border-radius: 15px;\\n overflow: hidden;\\n z-index: 1;\\n}\\n.vc-chrome-color-wrap .vc-checkerboard {\\n width: 30px;\\n height: 30px;\\n border-radius: 15px;\\n background-size: auto;\\n}\\n.vc-chrome-sliders {\\n flex: 1;\\n}\\n.vc-chrome-fields-wrap {\\n display: flex;\\n padding-top: 16px;\\n}\\n.vc-chrome-fields {\\n display: flex;\\n margin-left: -6px;\\n flex: 1;\\n}\\n.vc-chrome-field {\\n padding-left: 6px;\\n width: 100%;\\n}\\n.vc-chrome-toggle-btn {\\n width: 32px;\\n text-align: right;\\n position: relative;\\n}\\n.vc-chrome-toggle-icon {\\n margin-right: -4px;\\n margin-top: 12px;\\n cursor: pointer;\\n position: relative;\\n z-index: 2;\\n}\\n.vc-chrome-toggle-icon-highlight {\\n position: absolute;\\n width: 24px;\\n height: 28px;\\n background: #eee;\\n border-radius: 4px;\\n top: 10px;\\n left: 12px;\\n}\\n.vc-chrome-hue-wrap {\\n position: relative;\\n height: 10px;\\n margin-bottom: 8px;\\n}\\n.vc-chrome-alpha-wrap {\\n position: relative;\\n height: 10px;\\n}\\n.vc-chrome-hue-wrap .vc-hue {\\n border-radius: 2px;\\n}\\n.vc-chrome-alpha-wrap .vc-alpha-gradient {\\n border-radius: 2px;\\n}\\n.vc-chrome-hue-wrap .vc-hue-picker, .vc-chrome-alpha-wrap .vc-alpha-picker {\\n width: 12px;\\n height: 12px;\\n border-radius: 6px;\\n transform: translate(-6px, -2px);\\n background-color: rgb(248, 248, 248);\\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);\\n}\\n.vc-chrome-body {\\n padding: 16px 16px 12px;\\n background-color: #fff;\\n}\\n.vc-chrome-saturation-wrap {\\n width: 100%;\\n padding-bottom: 55%;\\n position: relative;\\n border-radius: 2px 2px 0 0;\\n overflow: hidden;\\n}\\n.vc-chrome-saturation-wrap .vc-saturation-circle {\\n width: 12px;\\n height: 12px;\\n}\\n.vc-chrome-fields .vc-input__input {\\n font-size: 11px;\\n color: #333;\\n width: 100%;\\n border-radius: 2px;\\n border: none;\\n box-shadow: inset 0 0 0 1px #dadada;\\n height: 21px;\\n text-align: center;\\n}\\n.vc-chrome-fields .vc-input__label {\\n text-transform: uppercase;\\n font-size: 11px;\\n line-height: 11px;\\n color: #969696;\\n text-align: center;\\n display: block;\\n margin-top: 12px;\\n}\\n.vc-chrome__disable-alpha .vc-chrome-active-color {\\n width: 18px;\\n height: 18px;\\n}\\n.vc-chrome__disable-alpha .vc-chrome-color-wrap {\\n width: 30px;\\n}\\n.vc-chrome__disable-alpha .vc-chrome-hue-wrap {\\n margin-top: 4px;\\n margin-bottom: 4px;\\n}\\n\",\"\"])},function(e,t,n){\"use strict\";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{class:[\"vc-chrome\",e.disableAlpha?\"vc-chrome__disable-alpha\":\"\"],attrs:{role:\"application\",\"aria-label\":\"Chrome color picker\"}},[n(\"div\",{staticClass:\"vc-chrome-saturation-wrap\"},[n(\"saturation\",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-chrome-body\"},[n(\"div\",{staticClass:\"vc-chrome-controls\"},[n(\"div\",{staticClass:\"vc-chrome-color-wrap\"},[n(\"div\",{staticClass:\"vc-chrome-active-color\",style:{background:e.activeColor},attrs:{\"aria-label\":\"current color is \"+e.colors.hex}}),e._v(\" \"),e.disableAlpha?e._e():n(\"checkboard\")],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-chrome-sliders\"},[n(\"div\",{staticClass:\"vc-chrome-hue-wrap\"},[n(\"hue\",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1),e._v(\" \"),e.disableAlpha?e._e():n(\"div\",{staticClass:\"vc-chrome-alpha-wrap\"},[n(\"alpha\",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t},expression:\"colors\"}})],1)])]),e._v(\" \"),e.disableFields?e._e():n(\"div\",{staticClass:\"vc-chrome-fields-wrap\"},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:0===e.fieldsIndex,expression:\"fieldsIndex === 0\"}],staticClass:\"vc-chrome-fields\"},[n(\"div\",{staticClass:\"vc-chrome-field\"},[e.hasAlpha?e._e():n(\"ed-in\",{attrs:{label:\"hex\",value:e.colors.hex},on:{change:e.inputChange}}),e._v(\" \"),e.hasAlpha?n(\"ed-in\",{attrs:{label:\"hex\",value:e.colors.hex8},on:{change:e.inputChange}}):e._e()],1)]),e._v(\" \"),n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:1===e.fieldsIndex,expression:\"fieldsIndex === 1\"}],staticClass:\"vc-chrome-fields\"},[n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"r\",value:e.colors.rgba.r},on:{change:e.inputChange}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"g\",value:e.colors.rgba.g},on:{change:e.inputChange}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"b\",value:e.colors.rgba.b},on:{change:e.inputChange}})],1),e._v(\" \"),e.disableAlpha?e._e():n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"a\",value:e.colors.a,\"arrow-offset\":.01,max:1},on:{change:e.inputChange}})],1)]),e._v(\" \"),n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:2===e.fieldsIndex,expression:\"fieldsIndex === 2\"}],staticClass:\"vc-chrome-fields\"},[n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"h\",value:e.hsl.h},on:{change:e.inputChange}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"s\",value:e.hsl.s},on:{change:e.inputChange}})],1),e._v(\" \"),n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"l\",value:e.hsl.l},on:{change:e.inputChange}})],1),e._v(\" \"),e.disableAlpha?e._e():n(\"div\",{staticClass:\"vc-chrome-field\"},[n(\"ed-in\",{attrs:{label:\"a\",value:e.colors.a,\"arrow-offset\":.01,max:1},on:{change:e.inputChange}})],1)]),e._v(\" \"),n(\"div\",{staticClass:\"vc-chrome-toggle-btn\",attrs:{role:\"button\",\"aria-label\":\"Change another color definition\"},on:{click:e.toggleViews}},[n(\"div\",{staticClass:\"vc-chrome-toggle-icon\"},[n(\"svg\",{staticStyle:{width:\"24px\",height:\"24px\"},attrs:{viewBox:\"0 0 24 24\"},on:{mouseover:e.showHighlight,mouseenter:e.showHighlight,mouseout:e.hideHighlight}},[n(\"path\",{attrs:{fill:\"#333\",d:\"M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z\"}})])]),e._v(\" \"),n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.highlight,expression:\"highlight\"}],staticClass:\"vc-chrome-toggle-icon-highlight\"})])])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i}])});","if (!Array.prototype.find) {\n Array.prototype.find = function(predicate) {\n if (this === null) {\n throw new TypeError('Array.prototype.find called on null or undefined')\n }\n if (typeof predicate !== 'function') {\n throw new TypeError('predicate must be a function')\n }\n var list = Object(this);\n var length = list.length >>> 0;\n var thisArg = arguments[1];\n var value;\n\n for (var i = 0; i < length; i++) {\n value = list[i];\n if (predicate.call(thisArg, value, i, list)) {\n return value\n }\n }\n return undefined\n };\n}\n\nif (window && typeof window.CustomEvent !== \"function\") {\n function CustomEvent$1(event, params) {\n params = params || {\n bubbles: false,\n cancelable: false,\n detail: undefined\n };\n var evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n return evt\n }\n\n if (typeof window.Event !== 'undefined') {\n CustomEvent$1.prototype = window.Event.prototype;\n }\n\n window.CustomEvent = CustomEvent$1;\n}\n\nclass TributeEvents {\n constructor(tribute) {\n this.tribute = tribute;\n this.tribute.events = this;\n }\n\n static keys() {\n return [\n {\n key: 9,\n value: \"TAB\"\n },\n {\n key: 8,\n value: \"DELETE\"\n },\n {\n key: 13,\n value: \"ENTER\"\n },\n {\n key: 27,\n value: \"ESCAPE\"\n },\n {\n key: 32,\n value: \"SPACE\"\n },\n {\n key: 38,\n value: \"UP\"\n },\n {\n key: 40,\n value: \"DOWN\"\n }\n ];\n }\n\n bind(element) {\n element.boundKeydown = this.keydown.bind(element, this);\n element.boundKeyup = this.keyup.bind(element, this);\n element.boundInput = this.input.bind(element, this);\n\n element.addEventListener(\"keydown\", element.boundKeydown, false);\n element.addEventListener(\"keyup\", element.boundKeyup, false);\n element.addEventListener(\"input\", element.boundInput, false);\n }\n\n unbind(element) {\n element.removeEventListener(\"keydown\", element.boundKeydown, false);\n element.removeEventListener(\"keyup\", element.boundKeyup, false);\n element.removeEventListener(\"input\", element.boundInput, false);\n\n delete element.boundKeydown;\n delete element.boundKeyup;\n delete element.boundInput;\n }\n\n keydown(instance, event) {\n if (instance.shouldDeactivate(event)) {\n instance.tribute.isActive = false;\n instance.tribute.hideMenu();\n }\n\n let element = this;\n instance.commandEvent = false;\n\n TributeEvents.keys().forEach(o => {\n if (o.key === event.keyCode) {\n instance.commandEvent = true;\n instance.callbacks()[o.value.toLowerCase()](event, element);\n }\n });\n }\n\n input(instance, event) {\n instance.inputEvent = true;\n instance.keyup.call(this, instance, event);\n }\n\n click(instance, event) {\n let tribute = instance.tribute;\n if (tribute.menu && tribute.menu.contains(event.target)) {\n let li = event.target;\n event.preventDefault();\n event.stopPropagation();\n while (li.nodeName.toLowerCase() !== \"li\") {\n li = li.parentNode;\n if (!li || li === tribute.menu) {\n throw new Error(\"cannot find the <li> container for the click\");\n }\n }\n tribute.selectItemAtIndex(li.getAttribute(\"data-index\"), event);\n tribute.hideMenu();\n\n // TODO: should fire with externalTrigger and target is outside of menu\n } else if (tribute.current.element && !tribute.current.externalTrigger) {\n tribute.current.externalTrigger = false;\n setTimeout(() => tribute.hideMenu());\n }\n }\n\n keyup(instance, event) {\n if (instance.inputEvent) {\n instance.inputEvent = false;\n }\n instance.updateSelection(this);\n\n if (event.keyCode === 27) return;\n\n if (!instance.tribute.allowSpaces && instance.tribute.hasTrailingSpace) {\n instance.tribute.hasTrailingSpace = false;\n instance.commandEvent = true;\n instance.callbacks()[\"space\"](event, this);\n return;\n }\n\n if (!instance.tribute.isActive) {\n if (instance.tribute.autocompleteMode) {\n instance.callbacks().triggerChar(event, this, \"\");\n } else {\n let keyCode = instance.getKeyCode(instance, this, event);\n\n if (isNaN(keyCode) || !keyCode) return;\n\n let trigger = instance.tribute.triggers().find(trigger => {\n return trigger.charCodeAt(0) === keyCode;\n });\n\n if (typeof trigger !== \"undefined\") {\n instance.callbacks().triggerChar(event, this, trigger);\n }\n }\n }\n\n if (\n instance.tribute.current.mentionText.length <\n instance.tribute.current.collection.menuShowMinLength\n ) {\n return;\n }\n\n if (\n ((instance.tribute.current.trigger ||\n instance.tribute.autocompleteMode) &&\n instance.commandEvent === false) ||\n (instance.tribute.isActive && event.keyCode === 8)\n ) {\n instance.tribute.showMenuFor(this, true);\n }\n }\n\n shouldDeactivate(event) {\n if (!this.tribute.isActive) return false;\n\n if (this.tribute.current.mentionText.length === 0) {\n let eventKeyPressed = false;\n TributeEvents.keys().forEach(o => {\n if (event.keyCode === o.key) eventKeyPressed = true;\n });\n\n return !eventKeyPressed;\n }\n\n return false;\n }\n\n getKeyCode(instance, el, event) {\n let tribute = instance.tribute;\n let info = tribute.range.getTriggerInfo(\n false,\n tribute.hasTrailingSpace,\n true,\n tribute.allowSpaces,\n tribute.autocompleteMode\n );\n\n if (info) {\n return info.mentionTriggerChar.charCodeAt(0);\n } else {\n return false;\n }\n }\n\n updateSelection(el) {\n this.tribute.current.element = el;\n let info = this.tribute.range.getTriggerInfo(\n false,\n this.tribute.hasTrailingSpace,\n true,\n this.tribute.allowSpaces,\n this.tribute.autocompleteMode\n );\n\n if (info) {\n this.tribute.current.selectedPath = info.mentionSelectedPath;\n this.tribute.current.mentionText = info.mentionText;\n this.tribute.current.selectedOffset = info.mentionSelectedOffset;\n }\n }\n\n callbacks() {\n return {\n triggerChar: (e, el, trigger) => {\n let tribute = this.tribute;\n tribute.current.trigger = trigger;\n\n let collectionItem = tribute.collection.find(item => {\n return item.trigger === trigger;\n });\n\n tribute.current.collection = collectionItem;\n\n if (\n tribute.current.mentionText.length >=\n tribute.current.collection.menuShowMinLength &&\n tribute.inputEvent\n ) {\n tribute.showMenuFor(el, true);\n }\n },\n enter: (e, el) => {\n // choose selection\n if (this.tribute.isActive && this.tribute.current.filteredItems) {\n e.preventDefault();\n e.stopPropagation();\n setTimeout(() => {\n this.tribute.selectItemAtIndex(this.tribute.menuSelected, e);\n this.tribute.hideMenu();\n }, 0);\n }\n },\n escape: (e, el) => {\n if (this.tribute.isActive) {\n e.preventDefault();\n e.stopPropagation();\n this.tribute.isActive = false;\n this.tribute.hideMenu();\n }\n },\n tab: (e, el) => {\n // choose first match\n this.callbacks().enter(e, el);\n },\n space: (e, el) => {\n if (this.tribute.isActive) {\n if (this.tribute.spaceSelectsMatch) {\n this.callbacks().enter(e, el);\n } else if (!this.tribute.allowSpaces) {\n e.stopPropagation();\n setTimeout(() => {\n this.tribute.hideMenu();\n this.tribute.isActive = false;\n }, 0);\n }\n }\n },\n up: (e, el) => {\n // navigate up ul\n if (this.tribute.isActive && this.tribute.current.filteredItems) {\n e.preventDefault();\n e.stopPropagation();\n let count = this.tribute.current.filteredItems.length,\n selected = this.tribute.menuSelected;\n\n if (count > selected && selected > 0) {\n this.tribute.menuSelected--;\n this.setActiveLi();\n } else if (selected === 0) {\n this.tribute.menuSelected = count - 1;\n this.setActiveLi();\n this.tribute.menu.scrollTop = this.tribute.menu.scrollHeight;\n }\n }\n },\n down: (e, el) => {\n // navigate down ul\n if (this.tribute.isActive && this.tribute.current.filteredItems) {\n e.preventDefault();\n e.stopPropagation();\n let count = this.tribute.current.filteredItems.length - 1,\n selected = this.tribute.menuSelected;\n\n if (count > selected) {\n this.tribute.menuSelected++;\n this.setActiveLi();\n } else if (count === selected) {\n this.tribute.menuSelected = 0;\n this.setActiveLi();\n this.tribute.menu.scrollTop = 0;\n }\n }\n },\n delete: (e, el) => {\n if (\n this.tribute.isActive &&\n this.tribute.current.mentionText.length < 1\n ) {\n this.tribute.hideMenu();\n } else if (this.tribute.isActive) {\n this.tribute.showMenuFor(el);\n }\n }\n };\n }\n\n setActiveLi(index) {\n let lis = this.tribute.menu.querySelectorAll(\"li\"),\n length = lis.length >>> 0;\n\n if (index) this.tribute.menuSelected = parseInt(index);\n\n for (let i = 0; i < length; i++) {\n let li = lis[i];\n if (i === this.tribute.menuSelected) {\n li.classList.add(this.tribute.current.collection.selectClass);\n\n let liClientRect = li.getBoundingClientRect();\n let menuClientRect = this.tribute.menu.getBoundingClientRect();\n\n if (liClientRect.bottom > menuClientRect.bottom) {\n let scrollDistance = liClientRect.bottom - menuClientRect.bottom;\n this.tribute.menu.scrollTop += scrollDistance;\n } else if (liClientRect.top < menuClientRect.top) {\n let scrollDistance = menuClientRect.top - liClientRect.top;\n this.tribute.menu.scrollTop -= scrollDistance;\n }\n } else {\n li.classList.remove(this.tribute.current.collection.selectClass);\n }\n }\n }\n\n getFullHeight(elem, includeMargin) {\n let height = elem.getBoundingClientRect().height;\n\n if (includeMargin) {\n let style = elem.currentStyle || window.getComputedStyle(elem);\n return (\n height + parseFloat(style.marginTop) + parseFloat(style.marginBottom)\n );\n }\n\n return height;\n }\n}\n\nclass TributeMenuEvents {\n constructor(tribute) {\n this.tribute = tribute;\n this.tribute.menuEvents = this;\n this.menu = this.tribute.menu;\n }\n\n bind(menu) {\n this.menuClickEvent = this.tribute.events.click.bind(null, this);\n this.menuContainerScrollEvent = this.debounce(\n () => {\n if (this.tribute.isActive) {\n this.tribute.showMenuFor(this.tribute.current.element, false);\n }\n },\n 300,\n false\n );\n this.windowResizeEvent = this.debounce(\n () => {\n if (this.tribute.isActive) {\n this.tribute.range.positionMenuAtCaret(true);\n }\n },\n 300,\n false\n );\n\n // fixes IE11 issues with mousedown\n this.tribute.range\n .getDocument()\n .addEventListener(\"MSPointerDown\", this.menuClickEvent, false);\n this.tribute.range\n .getDocument()\n .addEventListener(\"mousedown\", this.menuClickEvent, false);\n window.addEventListener(\"resize\", this.windowResizeEvent);\n\n if (this.menuContainer) {\n this.menuContainer.addEventListener(\n \"scroll\",\n this.menuContainerScrollEvent,\n false\n );\n } else {\n window.addEventListener(\"scroll\", this.menuContainerScrollEvent);\n }\n }\n\n unbind(menu) {\n this.tribute.range\n .getDocument()\n .removeEventListener(\"mousedown\", this.menuClickEvent, false);\n this.tribute.range\n .getDocument()\n .removeEventListener(\"MSPointerDown\", this.menuClickEvent, false);\n window.removeEventListener(\"resize\", this.windowResizeEvent);\n\n if (this.menuContainer) {\n this.menuContainer.removeEventListener(\n \"scroll\",\n this.menuContainerScrollEvent,\n false\n );\n } else {\n window.removeEventListener(\"scroll\", this.menuContainerScrollEvent);\n }\n }\n\n debounce(func, wait, immediate) {\n var timeout;\n return () => {\n var context = this,\n args = arguments;\n var later = () => {\n timeout = null;\n if (!immediate) func.apply(context, args);\n };\n var callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n if (callNow) func.apply(context, args);\n };\n }\n}\n\n// Thanks to https://github.com/jeff-collins/ment.io\n\nclass TributeRange {\n constructor(tribute) {\n this.tribute = tribute;\n this.tribute.range = this;\n }\n\n getDocument() {\n let iframe;\n if (this.tribute.current.collection) {\n iframe = this.tribute.current.collection.iframe;\n }\n\n if (!iframe) {\n return document\n }\n\n return iframe.contentWindow.document\n }\n\n positionMenuAtCaret(scrollTo) {\n let context = this.tribute.current,\n coordinates;\n\n let info = this.getTriggerInfo(false, this.tribute.hasTrailingSpace, true, this.tribute.allowSpaces, this.tribute.autocompleteMode);\n\n if (typeof info !== 'undefined') {\n\n if(!this.tribute.positionMenu){\n this.tribute.menu.style.cssText = `display: block;`;\n return\n }\n\n if (!this.isContentEditable(context.element)) {\n coordinates = this.getTextAreaOrInputUnderlinePosition(this.tribute.current.element,\n info.mentionPosition);\n }\n else {\n coordinates = this.getContentEditableCaretPosition(info.mentionPosition);\n }\n\n this.tribute.menu.style.cssText = `top: ${coordinates.top}px;\n left: ${coordinates.left}px;\n right: ${coordinates.right}px;\n bottom: ${coordinates.bottom}px;\n position: absolute;\n display: block;`;\n\n if (coordinates.left === 'auto') {\n this.tribute.menu.style.left = 'auto';\n }\n\n if (coordinates.top === 'auto') {\n this.tribute.menu.style.top = 'auto';\n }\n\n if (scrollTo) this.scrollIntoView();\n\n window.setTimeout(() => {\n let menuDimensions = {\n width: this.tribute.menu.offsetWidth,\n height: this.tribute.menu.offsetHeight\n };\n let menuIsOffScreen = this.isMenuOffScreen(coordinates, menuDimensions);\n\n let menuIsOffScreenHorizontally = window.innerWidth > menuDimensions.width && (menuIsOffScreen.left || menuIsOffScreen.right);\n let menuIsOffScreenVertically = window.innerHeight > menuDimensions.height && (menuIsOffScreen.top || menuIsOffScreen.bottom);\n if (menuIsOffScreenHorizontally || menuIsOffScreenVertically) {\n this.tribute.menu.style.cssText = 'display: none';\n this.positionMenuAtCaret(scrollTo);\n }\n }, 0);\n\n } else {\n this.tribute.menu.style.cssText = 'display: none';\n }\n }\n\n get menuContainerIsBody() {\n return this.tribute.menuContainer === document.body || !this.tribute.menuContainer;\n }\n\n\n selectElement(targetElement, path, offset) {\n let range;\n let elem = targetElement;\n\n if (path) {\n for (var i = 0; i < path.length; i++) {\n elem = elem.childNodes[path[i]];\n if (elem === undefined) {\n return\n }\n while (elem.length < offset) {\n offset -= elem.length;\n elem = elem.nextSibling;\n }\n if (elem.childNodes.length === 0 && !elem.length) {\n elem = elem.previousSibling;\n }\n }\n }\n let sel = this.getWindowSelection();\n\n range = this.getDocument().createRange();\n range.setStart(elem, offset);\n range.setEnd(elem, offset);\n range.collapse(true);\n\n try {\n sel.removeAllRanges();\n } catch (error) {}\n\n sel.addRange(range);\n targetElement.focus();\n }\n\n replaceTriggerText(text, requireLeadingSpace, hasTrailingSpace, originalEvent, item) {\n let info = this.getTriggerInfo(true, hasTrailingSpace, requireLeadingSpace, this.tribute.allowSpaces, this.tribute.autocompleteMode);\n\n if (info !== undefined) {\n let context = this.tribute.current;\n let replaceEvent = new CustomEvent('tribute-replaced', {\n detail: {\n item: item,\n instance: context,\n context: info,\n event: originalEvent,\n }\n });\n\n if (!this.isContentEditable(context.element)) {\n let myField = this.tribute.current.element;\n let textSuffix = typeof this.tribute.replaceTextSuffix == 'string'\n ? this.tribute.replaceTextSuffix\n : ' ';\n text += textSuffix;\n let startPos = info.mentionPosition;\n let endPos = info.mentionPosition + info.mentionText.length + textSuffix.length;\n if (!this.tribute.autocompleteMode) {\n endPos += info.mentionTriggerChar.length - 1;\n }\n myField.value = myField.value.substring(0, startPos) + text +\n myField.value.substring(endPos, myField.value.length);\n myField.selectionStart = startPos + text.length;\n myField.selectionEnd = startPos + text.length;\n } else {\n // add a space to the end of the pasted text\n let textSuffix = typeof this.tribute.replaceTextSuffix == 'string'\n ? this.tribute.replaceTextSuffix\n : '\\xA0';\n text += textSuffix;\n let endPos = info.mentionPosition + info.mentionText.length;\n if (!this.tribute.autocompleteMode) {\n endPos += info.mentionTriggerChar.length;\n }\n this.pasteHtml(text, info.mentionPosition, endPos);\n }\n\n context.element.dispatchEvent(new CustomEvent('input', { bubbles: true }));\n context.element.dispatchEvent(replaceEvent);\n }\n }\n\n pasteHtml(html, startPos, endPos) {\n let range, sel;\n sel = this.getWindowSelection();\n range = this.getDocument().createRange();\n range.setStart(sel.anchorNode, startPos);\n range.setEnd(sel.anchorNode, endPos);\n range.deleteContents();\n\n let el = this.getDocument().createElement('div');\n el.innerHTML = html;\n let frag = this.getDocument().createDocumentFragment(),\n node, lastNode;\n while ((node = el.firstChild)) {\n lastNode = frag.appendChild(node);\n }\n range.insertNode(frag);\n\n // Preserve the selection\n if (lastNode) {\n range = range.cloneRange();\n range.setStartAfter(lastNode);\n range.collapse(true);\n sel.removeAllRanges();\n sel.addRange(range);\n }\n }\n\n getWindowSelection() {\n if (this.tribute.collection.iframe) {\n return this.tribute.collection.iframe.contentWindow.getSelection()\n }\n\n return window.getSelection()\n }\n\n getNodePositionInParent(element) {\n if (element.parentNode === null) {\n return 0\n }\n\n for (var i = 0; i < element.parentNode.childNodes.length; i++) {\n let node = element.parentNode.childNodes[i];\n\n if (node === element) {\n return i\n }\n }\n }\n\n getContentEditableSelectedPath(ctx) {\n let sel = this.getWindowSelection();\n let selected = sel.anchorNode;\n let path = [];\n let offset;\n\n if (selected != null) {\n let i;\n let ce = selected.contentEditable;\n while (selected !== null && ce !== 'true') {\n i = this.getNodePositionInParent(selected);\n path.push(i);\n selected = selected.parentNode;\n if (selected !== null) {\n ce = selected.contentEditable;\n }\n }\n path.reverse();\n\n // getRangeAt may not exist, need alternative\n offset = sel.getRangeAt(0).startOffset;\n\n return {\n selected: selected,\n path: path,\n offset: offset\n }\n }\n }\n\n getTextPrecedingCurrentSelection() {\n let context = this.tribute.current,\n text = '';\n\n if (!this.isContentEditable(context.element)) {\n let textComponent = this.tribute.current.element;\n if (textComponent) {\n let startPos = textComponent.selectionStart;\n if (textComponent.value && startPos >= 0) {\n text = textComponent.value.substring(0, startPos);\n }\n }\n\n } else {\n let selectedElem = this.getWindowSelection().anchorNode;\n\n if (selectedElem != null) {\n let workingNodeContent = selectedElem.textContent;\n let selectStartOffset = this.getWindowSelection().getRangeAt(0).startOffset;\n\n if (workingNodeContent && selectStartOffset >= 0) {\n text = workingNodeContent.substring(0, selectStartOffset);\n }\n }\n }\n\n return text\n }\n\n getLastWordInText(text) {\n text = text.replace(/\\u00A0/g, ' '); // https://stackoverflow.com/questions/29850407/how-do-i-replace-unicode-character-u00a0-with-a-space-in-javascript\n let wordsArray = text.split(/\\s+/);\n let worldsCount = wordsArray.length - 1;\n return wordsArray[worldsCount].trim()\n }\n\n getTriggerInfo(menuAlreadyActive, hasTrailingSpace, requireLeadingSpace, allowSpaces, isAutocomplete) {\n let ctx = this.tribute.current;\n let selected, path, offset;\n\n if (!this.isContentEditable(ctx.element)) {\n selected = this.tribute.current.element;\n } else {\n let selectionInfo = this.getContentEditableSelectedPath(ctx);\n\n if (selectionInfo) {\n selected = selectionInfo.selected;\n path = selectionInfo.path;\n offset = selectionInfo.offset;\n }\n }\n\n let effectiveRange = this.getTextPrecedingCurrentSelection();\n let lastWordOfEffectiveRange = this.getLastWordInText(effectiveRange);\n\n if (isAutocomplete) {\n return {\n mentionPosition: effectiveRange.length - lastWordOfEffectiveRange.length,\n mentionText: lastWordOfEffectiveRange,\n mentionSelectedElement: selected,\n mentionSelectedPath: path,\n mentionSelectedOffset: offset\n }\n }\n\n if (effectiveRange !== undefined && effectiveRange !== null) {\n let mostRecentTriggerCharPos = -1;\n let triggerChar;\n\n this.tribute.collection.forEach(config => {\n let c = config.trigger;\n let idx = config.requireLeadingSpace ?\n this.lastIndexWithLeadingSpace(effectiveRange, c) :\n effectiveRange.lastIndexOf(c);\n\n if (idx > mostRecentTriggerCharPos) {\n mostRecentTriggerCharPos = idx;\n triggerChar = c;\n requireLeadingSpace = config.requireLeadingSpace;\n }\n });\n\n if (mostRecentTriggerCharPos >= 0 &&\n (\n mostRecentTriggerCharPos === 0 ||\n !requireLeadingSpace ||\n /[\\xA0\\s]/g.test(\n effectiveRange.substring(\n mostRecentTriggerCharPos - 1,\n mostRecentTriggerCharPos)\n )\n )\n ) {\n let currentTriggerSnippet = effectiveRange.substring(mostRecentTriggerCharPos + triggerChar.length,\n effectiveRange.length);\n\n triggerChar = effectiveRange.substring(mostRecentTriggerCharPos, mostRecentTriggerCharPos + triggerChar.length);\n let firstSnippetChar = currentTriggerSnippet.substring(0, 1);\n let leadingSpace = currentTriggerSnippet.length > 0 &&\n (\n firstSnippetChar === ' ' ||\n firstSnippetChar === '\\xA0'\n );\n if (hasTrailingSpace) {\n currentTriggerSnippet = currentTriggerSnippet.trim();\n }\n\n let regex = allowSpaces ? /[^\\S ]/g : /[\\xA0\\s]/g;\n\n this.tribute.hasTrailingSpace = regex.test(currentTriggerSnippet);\n\n if (!leadingSpace && (menuAlreadyActive || !(regex.test(currentTriggerSnippet)))) {\n return {\n mentionPosition: mostRecentTriggerCharPos,\n mentionText: currentTriggerSnippet,\n mentionSelectedElement: selected,\n mentionSelectedPath: path,\n mentionSelectedOffset: offset,\n mentionTriggerChar: triggerChar\n }\n }\n }\n }\n }\n\n lastIndexWithLeadingSpace (str, trigger) {\n let reversedStr = str.split('').reverse().join('');\n let index = -1;\n\n for (let cidx = 0, len = str.length; cidx < len; cidx++) {\n let firstChar = cidx === str.length - 1;\n let leadingSpace = /\\s/.test(reversedStr[cidx + 1]);\n\n let match = true;\n for (let triggerIdx = trigger.length - 1; triggerIdx >= 0; triggerIdx--) {\n if (trigger[triggerIdx] !== reversedStr[cidx-triggerIdx]) {\n match = false;\n break\n }\n }\n\n if (match && (firstChar || leadingSpace)) {\n index = str.length - 1 - cidx;\n break\n }\n }\n\n return index\n }\n\n isContentEditable(element) {\n return element.nodeName !== 'INPUT' && element.nodeName !== 'TEXTAREA'\n }\n\n isMenuOffScreen(coordinates, menuDimensions) {\n let windowWidth = window.innerWidth;\n let windowHeight = window.innerHeight;\n let doc = document.documentElement;\n let windowLeft = (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);\n let windowTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n\n let menuTop = typeof coordinates.top === 'number' ? coordinates.top : windowTop + windowHeight - coordinates.bottom - menuDimensions.height;\n let menuRight = typeof coordinates.right === 'number' ? coordinates.right : coordinates.left + menuDimensions.width;\n let menuBottom = typeof coordinates.bottom === 'number' ? coordinates.bottom : coordinates.top + menuDimensions.height;\n let menuLeft = typeof coordinates.left === 'number' ? coordinates.left : windowLeft + windowWidth - coordinates.right - menuDimensions.width;\n\n return {\n top: menuTop < Math.floor(windowTop),\n right: menuRight > Math.ceil(windowLeft + windowWidth),\n bottom: menuBottom > Math.ceil(windowTop + windowHeight),\n left: menuLeft < Math.floor(windowLeft)\n }\n }\n\n getMenuDimensions() {\n // Width of the menu depends of its contents and position\n // We must check what its width would be without any obstruction\n // This way, we can achieve good positioning for flipping the menu\n let dimensions = {\n width: null,\n height: null\n };\n\n this.tribute.menu.style.cssText = `top: 0px;\n left: 0px;\n position: fixed;\n display: block;\n visibility; hidden;`;\n dimensions.width = this.tribute.menu.offsetWidth;\n dimensions.height = this.tribute.menu.offsetHeight;\n\n this.tribute.menu.style.cssText = `display: none;`;\n\n return dimensions\n }\n\n getTextAreaOrInputUnderlinePosition(element, position, flipped) {\n let properties = ['direction', 'boxSizing', 'width', 'height', 'overflowX',\n 'overflowY', 'borderTopWidth', 'borderRightWidth',\n 'borderBottomWidth', 'borderLeftWidth', 'paddingTop',\n 'paddingRight', 'paddingBottom', 'paddingLeft',\n 'fontStyle', 'fontVariant', 'fontWeight', 'fontStretch',\n 'fontSize', 'fontSizeAdjust', 'lineHeight', 'fontFamily',\n 'textAlign', 'textTransform', 'textIndent',\n 'textDecoration', 'letterSpacing', 'wordSpacing'\n ];\n\n let isFirefox = (window.mozInnerScreenX !== null);\n\n let div = this.getDocument().createElement('div');\n div.id = 'input-textarea-caret-position-mirror-div';\n this.getDocument().body.appendChild(div);\n\n let style = div.style;\n let computed = window.getComputedStyle ? getComputedStyle(element) : element.currentStyle;\n\n style.whiteSpace = 'pre-wrap';\n if (element.nodeName !== 'INPUT') {\n style.wordWrap = 'break-word';\n }\n\n // position off-screen\n style.position = 'absolute';\n style.visibility = 'hidden';\n\n // transfer the element's properties to the div\n properties.forEach(prop => {\n style[prop] = computed[prop];\n });\n\n if (isFirefox) {\n style.width = `${(parseInt(computed.width) - 2)}px`;\n if (element.scrollHeight > parseInt(computed.height))\n style.overflowY = 'scroll';\n } else {\n style.overflow = 'hidden';\n }\n\n div.textContent = element.value.substring(0, position);\n\n if (element.nodeName === 'INPUT') {\n div.textContent = div.textContent.replace(/\\s/g, ' ');\n }\n\n let span = this.getDocument().createElement('span');\n span.textContent = element.value.substring(position) || '.';\n div.appendChild(span);\n\n let rect = element.getBoundingClientRect();\n let doc = document.documentElement;\n let windowLeft = (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);\n let windowTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n\n let top = 0;\n let left = 0;\n if (this.menuContainerIsBody) {\n top = rect.top;\n left = rect.left;\n }\n\n let coordinates = {\n top: top + windowTop + span.offsetTop + parseInt(computed.borderTopWidth) + parseInt(computed.fontSize) - element.scrollTop,\n left: left + windowLeft + span.offsetLeft + parseInt(computed.borderLeftWidth)\n };\n\n let windowWidth = window.innerWidth;\n let windowHeight = window.innerHeight;\n\n let menuDimensions = this.getMenuDimensions();\n let menuIsOffScreen = this.isMenuOffScreen(coordinates, menuDimensions);\n\n if (menuIsOffScreen.right) {\n coordinates.right = windowWidth - coordinates.left;\n coordinates.left = 'auto';\n }\n\n let parentHeight = this.tribute.menuContainer\n ? this.tribute.menuContainer.offsetHeight\n : this.getDocument().body.offsetHeight;\n\n if (menuIsOffScreen.bottom) {\n let parentRect = this.tribute.menuContainer\n ? this.tribute.menuContainer.getBoundingClientRect()\n : this.getDocument().body.getBoundingClientRect();\n let scrollStillAvailable = parentHeight - (windowHeight - parentRect.top);\n\n coordinates.bottom = scrollStillAvailable + (windowHeight - rect.top - span.offsetTop);\n coordinates.top = 'auto';\n }\n\n menuIsOffScreen = this.isMenuOffScreen(coordinates, menuDimensions);\n if (menuIsOffScreen.left) {\n coordinates.left = windowWidth > menuDimensions.width\n ? windowLeft + windowWidth - menuDimensions.width\n : windowLeft;\n delete coordinates.right;\n }\n if (menuIsOffScreen.top) {\n coordinates.top = windowHeight > menuDimensions.height\n ? windowTop + windowHeight - menuDimensions.height\n : windowTop;\n delete coordinates.bottom;\n }\n\n this.getDocument().body.removeChild(div);\n return coordinates\n }\n\n getContentEditableCaretPosition(selectedNodePosition) {\n let range;\n let sel = this.getWindowSelection();\n\n range = this.getDocument().createRange();\n range.setStart(sel.anchorNode, selectedNodePosition);\n range.setEnd(sel.anchorNode, selectedNodePosition);\n\n range.collapse(false);\n\n let rect = range.getBoundingClientRect();\n let doc = document.documentElement;\n let windowLeft = (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);\n let windowTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n\n let left = rect.left;\n let top = rect.top;\n\n let coordinates = {\n left: left + windowLeft,\n top: top + rect.height + windowTop\n };\n let windowWidth = window.innerWidth;\n let windowHeight = window.innerHeight;\n\n let menuDimensions = this.getMenuDimensions();\n let menuIsOffScreen = this.isMenuOffScreen(coordinates, menuDimensions);\n\n if (menuIsOffScreen.right) {\n coordinates.left = 'auto';\n coordinates.right = windowWidth - rect.left - windowLeft;\n }\n\n let parentHeight = this.tribute.menuContainer\n ? this.tribute.menuContainer.offsetHeight\n : this.getDocument().body.offsetHeight;\n\n if (menuIsOffScreen.bottom) {\n let parentRect = this.tribute.menuContainer\n ? this.tribute.menuContainer.getBoundingClientRect()\n : this.getDocument().body.getBoundingClientRect();\n let scrollStillAvailable = parentHeight - (windowHeight - parentRect.top);\n\n coordinates.top = 'auto';\n coordinates.bottom = scrollStillAvailable + (windowHeight - rect.top);\n }\n\n menuIsOffScreen = this.isMenuOffScreen(coordinates, menuDimensions);\n if (menuIsOffScreen.left) {\n coordinates.left = windowWidth > menuDimensions.width\n ? windowLeft + windowWidth - menuDimensions.width\n : windowLeft;\n delete coordinates.right;\n }\n if (menuIsOffScreen.top) {\n coordinates.top = windowHeight > menuDimensions.height\n ? windowTop + windowHeight - menuDimensions.height\n : windowTop;\n delete coordinates.bottom;\n }\n\n if (!this.menuContainerIsBody) {\n coordinates.left = coordinates.left ? coordinates.left - this.tribute.menuContainer.offsetLeft : coordinates.left;\n coordinates.top = coordinates.top ? coordinates.top - this.tribute.menuContainer.offsetTop : coordinates.top;\n }\n\n return coordinates\n }\n\n scrollIntoView(elem) {\n let reasonableBuffer = 20,\n clientRect;\n let maxScrollDisplacement = 100;\n let e = this.menu;\n\n if (typeof e === 'undefined') return;\n\n while (clientRect === undefined || clientRect.height === 0) {\n clientRect = e.getBoundingClientRect();\n\n if (clientRect.height === 0) {\n e = e.childNodes[0];\n if (e === undefined || !e.getBoundingClientRect) {\n return\n }\n }\n }\n\n let elemTop = clientRect.top;\n let elemBottom = elemTop + clientRect.height;\n\n if (elemTop < 0) {\n window.scrollTo(0, window.pageYOffset + clientRect.top - reasonableBuffer);\n } else if (elemBottom > window.innerHeight) {\n let maxY = window.pageYOffset + clientRect.top - reasonableBuffer;\n\n if (maxY - window.pageYOffset > maxScrollDisplacement) {\n maxY = window.pageYOffset + maxScrollDisplacement;\n }\n\n let targetY = window.pageYOffset - (window.innerHeight - elemBottom);\n\n if (targetY > maxY) {\n targetY = maxY;\n }\n\n window.scrollTo(0, targetY);\n }\n }\n}\n\n// Thanks to https://github.com/mattyork/fuzzy\nclass TributeSearch {\n constructor(tribute) {\n this.tribute = tribute;\n this.tribute.search = this;\n }\n\n simpleFilter(pattern, array) {\n return array.filter(string => {\n return this.test(pattern, string)\n })\n }\n\n test(pattern, string) {\n return this.match(pattern, string) !== null\n }\n\n match(pattern, string, opts) {\n opts = opts || {};\n let len = string.length,\n pre = opts.pre || '',\n post = opts.post || '',\n compareString = opts.caseSensitive && string || string.toLowerCase();\n\n if (opts.skip) {\n return {rendered: string, score: 0}\n }\n\n pattern = opts.caseSensitive && pattern || pattern.toLowerCase();\n\n let patternCache = this.traverse(compareString, pattern, 0, 0, []);\n if (!patternCache) {\n return null\n }\n return {\n rendered: this.render(string, patternCache.cache, pre, post),\n score: patternCache.score\n }\n }\n\n traverse(string, pattern, stringIndex, patternIndex, patternCache) {\n // if the pattern search at end\n if (pattern.length === patternIndex) {\n\n // calculate score and copy the cache containing the indices where it's found\n return {\n score: this.calculateScore(patternCache),\n cache: patternCache.slice()\n }\n }\n\n // if string at end or remaining pattern > remaining string\n if (string.length === stringIndex || pattern.length - patternIndex > string.length - stringIndex) {\n return undefined\n }\n\n let c = pattern[patternIndex];\n let index = string.indexOf(c, stringIndex);\n let best, temp;\n\n while (index > -1) {\n patternCache.push(index);\n temp = this.traverse(string, pattern, index + 1, patternIndex + 1, patternCache);\n patternCache.pop();\n\n // if downstream traversal failed, return best answer so far\n if (!temp) {\n return best\n }\n\n if (!best || best.score < temp.score) {\n best = temp;\n }\n\n index = string.indexOf(c, index + 1);\n }\n\n return best\n }\n\n calculateScore(patternCache) {\n let score = 0;\n let temp = 1;\n\n patternCache.forEach((index, i) => {\n if (i > 0) {\n if (patternCache[i - 1] + 1 === index) {\n temp += temp + 1;\n }\n else {\n temp = 1;\n }\n }\n\n score += temp;\n });\n\n return score\n }\n\n render(string, indices, pre, post) {\n var rendered = string.substring(0, indices[0]);\n\n indices.forEach((index, i) => {\n rendered += pre + string[index] + post +\n string.substring(index + 1, (indices[i + 1]) ? indices[i + 1] : string.length);\n });\n\n return rendered\n }\n\n filter(pattern, arr, opts) {\n opts = opts || {};\n return arr\n .reduce((prev, element, idx, arr) => {\n let str = element;\n\n if (opts.extract) {\n str = opts.extract(element);\n\n if (!str) { // take care of undefineds / nulls / etc.\n str = '';\n }\n }\n\n let rendered = this.match(pattern, str, opts);\n\n if (rendered != null) {\n prev[prev.length] = {\n string: rendered.rendered,\n score: rendered.score,\n index: idx,\n original: element\n };\n }\n\n return prev\n }, [])\n\n .sort((a, b) => {\n let compare = b.score - a.score;\n if (compare) return compare\n return a.index - b.index\n })\n }\n}\n\nclass Tribute {\n constructor({\n values = null,\n iframe = null,\n selectClass = \"highlight\",\n containerClass = \"tribute-container\",\n itemClass = \"\",\n trigger = \"@\",\n autocompleteMode = false,\n selectTemplate = null,\n menuItemTemplate = null,\n lookup = \"key\",\n fillAttr = \"value\",\n collection = null,\n menuContainer = null,\n noMatchTemplate = null,\n requireLeadingSpace = true,\n allowSpaces = false,\n replaceTextSuffix = null,\n positionMenu = true,\n spaceSelectsMatch = false,\n searchOpts = {},\n menuItemLimit = null,\n menuShowMinLength = 0\n }) {\n this.autocompleteMode = autocompleteMode;\n this.menuSelected = 0;\n this.current = {};\n this.inputEvent = false;\n this.isActive = false;\n this.menuContainer = menuContainer;\n this.allowSpaces = allowSpaces;\n this.replaceTextSuffix = replaceTextSuffix;\n this.positionMenu = positionMenu;\n this.hasTrailingSpace = false;\n this.spaceSelectsMatch = spaceSelectsMatch;\n\n if (this.autocompleteMode) {\n trigger = \"\";\n allowSpaces = false;\n }\n\n if (values) {\n this.collection = [\n {\n // symbol that starts the lookup\n trigger: trigger,\n\n // is it wrapped in an iframe\n iframe: iframe,\n\n // class applied to selected item\n selectClass: selectClass,\n\n // class applied to the Container\n containerClass: containerClass,\n\n // class applied to each item\n itemClass: itemClass,\n\n // function called on select that retuns the content to insert\n selectTemplate: (\n selectTemplate || Tribute.defaultSelectTemplate\n ).bind(this),\n\n // function called that returns content for an item\n menuItemTemplate: (\n menuItemTemplate || Tribute.defaultMenuItemTemplate\n ).bind(this),\n\n // function called when menu is empty, disables hiding of menu.\n noMatchTemplate: (t => {\n if (typeof t === \"string\") {\n if (t.trim() === \"\") return null;\n return t;\n }\n if (typeof t === \"function\") {\n return t.bind(this);\n }\n\n return (\n noMatchTemplate ||\n function() {\n return \"<li>No Match Found!</li>\";\n }.bind(this)\n );\n })(noMatchTemplate),\n\n // column to search against in the object\n lookup: lookup,\n\n // column that contains the content to insert by default\n fillAttr: fillAttr,\n\n // array of objects or a function returning an array of objects\n values: values,\n\n requireLeadingSpace: requireLeadingSpace,\n\n searchOpts: searchOpts,\n\n menuItemLimit: menuItemLimit,\n\n menuShowMinLength: menuShowMinLength\n }\n ];\n } else if (collection) {\n if (this.autocompleteMode)\n console.warn(\n \"Tribute in autocomplete mode does not work for collections\"\n );\n this.collection = collection.map(item => {\n return {\n trigger: item.trigger || trigger,\n iframe: item.iframe || iframe,\n selectClass: item.selectClass || selectClass,\n containerClass: item.containerClass || containerClass,\n itemClass: item.itemClass || itemClass,\n selectTemplate: (\n item.selectTemplate || Tribute.defaultSelectTemplate\n ).bind(this),\n menuItemTemplate: (\n item.menuItemTemplate || Tribute.defaultMenuItemTemplate\n ).bind(this),\n // function called when menu is empty, disables hiding of menu.\n noMatchTemplate: (t => {\n if (typeof t === \"string\") {\n if (t.trim() === \"\") return null;\n return t;\n }\n if (typeof t === \"function\") {\n return t.bind(this);\n }\n\n return (\n noMatchTemplate ||\n function() {\n return \"<li>No Match Found!</li>\";\n }.bind(this)\n );\n })(noMatchTemplate),\n lookup: item.lookup || lookup,\n fillAttr: item.fillAttr || fillAttr,\n values: item.values,\n requireLeadingSpace: item.requireLeadingSpace,\n searchOpts: item.searchOpts || searchOpts,\n menuItemLimit: item.menuItemLimit || menuItemLimit,\n menuShowMinLength: item.menuShowMinLength || menuShowMinLength\n };\n });\n } else {\n throw new Error(\"[Tribute] No collection specified.\");\n }\n\n new TributeRange(this);\n new TributeEvents(this);\n new TributeMenuEvents(this);\n new TributeSearch(this);\n }\n\n get isActive() {\n return this._isActive;\n }\n\n set isActive(val) {\n if (this._isActive != val) {\n this._isActive = val;\n if (this.current.element) {\n let noMatchEvent = new CustomEvent(`tribute-active-${val}`);\n this.current.element.dispatchEvent(noMatchEvent);\n }\n }\n }\n\n static defaultSelectTemplate(item) {\n if (typeof item === \"undefined\")\n return `${this.current.collection.trigger}${this.current.mentionText}`;\n if (this.range.isContentEditable(this.current.element)) {\n return (\n '<span class=\"tribute-mention\">' +\n (this.current.collection.trigger +\n item.original[this.current.collection.fillAttr]) +\n \"</span>\"\n );\n }\n\n return (\n this.current.collection.trigger +\n item.original[this.current.collection.fillAttr]\n );\n }\n\n static defaultMenuItemTemplate(matchItem) {\n return matchItem.string;\n }\n\n static inputTypes() {\n return [\"TEXTAREA\", \"INPUT\"];\n }\n\n triggers() {\n return this.collection.map(config => {\n return config.trigger;\n });\n }\n\n attach(el) {\n if (!el) {\n throw new Error(\"[Tribute] Must pass in a DOM node or NodeList.\");\n }\n\n // Check if it is a jQuery collection\n if (typeof jQuery !== \"undefined\" && el instanceof jQuery) {\n el = el.get();\n }\n\n // Is el an Array/Array-like object?\n if (\n el.constructor === NodeList ||\n el.constructor === HTMLCollection ||\n el.constructor === Array\n ) {\n let length = el.length;\n for (var i = 0; i < length; ++i) {\n this._attach(el[i]);\n }\n } else {\n this._attach(el);\n }\n }\n\n _attach(el) {\n if (el.hasAttribute(\"data-tribute\")) {\n console.warn(\"Tribute was already bound to \" + el.nodeName);\n }\n\n this.ensureEditable(el);\n this.events.bind(el);\n el.setAttribute(\"data-tribute\", true);\n }\n\n ensureEditable(element) {\n if (Tribute.inputTypes().indexOf(element.nodeName) === -1) {\n if (element.contentEditable) {\n element.contentEditable = true;\n } else {\n throw new Error(\"[Tribute] Cannot bind to \" + element.nodeName);\n }\n }\n }\n\n createMenu(containerClass) {\n let wrapper = this.range.getDocument().createElement(\"div\"),\n ul = this.range.getDocument().createElement(\"ul\");\n wrapper.className = containerClass;\n wrapper.appendChild(ul);\n\n if (this.menuContainer) {\n return this.menuContainer.appendChild(wrapper);\n }\n\n return this.range.getDocument().body.appendChild(wrapper);\n }\n\n showMenuFor(element, scrollTo) {\n // Only proceed if menu isn't already shown for the current element & mentionText\n if (\n this.isActive &&\n this.current.element === element &&\n this.current.mentionText === this.currentMentionTextSnapshot\n ) {\n return;\n }\n this.currentMentionTextSnapshot = this.current.mentionText;\n\n // create the menu if it doesn't exist.\n if (!this.menu) {\n this.menu = this.createMenu(this.current.collection.containerClass);\n element.tributeMenu = this.menu;\n this.menuEvents.bind(this.menu);\n }\n\n this.isActive = true;\n this.menuSelected = 0;\n\n if (!this.current.mentionText) {\n this.current.mentionText = \"\";\n }\n\n const processValues = values => {\n // Tribute may not be active any more by the time the value callback returns\n if (!this.isActive) {\n return;\n }\n\n let items = this.search.filter(this.current.mentionText, values, {\n pre: this.current.collection.searchOpts.pre || \"<span>\",\n post: this.current.collection.searchOpts.post || \"</span>\",\n skip: this.current.collection.searchOpts.skip,\n extract: el => {\n if (typeof this.current.collection.lookup === \"string\") {\n return el[this.current.collection.lookup];\n } else if (typeof this.current.collection.lookup === \"function\") {\n return this.current.collection.lookup(el, this.current.mentionText);\n } else {\n throw new Error(\n \"Invalid lookup attribute, lookup must be string or function.\"\n );\n }\n }\n });\n\n if (this.current.collection.menuItemLimit) {\n items = items.slice(0, this.current.collection.menuItemLimit);\n }\n\n this.current.filteredItems = items;\n\n let ul = this.menu.querySelector(\"ul\");\n\n this.range.positionMenuAtCaret(scrollTo);\n\n if (!items.length) {\n let noMatchEvent = new CustomEvent(\"tribute-no-match\", {\n detail: this.menu\n });\n this.current.element.dispatchEvent(noMatchEvent);\n if (\n (typeof this.current.collection.noMatchTemplate === \"function\" &&\n !this.current.collection.noMatchTemplate()) ||\n !this.current.collection.noMatchTemplate\n ) {\n this.hideMenu();\n } else {\n typeof this.current.collection.noMatchTemplate === \"function\"\n ? (ul.innerHTML = this.current.collection.noMatchTemplate())\n : (ul.innerHTML = this.current.collection.noMatchTemplate);\n }\n\n return;\n }\n\n ul.innerHTML = \"\";\n let fragment = this.range.getDocument().createDocumentFragment();\n\n items.forEach((item, index) => {\n let li = this.range.getDocument().createElement(\"li\");\n li.setAttribute(\"data-index\", index);\n li.className = this.current.collection.itemClass;\n li.addEventListener(\"mousemove\", e => {\n let [li, index] = this._findLiTarget(e.target);\n if (e.movementY !== 0) {\n this.events.setActiveLi(index);\n }\n });\n if (this.menuSelected === index) {\n li.classList.add(this.current.collection.selectClass);\n }\n li.innerHTML = this.current.collection.menuItemTemplate(item);\n fragment.appendChild(li);\n });\n ul.appendChild(fragment);\n };\n\n if (typeof this.current.collection.values === \"function\") {\n this.current.collection.values(this.current.mentionText, processValues);\n } else {\n processValues(this.current.collection.values);\n }\n }\n\n _findLiTarget(el) {\n if (!el) return [];\n const index = el.getAttribute(\"data-index\");\n return !index ? this._findLiTarget(el.parentNode) : [el, index];\n }\n\n showMenuForCollection(element, collectionIndex) {\n if (element !== document.activeElement) {\n this.placeCaretAtEnd(element);\n }\n\n this.current.collection = this.collection[collectionIndex || 0];\n this.current.externalTrigger = true;\n this.current.element = element;\n\n if (element.isContentEditable)\n this.insertTextAtCursor(this.current.collection.trigger);\n else this.insertAtCaret(element, this.current.collection.trigger);\n\n this.showMenuFor(element);\n }\n\n // TODO: make sure this works for inputs/textareas\n placeCaretAtEnd(el) {\n el.focus();\n if (\n typeof window.getSelection != \"undefined\" &&\n typeof document.createRange != \"undefined\"\n ) {\n var range = document.createRange();\n range.selectNodeContents(el);\n range.collapse(false);\n var sel = window.getSelection();\n sel.removeAllRanges();\n sel.addRange(range);\n } else if (typeof document.body.createTextRange != \"undefined\") {\n var textRange = document.body.createTextRange();\n textRange.moveToElementText(el);\n textRange.collapse(false);\n textRange.select();\n }\n }\n\n // for contenteditable\n insertTextAtCursor(text) {\n var sel, range;\n sel = window.getSelection();\n range = sel.getRangeAt(0);\n range.deleteContents();\n var textNode = document.createTextNode(text);\n range.insertNode(textNode);\n range.selectNodeContents(textNode);\n range.collapse(false);\n sel.removeAllRanges();\n sel.addRange(range);\n }\n\n // for regular inputs\n insertAtCaret(textarea, text) {\n var scrollPos = textarea.scrollTop;\n var caretPos = textarea.selectionStart;\n\n var front = textarea.value.substring(0, caretPos);\n var back = textarea.value.substring(\n textarea.selectionEnd,\n textarea.value.length\n );\n textarea.value = front + text + back;\n caretPos = caretPos + text.length;\n textarea.selectionStart = caretPos;\n textarea.selectionEnd = caretPos;\n textarea.focus();\n textarea.scrollTop = scrollPos;\n }\n\n hideMenu() {\n if (this.menu) {\n this.menu.style.cssText = \"display: none;\";\n this.isActive = false;\n this.menuSelected = 0;\n this.current = {};\n }\n }\n\n selectItemAtIndex(index, originalEvent) {\n index = parseInt(index);\n if (typeof index !== \"number\" || isNaN(index)) return;\n let item = this.current.filteredItems[index];\n let content = this.current.collection.selectTemplate(item);\n if (content !== null) this.replaceText(content, originalEvent, item);\n }\n\n replaceText(content, originalEvent, item) {\n this.range.replaceTriggerText(content, true, true, originalEvent, item);\n }\n\n _append(collection, newValues, replace) {\n if (typeof collection.values === \"function\") {\n throw new Error(\"Unable to append to values, as it is a function.\");\n } else if (!replace) {\n collection.values = collection.values.concat(newValues);\n } else {\n collection.values = newValues;\n }\n }\n\n append(collectionIndex, newValues, replace) {\n let index = parseInt(collectionIndex);\n if (typeof index !== \"number\")\n throw new Error(\"please provide an index for the collection to update.\");\n\n let collection = this.collection[index];\n\n this._append(collection, newValues, replace);\n }\n\n appendCurrent(newValues, replace) {\n if (this.isActive) {\n this._append(this.current.collection, newValues, replace);\n } else {\n throw new Error(\n \"No active state. Please use append instead and pass an index.\"\n );\n }\n }\n\n detach(el) {\n if (!el) {\n throw new Error(\"[Tribute] Must pass in a DOM node or NodeList.\");\n }\n\n // Check if it is a jQuery collection\n if (typeof jQuery !== \"undefined\" && el instanceof jQuery) {\n el = el.get();\n }\n\n // Is el an Array/Array-like object?\n if (\n el.constructor === NodeList ||\n el.constructor === HTMLCollection ||\n el.constructor === Array\n ) {\n let length = el.length;\n for (var i = 0; i < length; ++i) {\n this._detach(el[i]);\n }\n } else {\n this._detach(el);\n }\n }\n\n _detach(el) {\n this.events.unbind(el);\n if (el.tributeMenu) {\n this.menuEvents.unbind(el.tributeMenu);\n }\n\n setTimeout(() => {\n el.removeAttribute(\"data-tribute\");\n this.isActive = false;\n if (el.tributeMenu) {\n el.tributeMenu.remove();\n }\n });\n }\n}\n\n/**\n * Tribute.js\n * Native ES6 JavaScript @mention Plugin\n **/\n\nexport default Tribute;\n","'use strict';\nconst stripAnsi = require('strip-ansi');\nconst charRegex = require('char-regex');\n\nconst stringLength = string => {\n\tif (string === '') {\n\t\treturn 0;\n\t}\n\n\treturn stripAnsi(string).match(charRegex()).length;\n};\n\nmodule.exports = stringLength;\n","'use strict';\nconst ansiRegex = require('ansi-regex');\n\nmodule.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string;\n","'use strict';\n\nmodule.exports = ({onlyFirst = false} = {}) => {\n\tconst pattern = [\n\t\t'[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:[a-zA-Z\\\\d]*(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?\\\\u0007)',\n\t\t'(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TZcf-ntqry=><~]))'\n\t].join('|');\n\n\treturn new RegExp(pattern, onlyFirst ? undefined : 'g');\n};\n","\"use strict\"\r\n\r\n// Based on: https://github.com/lodash/lodash/blob/6018350ac10d5ce6a5b7db625140b82aeab804df/.internal/unicodeSize.js\r\n\r\nmodule.exports = () => {\r\n\t// Used to compose unicode character classes.\r\n\tconst astralRange = \"\\\\ud800-\\\\udfff\"\r\n\tconst comboMarksRange = \"\\\\u0300-\\\\u036f\"\r\n\tconst comboHalfMarksRange = \"\\\\ufe20-\\\\ufe2f\"\r\n\tconst comboSymbolsRange = \"\\\\u20d0-\\\\u20ff\"\r\n\tconst comboMarksExtendedRange = \"\\\\u1ab0-\\\\u1aff\"\r\n\tconst comboMarksSupplementRange = \"\\\\u1dc0-\\\\u1dff\"\r\n\tconst comboRange = comboMarksRange + comboHalfMarksRange + comboSymbolsRange + comboMarksExtendedRange + comboMarksSupplementRange\r\n\tconst varRange = \"\\\\ufe0e\\\\ufe0f\"\r\n\tconst familyRange = \"\\\\uD83D\\\\uDC69\\\\uD83C\\\\uDFFB\\\\u200D\\\\uD83C\\\\uDF93\"\r\n\r\n\t// Used to compose unicode capture groups.\r\n\tconst astral = `[${astralRange}]`\r\n\tconst combo = `[${comboRange}]`\r\n\tconst fitz = \"\\\\ud83c[\\\\udffb-\\\\udfff]\"\r\n\tconst modifier = `(?:${combo}|${fitz})`\r\n\tconst nonAstral = `[^${astralRange}]`\r\n\tconst regional = \"(?:\\\\uD83C[\\\\uDDE6-\\\\uDDFF]){2}\"\r\n\tconst surrogatePair = \"[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]\"\r\n\tconst zwj = \"\\\\u200d\"\r\n\tconst blackFlag = \"(?:\\\\ud83c\\\\udff4\\\\udb40\\\\udc67\\\\udb40\\\\udc62\\\\udb40(?:\\\\udc65|\\\\udc73|\\\\udc77)\\\\udb40(?:\\\\udc6e|\\\\udc63|\\\\udc6c)\\\\udb40(?:\\\\udc67|\\\\udc74|\\\\udc73)\\\\udb40\\\\udc7f)\"\r\n\tconst family = `[${familyRange}]`\r\n\r\n\t// Used to compose unicode regexes.\r\n\tconst optModifier = `${modifier}?`\r\n\tconst optVar = `[${varRange}]?`\r\n\tconst optJoin = `(?:${zwj}(?:${[nonAstral, regional, surrogatePair].join(\"|\")})${optVar + optModifier})*`\r\n\tconst seq = optVar + optModifier + optJoin\r\n\tconst nonAstralCombo = `${nonAstral}${combo}?`\r\n\tconst symbol = `(?:${[nonAstralCombo, combo, regional, surrogatePair, astral, family].join(\"|\")})`\r\n\r\n\t// Used to match [String symbols](https://mathiasbynens.be/notes/javascript-unicode).\r\n\treturn new RegExp(`${blackFlag}|${fitz}(?=${fitz})|${symbol + seq}`, \"g\")\r\n}\r\n","'use strict';\nvar $ = require('../internals/export');\nvar $findIndex = require('../internals/array-iteration').findIndex;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar FIND_INDEX = 'findIndex';\nvar SKIPS_HOLES = true;\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength(FIND_INDEX);\n\n// Shouldn't skip holes\nif (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.findIndex` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.findindex\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $findIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND_INDEX);\n","'use strict';\nvar $ = require('../internals/export');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\n// `String.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~String(requireObjectCoercible(this))\n .indexOf(notARegExp(searchString), arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength(FIND);\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","'use strict';\nvar $ = require('../internals/export');\nvar $every = require('../internals/array-iteration').every;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('every');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('every');\n\n// `Array.prototype.every` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.every\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n every: function every(callbackfn /* , thisArg */) {\n return $every(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","/**!\n * Sortable 1.10.2\n * @author\tRubaXa <trash@rubaxa.org>\n * @author\towenm <owen23355@gmail.com>\n * @license MIT\n */\nfunction _typeof(obj) {\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 _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nvar version = \"1.10.2\";\n\nfunction userAgent(pattern) {\n if (typeof window !== 'undefined' && window.navigator) {\n return !!\n /*@__PURE__*/\n navigator.userAgent.match(pattern);\n }\n}\n\nvar IE11OrLess = userAgent(/(?:Trident.*rv[ :]?11\\.|msie|iemobile|Windows Phone)/i);\nvar Edge = userAgent(/Edge/i);\nvar FireFox = userAgent(/firefox/i);\nvar Safari = userAgent(/safari/i) && !userAgent(/chrome/i) && !userAgent(/android/i);\nvar IOS = userAgent(/iP(ad|od|hone)/i);\nvar ChromeForAndroid = userAgent(/chrome/i) && userAgent(/android/i);\n\nvar captureMode = {\n capture: false,\n passive: false\n};\n\nfunction on(el, event, fn) {\n el.addEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction off(el, event, fn) {\n el.removeEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction matches(\n/**HTMLElement*/\nel,\n/**String*/\nselector) {\n if (!selector) return;\n selector[0] === '>' && (selector = selector.substring(1));\n\n if (el) {\n try {\n if (el.matches) {\n return el.matches(selector);\n } else if (el.msMatchesSelector) {\n return el.msMatchesSelector(selector);\n } else if (el.webkitMatchesSelector) {\n return el.webkitMatchesSelector(selector);\n }\n } catch (_) {\n return false;\n }\n }\n\n return false;\n}\n\nfunction getParentOrHost(el) {\n return el.host && el !== document && el.host.nodeType ? el.host : el.parentNode;\n}\n\nfunction closest(\n/**HTMLElement*/\nel,\n/**String*/\nselector,\n/**HTMLElement*/\nctx, includeCTX) {\n if (el) {\n ctx = ctx || document;\n\n do {\n if (selector != null && (selector[0] === '>' ? el.parentNode === ctx && matches(el, selector) : matches(el, selector)) || includeCTX && el === ctx) {\n return el;\n }\n\n if (el === ctx) break;\n /* jshint boss:true */\n } while (el = getParentOrHost(el));\n }\n\n return null;\n}\n\nvar R_SPACE = /\\s+/g;\n\nfunction toggleClass(el, name, state) {\n if (el && name) {\n if (el.classList) {\n el.classList[state ? 'add' : 'remove'](name);\n } else {\n var className = (' ' + el.className + ' ').replace(R_SPACE, ' ').replace(' ' + name + ' ', ' ');\n el.className = (className + (state ? ' ' + name : '')).replace(R_SPACE, ' ');\n }\n }\n}\n\nfunction css(el, prop, val) {\n var style = el && el.style;\n\n if (style) {\n if (val === void 0) {\n if (document.defaultView && document.defaultView.getComputedStyle) {\n val = document.defaultView.getComputedStyle(el, '');\n } else if (el.currentStyle) {\n val = el.currentStyle;\n }\n\n return prop === void 0 ? val : val[prop];\n } else {\n if (!(prop in style) && prop.indexOf('webkit') === -1) {\n prop = '-webkit-' + prop;\n }\n\n style[prop] = val + (typeof val === 'string' ? '' : 'px');\n }\n }\n}\n\nfunction matrix(el, selfOnly) {\n var appliedTransforms = '';\n\n if (typeof el === 'string') {\n appliedTransforms = el;\n } else {\n do {\n var transform = css(el, 'transform');\n\n if (transform && transform !== 'none') {\n appliedTransforms = transform + ' ' + appliedTransforms;\n }\n /* jshint boss:true */\n\n } while (!selfOnly && (el = el.parentNode));\n }\n\n var matrixFn = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix;\n /*jshint -W056 */\n\n return matrixFn && new matrixFn(appliedTransforms);\n}\n\nfunction find(ctx, tagName, iterator) {\n if (ctx) {\n var list = ctx.getElementsByTagName(tagName),\n i = 0,\n n = list.length;\n\n if (iterator) {\n for (; i < n; i++) {\n iterator(list[i], i);\n }\n }\n\n return list;\n }\n\n return [];\n}\n\nfunction getWindowScrollingElement() {\n var scrollingElement = document.scrollingElement;\n\n if (scrollingElement) {\n return scrollingElement;\n } else {\n return document.documentElement;\n }\n}\n/**\r\n * Returns the \"bounding client rect\" of given element\r\n * @param {HTMLElement} el The element whose boundingClientRect is wanted\r\n * @param {[Boolean]} relativeToContainingBlock Whether the rect should be relative to the containing block of (including) the container\r\n * @param {[Boolean]} relativeToNonStaticParent Whether the rect should be relative to the relative parent of (including) the contaienr\r\n * @param {[Boolean]} undoScale Whether the container's scale() should be undone\r\n * @param {[HTMLElement]} container The parent the element will be placed in\r\n * @return {Object} The boundingClientRect of el, with specified adjustments\r\n */\n\n\nfunction getRect(el, relativeToContainingBlock, relativeToNonStaticParent, undoScale, container) {\n if (!el.getBoundingClientRect && el !== window) return;\n var elRect, top, left, bottom, right, height, width;\n\n if (el !== window && el !== getWindowScrollingElement()) {\n elRect = el.getBoundingClientRect();\n top = elRect.top;\n left = elRect.left;\n bottom = elRect.bottom;\n right = elRect.right;\n height = elRect.height;\n width = elRect.width;\n } else {\n top = 0;\n left = 0;\n bottom = window.innerHeight;\n right = window.innerWidth;\n height = window.innerHeight;\n width = window.innerWidth;\n }\n\n if ((relativeToContainingBlock || relativeToNonStaticParent) && el !== window) {\n // Adjust for translate()\n container = container || el.parentNode; // solves #1123 (see: https://stackoverflow.com/a/37953806/6088312)\n // Not needed on <= IE11\n\n if (!IE11OrLess) {\n do {\n if (container && container.getBoundingClientRect && (css(container, 'transform') !== 'none' || relativeToNonStaticParent && css(container, 'position') !== 'static')) {\n var containerRect = container.getBoundingClientRect(); // Set relative to edges of padding box of container\n\n top -= containerRect.top + parseInt(css(container, 'border-top-width'));\n left -= containerRect.left + parseInt(css(container, 'border-left-width'));\n bottom = top + elRect.height;\n right = left + elRect.width;\n break;\n }\n /* jshint boss:true */\n\n } while (container = container.parentNode);\n }\n }\n\n if (undoScale && el !== window) {\n // Adjust for scale()\n var elMatrix = matrix(container || el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d;\n\n if (elMatrix) {\n top /= scaleY;\n left /= scaleX;\n width /= scaleX;\n height /= scaleY;\n bottom = top + height;\n right = left + width;\n }\n }\n\n return {\n top: top,\n left: left,\n bottom: bottom,\n right: right,\n width: width,\n height: height\n };\n}\n/**\r\n * Checks if a side of an element is scrolled past a side of its parents\r\n * @param {HTMLElement} el The element who's side being scrolled out of view is in question\r\n * @param {String} elSide Side of the element in question ('top', 'left', 'right', 'bottom')\r\n * @param {String} parentSide Side of the parent in question ('top', 'left', 'right', 'bottom')\r\n * @return {HTMLElement} The parent scroll element that the el's side is scrolled past, or null if there is no such element\r\n */\n\n\nfunction isScrolledPast(el, elSide, parentSide) {\n var parent = getParentAutoScrollElement(el, true),\n elSideVal = getRect(el)[elSide];\n /* jshint boss:true */\n\n while (parent) {\n var parentSideVal = getRect(parent)[parentSide],\n visible = void 0;\n\n if (parentSide === 'top' || parentSide === 'left') {\n visible = elSideVal >= parentSideVal;\n } else {\n visible = elSideVal <= parentSideVal;\n }\n\n if (!visible) return parent;\n if (parent === getWindowScrollingElement()) break;\n parent = getParentAutoScrollElement(parent, false);\n }\n\n return false;\n}\n/**\r\n * Gets nth child of el, ignoring hidden children, sortable's elements (does not ignore clone if it's visible)\r\n * and non-draggable elements\r\n * @param {HTMLElement} el The parent element\r\n * @param {Number} childNum The index of the child\r\n * @param {Object} options Parent Sortable's options\r\n * @return {HTMLElement} The child at index childNum, or null if not found\r\n */\n\n\nfunction getChild(el, childNum, options) {\n var currentChild = 0,\n i = 0,\n children = el.children;\n\n while (i < children.length) {\n if (children[i].style.display !== 'none' && children[i] !== Sortable.ghost && children[i] !== Sortable.dragged && closest(children[i], options.draggable, el, false)) {\n if (currentChild === childNum) {\n return children[i];\n }\n\n currentChild++;\n }\n\n i++;\n }\n\n return null;\n}\n/**\r\n * Gets the last child in the el, ignoring ghostEl or invisible elements (clones)\r\n * @param {HTMLElement} el Parent element\r\n * @param {selector} selector Any other elements that should be ignored\r\n * @return {HTMLElement} The last child, ignoring ghostEl\r\n */\n\n\nfunction lastChild(el, selector) {\n var last = el.lastElementChild;\n\n while (last && (last === Sortable.ghost || css(last, 'display') === 'none' || selector && !matches(last, selector))) {\n last = last.previousElementSibling;\n }\n\n return last || null;\n}\n/**\r\n * Returns the index of an element within its parent for a selected set of\r\n * elements\r\n * @param {HTMLElement} el\r\n * @param {selector} selector\r\n * @return {number}\r\n */\n\n\nfunction index(el, selector) {\n var index = 0;\n\n if (!el || !el.parentNode) {\n return -1;\n }\n /* jshint boss:true */\n\n\n while (el = el.previousElementSibling) {\n if (el.nodeName.toUpperCase() !== 'TEMPLATE' && el !== Sortable.clone && (!selector || matches(el, selector))) {\n index++;\n }\n }\n\n return index;\n}\n/**\r\n * Returns the scroll offset of the given element, added with all the scroll offsets of parent elements.\r\n * The value is returned in real pixels.\r\n * @param {HTMLElement} el\r\n * @return {Array} Offsets in the format of [left, top]\r\n */\n\n\nfunction getRelativeScrollOffset(el) {\n var offsetLeft = 0,\n offsetTop = 0,\n winScroller = getWindowScrollingElement();\n\n if (el) {\n do {\n var elMatrix = matrix(el),\n scaleX = elMatrix.a,\n scaleY = elMatrix.d;\n offsetLeft += el.scrollLeft * scaleX;\n offsetTop += el.scrollTop * scaleY;\n } while (el !== winScroller && (el = el.parentNode));\n }\n\n return [offsetLeft, offsetTop];\n}\n/**\r\n * Returns the index of the object within the given array\r\n * @param {Array} arr Array that may or may not hold the object\r\n * @param {Object} obj An object that has a key-value pair unique to and identical to a key-value pair in the object you want to find\r\n * @return {Number} The index of the object in the array, or -1\r\n */\n\n\nfunction indexOfObject(arr, obj) {\n for (var i in arr) {\n if (!arr.hasOwnProperty(i)) continue;\n\n for (var key in obj) {\n if (obj.hasOwnProperty(key) && obj[key] === arr[i][key]) return Number(i);\n }\n }\n\n return -1;\n}\n\nfunction getParentAutoScrollElement(el, includeSelf) {\n // skip to window\n if (!el || !el.getBoundingClientRect) return getWindowScrollingElement();\n var elem = el;\n var gotSelf = false;\n\n do {\n // we don't need to get elem css if it isn't even overflowing in the first place (performance)\n if (elem.clientWidth < elem.scrollWidth || elem.clientHeight < elem.scrollHeight) {\n var elemCSS = css(elem);\n\n if (elem.clientWidth < elem.scrollWidth && (elemCSS.overflowX == 'auto' || elemCSS.overflowX == 'scroll') || elem.clientHeight < elem.scrollHeight && (elemCSS.overflowY == 'auto' || elemCSS.overflowY == 'scroll')) {\n if (!elem.getBoundingClientRect || elem === document.body) return getWindowScrollingElement();\n if (gotSelf || includeSelf) return elem;\n gotSelf = true;\n }\n }\n /* jshint boss:true */\n\n } while (elem = elem.parentNode);\n\n return getWindowScrollingElement();\n}\n\nfunction extend(dst, src) {\n if (dst && src) {\n for (var key in src) {\n if (src.hasOwnProperty(key)) {\n dst[key] = src[key];\n }\n }\n }\n\n return dst;\n}\n\nfunction isRectEqual(rect1, rect2) {\n return Math.round(rect1.top) === Math.round(rect2.top) && Math.round(rect1.left) === Math.round(rect2.left) && Math.round(rect1.height) === Math.round(rect2.height) && Math.round(rect1.width) === Math.round(rect2.width);\n}\n\nvar _throttleTimeout;\n\nfunction throttle(callback, ms) {\n return function () {\n if (!_throttleTimeout) {\n var args = arguments,\n _this = this;\n\n if (args.length === 1) {\n callback.call(_this, args[0]);\n } else {\n callback.apply(_this, args);\n }\n\n _throttleTimeout = setTimeout(function () {\n _throttleTimeout = void 0;\n }, ms);\n }\n };\n}\n\nfunction cancelThrottle() {\n clearTimeout(_throttleTimeout);\n _throttleTimeout = void 0;\n}\n\nfunction scrollBy(el, x, y) {\n el.scrollLeft += x;\n el.scrollTop += y;\n}\n\nfunction clone(el) {\n var Polymer = window.Polymer;\n var $ = window.jQuery || window.Zepto;\n\n if (Polymer && Polymer.dom) {\n return Polymer.dom(el).cloneNode(true);\n } else if ($) {\n return $(el).clone(true)[0];\n } else {\n return el.cloneNode(true);\n }\n}\n\nfunction setRect(el, rect) {\n css(el, 'position', 'absolute');\n css(el, 'top', rect.top);\n css(el, 'left', rect.left);\n css(el, 'width', rect.width);\n css(el, 'height', rect.height);\n}\n\nfunction unsetRect(el) {\n css(el, 'position', '');\n css(el, 'top', '');\n css(el, 'left', '');\n css(el, 'width', '');\n css(el, 'height', '');\n}\n\nvar expando = 'Sortable' + new Date().getTime();\n\nfunction AnimationStateManager() {\n var animationStates = [],\n animationCallbackId;\n return {\n captureAnimationState: function captureAnimationState() {\n animationStates = [];\n if (!this.options.animation) return;\n var children = [].slice.call(this.el.children);\n children.forEach(function (child) {\n if (css(child, 'display') === 'none' || child === Sortable.ghost) return;\n animationStates.push({\n target: child,\n rect: getRect(child)\n });\n\n var fromRect = _objectSpread({}, animationStates[animationStates.length - 1].rect); // If animating: compensate for current animation\n\n\n if (child.thisAnimationDuration) {\n var childMatrix = matrix(child, true);\n\n if (childMatrix) {\n fromRect.top -= childMatrix.f;\n fromRect.left -= childMatrix.e;\n }\n }\n\n child.fromRect = fromRect;\n });\n },\n addAnimationState: function addAnimationState(state) {\n animationStates.push(state);\n },\n removeAnimationState: function removeAnimationState(target) {\n animationStates.splice(indexOfObject(animationStates, {\n target: target\n }), 1);\n },\n animateAll: function animateAll(callback) {\n var _this = this;\n\n if (!this.options.animation) {\n clearTimeout(animationCallbackId);\n if (typeof callback === 'function') callback();\n return;\n }\n\n var animating = false,\n animationTime = 0;\n animationStates.forEach(function (state) {\n var time = 0,\n target = state.target,\n fromRect = target.fromRect,\n toRect = getRect(target),\n prevFromRect = target.prevFromRect,\n prevToRect = target.prevToRect,\n animatingRect = state.rect,\n targetMatrix = matrix(target, true);\n\n if (targetMatrix) {\n // Compensate for current animation\n toRect.top -= targetMatrix.f;\n toRect.left -= targetMatrix.e;\n }\n\n target.toRect = toRect;\n\n if (target.thisAnimationDuration) {\n // Could also check if animatingRect is between fromRect and toRect\n if (isRectEqual(prevFromRect, toRect) && !isRectEqual(fromRect, toRect) && // Make sure animatingRect is on line between toRect & fromRect\n (animatingRect.top - toRect.top) / (animatingRect.left - toRect.left) === (fromRect.top - toRect.top) / (fromRect.left - toRect.left)) {\n // If returning to same place as started from animation and on same axis\n time = calculateRealTime(animatingRect, prevFromRect, prevToRect, _this.options);\n }\n } // if fromRect != toRect: animate\n\n\n if (!isRectEqual(toRect, fromRect)) {\n target.prevFromRect = fromRect;\n target.prevToRect = toRect;\n\n if (!time) {\n time = _this.options.animation;\n }\n\n _this.animate(target, animatingRect, toRect, time);\n }\n\n if (time) {\n animating = true;\n animationTime = Math.max(animationTime, time);\n clearTimeout(target.animationResetTimer);\n target.animationResetTimer = setTimeout(function () {\n target.animationTime = 0;\n target.prevFromRect = null;\n target.fromRect = null;\n target.prevToRect = null;\n target.thisAnimationDuration = null;\n }, time);\n target.thisAnimationDuration = time;\n }\n });\n clearTimeout(animationCallbackId);\n\n if (!animating) {\n if (typeof callback === 'function') callback();\n } else {\n animationCallbackId = setTimeout(function () {\n if (typeof callback === 'function') callback();\n }, animationTime);\n }\n\n animationStates = [];\n },\n animate: function animate(target, currentRect, toRect, duration) {\n if (duration) {\n css(target, 'transition', '');\n css(target, 'transform', '');\n var elMatrix = matrix(this.el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d,\n translateX = (currentRect.left - toRect.left) / (scaleX || 1),\n translateY = (currentRect.top - toRect.top) / (scaleY || 1);\n target.animatingX = !!translateX;\n target.animatingY = !!translateY;\n css(target, 'transform', 'translate3d(' + translateX + 'px,' + translateY + 'px,0)');\n repaint(target); // repaint\n\n css(target, 'transition', 'transform ' + duration + 'ms' + (this.options.easing ? ' ' + this.options.easing : ''));\n css(target, 'transform', 'translate3d(0,0,0)');\n typeof target.animated === 'number' && clearTimeout(target.animated);\n target.animated = setTimeout(function () {\n css(target, 'transition', '');\n css(target, 'transform', '');\n target.animated = false;\n target.animatingX = false;\n target.animatingY = false;\n }, duration);\n }\n }\n };\n}\n\nfunction repaint(target) {\n return target.offsetWidth;\n}\n\nfunction calculateRealTime(animatingRect, fromRect, toRect, options) {\n return Math.sqrt(Math.pow(fromRect.top - animatingRect.top, 2) + Math.pow(fromRect.left - animatingRect.left, 2)) / Math.sqrt(Math.pow(fromRect.top - toRect.top, 2) + Math.pow(fromRect.left - toRect.left, 2)) * options.animation;\n}\n\nvar plugins = [];\nvar defaults = {\n initializeByDefault: true\n};\nvar PluginManager = {\n mount: function mount(plugin) {\n // Set default static properties\n for (var option in defaults) {\n if (defaults.hasOwnProperty(option) && !(option in plugin)) {\n plugin[option] = defaults[option];\n }\n }\n\n plugins.push(plugin);\n },\n pluginEvent: function pluginEvent(eventName, sortable, evt) {\n var _this = this;\n\n this.eventCanceled = false;\n\n evt.cancel = function () {\n _this.eventCanceled = true;\n };\n\n var eventNameGlobal = eventName + 'Global';\n plugins.forEach(function (plugin) {\n if (!sortable[plugin.pluginName]) return; // Fire global events if it exists in this sortable\n\n if (sortable[plugin.pluginName][eventNameGlobal]) {\n sortable[plugin.pluginName][eventNameGlobal](_objectSpread({\n sortable: sortable\n }, evt));\n } // Only fire plugin event if plugin is enabled in this sortable,\n // and plugin has event defined\n\n\n if (sortable.options[plugin.pluginName] && sortable[plugin.pluginName][eventName]) {\n sortable[plugin.pluginName][eventName](_objectSpread({\n sortable: sortable\n }, evt));\n }\n });\n },\n initializePlugins: function initializePlugins(sortable, el, defaults, options) {\n plugins.forEach(function (plugin) {\n var pluginName = plugin.pluginName;\n if (!sortable.options[pluginName] && !plugin.initializeByDefault) return;\n var initialized = new plugin(sortable, el, sortable.options);\n initialized.sortable = sortable;\n initialized.options = sortable.options;\n sortable[pluginName] = initialized; // Add default options from plugin\n\n _extends(defaults, initialized.defaults);\n });\n\n for (var option in sortable.options) {\n if (!sortable.options.hasOwnProperty(option)) continue;\n var modified = this.modifyOption(sortable, option, sortable.options[option]);\n\n if (typeof modified !== 'undefined') {\n sortable.options[option] = modified;\n }\n }\n },\n getEventProperties: function getEventProperties(name, sortable) {\n var eventProperties = {};\n plugins.forEach(function (plugin) {\n if (typeof plugin.eventProperties !== 'function') return;\n\n _extends(eventProperties, plugin.eventProperties.call(sortable[plugin.pluginName], name));\n });\n return eventProperties;\n },\n modifyOption: function modifyOption(sortable, name, value) {\n var modifiedValue;\n plugins.forEach(function (plugin) {\n // Plugin must exist on the Sortable\n if (!sortable[plugin.pluginName]) return; // If static option listener exists for this option, call in the context of the Sortable's instance of this plugin\n\n if (plugin.optionListeners && typeof plugin.optionListeners[name] === 'function') {\n modifiedValue = plugin.optionListeners[name].call(sortable[plugin.pluginName], value);\n }\n });\n return modifiedValue;\n }\n};\n\nfunction dispatchEvent(_ref) {\n var sortable = _ref.sortable,\n rootEl = _ref.rootEl,\n name = _ref.name,\n targetEl = _ref.targetEl,\n cloneEl = _ref.cloneEl,\n toEl = _ref.toEl,\n fromEl = _ref.fromEl,\n oldIndex = _ref.oldIndex,\n newIndex = _ref.newIndex,\n oldDraggableIndex = _ref.oldDraggableIndex,\n newDraggableIndex = _ref.newDraggableIndex,\n originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n extraEventProperties = _ref.extraEventProperties;\n sortable = sortable || rootEl && rootEl[expando];\n if (!sortable) return;\n var evt,\n options = sortable.options,\n onName = 'on' + name.charAt(0).toUpperCase() + name.substr(1); // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent(name, {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent(name, true, true);\n }\n\n evt.to = toEl || rootEl;\n evt.from = fromEl || rootEl;\n evt.item = targetEl || rootEl;\n evt.clone = cloneEl;\n evt.oldIndex = oldIndex;\n evt.newIndex = newIndex;\n evt.oldDraggableIndex = oldDraggableIndex;\n evt.newDraggableIndex = newDraggableIndex;\n evt.originalEvent = originalEvent;\n evt.pullMode = putSortable ? putSortable.lastPutMode : undefined;\n\n var allEventProperties = _objectSpread({}, extraEventProperties, PluginManager.getEventProperties(name, sortable));\n\n for (var option in allEventProperties) {\n evt[option] = allEventProperties[option];\n }\n\n if (rootEl) {\n rootEl.dispatchEvent(evt);\n }\n\n if (options[onName]) {\n options[onName].call(sortable, evt);\n }\n}\n\nvar pluginEvent = function pluginEvent(eventName, sortable) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n originalEvent = _ref.evt,\n data = _objectWithoutProperties(_ref, [\"evt\"]);\n\n PluginManager.pluginEvent.bind(Sortable)(eventName, sortable, _objectSpread({\n dragEl: dragEl,\n parentEl: parentEl,\n ghostEl: ghostEl,\n rootEl: rootEl,\n nextEl: nextEl,\n lastDownEl: lastDownEl,\n cloneEl: cloneEl,\n cloneHidden: cloneHidden,\n dragStarted: moved,\n putSortable: putSortable,\n activeSortable: Sortable.active,\n originalEvent: originalEvent,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n hideGhostForTarget: _hideGhostForTarget,\n unhideGhostForTarget: _unhideGhostForTarget,\n cloneNowHidden: function cloneNowHidden() {\n cloneHidden = true;\n },\n cloneNowShown: function cloneNowShown() {\n cloneHidden = false;\n },\n dispatchSortableEvent: function dispatchSortableEvent(name) {\n _dispatchEvent({\n sortable: sortable,\n name: name,\n originalEvent: originalEvent\n });\n }\n }, data));\n};\n\nfunction _dispatchEvent(info) {\n dispatchEvent(_objectSpread({\n putSortable: putSortable,\n cloneEl: cloneEl,\n targetEl: dragEl,\n rootEl: rootEl,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex\n }, info));\n}\n\nvar dragEl,\n parentEl,\n ghostEl,\n rootEl,\n nextEl,\n lastDownEl,\n cloneEl,\n cloneHidden,\n oldIndex,\n newIndex,\n oldDraggableIndex,\n newDraggableIndex,\n activeGroup,\n putSortable,\n awaitingDragStarted = false,\n ignoreNextClick = false,\n sortables = [],\n tapEvt,\n touchEvt,\n lastDx,\n lastDy,\n tapDistanceLeft,\n tapDistanceTop,\n moved,\n lastTarget,\n lastDirection,\n pastFirstInvertThresh = false,\n isCircumstantialInvert = false,\n targetMoveDistance,\n // For positioning ghost absolutely\nghostRelativeParent,\n ghostRelativeParentInitialScroll = [],\n // (left, top)\n_silent = false,\n savedInputChecked = [];\n/** @const */\n\nvar documentExists = typeof document !== 'undefined',\n PositionGhostAbsolutely = IOS,\n CSSFloatProperty = Edge || IE11OrLess ? 'cssFloat' : 'float',\n // This will not pass for IE9, because IE9 DnD only works on anchors\nsupportDraggable = documentExists && !ChromeForAndroid && !IOS && 'draggable' in document.createElement('div'),\n supportCssPointerEvents = function () {\n if (!documentExists) return; // false when <= IE11\n\n if (IE11OrLess) {\n return false;\n }\n\n var el = document.createElement('x');\n el.style.cssText = 'pointer-events:auto';\n return el.style.pointerEvents === 'auto';\n}(),\n _detectDirection = function _detectDirection(el, options) {\n var elCSS = css(el),\n elWidth = parseInt(elCSS.width) - parseInt(elCSS.paddingLeft) - parseInt(elCSS.paddingRight) - parseInt(elCSS.borderLeftWidth) - parseInt(elCSS.borderRightWidth),\n child1 = getChild(el, 0, options),\n child2 = getChild(el, 1, options),\n firstChildCSS = child1 && css(child1),\n secondChildCSS = child2 && css(child2),\n firstChildWidth = firstChildCSS && parseInt(firstChildCSS.marginLeft) + parseInt(firstChildCSS.marginRight) + getRect(child1).width,\n secondChildWidth = secondChildCSS && parseInt(secondChildCSS.marginLeft) + parseInt(secondChildCSS.marginRight) + getRect(child2).width;\n\n if (elCSS.display === 'flex') {\n return elCSS.flexDirection === 'column' || elCSS.flexDirection === 'column-reverse' ? 'vertical' : 'horizontal';\n }\n\n if (elCSS.display === 'grid') {\n return elCSS.gridTemplateColumns.split(' ').length <= 1 ? 'vertical' : 'horizontal';\n }\n\n if (child1 && firstChildCSS[\"float\"] && firstChildCSS[\"float\"] !== 'none') {\n var touchingSideChild2 = firstChildCSS[\"float\"] === 'left' ? 'left' : 'right';\n return child2 && (secondChildCSS.clear === 'both' || secondChildCSS.clear === touchingSideChild2) ? 'vertical' : 'horizontal';\n }\n\n return child1 && (firstChildCSS.display === 'block' || firstChildCSS.display === 'flex' || firstChildCSS.display === 'table' || firstChildCSS.display === 'grid' || firstChildWidth >= elWidth && elCSS[CSSFloatProperty] === 'none' || child2 && elCSS[CSSFloatProperty] === 'none' && firstChildWidth + secondChildWidth > elWidth) ? 'vertical' : 'horizontal';\n},\n _dragElInRowColumn = function _dragElInRowColumn(dragRect, targetRect, vertical) {\n var dragElS1Opp = vertical ? dragRect.left : dragRect.top,\n dragElS2Opp = vertical ? dragRect.right : dragRect.bottom,\n dragElOppLength = vertical ? dragRect.width : dragRect.height,\n targetS1Opp = vertical ? targetRect.left : targetRect.top,\n targetS2Opp = vertical ? targetRect.right : targetRect.bottom,\n targetOppLength = vertical ? targetRect.width : targetRect.height;\n return dragElS1Opp === targetS1Opp || dragElS2Opp === targetS2Opp || dragElS1Opp + dragElOppLength / 2 === targetS1Opp + targetOppLength / 2;\n},\n\n/**\n * Detects first nearest empty sortable to X and Y position using emptyInsertThreshold.\n * @param {Number} x X position\n * @param {Number} y Y position\n * @return {HTMLElement} Element of the first found nearest Sortable\n */\n_detectNearestEmptySortable = function _detectNearestEmptySortable(x, y) {\n var ret;\n sortables.some(function (sortable) {\n if (lastChild(sortable)) return;\n var rect = getRect(sortable),\n threshold = sortable[expando].options.emptyInsertThreshold,\n insideHorizontally = x >= rect.left - threshold && x <= rect.right + threshold,\n insideVertically = y >= rect.top - threshold && y <= rect.bottom + threshold;\n\n if (threshold && insideHorizontally && insideVertically) {\n return ret = sortable;\n }\n });\n return ret;\n},\n _prepareGroup = function _prepareGroup(options) {\n function toFn(value, pull) {\n return function (to, from, dragEl, evt) {\n var sameGroup = to.options.group.name && from.options.group.name && to.options.group.name === from.options.group.name;\n\n if (value == null && (pull || sameGroup)) {\n // Default pull value\n // Default pull and put value if same group\n return true;\n } else if (value == null || value === false) {\n return false;\n } else if (pull && value === 'clone') {\n return value;\n } else if (typeof value === 'function') {\n return toFn(value(to, from, dragEl, evt), pull)(to, from, dragEl, evt);\n } else {\n var otherGroup = (pull ? to : from).options.group.name;\n return value === true || typeof value === 'string' && value === otherGroup || value.join && value.indexOf(otherGroup) > -1;\n }\n };\n }\n\n var group = {};\n var originalGroup = options.group;\n\n if (!originalGroup || _typeof(originalGroup) != 'object') {\n originalGroup = {\n name: originalGroup\n };\n }\n\n group.name = originalGroup.name;\n group.checkPull = toFn(originalGroup.pull, true);\n group.checkPut = toFn(originalGroup.put);\n group.revertClone = originalGroup.revertClone;\n options.group = group;\n},\n _hideGhostForTarget = function _hideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', 'none');\n }\n},\n _unhideGhostForTarget = function _unhideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', '');\n }\n}; // #1184 fix - Prevent click event on fallback if dragged but item not changed position\n\n\nif (documentExists) {\n document.addEventListener('click', function (evt) {\n if (ignoreNextClick) {\n evt.preventDefault();\n evt.stopPropagation && evt.stopPropagation();\n evt.stopImmediatePropagation && evt.stopImmediatePropagation();\n ignoreNextClick = false;\n return false;\n }\n }, true);\n}\n\nvar nearestEmptyInsertDetectEvent = function nearestEmptyInsertDetectEvent(evt) {\n if (dragEl) {\n evt = evt.touches ? evt.touches[0] : evt;\n\n var nearest = _detectNearestEmptySortable(evt.clientX, evt.clientY);\n\n if (nearest) {\n // Create imitation event\n var event = {};\n\n for (var i in evt) {\n if (evt.hasOwnProperty(i)) {\n event[i] = evt[i];\n }\n }\n\n event.target = event.rootEl = nearest;\n event.preventDefault = void 0;\n event.stopPropagation = void 0;\n\n nearest[expando]._onDragOver(event);\n }\n }\n};\n\nvar _checkOutsideTargetEl = function _checkOutsideTargetEl(evt) {\n if (dragEl) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target);\n }\n};\n/**\n * @class Sortable\n * @param {HTMLElement} el\n * @param {Object} [options]\n */\n\n\nfunction Sortable(el, options) {\n if (!(el && el.nodeType && el.nodeType === 1)) {\n throw \"Sortable: `el` must be an HTMLElement, not \".concat({}.toString.call(el));\n }\n\n this.el = el; // root element\n\n this.options = options = _extends({}, options); // Export instance\n\n el[expando] = this;\n var defaults = {\n group: null,\n sort: true,\n disabled: false,\n store: null,\n handle: null,\n draggable: /^[uo]l$/i.test(el.nodeName) ? '>li' : '>*',\n swapThreshold: 1,\n // percentage; 0 <= x <= 1\n invertSwap: false,\n // invert always\n invertedSwapThreshold: null,\n // will be set to same as swapThreshold if default\n removeCloneOnHide: true,\n direction: function direction() {\n return _detectDirection(el, this.options);\n },\n ghostClass: 'sortable-ghost',\n chosenClass: 'sortable-chosen',\n dragClass: 'sortable-drag',\n ignore: 'a, img',\n filter: null,\n preventOnFilter: true,\n animation: 0,\n easing: null,\n setData: function setData(dataTransfer, dragEl) {\n dataTransfer.setData('Text', dragEl.textContent);\n },\n dropBubble: false,\n dragoverBubble: false,\n dataIdAttr: 'data-id',\n delay: 0,\n delayOnTouchOnly: false,\n touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1,\n forceFallback: false,\n fallbackClass: 'sortable-fallback',\n fallbackOnBody: false,\n fallbackTolerance: 0,\n fallbackOffset: {\n x: 0,\n y: 0\n },\n supportPointer: Sortable.supportPointer !== false && 'PointerEvent' in window,\n emptyInsertThreshold: 5\n };\n PluginManager.initializePlugins(this, el, defaults); // Set default options\n\n for (var name in defaults) {\n !(name in options) && (options[name] = defaults[name]);\n }\n\n _prepareGroup(options); // Bind all private methods\n\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n } // Setup drag mode\n\n\n this.nativeDraggable = options.forceFallback ? false : supportDraggable;\n\n if (this.nativeDraggable) {\n // Touch start threshold cannot be greater than the native dragstart threshold\n this.options.touchStartThreshold = 1;\n } // Bind events\n\n\n if (options.supportPointer) {\n on(el, 'pointerdown', this._onTapStart);\n } else {\n on(el, 'mousedown', this._onTapStart);\n on(el, 'touchstart', this._onTapStart);\n }\n\n if (this.nativeDraggable) {\n on(el, 'dragover', this);\n on(el, 'dragenter', this);\n }\n\n sortables.push(this.el); // Restore sorting\n\n options.store && options.store.get && this.sort(options.store.get(this) || []); // Add animation state manager\n\n _extends(this, AnimationStateManager());\n}\n\nSortable.prototype =\n/** @lends Sortable.prototype */\n{\n constructor: Sortable,\n _isOutsideThisEl: function _isOutsideThisEl(target) {\n if (!this.el.contains(target) && target !== this.el) {\n lastTarget = null;\n }\n },\n _getDirection: function _getDirection(evt, target) {\n return typeof this.options.direction === 'function' ? this.options.direction.call(this, evt, target, dragEl) : this.options.direction;\n },\n _onTapStart: function _onTapStart(\n /** Event|TouchEvent */\n evt) {\n if (!evt.cancelable) return;\n\n var _this = this,\n el = this.el,\n options = this.options,\n preventOnFilter = options.preventOnFilter,\n type = evt.type,\n touch = evt.touches && evt.touches[0] || evt.pointerType && evt.pointerType === 'touch' && evt,\n target = (touch || evt).target,\n originalTarget = evt.target.shadowRoot && (evt.path && evt.path[0] || evt.composedPath && evt.composedPath()[0]) || target,\n filter = options.filter;\n\n _saveInputCheckedState(el); // Don't trigger start event when an element is been dragged, otherwise the evt.oldindex always wrong when set option.group.\n\n\n if (dragEl) {\n return;\n }\n\n if (/mousedown|pointerdown/.test(type) && evt.button !== 0 || options.disabled) {\n return; // only left button and enabled\n } // cancel dnd if original target is content editable\n\n\n if (originalTarget.isContentEditable) {\n return;\n }\n\n target = closest(target, options.draggable, el, false);\n\n if (target && target.animated) {\n return;\n }\n\n if (lastDownEl === target) {\n // Ignoring duplicate `down`\n return;\n } // Get the index of the dragged element within its parent\n\n\n oldIndex = index(target);\n oldDraggableIndex = index(target, options.draggable); // Check filter\n\n if (typeof filter === 'function') {\n if (filter.call(this, evt, target, this)) {\n _dispatchEvent({\n sortable: _this,\n rootEl: originalTarget,\n name: 'filter',\n targetEl: target,\n toEl: el,\n fromEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n } else if (filter) {\n filter = filter.split(',').some(function (criteria) {\n criteria = closest(originalTarget, criteria.trim(), el, false);\n\n if (criteria) {\n _dispatchEvent({\n sortable: _this,\n rootEl: criteria,\n name: 'filter',\n targetEl: target,\n fromEl: el,\n toEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n return true;\n }\n });\n\n if (filter) {\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n }\n\n if (options.handle && !closest(originalTarget, options.handle, el, false)) {\n return;\n } // Prepare `dragstart`\n\n\n this._prepareDragStart(evt, touch, target);\n },\n _prepareDragStart: function _prepareDragStart(\n /** Event */\n evt,\n /** Touch */\n touch,\n /** HTMLElement */\n target) {\n var _this = this,\n el = _this.el,\n options = _this.options,\n ownerDocument = el.ownerDocument,\n dragStartFn;\n\n if (target && !dragEl && target.parentNode === el) {\n var dragRect = getRect(target);\n rootEl = el;\n dragEl = target;\n parentEl = dragEl.parentNode;\n nextEl = dragEl.nextSibling;\n lastDownEl = target;\n activeGroup = options.group;\n Sortable.dragged = dragEl;\n tapEvt = {\n target: dragEl,\n clientX: (touch || evt).clientX,\n clientY: (touch || evt).clientY\n };\n tapDistanceLeft = tapEvt.clientX - dragRect.left;\n tapDistanceTop = tapEvt.clientY - dragRect.top;\n this._lastX = (touch || evt).clientX;\n this._lastY = (touch || evt).clientY;\n dragEl.style['will-change'] = 'all';\n\n dragStartFn = function dragStartFn() {\n pluginEvent('delayEnded', _this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n _this._onDrop();\n\n return;\n } // Delayed drag has been triggered\n // we can re-enable the events: touchmove/mousemove\n\n\n _this._disableDelayedDragEvents();\n\n if (!FireFox && _this.nativeDraggable) {\n dragEl.draggable = true;\n } // Bind the events: dragstart/dragend\n\n\n _this._triggerDragStart(evt, touch); // Drag start event\n\n\n _dispatchEvent({\n sortable: _this,\n name: 'choose',\n originalEvent: evt\n }); // Chosen item\n\n\n toggleClass(dragEl, options.chosenClass, true);\n }; // Disable \"draggable\"\n\n\n options.ignore.split(',').forEach(function (criteria) {\n find(dragEl, criteria.trim(), _disableDraggable);\n });\n on(ownerDocument, 'dragover', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mousemove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'touchmove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mouseup', _this._onDrop);\n on(ownerDocument, 'touchend', _this._onDrop);\n on(ownerDocument, 'touchcancel', _this._onDrop); // Make dragEl draggable (must be before delay for FireFox)\n\n if (FireFox && this.nativeDraggable) {\n this.options.touchStartThreshold = 4;\n dragEl.draggable = true;\n }\n\n pluginEvent('delayStart', this, {\n evt: evt\n }); // Delay is impossible for native DnD in Edge or IE\n\n if (options.delay && (!options.delayOnTouchOnly || touch) && (!this.nativeDraggable || !(Edge || IE11OrLess))) {\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n } // If the user moves the pointer or let go the click or touch\n // before the delay has been reached:\n // disable the delayed drag\n\n\n on(ownerDocument, 'mouseup', _this._disableDelayedDrag);\n on(ownerDocument, 'touchend', _this._disableDelayedDrag);\n on(ownerDocument, 'touchcancel', _this._disableDelayedDrag);\n on(ownerDocument, 'mousemove', _this._delayedDragTouchMoveHandler);\n on(ownerDocument, 'touchmove', _this._delayedDragTouchMoveHandler);\n options.supportPointer && on(ownerDocument, 'pointermove', _this._delayedDragTouchMoveHandler);\n _this._dragStartTimer = setTimeout(dragStartFn, options.delay);\n } else {\n dragStartFn();\n }\n }\n },\n _delayedDragTouchMoveHandler: function _delayedDragTouchMoveHandler(\n /** TouchEvent|PointerEvent **/\n e) {\n var touch = e.touches ? e.touches[0] : e;\n\n if (Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1))) {\n this._disableDelayedDrag();\n }\n },\n _disableDelayedDrag: function _disableDelayedDrag() {\n dragEl && _disableDraggable(dragEl);\n clearTimeout(this._dragStartTimer);\n\n this._disableDelayedDragEvents();\n },\n _disableDelayedDragEvents: function _disableDelayedDragEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._disableDelayedDrag);\n off(ownerDocument, 'touchend', this._disableDelayedDrag);\n off(ownerDocument, 'touchcancel', this._disableDelayedDrag);\n off(ownerDocument, 'mousemove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'touchmove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'pointermove', this._delayedDragTouchMoveHandler);\n },\n _triggerDragStart: function _triggerDragStart(\n /** Event */\n evt,\n /** Touch */\n touch) {\n touch = touch || evt.pointerType == 'touch' && evt;\n\n if (!this.nativeDraggable || touch) {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._onTouchMove);\n } else if (touch) {\n on(document, 'touchmove', this._onTouchMove);\n } else {\n on(document, 'mousemove', this._onTouchMove);\n }\n } else {\n on(dragEl, 'dragend', this);\n on(rootEl, 'dragstart', this._onDragStart);\n }\n\n try {\n if (document.selection) {\n // Timeout neccessary for IE9\n _nextTick(function () {\n document.selection.empty();\n });\n } else {\n window.getSelection().removeAllRanges();\n }\n } catch (err) {}\n },\n _dragStarted: function _dragStarted(fallback, evt) {\n\n awaitingDragStarted = false;\n\n if (rootEl && dragEl) {\n pluginEvent('dragStarted', this, {\n evt: evt\n });\n\n if (this.nativeDraggable) {\n on(document, 'dragover', _checkOutsideTargetEl);\n }\n\n var options = this.options; // Apply effect\n\n !fallback && toggleClass(dragEl, options.dragClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n Sortable.active = this;\n fallback && this._appendGhost(); // Drag start event\n\n _dispatchEvent({\n sortable: this,\n name: 'start',\n originalEvent: evt\n });\n } else {\n this._nulling();\n }\n },\n _emulateDragOver: function _emulateDragOver() {\n if (touchEvt) {\n this._lastX = touchEvt.clientX;\n this._lastY = touchEvt.clientY;\n\n _hideGhostForTarget();\n\n var target = document.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n var parent = target;\n\n while (target && target.shadowRoot) {\n target = target.shadowRoot.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n if (target === parent) break;\n parent = target;\n }\n\n dragEl.parentNode[expando]._isOutsideThisEl(target);\n\n if (parent) {\n do {\n if (parent[expando]) {\n var inserted = void 0;\n inserted = parent[expando]._onDragOver({\n clientX: touchEvt.clientX,\n clientY: touchEvt.clientY,\n target: target,\n rootEl: parent\n });\n\n if (inserted && !this.options.dragoverBubble) {\n break;\n }\n }\n\n target = parent; // store last element\n }\n /* jshint boss:true */\n while (parent = parent.parentNode);\n }\n\n _unhideGhostForTarget();\n }\n },\n _onTouchMove: function _onTouchMove(\n /**TouchEvent*/\n evt) {\n if (tapEvt) {\n var options = this.options,\n fallbackTolerance = options.fallbackTolerance,\n fallbackOffset = options.fallbackOffset,\n touch = evt.touches ? evt.touches[0] : evt,\n ghostMatrix = ghostEl && matrix(ghostEl, true),\n scaleX = ghostEl && ghostMatrix && ghostMatrix.a,\n scaleY = ghostEl && ghostMatrix && ghostMatrix.d,\n relativeScrollOffset = PositionGhostAbsolutely && ghostRelativeParent && getRelativeScrollOffset(ghostRelativeParent),\n dx = (touch.clientX - tapEvt.clientX + fallbackOffset.x) / (scaleX || 1) + (relativeScrollOffset ? relativeScrollOffset[0] - ghostRelativeParentInitialScroll[0] : 0) / (scaleX || 1),\n dy = (touch.clientY - tapEvt.clientY + fallbackOffset.y) / (scaleY || 1) + (relativeScrollOffset ? relativeScrollOffset[1] - ghostRelativeParentInitialScroll[1] : 0) / (scaleY || 1); // only set the status to dragging, when we are actually dragging\n\n if (!Sortable.active && !awaitingDragStarted) {\n if (fallbackTolerance && Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) < fallbackTolerance) {\n return;\n }\n\n this._onDragStart(evt, true);\n }\n\n if (ghostEl) {\n if (ghostMatrix) {\n ghostMatrix.e += dx - (lastDx || 0);\n ghostMatrix.f += dy - (lastDy || 0);\n } else {\n ghostMatrix = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: dx,\n f: dy\n };\n }\n\n var cssMatrix = \"matrix(\".concat(ghostMatrix.a, \",\").concat(ghostMatrix.b, \",\").concat(ghostMatrix.c, \",\").concat(ghostMatrix.d, \",\").concat(ghostMatrix.e, \",\").concat(ghostMatrix.f, \")\");\n css(ghostEl, 'webkitTransform', cssMatrix);\n css(ghostEl, 'mozTransform', cssMatrix);\n css(ghostEl, 'msTransform', cssMatrix);\n css(ghostEl, 'transform', cssMatrix);\n lastDx = dx;\n lastDy = dy;\n touchEvt = touch;\n }\n\n evt.cancelable && evt.preventDefault();\n }\n },\n _appendGhost: function _appendGhost() {\n // Bug if using scale(): https://stackoverflow.com/questions/2637058\n // Not being adjusted for\n if (!ghostEl) {\n var container = this.options.fallbackOnBody ? document.body : rootEl,\n rect = getRect(dragEl, true, PositionGhostAbsolutely, true, container),\n options = this.options; // Position absolutely\n\n if (PositionGhostAbsolutely) {\n // Get relatively positioned parent\n ghostRelativeParent = container;\n\n while (css(ghostRelativeParent, 'position') === 'static' && css(ghostRelativeParent, 'transform') === 'none' && ghostRelativeParent !== document) {\n ghostRelativeParent = ghostRelativeParent.parentNode;\n }\n\n if (ghostRelativeParent !== document.body && ghostRelativeParent !== document.documentElement) {\n if (ghostRelativeParent === document) ghostRelativeParent = getWindowScrollingElement();\n rect.top += ghostRelativeParent.scrollTop;\n rect.left += ghostRelativeParent.scrollLeft;\n } else {\n ghostRelativeParent = getWindowScrollingElement();\n }\n\n ghostRelativeParentInitialScroll = getRelativeScrollOffset(ghostRelativeParent);\n }\n\n ghostEl = dragEl.cloneNode(true);\n toggleClass(ghostEl, options.ghostClass, false);\n toggleClass(ghostEl, options.fallbackClass, true);\n toggleClass(ghostEl, options.dragClass, true);\n css(ghostEl, 'transition', '');\n css(ghostEl, 'transform', '');\n css(ghostEl, 'box-sizing', 'border-box');\n css(ghostEl, 'margin', 0);\n css(ghostEl, 'top', rect.top);\n css(ghostEl, 'left', rect.left);\n css(ghostEl, 'width', rect.width);\n css(ghostEl, 'height', rect.height);\n css(ghostEl, 'opacity', '0.8');\n css(ghostEl, 'position', PositionGhostAbsolutely ? 'absolute' : 'fixed');\n css(ghostEl, 'zIndex', '100000');\n css(ghostEl, 'pointerEvents', 'none');\n Sortable.ghost = ghostEl;\n container.appendChild(ghostEl); // Set transform-origin\n\n css(ghostEl, 'transform-origin', tapDistanceLeft / parseInt(ghostEl.style.width) * 100 + '% ' + tapDistanceTop / parseInt(ghostEl.style.height) * 100 + '%');\n }\n },\n _onDragStart: function _onDragStart(\n /**Event*/\n evt,\n /**boolean*/\n fallback) {\n var _this = this;\n\n var dataTransfer = evt.dataTransfer;\n var options = _this.options;\n pluginEvent('dragStart', this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n }\n\n pluginEvent('setupClone', this);\n\n if (!Sortable.eventCanceled) {\n cloneEl = clone(dragEl);\n cloneEl.draggable = false;\n cloneEl.style['will-change'] = '';\n\n this._hideClone();\n\n toggleClass(cloneEl, this.options.chosenClass, false);\n Sortable.clone = cloneEl;\n } // #1143: IFrame support workaround\n\n\n _this.cloneId = _nextTick(function () {\n pluginEvent('clone', _this);\n if (Sortable.eventCanceled) return;\n\n if (!_this.options.removeCloneOnHide) {\n rootEl.insertBefore(cloneEl, dragEl);\n }\n\n _this._hideClone();\n\n _dispatchEvent({\n sortable: _this,\n name: 'clone'\n });\n });\n !fallback && toggleClass(dragEl, options.dragClass, true); // Set proper drop events\n\n if (fallback) {\n ignoreNextClick = true;\n _this._loopId = setInterval(_this._emulateDragOver, 50);\n } else {\n // Undo what was set in _prepareDragStart before drag started\n off(document, 'mouseup', _this._onDrop);\n off(document, 'touchend', _this._onDrop);\n off(document, 'touchcancel', _this._onDrop);\n\n if (dataTransfer) {\n dataTransfer.effectAllowed = 'move';\n options.setData && options.setData.call(_this, dataTransfer, dragEl);\n }\n\n on(document, 'drop', _this); // #1276 fix:\n\n css(dragEl, 'transform', 'translateZ(0)');\n }\n\n awaitingDragStarted = true;\n _this._dragStartId = _nextTick(_this._dragStarted.bind(_this, fallback, evt));\n on(document, 'selectstart', _this);\n moved = true;\n\n if (Safari) {\n css(document.body, 'user-select', 'none');\n }\n },\n // Returns true - if no further action is needed (either inserted or another condition)\n _onDragOver: function _onDragOver(\n /**Event*/\n evt) {\n var el = this.el,\n target = evt.target,\n dragRect,\n targetRect,\n revert,\n options = this.options,\n group = options.group,\n activeSortable = Sortable.active,\n isOwner = activeGroup === group,\n canSort = options.sort,\n fromSortable = putSortable || activeSortable,\n vertical,\n _this = this,\n completedFired = false;\n\n if (_silent) return;\n\n function dragOverEvent(name, extra) {\n pluginEvent(name, _this, _objectSpread({\n evt: evt,\n isOwner: isOwner,\n axis: vertical ? 'vertical' : 'horizontal',\n revert: revert,\n dragRect: dragRect,\n targetRect: targetRect,\n canSort: canSort,\n fromSortable: fromSortable,\n target: target,\n completed: completed,\n onMove: function onMove(target, after) {\n return _onMove(rootEl, el, dragEl, dragRect, target, getRect(target), evt, after);\n },\n changed: changed\n }, extra));\n } // Capture animation state\n\n\n function capture() {\n dragOverEvent('dragOverAnimationCapture');\n\n _this.captureAnimationState();\n\n if (_this !== fromSortable) {\n fromSortable.captureAnimationState();\n }\n } // Return invocation when dragEl is inserted (or completed)\n\n\n function completed(insertion) {\n dragOverEvent('dragOverCompleted', {\n insertion: insertion\n });\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n } else {\n activeSortable._showClone(_this);\n }\n\n if (_this !== fromSortable) {\n // Set ghost class to new sortable's ghost class\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : activeSortable.options.ghostClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n }\n\n if (putSortable !== _this && _this !== Sortable.active) {\n putSortable = _this;\n } else if (_this === Sortable.active && putSortable) {\n putSortable = null;\n } // Animation\n\n\n if (fromSortable === _this) {\n _this._ignoreWhileAnimating = target;\n }\n\n _this.animateAll(function () {\n dragOverEvent('dragOverAnimationComplete');\n _this._ignoreWhileAnimating = null;\n });\n\n if (_this !== fromSortable) {\n fromSortable.animateAll();\n fromSortable._ignoreWhileAnimating = null;\n }\n } // Null lastTarget if it is not inside a previously swapped element\n\n\n if (target === dragEl && !dragEl.animated || target === el && !target.animated) {\n lastTarget = null;\n } // no bubbling and not fallback\n\n\n if (!options.dragoverBubble && !evt.rootEl && target !== document) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target); // Do not detect for empty insert if already inserted\n\n\n !insertion && nearestEmptyInsertDetectEvent(evt);\n }\n\n !options.dragoverBubble && evt.stopPropagation && evt.stopPropagation();\n return completedFired = true;\n } // Call when dragEl has been inserted\n\n\n function changed() {\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n _dispatchEvent({\n sortable: _this,\n name: 'change',\n toEl: el,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n originalEvent: evt\n });\n }\n\n if (evt.preventDefault !== void 0) {\n evt.cancelable && evt.preventDefault();\n }\n\n target = closest(target, options.draggable, el, true);\n dragOverEvent('dragOver');\n if (Sortable.eventCanceled) return completedFired;\n\n if (dragEl.contains(evt.target) || target.animated && target.animatingX && target.animatingY || _this._ignoreWhileAnimating === target) {\n return completed(false);\n }\n\n ignoreNextClick = false;\n\n if (activeSortable && !options.disabled && (isOwner ? canSort || (revert = !rootEl.contains(dragEl)) // Reverting item into the original list\n : putSortable === this || (this.lastPutMode = activeGroup.checkPull(this, activeSortable, dragEl, evt)) && group.checkPut(this, activeSortable, dragEl, evt))) {\n vertical = this._getDirection(evt, target) === 'vertical';\n dragRect = getRect(dragEl);\n dragOverEvent('dragOverValid');\n if (Sortable.eventCanceled) return completedFired;\n\n if (revert) {\n parentEl = rootEl; // actualization\n\n capture();\n\n this._hideClone();\n\n dragOverEvent('revert');\n\n if (!Sortable.eventCanceled) {\n if (nextEl) {\n rootEl.insertBefore(dragEl, nextEl);\n } else {\n rootEl.appendChild(dragEl);\n }\n }\n\n return completed(true);\n }\n\n var elLastChild = lastChild(el, options.draggable);\n\n if (!elLastChild || _ghostIsLast(evt, vertical, this) && !elLastChild.animated) {\n // If already at end of list: Do not insert\n if (elLastChild === dragEl) {\n return completed(false);\n } // assign target only if condition is true\n\n\n if (elLastChild && el === evt.target) {\n target = elLastChild;\n }\n\n if (target) {\n targetRect = getRect(target);\n }\n\n if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, !!target) !== false) {\n capture();\n el.appendChild(dragEl);\n parentEl = el; // actualization\n\n changed();\n return completed(true);\n }\n } else if (target.parentNode === el) {\n targetRect = getRect(target);\n var direction = 0,\n targetBeforeFirstSwap,\n differentLevel = dragEl.parentNode !== el,\n differentRowCol = !_dragElInRowColumn(dragEl.animated && dragEl.toRect || dragRect, target.animated && target.toRect || targetRect, vertical),\n side1 = vertical ? 'top' : 'left',\n scrolledPastTop = isScrolledPast(target, 'top', 'top') || isScrolledPast(dragEl, 'top', 'top'),\n scrollBefore = scrolledPastTop ? scrolledPastTop.scrollTop : void 0;\n\n if (lastTarget !== target) {\n targetBeforeFirstSwap = targetRect[side1];\n pastFirstInvertThresh = false;\n isCircumstantialInvert = !differentRowCol && options.invertSwap || differentLevel;\n }\n\n direction = _getSwapDirection(evt, target, targetRect, vertical, differentRowCol ? 1 : options.swapThreshold, options.invertedSwapThreshold == null ? options.swapThreshold : options.invertedSwapThreshold, isCircumstantialInvert, lastTarget === target);\n var sibling;\n\n if (direction !== 0) {\n // Check if target is beside dragEl in respective direction (ignoring hidden elements)\n var dragIndex = index(dragEl);\n\n do {\n dragIndex -= direction;\n sibling = parentEl.children[dragIndex];\n } while (sibling && (css(sibling, 'display') === 'none' || sibling === ghostEl));\n } // If dragEl is already beside target: Do not insert\n\n\n if (direction === 0 || sibling === target) {\n return completed(false);\n }\n\n lastTarget = target;\n lastDirection = direction;\n var nextSibling = target.nextElementSibling,\n after = false;\n after = direction === 1;\n\n var moveVector = _onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, after);\n\n if (moveVector !== false) {\n if (moveVector === 1 || moveVector === -1) {\n after = moveVector === 1;\n }\n\n _silent = true;\n setTimeout(_unsilent, 30);\n capture();\n\n if (after && !nextSibling) {\n el.appendChild(dragEl);\n } else {\n target.parentNode.insertBefore(dragEl, after ? nextSibling : target);\n } // Undo chrome's scroll adjustment (has no effect on other browsers)\n\n\n if (scrolledPastTop) {\n scrollBy(scrolledPastTop, 0, scrollBefore - scrolledPastTop.scrollTop);\n }\n\n parentEl = dragEl.parentNode; // actualization\n // must be done before animation\n\n if (targetBeforeFirstSwap !== undefined && !isCircumstantialInvert) {\n targetMoveDistance = Math.abs(targetBeforeFirstSwap - getRect(target)[side1]);\n }\n\n changed();\n return completed(true);\n }\n }\n\n if (el.contains(dragEl)) {\n return completed(false);\n }\n }\n\n return false;\n },\n _ignoreWhileAnimating: null,\n _offMoveEvents: function _offMoveEvents() {\n off(document, 'mousemove', this._onTouchMove);\n off(document, 'touchmove', this._onTouchMove);\n off(document, 'pointermove', this._onTouchMove);\n off(document, 'dragover', nearestEmptyInsertDetectEvent);\n off(document, 'mousemove', nearestEmptyInsertDetectEvent);\n off(document, 'touchmove', nearestEmptyInsertDetectEvent);\n },\n _offUpEvents: function _offUpEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._onDrop);\n off(ownerDocument, 'touchend', this._onDrop);\n off(ownerDocument, 'pointerup', this._onDrop);\n off(ownerDocument, 'touchcancel', this._onDrop);\n off(document, 'selectstart', this);\n },\n _onDrop: function _onDrop(\n /**Event*/\n evt) {\n var el = this.el,\n options = this.options; // Get the index of the dragged element within its parent\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n pluginEvent('drop', this, {\n evt: evt\n });\n parentEl = dragEl && dragEl.parentNode; // Get again after plugin event\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n if (Sortable.eventCanceled) {\n this._nulling();\n\n return;\n }\n\n awaitingDragStarted = false;\n isCircumstantialInvert = false;\n pastFirstInvertThresh = false;\n clearInterval(this._loopId);\n clearTimeout(this._dragStartTimer);\n\n _cancelNextTick(this.cloneId);\n\n _cancelNextTick(this._dragStartId); // Unbind events\n\n\n if (this.nativeDraggable) {\n off(document, 'drop', this);\n off(el, 'dragstart', this._onDragStart);\n }\n\n this._offMoveEvents();\n\n this._offUpEvents();\n\n if (Safari) {\n css(document.body, 'user-select', '');\n }\n\n css(dragEl, 'transform', '');\n\n if (evt) {\n if (moved) {\n evt.cancelable && evt.preventDefault();\n !options.dropBubble && evt.stopPropagation();\n }\n\n ghostEl && ghostEl.parentNode && ghostEl.parentNode.removeChild(ghostEl);\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n // Remove clone(s)\n cloneEl && cloneEl.parentNode && cloneEl.parentNode.removeChild(cloneEl);\n }\n\n if (dragEl) {\n if (this.nativeDraggable) {\n off(dragEl, 'dragend', this);\n }\n\n _disableDraggable(dragEl);\n\n dragEl.style['will-change'] = ''; // Remove classes\n // ghostClass is added in dragStarted\n\n if (moved && !awaitingDragStarted) {\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : this.options.ghostClass, false);\n }\n\n toggleClass(dragEl, this.options.chosenClass, false); // Drag stop event\n\n _dispatchEvent({\n sortable: this,\n name: 'unchoose',\n toEl: parentEl,\n newIndex: null,\n newDraggableIndex: null,\n originalEvent: evt\n });\n\n if (rootEl !== parentEl) {\n if (newIndex >= 0) {\n // Add event\n _dispatchEvent({\n rootEl: parentEl,\n name: 'add',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n }); // Remove event\n\n\n _dispatchEvent({\n sortable: this,\n name: 'remove',\n toEl: parentEl,\n originalEvent: evt\n }); // drag from one list and drop into another\n\n\n _dispatchEvent({\n rootEl: parentEl,\n name: 'sort',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n\n putSortable && putSortable.save();\n } else {\n if (newIndex !== oldIndex) {\n if (newIndex >= 0) {\n // drag & drop within the same list\n _dispatchEvent({\n sortable: this,\n name: 'update',\n toEl: parentEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n }\n }\n\n if (Sortable.active) {\n /* jshint eqnull:true */\n if (newIndex == null || newIndex === -1) {\n newIndex = oldIndex;\n newDraggableIndex = oldDraggableIndex;\n }\n\n _dispatchEvent({\n sortable: this,\n name: 'end',\n toEl: parentEl,\n originalEvent: evt\n }); // Save sorting\n\n\n this.save();\n }\n }\n }\n\n this._nulling();\n },\n _nulling: function _nulling() {\n pluginEvent('nulling', this);\n rootEl = dragEl = parentEl = ghostEl = nextEl = cloneEl = lastDownEl = cloneHidden = tapEvt = touchEvt = moved = newIndex = newDraggableIndex = oldIndex = oldDraggableIndex = lastTarget = lastDirection = putSortable = activeGroup = Sortable.dragged = Sortable.ghost = Sortable.clone = Sortable.active = null;\n savedInputChecked.forEach(function (el) {\n el.checked = true;\n });\n savedInputChecked.length = lastDx = lastDy = 0;\n },\n handleEvent: function handleEvent(\n /**Event*/\n evt) {\n switch (evt.type) {\n case 'drop':\n case 'dragend':\n this._onDrop(evt);\n\n break;\n\n case 'dragenter':\n case 'dragover':\n if (dragEl) {\n this._onDragOver(evt);\n\n _globalDragOver(evt);\n }\n\n break;\n\n case 'selectstart':\n evt.preventDefault();\n break;\n }\n },\n\n /**\n * Serializes the item into an array of string.\n * @returns {String[]}\n */\n toArray: function toArray() {\n var order = [],\n el,\n children = this.el.children,\n i = 0,\n n = children.length,\n options = this.options;\n\n for (; i < n; i++) {\n el = children[i];\n\n if (closest(el, options.draggable, this.el, false)) {\n order.push(el.getAttribute(options.dataIdAttr) || _generateId(el));\n }\n }\n\n return order;\n },\n\n /**\n * Sorts the elements according to the array.\n * @param {String[]} order order of the items\n */\n sort: function sort(order) {\n var items = {},\n rootEl = this.el;\n this.toArray().forEach(function (id, i) {\n var el = rootEl.children[i];\n\n if (closest(el, this.options.draggable, rootEl, false)) {\n items[id] = el;\n }\n }, this);\n order.forEach(function (id) {\n if (items[id]) {\n rootEl.removeChild(items[id]);\n rootEl.appendChild(items[id]);\n }\n });\n },\n\n /**\n * Save the current sorting\n */\n save: function save() {\n var store = this.options.store;\n store && store.set && store.set(this);\n },\n\n /**\n * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.\n * @param {HTMLElement} el\n * @param {String} [selector] default: `options.draggable`\n * @returns {HTMLElement|null}\n */\n closest: function closest$1(el, selector) {\n return closest(el, selector || this.options.draggable, this.el, false);\n },\n\n /**\n * Set/get option\n * @param {string} name\n * @param {*} [value]\n * @returns {*}\n */\n option: function option(name, value) {\n var options = this.options;\n\n if (value === void 0) {\n return options[name];\n } else {\n var modifiedValue = PluginManager.modifyOption(this, name, value);\n\n if (typeof modifiedValue !== 'undefined') {\n options[name] = modifiedValue;\n } else {\n options[name] = value;\n }\n\n if (name === 'group') {\n _prepareGroup(options);\n }\n }\n },\n\n /**\n * Destroy\n */\n destroy: function destroy() {\n pluginEvent('destroy', this);\n var el = this.el;\n el[expando] = null;\n off(el, 'mousedown', this._onTapStart);\n off(el, 'touchstart', this._onTapStart);\n off(el, 'pointerdown', this._onTapStart);\n\n if (this.nativeDraggable) {\n off(el, 'dragover', this);\n off(el, 'dragenter', this);\n } // Remove draggable attributes\n\n\n Array.prototype.forEach.call(el.querySelectorAll('[draggable]'), function (el) {\n el.removeAttribute('draggable');\n });\n\n this._onDrop();\n\n this._disableDelayedDragEvents();\n\n sortables.splice(sortables.indexOf(this.el), 1);\n this.el = el = null;\n },\n _hideClone: function _hideClone() {\n if (!cloneHidden) {\n pluginEvent('hideClone', this);\n if (Sortable.eventCanceled) return;\n css(cloneEl, 'display', 'none');\n\n if (this.options.removeCloneOnHide && cloneEl.parentNode) {\n cloneEl.parentNode.removeChild(cloneEl);\n }\n\n cloneHidden = true;\n }\n },\n _showClone: function _showClone(putSortable) {\n if (putSortable.lastPutMode !== 'clone') {\n this._hideClone();\n\n return;\n }\n\n if (cloneHidden) {\n pluginEvent('showClone', this);\n if (Sortable.eventCanceled) return; // show clone at dragEl or original position\n\n if (rootEl.contains(dragEl) && !this.options.group.revertClone) {\n rootEl.insertBefore(cloneEl, dragEl);\n } else if (nextEl) {\n rootEl.insertBefore(cloneEl, nextEl);\n } else {\n rootEl.appendChild(cloneEl);\n }\n\n if (this.options.group.revertClone) {\n this.animate(dragEl, cloneEl);\n }\n\n css(cloneEl, 'display', '');\n cloneHidden = false;\n }\n }\n};\n\nfunction _globalDragOver(\n/**Event*/\nevt) {\n if (evt.dataTransfer) {\n evt.dataTransfer.dropEffect = 'move';\n }\n\n evt.cancelable && evt.preventDefault();\n}\n\nfunction _onMove(fromEl, toEl, dragEl, dragRect, targetEl, targetRect, originalEvent, willInsertAfter) {\n var evt,\n sortable = fromEl[expando],\n onMoveFn = sortable.options.onMove,\n retVal; // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent('move', {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent('move', true, true);\n }\n\n evt.to = toEl;\n evt.from = fromEl;\n evt.dragged = dragEl;\n evt.draggedRect = dragRect;\n evt.related = targetEl || toEl;\n evt.relatedRect = targetRect || getRect(toEl);\n evt.willInsertAfter = willInsertAfter;\n evt.originalEvent = originalEvent;\n fromEl.dispatchEvent(evt);\n\n if (onMoveFn) {\n retVal = onMoveFn.call(sortable, evt, originalEvent);\n }\n\n return retVal;\n}\n\nfunction _disableDraggable(el) {\n el.draggable = false;\n}\n\nfunction _unsilent() {\n _silent = false;\n}\n\nfunction _ghostIsLast(evt, vertical, sortable) {\n var rect = getRect(lastChild(sortable.el, sortable.options.draggable));\n var spacer = 10;\n return vertical ? evt.clientX > rect.right + spacer || evt.clientX <= rect.right && evt.clientY > rect.bottom && evt.clientX >= rect.left : evt.clientX > rect.right && evt.clientY > rect.top || evt.clientX <= rect.right && evt.clientY > rect.bottom + spacer;\n}\n\nfunction _getSwapDirection(evt, target, targetRect, vertical, swapThreshold, invertedSwapThreshold, invertSwap, isLastTarget) {\n var mouseOnAxis = vertical ? evt.clientY : evt.clientX,\n targetLength = vertical ? targetRect.height : targetRect.width,\n targetS1 = vertical ? targetRect.top : targetRect.left,\n targetS2 = vertical ? targetRect.bottom : targetRect.right,\n invert = false;\n\n if (!invertSwap) {\n // Never invert or create dragEl shadow when target movemenet causes mouse to move past the end of regular swapThreshold\n if (isLastTarget && targetMoveDistance < targetLength * swapThreshold) {\n // multiplied only by swapThreshold because mouse will already be inside target by (1 - threshold) * targetLength / 2\n // check if past first invert threshold on side opposite of lastDirection\n if (!pastFirstInvertThresh && (lastDirection === 1 ? mouseOnAxis > targetS1 + targetLength * invertedSwapThreshold / 2 : mouseOnAxis < targetS2 - targetLength * invertedSwapThreshold / 2)) {\n // past first invert threshold, do not restrict inverted threshold to dragEl shadow\n pastFirstInvertThresh = true;\n }\n\n if (!pastFirstInvertThresh) {\n // dragEl shadow (target move distance shadow)\n if (lastDirection === 1 ? mouseOnAxis < targetS1 + targetMoveDistance // over dragEl shadow\n : mouseOnAxis > targetS2 - targetMoveDistance) {\n return -lastDirection;\n }\n } else {\n invert = true;\n }\n } else {\n // Regular\n if (mouseOnAxis > targetS1 + targetLength * (1 - swapThreshold) / 2 && mouseOnAxis < targetS2 - targetLength * (1 - swapThreshold) / 2) {\n return _getInsertDirection(target);\n }\n }\n }\n\n invert = invert || invertSwap;\n\n if (invert) {\n // Invert of regular\n if (mouseOnAxis < targetS1 + targetLength * invertedSwapThreshold / 2 || mouseOnAxis > targetS2 - targetLength * invertedSwapThreshold / 2) {\n return mouseOnAxis > targetS1 + targetLength / 2 ? 1 : -1;\n }\n }\n\n return 0;\n}\n/**\n * Gets the direction dragEl must be swapped relative to target in order to make it\n * seem that dragEl has been \"inserted\" into that element's position\n * @param {HTMLElement} target The target whose position dragEl is being inserted at\n * @return {Number} Direction dragEl must be swapped\n */\n\n\nfunction _getInsertDirection(target) {\n if (index(dragEl) < index(target)) {\n return 1;\n } else {\n return -1;\n }\n}\n/**\n * Generate id\n * @param {HTMLElement} el\n * @returns {String}\n * @private\n */\n\n\nfunction _generateId(el) {\n var str = el.tagName + el.className + el.src + el.href + el.textContent,\n i = str.length,\n sum = 0;\n\n while (i--) {\n sum += str.charCodeAt(i);\n }\n\n return sum.toString(36);\n}\n\nfunction _saveInputCheckedState(root) {\n savedInputChecked.length = 0;\n var inputs = root.getElementsByTagName('input');\n var idx = inputs.length;\n\n while (idx--) {\n var el = inputs[idx];\n el.checked && savedInputChecked.push(el);\n }\n}\n\nfunction _nextTick(fn) {\n return setTimeout(fn, 0);\n}\n\nfunction _cancelNextTick(id) {\n return clearTimeout(id);\n} // Fixed #973:\n\n\nif (documentExists) {\n on(document, 'touchmove', function (evt) {\n if ((Sortable.active || awaitingDragStarted) && evt.cancelable) {\n evt.preventDefault();\n }\n });\n} // Export utils\n\n\nSortable.utils = {\n on: on,\n off: off,\n css: css,\n find: find,\n is: function is(el, selector) {\n return !!closest(el, selector, el, false);\n },\n extend: extend,\n throttle: throttle,\n closest: closest,\n toggleClass: toggleClass,\n clone: clone,\n index: index,\n nextTick: _nextTick,\n cancelNextTick: _cancelNextTick,\n detectDirection: _detectDirection,\n getChild: getChild\n};\n/**\n * Get the Sortable instance of an element\n * @param {HTMLElement} element The element\n * @return {Sortable|undefined} The instance of Sortable\n */\n\nSortable.get = function (element) {\n return element[expando];\n};\n/**\n * Mount a plugin to Sortable\n * @param {...SortablePlugin|SortablePlugin[]} plugins Plugins being mounted\n */\n\n\nSortable.mount = function () {\n for (var _len = arguments.length, plugins = new Array(_len), _key = 0; _key < _len; _key++) {\n plugins[_key] = arguments[_key];\n }\n\n if (plugins[0].constructor === Array) plugins = plugins[0];\n plugins.forEach(function (plugin) {\n if (!plugin.prototype || !plugin.prototype.constructor) {\n throw \"Sortable: Mounted plugin must be a constructor function, not \".concat({}.toString.call(plugin));\n }\n\n if (plugin.utils) Sortable.utils = _objectSpread({}, Sortable.utils, plugin.utils);\n PluginManager.mount(plugin);\n });\n};\n/**\n * Create sortable instance\n * @param {HTMLElement} el\n * @param {Object} [options]\n */\n\n\nSortable.create = function (el, options) {\n return new Sortable(el, options);\n}; // Export\n\n\nSortable.version = version;\n\nvar autoScrolls = [],\n scrollEl,\n scrollRootEl,\n scrolling = false,\n lastAutoScrollX,\n lastAutoScrollY,\n touchEvt$1,\n pointerElemChangedInterval;\n\nfunction AutoScrollPlugin() {\n function AutoScroll() {\n this.defaults = {\n scroll: true,\n scrollSensitivity: 30,\n scrollSpeed: 10,\n bubbleScroll: true\n }; // Bind all private methods\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n }\n\n AutoScroll.prototype = {\n dragStarted: function dragStarted(_ref) {\n var originalEvent = _ref.originalEvent;\n\n if (this.sortable.nativeDraggable) {\n on(document, 'dragover', this._handleAutoScroll);\n } else {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._handleFallbackAutoScroll);\n } else if (originalEvent.touches) {\n on(document, 'touchmove', this._handleFallbackAutoScroll);\n } else {\n on(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref2) {\n var originalEvent = _ref2.originalEvent;\n\n // For when bubbling is canceled and using fallback (fallback 'touchmove' always reached)\n if (!this.options.dragOverBubble && !originalEvent.rootEl) {\n this._handleAutoScroll(originalEvent);\n }\n },\n drop: function drop() {\n if (this.sortable.nativeDraggable) {\n off(document, 'dragover', this._handleAutoScroll);\n } else {\n off(document, 'pointermove', this._handleFallbackAutoScroll);\n off(document, 'touchmove', this._handleFallbackAutoScroll);\n off(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n\n clearPointerElemChangedInterval();\n clearAutoScrolls();\n cancelThrottle();\n },\n nulling: function nulling() {\n touchEvt$1 = scrollRootEl = scrollEl = scrolling = pointerElemChangedInterval = lastAutoScrollX = lastAutoScrollY = null;\n autoScrolls.length = 0;\n },\n _handleFallbackAutoScroll: function _handleFallbackAutoScroll(evt) {\n this._handleAutoScroll(evt, true);\n },\n _handleAutoScroll: function _handleAutoScroll(evt, fallback) {\n var _this = this;\n\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n elem = document.elementFromPoint(x, y);\n touchEvt$1 = evt; // IE does not seem to have native autoscroll,\n // Edge's autoscroll seems too conditional,\n // MACOS Safari does not have autoscroll,\n // Firefox and Chrome are good\n\n if (fallback || Edge || IE11OrLess || Safari) {\n autoScroll(evt, this.options, elem, fallback); // Listener for pointer element change\n\n var ogElemScroller = getParentAutoScrollElement(elem, true);\n\n if (scrolling && (!pointerElemChangedInterval || x !== lastAutoScrollX || y !== lastAutoScrollY)) {\n pointerElemChangedInterval && clearPointerElemChangedInterval(); // Detect for pointer elem change, emulating native DnD behaviour\n\n pointerElemChangedInterval = setInterval(function () {\n var newElem = getParentAutoScrollElement(document.elementFromPoint(x, y), true);\n\n if (newElem !== ogElemScroller) {\n ogElemScroller = newElem;\n clearAutoScrolls();\n }\n\n autoScroll(evt, _this.options, newElem, fallback);\n }, 10);\n lastAutoScrollX = x;\n lastAutoScrollY = y;\n }\n } else {\n // if DnD is enabled (and browser has good autoscrolling), first autoscroll will already scroll, so get parent autoscroll of first autoscroll\n if (!this.options.bubbleScroll || getParentAutoScrollElement(elem, true) === getWindowScrollingElement()) {\n clearAutoScrolls();\n return;\n }\n\n autoScroll(evt, this.options, getParentAutoScrollElement(elem, false), false);\n }\n }\n };\n return _extends(AutoScroll, {\n pluginName: 'scroll',\n initializeByDefault: true\n });\n}\n\nfunction clearAutoScrolls() {\n autoScrolls.forEach(function (autoScroll) {\n clearInterval(autoScroll.pid);\n });\n autoScrolls = [];\n}\n\nfunction clearPointerElemChangedInterval() {\n clearInterval(pointerElemChangedInterval);\n}\n\nvar autoScroll = throttle(function (evt, options, rootEl, isFallback) {\n // Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n if (!options.scroll) return;\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n sens = options.scrollSensitivity,\n speed = options.scrollSpeed,\n winScroller = getWindowScrollingElement();\n var scrollThisInstance = false,\n scrollCustomFn; // New scroll root, set scrollEl\n\n if (scrollRootEl !== rootEl) {\n scrollRootEl = rootEl;\n clearAutoScrolls();\n scrollEl = options.scroll;\n scrollCustomFn = options.scrollFn;\n\n if (scrollEl === true) {\n scrollEl = getParentAutoScrollElement(rootEl, true);\n }\n }\n\n var layersOut = 0;\n var currentParent = scrollEl;\n\n do {\n var el = currentParent,\n rect = getRect(el),\n top = rect.top,\n bottom = rect.bottom,\n left = rect.left,\n right = rect.right,\n width = rect.width,\n height = rect.height,\n canScrollX = void 0,\n canScrollY = void 0,\n scrollWidth = el.scrollWidth,\n scrollHeight = el.scrollHeight,\n elCSS = css(el),\n scrollPosX = el.scrollLeft,\n scrollPosY = el.scrollTop;\n\n if (el === winScroller) {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll' || elCSS.overflowX === 'visible');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll' || elCSS.overflowY === 'visible');\n } else {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll');\n }\n\n var vx = canScrollX && (Math.abs(right - x) <= sens && scrollPosX + width < scrollWidth) - (Math.abs(left - x) <= sens && !!scrollPosX);\n var vy = canScrollY && (Math.abs(bottom - y) <= sens && scrollPosY + height < scrollHeight) - (Math.abs(top - y) <= sens && !!scrollPosY);\n\n if (!autoScrolls[layersOut]) {\n for (var i = 0; i <= layersOut; i++) {\n if (!autoScrolls[i]) {\n autoScrolls[i] = {};\n }\n }\n }\n\n if (autoScrolls[layersOut].vx != vx || autoScrolls[layersOut].vy != vy || autoScrolls[layersOut].el !== el) {\n autoScrolls[layersOut].el = el;\n autoScrolls[layersOut].vx = vx;\n autoScrolls[layersOut].vy = vy;\n clearInterval(autoScrolls[layersOut].pid);\n\n if (vx != 0 || vy != 0) {\n scrollThisInstance = true;\n /* jshint loopfunc:true */\n\n autoScrolls[layersOut].pid = setInterval(function () {\n // emulate drag over during autoscroll (fallback), emulating native DnD behaviour\n if (isFallback && this.layer === 0) {\n Sortable.active._onTouchMove(touchEvt$1); // To move ghost if it is positioned absolutely\n\n }\n\n var scrollOffsetY = autoScrolls[this.layer].vy ? autoScrolls[this.layer].vy * speed : 0;\n var scrollOffsetX = autoScrolls[this.layer].vx ? autoScrolls[this.layer].vx * speed : 0;\n\n if (typeof scrollCustomFn === 'function') {\n if (scrollCustomFn.call(Sortable.dragged.parentNode[expando], scrollOffsetX, scrollOffsetY, evt, touchEvt$1, autoScrolls[this.layer].el) !== 'continue') {\n return;\n }\n }\n\n scrollBy(autoScrolls[this.layer].el, scrollOffsetX, scrollOffsetY);\n }.bind({\n layer: layersOut\n }), 24);\n }\n }\n\n layersOut++;\n } while (options.bubbleScroll && currentParent !== winScroller && (currentParent = getParentAutoScrollElement(currentParent, false)));\n\n scrolling = scrollThisInstance; // in case another function catches scrolling as false in between when it is not\n}, 30);\n\nvar drop = function drop(_ref) {\n var originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n dragEl = _ref.dragEl,\n activeSortable = _ref.activeSortable,\n dispatchSortableEvent = _ref.dispatchSortableEvent,\n hideGhostForTarget = _ref.hideGhostForTarget,\n unhideGhostForTarget = _ref.unhideGhostForTarget;\n if (!originalEvent) return;\n var toSortable = putSortable || activeSortable;\n hideGhostForTarget();\n var touch = originalEvent.changedTouches && originalEvent.changedTouches.length ? originalEvent.changedTouches[0] : originalEvent;\n var target = document.elementFromPoint(touch.clientX, touch.clientY);\n unhideGhostForTarget();\n\n if (toSortable && !toSortable.el.contains(target)) {\n dispatchSortableEvent('spill');\n this.onSpill({\n dragEl: dragEl,\n putSortable: putSortable\n });\n }\n};\n\nfunction Revert() {}\n\nRevert.prototype = {\n startIndex: null,\n dragStart: function dragStart(_ref2) {\n var oldDraggableIndex = _ref2.oldDraggableIndex;\n this.startIndex = oldDraggableIndex;\n },\n onSpill: function onSpill(_ref3) {\n var dragEl = _ref3.dragEl,\n putSortable = _ref3.putSortable;\n this.sortable.captureAnimationState();\n\n if (putSortable) {\n putSortable.captureAnimationState();\n }\n\n var nextSibling = getChild(this.sortable.el, this.startIndex, this.options);\n\n if (nextSibling) {\n this.sortable.el.insertBefore(dragEl, nextSibling);\n } else {\n this.sortable.el.appendChild(dragEl);\n }\n\n this.sortable.animateAll();\n\n if (putSortable) {\n putSortable.animateAll();\n }\n },\n drop: drop\n};\n\n_extends(Revert, {\n pluginName: 'revertOnSpill'\n});\n\nfunction Remove() {}\n\nRemove.prototype = {\n onSpill: function onSpill(_ref4) {\n var dragEl = _ref4.dragEl,\n putSortable = _ref4.putSortable;\n var parentSortable = putSortable || this.sortable;\n parentSortable.captureAnimationState();\n dragEl.parentNode && dragEl.parentNode.removeChild(dragEl);\n parentSortable.animateAll();\n },\n drop: drop\n};\n\n_extends(Remove, {\n pluginName: 'removeOnSpill'\n});\n\nvar lastSwapEl;\n\nfunction SwapPlugin() {\n function Swap() {\n this.defaults = {\n swapClass: 'sortable-swap-highlight'\n };\n }\n\n Swap.prototype = {\n dragStart: function dragStart(_ref) {\n var dragEl = _ref.dragEl;\n lastSwapEl = dragEl;\n },\n dragOverValid: function dragOverValid(_ref2) {\n var completed = _ref2.completed,\n target = _ref2.target,\n onMove = _ref2.onMove,\n activeSortable = _ref2.activeSortable,\n changed = _ref2.changed,\n cancel = _ref2.cancel;\n if (!activeSortable.options.swap) return;\n var el = this.sortable.el,\n options = this.options;\n\n if (target && target !== el) {\n var prevSwapEl = lastSwapEl;\n\n if (onMove(target) !== false) {\n toggleClass(target, options.swapClass, true);\n lastSwapEl = target;\n } else {\n lastSwapEl = null;\n }\n\n if (prevSwapEl && prevSwapEl !== lastSwapEl) {\n toggleClass(prevSwapEl, options.swapClass, false);\n }\n }\n\n changed();\n completed(true);\n cancel();\n },\n drop: function drop(_ref3) {\n var activeSortable = _ref3.activeSortable,\n putSortable = _ref3.putSortable,\n dragEl = _ref3.dragEl;\n var toSortable = putSortable || this.sortable;\n var options = this.options;\n lastSwapEl && toggleClass(lastSwapEl, options.swapClass, false);\n\n if (lastSwapEl && (options.swap || putSortable && putSortable.options.swap)) {\n if (dragEl !== lastSwapEl) {\n toSortable.captureAnimationState();\n if (toSortable !== activeSortable) activeSortable.captureAnimationState();\n swapNodes(dragEl, lastSwapEl);\n toSortable.animateAll();\n if (toSortable !== activeSortable) activeSortable.animateAll();\n }\n }\n },\n nulling: function nulling() {\n lastSwapEl = null;\n }\n };\n return _extends(Swap, {\n pluginName: 'swap',\n eventProperties: function eventProperties() {\n return {\n swapItem: lastSwapEl\n };\n }\n });\n}\n\nfunction swapNodes(n1, n2) {\n var p1 = n1.parentNode,\n p2 = n2.parentNode,\n i1,\n i2;\n if (!p1 || !p2 || p1.isEqualNode(n2) || p2.isEqualNode(n1)) return;\n i1 = index(n1);\n i2 = index(n2);\n\n if (p1.isEqualNode(p2) && i1 < i2) {\n i2++;\n }\n\n p1.insertBefore(n2, p1.children[i1]);\n p2.insertBefore(n1, p2.children[i2]);\n}\n\nvar multiDragElements = [],\n multiDragClones = [],\n lastMultiDragSelect,\n // for selection with modifier key down (SHIFT)\nmultiDragSortable,\n initialFolding = false,\n // Initial multi-drag fold when drag started\nfolding = false,\n // Folding any other time\ndragStarted = false,\n dragEl$1,\n clonesFromRect,\n clonesHidden;\n\nfunction MultiDragPlugin() {\n function MultiDrag(sortable) {\n // Bind all private methods\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n\n if (sortable.options.supportPointer) {\n on(document, 'pointerup', this._deselectMultiDrag);\n } else {\n on(document, 'mouseup', this._deselectMultiDrag);\n on(document, 'touchend', this._deselectMultiDrag);\n }\n\n on(document, 'keydown', this._checkKeyDown);\n on(document, 'keyup', this._checkKeyUp);\n this.defaults = {\n selectedClass: 'sortable-selected',\n multiDragKey: null,\n setData: function setData(dataTransfer, dragEl) {\n var data = '';\n\n if (multiDragElements.length && multiDragSortable === sortable) {\n multiDragElements.forEach(function (multiDragElement, i) {\n data += (!i ? '' : ', ') + multiDragElement.textContent;\n });\n } else {\n data = dragEl.textContent;\n }\n\n dataTransfer.setData('Text', data);\n }\n };\n }\n\n MultiDrag.prototype = {\n multiDragKeyDown: false,\n isMultiDrag: false,\n delayStartGlobal: function delayStartGlobal(_ref) {\n var dragged = _ref.dragEl;\n dragEl$1 = dragged;\n },\n delayEnded: function delayEnded() {\n this.isMultiDrag = ~multiDragElements.indexOf(dragEl$1);\n },\n setupClone: function setupClone(_ref2) {\n var sortable = _ref2.sortable,\n cancel = _ref2.cancel;\n if (!this.isMultiDrag) return;\n\n for (var i = 0; i < multiDragElements.length; i++) {\n multiDragClones.push(clone(multiDragElements[i]));\n multiDragClones[i].sortableIndex = multiDragElements[i].sortableIndex;\n multiDragClones[i].draggable = false;\n multiDragClones[i].style['will-change'] = '';\n toggleClass(multiDragClones[i], this.options.selectedClass, false);\n multiDragElements[i] === dragEl$1 && toggleClass(multiDragClones[i], this.options.chosenClass, false);\n }\n\n sortable._hideClone();\n\n cancel();\n },\n clone: function clone(_ref3) {\n var sortable = _ref3.sortable,\n rootEl = _ref3.rootEl,\n dispatchSortableEvent = _ref3.dispatchSortableEvent,\n cancel = _ref3.cancel;\n if (!this.isMultiDrag) return;\n\n if (!this.options.removeCloneOnHide) {\n if (multiDragElements.length && multiDragSortable === sortable) {\n insertMultiDragClones(true, rootEl);\n dispatchSortableEvent('clone');\n cancel();\n }\n }\n },\n showClone: function showClone(_ref4) {\n var cloneNowShown = _ref4.cloneNowShown,\n rootEl = _ref4.rootEl,\n cancel = _ref4.cancel;\n if (!this.isMultiDrag) return;\n insertMultiDragClones(false, rootEl);\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', '');\n });\n cloneNowShown();\n clonesHidden = false;\n cancel();\n },\n hideClone: function hideClone(_ref5) {\n var _this = this;\n\n var sortable = _ref5.sortable,\n cloneNowHidden = _ref5.cloneNowHidden,\n cancel = _ref5.cancel;\n if (!this.isMultiDrag) return;\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', 'none');\n\n if (_this.options.removeCloneOnHide && clone.parentNode) {\n clone.parentNode.removeChild(clone);\n }\n });\n cloneNowHidden();\n clonesHidden = true;\n cancel();\n },\n dragStartGlobal: function dragStartGlobal(_ref6) {\n var sortable = _ref6.sortable;\n\n if (!this.isMultiDrag && multiDragSortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n }\n\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.sortableIndex = index(multiDragElement);\n }); // Sort multi-drag elements\n\n multiDragElements = multiDragElements.sort(function (a, b) {\n return a.sortableIndex - b.sortableIndex;\n });\n dragStarted = true;\n },\n dragStarted: function dragStarted(_ref7) {\n var _this2 = this;\n\n var sortable = _ref7.sortable;\n if (!this.isMultiDrag) return;\n\n if (this.options.sort) {\n // Capture rects,\n // hide multi drag elements (by positioning them absolute),\n // set multi drag elements rects to dragRect,\n // show multi drag elements,\n // animate to rects,\n // unset rects & remove from DOM\n sortable.captureAnimationState();\n\n if (this.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n css(multiDragElement, 'position', 'absolute');\n });\n var dragRect = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRect);\n });\n folding = true;\n initialFolding = true;\n }\n }\n\n sortable.animateAll(function () {\n folding = false;\n initialFolding = false;\n\n if (_this2.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n } // Remove all auxiliary multidrag items from el, if sorting enabled\n\n\n if (_this2.options.sort) {\n removeMultiDragElements();\n }\n });\n },\n dragOver: function dragOver(_ref8) {\n var target = _ref8.target,\n completed = _ref8.completed,\n cancel = _ref8.cancel;\n\n if (folding && ~multiDragElements.indexOf(target)) {\n completed(false);\n cancel();\n }\n },\n revert: function revert(_ref9) {\n var fromSortable = _ref9.fromSortable,\n rootEl = _ref9.rootEl,\n sortable = _ref9.sortable,\n dragRect = _ref9.dragRect;\n\n if (multiDragElements.length > 1) {\n // Setup unfold animation\n multiDragElements.forEach(function (multiDragElement) {\n sortable.addAnimationState({\n target: multiDragElement,\n rect: folding ? getRect(multiDragElement) : dragRect\n });\n unsetRect(multiDragElement);\n multiDragElement.fromRect = dragRect;\n fromSortable.removeAnimationState(multiDragElement);\n });\n folding = false;\n insertMultiDragElements(!this.options.removeCloneOnHide, rootEl);\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref10) {\n var sortable = _ref10.sortable,\n isOwner = _ref10.isOwner,\n insertion = _ref10.insertion,\n activeSortable = _ref10.activeSortable,\n parentEl = _ref10.parentEl,\n putSortable = _ref10.putSortable;\n var options = this.options;\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n }\n\n initialFolding = false; // If leaving sort:false root, or already folding - Fold to new location\n\n if (options.animation && multiDragElements.length > 1 && (folding || !isOwner && !activeSortable.options.sort && !putSortable)) {\n // Fold: Set all multi drag elements's rects to dragEl's rect when multi-drag elements are invisible\n var dragRectAbsolute = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRectAbsolute); // Move element(s) to end of parentEl so that it does not interfere with multi-drag clones insertion if they are inserted\n // while folding, and so that we can capture them again because old sortable will no longer be fromSortable\n\n parentEl.appendChild(multiDragElement);\n });\n folding = true;\n } // Clones must be shown (and check to remove multi drags) after folding when interfering multiDragElements are moved out\n\n\n if (!isOwner) {\n // Only remove if not folding (folding will remove them anyways)\n if (!folding) {\n removeMultiDragElements();\n }\n\n if (multiDragElements.length > 1) {\n var clonesHiddenBefore = clonesHidden;\n\n activeSortable._showClone(sortable); // Unfold animation for clones if showing from hidden\n\n\n if (activeSortable.options.animation && !clonesHidden && clonesHiddenBefore) {\n multiDragClones.forEach(function (clone) {\n activeSortable.addAnimationState({\n target: clone,\n rect: clonesFromRect\n });\n clone.fromRect = clonesFromRect;\n clone.thisAnimationDuration = null;\n });\n }\n } else {\n activeSortable._showClone(sortable);\n }\n }\n }\n },\n dragOverAnimationCapture: function dragOverAnimationCapture(_ref11) {\n var dragRect = _ref11.dragRect,\n isOwner = _ref11.isOwner,\n activeSortable = _ref11.activeSortable;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n });\n\n if (activeSortable.options.animation && !isOwner && activeSortable.multiDrag.isMultiDrag) {\n clonesFromRect = _extends({}, dragRect);\n var dragMatrix = matrix(dragEl$1, true);\n clonesFromRect.top -= dragMatrix.f;\n clonesFromRect.left -= dragMatrix.e;\n }\n },\n dragOverAnimationComplete: function dragOverAnimationComplete() {\n if (folding) {\n folding = false;\n removeMultiDragElements();\n }\n },\n drop: function drop(_ref12) {\n var evt = _ref12.originalEvent,\n rootEl = _ref12.rootEl,\n parentEl = _ref12.parentEl,\n sortable = _ref12.sortable,\n dispatchSortableEvent = _ref12.dispatchSortableEvent,\n oldIndex = _ref12.oldIndex,\n putSortable = _ref12.putSortable;\n var toSortable = putSortable || this.sortable;\n if (!evt) return;\n var options = this.options,\n children = parentEl.children; // Multi-drag selection\n\n if (!dragStarted) {\n if (options.multiDragKey && !this.multiDragKeyDown) {\n this._deselectMultiDrag();\n }\n\n toggleClass(dragEl$1, options.selectedClass, !~multiDragElements.indexOf(dragEl$1));\n\n if (!~multiDragElements.indexOf(dragEl$1)) {\n multiDragElements.push(dragEl$1);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: dragEl$1,\n originalEvt: evt\n }); // Modifier activated, select from last to dragEl\n\n if (evt.shiftKey && lastMultiDragSelect && sortable.el.contains(lastMultiDragSelect)) {\n var lastIndex = index(lastMultiDragSelect),\n currentIndex = index(dragEl$1);\n\n if (~lastIndex && ~currentIndex && lastIndex !== currentIndex) {\n // Must include lastMultiDragSelect (select it), in case modified selection from no selection\n // (but previous selection existed)\n var n, i;\n\n if (currentIndex > lastIndex) {\n i = lastIndex;\n n = currentIndex;\n } else {\n i = currentIndex;\n n = lastIndex + 1;\n }\n\n for (; i < n; i++) {\n if (~multiDragElements.indexOf(children[i])) continue;\n toggleClass(children[i], options.selectedClass, true);\n multiDragElements.push(children[i]);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: children[i],\n originalEvt: evt\n });\n }\n }\n } else {\n lastMultiDragSelect = dragEl$1;\n }\n\n multiDragSortable = toSortable;\n } else {\n multiDragElements.splice(multiDragElements.indexOf(dragEl$1), 1);\n lastMultiDragSelect = null;\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'deselect',\n targetEl: dragEl$1,\n originalEvt: evt\n });\n }\n } // Multi-drag drop\n\n\n if (dragStarted && this.isMultiDrag) {\n // Do not \"unfold\" after around dragEl if reverted\n if ((parentEl[expando].options.sort || parentEl !== rootEl) && multiDragElements.length > 1) {\n var dragRect = getRect(dragEl$1),\n multiDragIndex = index(dragEl$1, ':not(.' + this.options.selectedClass + ')');\n if (!initialFolding && options.animation) dragEl$1.thisAnimationDuration = null;\n toSortable.captureAnimationState();\n\n if (!initialFolding) {\n if (options.animation) {\n dragEl$1.fromRect = dragRect;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n\n if (multiDragElement !== dragEl$1) {\n var rect = folding ? getRect(multiDragElement) : dragRect;\n multiDragElement.fromRect = rect; // Prepare unfold animation\n\n toSortable.addAnimationState({\n target: multiDragElement,\n rect: rect\n });\n }\n });\n } // Multi drag elements are not necessarily removed from the DOM on drop, so to reinsert\n // properly they must all be removed\n\n\n removeMultiDragElements();\n multiDragElements.forEach(function (multiDragElement) {\n if (children[multiDragIndex]) {\n parentEl.insertBefore(multiDragElement, children[multiDragIndex]);\n } else {\n parentEl.appendChild(multiDragElement);\n }\n\n multiDragIndex++;\n }); // If initial folding is done, the elements may have changed position because they are now\n // unfolding around dragEl, even though dragEl may not have his index changed, so update event\n // must be fired here as Sortable will not.\n\n if (oldIndex === index(dragEl$1)) {\n var update = false;\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement.sortableIndex !== index(multiDragElement)) {\n update = true;\n return;\n }\n });\n\n if (update) {\n dispatchSortableEvent('update');\n }\n }\n } // Must be done after capturing individual rects (scroll bar)\n\n\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n toSortable.animateAll();\n }\n\n multiDragSortable = toSortable;\n } // Remove clones if necessary\n\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n multiDragClones.forEach(function (clone) {\n clone.parentNode && clone.parentNode.removeChild(clone);\n });\n }\n },\n nullingGlobal: function nullingGlobal() {\n this.isMultiDrag = dragStarted = false;\n multiDragClones.length = 0;\n },\n destroyGlobal: function destroyGlobal() {\n this._deselectMultiDrag();\n\n off(document, 'pointerup', this._deselectMultiDrag);\n off(document, 'mouseup', this._deselectMultiDrag);\n off(document, 'touchend', this._deselectMultiDrag);\n off(document, 'keydown', this._checkKeyDown);\n off(document, 'keyup', this._checkKeyUp);\n },\n _deselectMultiDrag: function _deselectMultiDrag(evt) {\n if (typeof dragStarted !== \"undefined\" && dragStarted) return; // Only deselect if selection is in this sortable\n\n if (multiDragSortable !== this.sortable) return; // Only deselect if target is not item in this sortable\n\n if (evt && closest(evt.target, this.options.draggable, this.sortable.el, false)) return; // Only deselect if left click\n\n if (evt && evt.button !== 0) return;\n\n while (multiDragElements.length) {\n var el = multiDragElements[0];\n toggleClass(el, this.options.selectedClass, false);\n multiDragElements.shift();\n dispatchEvent({\n sortable: this.sortable,\n rootEl: this.sortable.el,\n name: 'deselect',\n targetEl: el,\n originalEvt: evt\n });\n }\n },\n _checkKeyDown: function _checkKeyDown(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = true;\n }\n },\n _checkKeyUp: function _checkKeyUp(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = false;\n }\n }\n };\n return _extends(MultiDrag, {\n // Static methods & properties\n pluginName: 'multiDrag',\n utils: {\n /**\r\n * Selects the provided multi-drag item\r\n * @param {HTMLElement} el The element to be selected\r\n */\n select: function select(el) {\n var sortable = el.parentNode[expando];\n if (!sortable || !sortable.options.multiDrag || ~multiDragElements.indexOf(el)) return;\n\n if (multiDragSortable && multiDragSortable !== sortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n\n multiDragSortable = sortable;\n }\n\n toggleClass(el, sortable.options.selectedClass, true);\n multiDragElements.push(el);\n },\n\n /**\r\n * Deselects the provided multi-drag item\r\n * @param {HTMLElement} el The element to be deselected\r\n */\n deselect: function deselect(el) {\n var sortable = el.parentNode[expando],\n index = multiDragElements.indexOf(el);\n if (!sortable || !sortable.options.multiDrag || !~index) return;\n toggleClass(el, sortable.options.selectedClass, false);\n multiDragElements.splice(index, 1);\n }\n },\n eventProperties: function eventProperties() {\n var _this3 = this;\n\n var oldIndicies = [],\n newIndicies = [];\n multiDragElements.forEach(function (multiDragElement) {\n oldIndicies.push({\n multiDragElement: multiDragElement,\n index: multiDragElement.sortableIndex\n }); // multiDragElements will already be sorted if folding\n\n var newIndex;\n\n if (folding && multiDragElement !== dragEl$1) {\n newIndex = -1;\n } else if (folding) {\n newIndex = index(multiDragElement, ':not(.' + _this3.options.selectedClass + ')');\n } else {\n newIndex = index(multiDragElement);\n }\n\n newIndicies.push({\n multiDragElement: multiDragElement,\n index: newIndex\n });\n });\n return {\n items: _toConsumableArray(multiDragElements),\n clones: [].concat(multiDragClones),\n oldIndicies: oldIndicies,\n newIndicies: newIndicies\n };\n },\n optionListeners: {\n multiDragKey: function multiDragKey(key) {\n key = key.toLowerCase();\n\n if (key === 'ctrl') {\n key = 'Control';\n } else if (key.length > 1) {\n key = key.charAt(0).toUpperCase() + key.substr(1);\n }\n\n return key;\n }\n }\n });\n}\n\nfunction insertMultiDragElements(clonesInserted, rootEl) {\n multiDragElements.forEach(function (multiDragElement, i) {\n var target = rootEl.children[multiDragElement.sortableIndex + (clonesInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(multiDragElement, target);\n } else {\n rootEl.appendChild(multiDragElement);\n }\n });\n}\n/**\r\n * Insert multi-drag clones\r\n * @param {[Boolean]} elementsInserted Whether the multi-drag elements are inserted\r\n * @param {HTMLElement} rootEl\r\n */\n\n\nfunction insertMultiDragClones(elementsInserted, rootEl) {\n multiDragClones.forEach(function (clone, i) {\n var target = rootEl.children[clone.sortableIndex + (elementsInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(clone, target);\n } else {\n rootEl.appendChild(clone);\n }\n });\n}\n\nfunction removeMultiDragElements() {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n multiDragElement.parentNode && multiDragElement.parentNode.removeChild(multiDragElement);\n });\n}\n\nSortable.mount(new AutoScrollPlugin());\nSortable.mount(Remove, Revert);\n\nexport default Sortable;\nexport { MultiDragPlugin as MultiDrag, Sortable, SwapPlugin as Swap };\n","export * from \"-!../../../../node_modules/vue-style-loader/index.js!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BackgroundSettings.vue?vue&type=style&index=0&id=5e3de762&scoped=true&lang=scss&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".background-selector[data-v-5e3de762]{display:flex;flex-wrap:wrap;justify-content:center}.background-selector .background[data-v-5e3de762]{width:176px;height:96px;margin:8px;background-size:cover;background-position:center center;text-align:center;border-radius:var(--border-radius-large);border:2px solid var(--color-main-background);overflow:hidden}.background-selector .background.current[data-v-5e3de762]{background-image:var(--color-background-dark)}.background-selector .background.filepicker[data-v-5e3de762],.background-selector .background.default[data-v-5e3de762],.background-selector .background.color[data-v-5e3de762]{border-color:var(--color-border)}.background-selector .background.color[data-v-5e3de762]{background-color:var(--color-primary);color:var(--color-primary-text)}.background-selector .background.active[data-v-5e3de762],.background-selector .background[data-v-5e3de762]:hover,.background-selector .background[data-v-5e3de762]:focus{border:2px solid var(--color-primary)}.background-selector .background.active[data-v-5e3de762]:not(.icon-loading):after{background-image:var(--icon-checkmark-fff);background-repeat:no-repeat;background-position:center;background-size:44px;content:'';display:block;height:100%}body.theme--dark .background-selector .background.active[data-v-5e3de762]:not(.icon-loading):after{background-image:var(--icon-checkmark-000)}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","export * from \"-!../../../node_modules/vue-style-loader/index.js!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=0ebea47a&lang=scss&scoped=true&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"#app-dashboard[data-v-0ebea47a]{width:100%;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;background-color:var(--color-primary);--color-background-translucent: rgba(255, 255, 255, 0.8);--background-blur: blur(10px)}#body-user.theme--dark #app-dashboard[data-v-0ebea47a]{background-color:var(--color-main-background);--color-background-translucent: rgba(24, 24, 24, 0.8)}#body-user.theme--highcontrast #app-dashboard[data-v-0ebea47a]{background-color:var(--color-main-background);--color-background-translucent: var(--color-main-background)}#app-dashboard>h2[data-v-0ebea47a]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:10vh 16px 0px}.panels[data-v-0ebea47a]{width:auto;margin:auto;max-width:1500px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-0ebea47a],.panels>div[data-v-0ebea47a]{width:320px;max-width:100%;margin:16px;background-color:var(--color-background-translucent);-webkit-backdrop-filter:var(--background-blur);backdrop-filter:var(--background-blur);border-radius:var(--border-radius-large)}#body-user.theme--highcontrast .panel[data-v-0ebea47a],#body-user.theme--highcontrast .panels>div[data-v-0ebea47a]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-0ebea47a],.panels>div.sortable-ghost[data-v-0ebea47a]{opacity:0.1}.panel>.panel--header[data-v-0ebea47a],.panels>div>.panel--header[data-v-0ebea47a]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-0ebea47a],.panel>.panel--header[data-v-0ebea47a] *,.panels>div>.panel--header[data-v-0ebea47a],.panels>div>.panel--header[data-v-0ebea47a] *{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.panel>.panel--header[data-v-0ebea47a]:active,.panels>div>.panel--header[data-v-0ebea47a]:active{cursor:grabbing}.panel>.panel--header a[data-v-0ebea47a],.panels>div>.panel--header a[data-v-0ebea47a]{flex-grow:1}.panel>.panel--header>h2[data-v-0ebea47a],.panels>div>.panel--header>h2[data-v-0ebea47a]{display:block;flex-grow:1;margin:0;font-size:20px;line-height:24px;font-weight:bold;background-size:32px;background-position:14px 12px;padding:16px 8px 16px 60px;height:56px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab}.panel>.panel--content[data-v-0ebea47a],.panels>div>.panel--content[data-v-0ebea47a]{margin:0 16px 16px 16px;height:420px;overflow:hidden}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-0ebea47a],.panels>div>.panel--content[data-v-0ebea47a]{height:auto}}.footer[data-v-0ebea47a]{text-align:center;transition:bottom var(--animation-slow) ease-in-out;bottom:0;padding:44px 0}.edit-panels[data-v-0ebea47a]{display:inline-block;margin:auto;background-position:16px center;padding:12px 16px;padding-left:36px;border-radius:var(--border-radius-pill);max-width:200px;opacity:1;text-align:center}.edit-panels[data-v-0ebea47a],.statuses[data-v-0ebea47a] .action-item .action-item__menutoggle,.statuses[data-v-0ebea47a] .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-background-translucent);-webkit-backdrop-filter:var(--background-blur);backdrop-filter:var(--background-blur)}.edit-panels[data-v-0ebea47a]:hover,.edit-panels[data-v-0ebea47a]:focus,.edit-panels[data-v-0ebea47a]:active,.statuses[data-v-0ebea47a] .action-item .action-item__menutoggle:hover,.statuses[data-v-0ebea47a] .action-item .action-item__menutoggle:focus,.statuses[data-v-0ebea47a] .action-item .action-item__menutoggle:active,.statuses[data-v-0ebea47a] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-0ebea47a] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-0ebea47a] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover)}.modal__content[data-v-0ebea47a]{padding:32px 16px;max-height:70vh;text-align:center;overflow:auto}.modal__content ol[data-v-0ebea47a]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-0ebea47a]{display:block;padding:48px 8px 16px 8px;margin:8px;width:160px;background-color:var(--color-background-hover);border:2px solid var(--color-main-background);border-radius:var(--border-radius-large);background-size:24px;background-position:center 16px;text-align:center}.modal__content li label[data-v-0ebea47a]:hover{border-color:var(--color-primary)}.modal__content li input:focus+label[data-v-0ebea47a]{border-color:var(--color-primary)}.modal__content h3[data-v-0ebea47a]{font-weight:bold}.modal__content h3[data-v-0ebea47a]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-0ebea47a]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-0ebea47a]{max-width:650px;margin:0 auto}.modal__content p a[data-v-0ebea47a]:hover,.modal__content p a[data-v-0ebea47a]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-0ebea47a]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-0ebea47a]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-0ebea47a]{transition:transform var(--animation-slow)}.statuses[data-v-0ebea47a]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>div[data-v-0ebea47a]{margin:8px}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","/*\n * @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tisMobile: this._isMobile(),\n\t\t}\n\t},\n\tbeforeMount() {\n\t\twindow.addEventListener('resize', this._onResize)\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this._onResize)\n\t},\n\tmethods: {\n\t\t_onResize() {\n\t\t\t// Update mobile mode\n\t\t\tthis.isMobile = this._isMobile()\n\t\t},\n\t\t_isMobile() {\n\t\t\t// check if content width is under 768px\n\t\t\treturn document.documentElement.clientWidth < 768\n\t\t},\n\t},\n}\n","/*\n * @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateFilePath } from '@nextcloud/router'\n\nexport default (url) => generateFilePath('dashboard', '', 'img/') + url\n","/*\n * @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { generateUrl } from '@nextcloud/router'\nimport prefixWithBaseUrl from './prefixWithBaseUrl'\n\nexport default (background, time = 0) => {\n\tif (background === 'default') {\n\t\tif (window.OCA.Accessibility.theme === 'dark') {\n\t\t\treturn prefixWithBaseUrl('eduardo-neves-pedra-azul.jpg')\n\t\t}\n\t\treturn prefixWithBaseUrl('kamil-porembinski-clouds.jpg')\n\t} else if (background === 'custom') {\n\t\treturn generateUrl('/apps/dashboard/background') + '?v=' + time\n\t}\n\treturn prefixWithBaseUrl(background)\n}\n","<!--\n - @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div class=\"background-selector\">\n\t\t<button class=\"background filepicker\"\n\t\t\t:class=\"{ active: background === 'custom' }\"\n\t\t\ttabindex=\"0\"\n\t\t\t@click=\"pickFile\">\n\t\t\t{{ t('dashboard', 'Pick from files') }}\n\t\t</button>\n\t\t<button class=\"background default\"\n\t\t\ttabindex=\"0\"\n\t\t\t:class=\"{ 'icon-loading': loading === 'default', active: background === 'default' }\"\n\t\t\t@click=\"setDefault\">\n\t\t\t{{ t('dashboard', 'Default images') }}\n\t\t</button>\n\t\t<button class=\"background color\"\n\t\t\t:class=\"{ active: background === 'custom' }\"\n\t\t\ttabindex=\"0\"\n\t\t\t@click=\"pickColor\">\n\t\t\t{{ t('dashboard', 'Plain background') }}\n\t\t</button>\n\t\t<button v-for=\"shippedBackground in shippedBackgrounds\"\n\t\t\t:key=\"shippedBackground.name\"\n\t\t\tv-tooltip=\"shippedBackground.details.attribution\"\n\t\t\t:class=\"{ 'icon-loading': loading === shippedBackground.name, active: background === shippedBackground.name }\"\n\t\t\ttabindex=\"0\"\n\t\t\tclass=\"background\"\n\t\t\t:style=\"{ 'background-image': 'url(' + shippedBackground.preview + ')' }\"\n\t\t\t@click=\"setShipped(shippedBackground.name)\" />\n\t</div>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport getBackgroundUrl from './../helpers/getBackgroundUrl'\nimport prefixWithBaseUrl from './../helpers/prefixWithBaseUrl'\nconst shippedBackgroundList = loadState('dashboard', 'shippedBackgrounds')\n\nexport default {\n\tname: 'BackgroundSettings',\n\tprops: {\n\t\tbackground: {\n\t\t\ttype: String,\n\t\t\tdefault: 'default',\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tbackgroundImage: generateUrl('/apps/dashboard/background') + '?v=' + Date.now(),\n\t\t\tloading: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tshippedBackgrounds() {\n\t\t\treturn Object.keys(shippedBackgroundList).map((item) => {\n\t\t\t\treturn {\n\t\t\t\t\tname: item,\n\t\t\t\t\turl: prefixWithBaseUrl(item),\n\t\t\t\t\tpreview: prefixWithBaseUrl('previews/' + item),\n\t\t\t\t\tdetails: shippedBackgroundList[item],\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\t},\n\tmethods: {\n\t\tasync update(data) {\n\t\t\tconst background = data.type === 'custom' || data.type === 'default' ? data.type : data.value\n\t\t\tthis.backgroundImage = getBackgroundUrl(background, data.version)\n\t\t\tif (data.type === 'color') {\n\t\t\t\tthis.$emit('update:background', data)\n\t\t\t\tthis.loading = false\n\t\t\t\treturn\n\t\t\t}\n\t\t\tconst image = new Image()\n\t\t\timage.onload = () => {\n\t\t\t\tthis.$emit('update:background', data)\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t\timage.src = this.backgroundImage\n\t\t},\n\t\tasync setDefault() {\n\t\t\tthis.loading = 'default'\n\t\t\tconst result = await axios.post(generateUrl('/apps/dashboard/background/default'))\n\t\t\tthis.update(result.data)\n\t\t},\n\t\tasync setShipped(shipped) {\n\t\t\tthis.loading = shipped\n\t\t\tconst result = await axios.post(generateUrl('/apps/dashboard/background/shipped'), { value: shipped })\n\t\t\tthis.update(result.data)\n\t\t},\n\t\tasync setFile(path) {\n\t\t\tthis.loading = 'custom'\n\t\t\tconst result = await axios.post(generateUrl('/apps/dashboard/background/custom'), { value: path })\n\t\t\tthis.update(result.data)\n\t\t},\n\t\tasync pickColor() {\n\t\t\tthis.loading = 'color'\n\t\t\tconst color = OCA && OCA.Theming ? OCA.Theming.color : '#0082c9'\n\t\t\tconst result = await axios.post(generateUrl('/apps/dashboard/background/color'), { value: color })\n\t\t\tthis.update(result.data)\n\t\t},\n\t\tpickFile() {\n\t\t\twindow.OC.dialogs.filepicker(t('dashboard', 'Insert from {productName}', { productName: OC.theme.name }), (path, type) => {\n\t\t\t\tif (type === OC.dialogs.FILEPICKER_TYPE_CHOOSE) {\n\t\t\t\t\tthis.setFile(path)\n\t\t\t\t}\n\t\t\t}, false, ['image/png', 'image/gif', 'image/jpeg', 'image/svg'], true, OC.dialogs.FILEPICKER_TYPE_CHOOSE)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.background-selector {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tjustify-content: center;\n\n\t.background {\n\t\twidth: 176px;\n\t\theight: 96px;\n\t\tmargin: 8px;\n\t\tbackground-size: cover;\n\t\tbackground-position: center center;\n\t\ttext-align: center;\n\t\tborder-radius: var(--border-radius-large);\n\t\tborder: 2px solid var(--color-main-background);\n\t\toverflow: hidden;\n\n\t\t&.current {\n\t\t\tbackground-image: var(--color-background-dark);\n\t\t}\n\n\t\t&.filepicker, &.default, &.color {\n\t\t\tborder-color: var(--color-border);\n\t\t}\n\n\t\t&.color {\n\t\t\tbackground-color: var(--color-primary);\n\t\t\tcolor: var(--color-primary-text);\n\t\t}\n\n\t\t&.active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tborder: 2px solid var(--color-primary);\n\t\t}\n\n\t\t&.active:not(.icon-loading):after {\n\t\t\tbackground-image: var(--icon-checkmark-fff);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: 44px;\n\t\t\tcontent: '';\n\t\t\tdisplay: block;\n\t\t\theight: 100%;\n\n\t\t\tbody.theme--dark & {\n\t\t\t\tbackground-image: var(--icon-checkmark-000);\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BackgroundSettings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BackgroundSettings.vue?vue&type=script&lang=js&\"","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./BackgroundSettings.vue?vue&type=template&id=5e3de762&scoped=true&\"\nimport script from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BackgroundSettings.vue?vue&type=style&index=0&id=5e3de762&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5e3de762\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"background-selector\"},[_c('button',{staticClass:\"background filepicker\",class:{ active: _vm.background === 'custom' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.pickFile}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Pick from files'))+\"\\n\\t\")]),_vm._v(\" \"),_c('button',{staticClass:\"background default\",class:{ 'icon-loading': _vm.loading === 'default', active: _vm.background === 'default' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.setDefault}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Default images'))+\"\\n\\t\")]),_vm._v(\" \"),_c('button',{staticClass:\"background color\",class:{ active: _vm.background === 'custom' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.pickColor}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Plain background'))+\"\\n\\t\")]),_vm._v(\" \"),_vm._l((_vm.shippedBackgrounds),function(shippedBackground){return _c('button',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(shippedBackground.details.attribution),expression:\"shippedBackground.details.attribution\"}],key:shippedBackground.name,staticClass:\"background\",class:{ 'icon-loading': _vm.loading === shippedBackground.name, active: _vm.background === shippedBackground.name },style:({ 'background-image': 'url(' + shippedBackground.preview + ')' }),attrs:{\"tabindex\":\"0\"},on:{\"click\":function($event){return _vm.setShipped(shippedBackground.name)}}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div id=\"app-dashboard\" :style=\"backgroundStyle\">\n\t\t<h2>{{ greeting.text }}</h2>\n\t\t<ul class=\"statuses\">\n\t\t\t<div v-for=\"status in sortedRegisteredStatus\"\n\t\t\t\t:id=\"'status-' + status\"\n\t\t\t\t:key=\"status\">\n\t\t\t\t<div :ref=\"'status-' + status\" />\n\t\t\t</div>\n\t\t</ul>\n\n\t\t<Draggable v-model=\"layout\"\n\t\t\tclass=\"panels\"\n\t\t\thandle=\".panel--header\"\n\t\t\t@end=\"saveLayout\">\n\t\t\t<div v-for=\"panelId in layout\" :key=\"panels[panelId].id\" class=\"panel\">\n\t\t\t\t<div class=\"panel--header\">\n\t\t\t\t\t<h2 :class=\"panels[panelId].iconClass\">\n\t\t\t\t\t\t{{ panels[panelId].title }}\n\t\t\t\t\t</h2>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"panel--content\" :class=\"{ loading: !panels[panelId].mounted }\">\n\t\t\t\t\t<div :ref=\"panels[panelId].id\" :data-id=\"panels[panelId].id\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Draggable>\n\n\t\t<div class=\"footer\">\n\t\t\t<a class=\"edit-panels icon-rename\"\n\t\t\t\ttabindex=\"0\"\n\t\t\t\t@click=\"showModal\"\n\t\t\t\t@keyup.enter=\"showModal\"\n\t\t\t\t@keyup.space=\"showModal\">{{ t('dashboard', 'Customize') }}</a>\n\t\t</div>\n\n\t\t<Modal v-if=\"modal\" @close=\"closeModal\">\n\t\t\t<div class=\"modal__content\">\n\t\t\t\t<h3>{{ t('dashboard', 'Edit widgets') }}</h3>\n\t\t\t\t<ol class=\"panels\">\n\t\t\t\t\t<li v-for=\"status in sortedAllStatuses\" :key=\"status\">\n\t\t\t\t\t\t<input :id=\"'status-checkbox-' + status\"\n\t\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\t\tclass=\"checkbox\"\n\t\t\t\t\t\t\t:checked=\"isStatusActive(status)\"\n\t\t\t\t\t\t\t@input=\"updateStatusCheckbox(status, $event.target.checked)\">\n\t\t\t\t\t\t<label :for=\"'status-checkbox-' + status\" :class=\"statusInfo[status].icon\">\n\t\t\t\t\t\t\t{{ statusInfo[status].text }}\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</li>\n\t\t\t\t</ol>\n\t\t\t\t<Draggable v-model=\"layout\"\n\t\t\t\t\tclass=\"panels\"\n\t\t\t\t\ttag=\"ol\"\n\t\t\t\t\thandle=\".draggable\"\n\t\t\t\t\t@end=\"saveLayout\">\n\t\t\t\t\t<li v-for=\"panel in sortedPanels\" :key=\"panel.id\">\n\t\t\t\t\t\t<input :id=\"'panel-checkbox-' + panel.id\"\n\t\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\t\tclass=\"checkbox\"\n\t\t\t\t\t\t\t:checked=\"isActive(panel)\"\n\t\t\t\t\t\t\t@input=\"updateCheckbox(panel, $event.target.checked)\">\n\t\t\t\t\t\t<label :for=\"'panel-checkbox-' + panel.id\" :class=\"isActive(panel) ? 'draggable ' + panel.iconClass : panel.iconClass\">\n\t\t\t\t\t\t\t{{ panel.title }}\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</li>\n\t\t\t\t</Draggable>\n\n\t\t\t\t<a v-if=\"isAdmin\" :href=\"appStoreUrl\" class=\"button\">{{ t('dashboard', 'Get more widgets from the app store') }}</a>\n\n\t\t\t\t<h3>{{ t('dashboard', 'Change background image') }}</h3>\n\t\t\t\t<BackgroundSettings :background=\"background\" @update:background=\"updateBackground\" />\n\n\t\t\t\t<h3>{{ t('dashboard', 'Weather service') }}</h3>\n\t\t\t\t<p>\n\t\t\t\t\t{{ t('dashboard', 'For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.') }}\n\t\t\t\t</p>\n\t\t\t\t<p class=\"credits--end\">\n\t\t\t\t\t<a href=\"https://api.met.no/doc/TermsOfService\" target=\"_blank\" rel=\"noopener\">{{ t('dashboard', 'Weather data from Met.no') }}</a>,\n\t\t\t\t\t<a href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\" target=\"_blank\" rel=\"noopener\">{{ t('dashboard', 'geocoding with Nominatim') }}</a>,\n\t\t\t\t\t<a href=\"https://www.opentopodata.org/#public-api\" target=\"_blank\" rel=\"noopener\">{{ t('dashboard', 'elevation data from OpenTopoData') }}</a>.\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</Modal>\n\t</div>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { loadState } from '@nextcloud/initial-state'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { Modal } from '@nextcloud/vue'\nimport Draggable from 'vuedraggable'\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport isMobile from './mixins/isMobile'\nimport BackgroundSettings from './components/BackgroundSettings'\nimport getBackgroundUrl from './helpers/getBackgroundUrl'\nimport prefixWithBaseUrl from './helpers/prefixWithBaseUrl'\n\nconst panels = loadState('dashboard', 'panels')\nconst firstRun = loadState('dashboard', 'firstRun')\nconst background = loadState('dashboard', 'background')\nconst version = loadState('dashboard', 'version')\nconst shippedBackgroundList = loadState('dashboard', 'shippedBackgrounds')\nconst statusInfo = {\n\tweather: {\n\t\ttext: t('dashboard', 'Weather'),\n\t\ticon: 'icon-weather-status',\n\t},\n\tstatus: {\n\t\ttext: t('dashboard', 'Status'),\n\t\ticon: 'icon-user-status-online',\n\t},\n}\n\nexport default {\n\tname: 'App',\n\tcomponents: {\n\t\tModal,\n\t\tDraggable,\n\t\tBackgroundSettings,\n\t},\n\tmixins: [\n\t\tisMobile,\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tisAdmin: getCurrentUser().isAdmin,\n\t\t\ttimer: new Date(),\n\t\t\tregisteredStatus: [],\n\t\t\tcallbacks: {},\n\t\t\tcallbacksStatus: {},\n\t\t\tallCallbacksStatus: {},\n\t\t\tstatusInfo,\n\t\t\tenabledStatuses: loadState('dashboard', 'statuses'),\n\t\t\tpanels,\n\t\t\tfirstRun,\n\t\t\tdisplayName: getCurrentUser()?.displayName,\n\t\t\tuid: getCurrentUser()?.uid,\n\t\t\tlayout: loadState('dashboard', 'layout').filter((panelId) => panels[panelId]),\n\t\t\tmodal: false,\n\t\t\tappStoreUrl: generateUrl('/settings/apps/dashboard'),\n\t\t\tstatuses: {},\n\t\t\tbackground,\n\t\t\tversion,\n\t\t\tdefaultBackground: window.OCA.Accessibility?.theme === 'dark' ? prefixWithBaseUrl('flickr-148302424@N05-36591009215.jpg?v=1') : prefixWithBaseUrl('flickr-paszczak000-8715851521.jpg?v=1'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tbackgroundImage() {\n\t\t\treturn getBackgroundUrl(this.background, this.version)\n\t\t},\n\t\tbackgroundStyle() {\n\t\t\tif (this.background.match(/#[0-9A-Fa-f]{6}/g)) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tbackgroundImage: `url(${this.backgroundImage})`,\n\t\t\t}\n\t\t},\n\t\tgreeting() {\n\t\t\tconst time = this.timer.getHours()\n\t\t\tconst shouldShowName = this.displayName && this.uid !== this.displayName\n\n\t\t\tif (time > 18) {\n\t\t\t\treturn { text: shouldShowName ? t('dashboard', 'Good evening, {name}', { name: this.displayName }) : t('dashboard', 'Good evening') }\n\t\t\t}\n\t\t\tif (time > 12) {\n\t\t\t\treturn { text: shouldShowName ? t('dashboard', 'Good afternoon, {name}', { name: this.displayName }) : t('dashboard', 'Good afternoon') }\n\t\t\t}\n\t\t\tif (time > 5) {\n\t\t\t\treturn { text: shouldShowName ? t('dashboard', 'Good morning, {name}', { name: this.displayName }) : t('dashboard', 'Good morning') }\n\t\t\t}\n\t\t\treturn { text: shouldShowName ? t('dashboard', 'Good night, {name}', { name: this.displayName }) : t('dashboard', 'Good night') }\n\t\t},\n\t\tisActive() {\n\t\t\treturn (panel) => this.layout.indexOf(panel.id) > -1\n\t\t},\n\t\tisStatusActive() {\n\t\t\treturn (status) => !(status in this.enabledStatuses) || this.enabledStatuses[status]\n\t\t},\n\t\tsortedAllStatuses() {\n\t\t\treturn Object.keys(this.allCallbacksStatus).slice().sort(this.sortStatuses)\n\t\t},\n\t\tsortedPanels() {\n\t\t\treturn Object.values(this.panels).sort((a, b) => {\n\t\t\t\tconst indexA = this.layout.indexOf(a.id)\n\t\t\t\tconst indexB = this.layout.indexOf(b.id)\n\t\t\t\tif (indexA === -1 || indexB === -1) {\n\t\t\t\t\treturn indexB - indexA || a.id - b.id\n\t\t\t\t}\n\t\t\t\treturn indexA - indexB || a.id - b.id\n\t\t\t})\n\t\t},\n\t\tsortedRegisteredStatus() {\n\t\t\treturn this.registeredStatus.slice().sort(this.sortStatuses)\n\t\t},\n\t},\n\twatch: {\n\t\tcallbacks() {\n\t\t\tthis.rerenderPanels()\n\t\t},\n\t\tcallbacksStatus() {\n\t\t\tfor (const app in this.callbacksStatus) {\n\t\t\t\tconst element = this.$refs['status-' + app]\n\t\t\t\tif (this.statuses[app] && this.statuses[app].mounted) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (element) {\n\t\t\t\t\tthis.callbacksStatus[app](element[0])\n\t\t\t\t\tVue.set(this.statuses, app, { mounted: true })\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error('Failed to register panel in the frontend as no backend data was provided for ' + app)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.updateGlobalStyles()\n\t\tthis.updateSkipLink()\n\t\twindow.addEventListener('scroll', this.handleScroll)\n\n\t\tsetInterval(() => {\n\t\t\tthis.timer = new Date()\n\t\t}, 30000)\n\n\t\tif (this.firstRun) {\n\t\t\twindow.addEventListener('scroll', this.disableFirstrunHint)\n\t\t}\n\t},\n\tdestroyed() {\n\t\twindow.removeEventListener('scroll', this.handleScroll)\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Method to register panels that will be called by the integrating apps\n\t\t *\n\t\t * @param {string} app The unique app id for the widget\n\t\t * @param {function} callback The callback function to register a panel which gets the DOM element passed as parameter\n\t\t */\n\t\tregister(app, callback) {\n\t\t\tVue.set(this.callbacks, app, callback)\n\t\t},\n\t\tregisterStatus(app, callback) {\n\t\t\t// always save callbacks in case user enables the status later\n\t\t\tVue.set(this.allCallbacksStatus, app, callback)\n\t\t\t// register only if status is enabled or missing from config\n\t\t\tif (this.isStatusActive(app)) {\n\t\t\t\tthis.registeredStatus.push(app)\n\t\t\t\tthis.$nextTick(() => {\n\t\t\t\t\tVue.set(this.callbacksStatus, app, callback)\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\t\trerenderPanels() {\n\t\t\tfor (const app in this.callbacks) {\n\t\t\t\tconst element = this.$refs[app]\n\t\t\t\tif (this.layout.indexOf(app) === -1) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (this.panels[app] && this.panels[app].mounted) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (element) {\n\t\t\t\t\tthis.callbacks[app](element[0], {\n\t\t\t\t\t\twidget: this.panels[app],\n\t\t\t\t\t})\n\t\t\t\t\tVue.set(this.panels[app], 'mounted', true)\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error('Failed to register panel in the frontend as no backend data was provided for ' + app)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tsaveLayout() {\n\t\t\taxios.post(generateUrl('/apps/dashboard/layout'), {\n\t\t\t\tlayout: this.layout.join(','),\n\t\t\t})\n\t\t},\n\t\tsaveStatuses() {\n\t\t\taxios.post(generateUrl('/apps/dashboard/statuses'), {\n\t\t\t\tstatuses: JSON.stringify(this.enabledStatuses),\n\t\t\t})\n\t\t},\n\t\tshowModal() {\n\t\t\tthis.modal = true\n\t\t\tthis.firstRun = false\n\t\t},\n\t\tcloseModal() {\n\t\t\tthis.modal = false\n\t\t},\n\t\tupdateCheckbox(panel, currentValue) {\n\t\t\tconst index = this.layout.indexOf(panel.id)\n\t\t\tif (!currentValue && index > -1) {\n\t\t\t\tthis.layout.splice(index, 1)\n\n\t\t\t} else {\n\t\t\t\tthis.layout.push(panel.id)\n\t\t\t}\n\t\t\tVue.set(this.panels[panel.id], 'mounted', false)\n\t\t\tthis.saveLayout()\n\t\t\tthis.$nextTick(() => this.rerenderPanels())\n\t\t},\n\t\tdisableFirstrunHint() {\n\t\t\twindow.removeEventListener('scroll', this.disableFirstrunHint)\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.firstRun = false\n\t\t\t}, 1000)\n\t\t},\n\t\tupdateBackground(data) {\n\t\t\tthis.background = data.type === 'custom' || data.type === 'default' ? data.type : data.value\n\t\t\tthis.version = data.version\n\t\t\tthis.updateGlobalStyles()\n\t\t},\n\t\tupdateGlobalStyles() {\n\t\t\tdocument.body.setAttribute('data-dashboard-background', this.background)\n\t\t\tif (window.OCA.Theming.inverted) {\n\t\t\t\tdocument.body.classList.add('dashboard--inverted')\n\t\t\t}\n\n\t\t\tconst shippedBackgroundTheme = shippedBackgroundList[this.background] ? shippedBackgroundList[this.background].theming : 'light'\n\t\t\tif (shippedBackgroundTheme === 'dark') {\n\t\t\t\tdocument.body.classList.add('dashboard--dark')\n\t\t\t} else {\n\t\t\t\tdocument.body.classList.remove('dashboard--dark')\n\t\t\t}\n\t\t},\n\t\tupdateSkipLink() {\n\t\t\t// Make sure \"Skip to main content\" link points to the app content\n\t\t\tdocument.getElementsByClassName('skip-navigation')[0].setAttribute('href', '#app-dashboard')\n\t\t},\n\t\tupdateStatusCheckbox(app, checked) {\n\t\t\tif (checked) {\n\t\t\t\tthis.enableStatus(app)\n\t\t\t} else {\n\t\t\t\tthis.disableStatus(app)\n\t\t\t}\n\t\t},\n\t\tenableStatus(app) {\n\t\t\tthis.enabledStatuses[app] = true\n\t\t\tthis.registerStatus(app, this.allCallbacksStatus[app])\n\t\t\tthis.saveStatuses()\n\t\t},\n\t\tdisableStatus(app) {\n\t\t\tthis.enabledStatuses[app] = false\n\t\t\tconst i = this.registeredStatus.findIndex((s) => s === app)\n\t\t\tif (i !== -1) {\n\t\t\t\tthis.registeredStatus.splice(i, 1)\n\t\t\t\tVue.set(this.statuses, app, { mounted: false })\n\t\t\t\tthis.$nextTick(() => {\n\t\t\t\t\tVue.delete(this.callbacksStatus, app)\n\t\t\t\t})\n\t\t\t}\n\t\t\tthis.saveStatuses()\n\t\t},\n\t\tsortStatuses(a, b) {\n\t\t\tconst al = a.toLowerCase()\n\t\t\tconst bl = b.toLowerCase()\n\t\t\treturn al > bl\n\t\t\t\t? 1\n\t\t\t\t: al < bl\n\t\t\t\t\t? -1\n\t\t\t\t\t: 0\n\t\t},\n\t\thandleScroll() {\n\t\t\tif (window.scrollY > 70) {\n\t\t\t\tdocument.body.classList.add('dashboard--scrolled')\n\t\t\t} else {\n\t\t\t\tdocument.body.classList.remove('dashboard--scrolled')\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n#app-dashboard {\n\twidth: 100%;\n\tbackground-size: cover;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tbackground-attachment: fixed;\n\tbackground-color: var(--color-primary);\n\t--color-background-translucent: rgba(255, 255, 255, 0.8);\n\t--background-blur: blur(10px);\n\n\t#body-user.theme--dark & {\n\t\tbackground-color: var(--color-main-background);\n\t\t--color-background-translucent: rgba(24, 24, 24, 0.8);\n\t}\n\n\t#body-user.theme--highcontrast & {\n\t\tbackground-color: var(--color-main-background);\n\t\t--color-background-translucent: var(--color-main-background);\n\t}\n\n\t> h2 {\n\t\tcolor: var(--color-primary-text);\n\t\ttext-align: center;\n\t\tfont-size: 32px;\n\t\tline-height: 130%;\n\t\tpadding: 10vh 16px 0px;\n\t}\n}\n\n.panels {\n\twidth: auto;\n\tmargin: auto;\n\tmax-width: 1500px;\n\tdisplay: flex;\n\tjustify-content: center;\n\tflex-direction: row;\n\talign-items: flex-start;\n\tflex-wrap: wrap;\n}\n\n.panel, .panels > div {\n\twidth: 320px;\n\tmax-width: 100%;\n\tmargin: 16px;\n\tbackground-color: var(--color-background-translucent);\n\t-webkit-backdrop-filter: var(--background-blur);\n\tbackdrop-filter: var(--background-blur);\n\tborder-radius: var(--border-radius-large);\n\n\t#body-user.theme--highcontrast & {\n\t\tborder: 2px solid var(--color-border);\n\t}\n\n\t&.sortable-ghost {\n\t\t opacity: 0.1;\n\t}\n\n\t& > .panel--header {\n\t\tdisplay: flex;\n\t\tz-index: 1;\n\t\ttop: 50px;\n\t\tpadding: 16px;\n\t\tcursor: grab;\n\n\t\t&, ::v-deep * {\n\t\t\t-webkit-touch-callout: none;\n\t\t\t-webkit-user-select: none;\n\t\t\t-khtml-user-select: none;\n\t\t\t-moz-user-select: none;\n\t\t\t-ms-user-select: none;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&:active {\n\t\t\tcursor: grabbing;\n\t\t}\n\n\t\ta {\n\t\t\tflex-grow: 1;\n\t\t}\n\n\t\t> h2 {\n\t\t\tdisplay: block;\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 0;\n\t\t\tfont-size: 20px;\n\t\t\tline-height: 24px;\n\t\t\tfont-weight: bold;\n\t\t\tbackground-size: 32px;\n\t\t\tbackground-position: 14px 12px;\n\t\t\tpadding: 16px 8px 16px 60px;\n\t\t\theight: 56px;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tcursor: grab;\n\t\t}\n\t}\n\n\t& > .panel--content {\n\t\tmargin: 0 16px 16px 16px;\n\t\theight: 420px;\n\t\t// We specifically do not want scrollbars inside widgets\n\t\toverflow: hidden;\n\t}\n\n\t// No need to extend height of widgets if only one column is shown\n\t@media only screen and (max-width: 709px) {\n\t\t& > .panel--content {\n\t\t\theight: auto;\n\t\t}\n\t}\n}\n\n.footer {\n\ttext-align: center;\n\ttransition: bottom var(--animation-slow) ease-in-out;\n\tbottom: 0;\n\tpadding: 44px 0;\n}\n\n.edit-panels {\n\tdisplay: inline-block;\n\tmargin:auto;\n\tbackground-position: 16px center;\n\tpadding: 12px 16px;\n\tpadding-left: 36px;\n\tborder-radius: var(--border-radius-pill);\n\tmax-width: 200px;\n\topacity: 1;\n\ttext-align: center;\n}\n\n.edit-panels,\n.statuses ::v-deep .action-item .action-item__menutoggle,\n.statuses ::v-deep .action-item.action-item--open .action-item__menutoggle {\n\tbackground-color: var(--color-background-translucent);\n\t-webkit-backdrop-filter: var(--background-blur);\n\tbackdrop-filter: var(--background-blur);\n\n\t&:hover,\n\t&:focus,\n\t&:active {\n\t\tbackground-color: var(--color-background-hover);\n\t}\n}\n\n.modal__content {\n\tpadding: 32px 16px;\n\tmax-height: 70vh;\n\ttext-align: center;\n\toverflow: auto;\n\n\tol {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tjustify-content: center;\n\t\tlist-style-type: none;\n\t\tpadding-bottom: 16px;\n\t}\n\tli {\n\t\tlabel {\n\t\t\tdisplay: block;\n\t\t\tpadding: 48px 8px 16px 8px;\n\t\t\tmargin: 8px;\n\t\t\twidth: 160px;\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t\tborder: 2px solid var(--color-main-background);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\tbackground-size: 24px;\n\t\t\tbackground-position: center 16px;\n\t\t\ttext-align: center;\n\n\t\t\t&:hover {\n\t\t\t\tborder-color: var(--color-primary);\n\t\t\t}\n\t\t}\n\n\t\tinput:focus + label {\n\t\t\tborder-color: var(--color-primary);\n\t\t}\n\t}\n\n\th3 {\n\t\tfont-weight: bold;\n\n\t\t&:not(:first-of-type) {\n\t\t\tmargin-top: 64px;\n\t\t}\n\t}\n\n\t// Adjust design of 'Get more widgets' button\n\t.button {\n\t\tdisplay: inline-block;\n\t\tpadding: 10px 16px;\n\t\tmargin: 0;\n\t}\n\n\tp {\n\t\tmax-width: 650px;\n\t\tmargin: 0 auto;\n\n\t\ta:hover,\n\t\ta:focus {\n\t\t\tborder-bottom: 2px solid var(--color-border);\n\t\t}\n\t}\n\n\t.credits--end {\n\t\tpadding-bottom: 32px;\n\t\tcolor: var(--color-text-maxcontrast);\n\n\t\ta {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n}\n\n.flip-list-move {\n\ttransition: transform var(--animation-slow);\n}\n\n.statuses {\n\tdisplay: flex;\n\tflex-direction: row;\n\tjustify-content: center;\n\tflex-wrap: wrap;\n\tmargin-bottom: 36px;\n\n\t& > div {\n\t\tmargin: 8px;\n\t}\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=0ebea47a&scoped=true&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=0ebea47a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0ebea47a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{style:(_vm.backgroundStyle),attrs:{\"id\":\"app-dashboard\"}},[_c('h2',[_vm._v(_vm._s(_vm.greeting.text))]),_vm._v(\" \"),_c('ul',{staticClass:\"statuses\"},_vm._l((_vm.sortedRegisteredStatus),function(status){return _c('div',{key:status,attrs:{\"id\":'status-' + status}},[_c('div',{ref:'status-' + status,refInFor:true})])}),0),_vm._v(\" \"),_c('Draggable',{staticClass:\"panels\",attrs:{\"handle\":\".panel--header\"},on:{\"end\":_vm.saveLayout},model:{value:(_vm.layout),callback:function ($$v) {_vm.layout=$$v},expression:\"layout\"}},_vm._l((_vm.layout),function(panelId){return _c('div',{key:_vm.panels[panelId].id,staticClass:\"panel\"},[_c('div',{staticClass:\"panel--header\"},[_c('h2',{class:_vm.panels[panelId].iconClass},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.panels[panelId].title)+\"\\n\\t\\t\\t\\t\")])]),_vm._v(\" \"),_c('div',{staticClass:\"panel--content\",class:{ loading: !_vm.panels[panelId].mounted }},[_c('div',{ref:_vm.panels[panelId].id,refInFor:true,attrs:{\"data-id\":_vm.panels[panelId].id}})])])}),0),_vm._v(\" \"),_c('div',{staticClass:\"footer\"},[_c('a',{staticClass:\"edit-panels icon-rename\",attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.showModal,\"keyup\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.showModal($event)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"space\",32,$event.key,[\" \",\"Spacebar\"])){ return null; }return _vm.showModal($event)}]}},[_vm._v(_vm._s(_vm.t('dashboard', 'Customize')))])]),_vm._v(\" \"),(_vm.modal)?_c('Modal',{on:{\"close\":_vm.closeModal}},[_c('div',{staticClass:\"modal__content\"},[_c('h3',[_vm._v(_vm._s(_vm.t('dashboard', 'Edit widgets')))]),_vm._v(\" \"),_c('ol',{staticClass:\"panels\"},_vm._l((_vm.sortedAllStatuses),function(status){return _c('li',{key:status},[_c('input',{staticClass:\"checkbox\",attrs:{\"id\":'status-checkbox-' + status,\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isStatusActive(status)},on:{\"input\":function($event){return _vm.updateStatusCheckbox(status, $event.target.checked)}}}),_vm._v(\" \"),_c('label',{class:_vm.statusInfo[status].icon,attrs:{\"for\":'status-checkbox-' + status}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.statusInfo[status].text)+\"\\n\\t\\t\\t\\t\\t\")])])}),0),_vm._v(\" \"),_c('Draggable',{staticClass:\"panels\",attrs:{\"tag\":\"ol\",\"handle\":\".draggable\"},on:{\"end\":_vm.saveLayout},model:{value:(_vm.layout),callback:function ($$v) {_vm.layout=$$v},expression:\"layout\"}},_vm._l((_vm.sortedPanels),function(panel){return _c('li',{key:panel.id},[_c('input',{staticClass:\"checkbox\",attrs:{\"id\":'panel-checkbox-' + panel.id,\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isActive(panel)},on:{\"input\":function($event){return _vm.updateCheckbox(panel, $event.target.checked)}}}),_vm._v(\" \"),_c('label',{class:_vm.isActive(panel) ? 'draggable ' + panel.iconClass : panel.iconClass,attrs:{\"for\":'panel-checkbox-' + panel.id}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(panel.title)+\"\\n\\t\\t\\t\\t\\t\")])])}),0),_vm._v(\" \"),(_vm.isAdmin)?_c('a',{staticClass:\"button\",attrs:{\"href\":_vm.appStoreUrl}},[_vm._v(_vm._s(_vm.t('dashboard', 'Get more widgets from the app store')))]):_vm._e(),_vm._v(\" \"),_c('h3',[_vm._v(_vm._s(_vm.t('dashboard', 'Change background image')))]),_vm._v(\" \"),_c('BackgroundSettings',{attrs:{\"background\":_vm.background},on:{\"update:background\":_vm.updateBackground}}),_vm._v(\" \"),_c('h3',[_vm._v(_vm._s(_vm.t('dashboard', 'Weather service')))]),_vm._v(\" \"),_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('dashboard', 'For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('p',{staticClass:\"credits--end\"},[_c('a',{attrs:{\"href\":\"https://api.met.no/doc/TermsOfService\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'Weather data from Met.no')))]),_vm._v(\",\\n\\t\\t\\t\\t\"),_c('a',{attrs:{\"href\":\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'geocoding with Nominatim')))]),_vm._v(\",\\n\\t\\t\\t\\t\"),_c('a',{attrs:{\"href\":\"https://www.opentopodata.org/#public-api\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'elevation data from OpenTopoData')))]),_vm._v(\".\\n\\t\\t\\t\")])],1)]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue'\nimport App from './App.vue'\nimport { translate as t } from '@nextcloud/l10n'\nimport VTooltip from '@nextcloud/vue/dist/Directives/Tooltip'\nimport { getRequestToken } from '@nextcloud/auth'\nimport { generateFilePath } from '@nextcloud/router'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n// eslint-disable-next-line camelcase\n__webpack_public_path__ = generateFilePath('dashboard', '', 'js/')\n\nVue.directive('Tooltip', VTooltip)\n\nVue.prototype.t = t\n\n// FIXME workaround to make the sidebar work\nObject.assign(window.OCA.Files, { App: { fileList: { filesClient: OC.Files.getClient() } } }, window.OCA.Files)\n\nconst Dashboard = Vue.extend(App)\nconst Instance = new Dashboard({}).$mount('#app-content-vue')\n\nwindow.OCA.Dashboard = {\n\tregister: (app, callback) => Instance.register(app, callback),\n\tregisterStatus: (app, callback) => Instance.registerStatus(app, callback),\n}\n","export default function requiredArgs(required, args) {\n if (args.length < required) {\n throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');\n }\n}","import requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @param {Date|Number} argument - the value to convert\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\n\nexport default function toDate(argument) {\n requiredArgs(1, arguments);\n var argStr = Object.prototype.toString.call(argument); // Clone the date\n\n if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime());\n } else if (typeof argument === 'number' || argStr === '[object Number]') {\n return new Date(argument);\n } else {\n if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn(\"Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule\"); // eslint-disable-next-line no-console\n\n console.warn(new Error().stack);\n }\n\n return new Date(NaN);\n }\n}","import toDate from '../toDate/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name startOfYear\n * @category Year Helpers\n * @summary Return the start of a year for the given date.\n *\n * @description\n * Return the start of a year for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a year for 2 September 2014 11:55:00:\n * var result = startOfYear(new Date(2014, 8, 2, 11, 55, 00))\n * //=> Wed Jan 01 2014 00:00:00\n */\n\nexport default function startOfYear(dirtyDate) {\n requiredArgs(1, arguments);\n var cleanDate = toDate(dirtyDate);\n var date = new Date(0);\n date.setFullYear(cleanDate.getFullYear(), 0, 1);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import toDate from '../toDate/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name startOfMonth\n * @category Month Helpers\n * @summary Return the start of a month for the given date.\n *\n * @description\n * Return the start of a month for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a month for 2 September 2014 11:55:00:\n * var result = startOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Mon Sep 01 2014 00:00:00\n */\n\nexport default function startOfMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setDate(1);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import toDate from '../toDate/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * var result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\n\nexport default function startOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(0, 0, 0, 0);\n return date;\n}","export default function toInteger(dirtyNumber) {\n if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {\n return NaN;\n }\n\n var number = Number(dirtyNumber);\n\n if (isNaN(number)) {\n return number;\n }\n\n return number < 0 ? Math.ceil(number) : Math.floor(number);\n}","import toInteger from '../_lib/toInteger/index.js';\nimport toDate from '../toDate/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name addMonths\n * @category Month Helpers\n * @summary Add the specified number of months to the given date.\n *\n * @description\n * Add the specified number of months to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the months added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 months to 1 September 2014:\n * var result = addMonths(new Date(2014, 8, 1), 5)\n * //=> Sun Feb 01 2015 00:00:00\n */\n\nexport default function addMonths(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n\n if (!amount) {\n // If 0 months, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n\n var dayOfMonth = date.getDate(); // The JS Date object supports date math by accepting out-of-bounds values for\n // month, day, etc. For example, new Date(2020, 1, 0) returns 31 Dec 2019 and\n // new Date(2020, 13, 1) returns 1 Feb 2021. This is *almost* the behavior we\n // want except that dates will wrap around the end of a month, meaning that\n // new Date(2020, 13, 31) will return 3 Mar 2021 not 28 Feb 2021 as desired. So\n // we'll default to the end of the desired month by adding 1 to the desired\n // month and using a date of 0 to back up one day to the end of the desired\n // month.\n\n var endOfDesiredMonth = new Date(date.getTime());\n endOfDesiredMonth.setMonth(date.getMonth() + amount + 1, 0);\n var daysInMonth = endOfDesiredMonth.getDate();\n\n if (dayOfMonth >= daysInMonth) {\n // If we're already at the end of the month, then this is the correct date\n // and we're done.\n return endOfDesiredMonth;\n } else {\n // Otherwise, we now know that setting the original day-of-month value won't\n // cause an overflow, so set the desired day-of-month. Note that we can't\n // just set the date of `endOfDesiredMonth` because that object may have had\n // its time changed in the unusual case where where a DST transition was on\n // the last day of the month and its local time was in the hour skipped or\n // repeated next to a DST transition. So we use `date` instead which is\n // guaranteed to still have the original time.\n date.setFullYear(endOfDesiredMonth.getFullYear(), endOfDesiredMonth.getMonth(), dayOfMonth);\n return date;\n }\n}","import toInteger from '../_lib/toInteger/index.js';\nimport addMonths from '../addMonths/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name subMonths\n * @category Month Helpers\n * @summary Subtract the specified number of months from the given date.\n *\n * @description\n * Subtract the specified number of months from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the months subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 5 months from 1 February 2015:\n * var result = subMonths(new Date(2015, 1, 1), 5)\n * //=> Mon Sep 01 2014 00:00:00\n */\n\nexport default function subMonths(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMonths(dirtyDate, -amount);\n}","import toInteger from '../_lib/toInteger/index.js';\nimport addMonths from '../addMonths/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name addYears\n * @category Year Helpers\n * @summary Add the specified number of years to the given date.\n *\n * @description\n * Add the specified number of years to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of years to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the years added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 years to 1 September 2014:\n * var result = addYears(new Date(2014, 8, 1), 5)\n * //=> Sun Sep 01 2019 00:00:00\n */\n\nexport default function addYears(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMonths(dirtyDate, amount * 12);\n}","import toInteger from '../_lib/toInteger/index.js';\nimport toDate from '../toDate/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name setYear\n * @category Year Helpers\n * @summary Set the year to the given date.\n *\n * @description\n * Set the year to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} year - the year of the new date\n * @returns {Date} the new date with the year set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set year 2013 to 1 September 2014:\n * var result = setYear(new Date(2014, 8, 1), 2013)\n * //=> Sun Sep 01 2013 00:00:00\n */\n\nexport default function setYear(dirtyDate, dirtyYear) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var year = toInteger(dirtyYear); // Check if date is Invalid Date because Date.prototype.setFullYear ignores the value of Invalid Date\n\n if (isNaN(date)) {\n return new Date(NaN);\n }\n\n date.setFullYear(year);\n return date;\n}","import toDate from '../toDate/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name getDaysInMonth\n * @category Month Helpers\n * @summary Get the number of days in a month of the given date.\n *\n * @description\n * Get the number of days in a month of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the number of days in a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // How many days are in February 2000?\n * var result = getDaysInMonth(new Date(2000, 1))\n * //=> 29\n */\n\nexport default function getDaysInMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getFullYear();\n var monthIndex = date.getMonth();\n var lastDayOfMonth = new Date(0);\n lastDayOfMonth.setFullYear(year, monthIndex + 1, 0);\n lastDayOfMonth.setHours(0, 0, 0, 0);\n return lastDayOfMonth.getDate();\n}","import toInteger from '../_lib/toInteger/index.js';\nimport toDate from '../toDate/index.js';\nimport getDaysInMonth from '../getDaysInMonth/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name setMonth\n * @category Month Helpers\n * @summary Set the month to the given date.\n *\n * @description\n * Set the month to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} month - the month of the new date\n * @returns {Date} the new date with the month set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set February to 1 September 2014:\n * var result = setMonth(new Date(2014, 8, 1), 1)\n * //=> Sat Feb 01 2014 00:00:00\n */\n\nexport default function setMonth(dirtyDate, dirtyMonth) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var month = toInteger(dirtyMonth);\n var year = date.getFullYear();\n var day = date.getDate();\n var dateWithDesiredMonth = new Date(0);\n dateWithDesiredMonth.setFullYear(year, month, 15);\n dateWithDesiredMonth.setHours(0, 0, 0, 0);\n var daysInMonth = getDaysInMonth(dateWithDesiredMonth); // Set the last day of the new month\n // if the original date was the last day of the longer month\n\n date.setMonth(month, Math.min(day, daysInMonth));\n return date;\n}","import { subMonths, addMonths, subYears, addYears, setYear, setMonth, startOfYear, startOfMonth, startOfDay, differenceInCalendarMonths } from 'date-fns';\n\nfunction _typeof(obj) {\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 _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\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(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(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) {\n return;\n }\n\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n}\n\nfunction isDate(value) {\n return value instanceof Date || Object.prototype.toString.call(value) === '[object Date]';\n}\nfunction toDate(value) {\n if (isDate(value)) {\n return new Date(value.getTime());\n }\n\n if (value == null) {\n return new Date(NaN);\n }\n\n return new Date(value);\n}\nfunction isValidDate(value) {\n return isDate(value) && !isNaN(value.getTime());\n}\nfunction startOfWeek(value) {\n var firstDayOfWeek = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n if (!(firstDayOfWeek >= 0 && firstDayOfWeek <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6');\n }\n\n var date = toDate(value);\n var day = date.getDay();\n var diff = (day + 7 - firstDayOfWeek) % 7;\n date.setDate(date.getDate() - diff);\n date.setHours(0, 0, 0, 0);\n return date;\n}\nfunction startOfWeekYear(value) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$firstDayOfWeek = _ref.firstDayOfWeek,\n firstDayOfWeek = _ref$firstDayOfWeek === void 0 ? 0 : _ref$firstDayOfWeek,\n _ref$firstWeekContain = _ref.firstWeekContainsDate,\n firstWeekContainsDate = _ref$firstWeekContain === void 0 ? 1 : _ref$firstWeekContain;\n\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7');\n }\n\n var date = toDate(value);\n var year = date.getFullYear();\n var firstDateOfFirstWeek = new Date(0);\n\n for (var i = year + 1; i >= year - 1; i--) {\n firstDateOfFirstWeek.setFullYear(i, 0, firstWeekContainsDate);\n firstDateOfFirstWeek.setHours(0, 0, 0, 0);\n firstDateOfFirstWeek = startOfWeek(firstDateOfFirstWeek, firstDayOfWeek);\n\n if (date.getTime() >= firstDateOfFirstWeek.getTime()) {\n break;\n }\n }\n\n return firstDateOfFirstWeek;\n}\nfunction getWeek(value) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref2$firstDayOfWeek = _ref2.firstDayOfWeek,\n firstDayOfWeek = _ref2$firstDayOfWeek === void 0 ? 0 : _ref2$firstDayOfWeek,\n _ref2$firstWeekContai = _ref2.firstWeekContainsDate,\n firstWeekContainsDate = _ref2$firstWeekContai === void 0 ? 1 : _ref2$firstWeekContai;\n\n var date = toDate(value);\n var firstDateOfThisWeek = startOfWeek(date, firstDayOfWeek);\n var firstDateOfFirstWeek = startOfWeekYear(date, {\n firstDayOfWeek: firstDayOfWeek,\n firstWeekContainsDate: firstWeekContainsDate\n });\n var diff = firstDateOfThisWeek.getTime() - firstDateOfFirstWeek.getTime();\n return Math.round(diff / (7 * 24 * 3600 * 1000)) + 1;\n}\n\nvar locale = {\n months: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],\n monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n weekdays: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n weekdaysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n weekdaysMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n firstDayOfWeek: 0,\n firstWeekContainsDate: 1\n};\n\nvar REGEX_FORMAT = /\\[([^\\]]+)]|YYYY|YY?|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|m{1,2}|s{1,2}|Z{1,2}|S{1,3}|w{1,2}|x|X|a|A/g;\n\nfunction pad(val) {\n var len = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n var output = \"\".concat(Math.abs(val));\n var sign = val < 0 ? '-' : '';\n\n while (output.length < len) {\n output = \"0\".concat(output);\n }\n\n return sign + output;\n}\n\nfunction formatTimezone(offset) {\n var delimeter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = Math.floor(absOffset / 60);\n var minutes = absOffset % 60;\n return sign + pad(hours, 2) + delimeter + pad(minutes, 2);\n}\n\nvar meridiem = function meridiem(h, _, isLowercase) {\n var word = h < 12 ? 'AM' : 'PM';\n return isLowercase ? word.toLocaleLowerCase() : word;\n};\n\nvar formatFlags = {\n Y: function Y(date) {\n var y = date.getFullYear();\n return y <= 9999 ? \"\".concat(y) : \"+\".concat(y);\n },\n // Year: 00, 01, ..., 99\n YY: function YY(date) {\n return pad(date.getFullYear(), 4).substr(2);\n },\n // Year: 1900, 1901, ..., 2099\n YYYY: function YYYY(date) {\n return pad(date.getFullYear(), 4);\n },\n // Month: 1, 2, ..., 12\n M: function M(date) {\n return date.getMonth() + 1;\n },\n // Month: 01, 02, ..., 12\n MM: function MM(date) {\n return pad(date.getMonth() + 1, 2);\n },\n MMM: function MMM(date, locale) {\n return locale.monthsShort[date.getMonth()];\n },\n MMMM: function MMMM(date, locale) {\n return locale.months[date.getMonth()];\n },\n // Day of month: 1, 2, ..., 31\n D: function D(date) {\n return date.getDate();\n },\n // Day of month: 01, 02, ..., 31\n DD: function DD(date) {\n return pad(date.getDate(), 2);\n },\n // Hour: 0, 1, ... 23\n H: function H(date) {\n return date.getHours();\n },\n // Hour: 00, 01, ..., 23\n HH: function HH(date) {\n return pad(date.getHours(), 2);\n },\n // Hour: 1, 2, ..., 12\n h: function h(date) {\n var hours = date.getHours();\n\n if (hours === 0) {\n return 12;\n }\n\n if (hours > 12) {\n return hours % 12;\n }\n\n return hours;\n },\n // Hour: 01, 02, ..., 12\n hh: function hh() {\n var hours = formatFlags.h.apply(formatFlags, arguments);\n return pad(hours, 2);\n },\n // Minute: 0, 1, ..., 59\n m: function m(date) {\n return date.getMinutes();\n },\n // Minute: 00, 01, ..., 59\n mm: function mm(date) {\n return pad(date.getMinutes(), 2);\n },\n // Second: 0, 1, ..., 59\n s: function s(date) {\n return date.getSeconds();\n },\n // Second: 00, 01, ..., 59\n ss: function ss(date) {\n return pad(date.getSeconds(), 2);\n },\n // 1/10 of second: 0, 1, ..., 9\n S: function S(date) {\n return Math.floor(date.getMilliseconds() / 100);\n },\n // 1/100 of second: 00, 01, ..., 99\n SS: function SS(date) {\n return pad(Math.floor(date.getMilliseconds() / 10), 2);\n },\n // Millisecond: 000, 001, ..., 999\n SSS: function SSS(date) {\n return pad(date.getMilliseconds(), 3);\n },\n // Day of week: 0, 1, ..., 6\n d: function d(date) {\n return date.getDay();\n },\n // Day of week: 'Su', 'Mo', ..., 'Sa'\n dd: function dd(date, locale) {\n return locale.weekdaysMin[date.getDay()];\n },\n // Day of week: 'Sun', 'Mon',..., 'Sat'\n ddd: function ddd(date, locale) {\n return locale.weekdaysShort[date.getDay()];\n },\n // Day of week: 'Sunday', 'Monday', ...,'Saturday'\n dddd: function dddd(date, locale) {\n return locale.weekdays[date.getDay()];\n },\n // AM, PM\n A: function A(date, locale) {\n var meridiemFunc = locale.meridiem || meridiem;\n return meridiemFunc(date.getHours(), date.getMinutes(), false);\n },\n // am, pm\n a: function a(date, locale) {\n var meridiemFunc = locale.meridiem || meridiem;\n return meridiemFunc(date.getHours(), date.getMinutes(), true);\n },\n // Timezone: -01:00, +00:00, ... +12:00\n Z: function Z(date) {\n return formatTimezone(date.getTimezoneOffset(), ':');\n },\n // Timezone: -0100, +0000, ... +1200\n ZZ: function ZZ(date) {\n return formatTimezone(date.getTimezoneOffset());\n },\n // Seconds timestamp: 512969520\n X: function X(date) {\n return Math.floor(date.getTime() / 1000);\n },\n // Milliseconds timestamp: 512969520900\n x: function x(date) {\n return date.getTime();\n },\n w: function w(date, locale) {\n return getWeek(date, {\n firstDayOfWeek: locale.firstDayOfWeek,\n firstWeekContainsDate: locale.firstWeekContainsDate\n });\n },\n ww: function ww(date, locale) {\n return pad(formatFlags.w(date, locale), 2);\n }\n};\n\nfunction format(val, str) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var formatStr = str ? String(str) : 'YYYY-MM-DDTHH:mm:ss.SSSZ';\n var date = toDate(val);\n\n if (!isValidDate(date)) {\n return 'Invalid Date';\n }\n\n var locale$1 = options.locale || locale;\n return formatStr.replace(REGEX_FORMAT, function (match, p1) {\n if (p1) {\n return p1;\n }\n\n if (typeof formatFlags[match] === 'function') {\n return \"\".concat(formatFlags[match](date, locale$1));\n }\n\n return match;\n });\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}\n\nfunction ownKeys$1(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 _objectSpread(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$1(source, true).forEach(function (key) {\n _defineProperty$1(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys$1(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _slicedToArray$1(arr, i) {\n return _arrayWithHoles$1(arr) || _iterableToArrayLimit$1(arr, i) || _nonIterableRest$1();\n}\n\nfunction _nonIterableRest$1() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n}\n\nfunction _iterableToArrayLimit$1(arr, i) {\n if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) {\n return;\n }\n\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _arrayWithHoles$1(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _defineProperty$1(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}\nvar formattingTokens = /(\\[[^\\[]*\\])|(MM?M?M?|Do|DD?|ddd?d?|w[o|w]?|YYYY|YY|a|A|hh?|HH?|mm?|ss?|S{1,3}|x|X|ZZ?|.)/g;\nvar match1 = /\\d/; // 0 - 9\n\nvar match2 = /\\d\\d/; // 00 - 99\n\nvar match3 = /\\d{3}/; // 000 - 999\n\nvar match4 = /\\d{4}/; // 0000 - 9999\n\nvar match1to2 = /\\d\\d?/; // 0 - 99\n\nvar matchShortOffset = /[+-]\\d\\d:?\\d\\d/; // +00:00 -00:00 +0000 or -0000\n\nvar matchSigned = /[+-]?\\d+/; // -inf - inf\n\nvar matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/; // 123456789 123456789.123\n\nvar matchWord = /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i; // Word\n\nvar YEAR = 'year';\nvar MONTH = 'month';\nvar DAY = 'day';\nvar HOUR = 'hour';\nvar MINUTE = 'minute';\nvar SECOND = 'second';\nvar MILLISECOND = 'millisecond';\nvar parseFlags = {};\n\nvar addParseFlag = function addParseFlag(token, regex, callback) {\n var tokens = Array.isArray(token) ? token : [token];\n var func;\n\n if (typeof callback === 'string') {\n func = function func(input) {\n var value = parseInt(input, 10);\n return _defineProperty$1({}, callback, value);\n };\n } else {\n func = callback;\n }\n\n tokens.forEach(function (key) {\n parseFlags[key] = [regex, func];\n });\n};\n\nvar matchWordCallback = function matchWordCallback(localeKey, key) {\n return function (input, locale) {\n var array = locale[localeKey];\n\n if (!Array.isArray(array)) {\n throw new Error(\"Locale[\".concat(localeKey, \"] need an array\"));\n }\n\n var index = array.indexOf(input);\n\n if (index < 0) {\n throw new Error('Invalid Word');\n }\n\n return _defineProperty$1({}, key, index);\n };\n};\n\naddParseFlag('Y', matchSigned, YEAR);\naddParseFlag('YY', match2, function (input) {\n var year = new Date().getFullYear();\n var cent = Math.floor(year / 100);\n var value = parseInt(input, 10);\n value = (value > 68 ? cent - 1 : cent) * 100 + value;\n return _defineProperty$1({}, YEAR, value);\n});\naddParseFlag('YYYY', match4, YEAR);\naddParseFlag('M', match1to2, function (input) {\n return _defineProperty$1({}, MONTH, parseInt(input, 10) - 1);\n});\naddParseFlag('MM', match2, function (input) {\n return _defineProperty$1({}, MONTH, parseInt(input, 10) - 1);\n});\naddParseFlag('MMM', matchWord, matchWordCallback('monthsShort', MONTH));\naddParseFlag('MMMM', matchWord, matchWordCallback('months', MONTH));\naddParseFlag('D', match1to2, DAY);\naddParseFlag('DD', match2, DAY);\naddParseFlag(['H', 'h'], match1to2, HOUR);\naddParseFlag(['HH', 'hh'], match2, HOUR);\naddParseFlag('m', match1to2, MINUTE);\naddParseFlag('mm', match2, MINUTE);\naddParseFlag('s', match1to2, SECOND);\naddParseFlag('ss', match2, SECOND);\naddParseFlag('S', match1, function (input) {\n return _defineProperty$1({}, MILLISECOND, parseInt(input, 10) * 100);\n});\naddParseFlag('SS', match2, function (input) {\n return _defineProperty$1({}, MILLISECOND, parseInt(input, 10) * 10);\n});\naddParseFlag('SSS', match3, MILLISECOND);\n\nfunction matchMeridiem(locale) {\n return locale.meridiemParse || /[ap]\\.?m?\\.?/i;\n}\n\nfunction defaultIsPM(input) {\n return \"\".concat(input).toLowerCase().charAt(0) === 'p';\n}\n\naddParseFlag(['A', 'a'], matchMeridiem, function (input, locale) {\n var isPM = typeof locale.isPM === 'function' ? locale.isPM(input) : defaultIsPM(input);\n return {\n isPM: isPM\n };\n});\n\nfunction offsetFromString(str) {\n var _ref8 = str.match(/([+-]|\\d\\d)/g) || ['-', '0', '0'],\n _ref9 = _slicedToArray$1(_ref8, 3),\n symbol = _ref9[0],\n hour = _ref9[1],\n minute = _ref9[2];\n\n var minutes = parseInt(hour, 10) * 60 + parseInt(minute, 10);\n\n if (minutes === 0) {\n return 0;\n }\n\n return symbol === '+' ? -minutes : +minutes;\n}\n\naddParseFlag(['Z', 'ZZ'], matchShortOffset, function (input) {\n return {\n offset: offsetFromString(input)\n };\n});\naddParseFlag('x', matchSigned, function (input) {\n return {\n date: new Date(parseInt(input, 10))\n };\n});\naddParseFlag('X', matchTimestamp, function (input) {\n return {\n date: new Date(parseFloat(input) * 1000)\n };\n});\naddParseFlag('d', match1, 'weekday');\naddParseFlag('dd', matchWord, matchWordCallback('weekdaysMin', 'weekday'));\naddParseFlag('ddd', matchWord, matchWordCallback('weekdaysShort', 'weekday'));\naddParseFlag('dddd', matchWord, matchWordCallback('weekdays', 'weekday'));\naddParseFlag('w', match1to2, 'week');\naddParseFlag('ww', match2, 'week');\n\nfunction to24hour(hour, isPM) {\n if (hour !== undefined && isPM !== undefined) {\n if (isPM) {\n if (hour < 12) {\n return hour + 12;\n }\n } else if (hour === 12) {\n return 0;\n }\n }\n\n return hour;\n}\n\nfunction getFullInputArray(input) {\n var backupDate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Date();\n var result = [0, 0, 1, 0, 0, 0, 0];\n var backupArr = [backupDate.getFullYear(), backupDate.getMonth(), backupDate.getDate(), backupDate.getHours(), backupDate.getMinutes(), backupDate.getSeconds(), backupDate.getMilliseconds()];\n var useBackup = true;\n\n for (var i = 0; i < 7; i++) {\n if (input[i] === undefined) {\n result[i] = useBackup ? backupArr[i] : result[i];\n } else {\n result[i] = input[i];\n useBackup = false;\n }\n }\n\n return result;\n}\n\nfunction createUTCDate() {\n var date;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var y = args[0];\n\n if (y < 100 && y >= 0) {\n args[0] += 400;\n date = new Date(Date.UTC.apply(Date, args)); // eslint-disable-next-line no-restricted-globals\n\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(Date, args));\n }\n\n return date;\n}\n\nfunction makeParser(dateString, format, locale) {\n var tokens = format.match(formattingTokens);\n\n if (!tokens) {\n throw new Error();\n }\n\n var length = tokens.length;\n var mark = {};\n\n for (var i = 0; i < length; i += 1) {\n var token = tokens[i];\n var parseTo = parseFlags[token];\n\n if (!parseTo) {\n var word = token.replace(/^\\[|\\]$/g, '');\n\n if (dateString.indexOf(word) === 0) {\n dateString = dateString.substr(word.length);\n } else {\n throw new Error('not match');\n }\n } else {\n var regex = typeof parseTo[0] === 'function' ? parseTo[0](locale) : parseTo[0];\n var parser = parseTo[1];\n var value = (regex.exec(dateString) || [])[0];\n var obj = parser(value, locale);\n mark = _objectSpread({}, mark, {}, obj);\n dateString = dateString.replace(value, '');\n }\n }\n\n return mark;\n}\n\nfunction parse(str, format) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n try {\n var _options$locale = options.locale,\n _locale = _options$locale === void 0 ? locale : _options$locale,\n _options$backupDate = options.backupDate,\n backupDate = _options$backupDate === void 0 ? new Date() : _options$backupDate;\n\n var parseResult = makeParser(str, format, _locale);\n var year = parseResult.year,\n month = parseResult.month,\n day = parseResult.day,\n hour = parseResult.hour,\n minute = parseResult.minute,\n second = parseResult.second,\n millisecond = parseResult.millisecond,\n isPM = parseResult.isPM,\n date = parseResult.date,\n offset = parseResult.offset,\n weekday = parseResult.weekday,\n week = parseResult.week;\n\n if (date) {\n return date;\n }\n\n var inputArray = [year, month, day, hour, minute, second, millisecond];\n inputArray[3] = to24hour(inputArray[3], isPM); // check week\n\n if (week !== undefined && month === undefined && day === undefined) {\n // new Date(year, 3) make sure in current year\n var firstDate = startOfWeekYear(year === undefined ? backupDate : new Date(year, 3), {\n firstDayOfWeek: _locale.firstDayOfWeek,\n firstWeekContainsDate: _locale.firstWeekContainsDate\n });\n return new Date(firstDate.getTime() + (week - 1) * 7 * 24 * 3600 * 1000);\n }\n\n var utcDate = createUTCDate.apply(void 0, _toConsumableArray(getFullInputArray(inputArray, backupDate)));\n var offsetMilliseconds = (offset === undefined ? utcDate.getTimezoneOffset() : offset) * 60 * 1000;\n var parsedDate = new Date(utcDate.getTime() + offsetMilliseconds); // check weekday\n\n if (weekday !== undefined && parsedDate.getDay() !== weekday) {\n return new Date(NaN);\n }\n\n return parsedDate;\n } catch (e) {\n return new Date(NaN);\n }\n}\n\n// new Date(10, 0, 1) The year from 0 to 99 will be incremented by 1900 automatically.\nfunction createDate(y) {\n var M = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var d = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var h = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var m = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;\n var s = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n var ms = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0;\n var date = new Date(y, M, d, h, m, s, ms);\n\n if (y < 100 && y >= 0) {\n date.setFullYear(y);\n }\n\n return date;\n}\nfunction isValidDate$1(date) {\n return date instanceof Date && !isNaN(date);\n}\nfunction isValidRangeDate(date) {\n return Array.isArray(date) && date.length === 2 && date.every(isValidDate$1) && date[0] <= date[1];\n}\nfunction isValidDates(dates) {\n return Array.isArray(dates) && dates.every(isValidDate$1);\n}\nfunction getValidDate(value) {\n var date = new Date(value);\n\n if (isValidDate$1(date)) {\n return date;\n }\n\n for (var _len = arguments.length, backup = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n backup[_key - 1] = arguments[_key];\n }\n\n if (backup.length) {\n return getValidDate.apply(void 0, backup);\n }\n\n return new Date();\n}\nfunction assignTime(target, source) {\n var date = new Date(target);\n var time = new Date(source);\n date.setHours(time.getHours(), time.getMinutes(), time.getSeconds());\n return date;\n}\n\n/**\n * chunk the array\n * @param {Array} arr\n * @param {Number} size\n */\nfunction chunk(arr, size) {\n if (!Array.isArray(arr)) {\n return [];\n }\n\n var result = [];\n var len = arr.length;\n var i = 0;\n size = size || len;\n\n while (i < len) {\n result.push(arr.slice(i, i += size));\n }\n\n return result;\n}\n/**\n * isObject\n * @param {*} obj\n * @returns {Boolean}\n */\n\nfunction isObject(obj) {\n return Object.prototype.toString.call(obj) === '[object Object]';\n}\n/**\n * pick object\n * @param {Object} obj\n * @param {Array|String} props\n */\n\nfunction pick(obj, props) {\n if (!isObject(obj)) return {};\n\n if (!Array.isArray(props)) {\n props = [props];\n }\n\n var res = {};\n props.forEach(function (prop) {\n if (prop in obj) {\n res[prop] = obj[prop];\n }\n });\n return res;\n}\n/**\n * deep merge two object without merging array\n * @param {object} target\n * @param {object} source\n */\n\nfunction mergeDeep(target, source) {\n if (!isObject(target)) {\n return {};\n }\n\n var result = target;\n\n if (isObject(source)) {\n Object.keys(source).forEach(function (key) {\n var value = source[key];\n\n if (isObject(value) && isObject(target[key])) {\n value = mergeDeep(target[key], value);\n }\n\n result = _objectSpread2({}, result, _defineProperty({}, key, value));\n });\n }\n\n return result;\n}\n\nfunction unwrapExports (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar en = createCommonjsModule(function (module, exports) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\nvar locale = {\n months: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],\n monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n weekdays: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n weekdaysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n weekdaysMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n firstDayOfWeek: 0,\n firstWeekContainsDate: 1\n};\nvar _default = locale;\nexports[\"default\"] = _default;\nmodule.exports = exports.default;\n});\n\nvar en$1 = unwrapExports(en);\n\nvar lang = {\n formatLocale: en$1,\n yearFormat: 'YYYY',\n monthFormat: 'MMM',\n monthBeforeYear: true\n};\n\nvar defaultLocale = 'en';\nvar locales = {};\nlocales[defaultLocale] = lang;\nfunction locale$1(name, object, isLocal) {\n if (typeof name !== 'string') return locales[defaultLocale];\n var l = defaultLocale;\n\n if (locales[name]) {\n l = name;\n }\n\n if (object) {\n locales[name] = object;\n l = name;\n }\n\n if (!isLocal) {\n defaultLocale = l;\n }\n\n return locales[name] || locales[defaultLocale];\n}\n/**\n * get locale object\n * @param {string} name lang\n */\n\nfunction getLocale(name) {\n return locale$1(name, null, true);\n}\n/**\n * get locale field value\n * @param {string} field field eg: 'formatLocale.shortMonth'\n * @param {object} lang locale object\n */\n\nfunction getLocaleFieldValue(field, lang) {\n var arr = (field || '').split('.');\n var current = lang || getLocale();\n var value;\n\n for (var i = 0, len = arr.length; i < len; i++) {\n var prop = arr[i];\n value = current[prop];\n\n if (i === len - 1) {\n return value;\n }\n\n if (!value) {\n return null;\n }\n\n current = value;\n }\n\n return null;\n}\n\n/* istanbul ignore file */\nfunction rafThrottle(fn) {\n var isRunning = false;\n return function fnBinfRaf() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (isRunning) return;\n isRunning = true;\n requestAnimationFrame(function () {\n isRunning = false;\n fn.apply(_this, args);\n });\n };\n}\n\n/**\n * get the hidden element width, height\n * @param {HTMLElement} element dom\n */\nfunction getPopupElementSize(element) {\n var originalDisplay = element.style.display;\n var originalVisibility = element.style.visibility;\n element.style.display = 'block';\n element.style.visibility = 'hidden';\n var styles = window.getComputedStyle(element);\n var width = element.offsetWidth + parseInt(styles.marginLeft, 10) + parseInt(styles.marginRight, 10);\n var height = element.offsetHeight + parseInt(styles.marginTop, 10) + parseInt(styles.marginBottom, 10);\n element.style.display = originalDisplay;\n element.style.visibility = originalVisibility;\n return {\n width: width,\n height: height\n };\n}\n/**\n * get the popup position\n * @param {HTMLElement} el relative element\n * @param {Number} targetWidth target element's width\n * @param {Number} targetHeight target element's height\n * @param {Boolean} fixed\n */\n\nfunction getRelativePosition(el, targetWidth, targetHeight, fixed) {\n var left = 0;\n var top = 0;\n var offsetX = 0;\n var offsetY = 0;\n var relativeRect = el.getBoundingClientRect();\n var dw = document.documentElement.clientWidth;\n var dh = document.documentElement.clientHeight;\n\n if (fixed) {\n offsetX = window.pageXOffset + relativeRect.left;\n offsetY = window.pageYOffset + relativeRect.top;\n }\n\n if (dw - relativeRect.left < targetWidth && relativeRect.right < targetWidth) {\n left = offsetX - relativeRect.left + 1;\n } else if (relativeRect.left + relativeRect.width / 2 <= dw / 2) {\n left = offsetX;\n } else {\n left = offsetX + relativeRect.width - targetWidth;\n }\n\n if (relativeRect.top <= targetHeight && dh - relativeRect.bottom <= targetHeight) {\n top = offsetY + dh - relativeRect.top - targetHeight;\n } else if (relativeRect.top + relativeRect.height / 2 <= dh / 2) {\n top = offsetY + relativeRect.height;\n } else {\n top = offsetY - targetHeight;\n }\n\n return {\n left: \"\".concat(left, \"px\"),\n top: \"\".concat(top, \"px\")\n };\n}\nfunction getScrollParent(node) {\n var until = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document.body;\n\n if (!node || node === until) {\n return null;\n }\n\n var style = function style(value, prop) {\n return getComputedStyle(value, null).getPropertyValue(prop);\n };\n\n var regex = /(auto|scroll)/;\n var scroll = regex.test(style(node, 'overflow') + style(node, 'overflow-y') + style(node, 'overflow-x'));\n return scroll ? node : getScrollParent(node.parentNode, until);\n}\n\nvar Popup = {\n name: 'Popup',\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n visible: {\n type: Boolean,\n default: false\n },\n appendToBody: {\n type: Boolean,\n default: true\n },\n inline: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n top: '',\n left: ''\n };\n },\n watch: {\n visible: {\n immediate: true,\n handler: function handler(val) {\n var _this = this;\n\n this.$nextTick(function () {\n if (val) {\n _this.displayPopup();\n }\n });\n }\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n\n if (this.inline) {\n return;\n }\n\n if (this.appendToBody) {\n document.body.appendChild(this.$el);\n }\n\n this._clickoutEvent = 'ontouchend' in document ? 'touchstart' : 'mousedown';\n document.addEventListener(this._clickoutEvent, this.handleClickOutside); // change the popup position when resize or scroll\n\n var relativeElement = this.$parent.$el;\n this._displayPopup = rafThrottle(function () {\n return _this2.displayPopup();\n });\n this._scrollParent = getScrollParent(relativeElement) || window;\n\n this._scrollParent.addEventListener('scroll', this._displayPopup);\n\n window.addEventListener('resize', this._displayPopup);\n },\n beforeDestroy: function beforeDestroy() {\n if (this.inline) {\n return;\n }\n\n if (this.appendToBody && this.$el.parentNode) {\n this.$el.parentNode.removeChild(this.$el);\n }\n\n document.removeEventListener(this._clickoutEvent, this.handleClickOutside);\n\n this._scrollParent.removeEventListener('scroll', this._displayPopup);\n\n window.removeEventListener('resize', this._displayPopup);\n },\n methods: {\n handleClickOutside: function handleClickOutside(evt) {\n if (!this.visible) return;\n var target = evt.target;\n var el = this.$el;\n\n if (el && !el.contains(target)) {\n this.$emit('clickoutside', evt);\n }\n },\n displayPopup: function displayPopup() {\n if (this.inline || !this.visible) return;\n var popup = this.$el;\n var relativeElement = this.$parent.$el;\n var appendToBody = this.appendToBody;\n\n if (!this._popupRect) {\n this._popupRect = getPopupElementSize(popup);\n }\n\n var _this$_popupRect = this._popupRect,\n width = _this$_popupRect.width,\n height = _this$_popupRect.height;\n\n var _getRelativePosition = getRelativePosition(relativeElement, width, height, appendToBody),\n left = _getRelativePosition.left,\n top = _getRelativePosition.top;\n\n this.left = left;\n this.top = top;\n }\n },\n render: function render() {\n var h = arguments[0];\n var prefixClass = this.prefixClass;\n\n if (this.inline) {\n return h(\"div\", {\n \"class\": \"\".concat(prefixClass, \"-datepicker-main\")\n }, [this.$slots.default]);\n }\n\n return h(\"transition\", {\n \"attrs\": {\n \"name\": \"\".concat(prefixClass, \"-zoom-in-down\")\n }\n }, [this.visible && h(\"div\", {\n \"class\": \"\".concat(prefixClass, \"-datepicker-main \").concat(prefixClass, \"-datepicker-popup\"),\n \"style\": {\n top: this.top,\n left: this.left,\n position: 'absolute'\n }\n }, [this.$slots.default])]);\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function (context) {\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\\\b/.test(navigator.userAgent.toLowerCase());\n\n/* script */\n\n/* template */\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 1024 1024\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M940.218182 107.054545h-209.454546V46.545455h-65.163636v60.50909H363.054545V46.545455H297.890909v60.50909H83.781818c-18.618182 0-32.581818 13.963636-32.581818 32.581819v805.236363c0 18.618182 13.963636 32.581818 32.581818 32.581818h861.090909c18.618182 0 32.581818-13.963636 32.581818-32.581818V139.636364c-4.654545-18.618182-18.618182-32.581818-37.236363-32.581819zM297.890909 172.218182V232.727273h65.163636V172.218182h307.2V232.727273h65.163637V172.218182h176.872727v204.8H116.363636V172.218182h181.527273zM116.363636 912.290909V442.181818h795.927273v470.109091H116.363636z\"\n }\n })]);\n};\n\nvar __vue_staticRenderFns__ = [];\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar IconCalendar = normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, {}, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\n/* script */\n\n/* template */\nvar __vue_render__$1 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 1024 1024\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M810.005333 274.005333l-237.994667 237.994667 237.994667 237.994667-60.010667 60.010667-237.994667-237.994667-237.994667 237.994667-60.010667-60.010667 237.994667-237.994667-237.994667-237.994667 60.010667-60.010667 237.994667 237.994667 237.994667-237.994667z\"\n }\n })]);\n};\n\nvar __vue_staticRenderFns__$1 = [];\n/* style */\n\nvar __vue_inject_styles__$1 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$1 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$1 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$1 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar IconClose = normalizeComponent({\n render: __vue_render__$1,\n staticRenderFns: __vue_staticRenderFns__$1\n}, __vue_inject_styles__$1, {}, __vue_scope_id__$1, __vue_is_functional_template__$1, __vue_module_identifier__$1, false, undefined, undefined, undefined);\n\n//\nvar script = {\n name: 'TableDate',\n inject: {\n translateFn: {\n default: function _default() {\n return getLocaleFieldValue;\n }\n },\n getWeek: {\n default: function _default() {\n return getWeek;\n }\n },\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n calendarYear: {\n type: Number,\n default: function _default() {\n return new Date().getFullYear();\n }\n },\n calendarMonth: {\n type: Number,\n default: function _default() {\n return new Date().getMonth();\n }\n },\n showWeekNumber: {\n type: Boolean,\n default: false\n },\n titleFormat: {\n type: String,\n default: 'YYYY-MM-DD'\n },\n getRowClasses: {\n type: Function,\n default: function _default() {\n return [];\n }\n },\n getCellClasses: {\n type: Function,\n default: function _default() {\n return [];\n }\n }\n },\n computed: {\n firstDayOfWeek: function firstDayOfWeek() {\n return this.translateFn('formatLocale.firstDayOfWeek') || 0;\n },\n days: function days() {\n var days = this.translateFn('days') || this.translateFn('formatLocale.weekdaysMin');\n return days.concat(days).slice(this.firstDayOfWeek, this.firstDayOfWeek + 7);\n },\n dates: function dates() {\n var arr = [];\n var firstDayOfWeek = this.firstDayOfWeek;\n var year = this.calendarYear;\n var month = this.calendarMonth; // change to the last day of the last month\n\n var calendar = createDate(year, month, 0);\n var lastDayInLastMonth = calendar.getDate(); // getDay() 0 is Sunday, 1 is Monday\n\n var firstDayInLastMonth = lastDayInLastMonth - (calendar.getDay() + 7 - firstDayOfWeek) % 7;\n\n for (var i = firstDayInLastMonth; i <= lastDayInLastMonth; i++) {\n var day = i - lastDayInLastMonth;\n arr.push({\n day: day,\n text: i\n });\n } // change to the last day of the current month\n\n\n calendar.setMonth(month + 1, 0);\n var lastDayInCurrentMonth = calendar.getDate();\n\n for (var _i = 1; _i <= lastDayInCurrentMonth; _i++) {\n arr.push({\n day: _i,\n text: _i\n });\n }\n\n var lastMonthLength = lastDayInLastMonth - firstDayInLastMonth + 1;\n var nextMonthLength = 6 * 7 - lastMonthLength - lastDayInCurrentMonth;\n\n for (var _i2 = 1; _i2 <= nextMonthLength; _i2++) {\n arr.push({\n day: lastDayInCurrentMonth + _i2,\n text: _i2\n });\n }\n\n return chunk(arr, 7);\n }\n },\n methods: {\n formatDate: function formatDate(date, fmt) {\n return format(date, fmt, {\n locale: this.translateFn('formatLocale')\n });\n },\n handleCellClick: function handleCellClick(evt) {\n var target = evt.target;\n\n if (target.tagName === 'DIV') {\n target = target.parentNode;\n }\n\n var day = target.getAttribute('data-day');\n\n if (day) {\n this.$emit('select', parseInt(day, 10));\n }\n },\n getCellTitle: function getCellTitle(day) {\n var year = this.calendarYear;\n var month = this.calendarMonth;\n var fmt = this.titleFormat;\n var date = createDate(year, month, day);\n return this.formatDate(date, fmt);\n },\n getWeekNumber: function getWeekNumber(day) {\n var year = this.calendarYear;\n var month = this.calendarMonth;\n var date = createDate(year, month, day);\n return this.getWeek(date, this.translateFn('formatLocale'));\n }\n }\n};\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__$2 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('table', {\n class: _vm.prefixClass + \"-table \" + _vm.prefixClass + \"-table-date\"\n }, [_c('thead', [_c('tr', [_vm.showWeekNumber ? _c('th', {\n class: _vm.prefixClass + \"-week-number-header\"\n }) : _vm._e(), _vm._v(\" \"), _vm._l(_vm.days, function (day) {\n return _c('th', {\n key: day\n }, [_vm._v(_vm._s(day))]);\n })], 2)]), _vm._v(\" \"), _c('tbody', {\n on: {\n \"click\": _vm.handleCellClick\n }\n }, _vm._l(_vm.dates, function (row, i) {\n return _c('tr', {\n key: i,\n class: [_vm.prefixClass + \"-date-row\", _vm.getRowClasses(row)]\n }, [_vm.showWeekNumber ? _c('td', {\n class: _vm.prefixClass + \"-week-number\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.getWeekNumber(row[0].day)) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _vm._l(row, function (cell, j) {\n return _c('td', {\n key: j,\n staticClass: \"cell\",\n class: _vm.getCellClasses(cell.day),\n attrs: {\n \"data-day\": cell.day,\n \"title\": _vm.getCellTitle(cell.day)\n }\n }, [_c('div', [_vm._v(_vm._s(cell.text))])]);\n })], 2);\n }), 0)]);\n};\n\nvar __vue_staticRenderFns__$2 = [];\n/* style */\n\nvar __vue_inject_styles__$2 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$2 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$2 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$2 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar TableDate = normalizeComponent({\n render: __vue_render__$2,\n staticRenderFns: __vue_staticRenderFns__$2\n}, __vue_inject_styles__$2, __vue_script__, __vue_scope_id__$2, __vue_is_functional_template__$2, __vue_module_identifier__$2, false, undefined, undefined, undefined);\n\n//\nvar script$1 = {\n name: 'TableMonth',\n inject: {\n translateFn: {\n default: function _default() {\n return getLocaleFieldValue;\n }\n },\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n getCellClasses: {\n type: Function,\n default: function _default() {\n return [];\n }\n }\n },\n computed: {\n months: function months() {\n var monthsLocale = this.translateFn('months') || this.translateFn('formatLocale.monthsShort');\n var months = monthsLocale.map(function (text, month) {\n return {\n text: text,\n month: month\n };\n });\n return chunk(months, 3);\n }\n },\n methods: {\n handleClick: function handleClick(evt) {\n var target = evt.target;\n\n if (target.tagName === 'DIV') {\n target = target.parentNode;\n }\n\n var month = target.getAttribute('data-month');\n\n if (month) {\n this.$emit('select', parseInt(month, 10));\n }\n }\n }\n};\n\n/* script */\nvar __vue_script__$1 = script$1;\n/* template */\n\nvar __vue_render__$3 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('table', {\n class: _vm.prefixClass + \"-table \" + _vm.prefixClass + \"-table-month\",\n on: {\n \"click\": _vm.handleClick\n }\n }, _vm._l(_vm.months, function (row, i) {\n return _c('tr', {\n key: i\n }, _vm._l(row, function (cell, j) {\n return _c('td', {\n key: j,\n staticClass: \"cell\",\n class: _vm.getCellClasses(cell.month),\n attrs: {\n \"data-month\": cell.month\n }\n }, [_c('div', [_vm._v(_vm._s(cell.text))])]);\n }), 0);\n }), 0);\n};\n\nvar __vue_staticRenderFns__$3 = [];\n/* style */\n\nvar __vue_inject_styles__$3 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$3 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$3 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$3 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar TableMonth = normalizeComponent({\n render: __vue_render__$3,\n staticRenderFns: __vue_staticRenderFns__$3\n}, __vue_inject_styles__$3, __vue_script__$1, __vue_scope_id__$3, __vue_is_functional_template__$3, __vue_module_identifier__$3, false, undefined, undefined, undefined);\n\n//\nvar script$2 = {\n name: 'TableYear',\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n decade: Number,\n getCellClasses: {\n type: Function,\n default: function _default() {\n return [];\n }\n }\n },\n computed: {\n years: function years() {\n var firstYear = this.decade;\n var years = [];\n\n for (var i = 0; i < 10; i++) {\n years.push(firstYear + i);\n }\n\n return chunk(years, 2);\n }\n },\n methods: {\n handleClick: function handleClick(evt) {\n var target = evt.target;\n\n if (target.tagName === 'DIV') {\n target = target.parentNode;\n }\n\n var year = target.getAttribute('data-year');\n\n if (year) {\n this.$emit('select', parseInt(year, 10));\n }\n }\n }\n};\n\n/* script */\nvar __vue_script__$2 = script$2;\n/* template */\n\nvar __vue_render__$4 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('table', {\n class: _vm.prefixClass + \"-table \" + _vm.prefixClass + \"-table-year\",\n on: {\n \"click\": _vm.handleClick\n }\n }, _vm._l(_vm.years, function (row, i) {\n return _c('tr', {\n key: i\n }, _vm._l(row, function (cell, j) {\n return _c('td', {\n key: j,\n staticClass: \"cell\",\n class: _vm.getCellClasses(cell),\n attrs: {\n \"data-year\": cell\n }\n }, [_c('div', [_vm._v(_vm._s(cell))])]);\n }), 0);\n }), 0);\n};\n\nvar __vue_staticRenderFns__$4 = [];\n/* style */\n\nvar __vue_inject_styles__$4 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$4 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$4 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$4 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar TableYear = normalizeComponent({\n render: __vue_render__$4,\n staticRenderFns: __vue_staticRenderFns__$4\n}, __vue_inject_styles__$4, __vue_script__$2, __vue_scope_id__$4, __vue_is_functional_template__$4, __vue_module_identifier__$4, false, undefined, undefined, undefined);\n\nvar emitter = {\n methods: {\n dispatch: function dispatch(componentName) {\n var parent = this.$parent || this.$root;\n var name = parent.$options.name;\n\n while (parent && (!name || name !== componentName)) {\n parent = parent.$parent;\n\n if (parent) {\n name = parent.$options.name;\n }\n }\n\n if (parent) {\n var _parent;\n\n for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n params[_key - 1] = arguments[_key];\n }\n\n (_parent = parent).$emit.apply(_parent, params);\n }\n }\n }\n};\n\n//\nvar script$3 = {\n name: 'CalendarPanel',\n components: {\n TableDate: TableDate,\n TableMonth: TableMonth,\n TableYear: TableYear\n },\n mixins: [emitter],\n inject: {\n translateFn: {\n default: function _default() {\n return getLocaleFieldValue;\n }\n },\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n value: {},\n defaultValue: {\n default: function _default() {\n var date = new Date();\n date.setHours(0, 0, 0, 0);\n return date;\n }\n },\n defaultPanel: {\n type: String\n },\n disabledDate: {\n type: Function,\n default: function _default() {\n return false;\n }\n },\n type: {\n type: String,\n default: 'date'\n },\n getClasses: {\n type: Function,\n default: function _default() {\n return [];\n }\n },\n showWeekNumber: {\n type: Boolean,\n default: undefined\n },\n titleFormat: {\n type: String,\n default: 'YYYY-MM-DD'\n },\n calendar: Date,\n // update date when select year or month\n partialUpdate: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n var panels = ['date', 'month', 'year'];\n var index = Math.max(panels.indexOf(this.type), panels.indexOf(this.defaultPanel));\n var panel = index !== -1 ? panels[index] : 'date';\n return {\n panel: panel,\n innerCalendar: null\n };\n },\n computed: {\n innerValue: function innerValue() {\n var value = Array.isArray(this.value) ? this.value : [this.value];\n var map = {\n year: startOfYear,\n month: startOfMonth,\n date: startOfDay\n };\n var start = map[this.type] || map.date;\n return value.filter(isValidDate$1).map(function (v) {\n return start(v);\n });\n },\n calendarYear: function calendarYear() {\n return this.innerCalendar.getFullYear();\n },\n calendarMonth: function calendarMonth() {\n return this.innerCalendar.getMonth();\n },\n calendarDecade: function calendarDecade() {\n return Math.floor(this.calendarYear / 10) * 10;\n },\n showIconDoubleArrow: function showIconDoubleArrow() {\n return this.panel === 'date' || this.panel === 'month' || this.panel === 'year';\n },\n showIconArrow: function showIconArrow() {\n return this.panel === 'date';\n },\n dateHeader: function dateHeader() {\n var monthBeforeYear = this.translateFn('monthBeforeYear');\n var yearFormat = this.translateFn('yearFormat');\n var monthFormat = this.translateFn('monthFormat') || 'MMM';\n var yearLabel = {\n panel: 'year',\n label: this.formatDate(this.innerCalendar, yearFormat)\n };\n var monthLabel = {\n panel: 'month',\n label: this.formatDate(this.innerCalendar, monthFormat)\n };\n return monthBeforeYear ? [monthLabel, yearLabel] : [yearLabel, monthLabel];\n }\n },\n watch: {\n value: {\n immediate: true,\n handler: 'initCalendar'\n },\n calendar: {\n handler: 'initCalendar'\n },\n defaultValue: {\n handler: 'initCalendar'\n }\n },\n methods: {\n formatDate: function formatDate(date, fmt) {\n return format(date, fmt, {\n locale: this.translateFn('formatLocale')\n });\n },\n initCalendar: function initCalendar() {\n var calendarDate = this.calendar;\n\n if (!isValidDate$1(calendarDate)) {\n var length = this.innerValue.length;\n calendarDate = getValidDate(length > 0 ? this.innerValue[length - 1] : this.defaultValue);\n }\n\n this.innerCalendar = calendarDate;\n },\n isDisabled: function isDisabled(date) {\n return this.disabledDate(new Date(date), this.innerValue);\n },\n emitDate: function emitDate(date, type) {\n if (!this.isDisabled(date)) {\n this.$emit('select', date, type, this.innerValue); // someone need get the first selected date to set range value. (#429)\n\n this.dispatch('DatePicker', 'pick', date, type);\n }\n },\n updateCalendar: function updateCalendar(date, type) {\n var oldValue = new Date(this.innerCalendar);\n this.innerCalendar = date;\n this.$emit('update:calendar', date);\n this.dispatch('DatePicker', 'calendar-change', date, oldValue, type);\n },\n handelPanelChange: function handelPanelChange(panel) {\n this.panel = panel;\n },\n handleIconLeftClick: function handleIconLeftClick() {\n var nextCalendar = subMonths(this.innerCalendar, 1);\n this.updateCalendar(nextCalendar, 'last-month');\n },\n handleIconRightClick: function handleIconRightClick() {\n var nextCalendar = addMonths(this.innerCalendar, 1);\n this.updateCalendar(nextCalendar, 'next-month');\n },\n handleIconDoubleLeftClick: function handleIconDoubleLeftClick() {\n var nextCalendar = subYears(this.innerCalendar, this.panel === 'year' ? 10 : 1);\n this.updateCalendar(nextCalendar, this.panel === 'year' ? 'last-decade' : 'last-year');\n },\n handleIconDoubleRightClick: function handleIconDoubleRightClick() {\n var nextCalendar = addYears(this.innerCalendar, this.panel === 'year' ? 10 : 1);\n this.updateCalendar(nextCalendar, this.panel === 'year' ? 'next-decade' : 'next-year');\n },\n handleSelectYear: function handleSelectYear(year) {\n if (this.type === 'year') {\n var date = this.getCellDate(year, 'year');\n this.emitDate(date, 'year');\n } else {\n var nextCalendar = setYear(this.innerCalendar, year);\n this.updateCalendar(nextCalendar, 'year');\n this.handelPanelChange('month');\n\n if (this.partialUpdate && this.innerValue.length === 1) {\n var _date = setYear(this.innerValue[0], year);\n\n this.emitDate(_date, 'year');\n }\n }\n },\n handleSelectMonth: function handleSelectMonth(month) {\n if (this.type === 'month') {\n var date = this.getCellDate(month, 'month');\n this.emitDate(date, 'month');\n } else {\n var nextCalendar = setMonth(this.innerCalendar, month);\n this.updateCalendar(nextCalendar, 'month');\n this.handelPanelChange('date');\n\n if (this.partialUpdate && this.innerValue.length === 1) {\n var _date2 = setMonth(setYear(this.innerValue[0], this.calendarYear), month);\n\n this.emitDate(_date2, 'month');\n }\n }\n },\n handleSelectDate: function handleSelectDate(day) {\n var date = this.getCellDate(day, 'date');\n this.emitDate(date, this.type === 'week' ? 'week' : 'date');\n },\n getCellDate: function getCellDate(value, type) {\n if (type === 'year') {\n return createDate(value, 0);\n }\n\n if (type === 'month') {\n return createDate(this.calendarYear, value);\n }\n\n return createDate(this.calendarYear, this.calendarMonth, value);\n },\n getDateClasses: function getDateClasses(day) {\n var cellDate = this.getCellDate(day, 'date');\n var notCurrentMonth = cellDate.getMonth() !== this.calendarMonth;\n var classes = [];\n\n if (cellDate.getTime() === new Date().setHours(0, 0, 0, 0)) {\n classes.push('today');\n }\n\n if (notCurrentMonth) {\n classes.push('not-current-month');\n }\n\n var state = this.getStateClass(cellDate);\n\n if (!(state === 'active' && notCurrentMonth)) {\n classes.push(state);\n }\n\n return classes.concat(this.getClasses(cellDate, this.innerValue, classes.join(' ')));\n },\n getMonthClasses: function getMonthClasses(month) {\n if (this.type !== 'month') {\n return this.calendarMonth === month ? 'active' : '';\n }\n\n var classes = [];\n var cellDate = this.getCellDate(month, 'month');\n classes.push(this.getStateClass(cellDate));\n return classes.concat(this.getClasses(cellDate, this.innerValue, classes.join(' ')));\n },\n getYearClasses: function getYearClasses(year) {\n if (this.type !== 'year') {\n return this.calendarYear === year ? 'active' : '';\n }\n\n var classes = [];\n var cellDate = this.getCellDate(year, 'year');\n classes.push(this.getStateClass(cellDate));\n return classes.concat(this.getClasses(cellDate, this.innerValue, classes.join(' ')));\n },\n getStateClass: function getStateClass(cellDate) {\n if (this.isDisabled(cellDate)) {\n return 'disabled';\n }\n\n if (this.innerValue.some(function (v) {\n return v.getTime() === cellDate.getTime();\n })) {\n return 'active';\n }\n\n return '';\n },\n getWeekState: function getWeekState(row) {\n if (this.type !== 'week') return '';\n var start = this.getCellDate(row[0].day, 'date').getTime();\n var end = this.getCellDate(row[6].day, 'date').getTime();\n var active = this.innerValue.some(function (v) {\n var time = v.getTime();\n return time >= start && time <= end;\n });\n return active ? \"\".concat(this.prefixClass, \"-active-week\") : '';\n }\n }\n};\n\n/* script */\nvar __vue_script__$3 = script$3;\n/* template */\n\nvar __vue_render__$5 = function __vue_render__() {\n var _obj;\n\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('div', {\n class: [_vm.prefixClass + \"-calendar\", _vm.prefixClass + \"-calendar-panel-\" + _vm.panel, (_obj = {}, _obj[_vm.prefixClass + \"-calendar-week-mode\"] = _vm.type === 'week', _obj)]\n }, [_c('div', {\n class: _vm.prefixClass + \"-calendar-header\"\n }, [_c('button', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showIconDoubleArrow,\n expression: \"showIconDoubleArrow\"\n }],\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text \" + _vm.prefixClass + \"-btn-icon-double-left\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.handleIconDoubleLeftClick\n }\n }, [_c('i', {\n class: _vm.prefixClass + \"-icon-double-left\"\n })]), _vm._v(\" \"), _c('button', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showIconArrow,\n expression: \"showIconArrow\"\n }],\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text \" + _vm.prefixClass + \"-btn-icon-left\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.handleIconLeftClick\n }\n }, [_c('i', {\n class: _vm.prefixClass + \"-icon-left\"\n })]), _vm._v(\" \"), _c('button', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showIconDoubleArrow,\n expression: \"showIconDoubleArrow\"\n }],\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text \" + _vm.prefixClass + \"-btn-icon-double-right\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.handleIconDoubleRightClick\n }\n }, [_c('i', {\n class: _vm.prefixClass + \"-icon-double-right\"\n })]), _vm._v(\" \"), _c('button', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showIconArrow,\n expression: \"showIconArrow\"\n }],\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text \" + _vm.prefixClass + \"-btn-icon-right\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.handleIconRightClick\n }\n }, [_c('i', {\n class: _vm.prefixClass + \"-icon-right\"\n })]), _vm._v(\" \"), _c('span', {\n class: _vm.prefixClass + \"-calendar-header-label\"\n }, [_vm.panel === 'year' ? [_c('span', [_vm._v(_vm._s(_vm.calendarDecade))]), _vm._v(\" \"), _c('span', {\n class: _vm.prefixClass + \"-calendar-decade-separator\"\n }), _vm._v(\" \"), _c('span', [_vm._v(_vm._s(_vm.calendarDecade + 9))])] : _vm.panel === 'month' ? _c('button', {\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function click($event) {\n return _vm.handelPanelChange('year');\n }\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.calendarYear) + \"\\n \")]) : _vm.panel === 'date' ? _vm._l(_vm.dateHeader, function (item) {\n return _c('button', {\n key: item.panel,\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text \" + _vm.prefixClass + \"-btn-current-\" + item.panel,\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function click($event) {\n return _vm.handelPanelChange(item.panel);\n }\n }\n }, [_vm._v(\"\\n \" + _vm._s(item.label) + \"\\n \")]);\n }) : _vm._e()], 2)]), _vm._v(\" \"), _c('div', {\n class: _vm.prefixClass + \"-calendar-content\"\n }, [_c('table-year', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.panel === 'year',\n expression: \"panel === 'year'\"\n }],\n attrs: {\n \"decade\": _vm.calendarDecade,\n \"get-cell-classes\": _vm.getYearClasses\n },\n on: {\n \"select\": _vm.handleSelectYear\n }\n }), _vm._v(\" \"), _vm.type !== 'year' ? _c('table-month', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.panel === 'month',\n expression: \"panel === 'month'\"\n }],\n attrs: {\n \"get-cell-classes\": _vm.getMonthClasses\n },\n on: {\n \"select\": _vm.handleSelectMonth\n }\n }) : _vm._e(), _vm._v(\" \"), _vm.type !== 'year' && _vm.type !== 'month' ? _c('table-date', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.panel === 'date',\n expression: \"panel === 'date'\"\n }],\n attrs: {\n \"calendar-year\": _vm.calendarYear,\n \"calendar-month\": _vm.calendarMonth,\n \"title-format\": _vm.titleFormat,\n \"show-week-number\": typeof _vm.showWeekNumber === 'boolean' ? _vm.showWeekNumber : _vm.type === 'week',\n \"get-cell-classes\": _vm.getDateClasses,\n \"get-row-classes\": _vm.getWeekState\n },\n on: {\n \"select\": _vm.handleSelectDate\n }\n }) : _vm._e()], 1)]);\n};\n\nvar __vue_staticRenderFns__$5 = [];\n/* style */\n\nvar __vue_inject_styles__$5 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$5 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$5 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$5 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar CalendarPanel = normalizeComponent({\n render: __vue_render__$5,\n staticRenderFns: __vue_staticRenderFns__$5\n}, __vue_inject_styles__$5, __vue_script__$3, __vue_scope_id__$5, __vue_is_functional_template__$5, __vue_module_identifier__$5, false, undefined, undefined, undefined);\n\nvar CalendarRange = {\n name: 'CalendarRange',\n components: {\n CalendarPanel: CalendarPanel\n },\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n props: _objectSpread2({}, CalendarPanel.props),\n data: function data() {\n return {\n innerValue: [],\n calendars: []\n };\n },\n computed: {\n // Minimum difference between start and end calendars\n calendarMinDiff: function calendarMinDiff() {\n var map = {\n date: 1,\n // type:date min 1 month\n month: 1 * 12,\n // type:month min 1 year\n year: 10 * 12 // type:year min 10 year\n\n };\n return map[this.type] || map.date;\n },\n calendarMaxDiff: function calendarMaxDiff() {\n return Infinity;\n },\n defaultValues: function defaultValues() {\n return Array.isArray(this.defaultValue) ? this.defaultValue : [this.defaultValue, this.defaultValue];\n }\n },\n watch: {\n value: {\n immediate: true,\n handler: function handler() {\n var _this = this;\n\n this.innerValue = isValidRangeDate(this.value) ? this.value : [new Date(NaN), new Date(NaN)];\n this.calendars = this.innerValue.map(function (v, i) {\n return getValidDate(v, _this.defaultValues[i]);\n });\n this.validateCalendars(1);\n }\n }\n },\n methods: {\n handleSelect: function handleSelect(date, type) {\n var _this$innerValue = _slicedToArray(this.innerValue, 2),\n startValue = _this$innerValue[0],\n endValue = _this$innerValue[1];\n\n if (isValidDate$1(startValue) && !isValidDate$1(endValue)) {\n if (startValue.getTime() > date.getTime()) {\n this.innerValue = [date, startValue];\n } else {\n this.innerValue = [startValue, date];\n }\n\n this.emitDate(this.innerValue, type);\n } else {\n this.innerValue = [date, new Date(NaN)];\n }\n },\n emitDate: function emitDate(dates, type) {\n this.$emit('select', dates, type);\n },\n updateStartCalendar: function updateStartCalendar(value) {\n this.calendars.splice(0, 1, value);\n this.validateCalendars(1);\n },\n updateEndCalendar: function updateEndCalendar(value) {\n this.calendars.splice(1, 1, value);\n this.validateCalendars(0);\n },\n validateCalendars: function validateCalendars(index) {\n var gap = this.getCalendarGap();\n\n if (gap) {\n var calendar = this.calendars[index];\n\n if (index === 0) {\n calendar = subMonths(calendar, gap);\n } else {\n calendar = addMonths(calendar, gap);\n }\n\n this.calendars.splice(index, 1, calendar);\n }\n },\n getCalendarGap: function getCalendarGap() {\n var diff = differenceInCalendarMonths(this.calendars[1], this.calendars[0]);\n var min = this.calendarMinDiff;\n var max = this.calendarMaxDiff;\n\n if (diff < min) {\n return min - diff;\n }\n\n if (diff > max) {\n return max - diff;\n }\n\n return 0;\n },\n getRangeClasses: function getRangeClasses(cellDate, currentDates, classnames) {\n var classes = [].concat(this.getClasses(cellDate, currentDates, classnames));\n\n if (!/disabled|active|not-current-month/.test(classnames) && currentDates.length === 2 && cellDate.getTime() > currentDates[0].getTime() && cellDate.getTime() < currentDates[1].getTime()) {\n classes.push('in-range');\n }\n\n return classes;\n }\n },\n render: function render() {\n var _this2 = this;\n\n var h = arguments[0];\n var calendarRange = this.calendars.map(function (calendar, index) {\n var props = _objectSpread2({}, _this2.$props, {\n calendar: calendar,\n value: _this2.innerValue,\n defaultValue: _this2.defaultValues[index],\n getClasses: _this2.getRangeClasses,\n // don't update when range is true\n partialUpdate: false\n });\n\n var on = {\n select: _this2.handleSelect,\n 'update:calendar': index === 0 ? _this2.updateStartCalendar : _this2.updateEndCalendar\n };\n return h(\"calendar-panel\", {\n \"props\": _objectSpread2({}, props),\n \"on\": _objectSpread2({}, on)\n });\n });\n var prefixClass = this.prefixClass;\n return h(\"div\", {\n \"class\": \"\".concat(prefixClass, \"-range-wrapper\")\n }, [calendarRange]);\n }\n};\n\nvar scrollBarWidth;\nfunction getScrollbarWidth () {\n if (typeof window === 'undefined') return 0;\n if (scrollBarWidth !== undefined) return scrollBarWidth;\n var outer = document.createElement('div');\n outer.style.visibility = 'hidden';\n outer.style.overflow = 'scroll';\n outer.style.width = '100px';\n outer.style.position = 'absolute';\n outer.style.top = '-9999px';\n document.body.appendChild(outer);\n var inner = document.createElement('div');\n inner.style.width = '100%';\n outer.appendChild(inner);\n scrollBarWidth = outer.offsetWidth - inner.offsetWidth;\n outer.parentNode.removeChild(outer);\n return scrollBarWidth;\n}\n\n//\nvar script$4 = {\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n data: function data() {\n return {\n scrollbarWidth: 0,\n thumbTop: '',\n thumbHeight: ''\n };\n },\n created: function created() {\n this.scrollbarWidth = getScrollbarWidth();\n document.addEventListener('mouseup', this.handleDragend);\n },\n beforeDestroy: function beforeDestroy() {\n document.addEventListener('mouseup', this.handleDragend);\n },\n mounted: function mounted() {\n this.$nextTick(this.getThumbSize);\n },\n methods: {\n getThumbSize: function getThumbSize() {\n var wrap = this.$refs.wrap;\n if (!wrap) return;\n var heightPercentage = wrap.clientHeight * 100 / wrap.scrollHeight;\n this.thumbHeight = heightPercentage < 100 ? \"\".concat(heightPercentage, \"%\") : '';\n },\n handleScroll: function handleScroll(evt) {\n var el = evt.currentTarget;\n var scrollHeight = el.scrollHeight,\n scrollTop = el.scrollTop;\n this.thumbTop = \"\".concat(scrollTop * 100 / scrollHeight, \"%\");\n },\n handleDragstart: function handleDragstart(evt) {\n evt.stopImmediatePropagation();\n this._draggable = true;\n var offsetTop = this.$refs.thumb.offsetTop;\n this._prevY = evt.clientY - offsetTop;\n document.addEventListener('mousemove', this.handleDraging);\n },\n handleDraging: function handleDraging(evt) {\n if (!this._draggable) return;\n var clientY = evt.clientY;\n var wrap = this.$refs.wrap;\n var scrollHeight = wrap.scrollHeight,\n clientHeight = wrap.clientHeight;\n var offsetY = clientY - this._prevY;\n var top = offsetY * scrollHeight / clientHeight;\n wrap.scrollTop = top;\n },\n handleDragend: function handleDragend() {\n if (this._draggable) {\n this._draggable = false;\n document.removeEventListener('mousemove', this.handleDraging);\n }\n }\n }\n};\n\n/* script */\nvar __vue_script__$4 = script$4;\n/* template */\n\nvar __vue_render__$6 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('div', {\n class: _vm.prefixClass + \"-scrollbar\",\n style: {\n position: 'relative',\n overflow: 'hidden'\n }\n }, [_c('div', {\n ref: \"wrap\",\n class: _vm.prefixClass + \"-scrollbar-wrap\",\n style: {\n marginRight: \"-\" + _vm.scrollbarWidth + \"px\"\n },\n on: {\n \"scroll\": _vm.handleScroll\n }\n }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _c('div', {\n class: _vm.prefixClass + \"-scrollbar-track\"\n }, [_c('div', {\n ref: \"thumb\",\n class: _vm.prefixClass + \"-scrollbar-thumb\",\n style: {\n height: _vm.thumbHeight,\n top: _vm.thumbTop\n },\n on: {\n \"mousedown\": _vm.handleDragstart\n }\n })])]);\n};\n\nvar __vue_staticRenderFns__$6 = [];\n/* style */\n\nvar __vue_inject_styles__$6 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$6 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$6 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$6 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar ScrollbarVertical = normalizeComponent({\n render: __vue_render__$6,\n staticRenderFns: __vue_staticRenderFns__$6\n}, __vue_inject_styles__$6, __vue_script__$4, __vue_scope_id__$6, __vue_is_functional_template__$6, __vue_module_identifier__$6, false, undefined, undefined, undefined);\n\n//\n\nvar padNumber = function padNumber(value) {\n value = parseInt(value, 10);\n return value < 10 ? \"0\".concat(value) : \"\".concat(value);\n};\n\nvar generateOptions = function generateOptions(length, step, options) {\n if (Array.isArray(options)) {\n return options.filter(function (v) {\n return v >= 0 && v < length;\n });\n }\n\n if (step <= 0) {\n step = 1;\n }\n\n var arr = [];\n\n for (var i = 0; i < length; i += step) {\n arr.push(i);\n }\n\n return arr;\n};\n\nvar scrollTo = function scrollTo(element, to) {\n var duration = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n\n // jump to target if duration zero\n if (duration <= 0) {\n requestAnimationFrame(function () {\n element.scrollTop = to;\n });\n return;\n }\n\n var difference = to - element.scrollTop;\n var tick = difference / duration * 10;\n requestAnimationFrame(function () {\n var scrollTop = element.scrollTop + tick;\n\n if (scrollTop >= to) {\n element.scrollTop = to;\n return;\n }\n\n element.scrollTop = scrollTop;\n scrollTo(element, to, duration - 10);\n });\n};\n\nvar script$5 = {\n name: 'ListColumns',\n components: {\n ScrollbarVertical: ScrollbarVertical\n },\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n date: Date,\n scrollDuration: {\n type: Number,\n default: 100\n },\n getClasses: {\n type: Function,\n default: function _default() {\n return [];\n }\n },\n hourOptions: Array,\n minuteOptions: Array,\n secondOptions: Array,\n showHour: {\n type: Boolean,\n default: true\n },\n showMinute: {\n type: Boolean,\n default: true\n },\n showSecond: {\n type: Boolean,\n default: true\n },\n hourStep: {\n type: Number,\n default: 1\n },\n minuteStep: {\n type: Number,\n default: 1\n },\n secondStep: {\n type: Number,\n default: 1\n },\n use12h: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n columns: function columns() {\n var cols = [];\n if (this.showHour) cols.push({\n type: 'hour',\n list: this.getHoursList()\n });\n if (this.showMinute) cols.push({\n type: 'minute',\n list: this.getMinutesList()\n });\n if (this.showSecond) cols.push({\n type: 'second',\n list: this.getSecondsList()\n });\n if (this.use12h) cols.push({\n type: 'ampm',\n list: this.getAMPMList()\n });\n return cols.filter(function (v) {\n return v.list.length > 0;\n });\n }\n },\n watch: {\n date: {\n handler: function handler() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.scrollToSelected(_this.scrollDuration);\n });\n }\n }\n },\n mounted: function mounted() {\n this.scrollToSelected(0);\n },\n methods: {\n getHoursList: function getHoursList() {\n var _this2 = this;\n\n return generateOptions(this.use12h ? 12 : 24, this.hourStep, this.hourOptions).map(function (num) {\n var date = new Date(_this2.date);\n var text = padNumber(num);\n\n if (_this2.use12h) {\n if (num === 0) {\n text = '12';\n }\n\n if (date.getHours() >= 12) {\n num += 12;\n }\n }\n\n var value = date.setHours(num);\n return {\n value: value,\n text: text\n };\n });\n },\n getMinutesList: function getMinutesList() {\n var _this3 = this;\n\n return generateOptions(60, this.minuteStep, this.minuteOptions).map(function (num) {\n var value = new Date(_this3.date).setMinutes(num);\n return {\n value: value,\n text: padNumber(num)\n };\n });\n },\n getSecondsList: function getSecondsList() {\n var _this4 = this;\n\n return generateOptions(60, this.secondStep, this.secondOptions).map(function (num) {\n var value = new Date(_this4.date).setSeconds(num);\n return {\n value: value,\n text: padNumber(num)\n };\n });\n },\n getAMPMList: function getAMPMList() {\n var _this5 = this;\n\n return ['AM', 'PM'].map(function (text, i) {\n var date = new Date(_this5.date);\n var value = date.setHours(date.getHours() % 12 + i * 12);\n return {\n text: text,\n value: value\n };\n });\n },\n scrollToSelected: function scrollToSelected(duration) {\n var elements = this.$el.querySelectorAll('.active');\n\n for (var i = 0; i < elements.length; i++) {\n var element = elements[i];\n var scrollElement = getScrollParent(element, this.$el);\n\n if (scrollElement) {\n var to = element.offsetTop;\n scrollTo(scrollElement, to, duration);\n }\n }\n },\n handleSelect: function handleSelect(evt) {\n var target = evt.target,\n currentTarget = evt.currentTarget;\n if (target.tagName.toUpperCase() !== 'LI') return;\n var type = currentTarget.getAttribute('data-type');\n var colIndex = parseInt(currentTarget.getAttribute('data-index'), 10);\n var cellIndex = parseInt(target.getAttribute('data-index'), 10);\n var value = this.columns[colIndex].list[cellIndex].value;\n this.$emit('select', value, type);\n }\n }\n};\n\n/* script */\nvar __vue_script__$5 = script$5;\n/* template */\n\nvar __vue_render__$7 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('div', {\n class: _vm.prefixClass + \"-time-columns\"\n }, _vm._l(_vm.columns, function (col, i) {\n return _c('scrollbar-vertical', {\n key: i,\n class: _vm.prefixClass + \"-time-column\"\n }, [_c('ul', {\n class: _vm.prefixClass + \"-time-list\",\n attrs: {\n \"data-type\": col.type,\n \"data-index\": i\n },\n on: {\n \"click\": _vm.handleSelect\n }\n }, _vm._l(col.list, function (item, j) {\n return _c('li', {\n key: item.value,\n class: [_vm.prefixClass + \"-time-item\", _vm.getClasses(item.value)],\n attrs: {\n \"data-index\": j\n }\n }, [_vm._v(\"\\n \" + _vm._s(item.text) + \"\\n \")]);\n }), 0)]);\n }), 1);\n};\n\nvar __vue_staticRenderFns__$7 = [];\n/* style */\n\nvar __vue_inject_styles__$7 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$7 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$7 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$7 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar ListColumns = normalizeComponent({\n render: __vue_render__$7,\n staticRenderFns: __vue_staticRenderFns__$7\n}, __vue_inject_styles__$7, __vue_script__$5, __vue_scope_id__$7, __vue_is_functional_template__$7, __vue_module_identifier__$7, false, undefined, undefined, undefined);\n\n//\n\nfunction parseOption() {\n var time = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var values = time.split(':');\n\n if (values.length >= 2) {\n var hours = parseInt(values[0], 10);\n var minutes = parseInt(values[1], 10);\n return {\n hours: hours,\n minutes: minutes\n };\n }\n\n return null;\n}\n\nvar scrollTo$1 = function scrollTo(element, to) {\n if (element) {\n element.scrollTop = to;\n }\n};\n\nvar script$6 = {\n name: 'ListOptions',\n components: {\n ScrollbarVertical: ScrollbarVertical\n },\n inject: {\n translateFn: {\n default: function _default() {\n return getLocaleFieldValue;\n }\n },\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n date: Date,\n options: {\n type: [Object, Function],\n default: function _default() {\n return [];\n }\n },\n format: {\n type: String,\n default: 'HH:mm:ss'\n },\n getClasses: {\n type: Function,\n default: function _default() {\n return [];\n }\n }\n },\n computed: {\n list: function list() {\n var result = [];\n var options = this.options;\n\n if (typeof options === 'function') {\n return options() || [];\n }\n\n var start = parseOption(options.start);\n var end = parseOption(options.end);\n var step = parseOption(options.step);\n var fmt = options.format || this.format;\n\n if (start && end && step) {\n var startMinutes = start.minutes + start.hours * 60;\n var endMinutes = end.minutes + end.hours * 60;\n var stepMinutes = step.minutes + step.hours * 60;\n var len = Math.floor((endMinutes - startMinutes) / stepMinutes);\n\n for (var i = 0; i <= len; i++) {\n var timeMinutes = startMinutes + i * stepMinutes;\n var hours = Math.floor(timeMinutes / 60);\n var minutes = timeMinutes % 60;\n var value = new Date(this.date).setHours(hours, minutes, 0);\n result.push({\n value: value,\n text: this.formatDate(value, fmt)\n });\n }\n }\n\n return result;\n }\n },\n mounted: function mounted() {\n this.scrollToSelected();\n },\n methods: {\n formatDate: function formatDate(date, fmt) {\n return format(date, fmt, {\n locale: this.translateFn('formatLocale')\n });\n },\n scrollToSelected: function scrollToSelected() {\n var element = this.$el.querySelector('.active');\n if (!element) return;\n var scrollElement = getScrollParent(element, this.$el);\n if (!scrollElement) return;\n var to = element.offsetTop;\n scrollTo$1(scrollElement, to);\n },\n handleSelect: function handleSelect(value) {\n this.$emit('select', value, 'time');\n }\n }\n};\n\n/* script */\nvar __vue_script__$6 = script$6;\n/* template */\n\nvar __vue_render__$8 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('scrollbar-vertical', _vm._l(_vm.list, function (item) {\n return _c('div', {\n key: item.value,\n class: [_vm.prefixClass + \"-time-option\", _vm.getClasses(item.value)],\n on: {\n \"click\": function click($event) {\n return _vm.handleSelect(item.value);\n }\n }\n }, [_vm._v(\"\\n \" + _vm._s(item.text) + \"\\n \")]);\n }), 0);\n};\n\nvar __vue_staticRenderFns__$8 = [];\n/* style */\n\nvar __vue_inject_styles__$8 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$8 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$8 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$8 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar ListOptions = normalizeComponent({\n render: __vue_render__$8,\n staticRenderFns: __vue_staticRenderFns__$8\n}, __vue_inject_styles__$8, __vue_script__$6, __vue_scope_id__$8, __vue_is_functional_template__$8, __vue_module_identifier__$8, false, undefined, undefined, undefined);\n\n//\nvar script$7 = {\n name: 'TimePanel',\n components: {\n ListColumns: ListColumns,\n ListOptions: ListOptions\n },\n inject: {\n translateFn: {\n default: function _default() {\n return getLocaleFieldValue;\n }\n },\n prefixClass: {\n default: 'mx'\n }\n },\n props: {\n value: {},\n defaultValue: {\n default: function _default() {\n var date = new Date();\n date.setHours(0, 0, 0, 0);\n return date;\n }\n },\n format: {\n default: 'HH:mm:ss'\n },\n timeTitleFormat: {\n type: String,\n default: 'YYYY-MM-DD'\n },\n showTimeHeader: {\n type: Boolean,\n default: false\n },\n disabledTime: {\n type: Function,\n default: function _default() {\n return false;\n }\n },\n timePickerOptions: {\n type: [Object, Function],\n default: function _default() {\n return null;\n }\n },\n hourOptions: Array,\n minuteOptions: Array,\n secondOptions: Array,\n hourStep: {\n type: Number,\n default: 1\n },\n minuteStep: {\n type: Number,\n default: 1\n },\n secondStep: {\n type: Number,\n default: 1\n },\n showHour: {\n type: Boolean,\n default: undefined\n },\n showMinute: {\n type: Boolean,\n default: undefined\n },\n showSecond: {\n type: Boolean,\n default: undefined\n },\n use12h: {\n type: Boolean,\n default: undefined\n },\n scrollDuration: {\n type: Number,\n default: 100\n }\n },\n computed: {\n innerValue: function innerValue() {\n return getValidDate(this.value, this.defaultValue);\n },\n title: function title() {\n var titleFormat = this.timeTitleFormat;\n var date = new Date(this.innerValue);\n return this.formatDate(date, titleFormat);\n },\n innerForamt: function innerForamt() {\n return typeof this.format === 'string' ? this.format : 'HH:mm:ss';\n },\n ShowHourMinuteSecondAMPM: function ShowHourMinuteSecondAMPM() {\n var _this = this;\n\n var fmt = this.innerForamt;\n var defaultProps = {\n showHour: /[HhKk]/.test(fmt),\n showMinute: /m/.test(fmt),\n showSecond: /s/.test(fmt),\n use12h: /a/i.test(fmt)\n };\n var obj = {};\n Object.keys(defaultProps).forEach(function (key) {\n obj[key] = typeof _this[key] === 'boolean' ? _this[key] : defaultProps[key];\n });\n return obj;\n }\n },\n methods: {\n formatDate: function formatDate(date, fmt) {\n return format(date, fmt, {\n locale: this.translateFn('formatLocale')\n });\n },\n isDisabled: function isDisabled(date) {\n return this.disabledTime(new Date(date));\n },\n handleSelect: function handleSelect(value, type) {\n var date = new Date(value);\n\n if (!this.isDisabled(value)) {\n this.$emit('select', date, type);\n }\n },\n handleClickTitle: function handleClickTitle() {\n this.$emit('title-click');\n },\n getClasses: function getClasses(value) {\n var cellDate = new Date(value);\n\n if (this.isDisabled(value)) {\n return 'disabled';\n }\n\n if (cellDate.getTime() === this.innerValue.getTime()) {\n return 'active';\n }\n\n return '';\n }\n }\n};\n\n/* script */\nvar __vue_script__$7 = script$7;\n/* template */\n\nvar __vue_render__$9 = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('div', {\n class: _vm.prefixClass + \"-time\"\n }, [_vm.showTimeHeader ? _c('div', {\n class: _vm.prefixClass + \"-time-header\"\n }, [_c('button', {\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text \" + _vm.prefixClass + \"-time-header-title\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.handleClickTitle\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.title) + \"\\n \")])]) : _vm._e(), _vm._v(\" \"), _c('div', {\n class: _vm.prefixClass + \"-time-content\"\n }, [_vm.timePickerOptions ? _c('list-options', {\n attrs: {\n \"date\": _vm.innerValue,\n \"get-classes\": _vm.getClasses,\n \"options\": _vm.timePickerOptions,\n \"format\": _vm.innerForamt\n },\n on: {\n \"select\": _vm.handleSelect\n }\n }) : _c('list-columns', _vm._b({\n attrs: {\n \"date\": _vm.innerValue,\n \"get-classes\": _vm.getClasses,\n \"hour-options\": _vm.hourOptions,\n \"minute-options\": _vm.minuteOptions,\n \"second-options\": _vm.secondOptions,\n \"hour-step\": _vm.hourStep,\n \"minute-step\": _vm.minuteStep,\n \"second-step\": _vm.secondStep,\n \"scroll-duration\": _vm.scrollDuration\n },\n on: {\n \"select\": _vm.handleSelect\n }\n }, 'list-columns', _vm.ShowHourMinuteSecondAMPM, false))], 1)]);\n};\n\nvar __vue_staticRenderFns__$9 = [];\n/* style */\n\nvar __vue_inject_styles__$9 = undefined;\n/* scoped */\n\nvar __vue_scope_id__$9 = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$9 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$9 = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar TimePanel = normalizeComponent({\n render: __vue_render__$9,\n staticRenderFns: __vue_staticRenderFns__$9\n}, __vue_inject_styles__$9, __vue_script__$7, __vue_scope_id__$9, __vue_is_functional_template__$9, __vue_module_identifier__$9, false, undefined, undefined, undefined);\n\nvar TimeRange = {\n name: 'TimeRange',\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n props: _objectSpread2({}, TimePanel.props),\n data: function data() {\n return {\n startValue: new Date(NaN),\n endValue: new Date(NaN)\n };\n },\n watch: {\n value: {\n immediate: true,\n handler: function handler() {\n if (isValidRangeDate(this.value)) {\n var _this$value = _slicedToArray(this.value, 2),\n startValue = _this$value[0],\n endValue = _this$value[1];\n\n this.startValue = startValue;\n this.endValue = endValue;\n } else {\n this.startValue = new Date(NaN);\n this.endValue = new Date(NaN);\n }\n }\n }\n },\n methods: {\n emitChange: function emitChange(type, index) {\n var date = [this.startValue, this.endValue];\n this.$emit('select', date, type === 'time' ? 'time-range' : type, index);\n },\n handleSelectStart: function handleSelectStart(date, type) {\n this.startValue = date; // check the NaN\n\n if (!(this.endValue.getTime() >= date.getTime())) {\n this.endValue = date;\n }\n\n this.emitChange(type, 0);\n },\n handleSelectEnd: function handleSelectEnd(date, type) {\n // check the NaN\n this.endValue = date;\n\n if (!(this.startValue.getTime() <= date.getTime())) {\n this.startValue = date;\n }\n\n this.emitChange(type, 1);\n },\n disabledStartTime: function disabledStartTime(date) {\n return this.disabledTime(date, 0);\n },\n disabledEndTime: function disabledEndTime(date) {\n return date.getTime() < this.startValue.getTime() || this.disabledTime(date, 1);\n }\n },\n render: function render() {\n var h = arguments[0];\n var defaultValues = Array.isArray(this.defaultValue) ? this.defaultValue : [this.defaultValue, this.defaultValue];\n var prefixClass = this.prefixClass;\n return h(\"div\", {\n \"class\": \"\".concat(prefixClass, \"-range-wrapper\")\n }, [h(TimePanel, {\n \"props\": _objectSpread2({}, _objectSpread2({}, this.$props, {\n value: this.startValue,\n defaultValue: defaultValues[0],\n disabledTime: this.disabledStartTime\n })),\n \"on\": _objectSpread2({}, _objectSpread2({}, this.$listeners, {\n select: this.handleSelectStart\n }))\n }), h(TimePanel, {\n \"props\": _objectSpread2({}, _objectSpread2({}, this.$props, {\n value: this.endValue,\n defaultValue: defaultValues[1],\n disabledTime: this.disabledEndTime\n })),\n \"on\": _objectSpread2({}, _objectSpread2({}, this.$listeners, {\n select: this.handleSelectEnd\n }))\n })]);\n }\n};\n\nfunction _extends$1() {\n return _extends$1 = Object.assign || function (a) {\n for (var b, c = 1; c < arguments.length; c++) {\n for (var d in b = arguments[c], b) {\n Object.prototype.hasOwnProperty.call(b, d) && (a[d] = b[d]);\n }\n }\n\n return a;\n }, _extends$1.apply(this, arguments);\n}\n\nvar normalMerge = [\"attrs\", \"props\", \"domProps\"],\n toArrayMerge = [\"class\", \"style\", \"directives\"],\n functionalMerge = [\"on\", \"nativeOn\"],\n mergeJsxProps = function mergeJsxProps(a) {\n return a.reduce(function (c, a) {\n for (var b in a) {\n if (!c[b]) c[b] = a[b];else if (-1 !== normalMerge.indexOf(b)) c[b] = _extends$1({}, c[b], a[b]);else if (-1 !== toArrayMerge.indexOf(b)) {\n var d = c[b] instanceof Array ? c[b] : [c[b]],\n e = a[b] instanceof Array ? a[b] : [a[b]];\n c[b] = d.concat(e);\n } else if (-1 !== functionalMerge.indexOf(b)) {\n for (var f in a[b]) {\n if (c[b][f]) {\n var g = c[b][f] instanceof Array ? c[b][f] : [c[b][f]],\n h = a[b][f] instanceof Array ? a[b][f] : [a[b][f]];\n c[b][f] = g.concat(h);\n } else c[b][f] = a[b][f];\n }\n } else if (\"hook\" == b) for (var i in a[b]) {\n c[b][i] = c[b][i] ? mergeFn(c[b][i], a[b][i]) : a[b][i];\n } else c[b] = a[b];\n }\n\n return c;\n }, {});\n},\n mergeFn = function mergeFn(a, b) {\n return function () {\n a && a.apply(this, arguments), b && b.apply(this, arguments);\n };\n};\n\nvar helper = mergeJsxProps;\n\nvar DatetimePanel = {\n name: 'DatetimePanel',\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n props: _objectSpread2({}, CalendarPanel.props, {}, TimePanel.props, {\n showTimePanel: {\n type: Boolean,\n default: undefined\n }\n }),\n data: function data() {\n return {\n defaultTimeVisible: false,\n currentValue: this.value\n };\n },\n computed: {\n timeVisible: function timeVisible() {\n return typeof this.showTimePanel === 'boolean' ? this.showTimePanel : this.defaultTimeVisible;\n }\n },\n watch: {\n value: function value(val) {\n this.currentValue = val;\n }\n },\n methods: {\n closeTimePanel: function closeTimePanel() {\n this.defaultTimeVisible = false;\n },\n openTimePanel: function openTimePanel() {\n this.defaultTimeVisible = true;\n },\n emitDate: function emitDate(date, type) {\n this.$emit('select', date, type);\n },\n handleSelect: function handleSelect(date, type) {\n if (type === 'date') {\n this.openTimePanel();\n }\n\n var datetime = assignTime(date, getValidDate(this.value, this.defaultValue));\n\n if (this.disabledTime(new Date(datetime))) {\n // set the time of defalutValue;\n datetime = assignTime(date, this.defaultValue);\n\n if (this.disabledTime(new Date(datetime))) {\n // if disabled don't emit date\n this.currentValue = datetime;\n return;\n }\n }\n\n this.emitDate(datetime, type);\n }\n },\n render: function render() {\n var h = arguments[0];\n var calendarProps = {\n props: _objectSpread2({}, pick(this, Object.keys(CalendarPanel.props)), {\n type: 'date',\n value: this.currentValue\n }),\n on: {\n select: this.handleSelect\n }\n };\n var timeProps = {\n props: _objectSpread2({}, pick(this, Object.keys(TimePanel.props)), {\n showTimeHeader: true,\n value: this.currentValue\n }),\n on: {\n select: this.emitDate,\n 'title-click': this.closeTimePanel\n }\n };\n var prefixClass = this.prefixClass;\n return h(\"div\", [h(CalendarPanel, helper([{}, calendarProps])), this.timeVisible && h(TimePanel, helper([{\n \"class\": \"\".concat(prefixClass, \"-calendar-time\")\n }, timeProps]))]);\n }\n};\n\nvar DatetimeRange = {\n name: 'DatetimeRange',\n inject: {\n prefixClass: {\n default: 'mx'\n }\n },\n props: _objectSpread2({}, CalendarRange.props, {}, TimeRange.props, {\n showTimePanel: {\n type: Boolean,\n default: undefined\n }\n }),\n data: function data() {\n return {\n defaultTimeVisible: false,\n currentValue: this.value\n };\n },\n computed: {\n timeVisible: function timeVisible() {\n return typeof this.showTimePanel === 'boolean' ? this.showTimePanel : this.defaultTimeVisible;\n }\n },\n watch: {\n value: function value(val) {\n this.currentValue = val;\n }\n },\n methods: {\n closeTimePanel: function closeTimePanel() {\n this.defaultTimeVisible = false;\n },\n openTimePanel: function openTimePanel() {\n this.defaultTimeVisible = true;\n },\n emitDate: function emitDate(dates, type) {\n this.$emit('select', dates, type);\n },\n handleSelect: function handleSelect(dates, type) {\n var _this = this;\n\n if (type === 'date') {\n this.openTimePanel();\n }\n\n var defaultValues = Array.isArray(this.defaultValue) ? this.defaultValue : [this.defaultValue, this.defaultValue];\n var datetimes = dates.map(function (date, i) {\n var time = isValidRangeDate(_this.value) ? _this.value[i] : defaultValues[i];\n return assignTime(date, time);\n });\n\n if (datetimes[1].getTime() < datetimes[0].getTime()) {\n datetimes = [datetimes[0], datetimes[0]];\n }\n\n if (datetimes.some(this.disabledTime)) {\n datetimes = dates.map(function (date, i) {\n return assignTime(date, defaultValues[i]);\n });\n\n if (datetimes.some(this.disabledTime)) {\n this.currentValue = datetimes;\n return;\n }\n }\n\n this.emitDate(datetimes, type);\n }\n },\n render: function render() {\n var h = arguments[0];\n var calendarProps = {\n props: _objectSpread2({}, pick(this, Object.keys(CalendarRange.props)), {\n type: 'date',\n value: this.currentValue\n }),\n on: {\n select: this.handleSelect\n }\n };\n var timeProps = {\n props: _objectSpread2({}, pick(this, Object.keys(TimeRange.props)), {\n value: this.currentValue,\n showTimeHeader: true\n }),\n on: {\n select: this.emitDate,\n 'title-click': this.closeTimePanel\n }\n };\n var prefixClass = this.prefixClass;\n return h(\"div\", [h(CalendarRange, helper([{}, calendarProps])), this.timeVisible && h(TimeRange, helper([{\n \"class\": \"\".concat(prefixClass, \"-calendar-time\")\n }, timeProps]))]);\n }\n};\n\nvar componentMap = {\n default: CalendarPanel,\n time: TimePanel,\n datetime: DatetimePanel\n};\nvar componentRangeMap = {\n default: CalendarRange,\n time: TimeRange,\n datetime: DatetimeRange\n};\nvar script$8 = {\n name: 'DatePicker',\n components: {\n IconCalendar: IconCalendar,\n IconClose: IconClose,\n Popup: Popup\n },\n provide: function provide() {\n return {\n translateFn: this.getLocaleFieldValue,\n getWeek: this.getWeek,\n prefixClass: this.prefixClass\n };\n },\n props: _objectSpread2({}, DatetimePanel.props, {\n value: {},\n valueType: {\n type: String,\n default: 'date' // date, format, timestamp, or token like 'YYYY-MM-DD'\n\n },\n type: {\n type: String,\n // ['date', 'datetime', 'time', 'year', 'month', 'week']\n default: 'date'\n },\n format: {\n type: String,\n default: function _default() {\n var map = {\n date: 'YYYY-MM-DD',\n datetime: 'YYYY-MM-DD HH:mm:ss',\n year: 'YYYY',\n month: 'YYYY-MM',\n time: 'HH:mm:ss',\n week: 'w'\n };\n return map[this.type] || map.date;\n }\n },\n formatter: {\n type: Object\n },\n range: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n rangeSeparator: {\n type: String,\n default: function _default() {\n return this.multiple ? ',' : ' ~ ';\n }\n },\n lang: {\n type: [String, Object]\n },\n placeholder: {\n type: String,\n default: ''\n },\n editable: {\n type: Boolean,\n default: true\n },\n disabled: {\n type: Boolean,\n default: false\n },\n clearable: {\n type: Boolean,\n default: true\n },\n prefixClass: {\n type: String,\n default: 'mx'\n },\n inputClass: {\n default: function _default() {\n return \"\".concat(this.prefixClass, \"-input\");\n }\n },\n inputAttr: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n appendToBody: {\n type: Boolean,\n default: true\n },\n open: {\n type: Boolean,\n default: undefined\n },\n popupClass: {},\n popupStyle: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n inline: {\n type: Boolean,\n default: false\n },\n confirm: {\n type: Boolean,\n default: false\n },\n confirmText: {\n type: String,\n default: 'OK'\n },\n renderInputText: {\n type: Function\n },\n shortcuts: {\n type: Array,\n validator: function validator(value) {\n return Array.isArray(value) && value.every(function (v) {\n return isObject(v) && typeof v.text === 'string' && typeof v.onClick === 'function';\n });\n },\n default: function _default() {\n return [];\n }\n }\n }),\n data: function data() {\n return {\n // cache the innervalue, wait to confirm\n currentValue: null,\n userInput: null,\n defaultOpen: false\n };\n },\n computed: {\n currentComponent: function currentComponent() {\n var map = this.range ? componentRangeMap : componentMap;\n return map[this.type] || map.default;\n },\n currentComponentProps: function currentComponentProps() {\n var props = _objectSpread2({}, pick(this, Object.keys(this.currentComponent.props)), {\n value: this.currentValue\n });\n\n return props;\n },\n popupVisible: function popupVisible() {\n return !this.disabled && (typeof this.open === 'boolean' ? this.open : this.defaultOpen);\n },\n innerValue: function innerValue() {\n var value = this.value;\n\n if (this.validMultipleType) {\n value = Array.isArray(value) ? value : [];\n return value.map(this.value2date);\n }\n\n if (this.range) {\n value = Array.isArray(value) ? value.slice(0, 2) : [null, null];\n return value.map(this.value2date);\n }\n\n return this.value2date(this.value);\n },\n text: function text() {\n var _this = this;\n\n if (this.userInput !== null) {\n return this.userInput;\n }\n\n if (typeof this.renderInputText === 'function') {\n return this.renderInputText(this.innerValue);\n }\n\n if (!this.isValidValue(this.innerValue)) {\n return '';\n }\n\n var fmt = this.format;\n\n if (Array.isArray(this.innerValue)) {\n return this.innerValue.map(function (v) {\n return _this.formatDate(v, fmt);\n }).join(this.rangeSeparator);\n }\n\n return this.formatDate(this.innerValue, fmt);\n },\n showClearIcon: function showClearIcon() {\n return !this.disabled && this.clearable && this.text;\n },\n locale: function locale() {\n if (isObject(this.lang)) {\n return mergeDeep(getLocale(), this.lang);\n }\n\n return getLocale(this.lang);\n },\n validMultipleType: function validMultipleType() {\n var types = ['date', 'month', 'year'];\n return this.multiple && !this.range && types.indexOf(this.type) !== -1;\n }\n },\n watch: {\n innerValue: {\n immediate: true,\n handler: function handler(val) {\n this.currentValue = val;\n }\n }\n },\n created: function created() {\n if (_typeof(this.format) === 'object') {\n console.warn(\"[vue2-datepicker]: The prop `format` don't support Object any more. You can use the new prop `formatter` to replace it\");\n }\n },\n methods: {\n handleClickOutSide: function handleClickOutSide(evt) {\n var target = evt.target;\n\n if (!this.$el.contains(target)) {\n this.closePopup();\n }\n },\n getFormatter: function getFormatter(key) {\n return isObject(this.formatter) && this.formatter[key] || isObject(this.format) && this.format[key];\n },\n getWeek: function getWeek$1(date, options) {\n if (typeof this.getFormatter('getWeek') === 'function') {\n return this.getFormatter('getWeek')(date, options);\n }\n\n return getWeek(date, options);\n },\n parseDate: function parseDate(value, fmt) {\n if (typeof this.getFormatter('parse') === 'function') {\n return this.getFormatter('parse')(value, fmt);\n }\n\n var backupDate = new Date();\n return parse(value, fmt, {\n locale: this.locale.formatLocale,\n backupDate: backupDate\n });\n },\n formatDate: function formatDate(date, fmt) {\n if (typeof this.getFormatter('stringify') === 'function') {\n return this.getFormatter('stringify')(date, fmt);\n }\n\n return format(date, fmt, {\n locale: this.locale.formatLocale\n });\n },\n // transform the outer value to inner date\n value2date: function value2date(value) {\n switch (this.valueType) {\n case 'date':\n return value instanceof Date ? new Date(value.getTime()) : new Date(NaN);\n\n case 'timestamp':\n return typeof value === 'number' ? new Date(value) : new Date(NaN);\n\n case 'format':\n return typeof value === 'string' ? this.parseDate(value, this.format) : new Date(NaN);\n\n default:\n return typeof value === 'string' ? this.parseDate(value, this.valueType) : new Date(NaN);\n }\n },\n // transform the inner date to outer value\n date2value: function date2value(date) {\n if (!isValidDate$1(date)) return null;\n\n switch (this.valueType) {\n case 'date':\n return date;\n\n case 'timestamp':\n return date.getTime();\n\n case 'format':\n return this.formatDate(date, this.format);\n\n default:\n return this.formatDate(date, this.valueType);\n }\n },\n emitValue: function emitValue(date, type) {\n // fix IE11/10 trigger input event when input is focused. (placeholder !== '')\n this.userInput = null;\n var value = Array.isArray(date) ? date.map(this.date2value) : this.date2value(date);\n this.$emit('input', value);\n this.$emit('change', value, type);\n this.afterEmitValue(type);\n return value;\n },\n afterEmitValue: function afterEmitValue(type) {\n // this.type === 'datetime', click the time should close popup\n if (!type || type === this.type || type === 'time') {\n this.closePopup();\n }\n },\n isValidValue: function isValidValue(value) {\n if (this.validMultipleType) {\n return isValidDates(value);\n }\n\n if (this.range) {\n return isValidRangeDate(value);\n }\n\n return isValidDate$1(value);\n },\n isValidValueAndNotDisabled: function isValidValueAndNotDisabled(value) {\n if (!this.isValidValue(value)) {\n return false;\n }\n\n var disabledDate = typeof this.disabledDate === 'function' ? this.disabledDate : function () {\n return false;\n };\n var disabledTime = typeof this.disabledTime === 'function' ? this.disabledTime : function () {\n return false;\n };\n\n if (!Array.isArray(value)) {\n value = [value];\n }\n\n return value.every(function (v) {\n return !disabledDate(v) && !disabledTime(v);\n });\n },\n handleMultipleDates: function handleMultipleDates(date, dates) {\n if (this.validMultipleType && dates) {\n var nextDates = dates.filter(function (v) {\n return v.getTime() !== date.getTime();\n });\n\n if (nextDates.length === dates.length) {\n nextDates.push(date);\n }\n\n return nextDates;\n }\n\n return date;\n },\n handleSelectDate: function handleSelectDate(val, type, dates) {\n val = this.handleMultipleDates(val, dates);\n\n if (this.confirm) {\n this.currentValue = val;\n } else {\n this.emitValue(val, this.validMultipleType ? \"multiple-\".concat(type) : type);\n }\n },\n handleClear: function handleClear() {\n this.emitValue(this.range ? [null, null] : null);\n this.$emit('clear');\n },\n handleConfirmDate: function handleConfirmDate() {\n var value = this.emitValue(this.currentValue);\n this.$emit('confirm', value);\n },\n handleSelectShortcut: function handleSelectShortcut(item) {\n if (isObject(item) && typeof item.onClick === 'function') {\n var date = item.onClick(this);\n\n if (date) {\n this.emitValue(date);\n }\n }\n },\n openPopup: function openPopup(evt) {\n if (this.popupVisible) return;\n this.defaultOpen = true;\n this.$emit('open', evt);\n this.$emit('update:open', true);\n },\n closePopup: function closePopup() {\n if (!this.popupVisible) return;\n this.defaultOpen = false;\n this.$emit('close');\n this.$emit('update:open', false);\n },\n blur: function blur() {\n // when use slot input\n if (this.$refs.input) {\n this.$refs.input.blur();\n }\n },\n focus: function focus() {\n if (this.$refs.input) {\n this.$refs.input.focus();\n }\n },\n handleInputChange: function handleInputChange() {\n var _this2 = this;\n\n if (!this.editable || this.userInput === null) return;\n var text = this.userInput.trim();\n this.userInput = null;\n\n if (text === '') {\n this.handleClear();\n return;\n }\n\n var date;\n\n if (this.validMultipleType) {\n date = text.split(this.rangeSeparator).map(function (v) {\n return _this2.parseDate(v.trim(), _this2.format);\n });\n } else if (this.range) {\n var arr = text.split(this.rangeSeparator);\n\n if (arr.length !== 2) {\n // Maybe the separator during the day is the same as the separator for the date\n // eg: 2019-10-09-2020-01-02\n arr = text.split(this.rangeSeparator.trim());\n }\n\n date = arr.map(function (v) {\n return _this2.parseDate(v.trim(), _this2.format);\n });\n } else {\n date = this.parseDate(text, this.format);\n }\n\n if (this.isValidValueAndNotDisabled(date)) {\n this.emitValue(date);\n this.blur();\n } else {\n this.$emit('input-error', text);\n }\n },\n handleInputInput: function handleInputInput(evt) {\n this.userInput = evt.target.value;\n },\n handleInputKeydown: function handleInputKeydown(evt) {\n var keyCode = evt.keyCode; // Tab 9 or Enter 13\n\n if (keyCode === 9) {\n this.closePopup();\n } else if (keyCode === 13) {\n this.handleInputChange();\n }\n },\n handleInputBlur: function handleInputBlur(evt) {\n // tab close\n this.$emit('blur', evt);\n },\n handleInputFocus: function handleInputFocus(evt) {\n this.openPopup(evt);\n this.$emit('focus', evt);\n },\n hasSlot: function hasSlot(name) {\n return !!(this.$slots[name] || this.$scopedSlots[name]);\n },\n getLocaleFieldValue: function getLocaleFieldValue$1(path) {\n return getLocaleFieldValue(path, this.locale);\n }\n }\n};\n\nvar __vue_script__$8 = script$8;\n/* template */\n\nvar __vue_render__$a = function __vue_render__() {\n var _obj;\n\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('div', {\n class: (_obj = {}, _obj[_vm.prefixClass + \"-datepicker\"] = true, _obj[_vm.prefixClass + \"-datepicker-range\"] = _vm.range, _obj[_vm.prefixClass + \"-datepicker-inline\"] = _vm.inline, _obj.disabled = _vm.disabled, _obj)\n }, [!_vm.inline ? _c('div', {\n class: _vm.prefixClass + \"-input-wrapper\",\n on: {\n \"mousedown\": _vm.openPopup\n }\n }, [_vm._t(\"input\", [_c('input', _vm._g(_vm._b({\n ref: \"input\"\n }, 'input', _extends({}, {\n name: 'date',\n type: 'text',\n autocomplete: 'off',\n value: _vm.text,\n class: _vm.inputClass,\n readonly: !_vm.editable,\n disabled: _vm.disabled,\n placeholder: _vm.placeholder\n }, _vm.inputAttr), false), {\n keydown: _vm.handleInputKeydown,\n focus: _vm.handleInputFocus,\n blur: _vm.handleInputBlur,\n input: _vm.handleInputInput,\n change: _vm.handleInputChange\n }))], {\n \"props\": _extends({}, {\n name: 'date',\n type: 'text',\n autocomplete: 'off',\n value: _vm.text,\n class: _vm.inputClass,\n readonly: !_vm.editable,\n disabled: _vm.disabled,\n placeholder: _vm.placeholder\n }, _vm.inputAttr),\n \"events\": {\n keydown: _vm.handleInputKeydown,\n focus: _vm.handleInputFocus,\n blur: _vm.handleInputBlur,\n input: _vm.handleInputInput,\n change: _vm.handleInputChange\n }\n }), _vm._v(\" \"), _vm.showClearIcon ? _c('i', {\n class: _vm.prefixClass + \"-icon-clear\",\n on: {\n \"mousedown\": function mousedown($event) {\n $event.stopPropagation();\n return _vm.handleClear($event);\n }\n }\n }, [_vm._t(\"icon-clear\", [_c('icon-close')])], 2) : _vm._e(), _vm._v(\" \"), _c('i', {\n class: _vm.prefixClass + \"-icon-calendar\"\n }, [_vm._t(\"icon-calendar\", [_c('icon-calendar')])], 2)], 2) : _vm._e(), _vm._v(\" \"), _c('Popup', {\n ref: \"popup\",\n class: _vm.popupClass,\n style: _vm.popupStyle,\n attrs: {\n \"inline\": _vm.inline,\n \"visible\": _vm.popupVisible,\n \"append-to-body\": _vm.appendToBody\n },\n on: {\n \"clickoutside\": _vm.handleClickOutSide\n }\n }, [_vm.hasSlot('sidebar') || _vm.shortcuts.length ? _c('div', {\n class: _vm.prefixClass + \"-datepicker-sidebar\"\n }, [_vm._t(\"sidebar\", null, {\n \"value\": _vm.currentValue,\n \"emit\": _vm.emitValue\n }), _vm._v(\" \"), _vm._l(_vm.shortcuts, function (v, i) {\n return _c('button', {\n key: i,\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-btn-text \" + _vm.prefixClass + \"-btn-shortcut\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function click($event) {\n return _vm.handleSelectShortcut(v);\n }\n }\n }, [_vm._v(\"\\n \" + _vm._s(v.text) + \"\\n \")]);\n })], 2) : _vm._e(), _vm._v(\" \"), _c('div', {\n class: _vm.prefixClass + \"-datepicker-content\"\n }, [_vm.hasSlot('header') ? _c('div', {\n class: _vm.prefixClass + \"-datepicker-header\"\n }, [_vm._t(\"header\", null, {\n \"value\": _vm.currentValue,\n \"emit\": _vm.emitValue\n })], 2) : _vm._e(), _vm._v(\" \"), _c('div', {\n class: _vm.prefixClass + \"-datepicker-body\"\n }, [_vm._t(\"content\", [_c(_vm.currentComponent, _vm._b({\n ref: \"picker\",\n tag: \"component\",\n on: {\n \"select\": _vm.handleSelectDate\n }\n }, 'component', _vm.currentComponentProps, false))], {\n \"value\": _vm.currentValue,\n \"emit\": _vm.emitValue\n })], 2), _vm._v(\" \"), _vm.hasSlot('footer') || _vm.confirm ? _c('div', {\n class: _vm.prefixClass + \"-datepicker-footer\"\n }, [_vm._t(\"footer\", null, {\n \"value\": _vm.currentValue,\n \"emit\": _vm.emitValue\n }), _vm._v(\" \"), _vm.confirm ? _c('button', {\n class: _vm.prefixClass + \"-btn \" + _vm.prefixClass + \"-datepicker-btn-confirm\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.handleConfirmDate\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.confirmText) + \"\\n \")]) : _vm._e()], 2) : _vm._e()])])], 1);\n};\n\nvar __vue_staticRenderFns__$a = [];\n/* style */\n\nvar __vue_inject_styles__$a = undefined;\n/* scoped */\n\nvar __vue_scope_id__$a = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__$a = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$a = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar DatePicker = normalizeComponent({\n render: __vue_render__$a,\n staticRenderFns: __vue_staticRenderFns__$a\n}, __vue_inject_styles__$a, __vue_script__$8, __vue_scope_id__$a, __vue_is_functional_template__$a, __vue_module_identifier__$a, false, undefined, undefined, undefined);\n\nDatePicker.locale = locale$1;\n\nDatePicker.install = function install(Vue) {\n Vue.component(DatePicker.name, DatePicker);\n};\n\nif (typeof window !== 'undefined' && window.Vue) {\n DatePicker.install(window.Vue);\n}\n\n_extends(DatePicker, {\n CalendarPanel: CalendarPanel,\n CalendarRange: CalendarRange,\n TimePanel: TimePanel,\n TimeRange: TimeRange,\n DatetimePanel: DatetimePanel,\n DatetimeRange: DatetimeRange\n});\n\nexport default DatePicker;\n","import toInteger from '../_lib/toInteger/index.js';\nimport addYears from '../addYears/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name subYears\n * @category Year Helpers\n * @summary Subtract the specified number of years from the given date.\n *\n * @description\n * Subtract the specified number of years from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of years to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the years subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 5 years from 1 September 2014:\n * var result = subYears(new Date(2014, 8, 1), 5)\n * //=> Tue Sep 01 2009 00:00:00\n */\n\nexport default function subYears(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addYears(dirtyDate, -amount);\n}","import toDate from '../toDate/index.js';\nimport requiredArgs from '../_lib/requiredArgs/index.js';\n/**\n * @name differenceInCalendarMonths\n * @category Month Helpers\n * @summary Get the number of calendar months between the given dates.\n *\n * @description\n * Get the number of calendar months between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar months\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar months are between 31 January 2014 and 1 September 2014?\n * var result = differenceInCalendarMonths(\n * new Date(2014, 8, 1),\n * new Date(2014, 0, 31)\n * )\n * //=> 8\n */\n\nexport default function differenceInCalendarMonths(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear();\n var monthDiff = dateLeft.getMonth() - dateRight.getMonth();\n return yearDiff * 12 + monthDiff;\n}"],"sourceRoot":""} |