403Webshell
Server IP : 93.86.61.54  /  Your IP : 216.73.216.60
Web Server : Apache/2.4.62 (Ubuntu)
System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64
User : www-data ( 33)
PHP Version : 8.4.22
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/html/projects/nextcloud/apps/richdocuments/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/projects/nextcloud/apps/richdocuments/js/files.js.map
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/global.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/fails.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/fails.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/global.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/is-object.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/has.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/global.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-define-property.js","webpack:///./src/services/config.tsx","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./src/view/FilesAppIntegration.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/fails.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/has.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/an-object.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/has.js","webpack:///./src/helpers/url.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/an-object.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/export.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/redefine.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/iterators.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///./node_modules/css-loader/dist/runtime/cssWithMappingToString.js","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/an-object.js","webpack:///./src/services/preload.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/is-object.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/redefine.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/to-length.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/is-object.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/@nextcloud/router/dist/index.js","webpack:///./node_modules/@nextcloud/event-bus/dist/index.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/export.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/set-global.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/set-global.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/uid.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/to-object.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-create.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/set-global.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/regexp-exec.js","webpack:///./src/helpers/index.js","webpack:///./src/helpers/types.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/redefine.js","webpack:///./node_modules/@nextcloud/l10n/dist/index.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/modules/es.regexp.exec.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/shared.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/uid.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/to-length.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/to-object.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/modules/es.regexp.exec.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/parse-options.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/shared.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/is-array.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/array-for-each.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/internal-metadata.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/iterate.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/classof.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/shared.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/uid.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/to-length.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/modules/es.string.replace.js","webpack:///./src/services/postMessage.tsx","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/modules/es.array.index-of.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/path.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/classof.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/@nextcloud/router/node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///./node_modules/@nextcloud/event-bus/dist/ProxyBus.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js","webpack:///./node_modules/@nextcloud/event-bus/dist/SimpleBus.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/path.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/create-property.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/a-function.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/es.array.for-each.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/html.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/create-iterator-constructor.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/es.map.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/collection.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/freezing.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/is-array-iterator-method.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/iterator-close.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/collection-strong.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/redefine-all.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/set-species.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/@nextcloud/event-bus/node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/export.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/path.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/to-object.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/@nextcloud/l10n/node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///./src/view/NewFileMenu.js","webpack:///./node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./css/viewer.scss","webpack:///./img/x-office-document.svg","webpack:///./img/x-office-spreadsheet.svg","webpack:///./img/x-office-presentation.svg","webpack:///./css/viewer.scss?efdf","webpack:///./src/files.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","it","Math","check","globalThis","window","self","global","this","Function","shared","has","uid","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","exec","error","g","e","DESCRIPTORS","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","f","O","P","Attributes","TypeError","Config","values","loadFromGlobal","definePropertyModule","createPropertyDescriptor","isPublic","document","getElementById","fileModel","fileList","undefined","filePath","views","followingEditor","following","handlers","startLoading","getFileList","setViewerMode","showMask","init","fileName","fileId","sendPostMessage","on","_addHeaderFileActions","registerHandler","event","callback","initAfterReady","getFileModel","hideMask","setPageTitle","headerRight","querySelector","richdocumentsHeader","createElement","id","insertBefore","firstChild","_addAvatarList","_addHeaderShareButton","addVersionSidebarEvents","close","reload","removeVersionSidebarEvents","$","remove","saveAs","share","showDetailsView","OC","Apps","showAppSidebar","console","rename","newName","hideAppSidebar","insertGraphic","insertFile","insertFileFromPath","path","filename","substring","lastIndexOf","ajax","type","url","generateUrl","data","done","resp","dialogs","filepicker","theme","FILEPICKER_TYPE_CHOOSE","OCA","Files","App","Sharing","PublicApp","_updateDetailsView","getModelForFile","setViews","forEach","view","ViewId","renderAvatars","followReset","Follow","followCurrentEditor","followView","avatarList","stopPropagation","toggle","append","length","$button","is","hide","debug","unregisterMenu","fileInfo","actionsContainer","actions","find","empty","getContext","$el","first","fileActions","fileInfoModel","$favorite","click","removeClass","addClass","actionFavorite","triggerAction","trigger","indexOf","TAG_FAVORITE","text","$info","actionDetails","all","Details","action","hideMenus","$download","actionDownload","Download","registerMenu","_userEntry","entry","_avatarForView","label","UserName","ReadOnly","isFileOwner","canEdit","PERMISSION_UPDATE","IsCurrentView","removeButton","userId","UserId","avatarContainer","avatar","css","Number","Color","toString","substr","attr","avatardiv","popover","users","viewId","currentUser","push","prop","_originalOnClickRevertVersion","versionTabView","_detailsView","_tabViews","el","_onClickRevertVersion","showVersionPreview","restoreVersion","addCurrentVersion","off","preview","MimeType","getIconUrl","mtime","prepend","each","Util","relativeModifiedDate","parseInt","showRevHistory","preventDefault","element","currentTarget","parentElement","hasClass","version","dataset","revision","title","Status","_restoreVersionCallback","_restoreDAV","restoreVersionExecute","restoreVersionAbort","_restoreSuccess","response","status","Notification","showTemporary","src","_restoreError","restoreUrl","linkToRemoteBase","getCurrentUser","headers","Destination","linkToRemote","success","createNewFile","prompt","result","dir","parent","val","encodeURI","open","then","$buttons","eq","preloadOpen","Preload","setTimeout","FileList","$fileList","one","file","splitPath","RichDocuments","preloadCreate","fileType","Types","getFileType","NewFileMenu","_openTemplatePicker","mime","extension","loggingContext","sharingToken","fails","isObject","String","getSearchParam","results","RegExp","location","href","decodeURI","getWopiUrl","readOnly","closeButton","revisionHistory","wopiurl","protocol","host","getRootUrl","wopisrc","encodeURIComponent","languageToBCP47","getDocumentUrlFromTemplate","templateId","fileDir","fillWithTemplate","requesttoken","requestToken","getDocumentUrlForPublicFile","shareToken","getDocumentUrlForFile","getOwnPropertyDescriptor","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","options","source","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","split","state","unsafe","simple","join","memo","isOldIE","Boolean","atob","getTarget","styleTarget","HTMLIFrameElement","contentDocument","head","stylesInDom","getIndexByIdentifier","identifier","modulesToDom","list","idCountMap","identifiers","item","base","count","concat","index","obj","media","sourceMap","references","updater","addStyle","insertStyleElement","style","attributes","nonce","keys","setAttribute","insert","Error","appendChild","textStore","replaceText","replacement","filter","applyToSingletonTag","styleSheet","cssText","cssNode","createTextNode","childNodes","removeChild","applyToTag","removeAttribute","btoa","unescape","JSON","stringify","singleton","singletonCounter","update","styleIndex","parentNode","removeStyleElement","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","splice","_slicedToArray","arr","Array","isArray","_arrayWithHoles","iterator","_arr","_n","_d","_e","_s","next","err","_iterableToArrayLimit","minLen","_arrayLikeToArray","slice","constructor","from","test","_unsupportedIterableToArray","_nonIterableRest","len","arr2","_item","content","cssMapping","base64","sourceMapping","sourceURLs","sources","map","sourceRoot","cssWithMappingToString","mediaQuery","dedupe","alreadyImportedModules","ceil","floor","argument","isNaN","bitmap","configurable","writable","IndexedObject","requireObjectCoercible","set","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","store","wmget","wmhas","wmset","metadata","facade","STATE","getterFor","TYPE","aFunction","variable","namespace","method","arguments","toInteger","min","generateFilePath","imagePath","generateOcsUrl","generateRemoteUrl","linkTo","app","service","params","allOptions","assign","escape","noRewrite","_build","vars","replace","a","b","charAt","config","modRewriteWorking","isCore","coreApps","link","appswebroots","webroot","subscribe","handler","bus","unsubscribe","emit","_ProxyBus","_SimpleBus","_eventBus","_nc_event_bus","warn","ProxyBus","SimpleBus","wellKnownSymbol","re1","re2","regexpFlags","stickyHelpers","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","lastIndex","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","str","reCopy","match","re","sticky","flags","charsAdded","strCopy","multiline","input","MAX_SAFE_INTEGER","SEMVER_SPEC_VERSION","MAX_LENGTH","MAX_SAFE_COMPONENT_LENGTH","PREFERRED_STRING","fn","valueOf","postfix","random","that","apply","activeXDocument","defineProperties","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","LT","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","temp","parentWindow","NullProtoObjectViaActiveX","display","contentWindow","F","Properties","createIteratorConstructor","getPrototypeOf","setPrototypeOf","setToStringTag","IS_PURE","Iterators","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","ITERATOR","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","TO_STRING_TAG","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","proto","TAG","language","getLanguage","locale","getLocale","matchingWhitelist","de","fr","pop","ooxml","getCapabilities","getFileTypes","spreadsheet","presentation","getCanonicalLocale","translate","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","defaultClearTimeout","runTimeout","fun","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","run","marker","runClearTimeout","Item","array","noop","nextTick","args","browser","env","argv","versions","addListener","once","removeListener","removeAllListeners","prependListener","prependOnceListener","listeners","binding","cwd","chdir","umask","propertyIsEnumerableModule","toIndexedObject","nativeGetOwnPropertyDescriptor","nativePropertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","1","V","classof","functionToString","copyright","names","toLength","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","fromIndex","includes","getOwnPropertySymbols","ignoreCase","dotAll","unicode","R","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","parseOptions","compareIdentifiers","SemVer","loose","includePrerelease","trim","LOOSE","FULL","raw","major","minor","patch","prerelease","num","build","format","other","compareMain","comparePre","release","inc","opts","k","reduce","EXISTS","feature","detection","normalize","POLYFILL","NATIVE","string","toLowerCase","arg","SPECIES","originalArray","C","V8_VERSION","METHOD_NAME","foo","userAgent","v8","toObject","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_OUT","NO_HOLES","callbackfn","specificCreate","boundFunction","some","every","findIndex","filterOut","$forEach","STRICT_METHOD","arrayMethodIsStrict","addToUnscopables","defineIterator","setInternalState","iterated","kind","Arguments","PrototypeOfArrayIteratorPrototype","arrayIterator","NEW_ITERATOR_PROTOTYPE","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","aPossiblePrototype","setter","CORRECT_SETTER","__proto__","FREEZING","METADATA","isExtensible","setMetadata","objectID","weakData","meta","REQUIRED","fastKey","getWeakData","onFreeze","isArrayIteratorMethod","getIteratorMethod","iteratorClose","Result","stopped","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","TO_STRING_TAG_SUPPORT","classofRaw","CORRECT_ARGUMENTS","tag","tryGet","callee","Constructor","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","fixRegExpWellKnownSymbolLogic","advanceStringIndex","regExpExec","max","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","REPLACE","maybeCallNative","reason","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_KEEPS_$0","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","regexp","res","rx","S","functionalReplace","fullUnicode","accumulatedResult","nextSourcePosition","matched","position","captures","j","namedCaptures","groups","replacerArgs","getSubstitution","tailPos","symbols","ch","capture","PostMessageService","targets","postMessageHandlers","addEventListener","handlePostMessage","msgId","deprecated","msg","parse","MessageId","Values","Deprecated","exc","message","targetOrigin","postMessage","SendTime","Date","now","handlerIndex","cb","parsed","parsePostMessage","$indexOf","arrayMethodUsesToLength","nativeIndexOf","NEGATIVE_ZERO","USES_TO_LENGTH","ACCESSORS","searchElement","ownKeys","getOwnPropertyDescriptorModule","getBuiltIn","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","internalObjectKeys","getOwnPropertyNames","integer","cache","thrower","argument0","argument1","objectKeys","nativeAssign","A","B","symbol","chr","T","argumentsLength","RE","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","rf","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","nativeMethod","arg2","forceStringMethod","stringMethod","regexMethod","CONVERT_TO_STRING","pos","second","size","charCodeAt","codeAt","_valid","_interopRequireDefault","_major","default","_defineProperties","props","packageJson","instance","_classCallCheck","getVersion","protoProps","staticProps","v","er","numeric","anum","bnum","rcompareIdentifiers","Map","h","createProperty","arrayMethodHasSpeciesSupport","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","E","propertyKey","$filter","UNSCOPABLES","ArrayPrototype","collection","collectionStrong","InternalMetadataModule","iterate","anInstance","checkCorrectnessOfIteration","inheritIfRequired","CONSTRUCTOR_NAME","wrapper","common","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","getConstructor","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","clear","setStrong","preventExtensions","returnMethod","SAFE_CLOSING","called","iteratorWithReturn","SKIP_CLOSING","ITERATION_SUPPORT","Wrapper","NewTarget","NewTargetPrototype","redefineAll","setSpecies","internalStateGetterFor","last","define","previous","getEntry","removed","prev","add","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","point","DOMIterables","COLLECTION_NAME","Collection","CollectionPrototype","ArrayIteratorMethods","ArrayValues","attach","newFileMenu","addMenuEntry","displayName","templateName","iconClass","actionHandler","richdocuments","templates","_createDocument","mimetype","isFileNameValid","getUniqueName","post","animate","scrollTo","alert","_createDocumentFromTemplate","openWithTemplate","linkToOCS","dataType","ocs","_buildTemplatePicker","buttonlist","classes","ocdialog","closeOnEscape","modal","buttons","tmpl","$dlg","octemplate","dialog_name","dialog_title","_","template","_appendTemplateFromData","dlg","cloneNode","className","textContent","onclick","hash","needQuotes","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","___CSS_LOADER_URL_REPLACEMENT_2___","locals","PostMessages","FRAME_DOCUMENT","isDownloadHidden","odfViewer","receivedLoading","isProxyStarting","isCollaboraConfigured","wopi_url","collabora","supportedMimes","mimetypes","mimetypesNoDefaultOpen","excludeMimeFromDefaultOpen","hideDownloadMimes","registerFileActions","EDIT_ACTION_NAME","productName","register","PERMISSION_READ","context","findFile","shareOwnerId","onEdit","setDefault","$file","OCP","Toast","FilesAppIntegration","documentUrl","preloadId","canEmbed","frame","onload","body","canAccessCSP","reloadForFederationCSP","$iframe","loadingTimeout","onTimeout","richdocumentscode","richdocumentscode_arm64","checkProxyStatus","height","sendWOPIPostMessage","setupUrl","installHint","isUserAdmin","isHTML","showHtml","onReceiveLoading","show","scrollTop","onClose","History","replaceState","wopiUrl","settings","ready","Files_Texteditor","Text","Plugins","isSupportedMime","showSecureView","registerPostMessageHandler","collaboraResponse","errorMsg","DocumentType","FileName","Url","NewName","IsFollowEditor","IsFollowUser","FollowedViewId"],"mappings":"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","file":"files.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 = 844);\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  /* global globalThis -- safe */\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 -- fallback\n  (function () { return this; })() || Function('return this')();\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","module.exports = function (exec) {\n  try {\n    return !!exec();\n  } catch (error) {\n    return true;\n  }\n};\n","module.exports = function (exec) {\n  try {\n    return !!exec();\n  } catch (error) {\n    return true;\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","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","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 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","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.es/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","\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 */\n\nclass ConfigService {\n    private values: {[name: string]: string}\n    constructor () {\n        this.values = {}\n        this.loadFromGlobal('userId')\n        this.loadFromGlobal('urlsrc')\n        this.loadFromGlobal('directEdit')\n        this.loadFromGlobal('permissions')\n        this.loadFromGlobal('instanceId')\n\n    }\n    loadFromGlobal(key: string) {\n        // @ts-ignore\n        this.values[key] = window['richdocuments_' + key]\n    }\n    update(key: string, value: string) {\n        // @ts-ignore\n        this.values[key] = value\n    }\n    get(key: string) {\n        if (typeof this.values[key] === 'undefined') {\n            this.loadFromGlobal(key)\n        }\n        return this.values[key]\n    }\n}\n\nconst Config = new ConfigService()\n\nexport default Config\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","/*\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 */\n\nimport Preload from '../services/preload'\nimport { splitPath } from '../helpers'\nimport Types from '../helpers/types'\nimport Config from '../services/config'\nimport NewFileMenu from './NewFileMenu'\n\nconst isPublic = document.getElementById('isPublic') && document.getElementById('isPublic').value === '1'\n\nexport default {\n\n\tfileModel: null,\n\n\tfileList: undefined,\n\n\tfilePath: undefined,\n\n\t/* Views: people currently editing the file */\n\tviews: {},\n\n\tfollowingEditor: false,\n\n\tfollowing: null,\n\n\thandlers: {},\n\n\tstartLoading() {\n\t\tif (this.getFileList()) {\n\t\t\tthis.getFileList().setViewerMode && this.getFileList().setViewerMode(true)\n\t\t\tthis.getFileList().showMask && this.getFileList().showMask()\n\t\t}\n\t},\n\n\tinit({ fileName, fileId, filePath, sendPostMessage, fileList, fileModel }) {\n\t\tthis.fileName = fileName\n\t\tthis.fileId = fileId\n\t\tthis.fileList = fileList\n\t\tthis.filePath = filePath\n\t\tthis.fileModel = fileModel\n\t\tthis.sendPostMessage = sendPostMessage\n\n\t\tif (this.fileModel && this.fileModel.on) {\n\t\t\tthis.fileModel.on('change', () => {\n\t\t\t\tthis._addHeaderFileActions()\n\t\t\t})\n\t\t}\n\t},\n\n\tregisterHandler(event, callback) {\n\t\tthis.handlers[event] = callback\n\t},\n\n\tinitAfterReady() {\n\t\tif (this.handlers.initAfterReady && this.handlers.initAfterReady(this)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (this.getFileList()) {\n\t\t\tthis.getFileModel()\n\t\t\tthis.getFileList().hideMask && this.getFileList().hideMask()\n\t\t\tthis.getFileList().setPageTitle && this.getFileList().setPageTitle(this.fileName)\n\t\t}\n\n\t\tconst headerRight = document.querySelector('#header .header-right')\n\t\tif (!document.getElementById('richdocuments-header')) {\n\t\t\tconst richdocumentsHeader = document.createElement('div')\n\t\t\trichdocumentsHeader.id = 'richdocuments-header'\n\t\t\theaderRight.insertBefore(richdocumentsHeader, headerRight.firstChild)\n\t\t\tthis._addAvatarList()\n\t\t\tif (!isPublic) {\n\t\t\t\tthis._addHeaderShareButton()\n\t\t\t\tthis._addHeaderFileActions()\n\t\t\t\tthis.addVersionSidebarEvents()\n\t\t\t}\n\t\t}\n\t},\n\n\tclose() {\n\t\tif (this.handlers.close && this.handlers.close(this)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (this.getFileList()) {\n\t\t\tthis.getFileList().setViewerMode && this.getFileList().setViewerMode(false)\n\t\t\tthis.getFileList().reload && this.getFileList().reload()\n\t\t}\n\t\tthis.fileModel = null\n\t\tif (!isPublic) {\n\t\t\tthis.removeVersionSidebarEvents()\n\t\t}\n\t\t$('#richdocuments-header').remove()\n\t},\n\n\tsaveAs() {\n\t\tif (this.handlers.saveAs && this.handlers.saveAs(this)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (this.getFileList()) {\n\t\t\tthis.getFileList()\n\t\t\t\t.reload()\n\t\t}\n\t},\n\n\tshare() {\n\t\tif (this.handlers.share && this.handlers.share(this)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (isPublic || !this.getFileList()) {\n\t\t\tconsole.error('[FilesAppIntegration] Sharing is not supported')\n\t\t\treturn\n\t\t}\n\t\tthis.getFileList().showDetailsView && this.getFileList().showDetailsView(this.fileName, 'shareTabView')\n\t\tOC.Apps.showAppSidebar()\n\t},\n\n\trename(newName) {\n\t\tthis.fileName = newName\n\n\t\tif (this.handlers.rename && this.handlers.rename(this)) {\n\t\t\treturn\n\t\t}\n\t\tif (this.getFileList()) {\n\t\t\tthis.getFileList().reload && this.getFileList().reload()\n\t\t\tOC.Apps.hideAppSidebar()\n\t\t}\n\t},\n\n\tinsertGraphic(insertFile) {\n\t\tif (isPublic) {\n\t\t\tconsole.error('[FilesAppIntegration] insertGraphic is not supported')\n\t\t}\n\n\t\tconst insertFileFromPath = (path) => {\n\t\t\tconst filename = path.substring(path.lastIndexOf('/') + 1)\n\t\t\t$.ajax({\n\t\t\t\ttype: 'POST',\n\t\t\t\turl: OC.generateUrl('apps/richdocuments/assets'),\n\t\t\t\tdata: {\n\t\t\t\t\tpath: path\n\t\t\t\t}\n\t\t\t}).done(function(resp) {\n\t\t\t\tinsertFile(filename, resp.url)\n\t\t\t})\n\t\t}\n\n\t\tif (this.handlers.insertGraphic && this.handlers.insertGraphic(this, { insertFileFromPath: insertFileFromPath })) {\n\t\t\treturn\n\t\t}\n\n\t\tOC.dialogs.filepicker(t('richdocuments', 'Insert from {name}', { name: OC.theme.name }), function(path, type) {\n\t\t\tif (type === OC.dialogs.FILEPICKER_TYPE_CHOOSE) {\n\t\t\t\tinsertFileFromPath(path)\n\t\t\t}\n\t\t}, false, ['image/png', 'image/gif', 'image/jpeg', 'image/svg'], true, OC.dialogs.FILEPICKER_TYPE_CHOOSE)\n\t},\n\n\tgetFileList() {\n\t\tif (this.fileList) {\n\t\t\treturn this.fileList\n\t\t}\n\t\tif (OCA.Files && OCA.Files.App) {\n\t\t\treturn OCA.Files.App.fileList\n\t\t}\n\t\tif (OCA.Sharing && OCA.Sharing.PublicApp) {\n\t\t\treturn OCA.Sharing.PublicApp.fileList\n\t\t}\n\t\treturn null\n\t},\n\n\tgetFileModel() {\n\t\tif (this.fileModel) {\n\t\t\treturn this.fileModel\n\t\t}\n\t\tif (!this.getFileList()) {\n\t\t\treturn null\n\t\t}\n\t\tthis.getFileList()._updateDetailsView && this.getFileList()._updateDetailsView(this.fileName, false)\n\t\tthis.fileModel = this.getFileList().getModelForFile(this.fileName)\n\n\t\tif (this.fileModel && this.fileModel.on) {\n\t\t\tthis.fileModel.on('change', () => {\n\t\t\t\tthis._addHeaderFileActions()\n\t\t\t})\n\t\t}\n\n\t\treturn this.fileModel\n\t},\n\n\tsetViews(views) {\n\t\tthis.views = {}\n\t\tviews.forEach((view) => {\n\t\t\tthis.views[view.ViewId] = view\n\t\t})\n\t\tthis.renderAvatars()\n\t},\n\n\tfollowReset(event) {\n\t\tthis.sendPostMessage('Action_FollowUser', { Follow: false })\n\t\tthis.following = null\n\t\tthis.followingEditor = false\n\t\tthis.renderAvatars()\n\t},\n\tfollowCurrentEditor(event) {\n\t\tthis.sendPostMessage('Action_FollowUser', { Follow: true })\n\t\tthis.following = null\n\t\tthis.followingEditor = true\n\t\tthis.renderAvatars()\n\t},\n\tfollowView(view) {\n\t\tthis.sendPostMessage('Action_FollowUser', { ViewId: view.ViewId, Follow: true })\n\t\tthis.following = view.ViewId\n\t\tthis.followingEditor = false\n\t\tthis.renderAvatars()\n\t},\n\n\t_addAvatarList() {\n\t\t// Add the avatar toolbar if possible\n\t\tconst avatarList = $('<div id=\"richdocuments-avatars\">')\n\t\tavatarList.on('click', function(e) {\n\t\t\te.stopPropagation()\n\t\t\t$('#editors-menu').toggle()\n\t\t})\n\t\t$('#richdocuments-header').append(avatarList)\n\t},\n\n\t_addHeaderShareButton() {\n\t\tif ($('header').length) {\n\t\t\tvar $button = $('<div id=\"richdocuments-sharing\"><a class=\"icon-shared icon-white\"></a></div>')\n\t\t\t$('#richdocuments-header').append($button)\n\t\t\t$button.on('click', () => {\n\t\t\t\tif (!$('#app-sidebar').is(':visible')) {\n\t\t\t\t\treturn this.share()\n\t\t\t\t}\n\t\t\t\tOC.Apps.hideAppSidebar()\n\t\t\t})\n\t\t\t$('.searchbox').hide()\n\t\t}\n\t},\n\n\t_addHeaderFileActions() {\n\t\tconsole.debug('[FilesAppIntegration] Adding header file actions')\n\t\tOC.unregisterMenu($('#richdocuments-actions .icon-more'), $('#richdocuments-actions-menu'))\n\t\t$('#richdocuments-actions').remove()\n\t\tvar actionsContainer = $('<div id=\"richdocuments-actions\"><div class=\"icon-more icon-white\"></div><ul id=\"richdocuments-actions-menu\" class=\"popovermenu\"></ul></div>')\n\t\tvar actions = actionsContainer.find('#richdocuments-actions-menu').empty()\n\n\t\tvar getContext = () => ({\n\t\t\t'$file': this.getFileList().$el ? this.getFileList().$el.find('[data-id=' + this.fileId + ']').first() : null,\n\t\t\tfileActions: this.getFileList().fileActions,\n\t\t\tfileList: this.getFileList(),\n\t\t\tfileInfoModel: this.getFileModel()\n\t\t})\n\n\t\tconst isFavorite = function(fileInfo) {\n\t\t\treturn fileInfo.get('tags') && fileInfo.get('tags').indexOf(OC.TAG_FAVORITE) >= 0\n\t\t}\n\t\tconst $favorite = $('<li><a></a></li>').click((event) => {\n\t\t\t$favorite.find('a').removeClass('icon-starred').removeClass('icon-star-dark').addClass('icon-loading-small')\n\t\t\tif (this.handlers.actionFavorite && this.handlers.actionFavorite(this)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.getFileList().fileActions.triggerAction('Favorite', this.getFileModel(), this.getFileList())\n\t\t\tthis.getFileModel().trigger('change', this.getFileModel())\n\t\t})\n\t\tif (isFavorite(this.getFileModel())) {\n\t\t\t$favorite.find('a').text(t('files', 'Remove from favorites'))\n\t\t\t$favorite.find('a').addClass('icon-starred')\n\t\t} else {\n\t\t\t$favorite.find('a').text(t('files', 'Add to favorites'))\n\t\t\t$favorite.find('a').addClass('icon-star-dark')\n\t\t}\n\n\t\tvar $info = $('<li><a class=\"icon-info\"></a></li>').click(() => {\n\t\t\tif (this.handlers.actionDetails && this.handlers.actionDetails(this)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.getFileList().fileActions.actions.all.Details.action(this.fileName, getContext())\n\t\t\tOC.hideMenus()\n\t\t})\n\t\t$info.find('a').text(t('files', 'Details'))\n\t\tvar $download = $('<li><a class=\"icon-download\">Download</a></li>').click(() => {\n\t\t\tif (this.handlers.actionDownload && this.handlers.actionDownload(this)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.getFileList().fileActions.actions.all.Download.action(this.fileName, getContext())\n\t\t\tOC.hideMenus()\n\t\t})\n\t\t$download.find('a').text(t('files', 'Download'))\n\t\tactions.append($favorite).append($info).append($download)\n\t\t$('#richdocuments-header').append(actionsContainer)\n\t\tOC.registerMenu($('#richdocuments-actions .icon-more'), $('#richdocuments-actions-menu'), false, true)\n\t},\n\n\t/**\n\t * @param {View} view\n\t * @private\n\t */\n\t_userEntry: function(view) {\n\t\tvar entry = $('<li></li>')\n\t\tentry.append(this._avatarForView(view))\n\n\t\tvar label = $('<div class=\"label\"></div>')\n\t\tlabel.text(view.UserName)\n\t\tif (view.ReadOnly === '1') {\n\t\t\tlabel.text(view.UserName + ' ' + t('richdocuments', '(read only)'))\n\n\t\t}\n\t\tlabel.click((event) => {\n\t\t\tevent.stopPropagation()\n\t\t\tthis.followView(view)\n\t\t})\n\t\tif (this.following === view.ViewId) {\n\t\t\t$('#editors-menu').find('li').removeClass('active')\n\t\t\tentry.addClass('active')\n\t\t}\n\t\tentry.append(label)\n\n\t\tconst isFileOwner = !isPublic && this.getFileModel() && typeof this.getFileModel().get('shareOwner') === 'undefined'\n\t\tconst canEdit = this.getFileModel() && !!(this.getFileModel().get('permissions') & OC.PERMISSION_UPDATE)\n\t\tif (isFileOwner && canEdit && !view.IsCurrentView) {\n\t\t\tvar removeButton = $('<div class=\"icon-close\" title=\"' + t('richdocuments', 'Remove user') + '\"/>')\n\t\t\tremoveButton.click(() => {\n\t\t\t\tthis.sendPostMessage('Action_RemoveView', { ViewId: view.ViewId })\n\t\t\t})\n\t\t\tentry.append(removeButton)\n\t\t}\n\t\treturn entry\n\t},\n\n\t/**\n\t * @param {View} view\n\t * @returns {$|HTMLElement}\n\t * @private\n\t */\n\t_avatarForView: function(view) {\n\t\tconst userId = (view.UserId === '') ? view.UserName : view.UserId\n\t\tvar avatarContainer = $('<div class=\"richdocuments-avatar\"><div class=\"avatar\" title=\"' + view.UserName + '\" data-user=\"' + userId + '\"></div></div>')\n\t\tvar avatar = avatarContainer.find('.avatar')\n\n\t\tavatar.css({\n\t\t\t'border-color': '#' + ('000000' + Number(view.Color).toString(16)).substr(-6),\n\t\t\t'border-width': '2px',\n\t\t\t'border-style': 'solid'\n\t\t})\n\t\tif (view.ReadOnly === '1') {\n\t\t\tavatarContainer.addClass('read-only')\n\t\t\t$(avatar).attr('title', view.UserName + ' ' + t('richdocuments', '(read only)'))\n\t\t} else {\n\t\t\t$(avatar).attr('title', view.UserName)\n\t\t}\n\n\t\t$(avatar).avatar(userId, 32, undefined, true, undefined, view.UserName)\n\t\treturn avatarContainer\n\t},\n\n\trenderAvatars: function() {\n\t\tvar avatardiv = $('#header .header-right #richdocuments-avatars')\n\t\tavatardiv.empty()\n\t\tvar popover = $('<div id=\"editors-menu\" class=\"popovermenu menu-center\"><ul></ul></div>')\n\n\t\tvar users = []\n\t\t// Add new avatars\n\t\tvar i = 0\n\t\tfor (var viewId in this.views) {\n\t\t\t/**\n\t\t\t * @type {View}\n\t\t\t */\n\t\t\tvar view = this.views[viewId]\n\t\t\tview.UserName = view.UserName !== '' ? view.UserName : t('richdocuments', 'Guest')\n\t\t\tpopover.find('ul').append(this._userEntry(view))\n\n\t\t\tif (view.UserId === OC.currentUser) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tif (view.UserId !== '' && users.indexOf(view.UserId) > -1) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tusers.push(view.UserId)\n\t\t\tif (i++ < 4) {\n\t\t\t\tavatardiv.append(this._avatarForView(view))\n\t\t\t}\n\t\t}\n\t\tvar followCurrentEditor = $('<li><input type=\"checkbox\" class=\"checkbox\" /><label class=\"label\">' + t('richdocuments', 'Follow current editor') + '</label></li>')\n\t\tfollowCurrentEditor.find('label').click((event) => {\n\t\t\tevent.stopPropagation()\n\t\t\tif (this.followingEditor) {\n\t\t\t\tthis.followReset()\n\t\t\t} else {\n\t\t\t\tthis.followCurrentEditor()\n\t\t\t}\n\t\t})\n\t\tfollowCurrentEditor.find('.checkbox').prop('checked', this.followingEditor)\n\t\tpopover.find('ul').append(followCurrentEditor)\n\t\tavatardiv.append(popover)\n\t},\n\n\t_originalOnClickRevertVersion: null,\n\n\taddVersionSidebarEvents() {\n\t\tconst versionTabView = OCA.Files.App.fileList._detailsView._tabViews.find(t => t.el.id === 'versionsTabView')\n\t\tif (versionTabView) {\n\t\t\tthis._originalOnClickRevertVersion = versionTabView._onClickRevertVersion\n\t\t\tOCA.Files.App.fileList._detailsView._tabViews.find(t => t.el.id === 'versionsTabView')._onClickRevertVersion = () => {}\n\t\t}\n\t\t$(document.querySelector('#content')).on('click.revisions', '#app-sidebar .preview-container', this.showVersionPreview.bind(this))\n\t\t$(document.querySelector('#content')).on('click.revisions', '#app-sidebar .downloadVersion', this.showVersionPreview.bind(this))\n\t\t$(document.querySelector('#content')).on('mousedown.revisions', '#app-sidebar .revertVersion', this.restoreVersion.bind(this))\n\t\t$(document.querySelector('#content')).on('click.revisionsTab', '#app-sidebar [data-tabid=versionsTabView]', this.addCurrentVersion.bind(this))\n\t},\n\n\tremoveVersionSidebarEvents() {\n\t\tconst versionTabView = OCA.Files.App.fileList._detailsView._tabViews.find(t => t.el.id === 'versionsTabView')\n\t\tif (versionTabView) {\n\t\t\tversionTabView._onClickRevertVersion = this._originalOnClickRevertVersion\n\t\t}\n\t\t$(document.querySelector('#content')).off('click.revisions')\n\t\t$(document.querySelector('#content')).off('click.revisions')\n\t\t$(document.querySelector('#content')).off('mousedown.revisions')\n\t\t$(document.querySelector('#content')).off('click.revisionsTab')\n\t},\n\n\taddCurrentVersion() {\n\t\t$('#lastSavedVersion').remove()\n\t\t$('#currentVersion').remove()\n\t\tif (this.getFileModel()) {\n\t\t\tconst preview = OC.MimeType.getIconUrl(this.getFileModel().get('mimetype'))\n\t\t\tconst mtime = this.getFileModel().get('mtime')\n\t\t\t$('#versionsTabView').prepend('<ul id=\"lastSavedVersion\"><li data-revision=\"0\"><div><div class=\"preview-container\"><img src=\"' + preview + '\" width=\"44\" /></div><div class=\"version-container\">\\n'\n\t\t\t\t+ '<div><a class=\"downloadVersion\">' + t('richdocuments', 'Last saved version') + '<br /><span class=\"versiondate has-tooltip live-relative-timestamp\" data-timestamp=\"' + mtime + '\"></span></div></div></li></ul>')\n\t\t\t$('#versionsTabView').prepend('<ul id=\"currentVersion\"><li data-revision=\"\" class=\"active\"><div><div class=\"preview-container\"><img src=\"' + preview + '\" width=\"44\" /></div><div class=\"version-container\">\\n'\n\t\t\t\t+ '<div><a class=\"downloadVersion\">' + t('richdocuments', 'Current version') + '</a></div></div></li></ul>')\n\t\t\t$('.live-relative-timestamp').each(function() {\n\t\t\t\t$(this).text(OC.Util.relativeModifiedDate(parseInt($(this).attr('data-timestamp'), 10)))\n\t\t\t})\n\t\t}\n\t},\n\n\tshowRevHistory() {\n\t\tif (this.handlers.showRevHistory && this.handlers.showRevHistory(this)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (this.getFileList()) {\n\t\t\tthis.getFileList()\n\t\t\t\t.showDetailsView(this.fileName, 'versionsTabView')\n\t\t\tthis.addCurrentVersion()\n\t\t}\n\t},\n\n\tshowVersionPreview: function(e) {\n\t\te.preventDefault()\n\t\tvar element = e.currentTarget.parentElement.parentElement\n\t\tif ($(e.currentTarget).hasClass('downloadVersion')) {\n\t\t\telement = e.currentTarget.parentElement.parentElement.parentElement.parentElement\n\t\t}\n\t\tvar version = element.dataset.revision\n\t\tvar fileId = this.fileId\n\t\tvar title = this.fileName\n\t\tconsole.debug('[FilesAppIntegration] showVersionPreview', version, fileId, title)\n\t\tthis.sendPostMessage('Action_loadRevViewer', { fileId, title, version })\n\t\t$(element.parentElement.parentElement).find('li').removeClass('active')\n\t\t$(element).addClass('active')\n\t},\n\n\trestoreVersion: function(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\n\t\tthis.sendPostMessage('Host_VersionRestore', { Status: 'Pre_Restore' })\n\n\t\tconst version = e.currentTarget.parentElement.parentElement.dataset.revision\n\n\t\tthis._restoreVersionCallback = () => {\n\t\t\tthis._restoreDAV(version)\n\t\t\tthis._restoreVersionCallback = null\n\t\t}\n\n\t\treturn false\n\t},\n\n\trestoreVersionExecute() {\n\t\tif (this._restoreVersionCallback !== null) {\n\t\t\tthis._restoreVersionCallback()\n\t\t}\n\t},\n\n\trestoreVersionAbort() {\n\t\tthis._restoreVersionCallback = null\n\t},\n\n\t_restoreSuccess: function(response) {\n\t\tif (response.status === 'error') {\n\t\t\tOC.Notification.showTemporary(t('richdocuments', 'Failed to revert the document to older version'))\n\t\t}\n\t\t// Reload the document frame to get the new file\n\t\t// TODO: ideally we should have a post messsage that can be sent to collabora to just reload the file once the restore is finished\n\t\tdocument.getElementById('richdocumentsframe').src = document.getElementById('richdocumentsframe').src\n\t\tOC.Apps.hideAppSidebar()\n\t},\n\n\t_restoreError: function() {\n\t\tOC.Notification.showTemporary(t('richdocuments', 'Failed to revert the document to older version'))\n\t},\n\n\t_restoreDAV: function(version) {\n\t\tvar restoreUrl = OC.linkToRemoteBase('dav') + '/versions/' + OC.getCurrentUser().uid\n\t\t\t+ '/versions/' + this.fileId + '/' + version\n\t\t$.ajax({\n\t\t\ttype: 'MOVE',\n\t\t\turl: restoreUrl,\n\t\t\theaders: {\n\t\t\t\tDestination: OC.linkToRemote('dav') + '/versions/' + OC.getCurrentUser().uid + '/restore/target'\n\t\t\t},\n\t\t\tsuccess: this._restoreSuccess.bind(this),\n\t\t\terror: this._restoreError.bind(this)\n\t\t})\n\t},\n\n\t/**\n\t * Called when a new file creation has been triggered from collabora\n\t *\n\t * Ask for a new filename and open the files app in a new tab\n\t * the parameters richdocuments_create and richdocuments_filename are\n\t * parsed by viewer.js and open a template picker in the new tab with\n\t * FilesAppIntegration.preloadCreate\n\t */\n\tcreateNewFile: function(type) {\n\t\tif (this.handlers.createNewFile && this.handlers.createNewFile(this, { type: type })) {\n\t\t\treturn\n\t\t}\n\n\t\tOC.dialogs.prompt(\n\t\t\tt('richdocuments', 'Please enter the filename for the new document'),\n\t\t\tt('richdocuments', 'Save As'),\n\t\t\tfunction(result, value) {\n\t\t\t\tif (result === true && value) {\n\t\t\t\t\tif (type === 'text') {\n\t\t\t\t\t\ttype = 'document'\n\t\t\t\t\t}\n\t\t\t\t\tvar dir = parent.$('#dir').val()\n\t\t\t\t\tvar url = OC.generateUrl('/apps/files/?dir=' + dir + '&richdocuments_create=' + type + '&richdocuments_filename=' + encodeURI(value))\n\t\t\t\t\twindow.open(url, '_blank')\n\t\t\t\t}\n\t\t\t},\n\t\t\ttrue,\n\t\t\tt('richdocuments', 'New filename'),\n\t\t\tfalse\n\t\t).then(function() {\n\t\t\tvar $dialog = parent.$('.oc-dialog:visible')\n\t\t\tvar $buttons = $dialog.find('button')\n\t\t\t$buttons.eq(0).text(t('richdocuments', 'Cancel'))\n\t\t\t$buttons.eq(1).text(t('richdocuments', 'Create a new document'))\n\t\t})\n\t},\n\n\t/**\n\t * Automaically open a document on page load\n\t */\n\tpreloadOpen: function() {\n\t\tif (this.handlers.preloadOpen && this.handlers.preloadOpen(this)) {\n\t\t\treturn\n\t\t}\n\n\t\tconst fileId = Preload.open.id\n\t\tconst path = Preload.open.filename\n\t\tsetTimeout(function() {\n\t\t\twindow.FileList.$fileList.one('updated', function() {\n\t\t\t\tconst [, file] = splitPath(path)\n\t\t\t\tconst fileModel = FileList.getModelForFile(file)\n\t\t\t\tOCA.RichDocuments.open({ path, fileId, fileModel: fileModel, fileList: window.FileList })\n\t\t\t})\n\t\t}, 250)\n\t},\n\n\t/**\n\t * Automaically open a template picker on page load\n\t */\n\tpreloadCreate: function() {\n\t\tif (this.handlers.preloadCreate && this.handlers.preloadCreate(this)) {\n\t\t\treturn\n\t\t}\n\n\t\tsetTimeout(function() {\n\t\t\twindow.FileList.$fileList.one('updated', function() {\n\t\t\t\tconst fileType = Types.getFileType(Preload.create.type, Config.get('ooxml'))\n\t\t\t\tNewFileMenu._openTemplatePicker(Preload.create.type, fileType.mime, Preload.create.filename + '.' + fileType.extension)\n\t\t\t})\n\t\t}, 250)\n\t},\n\n\tloggingContext: function() {\n\t\treturn {\n\t\t\tcurrentUser: OC.getCurrentUser()?.uid,\n\t\t\tfile: {\n\t\t\t\tsharingToken: document.getElementById('sharingToken')?.value,\n\t\t\t\tfileId: this.fileId,\n\t\t\t\tfilePath: (this.filePath ?? '') + '/' + this.fileName\n\t\t\t}\n\t\t}\n\t}\n\n}\n","module.exports = function (exec) {\n  try {\n    return !!exec();\n  } catch (error) {\n    return true;\n  }\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n  return hasOwnProperty.call(it, key);\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\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","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 hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n  return hasOwnProperty.call(it, key);\n};\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 */\n\nimport { getRootUrl } from '@nextcloud/router'\nimport { languageToBCP47 } from './index'\nimport Config from './../services/config'\n\nconst getSearchParam = (name) => {\n\tvar results = new RegExp('[?&]' + name + '=([^&#]*)').exec(window.location.href)\n\tif (results === null) {\n\t\treturn null\n\t}\n\treturn decodeURI(results[1]) || ''\n}\n\nconst getWopiUrl = ({ fileId, title, readOnly, closeButton, revisionHistory }) => {\n\t// WOPISrc - URL that loolwsd will access (ie. pointing to ownCloud)\n\t// index.php is forced here to avoid different wopi srcs for the same document\n\tconst wopiurl = window.location.protocol + '//' + window.location.host + getRootUrl() + '/index.php/apps/richdocuments/wopi/files/' + fileId\n\tconsole.debug('[getWopiUrl] ' + wopiurl)\n\tconst wopisrc = encodeURIComponent(wopiurl)\n\n\t// urlsrc - the URL from discovery xml that we access for the particular\n\t// document; we add various parameters to that.\n\t// The discovery is available at\n\t//   https://<loolwsd-server>:9980/hosting/discovery\n\treturn Config.get('urlsrc')\n\t\t+ 'WOPISrc=' + wopisrc\n\t\t+ '&title=' + encodeURIComponent(title)\n\t\t+ '&lang=' + languageToBCP47()\n\t\t+ (closeButton ? '&closebutton=1' : '')\n\t\t+ (revisionHistory ? '&revisionhistory=1' : '')\n\t\t+ (readOnly ? '&permission=readonly' : '')\n}\n\nconst getDocumentUrlFromTemplate = (templateId, fileName, fileDir, fillWithTemplate) => {\n\treturn OC.generateUrl(\n\t\t'apps/richdocuments/indexTemplate?templateId={templateId}&fileName={fileName}&dir={dir}&requesttoken={requesttoken}',\n\t\t{\n\t\t\ttemplateId: templateId,\n\t\t\tfileName: fileName,\n\t\t\tdir: fileDir,\n\t\t\trequesttoken: OC.requestToken\n\t\t}\n\t)\n}\n\nconst getDocumentUrlForPublicFile = (fileName, fileId) => {\n\treturn OC.generateUrl(\n\t\t'apps/richdocuments/public?shareToken={shareToken}&fileName={fileName}&requesttoken={requesttoken}&fileId={fileId}',\n\t\t{\n\t\t\tshareToken: document.getElementById('sharingToken').value,\n\t\t\tfileName: fileName,\n\t\t\tfileId: fileId,\n\t\t\trequesttoken: OC.requestToken\n\t\t}\n\t)\n}\n\nconst getDocumentUrlForFile = (fileDir, fileId) => {\n\treturn OC.generateUrl(\n\t\t'apps/richdocuments/index?fileId={fileId}&requesttoken={requesttoken}',\n\t\t{\n\t\t\tfileId: fileId,\n\t\t\tdir: fileDir,\n\t\t\trequesttoken: OC.requestToken\n\t\t})\n}\n\nexport {\n\tgetSearchParam,\n\tgetWopiUrl,\n\n\tgetDocumentUrlFromTemplate,\n\tgetDocumentUrlForPublicFile,\n\tgetDocumentUrlForFile\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 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 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 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  var state;\n  if (typeof value == 'function') {\n    if (typeof key == 'string' && !has(value, 'name')) {\n      createNonEnumerableProperty(value, 'name', key);\n    }\n    state = enforceInternalState(value);\n    if (!state.source) {\n      state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n    }\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","module.exports = {};\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","\"use strict\";\n\nvar isOldIE = function isOldIE() {\n  var memo;\n  return function memorize() {\n    if (typeof memo === 'undefined') {\n      // Test for IE <= 9 as proposed by Browserhacks\n      // @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n      // Tests for existence of standard globals is to allow style-loader\n      // to operate correctly into non-standard environments\n      // @see https://github.com/webpack-contrib/style-loader/issues/177\n      memo = Boolean(window && document && document.all && !window.atob);\n    }\n\n    return memo;\n  };\n}();\n\nvar getTarget = function getTarget() {\n  var memo = {};\n  return function memorize(target) {\n    if (typeof memo[target] === 'undefined') {\n      var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself\n\n      if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n        try {\n          // This will throw an exception if access to iframe is blocked\n          // due to cross-origin restrictions\n          styleTarget = styleTarget.contentDocument.head;\n        } catch (e) {\n          // istanbul ignore next\n          styleTarget = null;\n        }\n      }\n\n      memo[target] = styleTarget;\n    }\n\n    return memo[target];\n  };\n}();\n\nvar stylesInDom = [];\n\nfunction getIndexByIdentifier(identifier) {\n  var result = -1;\n\n  for (var i = 0; i < stylesInDom.length; i++) {\n    if (stylesInDom[i].identifier === identifier) {\n      result = i;\n      break;\n    }\n  }\n\n  return result;\n}\n\nfunction modulesToDom(list, options) {\n  var idCountMap = {};\n  var identifiers = [];\n\n  for (var i = 0; i < list.length; i++) {\n    var item = list[i];\n    var id = options.base ? item[0] + options.base : item[0];\n    var count = idCountMap[id] || 0;\n    var identifier = \"\".concat(id, \" \").concat(count);\n    idCountMap[id] = count + 1;\n    var index = getIndexByIdentifier(identifier);\n    var obj = {\n      css: item[1],\n      media: item[2],\n      sourceMap: item[3]\n    };\n\n    if (index !== -1) {\n      stylesInDom[index].references++;\n      stylesInDom[index].updater(obj);\n    } else {\n      stylesInDom.push({\n        identifier: identifier,\n        updater: addStyle(obj, options),\n        references: 1\n      });\n    }\n\n    identifiers.push(identifier);\n  }\n\n  return identifiers;\n}\n\nfunction insertStyleElement(options) {\n  var style = document.createElement('style');\n  var attributes = options.attributes || {};\n\n  if (typeof attributes.nonce === 'undefined') {\n    var nonce = typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n\n    if (nonce) {\n      attributes.nonce = nonce;\n    }\n  }\n\n  Object.keys(attributes).forEach(function (key) {\n    style.setAttribute(key, attributes[key]);\n  });\n\n  if (typeof options.insert === 'function') {\n    options.insert(style);\n  } else {\n    var target = getTarget(options.insert || 'head');\n\n    if (!target) {\n      throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n    }\n\n    target.appendChild(style);\n  }\n\n  return style;\n}\n\nfunction removeStyleElement(style) {\n  // istanbul ignore if\n  if (style.parentNode === null) {\n    return false;\n  }\n\n  style.parentNode.removeChild(style);\n}\n/* istanbul ignore next  */\n\n\nvar replaceText = function replaceText() {\n  var textStore = [];\n  return function replace(index, replacement) {\n    textStore[index] = replacement;\n    return textStore.filter(Boolean).join('\\n');\n  };\n}();\n\nfunction applyToSingletonTag(style, index, remove, obj) {\n  var css = remove ? '' : obj.media ? \"@media \".concat(obj.media, \" {\").concat(obj.css, \"}\") : obj.css; // For old IE\n\n  /* istanbul ignore if  */\n\n  if (style.styleSheet) {\n    style.styleSheet.cssText = replaceText(index, css);\n  } else {\n    var cssNode = document.createTextNode(css);\n    var childNodes = style.childNodes;\n\n    if (childNodes[index]) {\n      style.removeChild(childNodes[index]);\n    }\n\n    if (childNodes.length) {\n      style.insertBefore(cssNode, childNodes[index]);\n    } else {\n      style.appendChild(cssNode);\n    }\n  }\n}\n\nfunction applyToTag(style, options, obj) {\n  var css = obj.css;\n  var media = obj.media;\n  var sourceMap = obj.sourceMap;\n\n  if (media) {\n    style.setAttribute('media', media);\n  } else {\n    style.removeAttribute('media');\n  }\n\n  if (sourceMap && typeof btoa !== 'undefined') {\n    css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n  } // For old IE\n\n  /* istanbul ignore if  */\n\n\n  if (style.styleSheet) {\n    style.styleSheet.cssText = css;\n  } else {\n    while (style.firstChild) {\n      style.removeChild(style.firstChild);\n    }\n\n    style.appendChild(document.createTextNode(css));\n  }\n}\n\nvar singleton = null;\nvar singletonCounter = 0;\n\nfunction addStyle(obj, options) {\n  var style;\n  var update;\n  var remove;\n\n  if (options.singleton) {\n    var styleIndex = singletonCounter++;\n    style = singleton || (singleton = insertStyleElement(options));\n    update = applyToSingletonTag.bind(null, style, styleIndex, false);\n    remove = applyToSingletonTag.bind(null, style, styleIndex, true);\n  } else {\n    style = insertStyleElement(options);\n    update = applyToTag.bind(null, style, options);\n\n    remove = function remove() {\n      removeStyleElement(style);\n    };\n  }\n\n  update(obj);\n  return function updateStyle(newObj) {\n    if (newObj) {\n      if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap) {\n        return;\n      }\n\n      update(obj = newObj);\n    } else {\n      remove();\n    }\n  };\n}\n\nmodule.exports = function (list, options) {\n  options = options || {}; // Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n  // tags it will allow on a page\n\n  if (!options.singleton && typeof options.singleton !== 'boolean') {\n    options.singleton = isOldIE();\n  }\n\n  list = list || [];\n  var lastIdentifiers = modulesToDom(list, options);\n  return function update(newList) {\n    newList = newList || [];\n\n    if (Object.prototype.toString.call(newList) !== '[object Array]') {\n      return;\n    }\n\n    for (var i = 0; i < lastIdentifiers.length; i++) {\n      var identifier = lastIdentifiers[i];\n      var index = getIndexByIdentifier(identifier);\n      stylesInDom[index].references--;\n    }\n\n    var newLastIdentifiers = modulesToDom(newList, options);\n\n    for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n      var _identifier = lastIdentifiers[_i];\n\n      var _index = getIndexByIdentifier(_identifier);\n\n      if (stylesInDom[_index].references === 0) {\n        stylesInDom[_index].updater();\n\n        stylesInDom.splice(_index, 1);\n      }\n    }\n\n    lastIdentifiers = newLastIdentifiers;\n  };\n};","\"use strict\";\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nmodule.exports = function cssWithMappingToString(item) {\n  var _item = _slicedToArray(item, 4),\n      content = _item[1],\n      cssMapping = _item[3];\n\n  if (typeof btoa === 'function') {\n    // eslint-disable-next-line no-undef\n    var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n    var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n    var sourceMapping = \"/*# \".concat(data, \" */\");\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};","\"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 (cssWithMappingToString) {\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);\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};","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","/*\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 { getSearchParam } from '../helpers/url'\n\nconst preloadCreate = getSearchParam('richdocuments_create')\nconst preloadOpen = getSearchParam('richdocuments_open')\nconst Preload = {}\n\nif (preloadCreate) {\n\tPreload.create = {\n\t\ttype: getSearchParam('richdocuments_create'),\n\t\tfilename: getSearchParam('richdocuments_filename')\n\t}\n}\n\nif (preloadOpen) {\n\tPreload.open = {\n\t\tfilename: preloadOpen,\n\t\tid: getSearchParam('richdocuments_fileId')\n\t}\n}\n\nexport default Preload\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","module.exports = function (it) {\n  return typeof it === 'object' ? it !== null : typeof it === 'function';\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 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","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 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 shared = require('../internals/shared-store');\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 = shared.state || (shared.state = new WeakMap());\n  var wmget = store.get;\n  var wmhas = store.has;\n  var wmset = store.set;\n  set = function (it, metadata) {\n    metadata.facade = it;\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    metadata.facade = it;\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","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 toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n  return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\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","// `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","module.exports = function (it) {\n  return typeof it === 'object' ? it !== null : typeof it === 'function';\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","\"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","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\nexports.emit = emit;\n\nvar _ProxyBus = require(\"./ProxyBus\");\n\nvar _SimpleBus = require(\"./SimpleBus\");\n\nfunction getBus() {\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  } // Either use an existing event bus instance or create one\n\n\n  if (typeof window._nc_event_bus !== 'undefined') {\n    return new _ProxyBus.ProxyBus(window._nc_event_bus);\n  } else {\n    return window._nc_event_bus = new _SimpleBus.SimpleBus();\n  }\n}\n\nvar bus = getBus();\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 */\n\nfunction subscribe(name, handler) {\n  bus.subscribe(name, handler);\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 */\n\n\nfunction unsubscribe(name, handler) {\n  bus.unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\n\n\nfunction emit(name, event) {\n  bus.emit(name, event);\n}\n//# sourceMappingURL=index.js.map","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","// 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","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 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 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 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","// 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","var toString = {}.toString;\n\nmodule.exports = function (it) {\n  return toString.call(it).slice(8, -1);\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.es/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.es/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 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 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 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","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","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.es/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 requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n  return Object(requireObjectCoercible(argument));\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 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 -- old IE */\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.es/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","'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 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","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","// 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 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","'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","/*\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 */\n\nimport { getLanguage, getLocale } from '@nextcloud/l10n'\n\nconst languageToBCP47 = () => {\n\tlet language = getLanguage().replace(/_/g, '-')\n\tlet locale = getLocale()\n\n\t// German formal should just be treated as 'de'\n\tif (language === 'de-DE') {\n\t\tlanguage = 'de'\n\t}\n\t// special case where setting the bc47 region depending on the locale setting makes sense\n\tconst whitelist = {\n\t\tde: {\n\t\t\t'de_CH': 'de-CH',\n\t\t\t'gsw': 'de-CH',\n\t\t\t'gsw_CH': 'de-CH'\n\t\t},\n\t\tfr: {\n\t\t\t'fr_CH': 'fr-CH'\n\t\t},\n\t\tit: {\n\t\t\t'it_CH': 'it-CH'\n\t\t}\n\t}\n\tconst matchingWhitelist = whitelist[language]\n\tif (typeof matchingWhitelist !== 'undefined' && typeof matchingWhitelist[locale] !== 'undefined') {\n\t\treturn matchingWhitelist[locale]\n\t}\n\n\t// loleaflet expects a BCP47 language tag syntax\n\t// when a the nextcloud language constist of two parts we sent both\n\t// as the region is then provided by the language setting\n\treturn language\n}\n\nconst getNextcloudVersion = () => {\n\treturn parseInt(OC.config.version.split('.')[0])\n}\n\nconst splitPath = (path) => {\n\tconst fileName = path.split('\\\\').pop().split('/').pop()\n\tconst directory = path.substr(0, (path.length - fileName.length - 1))\n\treturn [ directory, fileName ]\n}\n\nexport {\n\tlanguageToBCP47,\n\tgetNextcloudVersion,\n\tsplitPath\n}\n","\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 */\n\nconst ooxml = OC.getCapabilities()['richdocuments']['config']['doc_format'] === 'ooxml'\n\nconst getFileTypes = () => {\n\tif (ooxml) {\n\t\treturn {\n\t\t\tdocument: {\n\t\t\t\textension: 'docx',\n\t\t\t\tmime: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\n\t\t\t},\n\t\t\tspreadsheet: {\n\t\t\t\textension: 'xlsx',\n\t\t\t\tmime: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\n\t\t\t},\n\t\t\tpresentation: {\n\t\t\t\textension: 'pptx',\n\t\t\t\tmime: 'application/vnd.openxmlformats-officedocument.presentationml.presentation'\n\t\t\t}\n\t\t}\n\t}\n\treturn {\n\t\tdocument: {\n\t\t\textension: 'odt',\n\t\t\tmime: 'application/vnd.oasis.opendocument.text'\n\t\t},\n\t\tspreadsheet: {\n\t\t\textension: 'ods',\n\t\t\tmime: 'application/vnd.oasis.opendocument.spreadsheet'\n\t\t},\n\t\tpresentation: {\n\t\t\textension: 'odp',\n\t\t\tmime: 'application/vnd.oasis.opendocument.presentation'\n\t\t}\n\t}\n}\n\nconst getFileType = (document) => {\n\treturn getFileTypes()[document]\n}\n\nexport default {\n\tgetFileTypes,\n\tgetFileType\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","\"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","'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 toString = {}.toString;\n\nmodule.exports = function (it) {\n  return toString.call(it).slice(8, -1);\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","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';\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","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 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","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 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 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.5',\n  mode: IS_PURE ? 'pure' : 'global',\n  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\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","module.exports = {};\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 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 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","// 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 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');\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","'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","'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","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 parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n  constructor (version, options) {\n    options = parseOptions(options)\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","// parse out just the options we care about so we always get a consistent\n// obj with keys in a consistent order.\nconst opts = ['includePrerelease', 'loose', 'rtl']\nconst parseOptions = options =>\n  !options ? {}\n  : typeof options !== 'object' ? { loose: true }\n  : opts.filter(k => options[k]).reduce((options, k) => {\n    options[k] = true\n    return options\n  }, {})\nmodule.exports = parseOptions\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.es/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","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 -- safe\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 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 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.9.0',\n  mode: IS_PURE ? 'pure' : 'global',\n  copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\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 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.es/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n  return classof(arg) == 'Array';\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.es/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 fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n  // Chrome 38 Symbol has incorrect toString conversion\n  /* global Symbol -- required for testing */\n  return !String(Symbol());\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","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","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, filterOut }` 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 IS_FILTER_OUT = TYPE == 7;\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 || IS_FILTER_OUT ? 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 switch (TYPE) {\n          case 4: return false;             // every\n          case 7: push.call(target, value); // filterOut\n        }\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.es/ecma262/#sec-array.prototype.foreach\n  forEach: createMethod(0),\n  // `Array.prototype.map` method\n  // https://tc39.es/ecma262/#sec-array.prototype.map\n  map: createMethod(1),\n  // `Array.prototype.filter` method\n  // https://tc39.es/ecma262/#sec-array.prototype.filter\n  filter: createMethod(2),\n  // `Array.prototype.some` method\n  // https://tc39.es/ecma262/#sec-array.prototype.some\n  some: createMethod(3),\n  // `Array.prototype.every` method\n  // https://tc39.es/ecma262/#sec-array.prototype.every\n  every: createMethod(4),\n  // `Array.prototype.find` method\n  // https://tc39.es/ecma262/#sec-array.prototype.find\n  find: createMethod(5),\n  // `Array.prototype.findIndex` method\n  // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n  findIndex: createMethod(6),\n  // `Array.prototype.filterOut` method\n  // https://github.com/tc39/proposal-array-filtering\n  filterOut: createMethod(7)\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n  return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n} : [].forEach;\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.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/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.es/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.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar fails = require('../internals/fails');\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.es/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\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n  var test = {};\n  // FF44- legacy iterators case\n  return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !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.es/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","/* eslint-disable no-proto -- safe */\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\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 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 iteratorClose = require('../internals/iterator-close');\n\nvar Result = function (stopped, result) {\n  this.stopped = stopped;\n  this.result = result;\n};\n\nmodule.exports = function (iterable, unboundFunction, options) {\n  var that = options && options.that;\n  var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n  var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n  var INTERRUPTED = !!(options && options.INTERRUPTED);\n  var fn = bind(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);\n  var iterator, iterFn, index, length, result, next, step;\n\n  var stop = function (condition) {\n    if (iterator) iteratorClose(iterator);\n    return new Result(true, condition);\n  };\n\n  var callFn = function (value) {\n    if (AS_ENTRIES) {\n      anObject(value);\n      return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n    } return INTERRUPTED ? fn(value, stop) : fn(value);\n  };\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 = callFn(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    try {\n      result = callFn(step.value);\n    } catch (error) {\n      iteratorClose(iterator);\n      throw error;\n    }\n    if (typeof result == 'object' && result && result instanceof Result) return result;\n  } return new Result(false);\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","module.exports = function (it, Constructor, name) {\n  if (!(it instanceof Constructor)) {\n    throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n  } return it;\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 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","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 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 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 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.5',\n  mode: IS_PURE ? 'pure' : 'global',\n  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\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","module.exports = {};\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","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 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 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 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","/*\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 */\ntype MessageEventSource = Window | MessagePort | ServiceWorker;\n\nexport interface WopiPost {\n\tMessageId: string;\n\tValues: WopiPostValues;\n}\n\nexport interface WopiPostValues {\n\tDeprecated?: boolean;\n}\n\ninterface WindowCallbackHandler { (): Window}\n\nexport default class PostMessageService {\n\tprivate readonly targets: {[name: string]: (Window|WindowCallbackHandler)};\n\tprivate postMessageHandlers: Function[] = [];\n\n\tconstructor(targets: {[name: string]: (Window|WindowCallbackHandler)}) {\n\t\tthis.targets = targets\n\t\twindow.addEventListener('message', (event: {source: MessageEventSource, data: any, origin: string}) => {\n\t\t\tthis.handlePostMessage(event.data)\n\t\t}, false)\n\t}\n\n\tsendPostMessage(target: string, message: any, targetOrigin: string = '*') {\n\t\tlet targetElement: Window;\n\t\tif (typeof this.targets[target] === 'function') {\n\t\t\ttargetElement = (this.targets[target] as WindowCallbackHandler)()\n\t\t} else {\n\t\t\ttargetElement = this.targets[target] as Window\n\t\t}\n\t\ttargetElement.postMessage(message, targetOrigin)\n\t\tconsole.debug('PostMessageService.sendPostMessage', target, message)\n\t}\n\n\n\tsendWOPIPostMessage(target: string, msgId: string, values: any = {}) {\n\t\tconst msg = {\n\t\t\tMessageId: msgId,\n\t\t\tSendTime: Date.now(),\n\t\t\tValues: values\n\t\t}\n\n\t\tthis.sendPostMessage(target, JSON.stringify(msg))\n\t}\n\n\tprivate static parsePostMessage(data: any) {\n\t\tlet msgId: string,\n\t\t\targs: WopiPostValues,\n\t\t\tdeprecated: boolean\n\n\t\ttry {\n\t\t\tconst msg: WopiPost = JSON.parse(data)\n\t\t\tmsgId = msg.MessageId\n\t\t\targs = msg.Values\n\t\t\tdeprecated = !!msg.Values.Deprecated\n\t\t} catch (exc) {\n\t\t\tmsgId = data\n\t\t}\n\t\treturn { msgId, args, deprecated }\n\t}\n\n\tregisterPostMessageHandler(callback: Function) {\n\t\tthis.postMessageHandlers.push(callback)\n\t}\n\n\tunregisterPostMessageHandler(callback: Function) {\n\t\tconst handlerIndex = this.postMessageHandlers.findIndex(cb => cb === callback)\n\t\tdelete this.postMessageHandlers[handlerIndex]\n\t}\n\n\tprivate handlePostMessage(data: any) {\n\t\tconst parsed = PostMessageService.parsePostMessage(data);\n\t\tif (typeof parsed === 'undefined' || parsed === null) {\n\t\t\treturn\n\t\t}\n\t\tthis.postMessageHandlers.forEach((fn: Function): void => {\n\t\t\tif (parsed.deprecated) {\n\t\t\t\tconsole.debug('PostMessageService.handlePostMessage', 'Ignoring deprecated post message', parsed.msgId)\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tfn({\n\t\t\t\tdata: data,\n\t\t\t\tparsed\n\t\t\t})\n\t\t})\n\t}\n\n}\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","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 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","module.exports = false;\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 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 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 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 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","'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 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 $ = 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 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 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 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","'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","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","'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","'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 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","'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 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","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","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.ProxyBus = void 0;\n\nvar _valid = _interopRequireDefault(require(\"semver/functions/valid\"));\n\nvar _major = _interopRequireDefault(require(\"semver/functions/major\"));\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 packageJson = {\n  name: \"@nextcloud/event-bus\",\n  version: \"1.2.0\",\n  description: \"\",\n  main: \"dist/index.js\",\n  types: \"dist/index.d.ts\",\n  scripts: {\n    build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n    \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n    \"check-types\": \"tsc\",\n    dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n    test: \"jest\",\n    \"test:watch\": \"jest --watchAll\"\n  },\n  keywords: [\"nextcloud\"],\n  homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n  author: \"Christoph Wurst\",\n  license: \"GPL-3.0-or-later\",\n  repository: {\n    type: \"git\",\n    url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n  },\n  dependencies: {\n    \"@types/semver\": \"^7.1.0\",\n    \"core-js\": \"^3.6.2\",\n    semver: \"^7.3.2\"\n  },\n  devDependencies: {\n    \"@babel/cli\": \"^7.6.0\",\n    \"@babel/core\": \"^7.6.0\",\n    \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n    \"@babel/preset-env\": \"^7.6.0\",\n    \"@babel/preset-typescript\": \"^7.6.0\",\n    \"@nextcloud/browserslist-config\": \"^1.0.0\",\n    \"babel-jest\": \"^26.0.1\",\n    \"babel-plugin-inline-json-import\": \"^0.3.2\",\n    jest: \"^26.0.1\",\n    typedoc: \"^0.17.2\",\n    typescript: \"^3.6.3\"\n  },\n  browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar ProxyBus = /*#__PURE__*/function () {\n  function ProxyBus(bus) {\n    _classCallCheck(this, ProxyBus);\n\n    _defineProperty(this, \"bus\", void 0);\n\n    if (typeof bus.getVersion !== 'function' || !(0, _valid.default)(bus.getVersion())) {\n      console.warn('Proxying an event bus with an unknown or invalid version');\n    } else if ((0, _major.default)(bus.getVersion()) !== (0, _major.default)(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  _createClass(ProxyBus, [{\n    key: \"getVersion\",\n    value: function getVersion() {\n      return packageJson.version;\n    }\n  }, {\n    key: \"subscribe\",\n    value: function subscribe(name, handler) {\n      this.bus.subscribe(name, handler);\n    }\n  }, {\n    key: \"unsubscribe\",\n    value: function unsubscribe(name, handler) {\n      this.bus.unsubscribe(name, handler);\n    }\n  }, {\n    key: \"emit\",\n    value: function emit(name, event) {\n      this.bus.emit(name, event);\n    }\n  }]);\n\n  return ProxyBus;\n}();\n\nexports.ProxyBus = ProxyBus;\n//# sourceMappingURL=ProxyBus.js.map","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 parseOptions = require('../internal/parse-options')\nconst parse = (version, options) => {\n  options = parseOptions(options)\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","\"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.for-each\");\n\nrequire(\"core-js/modules/es.array.iterator\");\n\nrequire(\"core-js/modules/es.map\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.string.iterator\");\n\nrequire(\"core-js/modules/web.dom-collections.for-each\");\n\nrequire(\"core-js/modules/web.dom-collections.iterator\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.SimpleBus = 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 packageJson = {\n  name: \"@nextcloud/event-bus\",\n  version: \"1.2.0\",\n  description: \"\",\n  main: \"dist/index.js\",\n  types: \"dist/index.d.ts\",\n  scripts: {\n    build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n    \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n    \"check-types\": \"tsc\",\n    dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n    test: \"jest\",\n    \"test:watch\": \"jest --watchAll\"\n  },\n  keywords: [\"nextcloud\"],\n  homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n  author: \"Christoph Wurst\",\n  license: \"GPL-3.0-or-later\",\n  repository: {\n    type: \"git\",\n    url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n  },\n  dependencies: {\n    \"@types/semver\": \"^7.1.0\",\n    \"core-js\": \"^3.6.2\",\n    semver: \"^7.3.2\"\n  },\n  devDependencies: {\n    \"@babel/cli\": \"^7.6.0\",\n    \"@babel/core\": \"^7.6.0\",\n    \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n    \"@babel/preset-env\": \"^7.6.0\",\n    \"@babel/preset-typescript\": \"^7.6.0\",\n    \"@nextcloud/browserslist-config\": \"^1.0.0\",\n    \"babel-jest\": \"^26.0.1\",\n    \"babel-plugin-inline-json-import\": \"^0.3.2\",\n    jest: \"^26.0.1\",\n    typedoc: \"^0.17.2\",\n    typescript: \"^3.6.3\"\n  },\n  browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar SimpleBus = /*#__PURE__*/function () {\n  function SimpleBus() {\n    _classCallCheck(this, SimpleBus);\n\n    _defineProperty(this, \"handlers\", new Map());\n  }\n\n  _createClass(SimpleBus, [{\n    key: \"getVersion\",\n    value: function getVersion() {\n      return packageJson.version;\n    }\n  }, {\n    key: \"subscribe\",\n    value: function subscribe(name, handler) {\n      this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n    }\n  }, {\n    key: \"unsubscribe\",\n    value: function unsubscribe(name, handler) {\n      this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) {\n        return h != handler;\n      }));\n    }\n  }, {\n    key: \"emit\",\n    value: function emit(name, event) {\n      (this.handlers.get(name) || []).forEach(function (h) {\n        try {\n          h(event);\n        } catch (e) {\n          console.error('could not invoke event listener', e);\n        }\n      });\n    }\n  }]);\n\n  return SimpleBus;\n}();\n\nexports.SimpleBus = SimpleBus;\n//# sourceMappingURL=SimpleBus.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/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.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n  // eslint-disable-next-line no-unused-vars -- required for `.length`\n  concat: function concat(arg) {\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 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.es/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 inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\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.es/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 -- NaN check\n    if (IS_INCLUDES && el != el) while (length > index) {\n      value = O[index++];\n      // eslint-disable-next-line no-self-compare -- NaN check\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.es/ecma262/#sec-array.prototype.includes\n  includes: createMethod(true),\n  // `Array.prototype.indexOf` method\n  // https://tc39.es/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","'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 NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n  /* global Symbol -- safe */\n  && !Symbol.sham\n  && typeof Symbol.iterator == 'symbol';\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n  filter: function filter(callbackfn /* , thisArg */) {\n    return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\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 $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n  forEach: forEach\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 -- required for testing\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.es/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 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.es/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 internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n  return internalObjectKeys(O, enumBugKeys);\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","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.es/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  var REPLACE = isForced(\n    CONSTRUCTOR_NAME,\n    typeof NativeConstructor != 'function' || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n      new NativeConstructor().entries().next();\n    }))\n  );\n\n  if (REPLACE) {\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 -- required for testing\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: that, AS_ENTRIES: 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","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 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 anObject = require('../internals/an-object');\n\nmodule.exports = function (iterator) {\n  var returnMethod = iterator['return'];\n  if (returnMethod !== undefined) {\n    return anObject(returnMethod.call(iterator)).value;\n  }\n};\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 -- required for testing\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","'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: that, AS_ENTRIES: 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","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","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.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n  redefine(Object.prototype, 'toString', toString, { unsafe: true });\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.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n  return '[object ' + classof(this) + ']';\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.es/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.es/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","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.es/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","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","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","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","'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 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 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 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","module.exports = false;\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 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 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 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 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","// 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\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","'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","'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 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 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","'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 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","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","/*\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 Types from '../helpers/types'\n\n/** @type OC.Plugin */\nconst NewFileMenu = {\n\tattach: function(newFileMenu) {\n\t\tvar self = this\n\t\tconst document = Types.getFileType('document')\n\t\tconst spreadsheet = Types.getFileType('spreadsheet')\n\t\tconst presentation = Types.getFileType('presentation')\n\n\t\tnewFileMenu.addMenuEntry({\n\t\t\tid: 'add-' + document.extension,\n\t\t\tdisplayName: t('richdocuments', 'New Document'),\n\t\t\ttemplateName: t('richdocuments', 'New Document') + '.' + document.extension,\n\t\t\ticonClass: 'icon-filetype-document',\n\t\t\tfileType: 'x-office-document',\n\t\t\tactionHandler: function(filename) {\n\t\t\t\tif (OC.getCapabilities().richdocuments.templates) {\n\t\t\t\t\tself._openTemplatePicker('document', document.mime, filename)\n\t\t\t\t} else {\n\t\t\t\t\tself._createDocument(document.mime, filename)\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tnewFileMenu.addMenuEntry({\n\t\t\tid: 'add-' + spreadsheet.extension,\n\t\t\tdisplayName: t('richdocuments', 'New Spreadsheet'),\n\t\t\ttemplateName: t('richdocuments', 'New Spreadsheet') + '.' + spreadsheet.extension,\n\t\t\ticonClass: 'icon-filetype-spreadsheet',\n\t\t\tfileType: 'x-office-spreadsheet',\n\t\t\tactionHandler: function(filename) {\n\t\t\t\tif (OC.getCapabilities().richdocuments.templates) {\n\t\t\t\t\tself._openTemplatePicker('spreadsheet', spreadsheet.mime, filename)\n\t\t\t\t} else {\n\t\t\t\t\tself._createDocument(spreadsheet.mime, filename)\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tnewFileMenu.addMenuEntry({\n\t\t\tid: 'add-' + presentation.extension,\n\t\t\tdisplayName: t('richdocuments', 'New Presentation'),\n\t\t\ttemplateName: t('richdocuments', 'New Presentation') + '.' + presentation.extension,\n\t\t\ticonClass: 'icon-filetype-presentation',\n\t\t\tfileType: 'x-office-presentation',\n\t\t\tactionHandler: function(filename) {\n\t\t\t\tif (OC.getCapabilities().richdocuments.templates) {\n\t\t\t\t\tself._openTemplatePicker('presentation', presentation.mime, filename)\n\t\t\t\t} else {\n\t\t\t\t\tself._createDocument(presentation.mime, filename)\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t},\n\n\t_createDocument: function(mimetype, filename) {\n\t\tOCA.Files.Files.isFileNameValid(filename)\n\t\tfilename = FileList.getUniqueName(filename)\n\n\t\t$.post(\n\t\t\tOC.generateUrl('apps/richdocuments/ajax/documents/create'),\n\t\t\t{ mimetype: mimetype, filename: filename, dir: document.getElementById('dir').value },\n\t\t\tfunction(response) {\n\t\t\t\tif (response && response.status === 'success') {\n\t\t\t\t\tFileList.add(response.data, { animate: true, scrollTo: true })\n\t\t\t\t} else {\n\t\t\t\t\tOC.dialogs.alert(response.data.message, t('core', 'Could not create file'))\n\t\t\t\t}\n\t\t\t}\n\t\t)\n\t},\n\n\t_createDocumentFromTemplate: function(templateId, mimetype, filename) {\n\t\tOCA.Files.Files.isFileNameValid(filename)\n\t\tfilename = FileList.getUniqueName(filename)\n\t\t$.post(\n\t\t\tOC.generateUrl('apps/richdocuments/ajax/documents/create'),\n\t\t\t{ mimetype: mimetype, filename: filename, dir: document.getElementById('dir').value },\n\t\t\tfunction(response) {\n\t\t\t\tif (response && response.status === 'success') {\n\t\t\t\t\tFileList.add(response.data, { animate: false, scrollTo: false })\n\t\t\t\t\tconst fileModel = FileList.getModelForFile(filename)\n\t\t\t\t\tconst path = document.getElementById('dir').value + '/' + filename\n\t\t\t\t\tOCA.RichDocuments.openWithTemplate({\n\t\t\t\t\t\tfileId: -1,\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\ttemplateId: templateId,\n\t\t\t\t\t\tfileList: window.FileList,\n\t\t\t\t\t\tfileModel\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\tOC.dialogs.alert(response.data.message, t('core', 'Could not create file'))\n\t\t\t\t}\n\t\t\t}\n\t\t)\n\t},\n\n\t_openTemplatePicker: function(type, mimetype, filename) {\n\t\tvar self = this\n\t\t$.ajax({\n\t\t\turl: OC.linkToOCS('apps/richdocuments/api/v1/templates', 2) + type,\n\t\t\tdataType: 'json'\n\t\t}).then(function(response) {\n\t\t\tif (response.ocs.data.length === 1) {\n\t\t\t\tconst { id } = response.ocs.data[0]\n\t\t\t\tself._createDocumentFromTemplate(id, mimetype, filename)\n\t\t\t\treturn\n\t\t\t}\n\t\t\tself._buildTemplatePicker(response.ocs.data)\n\t\t\t\t.then(function() {\n\t\t\t\t\tvar buttonlist = [{\n\t\t\t\t\t\ttext: t('core', 'Cancel'),\n\t\t\t\t\t\tclasses: 'cancel',\n\t\t\t\t\t\tclick: function() {\n\t\t\t\t\t\t\t$(this).ocdialog('close')\n\t\t\t\t\t\t}\n\t\t\t\t\t}, {\n\t\t\t\t\t\ttext: t('richdocuments', 'Create'),\n\t\t\t\t\t\tclasses: 'primary',\n\t\t\t\t\t\tclick: function() {\n\t\t\t\t\t\t\tvar templateId = this.dataset.templateId\n\t\t\t\t\t\t\tself._createDocumentFromTemplate(templateId, mimetype, filename)\n\t\t\t\t\t\t\t$(this).ocdialog('close')\n\t\t\t\t\t\t}\n\t\t\t\t\t}]\n\n\t\t\t\t\t$('#template-picker').ocdialog({\n\t\t\t\t\t\tcloseOnEscape: true,\n\t\t\t\t\t\tmodal: true,\n\t\t\t\t\t\tbuttons: buttonlist\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t})\n\t},\n\n\t_buildTemplatePicker: function(data) {\n\t\tvar self = this\n\t\treturn $.get(OC.filePath('richdocuments', 'templates', 'templatePicker.html'), function(tmpl) {\n\t\t\tvar $tmpl = $(tmpl)\n\t\t\t// init template picker\n\t\t\tvar $dlg = $tmpl.octemplate({\n\t\t\t\tdialog_name: 'template-picker',\n\t\t\t\tdialog_title: t('richdocuments', 'Select template')\n\t\t\t})\n\n\t\t\t// create templates list\n\t\t\tvar templates = _.values(data)\n\t\t\ttemplates.forEach(function(template) {\n\t\t\t\tself._appendTemplateFromData($dlg[0], template)\n\t\t\t})\n\n\t\t\t$('body').append($dlg)\n\t\t})\n\t},\n\n\t_appendTemplateFromData: function(dlg, data) {\n\t\tvar template = dlg.querySelector('.template-model').cloneNode(true)\n\t\ttemplate.className = ''\n\t\ttemplate.querySelector('img').src = OC.generateUrl('apps/richdocuments/template/preview/' + data.id)\n\t\ttemplate.querySelector('h2').textContent = data.name\n\t\ttemplate.onclick = function() {\n\t\t\tdlg.dataset.templateId = data.id\n\t\t}\n\t\tif (!dlg.dataset.templateId) {\n\t\t\tdlg.dataset.templateId = data.id\n\t\t}\n\n\t\tdlg.querySelector('.template-container').appendChild(template)\n\t}\n}\n\nexport default NewFileMenu\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n  if (!options) {\n    // eslint-disable-next-line no-param-reassign\n    options = {};\n  } // eslint-disable-next-line no-underscore-dangle, no-param-reassign\n\n\n  url = url && url.__esModule ? url.default : url;\n\n  if (typeof url !== 'string') {\n    return url;\n  } // If url is already wrapped in quotes, remove them\n\n\n  if (/^['\"].*['\"]$/.test(url)) {\n    // eslint-disable-next-line no-param-reassign\n    url = url.slice(1, -1);\n  }\n\n  if (options.hash) {\n    // eslint-disable-next-line no-param-reassign\n    url += options.hash;\n  } // Should url be wrapped?\n  // See https://drafts.csswg.org/css-values-3/#urls\n\n\n  if (/[\"'() \\t\\n]/.test(url) || options.needQuotes) {\n    return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, '\\\\n'), \"\\\"\");\n  }\n\n  return url;\n};","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../node_modules/css-loader/dist/runtime/getUrl.js\";\nimport ___CSS_LOADER_URL_IMPORT_0___ from \"../img/x-office-document.svg\";\nimport ___CSS_LOADER_URL_IMPORT_1___ from \"../img/x-office-spreadsheet.svg\";\nimport ___CSS_LOADER_URL_IMPORT_2___ from \"../img/x-office-presentation.svg\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\nvar ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"#odf-canvas{position:relative;top:37px;left:0px;border:1px solid darkgray;border-left:0 none;box-shadow:0px 4px 10px #000;-moz-box-shadow:0px 4px 10px #000;-webkit-box-shadow:0px 4px 10px #000}.icon-filetype-document{background-image:url(\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \")}.icon-filetype-spreadsheet{background-image:url(\" + ___CSS_LOADER_URL_REPLACEMENT_1___ + \")}.icon-filetype-presentation{background-image:url(\" + ___CSS_LOADER_URL_REPLACEMENT_2___ + \")}.richdocuments-sharing .icon-shared{display:block;width:16px;height:16px;padding:16px;opacity:0.6}.richdocuments-sharing .icon-shared:hover,.richdocuments-sharing .icon-shared:focus{opacity:1}#richdocumentsframe{background-color:#fff;width:100%;height:calc(100vh - 50px);display:block;position:absolute;top:0;z-index:110}#editors-menu{min-width:200px;top:50px}#editors-menu ul li{display:flex;padding:3px;border-left:3px solid transparent}#editors-menu ul li.active{border-left:3px solid var(--color-primary)}#editors-menu ul li .label{padding:6px;flex-grow:1}#editors-menu ul li .label .icon-play-next{opacity:.5;display:inline-block;padding-left:10px;vertical-align:top}#editors-menu ul li label.label::before{margin-right:16px;margin-left:7px}#editors-menu ul li .icon-close{padding:8px}#richdocuments-avatars{position:relative;right:-15px}#richdocuments-avatars>.richdocuments-avatar{float:right;border-radius:50%;margin:8px;margin-left:-20px;box-shadow:0px 0px 3px rgba(0,0,0,0.5);position:relative}#richdocuments-avatars>.richdocuments-avatar.read-only{opacity:0.8}#richdocuments-header{display:flex}#richdocuments-header>div .icon-shared,#richdocuments-header>div .icon-more{display:block;min-width:50px;height:50px}#richdocuments-actions{position:relative}#richdocuments-actions li{white-space:nowrap}#richdocuments-actions li a.icon-loading-small:after{left:19px}#versionsTabView li{padding-left:15px;margin-left:-15px}#versionsTabView li.active{border-left:3px solid var(--color-primary, #000);padding-left:12px}#currentVersion li,#lastSavedVersion li{border-bottom:1px solid rgba(100,100,100,0.1)}#currentVersion li .version-container .downloadVersion,#lastSavedVersion li .version-container .downloadVersion{display:flex;flex-direction:column;margin-left:12px}#template-picker .template-container:not(.hidden){display:flex;flex-wrap:wrap}#template-picker .template-container:not(.hidden) a{border-radius:var(--border-radius);border:1px solid var(--color-border);margin:10px;position:relative}#template-picker .template-container:not(.hidden) a:hover,#template-picker .template-container:not(.hidden) a:focus{border-color:var(--color-primary-element)}#template-picker .template-container:not(.hidden) a>span{display:flex;flex-direction:column;width:170px;margin:10px;cursor:pointer}#template-picker .template-container:not(.hidden) a>span>img,#template-picker .template-container:not(.hidden) a>span>span{width:170px;height:240.42857px;background-color:var(--color-background-dark);background-size:24px}#template-picker .template-container:not(.hidden) a>span>h2{margin-top:10px;font-size:inherit}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./css/viewer.scss\",\"webpack://./css/templatePicker.scss\"],\"names\":[],\"mappings\":\"AAAA,YACC,iBAAkB,CAClB,QAAS,CACT,QAAS,CACT,yBAAyB,CACzB,kBAAkB,CAClB,4BAA6B,CAC7B,iCAAkC,CAClC,oCAAqC,CACrC,wBAGA,wDAAqD,CACrD,2BAGA,wDAAwD,CACxD,4BAGA,wDAAyD,CACzD,oCAGA,aAAc,CACd,UAAW,CACX,WAAY,CACZ,YAAa,CACb,WAAY,CACZ,oFAIA,SAAU,CACV,oBAGA,qBAAsB,CACtB,UAAU,CACV,yBAA0B,CAC1B,aAAa,CACb,iBAAiB,CACjB,KAAK,CACL,WAAW,CACX,cAGA,eAAgB,CAChB,QAAS,CAFV,oBAKE,YAAa,CACb,WAAY,CACZ,iCAAkC,CAPpC,2BASG,0CAA2C,CAT9C,2BAaG,WAAY,CACZ,WAAY,CAdf,2CAiBI,UAAW,CACX,oBAAqB,CACrB,iBAAkB,CAClB,kBAAmB,CApBvB,wCAwBG,iBAAkB,CAClB,eAAgB,CAzBnB,gCA4BG,WAAY,CACZ,uBAKF,iBAAkB,CAClB,WAAY,CAFb,6CAKE,WAAY,CACZ,iBAAkB,CAClB,UAAW,CACX,iBAAkB,CAClB,sCAA0C,CAC1C,iBAAkB,CAVpB,uDAYG,WAAY,CACZ,sBAKF,YAAa,CADd,4EAIE,aAAc,CACd,cAAe,CACf,WAAY,CACZ,uBAID,iBAAkB,CADnB,0BAGE,kBAAmB,CAHrB,qDAKG,SAAU,CACV,oBAKF,iBAAkB,CAClB,iBAAkB,CAClB,2BAGA,gDAAiD,CACjD,iBAAkB,CAClB,wCAIA,6CAA6C,CAF9C,gHAKE,YAAa,CACb,qBAAsB,CACtB,gBAAiB,CACjB,kDC9GA,YAAa,CACb,cAAe,CAHjB,oDAQG,kCAAmC,CACnC,oCAAqC,CACrC,WAHY,CAIZ,iBAAkB,CAXrB,oHAeI,yCAA0C,CAf9C,yDAmBI,YAAa,CACb,qBAAsB,CACtB,WAhBW,CAiBX,WAfW,CAgBX,cAAe,CAvBnB,2HA0BK,WArBU,CAsBV,kBArBuB,CAsBvB,6CAA8C,CAC9C,oBAAqB,CA7B1B,4DAgCK,eAzBU,CA0BV,iBAAkB\",\"sourcesContent\":[\"#odf-canvas{\\n\\tposition: relative;\\n\\ttop: 37px;\\n\\tleft: 0px;\\n\\tborder:1px solid darkgray;\\n\\tborder-left:0 none;\\n\\tbox-shadow: 0px 4px 10px #000;\\n\\t-moz-box-shadow: 0px 4px 10px #000;\\n\\t-webkit-box-shadow: 0px 4px 10px #000;\\n}\\n\\n.icon-filetype-document{\\n\\tbackground-image: url('../img/x-office-document.svg')\\n}\\n\\n.icon-filetype-spreadsheet{\\n\\tbackground-image: url('../img/x-office-spreadsheet.svg');\\n}\\n\\n.icon-filetype-presentation{\\n\\tbackground-image: url('../img/x-office-presentation.svg');\\n}\\n\\n.richdocuments-sharing .icon-shared {\\n\\tdisplay: block;\\n\\twidth: 16px;\\n\\theight: 16px;\\n\\tpadding: 16px;\\n\\topacity: 0.6;\\n}\\n\\n.richdocuments-sharing .icon-shared:hover,\\n.richdocuments-sharing .icon-shared:focus {\\n\\topacity: 1;\\n}\\n\\n#richdocumentsframe {\\n\\tbackground-color: #fff;\\n\\twidth:100%;\\n\\theight: calc(100vh - 50px);\\n\\tdisplay:block;\\n\\tposition:absolute;\\n\\ttop:0;\\n\\tz-index:110;\\n}\\n\\n#editors-menu {\\n\\tmin-width: 200px;\\n\\ttop: 50px;\\n\\n\\tul li {\\n\\t\\tdisplay: flex;\\n\\t\\tpadding: 3px;\\n\\t\\tborder-left: 3px solid transparent;\\n\\t\\t&.active {\\n\\t\\t\\tborder-left: 3px solid var(--color-primary);\\n\\t\\t}\\n\\n\\t\\t.label {\\n\\t\\t\\tpadding: 6px;\\n\\t\\t\\tflex-grow: 1;\\n\\n\\t\\t\\t.icon-play-next {\\n\\t\\t\\t\\topacity: .5;\\n\\t\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\t\\tpadding-left: 10px;\\n\\t\\t\\t\\tvertical-align: top;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\tlabel.label::before {\\n\\t\\t\\tmargin-right: 16px;\\n\\t\\t\\tmargin-left: 7px;\\n\\t\\t}\\n\\t\\t.icon-close {\\n\\t\\t\\tpadding: 8px;\\n\\t\\t}\\n\\t}\\n}\\n\\n#richdocuments-avatars {\\n\\tposition: relative;\\n\\tright: -15px;\\n\\n\\t& > .richdocuments-avatar {\\n\\t\\tfloat: right;\\n\\t\\tborder-radius: 50%;\\n\\t\\tmargin: 8px;\\n\\t\\tmargin-left: -20px;\\n\\t\\tbox-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);\\n\\t\\tposition: relative;\\n\\t\\t&.read-only {\\n\\t\\t\\topacity: 0.8;\\n\\t\\t}\\n\\t}\\n}\\n\\n#richdocuments-header {\\n\\tdisplay: flex;\\n\\t& > div .icon-shared,\\n\\t& > div .icon-more {\\n\\t\\tdisplay: block;\\n\\t\\tmin-width: 50px;\\n\\t\\theight: 50px;\\n\\t}\\n}\\n\\n#richdocuments-actions {\\n\\tposition: relative;\\n\\tli {\\n\\t\\twhite-space: nowrap;\\n\\t\\ta.icon-loading-small:after {\\n\\t\\t\\tleft: 19px;\\n\\t\\t}\\n\\t}\\n}\\n\\n#versionsTabView li {\\n\\tpadding-left: 15px;\\n\\tmargin-left: -15px;\\n}\\n\\n#versionsTabView li.active {\\n\\tborder-left: 3px solid var(--color-primary, #000);\\n\\tpadding-left: 12px;\\n}\\n\\n#currentVersion li,\\n#lastSavedVersion li {\\n\\tborder-bottom: 1px solid rgba(100,100,100,.1);\\n\\n\\t.version-container .downloadVersion {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tmargin-left: 12px;\\n\\t}\\n}\\n\\n@import 'templatePicker';\\n\",\"/**\\n * @copyright Copyright (c) 2018, John Molakvoæ (skjnldsv@protonmail.com)\\n *\\n * @author John Molakvoæ (skjnldsv) <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 */\\n\\n#template-picker {\\n\\t.template-container:not(.hidden) {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\ta {\\n\\t\\t\\t$size: 170px;\\n\\t\\t\\t$sizeY: $size / 210 * 297;\\n\\t\\t\\t$space: 10px;\\n\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\tborder: 1px solid var(--color-border);\\n\\t\\t\\tmargin: $space;\\n\\t\\t\\tposition: relative;\\n\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus {\\n\\t\\t\\t\\tborder-color: var(--color-primary-element);\\n\\t\\t\\t}\\n\\n\\t\\t\\t> span {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tflex-direction: column;\\n\\t\\t\\t\\twidth: $size;\\n\\t\\t\\t\\tmargin: $space;\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t\\t> img,\\n\\t\\t\\t\\t> span {\\n\\t\\t\\t\\t\\twidth: $size;\\n\\t\\t\\t\\t\\theight: $sizeY;\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t\\tbackground-size: 24px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t> h2 {\\n\\t\\t\\t\\t\\tmargin-top: $space;\\n\\t\\t\\t\\t\\tfont-size: inherit;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE2IiB2ZXJzaW9uPSIxLjEiIGhlaWdodD0iMTYiPjxwYXRoIGZpbGw9IiM0OWFiZWEiIGQ9Im0yLjUgMWMtMC4yOCAwLTAuNSAwLjIyLTAuNSAwLjV2MTNjMCAwLjI4IDAuMjIgMC41IDAuNSAwLjVoMTFjMC4yOCAwIDAuNS0wLjIyIDAuNS0wLjV2LTEwLjVsLTMtM2gtOC41em0xLjUgMmg2djFoLTZ2LTF6bTAgM2g1djFoLTV2LTF6bTAgM2g4djFoLTh2LTF6bTAgM2g0djFoLTR2LTF6Ii8+PC9zdmc+Cg==\"","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE2IiB2ZXJzaW9uPSIxLjEiIGhlaWdodD0iMTYiPjxwYXRoIGZpbGw9IiM5YWJkNGUiIGQ9Im0yLjUgMWMtMC4yOCAwLTAuNSAwLjIyLTAuNSAwLjV2MTNjMCAwLjI4IDAuMjIgMC41IDAuNSAwLjVoMTFjMC4yOCAwIDAuNS0wLjIyIDAuNS0wLjV2LTEwLjVsLTMtM2gtOC41em0xLjUgM2gydjJoLTJ2LTJ6bTMgMGg1djJoLTV2LTJ6bS0zIDNoMnYyaC0ydi0yem0zIDBoNXYyaC01di0yem0tMyAzaDJ2MmgtMnYtMnptMyAwaDV2MmgtNXYtMnoiLz48L3N2Zz4K\"","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiB2ZXJzaW9uPSIxLjEiPjxwYXRoIGZpbGw9IiNmMDk2NWYiIGQ9Im0xLjUgMmMtMC4yNSAwLTAuNSAwLjI1LTAuNSAwLjV2MTFjMCAwLjI1IDAuMjUgMC41IDAuNSAwLjVoMTNjMC4yNSAwIDAuNS0wLjI1IDAuNS0wLjV2LTExYzAtMC4yNS0wLjI1LTAuNS0wLjUtMC41em0wLjUgM2gxMnY2aC0xMnoiLz48L3N2Zz4K\"","import api from \"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../node_modules/css-loader/dist/cjs.js!../node_modules/sass-loader/dist/cjs.js!./viewer.scss\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { emit } from '@nextcloud/event-bus'\nimport { getDocumentUrlFromTemplate, getDocumentUrlForPublicFile, getDocumentUrlForFile } from './helpers/url'\nimport PostMessageService from './services/postMessage'\nimport Config from './services/config'\nimport Preload from './services/preload'\nimport Types from './helpers/types'\nimport FilesAppIntegration from './view/FilesAppIntegration'\nimport '../css/viewer.scss'\nimport { splitPath } from './helpers'\nimport NewFileMenu from './view/NewFileMenu'\n\nconst FRAME_DOCUMENT = 'FRAME_DOCUMENT'\nconst PostMessages = new PostMessageService({\n\tFRAME_DOCUMENT: () => document.getElementById('richdocumentsframe').contentWindow\n})\n\nconst isDownloadHidden = document.getElementById('hideDownload') && document.getElementById('hideDownload').value === 'true'\n\nconst isPublic = document.getElementById('isPublic') && document.getElementById('isPublic').value === '1'\n\nconst odfViewer = {\n\n\topen: false,\n\treceivedLoading: false,\n\tisProxyStarting: false,\n\tisCollaboraConfigured: (\n\t\t(OC.getCapabilities().richdocuments.config.wopi_url.indexOf('proxy.php') !== -1)\n\t\t|| (typeof OC.getCapabilities().richdocuments.collabora === 'object' && OC.getCapabilities().richdocuments.collabora.length !== 0)),\n\tsupportedMimes: OC.getCapabilities().richdocuments.mimetypes.concat(OC.getCapabilities().richdocuments.mimetypesNoDefaultOpen),\n\texcludeMimeFromDefaultOpen: OC.getCapabilities().richdocuments.mimetypesNoDefaultOpen,\n\thideDownloadMimes: ['image/jpeg', 'image/svg+xml', 'image/cgm', 'image/vnd.dxf', 'image/x-emf', 'image/x-wmf', 'image/x-wpg', 'image/x-freehand', 'image/bmp', 'image/png', 'image/gif', 'image/tiff', 'image/jpg', 'image/jpeg', 'text/plain', 'application/pdf'],\n\n\tregisterFileActions() {\n\t\tconst EDIT_ACTION_NAME = 'Edit with ' + OC.getCapabilities().richdocuments.productName\n\t\tfor (let mime of odfViewer.supportedMimes) {\n\t\t\tOCA.Files.fileActions.register(\n\t\t\t\tmime,\n\t\t\t\tEDIT_ACTION_NAME,\n\t\t\t\tOC.PERMISSION_READ,\n\t\t\t\tOC.imagePath('core', 'actions/rename'),\n\t\t\t\t(fileName, context) => {\n\t\t\t\t\tconst fileModel = context.fileList.findFile(fileName)\n\t\t\t\t\tconst shareOwnerId = fileModel?.shareOwnerId\n\t\t\t\t\treturn this.onEdit(fileName, { ...context, shareOwnerId })\n\t\t\t\t},\n\t\t\t\tt('richdocuments', 'Edit with {productName}', { productName: OC.getCapabilities().richdocuments.productName }, undefined, { escape: false })\n\t\t\t)\n\t\t\tif (odfViewer.excludeMimeFromDefaultOpen.indexOf(mime) === -1 || isDownloadHidden) {\n\t\t\t\tOCA.Files.fileActions.setDefault(mime, EDIT_ACTION_NAME)\n\t\t\t}\n\t\t}\n\t},\n\n\tonEdit: function(fileName, context) {\n\t\tif (!odfViewer.isCollaboraConfigured) {\n\t\t\tconst setupUrl = OC.generateUrl('/settings/admin/richdocuments')\n\t\t\tconst installHint = OC.isUserAdmin()\n\t\t\t\t? `<a href=\"${setupUrl}\">Collabora Online is not setup yet. <br />Click here to configure your own server or connect to a demo server.</a>`\n\t\t\t\t: t('richdocuments', 'Collabora Online is not setup yet. Please contact your administrator.')\n\n\t\t\tif (OCP.Toast) {\n\t\t\t\tOCP.Toast.error(installHint, {\n\t\t\t\t\tisHTML: true,\n\t\t\t\t\ttimeout: 0\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\tOC.Notification.showHtml(installHint)\n\t\t\t}\n\t\t\treturn\n\t\t}\n\t\tif (odfViewer.open === true) {\n\t\t\treturn\n\t\t}\n\t\todfViewer.open = true\n\t\tif (context) {\n\t\t\tif (context?.$file?.attr('data-mounttype') === 'external-session') {\n\t\t\t\tOCP.Toast.error(t('richdocuments', 'Opening the file is not supported, since the credentials for the external storage are not available without a session'), {\n\t\t\t\t\ttimeout: 0\n\t\t\t\t})\n\t\t\t\todfViewer.open = false\n\t\t\t\treturn\n\t\t\t}\n\t\t\tvar fileDir = context.dir\n\t\t\tvar fileId = context.fileId || context.$file?.attr('data-id')\n\t\t\tvar templateId = context.templateId\n\t\t}\n\t\tFilesAppIntegration.startLoading()\n\t\todfViewer.receivedLoading = false\n\n\t\tlet documentUrl = getDocumentUrlForFile(fileDir, fileId)\n\t\tif (isPublic) {\n\t\t\tdocumentUrl = getDocumentUrlForPublicFile(fileName, fileId)\n\t\t}\n\t\tif (typeof (templateId) !== 'undefined') {\n\t\t\tdocumentUrl = getDocumentUrlFromTemplate(templateId, fileName, fileDir)\n\t\t}\n\n\t\t/**\n\t\t * We need to reload the page to set a proper CSP if the file is federated\n\t\t * and the reload didn't happen for the exact same file\n\t\t */\n\t\tconst canAccessCSP = (url, callback) => {\n\t\t\tlet canEmbed = false\n\t\t\tlet frame = document.createElement('iframe')\n\t\t\tframe.style.display = 'none'\n\t\t\tframe.onload = () => {\n\t\t\t\tcanEmbed = true\n\t\t\t}\n\t\t\tdocument.body.appendChild(frame)\n\t\t\tframe.setAttribute('src', url)\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (!canEmbed) {\n\t\t\t\t\tcallback()\n\t\t\t\t}\n\t\t\t\tdocument.body.removeChild(frame)\n\t\t\t}, 1000)\n\n\t\t}\n\n\t\t// FIXME: Once Nextcloud 16 is minimum requirement we can just pass the allowed domains to initial state\n\t\t// to check then if they are set properly\n\t\tconst reloadForFederationCSP = (fileName, shareOwnerId) => {\n\t\t\tconst preloadId = Preload.open ? parseInt(Preload.open.id) : -1\n\t\t\tif (typeof shareOwnerId !== 'undefined') {\n\t\t\t\tconst lastIndex = shareOwnerId.lastIndexOf('@')\n\t\t\t\t// only redirect if remote file, not opened though reload and csp blocks the request\n\t\t\t\tif (shareOwnerId.substr(lastIndex).indexOf('/') !== -1 && fileId !== preloadId) {\n\t\t\t\t\tcanAccessCSP('https://' + shareOwnerId.substr(lastIndex) + '/ocs/v2.php/apps/richdocuments/api/v1/federation', () => {\n\t\t\t\t\t\tconsole.debug('Cannot load federated instance though CSP, navigating to ', OC.generateUrl('/apps/richdocuments/open?fileId=' + fileId))\n\t\t\t\t\t\twindow.location = OC.generateUrl('/apps/richdocuments/open?fileId=' + fileId)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false\n\t\t}\n\n\t\tif (context) {\n\t\t\treloadForFederationCSP(fileName, context?.shareOwnerId)\n\t\t}\n\n\t\t$('head').append($('<link rel=\"stylesheet\" type=\"text/css\" href=\"' + OC.filePath('richdocuments', 'css', 'mobile.css') + '\"/>'))\n\n\t\tvar $iframe = $('<iframe id=\"richdocumentsframe\" nonce=\"' + btoa(OC.requestToken) + '\" scrolling=\"no\" allowfullscreen src=\"' + documentUrl + '\" />')\n\t\todfViewer.loadingTimeout = setTimeout(odfViewer.onTimeout,\n\t\t\t(OC.getCapabilities().richdocuments.config.timeout * 1000 || 15000))\n\t\t$iframe.src = documentUrl\n\n\t\tif ((OC.appswebroots.richdocumentscode || OC.appswebroots.richdocumentscode_arm64)\n\t\t\t&& OC.getCapabilities().richdocuments.config.wopi_url.indexOf('proxy.php') >= 0) {\n\t\t\todfViewer.checkProxyStatus()\n\t\t}\n\n\t\t$('body').css('overscroll-behavior-y', 'none')\n\t\tvar viewport = document.querySelector('meta[name=viewport]')\n\t\tviewport.setAttribute('content', 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no')\n\t\tif (isPublic) {\n\t\t\t// force the preview to adjust its height\n\t\t\t$('#preview').append($iframe).css({ height: '100%' })\n\t\t\t$('body').css({ height: '100%' })\n\t\t\t$('#content').addClass('full-height')\n\t\t\t$('footer').addClass('hidden')\n\t\t\t$('#imgframe').addClass('hidden')\n\t\t\t$('.directLink').addClass('hidden')\n\t\t\t$('.directDownload').addClass('hidden')\n\t\t\t$('#controls').addClass('hidden')\n\t\t\t$('#content').addClass('loading')\n\t\t} else {\n\t\t\t$('body').css('overflow', 'hidden')\n\t\t\t$('#app-content').append($iframe)\n\t\t\t$iframe.hide()\n\t\t}\n\n\t\t$('#app-content #controls').addClass('hidden')\n\t\tsetTimeout(() => {\n\t\t\tFilesAppIntegration.init({\n\t\t\t\tfileName,\n\t\t\t\tfileId,\n\t\t\t\tfilePath: fileDir,\n\t\t\t\tfileList: context ? context.fileList : undefined,\n\t\t\t\tfileModel: context ? context.fileModel : undefined,\n\t\t\t\tsendPostMessage: (msgId, values) => {\n\t\t\t\t\tPostMessages.sendWOPIPostMessage(FRAME_DOCUMENT, msgId, values)\n\t\t\t\t}\n\t\t\t})\n\t\t\temit('richdocuments:file-open:started', {\n\t\t\t\t...FilesAppIntegration.loggingContext()\n\t\t\t})\n\t\t})\n\t},\n\n\tonReceiveLoading() {\n\t\todfViewer.receivedLoading = true\n\t\t$('#richdocumentsframe').prop('title', 'Collabora Online')\n\t\t$('#richdocumentsframe').show()\n\t\t$('html, body').scrollTop(0)\n\t\t$('#content').removeClass('loading')\n\t\tFilesAppIntegration.initAfterReady()\n\t},\n\n\tonClose: function() {\n\t\todfViewer.open = false\n\t\tclearTimeout(odfViewer.loadingTimeout)\n\t\todfViewer.receivedLoading = false\n\t\t$('link[href*=\"richdocuments/css/mobile\"]').remove()\n\t\t$('#app-content #controls').removeClass('hidden')\n\t\t$('#richdocumentsframe').remove()\n\t\t$('.searchbox').show()\n\t\t$('body').css('overflow', 'auto')\n\n\t\tif (isPublic) {\n\t\t\t$('#content').removeClass('full-height')\n\t\t\t$('footer').removeClass('hidden')\n\t\t\t$('#imgframe').removeClass('hidden')\n\t\t\t$('.directLink').removeClass('hidden')\n\t\t\t$('.directDownload').removeClass('hidden')\n\t\t}\n\n\t\tOC.Util.History.replaceState()\n\n\t\tFilesAppIntegration.close()\n\t},\n\n\tonTimeout: function() {\n\t\tif (!odfViewer.receivedLoading && !odfViewer.isProxyStarting) {\n\t\t\temit('richdocuments:file-open:failed', {\n\t\t\t\treason: 'timeout',\n\t\t\t\t...FilesAppIntegration.loggingContext()\n\t\t\t})\n\t\t\todfViewer.onClose()\n\t\t\tOC.Notification.showTemporary(t('richdocuments', 'Failed to load {productName} - please try again later', { productName: OC.getCapabilities().richdocuments.productName || 'Collabora Online' }))\n\t\t} else if (!odfViewer.receivedLoading) {\n\t\t\todfViewer.loadingTimeout = setTimeout(odfViewer.onTimeout,\n\t\t\t\t(OC.getCapabilities().richdocuments.config.timeout * 1000 || 15000))\n\t\t}\n\t},\n\n\tcheckProxyStatus: function() {\n\t\tvar wopiUrl = OC.getCapabilities().richdocuments.config.wopi_url\n\t\tvar url = wopiUrl.substr(0, wopiUrl.indexOf('proxy.php') + 'proxy.php'.length)\n\t\t$.get(url + '?status').done(function(result) {\n\t\t\tif (result && result.status) {\n\t\t\t\tif (result.status === 'OK' || result.status === 'error') {\n\t\t\t\t\todfViewer.isProxyStarting = false\n\t\t\t\t} else if (result.status === 'starting'\n\t\t\t\t\t|| result.status === 'stopped'\n\t\t\t\t\t|| result.status === 'restarting') {\n\t\t\t\t\todfViewer.isProxyStarting = true\n\n\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\todfViewer.checkProxyStatus()\n\t\t\t\t\t}, 1000)\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t}\n}\n\nconst settings = OC.getCapabilities()['richdocuments']['config'] || {}\nConfig.update('ooxml', settings['doc_format'] === 'ooxml')\n\nwindow.OCA.RichDocuments = {\n\tconfig: {\n\t\tcreate: Types.getFileTypes()\n\t},\n\topen: ({ path, fileId, fileModel, fileList = {} }) => {\n\t\tconst [dir, file] = splitPath(path)\n\t\todfViewer.onEdit(file, {\n\t\t\tfileId,\n\t\t\tdir,\n\t\t\tshareOwnerId: fileModel.get('shareOwnerId'),\n\t\t\tfileList,\n\t\t\tfileModel\n\t\t})\n\t},\n\topenWithTemplate: ({ path, fileId, templateId, fileModel, fileList = {} }) => {\n\t\tconst [dir, file] = splitPath(path)\n\t\todfViewer.onEdit(file, {\n\t\t\tfileId,\n\t\t\tdir,\n\t\t\ttemplateId,\n\t\t\tshareOwnerId: fileModel.get('shareOwnerId'),\n\t\t\tfileList,\n\t\t\tfileModel\n\t\t})\n\t},\n\tFilesAppIntegration: {\n\t\tregisterHandler: FilesAppIntegration.registerHandler.bind(FilesAppIntegration)\n\t}\n}\n\n$(document).ready(function() {\n\t// register file actions and menu\n\tif (typeof OCA !== 'undefined'\n\t\t&& typeof OCA.Files !== 'undefined'\n\t\t&& typeof OCA.Files.fileActions !== 'undefined'\n\t) {\n\t\t// check if texteditor app is enabled and loaded...\n\t\tif (typeof OCA.Files_Texteditor === 'undefined' && typeof OCA.Text === 'undefined') {\n\t\t\todfViewer.supportedMimes.push('text/plain')\n\t\t}\n\n\t\todfViewer.registerFileActions()\n\t\tOC.Plugins.register('OCA.Files.NewFileMenu', NewFileMenu)\n\t}\n\n\t// Open the template picker if there was a create parameter detected on load\n\tif (Preload.create && Preload.create.type && Preload.create.filename) {\n\t\tFilesAppIntegration.preloadCreate()\n\t}\n\n\tif (Preload.open) {\n\t\tFilesAppIntegration.preloadOpen()\n\t}\n\n\t// Open documents if a public page is opened for a supported mimetype\n\tconst isSupportedMime = isPublic && odfViewer.supportedMimes.indexOf($('#mimetype').val()) !== -1 && odfViewer.excludeMimeFromDefaultOpen.indexOf($('#mimetype').val()) === -1\n\tconst showSecureView = isPublic && isDownloadHidden && odfViewer.hideDownloadMimes.indexOf($('#mimetype').val()) !== -1\n\tif (isSupportedMime || showSecureView) {\n\t\todfViewer.onEdit(document.getElementById('filename').value)\n\t}\n\n\tPostMessages.registerPostMessageHandler(({ parsed }) => {\n\t\tconsole.debug('[viewer] Received post message', parsed)\n\t\tconst { msgId, args, deprecated } = parsed\n\t\tif (deprecated) { return }\n\n\t\tswitch (msgId) {\n\t\tcase 'loading':\n\t\t\todfViewer.onReceiveLoading()\n\t\t\tbreak\n\t\tcase 'Action_Load_Resp':\n\t\t\tif (!args?.success) {\n\t\t\t\temit('richdocuments:file-open:failed', {\n\t\t\t\t\treason: 'collabora',\n\t\t\t\t\tcollaboraResponse: parsed?.args?.errorMsg,\n\t\t\t\t\t...FilesAppIntegration.loggingContext()\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\temit('richdocuments:file-open:succeeded', {\n\t\t\t\t\t...FilesAppIntegration.loggingContext()\n\t\t\t\t})\n\t\t\t}\n\t\t\tbreak\n\t\tcase 'App_LoadingStatus':\n\t\t\tif (args.Status === 'Timeout') {\n\t\t\t\temit('richdocuments:file-open:failed', {\n\t\t\t\t\treason: 'timeout',\n\t\t\t\t\t...FilesAppIntegration.loggingContext()\n\t\t\t\t})\n\t\t\t\todfViewer.onClose()\n\t\t\t\tOC.Notification.showTemporary(t('richdocuments', 'Failed to connect to {productName}. Please try again later or contact your server administrator.',\n\t\t\t\t\t{ productName: OC.getCapabilities().richdocuments.productName }\n\t\t\t\t))\n\t\t\t}\n\t\t\tbreak\n\t\tcase 'UI_Share':\n\t\t\tFilesAppIntegration.share()\n\t\t\tbreak\n\t\tcase 'UI_CreateFile':\n\t\t\tFilesAppIntegration.createNewFile(args.DocumentType)\n\t\t\tbreak\n\t\tcase 'UI_InsertGraphic':\n\t\t\tFilesAppIntegration.insertGraphic((filename, url) => {\n\t\t\t\tPostMessages.sendWOPIPostMessage(FRAME_DOCUMENT, 'postAsset', { FileName: filename, Url: url })\n\t\t\t})\n\t\t\tbreak\n\t\tcase 'File_Rename':\n\t\t\tFilesAppIntegration.rename(args.NewName)\n\t\t\tbreak\n\t\tcase 'Action_Save_Resp':\n\t\t\tFilesAppIntegration.saveAs()\n\t\t\tbreak\n\t\tcase 'close':\n\t\t\todfViewer.onClose()\n\t\t\tbreak\n\t\tcase 'Get_Views_Resp':\n\t\tcase 'Views_List':\n\t\t\tFilesAppIntegration.setViews(args)\n\t\t\tbreak\n\t\tcase 'UI_FileVersions':\n\t\tcase 'rev-history':\n\t\t\tFilesAppIntegration.showRevHistory()\n\t\t\tbreak\n\t\tcase 'App_VersionRestore':\n\t\t\tif (args.Status === 'Pre_Restore_Ack') {\n\t\t\t\tFilesAppIntegration.restoreVersionExecute()\n\t\t\t}\n\t\t\tbreak\n\t\t}\n\n\t\t// legacy view handling\n\t\tif (msgId === 'View_Added') {\n\t\t\tFilesAppIntegration.views[args.ViewId] = args\n\t\t\tFilesAppIntegration.renderAvatars()\n\t\t} else if (msgId === 'View_Removed') {\n\t\t\tdelete FilesAppIntegration.views[args.ViewId]\n\t\t\tFilesAppIntegration.renderAvatars()\n\t\t} else if (msgId === 'FollowUser_Changed') {\n\t\t\tif (args.IsFollowEditor) {\n\t\t\t\tFilesAppIntegration.followingEditor = true\n\t\t\t} else {\n\t\t\t\tFilesAppIntegration.followingEditor = false\n\t\t\t}\n\t\t\tif (args.IsFollowUser) {\n\t\t\t\tFilesAppIntegration.following = args.FollowedViewId\n\t\t\t} else {\n\t\t\t\tFilesAppIntegration.following = null\n\t\t\t}\n\t\t\tFilesAppIntegration.renderAvatars()\n\t\t}\n\n\t})\n})\n"],"sourceRoot":""}

Youez - 2016 - github.com/yon3zu
LinuXploit