diff --git a/Makefile b/Makefile index 033bcde..1448b37 100644 --- a/Makefile +++ b/Makefile @@ -115,7 +115,7 @@ dist: source: rm -rf $(source_build_directory) mkdir -p $(source_build_directory) - gtar cvz --exclude-vcs \ + tar cvz --exclude-vcs \ --exclude="../$(app_name)/build" \ --exclude="../$(app_name)/js/node_modules" \ --exclude="../$(app_name)/node_modules" \ @@ -128,7 +128,7 @@ source: appstore: rm -rf $(appstore_build_directory) mkdir -p $(appstore_build_directory) - gtar cvz --exclude-vcs \ + tar cvz --exclude-vcs \ --exclude="../$(app_name)/build" \ --exclude="../$(app_name)/tests" \ --exclude="../$(app_name)/Makefile" \ diff --git a/appinfo/info.xml b/appinfo/info.xml index e160ff0..ba8b668 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -29,7 +29,7 @@ * **Note :** Encrypted files are not supported yet ]]> - 1.3.6 + 1.4.0 agpl Paul Lereverend Extract @@ -38,6 +38,6 @@ https://github.com/PaulLereverend/NextcloudExtract https://github.com/PaulLereverend/NextcloudExtract/issues - + diff --git a/composer.json b/composer.json index af36ae3..0568508 100644 --- a/composer.json +++ b/composer.json @@ -1,5 +1,5 @@ { - "name": "extract", + "name": "extract/extract", "description": "Allows to extract archive from the web interface", "type": "project", "license": "AGPL", @@ -8,9 +8,15 @@ "name": "Paul Lereverend" } ], - "require": { + "config": { + "optimize-autoloader": true, + "sort-packages": true, + "platform": { + "php": "8.1" + } }, + "require": {}, "require-dev": { - "phpunit/phpunit": "^5.4" + "nextcloud/ocp": "dev-stable29" } -} +} \ No newline at end of file diff --git a/composer.lock b/composer.lock index 63d3ccd..50c0fb0 100644 --- a/composer.lock +++ b/composer.lock @@ -4,951 +4,117 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "72ec7c4fb6871c4fa201f0dacf8bce9e", + "content-hash": "bb9eae6055756b90fcb1170214416bb5", "packages": [], "packages-dev": [ { - "name": "doctrine/instantiator", - "version": "1.2.0", + "name": "nextcloud/ocp", + "version": "dev-stable29", "source": { "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "a2c590166b2133a4633738648b6b064edae0814a" + "url": "https://github.com/nextcloud-deps/ocp.git", + "reference": "53059f1bbcdd624fa1783591da5575faa4284d15" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/a2c590166b2133a4633738648b6b064edae0814a", - "reference": "a2c590166b2133a4633738648b6b064edae0814a", + "url": "https://api.github.com/repos/nextcloud-deps/ocp/zipball/53059f1bbcdd624fa1783591da5575faa4284d15", + "reference": "53059f1bbcdd624fa1783591da5575faa4284d15", "shasum": "" }, "require": { - "php": "^7.1" - }, - "require-dev": { - "doctrine/coding-standard": "^6.0", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^0.13", - "phpstan/phpstan-phpunit": "^0.11", - "phpstan/phpstan-shim": "^0.11", - "phpunit/phpunit": "^7.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "http://ocramius.github.com/" - } - ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", - "keywords": [ - "constructor", - "instantiate" - ], - "time": "2019-03-17T17:37:11+00:00" - }, - { - "name": "myclabs/deep-copy", - "version": "1.8.1", - "source": { - "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "3e01bdad3e18354c3dce54466b7fbe33a9f9f7f8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3e01bdad3e18354c3dce54466b7fbe33a9f9f7f8", - "reference": "3e01bdad3e18354c3dce54466b7fbe33a9f9f7f8", - "shasum": "" - }, - "require": { - "php": "^7.1" - }, - "replace": { - "myclabs/deep-copy": "self.version" - }, - "require-dev": { - "doctrine/collections": "^1.0", - "doctrine/common": "^2.6", - "phpunit/phpunit": "^7.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - }, - "files": [ - "src/DeepCopy/deep_copy.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ], - "time": "2018-06-11T23:09:50+00:00" - }, - { - "name": "phpdocumentor/reflection-common", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", - "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", - "shasum": "" - }, - "require": { - "php": ">=5.5" - }, - "require-dev": { - "phpunit/phpunit": "^4.6" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jaap van Otterdijk", - "email": "opensource@ijaap.nl" - } - ], - "description": "Common reflection classes used by phpdocumentor to reflect the code structure", - "homepage": "http://www.phpdoc.org", - "keywords": [ - "FQSEN", - "phpDocumentor", - "phpdoc", - "reflection", - "static analysis" - ], - "time": "2017-09-11T18:02:19+00:00" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "4.3.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/94fd0001232e47129dd3504189fa1c7225010d08", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08", - "shasum": "" - }, - "require": { - "php": "^7.0", - "phpdocumentor/reflection-common": "^1.0.0", - "phpdocumentor/type-resolver": "^0.4.0", - "webmozart/assert": "^1.0" - }, - "require-dev": { - "doctrine/instantiator": "~1.0.5", - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^6.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2017-11-30T07:14:17+00:00" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "0.4.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7", - "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7", - "shasum": "" - }, - "require": { - "php": "^5.5 || ^7.0", - "phpdocumentor/reflection-common": "^1.0" - }, - "require-dev": { - "mockery/mockery": "^0.9.4", - "phpunit/phpunit": "^5.2||^4.8.24" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "time": "2017-07-14T14:27:02+00:00" - }, - { - "name": "phpspec/prophecy", - "version": "1.8.0", - "source": { - "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4ba436b55987b4bf311cb7c6ba82aa528aac0a06", - "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.0.2", - "php": "^5.3|^7.0", - "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0", - "sebastian/comparator": "^1.1|^2.0|^3.0", - "sebastian/recursion-context": "^1.0|^2.0|^3.0" - }, - "require-dev": { - "phpspec/phpspec": "^2.5|^3.2", - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.8.x-dev" - } - }, - "autoload": { - "psr-0": { - "Prophecy\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" - } - ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", - "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" - ], - "time": "2018-08-05T17:53:17+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "4.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ef7b2f56815df854e66ceaee8ebe9393ae36a40d", - "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-xmlwriter": "*", - "php": "^5.6 || ^7.0", - "phpunit/php-file-iterator": "^1.3", - "phpunit/php-text-template": "^1.2", - "phpunit/php-token-stream": "^1.4.2 || ^2.0", - "sebastian/code-unit-reverse-lookup": "^1.0", - "sebastian/environment": "^1.3.2 || ^2.0", - "sebastian/version": "^1.0 || ^2.0" - }, - "require-dev": { - "ext-xdebug": "^2.1.4", - "phpunit/phpunit": "^5.7" - }, - "suggest": { - "ext-xdebug": "^2.5.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" - } - ], - "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ], - "time": "2017-04-02T07:44:40+00:00" - }, - { - "name": "phpunit/php-file-iterator", - "version": "1.4.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/730b01bc3e867237eaac355e06a36b85dd93a8b4", - "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" - } - ], - "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ], - "time": "2017-11-27T13:52:08+00:00" - }, - { - "name": "phpunit/php-text-template", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", - "keywords": [ - "template" - ], - "time": "2015-06-21T13:50:34+00:00" - }, - { - "name": "phpunit/php-timer", - "version": "1.0.9", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", - "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", - "shasum": "" - }, - "require": { - "php": "^5.3.3 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" - } - ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ], - "time": "2017-02-26T11:10:40+00:00" - }, - { - "name": "phpunit/php-token-stream", - "version": "2.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "791198a2c6254db10131eecfe8c06670700904db" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/791198a2c6254db10131eecfe8c06670700904db", - "reference": "791198a2c6254db10131eecfe8c06670700904db", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.2.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Wrapper around PHP's tokenizer extension.", - "homepage": "https://github.com/sebastianbergmann/php-token-stream/", - "keywords": [ - "tokenizer" - ], - "time": "2017-11-27T05:48:46+00:00" - }, - { - "name": "phpunit/phpunit", - "version": "5.7.27", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c", - "reference": "b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-xml": "*", - "myclabs/deep-copy": "~1.3", - "php": "^5.6 || ^7.0", - "phpspec/prophecy": "^1.6.2", - "phpunit/php-code-coverage": "^4.0.4", - "phpunit/php-file-iterator": "~1.4", - "phpunit/php-text-template": "~1.2", - "phpunit/php-timer": "^1.0.6", - "phpunit/phpunit-mock-objects": "^3.2", - "sebastian/comparator": "^1.2.4", - "sebastian/diff": "^1.4.3", - "sebastian/environment": "^1.3.4 || ^2.0", - "sebastian/exporter": "~2.0", - "sebastian/global-state": "^1.1", - "sebastian/object-enumerator": "~2.0", - "sebastian/resource-operations": "~1.0", - "sebastian/version": "^1.0.6|^2.0.1", - "symfony/yaml": "~2.1|~3.0|~4.0" - }, - "conflict": { - "phpdocumentor/reflection-docblock": "3.0.2" - }, - "require-dev": { - "ext-pdo": "*" - }, - "suggest": { - "ext-xdebug": "*", - "phpunit/php-invoker": "~1.1" - }, - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.7.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "The PHP Unit Testing framework.", - "homepage": "https://phpunit.de/", - "keywords": [ - "phpunit", - "testing", - "xunit" - ], - "time": "2018-02-01T05:50:59+00:00" - }, - { - "name": "phpunit/phpunit-mock-objects", - "version": "3.4.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "a23b761686d50a560cc56233b9ecf49597cc9118" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/a23b761686d50a560cc56233b9ecf49597cc9118", - "reference": "a23b761686d50a560cc56233b9ecf49597cc9118", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.0.2", - "php": "^5.6 || ^7.0", - "phpunit/php-text-template": "^1.2", - "sebastian/exporter": "^1.2 || ^2.0" - }, - "conflict": { - "phpunit/phpunit": "<5.4.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.4" - }, - "suggest": { - "ext-soap": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.2.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" - } - ], - "description": "Mock Object library for PHPUnit", - "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/", - "keywords": [ - "mock", - "xunit" - ], - "abandoned": true, - "time": "2017-06-30T09:13:00+00:00" - }, - { - "name": "sebastian/code-unit-reverse-lookup", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.0" + "php": "~8.0 || ~8.1 || ~8.2 || ~8.3", + "psr/clock": "^1.0", + "psr/container": "^2.0.2", + "psr/event-dispatcher": "^1.0", + "psr/log": "^1.1.4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-stable29": "29.0.0-dev" } }, - "autoload": { - "classmap": [ - "src/" - ] - }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "AGPL-3.0-or-later" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "name": "Christoph Wurst", + "email": "christoph@winzerhof-wurst.at" } ], - "description": "Looks up which function or method a line of code belongs to", - "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "time": "2017-03-04T06:30:41+00:00" - }, - { - "name": "sebastian/comparator", - "version": "1.2.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", - "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "sebastian/diff": "~1.2", - "sebastian/exporter": "~1.2 || ~2.0" - }, - "require-dev": { - "phpunit/phpunit": "~4.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] + "description": "Composer package containing Nextcloud's public API (classes, interfaces)", + "support": { + "issues": "https://github.com/nextcloud-deps/ocp/issues", + "source": "https://github.com/nextcloud-deps/ocp/tree/stable29" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "http://www.github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ], - "time": "2017-01-29T09:50:25+00:00" + "time": "2024-08-09T00:38:21+00:00" }, { - "name": "sebastian/diff", - "version": "1.4.3", + "name": "psr/clock", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4" + "url": "https://github.com/php-fig/clock.git", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4", - "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4", + "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", "shasum": "" }, "require": { - "php": "^5.3.3 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" + "php": "^7.0 || ^8.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4-dev" - } - }, "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff" - ], - "time": "2017-05-22T07:24:03+00:00" - }, - { - "name": "sebastian/environment", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac", - "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" + "psr-4": { + "Psr\\Clock\\": "src/" } }, - "autoload": { - "classmap": [ - "src/" - ] - }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" } ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", + "description": "Common interface for reading the clock.", + "homepage": "https://github.com/php-fig/clock", "keywords": [ - "Xdebug", - "environment", - "hhvm" + "clock", + "now", + "psr", + "psr-20", + "time" ], - "time": "2016-11-26T07:53:53+00:00" + "support": { + "issues": "https://github.com/php-fig/clock/issues", + "source": "https://github.com/php-fig/clock/tree/1.0.0" + }, + "time": "2022-11-25T14:36:26+00:00" }, { - "name": "sebastian/exporter", - "version": "2.0.0", + "name": "psr/container", + "version": "2.0.2", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4" + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4", - "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", "shasum": "" }, "require": { - "php": ">=5.3.3", - "sebastian/recursion-context": "~2.0" - }, - "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "~4.4" + "php": ">=7.4.0" }, "type": "library", "extra": { @@ -957,210 +123,51 @@ } }, "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "http://www.github.com/sebastianbergmann/exporter", - "keywords": [ - "export", - "exporter" - ], - "time": "2016-11-19T08:54:04+00:00" - }, - { - "name": "sebastian/global-state", - "version": "1.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4", - "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "phpunit/phpunit": "~4.2" - }, - "suggest": { - "ext-uopz": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" + "psr-4": { + "Psr\\Container\\": "src/" } }, - "autoload": { - "classmap": [ - "src/" - ] - }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" } ], - "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", "keywords": [ - "global state" - ], - "time": "2015-10-12T03:26:01+00:00" - }, - { - "name": "sebastian/object-enumerator", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/1311872ac850040a79c3c058bea3e22d0f09cbb7", - "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "sebastian/recursion-context": "~2.0" - }, - "require-dev": { - "phpunit/phpunit": "~5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" ], - "description": "Traverses array structures and object graphs to enumerate all referenced objects", - "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "time": "2017-02-18T15:18:39+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a", - "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "phpunit/phpunit": "~4.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "time": "2016-11-19T07:33:16+00:00" + "time": "2021-11-05T16:47:00+00:00" }, { - "name": "sebastian/resource-operations", + "name": "psr/event-dispatcher", "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52" + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52", - "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", "shasum": "" }, "require": { - "php": ">=5.6.0" + "php": ">=7.2.0" }, "type": "library", "extra": { @@ -1168,101 +175,10 @@ "dev-master": "1.0.x-dev" } }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "time": "2015-07-28T20:34:47+00:00" - }, - { - "name": "sebastian/version", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", - "shasum": "" - }, - "require": { - "php": ">=5.6" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version", - "time": "2016-10-03T07:35:21+00:00" - }, - { - "name": "symfony/polyfill-ctype", - "version": "v1.11.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "82ebae02209c21113908c229e9883c419720738a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/82ebae02209c21113908c229e9883c419720738a", - "reference": "82ebae02209c21113908c229e9883c419720738a", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "suggest": { - "ext-ctype": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.11-dev" - } - }, "autoload": { "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - }, - "files": [ - "bootstrap.php" - ] + "Psr\\EventDispatcher\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1270,114 +186,48 @@ ], "authors": [ { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - }, - { - "name": "Gert de Pagter", - "email": "backendtea@gmail.com" + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" } ], - "description": "Symfony polyfill for ctype functions", - "homepage": "https://symfony.com", + "description": "Standard interfaces for event handling.", "keywords": [ - "compatibility", - "ctype", - "polyfill", - "portable" + "events", + "psr", + "psr-14" ], - "time": "2019-02-06T07:57:58+00:00" - }, - { - "name": "symfony/yaml", - "version": "v4.2.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/yaml.git", - "reference": "761fa560a937fd7686e5274ff89dcfa87a5047df" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/761fa560a937fd7686e5274ff89dcfa87a5047df", - "reference": "761fa560a937fd7686e5274ff89dcfa87a5047df", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "symfony/polyfill-ctype": "~1.8" - }, - "conflict": { - "symfony/console": "<3.4" - }, - "require-dev": { - "symfony/console": "~3.4|~4.0" - }, - "suggest": { - "symfony/console": "For validating YAML files using the lint command" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.2-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Yaml\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Yaml Component", - "homepage": "https://symfony.com", - "time": "2019-02-23T15:17:42+00:00" + "time": "2019-01-08T18:20:26+00:00" }, { - "name": "webmozart/assert", - "version": "1.4.0", + "name": "psr/log", + "version": "1.1.4", "source": { "type": "git", - "url": "https://github.com/webmozart/assert.git", - "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9" + "url": "https://github.com/php-fig/log.git", + "reference": "d49695b909c3b7628b6289db5479a1c204601f11" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9", - "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9", + "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11", + "reference": "d49695b909c3b7628b6289db5479a1c204601f11", "shasum": "" }, "require": { - "php": "^5.3.3 || ^7.0", - "symfony/polyfill-ctype": "^1.8" - }, - "require-dev": { - "phpunit/phpunit": "^4.6", - "sebastian/version": "^1.0.1" + "php": ">=5.3.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.1.x-dev" } }, "autoload": { "psr-4": { - "Webmozart\\Assert\\": "src/" + "Psr\\Log\\": "Psr/Log/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1386,24 +236,34 @@ ], "authors": [ { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" } ], - "description": "Assertions to validate method input/output with nice error messages.", + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", "keywords": [ - "assert", - "check", - "validate" + "log", + "psr", + "psr-3" ], - "time": "2018-12-25T11:19:39+00:00" + "support": { + "source": "https://github.com/php-fig/log/tree/1.1.4" + }, + "time": "2021-05-03T11:20:27+00:00" } ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": { + "nextcloud/ocp": 20 + }, "prefer-stable": false, "prefer-lowest": false, "platform": [], - "platform-dev": [] + "platform-dev": [], + "platform-overrides": { + "php": "8.1" + }, + "plugin-api-version": "2.6.0" } diff --git a/js/extract-extractAction.mjs b/js/extract-extractAction.mjs new file mode 100644 index 0000000..f42fd92 --- /dev/null +++ b/js/extract-extractAction.mjs @@ -0,0 +1,11981 @@ +/*! third party licenses: js/vendor.LICENSE.txt */ +const appName = "extract"; +const appVersion = "1.4.0"; +function getDefaultExportFromCjs$1(x2) { + return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2; +} +var browser = { exports: {} }; +var process$1 = browser.exports = {}; +var cachedSetTimeout; +var cachedClearTimeout; +function defaultSetTimout() { + throw new Error("setTimeout has not been defined"); +} +function defaultClearTimeout() { + throw new Error("clearTimeout has not been defined"); +} +(function() { + try { + if (typeof setTimeout === "function") { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e2) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === "function") { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e2) { + cachedClearTimeout = defaultClearTimeout; + } +})(); +function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + return setTimeout(fun, 0); + } + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + return cachedSetTimeout(fun, 0); + } catch (e2) { + try { + return cachedSetTimeout.call(null, fun, 0); + } catch (e22) { + return cachedSetTimeout.call(this, fun, 0); + } + } +} +function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + return clearTimeout(marker); + } + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + return cachedClearTimeout(marker); + } catch (e2) { + try { + return cachedClearTimeout.call(null, marker); + } catch (e22) { + return cachedClearTimeout.call(this, marker); + } + } +} +var queue = []; +var draining = false; +var currentQueue; +var queueIndex = -1; +function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } +} +function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + var len = queue.length; + while (len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); +} +process$1.nextTick = function(fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function() { + this.fun.apply(null, this.array); +}; +process$1.title = "browser"; +process$1.browser = true; +process$1.env = {}; +process$1.argv = []; +process$1.version = ""; +process$1.versions = {}; +function noop$1() { +} +process$1.on = noop$1; +process$1.addListener = noop$1; +process$1.once = noop$1; +process$1.off = noop$1; +process$1.removeListener = noop$1; +process$1.removeAllListeners = noop$1; +process$1.emit = noop$1; +process$1.prependListener = noop$1; +process$1.prependOnceListener = noop$1; +process$1.listeners = function(name) { + return []; +}; +process$1.binding = function(name) { + throw new Error("process.binding is not supported"); +}; +process$1.cwd = function() { + return "/"; +}; +process$1.chdir = function(dir) { + throw new Error("process.chdir is not supported"); +}; +process$1.umask = function() { + return 0; +}; +var browserExports = browser.exports; +const process$1$1 = /* @__PURE__ */ getDefaultExportFromCjs$1(browserExports); +var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {}; +function getDefaultExportFromCjs(x2) { + return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2; +} +var define_process_env_default$2 = {}; +const debug$2 = typeof process$1$1 === "object" && define_process_env_default$2 && define_process_env_default$2.NODE_DEBUG && /\bsemver\b/i.test(define_process_env_default$2.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => { +}; +var debug_1$1 = debug$2; +const SEMVER_SPEC_VERSION$1 = "2.0.0"; +const MAX_LENGTH$2 = 256; +const MAX_SAFE_INTEGER$2 = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */ +9007199254740991; +const MAX_SAFE_COMPONENT_LENGTH$1 = 16; +const MAX_SAFE_BUILD_LENGTH$1 = MAX_LENGTH$2 - 6; +const RELEASE_TYPES$1 = [ + "major", + "premajor", + "minor", + "preminor", + "patch", + "prepatch", + "prerelease" +]; +var constants$1 = { + MAX_LENGTH: MAX_LENGTH$2, + MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH$1, + MAX_SAFE_BUILD_LENGTH: MAX_SAFE_BUILD_LENGTH$1, + MAX_SAFE_INTEGER: MAX_SAFE_INTEGER$2, + RELEASE_TYPES: RELEASE_TYPES$1, + SEMVER_SPEC_VERSION: SEMVER_SPEC_VERSION$1, + FLAG_INCLUDE_PRERELEASE: 1, + FLAG_LOOSE: 2 +}; +var re$3 = { exports: {} }; +(function(module, exports) { + const { + MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH2, + MAX_SAFE_BUILD_LENGTH: MAX_SAFE_BUILD_LENGTH2, + MAX_LENGTH: MAX_LENGTH2 + } = constants$1; + const debug2 = debug_1$1; + exports = module.exports = {}; + const re2 = exports.re = []; + const safeRe = exports.safeRe = []; + const src = exports.src = []; + const t2 = exports.t = {}; + let R2 = 0; + const LETTERDASHNUMBER = "[a-zA-Z0-9-]"; + const safeRegexReplacements = [ + ["\\s", 1], + ["\\d", MAX_LENGTH2], + [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH2] + ]; + const makeSafeRegex = (value) => { + for (const [token2, max2] of safeRegexReplacements) { + value = value.split(`${token2}*`).join(`${token2}{0,${max2}}`).split(`${token2}+`).join(`${token2}{1,${max2}}`); + } + return value; + }; + const createToken = (name, value, isGlobal) => { + const safe = makeSafeRegex(value); + const index = R2++; + debug2(name, index, value); + t2[name] = index; + src[index] = value; + re2[index] = new RegExp(value, isGlobal ? "g" : void 0); + safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); + }; + createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); + createToken("NUMERICIDENTIFIERLOOSE", "\\d+"); + createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`); + createToken("MAINVERSION", `(${src[t2.NUMERICIDENTIFIER]})\\.(${src[t2.NUMERICIDENTIFIER]})\\.(${src[t2.NUMERICIDENTIFIER]})`); + createToken("MAINVERSIONLOOSE", `(${src[t2.NUMERICIDENTIFIERLOOSE]})\\.(${src[t2.NUMERICIDENTIFIERLOOSE]})\\.(${src[t2.NUMERICIDENTIFIERLOOSE]})`); + createToken("PRERELEASEIDENTIFIER", `(?:${src[t2.NUMERICIDENTIFIER]}|${src[t2.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t2.NUMERICIDENTIFIERLOOSE]}|${src[t2.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASE", `(?:-(${src[t2.PRERELEASEIDENTIFIER]}(?:\\.${src[t2.PRERELEASEIDENTIFIER]})*))`); + createToken("PRERELEASELOOSE", `(?:-?(${src[t2.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t2.PRERELEASEIDENTIFIERLOOSE]})*))`); + createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`); + createToken("BUILD", `(?:\\+(${src[t2.BUILDIDENTIFIER]}(?:\\.${src[t2.BUILDIDENTIFIER]})*))`); + createToken("FULLPLAIN", `v?${src[t2.MAINVERSION]}${src[t2.PRERELEASE]}?${src[t2.BUILD]}?`); + createToken("FULL", `^${src[t2.FULLPLAIN]}$`); + createToken("LOOSEPLAIN", `[v=\\s]*${src[t2.MAINVERSIONLOOSE]}${src[t2.PRERELEASELOOSE]}?${src[t2.BUILD]}?`); + createToken("LOOSE", `^${src[t2.LOOSEPLAIN]}$`); + createToken("GTLT", "((?:<|>)?=?)"); + createToken("XRANGEIDENTIFIERLOOSE", `${src[t2.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); + createToken("XRANGEIDENTIFIER", `${src[t2.NUMERICIDENTIFIER]}|x|X|\\*`); + createToken("XRANGEPLAIN", `[v=\\s]*(${src[t2.XRANGEIDENTIFIER]})(?:\\.(${src[t2.XRANGEIDENTIFIER]})(?:\\.(${src[t2.XRANGEIDENTIFIER]})(?:${src[t2.PRERELEASE]})?${src[t2.BUILD]}?)?)?`); + createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:${src[t2.PRERELEASELOOSE]})?${src[t2.BUILD]}?)?)?`); + createToken("XRANGE", `^${src[t2.GTLT]}\\s*${src[t2.XRANGEPLAIN]}$`); + createToken("XRANGELOOSE", `^${src[t2.GTLT]}\\s*${src[t2.XRANGEPLAINLOOSE]}$`); + createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH2}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH2}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH2}}))?`); + createToken("COERCE", `${src[t2.COERCEPLAIN]}(?:$|[^\\d])`); + createToken("COERCEFULL", src[t2.COERCEPLAIN] + `(?:${src[t2.PRERELEASE]})?(?:${src[t2.BUILD]})?(?:$|[^\\d])`); + createToken("COERCERTL", src[t2.COERCE], true); + createToken("COERCERTLFULL", src[t2.COERCEFULL], true); + createToken("LONETILDE", "(?:~>?)"); + createToken("TILDETRIM", `(\\s*)${src[t2.LONETILDE]}\\s+`, true); + exports.tildeTrimReplace = "$1~"; + createToken("TILDE", `^${src[t2.LONETILDE]}${src[t2.XRANGEPLAIN]}$`); + createToken("TILDELOOSE", `^${src[t2.LONETILDE]}${src[t2.XRANGEPLAINLOOSE]}$`); + createToken("LONECARET", "(?:\\^)"); + createToken("CARETTRIM", `(\\s*)${src[t2.LONECARET]}\\s+`, true); + exports.caretTrimReplace = "$1^"; + createToken("CARET", `^${src[t2.LONECARET]}${src[t2.XRANGEPLAIN]}$`); + createToken("CARETLOOSE", `^${src[t2.LONECARET]}${src[t2.XRANGEPLAINLOOSE]}$`); + createToken("COMPARATORLOOSE", `^${src[t2.GTLT]}\\s*(${src[t2.LOOSEPLAIN]})$|^$`); + createToken("COMPARATOR", `^${src[t2.GTLT]}\\s*(${src[t2.FULLPLAIN]})$|^$`); + createToken("COMPARATORTRIM", `(\\s*)${src[t2.GTLT]}\\s*(${src[t2.LOOSEPLAIN]}|${src[t2.XRANGEPLAIN]})`, true); + exports.comparatorTrimReplace = "$1$2$3"; + createToken("HYPHENRANGE", `^\\s*(${src[t2.XRANGEPLAIN]})\\s+-\\s+(${src[t2.XRANGEPLAIN]})\\s*$`); + createToken("HYPHENRANGELOOSE", `^\\s*(${src[t2.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t2.XRANGEPLAINLOOSE]})\\s*$`); + createToken("STAR", "(<|>)?=?\\s*\\*"); + createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"); + createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$"); +})(re$3, re$3.exports); +var reExports = re$3.exports; +const looseOption = Object.freeze({ loose: true }); +const emptyOpts = Object.freeze({}); +const parseOptions$1 = (options) => { + if (!options) { + return emptyOpts; + } + if (typeof options !== "object") { + return looseOption; + } + return options; +}; +var parseOptions_1 = parseOptions$1; +const numeric = /^[0-9]+$/; +const compareIdentifiers$1 = (a2, b2) => { + const anum = numeric.test(a2); + const bnum = numeric.test(b2); + if (anum && bnum) { + a2 = +a2; + b2 = +b2; + } + return a2 === b2 ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a2 < b2 ? -1 : 1; +}; +const rcompareIdentifiers = (a2, b2) => compareIdentifiers$1(b2, a2); +var identifiers = { + compareIdentifiers: compareIdentifiers$1, + rcompareIdentifiers +}; +const debug = debug_1$1; +const { MAX_LENGTH, MAX_SAFE_INTEGER } = constants$1; +const { safeRe: re$2, t: t$1 } = reExports; +const parseOptions = parseOptions_1; +const { compareIdentifiers } = identifiers; +let SemVer$2 = class SemVer { + constructor(version2, options) { + options = parseOptions(options); + if (version2 instanceof SemVer) { + if (version2.loose === !!options.loose && version2.includePrerelease === !!options.includePrerelease) { + return version2; + } else { + version2 = version2.version; + } + } else if (typeof version2 !== "string") { + throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version2}".`); + } + if (version2.length > MAX_LENGTH) { + throw new TypeError( + `version is longer than ${MAX_LENGTH} characters` + ); + } + debug("SemVer", version2, options); + this.options = options; + this.loose = !!options.loose; + this.includePrerelease = !!options.includePrerelease; + const m2 = version2.trim().match(options.loose ? re$2[t$1.LOOSE] : re$2[t$1.FULL]); + if (!m2) { + throw new TypeError(`Invalid Version: ${version2}`); + } + this.raw = version2; + this.major = +m2[1]; + this.minor = +m2[2]; + this.patch = +m2[3]; + if (this.major > MAX_SAFE_INTEGER || this.major < 0) { + throw new TypeError("Invalid major version"); + } + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { + throw new TypeError("Invalid minor version"); + } + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { + throw new TypeError("Invalid patch version"); + } + if (!m2[4]) { + this.prerelease = []; + } else { + this.prerelease = m2[4].split(".").map((id2) => { + if (/^[0-9]+$/.test(id2)) { + const num = +id2; + if (num >= 0 && num < MAX_SAFE_INTEGER) { + return num; + } + } + return id2; + }); + } + this.build = m2[5] ? m2[5].split(".") : []; + this.format(); + } + format() { + this.version = `${this.major}.${this.minor}.${this.patch}`; + if (this.prerelease.length) { + this.version += `-${this.prerelease.join(".")}`; + } + return this.version; + } + toString() { + return this.version; + } + compare(other) { + debug("SemVer.compare", this.version, this.options, other); + if (!(other instanceof SemVer)) { + if (typeof other === "string" && other === this.version) { + return 0; + } + other = new SemVer(other, this.options); + } + if (other.version === this.version) { + return 0; + } + return this.compareMain(other) || this.comparePre(other); + } + compareMain(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); + } + comparePre(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + if (this.prerelease.length && !other.prerelease.length) { + return -1; + } else if (!this.prerelease.length && other.prerelease.length) { + return 1; + } else if (!this.prerelease.length && !other.prerelease.length) { + return 0; + } + let i = 0; + do { + const a2 = this.prerelease[i]; + const b2 = other.prerelease[i]; + debug("prerelease compare", i, a2, b2); + if (a2 === void 0 && b2 === void 0) { + return 0; + } else if (b2 === void 0) { + return 1; + } else if (a2 === void 0) { + return -1; + } else if (a2 === b2) { + continue; + } else { + return compareIdentifiers(a2, b2); + } + } while (++i); + } + compareBuild(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + let i = 0; + do { + const a2 = this.build[i]; + const b2 = other.build[i]; + debug("build compare", i, a2, b2); + if (a2 === void 0 && b2 === void 0) { + return 0; + } else if (b2 === void 0) { + return 1; + } else if (a2 === void 0) { + return -1; + } else if (a2 === b2) { + continue; + } else { + return compareIdentifiers(a2, b2); + } + } while (++i); + } + // preminor will bump the version up to the next minor release, and immediately + // down to pre-release. premajor and prepatch work the same way. + inc(release, identifier, identifierBase) { + switch (release) { + case "premajor": + this.prerelease.length = 0; + this.patch = 0; + this.minor = 0; + this.major++; + this.inc("pre", identifier, identifierBase); + break; + case "preminor": + this.prerelease.length = 0; + this.patch = 0; + this.minor++; + this.inc("pre", identifier, identifierBase); + break; + case "prepatch": + this.prerelease.length = 0; + this.inc("patch", identifier, identifierBase); + this.inc("pre", identifier, identifierBase); + break; + case "prerelease": + if (this.prerelease.length === 0) { + this.inc("patch", identifier, identifierBase); + } + this.inc("pre", identifier, identifierBase); + break; + case "major": + if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { + this.major++; + } + this.minor = 0; + this.patch = 0; + this.prerelease = []; + break; + case "minor": + if (this.patch !== 0 || this.prerelease.length === 0) { + this.minor++; + } + this.patch = 0; + this.prerelease = []; + break; + case "patch": + if (this.prerelease.length === 0) { + this.patch++; + } + this.prerelease = []; + break; + case "pre": { + const base = Number(identifierBase) ? 1 : 0; + if (!identifier && identifierBase === false) { + throw new Error("invalid increment argument: identifier is empty"); + } + if (this.prerelease.length === 0) { + this.prerelease = [base]; + } else { + let i = this.prerelease.length; + while (--i >= 0) { + if (typeof this.prerelease[i] === "number") { + this.prerelease[i]++; + i = -2; + } + } + if (i === -1) { + if (identifier === this.prerelease.join(".") && identifierBase === false) { + throw new Error("invalid increment argument: identifier already exists"); + } + this.prerelease.push(base); + } + } + if (identifier) { + let prerelease = [identifier, base]; + if (identifierBase === false) { + prerelease = [identifier]; + } + if (compareIdentifiers(this.prerelease[0], identifier) === 0) { + if (isNaN(this.prerelease[1])) { + this.prerelease = prerelease; + } + } else { + this.prerelease = prerelease; + } + } + break; + } + default: + throw new Error(`invalid increment argument: ${release}`); + } + this.raw = this.format(); + if (this.build.length) { + this.raw += `+${this.build.join(".")}`; + } + return this; + } +}; +var semver = SemVer$2; +const SemVer$1 = semver; +const parse$1 = (version2, options, throwErrors = false) => { + if (version2 instanceof SemVer$1) { + return version2; + } + try { + return new SemVer$1(version2, options); + } catch (er) { + if (!throwErrors) { + return null; + } + throw er; + } +}; +var parse_1 = parse$1; +const parse = parse_1; +const valid = (version2, options) => { + const v2 = parse(version2, options); + return v2 ? v2.version : null; +}; +var valid_1 = valid; +const valid$1 = /* @__PURE__ */ getDefaultExportFromCjs(valid_1); +const SemVer2 = semver; +const major = (a2, loose) => new SemVer2(a2, loose).major; +var major_1 = major; +const major$1 = /* @__PURE__ */ getDefaultExportFromCjs(major_1); +class ProxyBus { + bus; + constructor(bus2) { + if (typeof bus2.getVersion !== "function" || !valid$1(bus2.getVersion())) { + console.warn("Proxying an event bus with an unknown or invalid version"); + } else if (major$1(bus2.getVersion()) !== major$1(this.getVersion())) { + console.warn( + "Proxying an event bus of version " + bus2.getVersion() + " with " + this.getVersion() + ); + } + this.bus = bus2; + } + getVersion() { + return "3.3.1"; + } + subscribe(name, handler) { + this.bus.subscribe(name, handler); + } + unsubscribe(name, handler) { + this.bus.unsubscribe(name, handler); + } + emit(name, event) { + this.bus.emit(name, event); + } +} +class SimpleBus { + handlers = /* @__PURE__ */ new Map(); + getVersion() { + return "3.3.1"; + } + subscribe(name, handler) { + this.handlers.set( + name, + (this.handlers.get(name) || []).concat( + handler + ) + ); + } + unsubscribe(name, handler) { + this.handlers.set( + name, + (this.handlers.get(name) || []).filter((h2) => h2 !== handler) + ); + } + emit(name, event) { + (this.handlers.get(name) || []).forEach((h2) => { + try { + h2(event); + } catch (e2) { + console.error("could not invoke event listener", e2); + } + }); + } +} +let bus = null; +function getBus() { + if (bus !== null) { + return bus; + } + if (typeof window === "undefined") { + return new Proxy({}, { + get: () => { + return () => console.error( + "Window not available, EventBus can not be established!" + ); + } + }); + } + if (window.OC?._eventBus && typeof window._nc_event_bus === "undefined") { + console.warn( + "found old event bus instance at OC._eventBus. Update your version!" + ); + window._nc_event_bus = window.OC._eventBus; + } + if (typeof window?._nc_event_bus !== "undefined") { + bus = new ProxyBus(window._nc_event_bus); + } else { + bus = window._nc_event_bus = new SimpleBus(); + } + return bus; +} +function subscribe(name, handler) { + getBus().subscribe(name, handler); +} +function emit(name, event) { + getBus().emit(name, event); +} +var dist$1 = {}; +var storagebuilder = {}; +var scopedstorage = {}; +Object.defineProperty(scopedstorage, "__esModule", { + value: true +}); +scopedstorage.default = void 0; +function _defineProperty$2(obj, key, value) { + key = _toPropertyKey$1(key); + if (key in obj) { + Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); + } else { + obj[key] = value; + } + return obj; +} +function _toPropertyKey$1(t2) { + var i = _toPrimitive$1(t2, "string"); + return "symbol" == typeof i ? i : i + ""; +} +function _toPrimitive$1(t2, r2) { + if ("object" != typeof t2 || !t2) return t2; + var e2 = t2[Symbol.toPrimitive]; + if (void 0 !== e2) { + var i = e2.call(t2, r2 || "default"); + if ("object" != typeof i) return i; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return ("string" === r2 ? String : Number)(t2); +} +class ScopedStorage { + constructor(scope, wrapped, persistent) { + _defineProperty$2(this, "scope", void 0); + _defineProperty$2(this, "wrapped", void 0); + this.scope = "".concat(persistent ? ScopedStorage.GLOBAL_SCOPE_PERSISTENT : ScopedStorage.GLOBAL_SCOPE_VOLATILE, "_").concat(btoa(scope), "_"); + this.wrapped = wrapped; + } + scopeKey(key) { + return "".concat(this.scope).concat(key); + } + setItem(key, value) { + this.wrapped.setItem(this.scopeKey(key), value); + } + getItem(key) { + return this.wrapped.getItem(this.scopeKey(key)); + } + removeItem(key) { + this.wrapped.removeItem(this.scopeKey(key)); + } + clear() { + Object.keys(this.wrapped).filter((key) => key.startsWith(this.scope)).map(this.wrapped.removeItem.bind(this.wrapped)); + } +} +scopedstorage.default = ScopedStorage; +_defineProperty$2(ScopedStorage, "GLOBAL_SCOPE_VOLATILE", "nextcloud_vol"); +_defineProperty$2(ScopedStorage, "GLOBAL_SCOPE_PERSISTENT", "nextcloud_per"); +Object.defineProperty(storagebuilder, "__esModule", { + value: true +}); +storagebuilder.default = void 0; +var _scopedstorage$1 = _interopRequireDefault$1(scopedstorage); +function _interopRequireDefault$1(obj) { + return obj && obj.__esModule ? obj : { default: obj }; +} +function _defineProperty$1(obj, key, value) { + key = _toPropertyKey(key); + if (key in obj) { + Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); + } else { + obj[key] = value; + } + return obj; +} +function _toPropertyKey(t2) { + var i = _toPrimitive(t2, "string"); + return "symbol" == typeof i ? i : i + ""; +} +function _toPrimitive(t2, r2) { + if ("object" != typeof t2 || !t2) return t2; + var e2 = t2[Symbol.toPrimitive]; + if (void 0 !== e2) { + var i = e2.call(t2, r2 || "default"); + if ("object" != typeof i) return i; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return ("string" === r2 ? String : Number)(t2); +} +class StorageBuilder { + constructor(appId) { + _defineProperty$1(this, "appId", void 0); + _defineProperty$1(this, "persisted", false); + _defineProperty$1(this, "clearedOnLogout", false); + this.appId = appId; + } + persist() { + let persist = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true; + this.persisted = persist; + return this; + } + clearOnLogout() { + let clear = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true; + this.clearedOnLogout = clear; + return this; + } + build() { + return new _scopedstorage$1.default(this.appId, this.persisted ? window.localStorage : window.sessionStorage, !this.clearedOnLogout); + } +} +storagebuilder.default = StorageBuilder; +Object.defineProperty(dist$1, "__esModule", { + value: true +}); +dist$1.clearAll = clearAll; +dist$1.clearNonPersistent = clearNonPersistent; +var getBuilder_1 = dist$1.getBuilder = getBuilder; +var _storagebuilder = _interopRequireDefault(storagebuilder); +var _scopedstorage = _interopRequireDefault(scopedstorage); +function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; +} +function getBuilder(appId) { + return new _storagebuilder.default(appId); +} +function clearStorage(storage, pred) { + Object.keys(storage).filter((k2) => pred ? pred(k2) : true).map(storage.removeItem.bind(storage)); +} +function clearAll() { + const storages = [window.sessionStorage, window.localStorage]; + storages.map((s2) => clearStorage(s2)); +} +function clearNonPersistent() { + const storages = [window.sessionStorage, window.localStorage]; + storages.map((s2) => clearStorage(s2, (k2) => !k2.startsWith(_scopedstorage.default.GLOBAL_SCOPE_PERSISTENT))); +} +let token; +const observers = []; +function getRequestToken() { + if (token === void 0) { + token = document.head.dataset.requesttoken ?? null; + } + return token; +} +function onRequestTokenUpdate(observer) { + observers.push(observer); +} +subscribe("csrf-token-update", (e2) => { + token = e2.token; + observers.forEach((observer) => { + try { + observer(token); + } catch (e22) { + console.error("Error updating CSRF token observer", e22); + } + }); +}); +getBuilder_1("public").persist().build(); +let currentUser; +const getAttribute = (el, attribute) => { + if (el) { + return el.getAttribute(attribute); + } + return null; +}; +function getCurrentUser() { + if (currentUser !== void 0) { + return currentUser; + } + const head = document?.getElementsByTagName("head")[0]; + if (!head) { + return null; + } + const uid2 = getAttribute(head, "data-user"); + if (uid2 === null) { + currentUser = null; + return currentUser; + } + currentUser = { + uid: uid2, + displayName: getAttribute(head, "data-user-displayname"), + isAdmin: !!window._oc_isadmin + }; + return currentUser; +} +var LogLevel = /* @__PURE__ */ ((LogLevel2) => { + LogLevel2[LogLevel2["Debug"] = 0] = "Debug"; + LogLevel2[LogLevel2["Info"] = 1] = "Info"; + LogLevel2[LogLevel2["Warn"] = 2] = "Warn"; + LogLevel2[LogLevel2["Error"] = 3] = "Error"; + LogLevel2[LogLevel2["Fatal"] = 4] = "Fatal"; + return LogLevel2; +})(LogLevel || {}); +var __defProp$1 = Object.defineProperty; +var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __publicField$1 = (obj, key, value) => { + __defNormalProp$1(obj, key + "", value); + return value; +}; +class ConsoleLogger { + constructor(context) { + __publicField$1(this, "context"); + this.context = context || {}; + } + formatMessage(message, level, context) { + let msg = "[" + LogLevel[level].toUpperCase() + "] "; + if (context && context.app) { + msg += context.app + ": "; + } + if (typeof message === "string") + return msg + message; + msg += "Unexpected ".concat(message.name); + if (message.message) + msg += ' "'.concat(message.message, '"'); + if (level === LogLevel.Debug && message.stack) + msg += "\n\nStack trace:\n".concat(message.stack); + return msg; + } + log(level, message, context) { + var _a2, _b; + if (typeof ((_a2 = this.context) == null ? void 0 : _a2.level) === "number" && level < ((_b = this.context) == null ? void 0 : _b.level)) { + return; + } + if (typeof message === "object" && (context == null ? void 0 : context.error) === void 0) { + context.error = message; + } + switch (level) { + case LogLevel.Debug: + console.debug(this.formatMessage(message, LogLevel.Debug, context), context); + break; + case LogLevel.Info: + console.info(this.formatMessage(message, LogLevel.Info, context), context); + break; + case LogLevel.Warn: + console.warn(this.formatMessage(message, LogLevel.Warn, context), context); + break; + case LogLevel.Error: + console.error(this.formatMessage(message, LogLevel.Error, context), context); + break; + case LogLevel.Fatal: + default: + console.error(this.formatMessage(message, LogLevel.Fatal, context), context); + break; + } + } + debug(message, context) { + this.log(LogLevel.Debug, message, Object.assign({}, this.context, context)); + } + info(message, context) { + this.log(LogLevel.Info, message, Object.assign({}, this.context, context)); + } + warn(message, context) { + this.log(LogLevel.Warn, message, Object.assign({}, this.context, context)); + } + error(message, context) { + this.log(LogLevel.Error, message, Object.assign({}, this.context, context)); + } + fatal(message, context) { + this.log(LogLevel.Fatal, message, Object.assign({}, this.context, context)); + } +} +function buildConsoleLogger(context) { + return new ConsoleLogger(context); +} +var __defProp = Object.defineProperty; +var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __publicField = (obj, key, value) => { + __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); + return value; +}; +class LoggerBuilder { + constructor(factory) { + __publicField(this, "context"); + __publicField(this, "factory"); + this.context = {}; + this.factory = factory; + } + /** + * Set the app name within the logging context + * + * @param appId App name + */ + setApp(appId) { + this.context.app = appId; + return this; + } + /** + * Set the logging level within the logging context + * + * @param level Logging level + */ + setLogLevel(level) { + this.context.level = level; + return this; + } + /* eslint-disable jsdoc/no-undefined-types */ + /** + * Set the user id within the logging context + * @param uid User ID + * @see {@link detectUser} + */ + /* eslint-enable jsdoc/no-undefined-types */ + setUid(uid2) { + this.context.uid = uid2; + return this; + } + /** + * Detect the currently logged in user and set the user id within the logging context + */ + detectUser() { + const user = getCurrentUser(); + if (user !== null) { + this.context.uid = user.uid; + } + return this; + } + /** + * Detect and use logging level configured in nextcloud config + */ + detectLogLevel() { + const self2 = this; + const onLoaded = () => { + var _a2, _b; + if (document.readyState === "complete" || document.readyState === "interactive") { + self2.context.level = (_b = (_a2 = window._oc_config) == null ? void 0 : _a2.loglevel) != null ? _b : LogLevel.Warn; + if (window._oc_debug) { + self2.context.level = LogLevel.Debug; + } + document.removeEventListener("readystatechange", onLoaded); + } else { + document.addEventListener("readystatechange", onLoaded); + } + }; + onLoaded(); + return this; + } + /** Build a logger using the logging context and factory */ + build() { + if (this.context.level === void 0) { + this.detectLogLevel(); + } + return this.factory(this.context); + } +} +function getLoggerBuilder() { + return new LoggerBuilder(buildConsoleLogger); +} +function assertPath(path) { + if (typeof path !== "string") { + throw new TypeError("Path must be a string. Received " + JSON.stringify(path)); + } +} +function normalizeStringPosix(path, allowAboveRoot) { + var res = ""; + var lastSegmentLength = 0; + var lastSlash = -1; + var dots = 0; + var code2; + for (var i = 0; i <= path.length; ++i) { + if (i < path.length) + code2 = path.charCodeAt(i); + else if (code2 === 47) + break; + else + code2 = 47; + if (code2 === 47) { + if (lastSlash === i - 1 || dots === 1) ; + else if (lastSlash !== i - 1 && dots === 2) { + if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 || res.charCodeAt(res.length - 2) !== 46) { + if (res.length > 2) { + var lastSlashIndex = res.lastIndexOf("/"); + if (lastSlashIndex !== res.length - 1) { + if (lastSlashIndex === -1) { + res = ""; + lastSegmentLength = 0; + } else { + res = res.slice(0, lastSlashIndex); + lastSegmentLength = res.length - 1 - res.lastIndexOf("/"); + } + lastSlash = i; + dots = 0; + continue; + } + } else if (res.length === 2 || res.length === 1) { + res = ""; + lastSegmentLength = 0; + lastSlash = i; + dots = 0; + continue; + } + } + if (allowAboveRoot) { + if (res.length > 0) + res += "/.."; + else + res = ".."; + lastSegmentLength = 2; + } + } else { + if (res.length > 0) + res += "/" + path.slice(lastSlash + 1, i); + else + res = path.slice(lastSlash + 1, i); + lastSegmentLength = i - lastSlash - 1; + } + lastSlash = i; + dots = 0; + } else if (code2 === 46 && dots !== -1) { + ++dots; + } else { + dots = -1; + } + } + return res; +} +function _format(sep, pathObject) { + var dir = pathObject.dir || pathObject.root; + var base = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); + if (!dir) { + return base; + } + if (dir === pathObject.root) { + return dir + base; + } + return dir + sep + base; +} +var posix = { + // path.resolve([from ...], to) + resolve: function resolve() { + var resolvedPath = ""; + var resolvedAbsolute = false; + var cwd; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path; + if (i >= 0) + path = arguments[i]; + else { + if (cwd === void 0) + cwd = process$1$1.cwd(); + path = cwd; + } + assertPath(path); + if (path.length === 0) { + continue; + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charCodeAt(0) === 47; + } + resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute); + if (resolvedAbsolute) { + if (resolvedPath.length > 0) + return "/" + resolvedPath; + else + return "/"; + } else if (resolvedPath.length > 0) { + return resolvedPath; + } else { + return "."; + } + }, + normalize: function normalize(path) { + assertPath(path); + if (path.length === 0) return "."; + var isAbsolute2 = path.charCodeAt(0) === 47; + var trailingSeparator = path.charCodeAt(path.length - 1) === 47; + path = normalizeStringPosix(path, !isAbsolute2); + if (path.length === 0 && !isAbsolute2) path = "."; + if (path.length > 0 && trailingSeparator) path += "/"; + if (isAbsolute2) return "/" + path; + return path; + }, + isAbsolute: function isAbsolute(path) { + assertPath(path); + return path.length > 0 && path.charCodeAt(0) === 47; + }, + join: function join() { + if (arguments.length === 0) + return "."; + var joined; + for (var i = 0; i < arguments.length; ++i) { + var arg = arguments[i]; + assertPath(arg); + if (arg.length > 0) { + if (joined === void 0) + joined = arg; + else + joined += "/" + arg; + } + } + if (joined === void 0) + return "."; + return posix.normalize(joined); + }, + relative: function relative(from, to) { + assertPath(from); + assertPath(to); + if (from === to) return ""; + from = posix.resolve(from); + to = posix.resolve(to); + if (from === to) return ""; + var fromStart = 1; + for (; fromStart < from.length; ++fromStart) { + if (from.charCodeAt(fromStart) !== 47) + break; + } + var fromEnd = from.length; + var fromLen = fromEnd - fromStart; + var toStart = 1; + for (; toStart < to.length; ++toStart) { + if (to.charCodeAt(toStart) !== 47) + break; + } + var toEnd = to.length; + var toLen = toEnd - toStart; + var length = fromLen < toLen ? fromLen : toLen; + var lastCommonSep = -1; + var i = 0; + for (; i <= length; ++i) { + if (i === length) { + if (toLen > length) { + if (to.charCodeAt(toStart + i) === 47) { + return to.slice(toStart + i + 1); + } else if (i === 0) { + return to.slice(toStart + i); + } + } else if (fromLen > length) { + if (from.charCodeAt(fromStart + i) === 47) { + lastCommonSep = i; + } else if (i === 0) { + lastCommonSep = 0; + } + } + break; + } + var fromCode = from.charCodeAt(fromStart + i); + var toCode = to.charCodeAt(toStart + i); + if (fromCode !== toCode) + break; + else if (fromCode === 47) + lastCommonSep = i; + } + var out = ""; + for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) { + if (i === fromEnd || from.charCodeAt(i) === 47) { + if (out.length === 0) + out += ".."; + else + out += "/.."; + } + } + if (out.length > 0) + return out + to.slice(toStart + lastCommonSep); + else { + toStart += lastCommonSep; + if (to.charCodeAt(toStart) === 47) + ++toStart; + return to.slice(toStart); + } + }, + _makeLong: function _makeLong(path) { + return path; + }, + dirname: function dirname(path) { + assertPath(path); + if (path.length === 0) return "."; + var code2 = path.charCodeAt(0); + var hasRoot = code2 === 47; + var end = -1; + var matchedSlash = true; + for (var i = path.length - 1; i >= 1; --i) { + code2 = path.charCodeAt(i); + if (code2 === 47) { + if (!matchedSlash) { + end = i; + break; + } + } else { + matchedSlash = false; + } + } + if (end === -1) return hasRoot ? "/" : "."; + if (hasRoot && end === 1) return "//"; + return path.slice(0, end); + }, + basename: function basename(path, ext) { + if (ext !== void 0 && typeof ext !== "string") throw new TypeError('"ext" argument must be a string'); + assertPath(path); + var start = 0; + var end = -1; + var matchedSlash = true; + var i; + if (ext !== void 0 && ext.length > 0 && ext.length <= path.length) { + if (ext.length === path.length && ext === path) return ""; + var extIdx = ext.length - 1; + var firstNonSlashEnd = -1; + for (i = path.length - 1; i >= 0; --i) { + var code2 = path.charCodeAt(i); + if (code2 === 47) { + if (!matchedSlash) { + start = i + 1; + break; + } + } else { + if (firstNonSlashEnd === -1) { + matchedSlash = false; + firstNonSlashEnd = i + 1; + } + if (extIdx >= 0) { + if (code2 === ext.charCodeAt(extIdx)) { + if (--extIdx === -1) { + end = i; + } + } else { + extIdx = -1; + end = firstNonSlashEnd; + } + } + } + } + if (start === end) end = firstNonSlashEnd; + else if (end === -1) end = path.length; + return path.slice(start, end); + } else { + for (i = path.length - 1; i >= 0; --i) { + if (path.charCodeAt(i) === 47) { + if (!matchedSlash) { + start = i + 1; + break; + } + } else if (end === -1) { + matchedSlash = false; + end = i + 1; + } + } + if (end === -1) return ""; + return path.slice(start, end); + } + }, + extname: function extname(path) { + assertPath(path); + var startDot = -1; + var startPart = 0; + var end = -1; + var matchedSlash = true; + var preDotState = 0; + for (var i = path.length - 1; i >= 0; --i) { + var code2 = path.charCodeAt(i); + if (code2 === 47) { + if (!matchedSlash) { + startPart = i + 1; + break; + } + continue; + } + if (end === -1) { + matchedSlash = false; + end = i + 1; + } + if (code2 === 46) { + if (startDot === -1) + startDot = i; + else if (preDotState !== 1) + preDotState = 1; + } else if (startDot !== -1) { + preDotState = -1; + } + } + if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot + preDotState === 0 || // The (right-most) trimmed path component is exactly '..' + preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { + return ""; + } + return path.slice(startDot, end); + }, + format: function format(pathObject) { + if (pathObject === null || typeof pathObject !== "object") { + throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof pathObject); + } + return _format("/", pathObject); + }, + parse: function parse2(path) { + assertPath(path); + var ret = { root: "", dir: "", base: "", ext: "", name: "" }; + if (path.length === 0) return ret; + var code2 = path.charCodeAt(0); + var isAbsolute2 = code2 === 47; + var start; + if (isAbsolute2) { + ret.root = "/"; + start = 1; + } else { + start = 0; + } + var startDot = -1; + var startPart = 0; + var end = -1; + var matchedSlash = true; + var i = path.length - 1; + var preDotState = 0; + for (; i >= start; --i) { + code2 = path.charCodeAt(i); + if (code2 === 47) { + if (!matchedSlash) { + startPart = i + 1; + break; + } + continue; + } + if (end === -1) { + matchedSlash = false; + end = i + 1; + } + if (code2 === 46) { + if (startDot === -1) startDot = i; + else if (preDotState !== 1) preDotState = 1; + } else if (startDot !== -1) { + preDotState = -1; + } + } + if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot + preDotState === 0 || // The (right-most) trimmed path component is exactly '..' + preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { + if (end !== -1) { + if (startPart === 0 && isAbsolute2) ret.base = ret.name = path.slice(1, end); + else ret.base = ret.name = path.slice(startPart, end); + } + } else { + if (startPart === 0 && isAbsolute2) { + ret.name = path.slice(1, startDot); + ret.base = path.slice(1, end); + } else { + ret.name = path.slice(startPart, startDot); + ret.base = path.slice(startPart, end); + } + ret.ext = path.slice(startDot, end); + } + if (startPart > 0) ret.dir = path.slice(0, startPart - 1); + else if (isAbsolute2) ret.dir = "/"; + return ret; + }, + sep: "/", + delimiter: ":", + win32: null, + posix: null +}; +posix.posix = posix; +var pathBrowserify = posix; +function encodePath(path) { + if (!path) { + return path; + } + return path.split("/").map(encodeURIComponent).join("/"); +} +const g$1 = (n2) => "/remote.php/" + n2, U$1 = (n2, e2) => { + var o2; + return ((o2 = void 0) != null ? o2 : w$1()) + g$1(n2); +}, u$1 = (n2, e2, o2) => { + const c2 = Object.assign({ + escape: true + }, {}), r2 = function(i, s2) { + return s2 = s2 || {}, i.replace( + /{([^{}]*)}/g, + function(l2, t2) { + const a2 = s2[t2]; + return c2.escape ? encodeURIComponent(typeof a2 == "string" || typeof a2 == "number" ? a2.toString() : l2) : typeof a2 == "string" || typeof a2 == "number" ? a2.toString() : l2; + } + ); + }; + return n2.charAt(0) !== "/" && (n2 = "/" + n2), r2(n2, {}); +}, _$1 = (n2, e2, o2) => { + var c2, r2, i; + const s2 = Object.assign({ + noRewrite: false + }, {}), l2 = (c2 = void 0) != null ? c2 : f$1(); + return ((i = (r2 = window == null ? void 0 : window.OC) == null ? void 0 : r2.config) == null ? void 0 : i.modRewriteWorking) === true && !s2.noRewrite ? l2 + u$1(n2) : l2 + "/index.php" + u$1(n2); +}, w$1 = () => window.location.protocol + "//" + window.location.host + f$1(); +function f$1() { + let n2 = window._oc_webroot; + if (typeof n2 > "u") { + n2 = location.pathname; + const e2 = n2.indexOf("/index.php/"); + if (e2 !== -1) + n2 = n2.slice(0, e2); + else { + const o2 = n2.indexOf("/", 1); + n2 = n2.slice(0, o2 > 0 ? o2 : void 0); + } + } + return n2; +} +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); + } else { + obj[key] = value; + } + return obj; +} +function _classPrivateFieldInitSpec(obj, privateMap, value) { + _checkPrivateRedeclaration(obj, privateMap); + privateMap.set(obj, value); +} +function _checkPrivateRedeclaration(obj, privateCollection) { + if (privateCollection.has(obj)) { + throw new TypeError("Cannot initialize the same private elements twice on an object"); + } +} +function _classPrivateFieldGet(receiver, privateMap) { + var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); + return _classApplyDescriptorGet(receiver, descriptor); +} +function _classApplyDescriptorGet(receiver, descriptor) { + if (descriptor.get) { + return descriptor.get.call(receiver); + } + return descriptor.value; +} +function _classPrivateFieldSet(receiver, privateMap, value) { + var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); + _classApplyDescriptorSet(receiver, descriptor, value); + return value; +} +function _classExtractFieldDescriptor(receiver, privateMap, action2) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to " + action2 + " private field on non-instance"); + } + return privateMap.get(receiver); +} +function _classApplyDescriptorSet(receiver, descriptor, value) { + if (descriptor.set) { + descriptor.set.call(receiver, value); + } else { + if (!descriptor.writable) { + throw new TypeError("attempted to set read only private field"); + } + descriptor.value = value; + } +} +var toStringTag = typeof Symbol !== "undefined" ? Symbol.toStringTag : "@@toStringTag"; +var _internals = /* @__PURE__ */ new WeakMap(); +var _promise = /* @__PURE__ */ new WeakMap(); +class CancelablePromiseInternal { + constructor(_ref) { + var { + executor = () => { + }, + internals = defaultInternals(), + promise = new Promise((resolve3, reject2) => executor(resolve3, reject2, (onCancel) => { + internals.onCancelList.push(onCancel); + })) + } = _ref; + _classPrivateFieldInitSpec(this, _internals, { + writable: true, + value: void 0 + }); + _classPrivateFieldInitSpec(this, _promise, { + writable: true, + value: void 0 + }); + _defineProperty(this, toStringTag, "CancelablePromise"); + this.cancel = this.cancel.bind(this); + _classPrivateFieldSet(this, _internals, internals); + _classPrivateFieldSet(this, _promise, promise || new Promise((resolve3, reject2) => executor(resolve3, reject2, (onCancel) => { + internals.onCancelList.push(onCancel); + }))); + } + then(onfulfilled, onrejected) { + return makeCancelable(_classPrivateFieldGet(this, _promise).then(createCallback(onfulfilled, _classPrivateFieldGet(this, _internals)), createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals)); + } + catch(onrejected) { + return makeCancelable(_classPrivateFieldGet(this, _promise).catch(createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals)); + } + finally(onfinally, runWhenCanceled) { + if (runWhenCanceled) { + _classPrivateFieldGet(this, _internals).onCancelList.push(onfinally); + } + return makeCancelable(_classPrivateFieldGet(this, _promise).finally(createCallback(() => { + if (onfinally) { + if (runWhenCanceled) { + _classPrivateFieldGet(this, _internals).onCancelList = _classPrivateFieldGet(this, _internals).onCancelList.filter((callback) => callback !== onfinally); + } + return onfinally(); + } + }, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals)); + } + cancel() { + _classPrivateFieldGet(this, _internals).isCanceled = true; + var callbacks = _classPrivateFieldGet(this, _internals).onCancelList; + _classPrivateFieldGet(this, _internals).onCancelList = []; + for (var callback of callbacks) { + if (typeof callback === "function") { + try { + callback(); + } catch (err) { + console.error(err); + } + } + } + } + isCanceled() { + return _classPrivateFieldGet(this, _internals).isCanceled === true; + } +} +class CancelablePromise extends CancelablePromiseInternal { + constructor(executor) { + super({ + executor + }); + } +} +_defineProperty(CancelablePromise, "all", function all(iterable) { + return makeAllCancelable(iterable, Promise.all(iterable)); +}); +_defineProperty(CancelablePromise, "allSettled", function allSettled(iterable) { + return makeAllCancelable(iterable, Promise.allSettled(iterable)); +}); +_defineProperty(CancelablePromise, "any", function any(iterable) { + return makeAllCancelable(iterable, Promise.any(iterable)); +}); +_defineProperty(CancelablePromise, "race", function race(iterable) { + return makeAllCancelable(iterable, Promise.race(iterable)); +}); +_defineProperty(CancelablePromise, "resolve", function resolve2(value) { + return cancelable(Promise.resolve(value)); +}); +_defineProperty(CancelablePromise, "reject", function reject(reason) { + return cancelable(Promise.reject(reason)); +}); +_defineProperty(CancelablePromise, "isCancelable", isCancelablePromise); +function cancelable(promise) { + return makeCancelable(promise, defaultInternals()); +} +function isCancelablePromise(promise) { + return promise instanceof CancelablePromise || promise instanceof CancelablePromiseInternal; +} +function createCallback(onResult, internals) { + if (onResult) { + return (arg) => { + if (!internals.isCanceled) { + var result = onResult(arg); + if (isCancelablePromise(result)) { + internals.onCancelList.push(result.cancel); + } + return result; + } + return arg; + }; + } +} +function makeCancelable(promise, internals) { + return new CancelablePromiseInternal({ + internals, + promise + }); +} +function makeAllCancelable(iterable, promise) { + var internals = defaultInternals(); + internals.onCancelList.push(() => { + for (var resolvable of iterable) { + if (isCancelablePromise(resolvable)) { + resolvable.cancel(); + } + } + }); + return new CancelablePromiseInternal({ + internals, + promise + }); +} +function defaultInternals() { + return { + isCanceled: false, + onCancelList: [] + }; +} +const global$e = globalThis || void 0 || self; +var define_process_env_default$1 = {}; +/*! For license information please see index.js.LICENSE.txt */ +var t = { 2: (t2) => { + function e2(t3, e3, o2) { + t3 instanceof RegExp && (t3 = n2(t3, o2)), e3 instanceof RegExp && (e3 = n2(e3, o2)); + var i2 = r2(t3, e3, o2); + return i2 && { start: i2[0], end: i2[1], pre: o2.slice(0, i2[0]), body: o2.slice(i2[0] + t3.length, i2[1]), post: o2.slice(i2[1] + e3.length) }; + } + function n2(t3, e3) { + var n3 = e3.match(t3); + return n3 ? n3[0] : null; + } + function r2(t3, e3, n3) { + var r3, o2, i2, s2, a2, u2 = n3.indexOf(t3), c2 = n3.indexOf(e3, u2 + 1), l2 = u2; + if (u2 >= 0 && c2 > 0) { + for (r3 = [], i2 = n3.length; l2 >= 0 && !a2; ) l2 == u2 ? (r3.push(l2), u2 = n3.indexOf(t3, l2 + 1)) : 1 == r3.length ? a2 = [r3.pop(), c2] : ((o2 = r3.pop()) < i2 && (i2 = o2, s2 = c2), c2 = n3.indexOf(e3, l2 + 1)), l2 = u2 < c2 && u2 >= 0 ? u2 : c2; + r3.length && (a2 = [i2, s2]); + } + return a2; + } + t2.exports = e2, e2.range = r2; +}, 101: function(t2, e2, n2) { + var r2; + t2 = n2.nmd(t2), function(o2) { + var i2 = (t2 && t2.exports, "object" == typeof global$e && global$e); + i2.global !== i2 && i2.window; + var s2 = function(t3) { + this.message = t3; + }; + (s2.prototype = new Error()).name = "InvalidCharacterError"; + var a2 = function(t3) { + throw new s2(t3); + }, u2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", c2 = /[\t\n\f\r ]/g, l2 = { encode: function(t3) { + t3 = String(t3), /[^\0-\xFF]/.test(t3) && a2("The string to be encoded contains characters outside of the Latin1 range."); + for (var e3, n3, r3, o3, i3 = t3.length % 3, s3 = "", c3 = -1, l3 = t3.length - i3; ++c3 < l3; ) e3 = t3.charCodeAt(c3) << 16, n3 = t3.charCodeAt(++c3) << 8, r3 = t3.charCodeAt(++c3), s3 += u2.charAt((o3 = e3 + n3 + r3) >> 18 & 63) + u2.charAt(o3 >> 12 & 63) + u2.charAt(o3 >> 6 & 63) + u2.charAt(63 & o3); + return 2 == i3 ? (e3 = t3.charCodeAt(c3) << 8, n3 = t3.charCodeAt(++c3), s3 += u2.charAt((o3 = e3 + n3) >> 10) + u2.charAt(o3 >> 4 & 63) + u2.charAt(o3 << 2 & 63) + "=") : 1 == i3 && (o3 = t3.charCodeAt(c3), s3 += u2.charAt(o3 >> 2) + u2.charAt(o3 << 4 & 63) + "=="), s3; + }, decode: function(t3) { + var e3 = (t3 = String(t3).replace(c2, "")).length; + e3 % 4 == 0 && (e3 = (t3 = t3.replace(/==?$/, "")).length), (e3 % 4 == 1 || /[^+a-zA-Z0-9/]/.test(t3)) && a2("Invalid character: the string to be decoded is not correctly encoded."); + for (var n3, r3, o3 = 0, i3 = "", s3 = -1; ++s3 < e3; ) r3 = u2.indexOf(t3.charAt(s3)), n3 = o3 % 4 ? 64 * n3 + r3 : r3, o3++ % 4 && (i3 += String.fromCharCode(255 & n3 >> (-2 * o3 & 6))); + return i3; + }, version: "1.0.0" }; + void 0 === (r2 = function() { + return l2; + }.call(e2, n2, e2, t2)) || (t2.exports = r2); + }(); +}, 172: (t2, e2) => { + e2.d = function(t3) { + if (!t3) return 0; + for (var e3 = (t3 = t3.toString()).length, n2 = t3.length; n2--; ) { + var r2 = t3.charCodeAt(n2); + 56320 <= r2 && r2 <= 57343 && n2--, 127 < r2 && r2 <= 2047 ? e3++ : 2047 < r2 && r2 <= 65535 && (e3 += 2); + } + return e3; + }; +}, 526: (t2) => { + var e2 = { utf8: { stringToBytes: function(t3) { + return e2.bin.stringToBytes(unescape(encodeURIComponent(t3))); + }, bytesToString: function(t3) { + return decodeURIComponent(escape(e2.bin.bytesToString(t3))); + } }, bin: { stringToBytes: function(t3) { + for (var e3 = [], n2 = 0; n2 < t3.length; n2++) e3.push(255 & t3.charCodeAt(n2)); + return e3; + }, bytesToString: function(t3) { + for (var e3 = [], n2 = 0; n2 < t3.length; n2++) e3.push(String.fromCharCode(t3[n2])); + return e3.join(""); + } } }; + t2.exports = e2; +}, 298: (t2) => { + var e2, n2; + e2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", n2 = { rotl: function(t3, e3) { + return t3 << e3 | t3 >>> 32 - e3; + }, rotr: function(t3, e3) { + return t3 << 32 - e3 | t3 >>> e3; + }, endian: function(t3) { + if (t3.constructor == Number) return 16711935 & n2.rotl(t3, 8) | 4278255360 & n2.rotl(t3, 24); + for (var e3 = 0; e3 < t3.length; e3++) t3[e3] = n2.endian(t3[e3]); + return t3; + }, randomBytes: function(t3) { + for (var e3 = []; t3 > 0; t3--) e3.push(Math.floor(256 * Math.random())); + return e3; + }, bytesToWords: function(t3) { + for (var e3 = [], n3 = 0, r2 = 0; n3 < t3.length; n3++, r2 += 8) e3[r2 >>> 5] |= t3[n3] << 24 - r2 % 32; + return e3; + }, wordsToBytes: function(t3) { + for (var e3 = [], n3 = 0; n3 < 32 * t3.length; n3 += 8) e3.push(t3[n3 >>> 5] >>> 24 - n3 % 32 & 255); + return e3; + }, bytesToHex: function(t3) { + for (var e3 = [], n3 = 0; n3 < t3.length; n3++) e3.push((t3[n3] >>> 4).toString(16)), e3.push((15 & t3[n3]).toString(16)); + return e3.join(""); + }, hexToBytes: function(t3) { + for (var e3 = [], n3 = 0; n3 < t3.length; n3 += 2) e3.push(parseInt(t3.substr(n3, 2), 16)); + return e3; + }, bytesToBase64: function(t3) { + for (var n3 = [], r2 = 0; r2 < t3.length; r2 += 3) for (var o2 = t3[r2] << 16 | t3[r2 + 1] << 8 | t3[r2 + 2], i2 = 0; i2 < 4; i2++) 8 * r2 + 6 * i2 <= 8 * t3.length ? n3.push(e2.charAt(o2 >>> 6 * (3 - i2) & 63)) : n3.push("="); + return n3.join(""); + }, base64ToBytes: function(t3) { + t3 = t3.replace(/[^A-Z0-9+\/]/gi, ""); + for (var n3 = [], r2 = 0, o2 = 0; r2 < t3.length; o2 = ++r2 % 4) 0 != o2 && n3.push((e2.indexOf(t3.charAt(r2 - 1)) & Math.pow(2, -2 * o2 + 8) - 1) << 2 * o2 | e2.indexOf(t3.charAt(r2)) >>> 6 - 2 * o2); + return n3; + } }, t2.exports = n2; +}, 635: (t2, e2, n2) => { + const r2 = n2(31), o2 = n2(338), i2 = n2(221); + t2.exports = { XMLParser: o2, XMLValidator: r2, XMLBuilder: i2 }; +}, 705: (t2, e2) => { + const n2 = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD", r2 = "[" + n2 + "][" + n2 + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*", o2 = new RegExp("^" + r2 + "$"); + e2.isExist = function(t3) { + return void 0 !== t3; + }, e2.isEmptyObject = function(t3) { + return 0 === Object.keys(t3).length; + }, e2.merge = function(t3, e3, n3) { + if (e3) { + const r3 = Object.keys(e3), o3 = r3.length; + for (let i2 = 0; i2 < o3; i2++) t3[r3[i2]] = "strict" === n3 ? [e3[r3[i2]]] : e3[r3[i2]]; + } + }, e2.getValue = function(t3) { + return e2.isExist(t3) ? t3 : ""; + }, e2.isName = function(t3) { + return !(null == o2.exec(t3)); + }, e2.getAllMatches = function(t3, e3) { + const n3 = []; + let r3 = e3.exec(t3); + for (; r3; ) { + const o3 = []; + o3.startIndex = e3.lastIndex - r3[0].length; + const i2 = r3.length; + for (let t4 = 0; t4 < i2; t4++) o3.push(r3[t4]); + n3.push(o3), r3 = e3.exec(t3); + } + return n3; + }, e2.nameRegexp = r2; +}, 31: (t2, e2, n2) => { + const r2 = n2(705), o2 = { allowBooleanAttributes: false, unpairedTags: [] }; + function i2(t3) { + return " " === t3 || " " === t3 || "\n" === t3 || "\r" === t3; + } + function s2(t3, e3) { + const n3 = e3; + for (; e3 < t3.length; e3++) if ("?" != t3[e3] && " " != t3[e3]) ; + else { + const r3 = t3.substr(n3, e3 - n3); + if (e3 > 5 && "xml" === r3) return d2("InvalidXml", "XML declaration allowed only at the start of the document.", m2(t3, e3)); + if ("?" == t3[e3] && ">" == t3[e3 + 1]) { + e3++; + break; + } + } + return e3; + } + function a2(t3, e3) { + if (t3.length > e3 + 5 && "-" === t3[e3 + 1] && "-" === t3[e3 + 2]) { + for (e3 += 3; e3 < t3.length; e3++) if ("-" === t3[e3] && "-" === t3[e3 + 1] && ">" === t3[e3 + 2]) { + e3 += 2; + break; + } + } else if (t3.length > e3 + 8 && "D" === t3[e3 + 1] && "O" === t3[e3 + 2] && "C" === t3[e3 + 3] && "T" === t3[e3 + 4] && "Y" === t3[e3 + 5] && "P" === t3[e3 + 6] && "E" === t3[e3 + 7]) { + let n3 = 1; + for (e3 += 8; e3 < t3.length; e3++) if ("<" === t3[e3]) n3++; + else if (">" === t3[e3] && (n3--, 0 === n3)) break; + } else if (t3.length > e3 + 9 && "[" === t3[e3 + 1] && "C" === t3[e3 + 2] && "D" === t3[e3 + 3] && "A" === t3[e3 + 4] && "T" === t3[e3 + 5] && "A" === t3[e3 + 6] && "[" === t3[e3 + 7]) { + for (e3 += 8; e3 < t3.length; e3++) if ("]" === t3[e3] && "]" === t3[e3 + 1] && ">" === t3[e3 + 2]) { + e3 += 2; + break; + } + } + return e3; + } + e2.validate = function(t3, e3) { + e3 = Object.assign({}, o2, e3); + const n3 = []; + let u3 = false, c3 = false; + "\uFEFF" === t3[0] && (t3 = t3.substr(1)); + for (let o3 = 0; o3 < t3.length; o3++) if ("<" === t3[o3] && "?" === t3[o3 + 1]) { + if (o3 += 2, o3 = s2(t3, o3), o3.err) return o3; + } else { + if ("<" !== t3[o3]) { + if (i2(t3[o3])) continue; + return d2("InvalidChar", "char '" + t3[o3] + "' is not expected.", m2(t3, o3)); + } + { + let g3 = o3; + if (o3++, "!" === t3[o3]) { + o3 = a2(t3, o3); + continue; + } + { + let y3 = false; + "/" === t3[o3] && (y3 = true, o3++); + let v2 = ""; + for (; o3 < t3.length && ">" !== t3[o3] && " " !== t3[o3] && " " !== t3[o3] && "\n" !== t3[o3] && "\r" !== t3[o3]; o3++) v2 += t3[o3]; + if (v2 = v2.trim(), "/" === v2[v2.length - 1] && (v2 = v2.substring(0, v2.length - 1), o3--), h3 = v2, !r2.isName(h3)) { + let e4; + return e4 = 0 === v2.trim().length ? "Invalid space after '<'." : "Tag '" + v2 + "' is an invalid name.", d2("InvalidTag", e4, m2(t3, o3)); + } + const b2 = l2(t3, o3); + if (false === b2) return d2("InvalidAttr", "Attributes for '" + v2 + "' have open quote.", m2(t3, o3)); + let w2 = b2.value; + if (o3 = b2.index, "/" === w2[w2.length - 1]) { + const n4 = o3 - w2.length; + w2 = w2.substring(0, w2.length - 1); + const r3 = p2(w2, e3); + if (true !== r3) return d2(r3.err.code, r3.err.msg, m2(t3, n4 + r3.err.line)); + u3 = true; + } else if (y3) { + if (!b2.tagClosed) return d2("InvalidTag", "Closing tag '" + v2 + "' doesn't have proper closing.", m2(t3, o3)); + if (w2.trim().length > 0) return d2("InvalidTag", "Closing tag '" + v2 + "' can't have attributes or invalid starting.", m2(t3, g3)); + if (0 === n3.length) return d2("InvalidTag", "Closing tag '" + v2 + "' has not been opened.", m2(t3, g3)); + { + const e4 = n3.pop(); + if (v2 !== e4.tagName) { + let n4 = m2(t3, e4.tagStartPos); + return d2("InvalidTag", "Expected closing tag '" + e4.tagName + "' (opened in line " + n4.line + ", col " + n4.col + ") instead of closing tag '" + v2 + "'.", m2(t3, g3)); + } + 0 == n3.length && (c3 = true); + } + } else { + const r3 = p2(w2, e3); + if (true !== r3) return d2(r3.err.code, r3.err.msg, m2(t3, o3 - w2.length + r3.err.line)); + if (true === c3) return d2("InvalidXml", "Multiple possible root nodes found.", m2(t3, o3)); + -1 !== e3.unpairedTags.indexOf(v2) || n3.push({ tagName: v2, tagStartPos: g3 }), u3 = true; + } + for (o3++; o3 < t3.length; o3++) if ("<" === t3[o3]) { + if ("!" === t3[o3 + 1]) { + o3++, o3 = a2(t3, o3); + continue; + } + if ("?" !== t3[o3 + 1]) break; + if (o3 = s2(t3, ++o3), o3.err) return o3; + } else if ("&" === t3[o3]) { + const e4 = f2(t3, o3); + if (-1 == e4) return d2("InvalidChar", "char '&' is not expected.", m2(t3, o3)); + o3 = e4; + } else if (true === c3 && !i2(t3[o3])) return d2("InvalidXml", "Extra text at the end", m2(t3, o3)); + "<" === t3[o3] && o3--; + } + } + } + var h3; + return u3 ? 1 == n3.length ? d2("InvalidTag", "Unclosed tag '" + n3[0].tagName + "'.", m2(t3, n3[0].tagStartPos)) : !(n3.length > 0) || d2("InvalidXml", "Invalid '" + JSON.stringify(n3.map((t4) => t4.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 }) : d2("InvalidXml", "Start tag expected.", 1); + }; + const u2 = '"', c2 = "'"; + function l2(t3, e3) { + let n3 = "", r3 = "", o3 = false; + for (; e3 < t3.length; e3++) { + if (t3[e3] === u2 || t3[e3] === c2) "" === r3 ? r3 = t3[e3] : r3 !== t3[e3] || (r3 = ""); + else if (">" === t3[e3] && "" === r3) { + o3 = true; + break; + } + n3 += t3[e3]; + } + return "" === r3 && { value: n3, index: e3, tagClosed: o3 }; + } + const h2 = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g"); + function p2(t3, e3) { + const n3 = r2.getAllMatches(t3, h2), o3 = {}; + for (let t4 = 0; t4 < n3.length; t4++) { + if (0 === n3[t4][1].length) return d2("InvalidAttr", "Attribute '" + n3[t4][2] + "' has no space in starting.", y2(n3[t4])); + if (void 0 !== n3[t4][3] && void 0 === n3[t4][4]) return d2("InvalidAttr", "Attribute '" + n3[t4][2] + "' is without value.", y2(n3[t4])); + if (void 0 === n3[t4][3] && !e3.allowBooleanAttributes) return d2("InvalidAttr", "boolean attribute '" + n3[t4][2] + "' is not allowed.", y2(n3[t4])); + const r3 = n3[t4][2]; + if (!g2(r3)) return d2("InvalidAttr", "Attribute '" + r3 + "' is an invalid name.", y2(n3[t4])); + if (o3.hasOwnProperty(r3)) return d2("InvalidAttr", "Attribute '" + r3 + "' is repeated.", y2(n3[t4])); + o3[r3] = 1; + } + return true; + } + function f2(t3, e3) { + if (";" === t3[++e3]) return -1; + if ("#" === t3[e3]) return function(t4, e4) { + let n4 = /\d/; + for ("x" === t4[e4] && (e4++, n4 = /[\da-fA-F]/); e4 < t4.length; e4++) { + if (";" === t4[e4]) return e4; + if (!t4[e4].match(n4)) break; + } + return -1; + }(t3, ++e3); + let n3 = 0; + for (; e3 < t3.length; e3++, n3++) if (!(t3[e3].match(/\w/) && n3 < 20)) { + if (";" === t3[e3]) break; + return -1; + } + return e3; + } + function d2(t3, e3, n3) { + return { err: { code: t3, msg: e3, line: n3.line || n3, col: n3.col } }; + } + function g2(t3) { + return r2.isName(t3); + } + function m2(t3, e3) { + const n3 = t3.substring(0, e3).split(/\r?\n/); + return { line: n3.length, col: n3[n3.length - 1].length + 1 }; + } + function y2(t3) { + return t3.startIndex + t3[1].length; + } +}, 221: (t2, e2, n2) => { + const r2 = n2(87), o2 = { attributeNamePrefix: "@_", attributesGroupName: false, textNodeName: "#text", ignoreAttributes: true, cdataPropName: false, format: false, indentBy: " ", suppressEmptyNode: false, suppressUnpairedNode: true, suppressBooleanAttributes: true, tagValueProcessor: function(t3, e3) { + return e3; + }, attributeValueProcessor: function(t3, e3) { + return e3; + }, preserveOrder: false, commentPropName: false, unpairedTags: [], entities: [{ regex: new RegExp("&", "g"), val: "&" }, { regex: new RegExp(">", "g"), val: ">" }, { regex: new RegExp("<", "g"), val: "<" }, { regex: new RegExp("'", "g"), val: "'" }, { regex: new RegExp('"', "g"), val: """ }], processEntities: true, stopNodes: [], oneListGroup: false }; + function i2(t3) { + this.options = Object.assign({}, o2, t3), this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() { + return false; + } : (this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = u2), this.processTextOrObjNode = s2, this.options.format ? (this.indentate = a2, this.tagEndChar = ">\n", this.newLine = "\n") : (this.indentate = function() { + return ""; + }, this.tagEndChar = ">", this.newLine = ""); + } + function s2(t3, e3, n3) { + const r3 = this.j2x(t3, n3 + 1); + return void 0 !== t3[this.options.textNodeName] && 1 === Object.keys(t3).length ? this.buildTextValNode(t3[this.options.textNodeName], e3, r3.attrStr, n3) : this.buildObjectNode(r3.val, e3, r3.attrStr, n3); + } + function a2(t3) { + return this.options.indentBy.repeat(t3); + } + function u2(t3) { + return !(!t3.startsWith(this.options.attributeNamePrefix) || t3 === this.options.textNodeName) && t3.substr(this.attrPrefixLen); + } + i2.prototype.build = function(t3) { + return this.options.preserveOrder ? r2(t3, this.options) : (Array.isArray(t3) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (t3 = { [this.options.arrayNodeName]: t3 }), this.j2x(t3, 0).val); + }, i2.prototype.j2x = function(t3, e3) { + let n3 = "", r3 = ""; + for (let o3 in t3) if (Object.prototype.hasOwnProperty.call(t3, o3)) if (void 0 === t3[o3]) this.isAttribute(o3) && (r3 += ""); + else if (null === t3[o3]) this.isAttribute(o3) ? r3 += "" : "?" === o3[0] ? r3 += this.indentate(e3) + "<" + o3 + "?" + this.tagEndChar : r3 += this.indentate(e3) + "<" + o3 + "/" + this.tagEndChar; + else if (t3[o3] instanceof Date) r3 += this.buildTextValNode(t3[o3], o3, "", e3); + else if ("object" != typeof t3[o3]) { + const i3 = this.isAttribute(o3); + if (i3) n3 += this.buildAttrPairStr(i3, "" + t3[o3]); + else if (o3 === this.options.textNodeName) { + let e4 = this.options.tagValueProcessor(o3, "" + t3[o3]); + r3 += this.replaceEntitiesValue(e4); + } else r3 += this.buildTextValNode(t3[o3], o3, "", e3); + } else if (Array.isArray(t3[o3])) { + const n4 = t3[o3].length; + let i3 = "", s3 = ""; + for (let a3 = 0; a3 < n4; a3++) { + const n5 = t3[o3][a3]; + if (void 0 === n5) ; + else if (null === n5) "?" === o3[0] ? r3 += this.indentate(e3) + "<" + o3 + "?" + this.tagEndChar : r3 += this.indentate(e3) + "<" + o3 + "/" + this.tagEndChar; + else if ("object" == typeof n5) if (this.options.oneListGroup) { + const t4 = this.j2x(n5, e3 + 1); + i3 += t4.val, this.options.attributesGroupName && n5.hasOwnProperty(this.options.attributesGroupName) && (s3 += t4.attrStr); + } else i3 += this.processTextOrObjNode(n5, o3, e3); + else if (this.options.oneListGroup) { + let t4 = this.options.tagValueProcessor(o3, n5); + t4 = this.replaceEntitiesValue(t4), i3 += t4; + } else i3 += this.buildTextValNode(n5, o3, "", e3); + } + this.options.oneListGroup && (i3 = this.buildObjectNode(i3, o3, s3, e3)), r3 += i3; + } else if (this.options.attributesGroupName && o3 === this.options.attributesGroupName) { + const e4 = Object.keys(t3[o3]), r4 = e4.length; + for (let i3 = 0; i3 < r4; i3++) n3 += this.buildAttrPairStr(e4[i3], "" + t3[o3][e4[i3]]); + } else r3 += this.processTextOrObjNode(t3[o3], o3, e3); + return { attrStr: n3, val: r3 }; + }, i2.prototype.buildAttrPairStr = function(t3, e3) { + return e3 = this.options.attributeValueProcessor(t3, "" + e3), e3 = this.replaceEntitiesValue(e3), this.options.suppressBooleanAttributes && "true" === e3 ? " " + t3 : " " + t3 + '="' + e3 + '"'; + }, i2.prototype.buildObjectNode = function(t3, e3, n3, r3) { + if ("" === t3) return "?" === e3[0] ? this.indentate(r3) + "<" + e3 + n3 + "?" + this.tagEndChar : this.indentate(r3) + "<" + e3 + n3 + this.closeTag(e3) + this.tagEndChar; + { + let o3 = "` + this.newLine : this.indentate(r3) + "<" + e3 + n3 + i3 + this.tagEndChar + t3 + this.indentate(r3) + o3 : this.indentate(r3) + "<" + e3 + n3 + i3 + ">" + t3 + o3; + } + }, i2.prototype.closeTag = function(t3) { + let e3 = ""; + return -1 !== this.options.unpairedTags.indexOf(t3) ? this.options.suppressUnpairedNode || (e3 = "/") : e3 = this.options.suppressEmptyNode ? "/" : `>` + this.newLine; + if (false !== this.options.commentPropName && e3 === this.options.commentPropName) return this.indentate(r3) + `` + this.newLine; + if ("?" === e3[0]) return this.indentate(r3) + "<" + e3 + n3 + "?" + this.tagEndChar; + { + let o3 = this.options.tagValueProcessor(e3, t3); + return o3 = this.replaceEntitiesValue(o3), "" === o3 ? this.indentate(r3) + "<" + e3 + n3 + this.closeTag(e3) + this.tagEndChar : this.indentate(r3) + "<" + e3 + n3 + ">" + o3 + " 0 && this.options.processEntities) for (let e3 = 0; e3 < this.options.entities.length; e3++) { + const n3 = this.options.entities[e3]; + t3 = t3.replace(n3.regex, n3.val); + } + return t3; + }, t2.exports = i2; +}, 87: (t2) => { + function e2(t3, s2, a2, u2) { + let c2 = "", l2 = false; + for (let h2 = 0; h2 < t3.length; h2++) { + const p2 = t3[h2], f2 = n2(p2); + if (void 0 === f2) continue; + let d2 = ""; + if (d2 = 0 === a2.length ? f2 : `${a2}.${f2}`, f2 === s2.textNodeName) { + let t4 = p2[f2]; + o2(d2, s2) || (t4 = s2.tagValueProcessor(f2, t4), t4 = i2(t4, s2)), l2 && (c2 += u2), c2 += t4, l2 = false; + continue; + } + if (f2 === s2.cdataPropName) { + l2 && (c2 += u2), c2 += ``, l2 = false; + continue; + } + if (f2 === s2.commentPropName) { + c2 += u2 + ``, l2 = true; + continue; + } + if ("?" === f2[0]) { + const t4 = r2(p2[":@"], s2), e3 = "?xml" === f2 ? "" : u2; + let n3 = p2[f2][0][s2.textNodeName]; + n3 = 0 !== n3.length ? " " + n3 : "", c2 += e3 + `<${f2}${n3}${t4}?>`, l2 = true; + continue; + } + let g2 = u2; + "" !== g2 && (g2 += s2.indentBy); + const m2 = u2 + `<${f2}${r2(p2[":@"], s2)}`, y2 = e2(p2[f2], s2, d2, g2); + -1 !== s2.unpairedTags.indexOf(f2) ? s2.suppressUnpairedNode ? c2 += m2 + ">" : c2 += m2 + "/>" : y2 && 0 !== y2.length || !s2.suppressEmptyNode ? y2 && y2.endsWith(">") ? c2 += m2 + `>${y2}${u2}` : (c2 += m2 + ">", y2 && "" !== u2 && (y2.includes("/>") || y2.includes("`) : c2 += m2 + "/>", l2 = true; + } + return c2; + } + function n2(t3) { + const e3 = Object.keys(t3); + for (let n3 = 0; n3 < e3.length; n3++) { + const r3 = e3[n3]; + if (t3.hasOwnProperty(r3) && ":@" !== r3) return r3; + } + } + function r2(t3, e3) { + let n3 = ""; + if (t3 && !e3.ignoreAttributes) for (let r3 in t3) { + if (!t3.hasOwnProperty(r3)) continue; + let o3 = e3.attributeValueProcessor(r3, t3[r3]); + o3 = i2(o3, e3), true === o3 && e3.suppressBooleanAttributes ? n3 += ` ${r3.substr(e3.attributeNamePrefix.length)}` : n3 += ` ${r3.substr(e3.attributeNamePrefix.length)}="${o3}"`; + } + return n3; + } + function o2(t3, e3) { + let n3 = (t3 = t3.substr(0, t3.length - e3.textNodeName.length - 1)).substr(t3.lastIndexOf(".") + 1); + for (let r3 in e3.stopNodes) if (e3.stopNodes[r3] === t3 || e3.stopNodes[r3] === "*." + n3) return true; + return false; + } + function i2(t3, e3) { + if (t3 && t3.length > 0 && e3.processEntities) for (let n3 = 0; n3 < e3.entities.length; n3++) { + const r3 = e3.entities[n3]; + t3 = t3.replace(r3.regex, r3.val); + } + return t3; + } + t2.exports = function(t3, n3) { + let r3 = ""; + return n3.format && n3.indentBy.length > 0 && (r3 = "\n"), e2(t3, n3, "", r3); + }; +}, 193: (t2, e2, n2) => { + const r2 = n2(705); + function o2(t3, e3) { + let n3 = ""; + for (; e3 < t3.length && "'" !== t3[e3] && '"' !== t3[e3]; e3++) n3 += t3[e3]; + if (n3 = n3.trim(), -1 !== n3.indexOf(" ")) throw new Error("External entites are not supported"); + const r3 = t3[e3++]; + let o3 = ""; + for (; e3 < t3.length && t3[e3] !== r3; e3++) o3 += t3[e3]; + return [n3, o3, e3]; + } + function i2(t3, e3) { + return "!" === t3[e3 + 1] && "-" === t3[e3 + 2] && "-" === t3[e3 + 3]; + } + function s2(t3, e3) { + return "!" === t3[e3 + 1] && "E" === t3[e3 + 2] && "N" === t3[e3 + 3] && "T" === t3[e3 + 4] && "I" === t3[e3 + 5] && "T" === t3[e3 + 6] && "Y" === t3[e3 + 7]; + } + function a2(t3, e3) { + return "!" === t3[e3 + 1] && "E" === t3[e3 + 2] && "L" === t3[e3 + 3] && "E" === t3[e3 + 4] && "M" === t3[e3 + 5] && "E" === t3[e3 + 6] && "N" === t3[e3 + 7] && "T" === t3[e3 + 8]; + } + function u2(t3, e3) { + return "!" === t3[e3 + 1] && "A" === t3[e3 + 2] && "T" === t3[e3 + 3] && "T" === t3[e3 + 4] && "L" === t3[e3 + 5] && "I" === t3[e3 + 6] && "S" === t3[e3 + 7] && "T" === t3[e3 + 8]; + } + function c2(t3, e3) { + return "!" === t3[e3 + 1] && "N" === t3[e3 + 2] && "O" === t3[e3 + 3] && "T" === t3[e3 + 4] && "A" === t3[e3 + 5] && "T" === t3[e3 + 6] && "I" === t3[e3 + 7] && "O" === t3[e3 + 8] && "N" === t3[e3 + 9]; + } + function l2(t3) { + if (r2.isName(t3)) return t3; + throw new Error(`Invalid entity name ${t3}`); + } + t2.exports = function(t3, e3) { + const n3 = {}; + if ("O" !== t3[e3 + 3] || "C" !== t3[e3 + 4] || "T" !== t3[e3 + 5] || "Y" !== t3[e3 + 6] || "P" !== t3[e3 + 7] || "E" !== t3[e3 + 8]) throw new Error("Invalid Tag instead of DOCTYPE"); + { + e3 += 9; + let r3 = 1, h2 = false, p2 = false, f2 = ""; + for (; e3 < t3.length; e3++) if ("<" !== t3[e3] || p2) if (">" === t3[e3]) { + if (p2 ? "-" === t3[e3 - 1] && "-" === t3[e3 - 2] && (p2 = false, r3--) : r3--, 0 === r3) break; + } else "[" === t3[e3] ? h2 = true : f2 += t3[e3]; + else { + if (h2 && s2(t3, e3)) e3 += 7, [entityName, val, e3] = o2(t3, e3 + 1), -1 === val.indexOf("&") && (n3[l2(entityName)] = { regx: RegExp(`&${entityName};`, "g"), val }); + else if (h2 && a2(t3, e3)) e3 += 8; + else if (h2 && u2(t3, e3)) e3 += 8; + else if (h2 && c2(t3, e3)) e3 += 9; + else { + if (!i2) throw new Error("Invalid DOCTYPE"); + p2 = true; + } + r3++, f2 = ""; + } + if (0 !== r3) throw new Error("Unclosed DOCTYPE"); + } + return { entities: n3, i: e3 }; + }; +}, 63: (t2, e2) => { + const n2 = { preserveOrder: false, attributeNamePrefix: "@_", attributesGroupName: false, textNodeName: "#text", ignoreAttributes: true, removeNSPrefix: false, allowBooleanAttributes: false, parseTagValue: true, parseAttributeValue: false, trimValues: true, cdataPropName: false, numberParseOptions: { hex: true, leadingZeros: true, eNotation: true }, tagValueProcessor: function(t3, e3) { + return e3; + }, attributeValueProcessor: function(t3, e3) { + return e3; + }, stopNodes: [], alwaysCreateTextNode: false, isArray: () => false, commentPropName: false, unpairedTags: [], processEntities: true, htmlEntities: false, ignoreDeclaration: false, ignorePiTags: false, transformTagName: false, transformAttributeName: false, updateTag: function(t3, e3, n3) { + return t3; + } }; + e2.buildOptions = function(t3) { + return Object.assign({}, n2, t3); + }, e2.defaultOptions = n2; +}, 299: (t2, e2, n2) => { + const r2 = n2(705), o2 = n2(365), i2 = n2(193), s2 = n2(494); + function a2(t3) { + const e3 = Object.keys(t3); + for (let n3 = 0; n3 < e3.length; n3++) { + const r3 = e3[n3]; + this.lastEntities[r3] = { regex: new RegExp("&" + r3 + ";", "g"), val: t3[r3] }; + } + } + function u2(t3, e3, n3, r3, o3, i3, s3) { + if (void 0 !== t3 && (this.options.trimValues && !r3 && (t3 = t3.trim()), t3.length > 0)) { + s3 || (t3 = this.replaceEntitiesValue(t3)); + const r4 = this.options.tagValueProcessor(e3, t3, n3, o3, i3); + return null == r4 ? t3 : typeof r4 != typeof t3 || r4 !== t3 ? r4 : this.options.trimValues || t3.trim() === t3 ? w2(t3, this.options.parseTagValue, this.options.numberParseOptions) : t3; + } + } + function c2(t3) { + if (this.options.removeNSPrefix) { + const e3 = t3.split(":"), n3 = "/" === t3.charAt(0) ? "/" : ""; + if ("xmlns" === e3[0]) return ""; + 2 === e3.length && (t3 = n3 + e3[1]); + } + return t3; + } + const l2 = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm"); + function h2(t3, e3, n3) { + if (!this.options.ignoreAttributes && "string" == typeof t3) { + const n4 = r2.getAllMatches(t3, l2), o3 = n4.length, i3 = {}; + for (let t4 = 0; t4 < o3; t4++) { + const r3 = this.resolveNameSpace(n4[t4][1]); + let o4 = n4[t4][4], s3 = this.options.attributeNamePrefix + r3; + if (r3.length) if (this.options.transformAttributeName && (s3 = this.options.transformAttributeName(s3)), "__proto__" === s3 && (s3 = "#__proto__"), void 0 !== o4) { + this.options.trimValues && (o4 = o4.trim()), o4 = this.replaceEntitiesValue(o4); + const t5 = this.options.attributeValueProcessor(r3, o4, e3); + i3[s3] = null == t5 ? o4 : typeof t5 != typeof o4 || t5 !== o4 ? t5 : w2(o4, this.options.parseAttributeValue, this.options.numberParseOptions); + } else this.options.allowBooleanAttributes && (i3[s3] = true); + } + if (!Object.keys(i3).length) return; + if (this.options.attributesGroupName) { + const t4 = {}; + return t4[this.options.attributesGroupName] = i3, t4; + } + return i3; + } + } + const p2 = function(t3) { + t3 = t3.replace(/\r\n?/g, "\n"); + const e3 = new o2("!xml"); + let n3 = e3, r3 = "", s3 = ""; + for (let a3 = 0; a3 < t3.length; a3++) if ("<" === t3[a3]) if ("/" === t3[a3 + 1]) { + const e4 = y2(t3, ">", a3, "Closing Tag is not closed."); + let o3 = t3.substring(a3 + 2, e4).trim(); + if (this.options.removeNSPrefix) { + const t4 = o3.indexOf(":"); + -1 !== t4 && (o3 = o3.substr(t4 + 1)); + } + this.options.transformTagName && (o3 = this.options.transformTagName(o3)), n3 && (r3 = this.saveTextToParentTag(r3, n3, s3)); + const i3 = s3.substring(s3.lastIndexOf(".") + 1); + if (o3 && -1 !== this.options.unpairedTags.indexOf(o3)) throw new Error(`Unpaired tag can not be used as closing tag: `); + let u3 = 0; + i3 && -1 !== this.options.unpairedTags.indexOf(i3) ? (u3 = s3.lastIndexOf(".", s3.lastIndexOf(".") - 1), this.tagsNodeStack.pop()) : u3 = s3.lastIndexOf("."), s3 = s3.substring(0, u3), n3 = this.tagsNodeStack.pop(), r3 = "", a3 = e4; + } else if ("?" === t3[a3 + 1]) { + let e4 = v2(t3, a3, false, "?>"); + if (!e4) throw new Error("Pi Tag is not closed."); + if (r3 = this.saveTextToParentTag(r3, n3, s3), this.options.ignoreDeclaration && "?xml" === e4.tagName || this.options.ignorePiTags) ; + else { + const t4 = new o2(e4.tagName); + t4.add(this.options.textNodeName, ""), e4.tagName !== e4.tagExp && e4.attrExpPresent && (t4[":@"] = this.buildAttributesMap(e4.tagExp, s3, e4.tagName)), this.addChild(n3, t4, s3); + } + a3 = e4.closeIndex + 1; + } else if ("!--" === t3.substr(a3 + 1, 3)) { + const e4 = y2(t3, "-->", a3 + 4, "Comment is not closed."); + if (this.options.commentPropName) { + const o3 = t3.substring(a3 + 4, e4 - 2); + r3 = this.saveTextToParentTag(r3, n3, s3), n3.add(this.options.commentPropName, [{ [this.options.textNodeName]: o3 }]); + } + a3 = e4; + } else if ("!D" === t3.substr(a3 + 1, 2)) { + const e4 = i2(t3, a3); + this.docTypeEntities = e4.entities, a3 = e4.i; + } else if ("![" === t3.substr(a3 + 1, 2)) { + const e4 = y2(t3, "]]>", a3, "CDATA is not closed.") - 2, o3 = t3.substring(a3 + 9, e4); + r3 = this.saveTextToParentTag(r3, n3, s3); + let i3 = this.parseTextData(o3, n3.tagname, s3, true, false, true, true); + null == i3 && (i3 = ""), this.options.cdataPropName ? n3.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o3 }]) : n3.add(this.options.textNodeName, i3), a3 = e4 + 2; + } else { + let i3 = v2(t3, a3, this.options.removeNSPrefix), u3 = i3.tagName; + const c3 = i3.rawTagName; + let l3 = i3.tagExp, h3 = i3.attrExpPresent, p3 = i3.closeIndex; + this.options.transformTagName && (u3 = this.options.transformTagName(u3)), n3 && r3 && "!xml" !== n3.tagname && (r3 = this.saveTextToParentTag(r3, n3, s3, false)); + const f3 = n3; + if (f3 && -1 !== this.options.unpairedTags.indexOf(f3.tagname) && (n3 = this.tagsNodeStack.pop(), s3 = s3.substring(0, s3.lastIndexOf("."))), u3 !== e3.tagname && (s3 += s3 ? "." + u3 : u3), this.isItStopNode(this.options.stopNodes, s3, u3)) { + let e4 = ""; + if (l3.length > 0 && l3.lastIndexOf("/") === l3.length - 1) "/" === u3[u3.length - 1] ? (u3 = u3.substr(0, u3.length - 1), s3 = s3.substr(0, s3.length - 1), l3 = u3) : l3 = l3.substr(0, l3.length - 1), a3 = i3.closeIndex; + else if (-1 !== this.options.unpairedTags.indexOf(u3)) a3 = i3.closeIndex; + else { + const n4 = this.readStopNodeData(t3, c3, p3 + 1); + if (!n4) throw new Error(`Unexpected end of ${c3}`); + a3 = n4.i, e4 = n4.tagContent; + } + const r4 = new o2(u3); + u3 !== l3 && h3 && (r4[":@"] = this.buildAttributesMap(l3, s3, u3)), e4 && (e4 = this.parseTextData(e4, u3, s3, true, h3, true, true)), s3 = s3.substr(0, s3.lastIndexOf(".")), r4.add(this.options.textNodeName, e4), this.addChild(n3, r4, s3); + } else { + if (l3.length > 0 && l3.lastIndexOf("/") === l3.length - 1) { + "/" === u3[u3.length - 1] ? (u3 = u3.substr(0, u3.length - 1), s3 = s3.substr(0, s3.length - 1), l3 = u3) : l3 = l3.substr(0, l3.length - 1), this.options.transformTagName && (u3 = this.options.transformTagName(u3)); + const t4 = new o2(u3); + u3 !== l3 && h3 && (t4[":@"] = this.buildAttributesMap(l3, s3, u3)), this.addChild(n3, t4, s3), s3 = s3.substr(0, s3.lastIndexOf(".")); + } else { + const t4 = new o2(u3); + this.tagsNodeStack.push(n3), u3 !== l3 && h3 && (t4[":@"] = this.buildAttributesMap(l3, s3, u3)), this.addChild(n3, t4, s3), n3 = t4; + } + r3 = "", a3 = p3; + } + } + else r3 += t3[a3]; + return e3.child; + }; + function f2(t3, e3, n3) { + const r3 = this.options.updateTag(e3.tagname, n3, e3[":@"]); + false === r3 || ("string" == typeof r3 ? (e3.tagname = r3, t3.addChild(e3)) : t3.addChild(e3)); + } + const d2 = function(t3) { + if (this.options.processEntities) { + for (let e3 in this.docTypeEntities) { + const n3 = this.docTypeEntities[e3]; + t3 = t3.replace(n3.regx, n3.val); + } + for (let e3 in this.lastEntities) { + const n3 = this.lastEntities[e3]; + t3 = t3.replace(n3.regex, n3.val); + } + if (this.options.htmlEntities) for (let e3 in this.htmlEntities) { + const n3 = this.htmlEntities[e3]; + t3 = t3.replace(n3.regex, n3.val); + } + t3 = t3.replace(this.ampEntity.regex, this.ampEntity.val); + } + return t3; + }; + function g2(t3, e3, n3, r3) { + return t3 && (void 0 === r3 && (r3 = 0 === Object.keys(e3.child).length), void 0 !== (t3 = this.parseTextData(t3, e3.tagname, n3, false, !!e3[":@"] && 0 !== Object.keys(e3[":@"]).length, r3)) && "" !== t3 && e3.add(this.options.textNodeName, t3), t3 = ""), t3; + } + function m2(t3, e3, n3) { + const r3 = "*." + n3; + for (const n4 in t3) { + const o3 = t3[n4]; + if (r3 === o3 || e3 === o3) return true; + } + return false; + } + function y2(t3, e3, n3, r3) { + const o3 = t3.indexOf(e3, n3); + if (-1 === o3) throw new Error(r3); + return o3 + e3.length - 1; + } + function v2(t3, e3, n3) { + const r3 = function(t4, e4) { + let n4, r4 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : ">", o4 = ""; + for (let i4 = e4; i4 < t4.length; i4++) { + let e5 = t4[i4]; + if (n4) e5 === n4 && (n4 = ""); + else if ('"' === e5 || "'" === e5) n4 = e5; + else if (e5 === r4[0]) { + if (!r4[1]) return { data: o4, index: i4 }; + if (t4[i4 + 1] === r4[1]) return { data: o4, index: i4 }; + } else " " === e5 && (e5 = " "); + o4 += e5; + } + }(t3, e3 + 1, arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : ">"); + if (!r3) return; + let o3 = r3.data; + const i3 = r3.index, s3 = o3.search(/\s/); + let a3 = o3, u3 = true; + -1 !== s3 && (a3 = o3.substring(0, s3), o3 = o3.substring(s3 + 1).trimStart()); + const c3 = a3; + if (n3) { + const t4 = a3.indexOf(":"); + -1 !== t4 && (a3 = a3.substr(t4 + 1), u3 = a3 !== r3.data.substr(t4 + 1)); + } + return { tagName: a3, tagExp: o3, closeIndex: i3, attrExpPresent: u3, rawTagName: c3 }; + } + function b2(t3, e3, n3) { + const r3 = n3; + let o3 = 1; + for (; n3 < t3.length; n3++) if ("<" === t3[n3]) if ("/" === t3[n3 + 1]) { + const i3 = y2(t3, ">", n3, `${e3} is not closed`); + if (t3.substring(n3 + 2, i3).trim() === e3 && (o3--, 0 === o3)) return { tagContent: t3.substring(r3, n3), i: i3 }; + n3 = i3; + } else if ("?" === t3[n3 + 1]) n3 = y2(t3, "?>", n3 + 1, "StopNode is not closed."); + else if ("!--" === t3.substr(n3 + 1, 3)) n3 = y2(t3, "-->", n3 + 3, "StopNode is not closed."); + else if ("![" === t3.substr(n3 + 1, 2)) n3 = y2(t3, "]]>", n3, "StopNode is not closed.") - 2; + else { + const r4 = v2(t3, n3, ">"); + r4 && ((r4 && r4.tagName) === e3 && "/" !== r4.tagExp[r4.tagExp.length - 1] && o3++, n3 = r4.closeIndex); + } + } + function w2(t3, e3, n3) { + if (e3 && "string" == typeof t3) { + const e4 = t3.trim(); + return "true" === e4 || "false" !== e4 && s2(t3, n3); + } + return r2.isExist(t3) ? t3 : ""; + } + t2.exports = class { + constructor(t3) { + this.options = t3, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = { apos: { regex: /&(apos|#39|#x27);/g, val: "'" }, gt: { regex: /&(gt|#62|#x3E);/g, val: ">" }, lt: { regex: /&(lt|#60|#x3C);/g, val: "<" }, quot: { regex: /&(quot|#34|#x22);/g, val: '"' } }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" }, this.htmlEntities = { space: { regex: /&(nbsp|#160);/g, val: " " }, cent: { regex: /&(cent|#162);/g, val: "¢" }, pound: { regex: /&(pound|#163);/g, val: "£" }, yen: { regex: /&(yen|#165);/g, val: "¥" }, euro: { regex: /&(euro|#8364);/g, val: "€" }, copyright: { regex: /&(copy|#169);/g, val: "©" }, reg: { regex: /&(reg|#174);/g, val: "®" }, inr: { regex: /&(inr|#8377);/g, val: "₹" }, num_dec: { regex: /&#([0-9]{1,7});/g, val: (t4, e3) => String.fromCharCode(Number.parseInt(e3, 10)) }, num_hex: { regex: /&#x([0-9a-fA-F]{1,6});/g, val: (t4, e3) => String.fromCharCode(Number.parseInt(e3, 16)) } }, this.addExternalEntities = a2, this.parseXml = p2, this.parseTextData = u2, this.resolveNameSpace = c2, this.buildAttributesMap = h2, this.isItStopNode = m2, this.replaceEntitiesValue = d2, this.readStopNodeData = b2, this.saveTextToParentTag = g2, this.addChild = f2; + } + }; +}, 338: (t2, e2, n2) => { + const { buildOptions: r2 } = n2(63), o2 = n2(299), { prettify: i2 } = n2(728), s2 = n2(31); + t2.exports = class { + constructor(t3) { + this.externalEntities = {}, this.options = r2(t3); + } + parse(t3, e3) { + if ("string" == typeof t3) ; + else { + if (!t3.toString) throw new Error("XML data is accepted in String or Bytes[] form."); + t3 = t3.toString(); + } + if (e3) { + true === e3 && (e3 = {}); + const n4 = s2.validate(t3, e3); + if (true !== n4) throw Error(`${n4.err.msg}:${n4.err.line}:${n4.err.col}`); + } + const n3 = new o2(this.options); + n3.addExternalEntities(this.externalEntities); + const r3 = n3.parseXml(t3); + return this.options.preserveOrder || void 0 === r3 ? r3 : i2(r3, this.options); + } + addEntity(t3, e3) { + if (-1 !== e3.indexOf("&")) throw new Error("Entity value can't have '&'"); + if (-1 !== t3.indexOf("&") || -1 !== t3.indexOf(";")) throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for ' '"); + if ("&" === e3) throw new Error("An entity with value '&' is not permitted"); + this.externalEntities[t3] = e3; + } + }; +}, 728: (t2, e2) => { + function n2(t3, e3, s2) { + let a2; + const u2 = {}; + for (let c2 = 0; c2 < t3.length; c2++) { + const l2 = t3[c2], h2 = r2(l2); + let p2 = ""; + if (p2 = void 0 === s2 ? h2 : s2 + "." + h2, h2 === e3.textNodeName) void 0 === a2 ? a2 = l2[h2] : a2 += "" + l2[h2]; + else { + if (void 0 === h2) continue; + if (l2[h2]) { + let t4 = n2(l2[h2], e3, p2); + const r3 = i2(t4, e3); + l2[":@"] ? o2(t4, l2[":@"], p2, e3) : 1 !== Object.keys(t4).length || void 0 === t4[e3.textNodeName] || e3.alwaysCreateTextNode ? 0 === Object.keys(t4).length && (e3.alwaysCreateTextNode ? t4[e3.textNodeName] = "" : t4 = "") : t4 = t4[e3.textNodeName], void 0 !== u2[h2] && u2.hasOwnProperty(h2) ? (Array.isArray(u2[h2]) || (u2[h2] = [u2[h2]]), u2[h2].push(t4)) : e3.isArray(h2, p2, r3) ? u2[h2] = [t4] : u2[h2] = t4; + } + } + } + return "string" == typeof a2 ? a2.length > 0 && (u2[e3.textNodeName] = a2) : void 0 !== a2 && (u2[e3.textNodeName] = a2), u2; + } + function r2(t3) { + const e3 = Object.keys(t3); + for (let t4 = 0; t4 < e3.length; t4++) { + const n3 = e3[t4]; + if (":@" !== n3) return n3; + } + } + function o2(t3, e3, n3, r3) { + if (e3) { + const o3 = Object.keys(e3), i3 = o3.length; + for (let s2 = 0; s2 < i3; s2++) { + const i4 = o3[s2]; + r3.isArray(i4, n3 + "." + i4, true, true) ? t3[i4] = [e3[i4]] : t3[i4] = e3[i4]; + } + } + } + function i2(t3, e3) { + const { textNodeName: n3 } = e3, r3 = Object.keys(t3).length; + return 0 === r3 || !(1 !== r3 || !t3[n3] && "boolean" != typeof t3[n3] && 0 !== t3[n3]); + } + e2.prettify = function(t3, e3) { + return n2(t3, e3); + }; +}, 365: (t2) => { + t2.exports = class { + constructor(t3) { + this.tagname = t3, this.child = [], this[":@"] = {}; + } + add(t3, e2) { + "__proto__" === t3 && (t3 = "#__proto__"), this.child.push({ [t3]: e2 }); + } + addChild(t3) { + "__proto__" === t3.tagname && (t3.tagname = "#__proto__"), t3[":@"] && Object.keys(t3[":@"]).length > 0 ? this.child.push({ [t3.tagname]: t3.child, ":@": t3[":@"] }) : this.child.push({ [t3.tagname]: t3.child }); + } + }; +}, 135: (t2) => { + function e2(t3) { + return !!t3.constructor && "function" == typeof t3.constructor.isBuffer && t3.constructor.isBuffer(t3); + } + t2.exports = function(t3) { + return null != t3 && (e2(t3) || function(t4) { + return "function" == typeof t4.readFloatLE && "function" == typeof t4.slice && e2(t4.slice(0, 0)); + }(t3) || !!t3._isBuffer); + }; +}, 542: (t2, e2, n2) => { + !function() { + var e3 = n2(298), r2 = n2(526).utf8, o2 = n2(135), i2 = n2(526).bin, s2 = function(t3, n3) { + t3.constructor == String ? t3 = n3 && "binary" === n3.encoding ? i2.stringToBytes(t3) : r2.stringToBytes(t3) : o2(t3) ? t3 = Array.prototype.slice.call(t3, 0) : Array.isArray(t3) || t3.constructor === Uint8Array || (t3 = t3.toString()); + for (var a2 = e3.bytesToWords(t3), u2 = 8 * t3.length, c2 = 1732584193, l2 = -271733879, h2 = -1732584194, p2 = 271733878, f2 = 0; f2 < a2.length; f2++) a2[f2] = 16711935 & (a2[f2] << 8 | a2[f2] >>> 24) | 4278255360 & (a2[f2] << 24 | a2[f2] >>> 8); + a2[u2 >>> 5] |= 128 << u2 % 32, a2[14 + (u2 + 64 >>> 9 << 4)] = u2; + var d2 = s2._ff, g2 = s2._gg, m2 = s2._hh, y2 = s2._ii; + for (f2 = 0; f2 < a2.length; f2 += 16) { + var v2 = c2, b2 = l2, w2 = h2, x2 = p2; + c2 = d2(c2, l2, h2, p2, a2[f2 + 0], 7, -680876936), p2 = d2(p2, c2, l2, h2, a2[f2 + 1], 12, -389564586), h2 = d2(h2, p2, c2, l2, a2[f2 + 2], 17, 606105819), l2 = d2(l2, h2, p2, c2, a2[f2 + 3], 22, -1044525330), c2 = d2(c2, l2, h2, p2, a2[f2 + 4], 7, -176418897), p2 = d2(p2, c2, l2, h2, a2[f2 + 5], 12, 1200080426), h2 = d2(h2, p2, c2, l2, a2[f2 + 6], 17, -1473231341), l2 = d2(l2, h2, p2, c2, a2[f2 + 7], 22, -45705983), c2 = d2(c2, l2, h2, p2, a2[f2 + 8], 7, 1770035416), p2 = d2(p2, c2, l2, h2, a2[f2 + 9], 12, -1958414417), h2 = d2(h2, p2, c2, l2, a2[f2 + 10], 17, -42063), l2 = d2(l2, h2, p2, c2, a2[f2 + 11], 22, -1990404162), c2 = d2(c2, l2, h2, p2, a2[f2 + 12], 7, 1804603682), p2 = d2(p2, c2, l2, h2, a2[f2 + 13], 12, -40341101), h2 = d2(h2, p2, c2, l2, a2[f2 + 14], 17, -1502002290), c2 = g2(c2, l2 = d2(l2, h2, p2, c2, a2[f2 + 15], 22, 1236535329), h2, p2, a2[f2 + 1], 5, -165796510), p2 = g2(p2, c2, l2, h2, a2[f2 + 6], 9, -1069501632), h2 = g2(h2, p2, c2, l2, a2[f2 + 11], 14, 643717713), l2 = g2(l2, h2, p2, c2, a2[f2 + 0], 20, -373897302), c2 = g2(c2, l2, h2, p2, a2[f2 + 5], 5, -701558691), p2 = g2(p2, c2, l2, h2, a2[f2 + 10], 9, 38016083), h2 = g2(h2, p2, c2, l2, a2[f2 + 15], 14, -660478335), l2 = g2(l2, h2, p2, c2, a2[f2 + 4], 20, -405537848), c2 = g2(c2, l2, h2, p2, a2[f2 + 9], 5, 568446438), p2 = g2(p2, c2, l2, h2, a2[f2 + 14], 9, -1019803690), h2 = g2(h2, p2, c2, l2, a2[f2 + 3], 14, -187363961), l2 = g2(l2, h2, p2, c2, a2[f2 + 8], 20, 1163531501), c2 = g2(c2, l2, h2, p2, a2[f2 + 13], 5, -1444681467), p2 = g2(p2, c2, l2, h2, a2[f2 + 2], 9, -51403784), h2 = g2(h2, p2, c2, l2, a2[f2 + 7], 14, 1735328473), c2 = m2(c2, l2 = g2(l2, h2, p2, c2, a2[f2 + 12], 20, -1926607734), h2, p2, a2[f2 + 5], 4, -378558), p2 = m2(p2, c2, l2, h2, a2[f2 + 8], 11, -2022574463), h2 = m2(h2, p2, c2, l2, a2[f2 + 11], 16, 1839030562), l2 = m2(l2, h2, p2, c2, a2[f2 + 14], 23, -35309556), c2 = m2(c2, l2, h2, p2, a2[f2 + 1], 4, -1530992060), p2 = m2(p2, c2, l2, h2, a2[f2 + 4], 11, 1272893353), h2 = m2(h2, p2, c2, l2, a2[f2 + 7], 16, -155497632), l2 = m2(l2, h2, p2, c2, a2[f2 + 10], 23, -1094730640), c2 = m2(c2, l2, h2, p2, a2[f2 + 13], 4, 681279174), p2 = m2(p2, c2, l2, h2, a2[f2 + 0], 11, -358537222), h2 = m2(h2, p2, c2, l2, a2[f2 + 3], 16, -722521979), l2 = m2(l2, h2, p2, c2, a2[f2 + 6], 23, 76029189), c2 = m2(c2, l2, h2, p2, a2[f2 + 9], 4, -640364487), p2 = m2(p2, c2, l2, h2, a2[f2 + 12], 11, -421815835), h2 = m2(h2, p2, c2, l2, a2[f2 + 15], 16, 530742520), c2 = y2(c2, l2 = m2(l2, h2, p2, c2, a2[f2 + 2], 23, -995338651), h2, p2, a2[f2 + 0], 6, -198630844), p2 = y2(p2, c2, l2, h2, a2[f2 + 7], 10, 1126891415), h2 = y2(h2, p2, c2, l2, a2[f2 + 14], 15, -1416354905), l2 = y2(l2, h2, p2, c2, a2[f2 + 5], 21, -57434055), c2 = y2(c2, l2, h2, p2, a2[f2 + 12], 6, 1700485571), p2 = y2(p2, c2, l2, h2, a2[f2 + 3], 10, -1894986606), h2 = y2(h2, p2, c2, l2, a2[f2 + 10], 15, -1051523), l2 = y2(l2, h2, p2, c2, a2[f2 + 1], 21, -2054922799), c2 = y2(c2, l2, h2, p2, a2[f2 + 8], 6, 1873313359), p2 = y2(p2, c2, l2, h2, a2[f2 + 15], 10, -30611744), h2 = y2(h2, p2, c2, l2, a2[f2 + 6], 15, -1560198380), l2 = y2(l2, h2, p2, c2, a2[f2 + 13], 21, 1309151649), c2 = y2(c2, l2, h2, p2, a2[f2 + 4], 6, -145523070), p2 = y2(p2, c2, l2, h2, a2[f2 + 11], 10, -1120210379), h2 = y2(h2, p2, c2, l2, a2[f2 + 2], 15, 718787259), l2 = y2(l2, h2, p2, c2, a2[f2 + 9], 21, -343485551), c2 = c2 + v2 >>> 0, l2 = l2 + b2 >>> 0, h2 = h2 + w2 >>> 0, p2 = p2 + x2 >>> 0; + } + return e3.endian([c2, l2, h2, p2]); + }; + s2._ff = function(t3, e4, n3, r3, o3, i3, s3) { + var a2 = t3 + (e4 & n3 | ~e4 & r3) + (o3 >>> 0) + s3; + return (a2 << i3 | a2 >>> 32 - i3) + e4; + }, s2._gg = function(t3, e4, n3, r3, o3, i3, s3) { + var a2 = t3 + (e4 & r3 | n3 & ~r3) + (o3 >>> 0) + s3; + return (a2 << i3 | a2 >>> 32 - i3) + e4; + }, s2._hh = function(t3, e4, n3, r3, o3, i3, s3) { + var a2 = t3 + (e4 ^ n3 ^ r3) + (o3 >>> 0) + s3; + return (a2 << i3 | a2 >>> 32 - i3) + e4; + }, s2._ii = function(t3, e4, n3, r3, o3, i3, s3) { + var a2 = t3 + (n3 ^ (e4 | ~r3)) + (o3 >>> 0) + s3; + return (a2 << i3 | a2 >>> 32 - i3) + e4; + }, s2._blocksize = 16, s2._digestsize = 16, t2.exports = function(t3, n3) { + if (null == t3) throw new Error("Illegal argument " + t3); + var r3 = e3.wordsToBytes(s2(t3, n3)); + return n3 && n3.asBytes ? r3 : n3 && n3.asString ? i2.bytesToString(r3) : e3.bytesToHex(r3); + }; + }(); +}, 285: (t2, e2, n2) => { + var r2 = n2(2); + t2.exports = function(t3) { + return t3 ? ("{}" === t3.substr(0, 2) && (t3 = "\\{\\}" + t3.substr(2)), m2(function(t4) { + return t4.split("\\\\").join(o2).split("\\{").join(i2).split("\\}").join(s2).split("\\,").join(a2).split("\\.").join(u2); + }(t3), true).map(l2)) : []; + }; + var o2 = "\0SLASH" + Math.random() + "\0", i2 = "\0OPEN" + Math.random() + "\0", s2 = "\0CLOSE" + Math.random() + "\0", a2 = "\0COMMA" + Math.random() + "\0", u2 = "\0PERIOD" + Math.random() + "\0"; + function c2(t3) { + return parseInt(t3, 10) == t3 ? parseInt(t3, 10) : t3.charCodeAt(0); + } + function l2(t3) { + return t3.split(o2).join("\\").split(i2).join("{").split(s2).join("}").split(a2).join(",").split(u2).join("."); + } + function h2(t3) { + if (!t3) return [""]; + var e3 = [], n3 = r2("{", "}", t3); + if (!n3) return t3.split(","); + var o3 = n3.pre, i3 = n3.body, s3 = n3.post, a3 = o3.split(","); + a3[a3.length - 1] += "{" + i3 + "}"; + var u3 = h2(s3); + return s3.length && (a3[a3.length - 1] += u3.shift(), a3.push.apply(a3, u3)), e3.push.apply(e3, a3), e3; + } + function p2(t3) { + return "{" + t3 + "}"; + } + function f2(t3) { + return /^-?0\d/.test(t3); + } + function d2(t3, e3) { + return t3 <= e3; + } + function g2(t3, e3) { + return t3 >= e3; + } + function m2(t3, e3) { + var n3 = [], o3 = r2("{", "}", t3); + if (!o3) return [t3]; + var i3 = o3.pre, a3 = o3.post.length ? m2(o3.post, false) : [""]; + if (/\$$/.test(o3.pre)) for (var u3 = 0; u3 < a3.length; u3++) { + var l3 = i3 + "{" + o3.body + "}" + a3[u3]; + n3.push(l3); + } + else { + var y2, v2, b2 = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(o3.body), w2 = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(o3.body), x2 = b2 || w2, N2 = o3.body.indexOf(",") >= 0; + if (!x2 && !N2) return o3.post.match(/,.*\}/) ? m2(t3 = o3.pre + "{" + o3.body + s2 + o3.post) : [t3]; + if (x2) y2 = o3.body.split(/\.\./); + else if (1 === (y2 = h2(o3.body)).length && 1 === (y2 = m2(y2[0], false).map(p2)).length) return a3.map(function(t4) { + return o3.pre + y2[0] + t4; + }); + if (x2) { + var P2 = c2(y2[0]), A2 = c2(y2[1]), O2 = Math.max(y2[0].length, y2[1].length), E2 = 3 == y2.length ? Math.abs(c2(y2[2])) : 1, T2 = d2; + A2 < P2 && (E2 *= -1, T2 = g2); + var j2 = y2.some(f2); + v2 = []; + for (var S2 = P2; T2(S2, A2); S2 += E2) { + var $2; + if (w2) "\\" === ($2 = String.fromCharCode(S2)) && ($2 = ""); + else if ($2 = String(S2), j2) { + var C2 = O2 - $2.length; + if (C2 > 0) { + var I2 = new Array(C2 + 1).join("0"); + $2 = S2 < 0 ? "-" + I2 + $2.slice(1) : I2 + $2; + } + } + v2.push($2); + } + } else { + v2 = []; + for (var k2 = 0; k2 < y2.length; k2++) v2.push.apply(v2, m2(y2[k2], false)); + } + for (k2 = 0; k2 < v2.length; k2++) for (u3 = 0; u3 < a3.length; u3++) l3 = i3 + v2[k2] + a3[u3], (!e3 || x2 || l3) && n3.push(l3); + } + return n3; + } +}, 829: (t2) => { + function e2(t3) { + return e2 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t4) { + return typeof t4; + } : function(t4) { + return t4 && "function" == typeof Symbol && t4.constructor === Symbol && t4 !== Symbol.prototype ? "symbol" : typeof t4; + }, e2(t3); + } + function n2(t3) { + var e3 = "function" == typeof Map ? /* @__PURE__ */ new Map() : void 0; + return n2 = function(t4) { + if (null === t4 || (n3 = t4, -1 === Function.toString.call(n3).indexOf("[native code]"))) return t4; + var n3; + if ("function" != typeof t4) throw new TypeError("Super expression must either be null or a function"); + if (void 0 !== e3) { + if (e3.has(t4)) return e3.get(t4); + e3.set(t4, s3); + } + function s3() { + return r2(t4, arguments, i2(this).constructor); + } + return s3.prototype = Object.create(t4.prototype, { constructor: { value: s3, enumerable: false, writable: true, configurable: true } }), o2(s3, t4); + }, n2(t3); + } + function r2(t3, e3, n3) { + return r2 = function() { + if ("undefined" == typeof Reflect || !Reflect.construct) return false; + if (Reflect.construct.sham) return false; + if ("function" == typeof Proxy) return true; + try { + return Date.prototype.toString.call(Reflect.construct(Date, [], function() { + })), true; + } catch (t4) { + return false; + } + }() ? Reflect.construct : function(t4, e4, n4) { + var r3 = [null]; + r3.push.apply(r3, e4); + var i3 = new (Function.bind.apply(t4, r3))(); + return n4 && o2(i3, n4.prototype), i3; + }, r2.apply(null, arguments); + } + function o2(t3, e3) { + return o2 = Object.setPrototypeOf || function(t4, e4) { + return t4.__proto__ = e4, t4; + }, o2(t3, e3); + } + function i2(t3) { + return i2 = Object.setPrototypeOf ? Object.getPrototypeOf : function(t4) { + return t4.__proto__ || Object.getPrototypeOf(t4); + }, i2(t3); + } + var s2 = function(t3) { + function n3(t4) { + var r3; + return function(t5, e3) { + if (!(t5 instanceof e3)) throw new TypeError("Cannot call a class as a function"); + }(this, n3), (r3 = function(t5, n4) { + return !n4 || "object" !== e2(n4) && "function" != typeof n4 ? function(t6) { + if (void 0 === t6) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + return t6; + }(t5) : n4; + }(this, i2(n3).call(this, t4))).name = "ObjectPrototypeMutationError", r3; + } + return function(t4, e3) { + if ("function" != typeof e3 && null !== e3) throw new TypeError("Super expression must either be null or a function"); + t4.prototype = Object.create(e3 && e3.prototype, { constructor: { value: t4, writable: true, configurable: true } }), e3 && o2(t4, e3); + }(n3, t3), n3; + }(n2(Error)); + function a2(t3, n3) { + for (var r3 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : function() { + }, o3 = n3.split("."), i3 = o3.length, s3 = function(e3) { + var n4 = o3[e3]; + if (!t3) return { v: void 0 }; + if ("+" === n4) { + if (Array.isArray(t3)) return { v: t3.map(function(n5, i5) { + var s4 = o3.slice(e3 + 1); + return s4.length > 0 ? a2(n5, s4.join("."), r3) : r3(t3, i5, o3, e3); + }) }; + var i4 = o3.slice(0, e3).join("."); + throw new Error("Object at wildcard (".concat(i4, ") is not an array")); + } + t3 = r3(t3, n4, o3, e3); + }, u3 = 0; u3 < i3; u3++) { + var c2 = s3(u3); + if ("object" === e2(c2)) return c2.v; + } + return t3; + } + function u2(t3, e3) { + return t3.length === e3 + 1; + } + t2.exports = { set: function(t3, n3, r3) { + if ("object" != e2(t3) || null === t3) return t3; + if (void 0 === n3) return t3; + if ("number" == typeof n3) return t3[n3] = r3, t3[n3]; + try { + return a2(t3, n3, function(t4, e3, n4, o3) { + if (t4 === Reflect.getPrototypeOf({})) throw new s2("Attempting to mutate Object.prototype"); + if (!t4[e3]) { + var i3 = Number.isInteger(Number(n4[o3 + 1])), a3 = "+" === n4[o3 + 1]; + t4[e3] = i3 || a3 ? [] : {}; + } + return u2(n4, o3) && (t4[e3] = r3), t4[e3]; + }); + } catch (e3) { + if (e3 instanceof s2) throw e3; + return t3; + } + }, get: function(t3, n3) { + if ("object" != e2(t3) || null === t3) return t3; + if (void 0 === n3) return t3; + if ("number" == typeof n3) return t3[n3]; + try { + return a2(t3, n3, function(t4, e3) { + return t4[e3]; + }); + } catch (e3) { + return t3; + } + }, has: function(t3, n3) { + var r3 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + if ("object" != e2(t3) || null === t3) return false; + if (void 0 === n3) return false; + if ("number" == typeof n3) return n3 in t3; + try { + var o3 = false; + return a2(t3, n3, function(t4, e3, n4, i3) { + if (!u2(n4, i3)) return t4 && t4[e3]; + o3 = r3.own ? t4.hasOwnProperty(e3) : e3 in t4; + }), o3; + } catch (t4) { + return false; + } + }, hasOwn: function(t3, e3, n3) { + return this.has(t3, e3, n3 || { own: true }); + }, isIn: function(t3, n3, r3) { + var o3 = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}; + if ("object" != e2(t3) || null === t3) return false; + if (void 0 === n3) return false; + try { + var i3 = false, s3 = false; + return a2(t3, n3, function(t4, n4, o4, a3) { + return i3 = i3 || t4 === r3 || !!t4 && t4[n4] === r3, s3 = u2(o4, a3) && "object" === e2(t4) && n4 in t4, t4 && t4[n4]; + }), o3.validPath ? i3 && s3 : i3; + } catch (t4) { + return false; + } + }, ObjectPrototypeMutationError: s2 }; +}, 47: (t2, e2, n2) => { + var r2 = n2(410), o2 = function(t3) { + return "string" == typeof t3; + }; + function i2(t3, e3) { + for (var n3 = [], r3 = 0; r3 < t3.length; r3++) { + var o3 = t3[r3]; + o3 && "." !== o3 && (".." === o3 ? n3.length && ".." !== n3[n3.length - 1] ? n3.pop() : e3 && n3.push("..") : n3.push(o3)); + } + return n3; + } + var s2 = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/, a2 = {}; + function u2(t3) { + return s2.exec(t3).slice(1); + } + a2.resolve = function() { + for (var t3 = "", e3 = false, n3 = arguments.length - 1; n3 >= -1 && !e3; n3--) { + var r3 = n3 >= 0 ? arguments[n3] : process$1$1.cwd(); + if (!o2(r3)) throw new TypeError("Arguments to path.resolve must be strings"); + r3 && (t3 = r3 + "/" + t3, e3 = "/" === r3.charAt(0)); + } + return (e3 ? "/" : "") + (t3 = i2(t3.split("/"), !e3).join("/")) || "."; + }, a2.normalize = function(t3) { + var e3 = a2.isAbsolute(t3), n3 = "/" === t3.substr(-1); + return (t3 = i2(t3.split("/"), !e3).join("/")) || e3 || (t3 = "."), t3 && n3 && (t3 += "/"), (e3 ? "/" : "") + t3; + }, a2.isAbsolute = function(t3) { + return "/" === t3.charAt(0); + }, a2.join = function() { + for (var t3 = "", e3 = 0; e3 < arguments.length; e3++) { + var n3 = arguments[e3]; + if (!o2(n3)) throw new TypeError("Arguments to path.join must be strings"); + n3 && (t3 += t3 ? "/" + n3 : n3); + } + return a2.normalize(t3); + }, a2.relative = function(t3, e3) { + function n3(t4) { + for (var e4 = 0; e4 < t4.length && "" === t4[e4]; e4++) ; + for (var n4 = t4.length - 1; n4 >= 0 && "" === t4[n4]; n4--) ; + return e4 > n4 ? [] : t4.slice(e4, n4 + 1); + } + t3 = a2.resolve(t3).substr(1), e3 = a2.resolve(e3).substr(1); + for (var r3 = n3(t3.split("/")), o3 = n3(e3.split("/")), i3 = Math.min(r3.length, o3.length), s3 = i3, u3 = 0; u3 < i3; u3++) if (r3[u3] !== o3[u3]) { + s3 = u3; + break; + } + var c2 = []; + for (u3 = s3; u3 < r3.length; u3++) c2.push(".."); + return (c2 = c2.concat(o3.slice(s3))).join("/"); + }, a2._makeLong = function(t3) { + return t3; + }, a2.dirname = function(t3) { + var e3 = u2(t3), n3 = e3[0], r3 = e3[1]; + return n3 || r3 ? (r3 && (r3 = r3.substr(0, r3.length - 1)), n3 + r3) : "."; + }, a2.basename = function(t3, e3) { + var n3 = u2(t3)[2]; + return e3 && n3.substr(-1 * e3.length) === e3 && (n3 = n3.substr(0, n3.length - e3.length)), n3; + }, a2.extname = function(t3) { + return u2(t3)[3]; + }, a2.format = function(t3) { + if (!r2.isObject(t3)) throw new TypeError("Parameter 'pathObject' must be an object, not " + typeof t3); + var e3 = t3.root || ""; + if (!o2(e3)) throw new TypeError("'pathObject.root' must be a string or undefined, not " + typeof t3.root); + return (t3.dir ? t3.dir + a2.sep : "") + (t3.base || ""); + }, a2.parse = function(t3) { + if (!o2(t3)) throw new TypeError("Parameter 'pathString' must be a string, not " + typeof t3); + var e3 = u2(t3); + if (!e3 || 4 !== e3.length) throw new TypeError("Invalid path '" + t3 + "'"); + return e3[1] = e3[1] || "", e3[2] = e3[2] || "", e3[3] = e3[3] || "", { root: e3[0], dir: e3[0] + e3[1].slice(0, e3[1].length - 1), base: e3[2], ext: e3[3], name: e3[2].slice(0, e3[2].length - e3[3].length) }; + }, a2.sep = "/", a2.delimiter = ":", t2.exports = a2; +}, 647: (t2, e2) => { + var n2 = Object.prototype.hasOwnProperty; + function r2(t3) { + try { + return decodeURIComponent(t3.replace(/\+/g, " ")); + } catch (t4) { + return null; + } + } + function o2(t3) { + try { + return encodeURIComponent(t3); + } catch (t4) { + return null; + } + } + e2.stringify = function(t3, e3) { + e3 = e3 || ""; + var r3, i2, s2 = []; + for (i2 in "string" != typeof e3 && (e3 = "?"), t3) if (n2.call(t3, i2)) { + if ((r3 = t3[i2]) || null != r3 && !isNaN(r3) || (r3 = ""), i2 = o2(i2), r3 = o2(r3), null === i2 || null === r3) continue; + s2.push(i2 + "=" + r3); + } + return s2.length ? e3 + s2.join("&") : ""; + }, e2.parse = function(t3) { + for (var e3, n3 = /([^=?#&]+)=?([^&]*)/g, o3 = {}; e3 = n3.exec(t3); ) { + var i2 = r2(e3[1]), s2 = r2(e3[2]); + null === i2 || null === s2 || i2 in o3 || (o3[i2] = s2); + } + return o3; + }; +}, 670: (t2) => { + t2.exports = function(t3, e2) { + if (e2 = e2.split(":")[0], !(t3 = +t3)) return false; + switch (e2) { + case "http": + case "ws": + return 80 !== t3; + case "https": + case "wss": + return 443 !== t3; + case "ftp": + return 21 !== t3; + case "gopher": + return 70 !== t3; + case "file": + return false; + } + return 0 !== t3; + }; +}, 494: (t2) => { + const e2 = /^[-+]?0x[a-fA-F0-9]+$/, n2 = /^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/; + !Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt), !Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat); + const r2 = { hex: true, leadingZeros: true, decimalPoint: ".", eNotation: true }; + t2.exports = function(t3) { + let o2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + if (o2 = Object.assign({}, r2, o2), !t3 || "string" != typeof t3) return t3; + let i2 = t3.trim(); + if (void 0 !== o2.skipLike && o2.skipLike.test(i2)) return t3; + if (o2.hex && e2.test(i2)) return Number.parseInt(i2, 16); + { + const e3 = n2.exec(i2); + if (e3) { + const n3 = e3[1], r3 = e3[2]; + let a2 = (s2 = e3[3]) && -1 !== s2.indexOf(".") ? ("." === (s2 = s2.replace(/0+$/, "")) ? s2 = "0" : "." === s2[0] ? s2 = "0" + s2 : "." === s2[s2.length - 1] && (s2 = s2.substr(0, s2.length - 1)), s2) : s2; + const u2 = e3[4] || e3[6]; + if (!o2.leadingZeros && r3.length > 0 && n3 && "." !== i2[2]) return t3; + if (!o2.leadingZeros && r3.length > 0 && !n3 && "." !== i2[1]) return t3; + { + const e4 = Number(i2), s3 = "" + e4; + return -1 !== s3.search(/[eE]/) || u2 ? o2.eNotation ? e4 : t3 : -1 !== i2.indexOf(".") ? "0" === s3 && "" === a2 || s3 === a2 || n3 && s3 === "-" + a2 ? e4 : t3 : r3 ? a2 === s3 || n3 + a2 === s3 ? e4 : t3 : i2 === s3 || i2 === n3 + s3 ? e4 : t3; + } + } + return t3; + } + var s2; + }; +}, 737: (t2, e2, n2) => { + var r2 = n2(670), o2 = n2(647), i2 = /^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/, s2 = /[\n\r\t]/g, a2 = /^[A-Za-z][A-Za-z0-9+-.]*:\/\//, u2 = /:\d+$/, c2 = /^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i, l2 = /^[a-zA-Z]:/; + function h2(t3) { + return (t3 || "").toString().replace(i2, ""); + } + var p2 = [["#", "hash"], ["?", "query"], function(t3, e3) { + return g2(e3.protocol) ? t3.replace(/\\/g, "/") : t3; + }, ["/", "pathname"], ["@", "auth", 1], [NaN, "host", void 0, 1, 1], [/:(\d*)$/, "port", void 0, 1], [NaN, "hostname", void 0, 1, 1]], f2 = { hash: 1, query: 1 }; + function d2(t3) { + var e3, n3 = ("undefined" != typeof window ? window : "undefined" != typeof global$e ? global$e : "undefined" != typeof self ? self : {}).location || {}, r3 = {}, o3 = typeof (t3 = t3 || n3); + if ("blob:" === t3.protocol) r3 = new y2(unescape(t3.pathname), {}); + else if ("string" === o3) for (e3 in r3 = new y2(t3, {}), f2) delete r3[e3]; + else if ("object" === o3) { + for (e3 in t3) e3 in f2 || (r3[e3] = t3[e3]); + void 0 === r3.slashes && (r3.slashes = a2.test(t3.href)); + } + return r3; + } + function g2(t3) { + return "file:" === t3 || "ftp:" === t3 || "http:" === t3 || "https:" === t3 || "ws:" === t3 || "wss:" === t3; + } + function m2(t3, e3) { + t3 = (t3 = h2(t3)).replace(s2, ""), e3 = e3 || {}; + var n3, r3 = c2.exec(t3), o3 = r3[1] ? r3[1].toLowerCase() : "", i3 = !!r3[2], a3 = !!r3[3], u3 = 0; + return i3 ? a3 ? (n3 = r3[2] + r3[3] + r3[4], u3 = r3[2].length + r3[3].length) : (n3 = r3[2] + r3[4], u3 = r3[2].length) : a3 ? (n3 = r3[3] + r3[4], u3 = r3[3].length) : n3 = r3[4], "file:" === o3 ? u3 >= 2 && (n3 = n3.slice(2)) : g2(o3) ? n3 = r3[4] : o3 ? i3 && (n3 = n3.slice(2)) : u3 >= 2 && g2(e3.protocol) && (n3 = r3[4]), { protocol: o3, slashes: i3 || g2(o3), slashesCount: u3, rest: n3 }; + } + function y2(t3, e3, n3) { + if (t3 = (t3 = h2(t3)).replace(s2, ""), !(this instanceof y2)) return new y2(t3, e3, n3); + var i3, a3, u3, c3, f3, v2, b2 = p2.slice(), w2 = typeof e3, x2 = this, N2 = 0; + for ("object" !== w2 && "string" !== w2 && (n3 = e3, e3 = null), n3 && "function" != typeof n3 && (n3 = o2.parse), i3 = !(a3 = m2(t3 || "", e3 = d2(e3))).protocol && !a3.slashes, x2.slashes = a3.slashes || i3 && e3.slashes, x2.protocol = a3.protocol || e3.protocol || "", t3 = a3.rest, ("file:" === a3.protocol && (2 !== a3.slashesCount || l2.test(t3)) || !a3.slashes && (a3.protocol || a3.slashesCount < 2 || !g2(x2.protocol))) && (b2[3] = [/(.*)/, "pathname"]); N2 < b2.length; N2++) "function" != typeof (c3 = b2[N2]) ? (u3 = c3[0], v2 = c3[1], u3 != u3 ? x2[v2] = t3 : "string" == typeof u3 ? ~(f3 = "@" === u3 ? t3.lastIndexOf(u3) : t3.indexOf(u3)) && ("number" == typeof c3[2] ? (x2[v2] = t3.slice(0, f3), t3 = t3.slice(f3 + c3[2])) : (x2[v2] = t3.slice(f3), t3 = t3.slice(0, f3))) : (f3 = u3.exec(t3)) && (x2[v2] = f3[1], t3 = t3.slice(0, f3.index)), x2[v2] = x2[v2] || i3 && c3[3] && e3[v2] || "", c3[4] && (x2[v2] = x2[v2].toLowerCase())) : t3 = c3(t3, x2); + n3 && (x2.query = n3(x2.query)), i3 && e3.slashes && "/" !== x2.pathname.charAt(0) && ("" !== x2.pathname || "" !== e3.pathname) && (x2.pathname = function(t4, e4) { + if ("" === t4) return e4; + for (var n4 = (e4 || "/").split("/").slice(0, -1).concat(t4.split("/")), r3 = n4.length, o3 = n4[r3 - 1], i4 = false, s3 = 0; r3--; ) "." === n4[r3] ? n4.splice(r3, 1) : ".." === n4[r3] ? (n4.splice(r3, 1), s3++) : s3 && (0 === r3 && (i4 = true), n4.splice(r3, 1), s3--); + return i4 && n4.unshift(""), "." !== o3 && ".." !== o3 || n4.push(""), n4.join("/"); + }(x2.pathname, e3.pathname)), "/" !== x2.pathname.charAt(0) && g2(x2.protocol) && (x2.pathname = "/" + x2.pathname), r2(x2.port, x2.protocol) || (x2.host = x2.hostname, x2.port = ""), x2.username = x2.password = "", x2.auth && (~(f3 = x2.auth.indexOf(":")) ? (x2.username = x2.auth.slice(0, f3), x2.username = encodeURIComponent(decodeURIComponent(x2.username)), x2.password = x2.auth.slice(f3 + 1), x2.password = encodeURIComponent(decodeURIComponent(x2.password))) : x2.username = encodeURIComponent(decodeURIComponent(x2.auth)), x2.auth = x2.password ? x2.username + ":" + x2.password : x2.username), x2.origin = "file:" !== x2.protocol && g2(x2.protocol) && x2.host ? x2.protocol + "//" + x2.host : "null", x2.href = x2.toString(); + } + y2.prototype = { set: function(t3, e3, n3) { + var i3 = this; + switch (t3) { + case "query": + "string" == typeof e3 && e3.length && (e3 = (n3 || o2.parse)(e3)), i3[t3] = e3; + break; + case "port": + i3[t3] = e3, r2(e3, i3.protocol) ? e3 && (i3.host = i3.hostname + ":" + e3) : (i3.host = i3.hostname, i3[t3] = ""); + break; + case "hostname": + i3[t3] = e3, i3.port && (e3 += ":" + i3.port), i3.host = e3; + break; + case "host": + i3[t3] = e3, u2.test(e3) ? (e3 = e3.split(":"), i3.port = e3.pop(), i3.hostname = e3.join(":")) : (i3.hostname = e3, i3.port = ""); + break; + case "protocol": + i3.protocol = e3.toLowerCase(), i3.slashes = !n3; + break; + case "pathname": + case "hash": + if (e3) { + var s3 = "pathname" === t3 ? "/" : "#"; + i3[t3] = e3.charAt(0) !== s3 ? s3 + e3 : e3; + } else i3[t3] = e3; + break; + case "username": + case "password": + i3[t3] = encodeURIComponent(e3); + break; + case "auth": + var a3 = e3.indexOf(":"); + ~a3 ? (i3.username = e3.slice(0, a3), i3.username = encodeURIComponent(decodeURIComponent(i3.username)), i3.password = e3.slice(a3 + 1), i3.password = encodeURIComponent(decodeURIComponent(i3.password))) : i3.username = encodeURIComponent(decodeURIComponent(e3)); + } + for (var c3 = 0; c3 < p2.length; c3++) { + var l3 = p2[c3]; + l3[4] && (i3[l3[1]] = i3[l3[1]].toLowerCase()); + } + return i3.auth = i3.password ? i3.username + ":" + i3.password : i3.username, i3.origin = "file:" !== i3.protocol && g2(i3.protocol) && i3.host ? i3.protocol + "//" + i3.host : "null", i3.href = i3.toString(), i3; + }, toString: function(t3) { + t3 && "function" == typeof t3 || (t3 = o2.stringify); + var e3, n3 = this, r3 = n3.host, i3 = n3.protocol; + i3 && ":" !== i3.charAt(i3.length - 1) && (i3 += ":"); + var s3 = i3 + (n3.protocol && n3.slashes || g2(n3.protocol) ? "//" : ""); + return n3.username ? (s3 += n3.username, n3.password && (s3 += ":" + n3.password), s3 += "@") : n3.password ? (s3 += ":" + n3.password, s3 += "@") : "file:" !== n3.protocol && g2(n3.protocol) && !r3 && "/" !== n3.pathname && (s3 += "@"), (":" === r3[r3.length - 1] || u2.test(n3.hostname) && !n3.port) && (r3 += ":"), s3 += r3 + n3.pathname, (e3 = "object" == typeof n3.query ? t3(n3.query) : n3.query) && (s3 += "?" !== e3.charAt(0) ? "?" + e3 : e3), n3.hash && (s3 += n3.hash), s3; + } }, y2.extractProtocol = m2, y2.location = d2, y2.trimLeft = h2, y2.qs = o2, t2.exports = y2; +}, 410: () => { +}, 388: () => { +}, 805: () => { +}, 345: () => { +}, 800: () => { +} }, e = {}; +function n(r2) { + var o2 = e[r2]; + if (void 0 !== o2) return o2.exports; + var i2 = e[r2] = { id: r2, loaded: false, exports: {} }; + return t[r2].call(i2.exports, i2, i2.exports, n), i2.loaded = true, i2.exports; +} +n.n = (t2) => { + var e2 = t2 && t2.__esModule ? () => t2.default : () => t2; + return n.d(e2, { a: e2 }), e2; +}, n.d = (t2, e2) => { + for (var r2 in e2) n.o(e2, r2) && !n.o(t2, r2) && Object.defineProperty(t2, r2, { enumerable: true, get: e2[r2] }); +}, n.o = (t2, e2) => Object.prototype.hasOwnProperty.call(t2, e2), n.nmd = (t2) => (t2.paths = [], t2.children || (t2.children = []), t2); +var r = {}; +n.d(r, { hT: () => C, O4: () => I, Kd: () => S, YK: () => $$1, UU: () => en, Gu: () => F, ky: () => oe, h4: () => ne, ch: () => re, hq: () => Xt, i5: () => ie }); +var o = n(737), i$1 = n.n(o); +function s(t2) { + if (!a(t2)) throw new Error("Parameter was not an error"); +} +function a(t2) { + return !!t2 && "object" == typeof t2 && "[object Error]" === (e2 = t2, Object.prototype.toString.call(e2)) || t2 instanceof Error; + var e2; +} +class u extends Error { + constructor(t2, e2) { + const n2 = [...arguments], { options: r2, shortMessage: o2 } = function(t3) { + let e3, n3 = ""; + if (0 === t3.length) e3 = {}; + else if (a(t3[0])) e3 = { cause: t3[0] }, n3 = t3.slice(1).join(" ") || ""; + else if (t3[0] && "object" == typeof t3[0]) e3 = Object.assign({}, t3[0]), n3 = t3.slice(1).join(" ") || ""; + else { + if ("string" != typeof t3[0]) throw new Error("Invalid arguments passed to Layerr"); + e3 = {}, n3 = n3 = t3.join(" ") || ""; + } + return { options: e3, shortMessage: n3 }; + }(n2); + let i2 = o2; + if (r2.cause && (i2 = `${i2}: ${r2.cause.message}`), super(i2), this.message = i2, r2.name && "string" == typeof r2.name ? this.name = r2.name : this.name = "Layerr", r2.cause && Object.defineProperty(this, "_cause", { value: r2.cause }), Object.defineProperty(this, "_info", { value: {} }), r2.info && "object" == typeof r2.info && Object.assign(this._info, r2.info), Error.captureStackTrace) { + const t3 = r2.constructorOpt || this.constructor; + Error.captureStackTrace(this, t3); + } + } + static cause(t2) { + return s(t2), t2._cause && a(t2._cause) ? t2._cause : null; + } + static fullStack(t2) { + s(t2); + const e2 = u.cause(t2); + return e2 ? `${t2.stack} +caused by: ${u.fullStack(e2)}` : t2.stack ?? ""; + } + static info(t2) { + s(t2); + const e2 = {}, n2 = u.cause(t2); + return n2 && Object.assign(e2, u.info(n2)), t2._info && Object.assign(e2, t2._info), e2; + } + toString() { + let t2 = this.name || this.constructor.name || this.constructor.prototype.name; + return this.message && (t2 = `${t2}: ${this.message}`), t2; + } +} +var c = n(47), l = n.n(c); +const h = "__PATH_SEPARATOR_POSIX__", p = "__PATH_SEPARATOR_WINDOWS__"; +function f(t2) { + try { + const e2 = t2.replace(/\//g, h).replace(/\\\\/g, p); + return encodeURIComponent(e2).split(p).join("\\\\").split(h).join("/"); + } catch (t3) { + throw new u(t3, "Failed encoding path"); + } +} +function d(t2) { + return t2.startsWith("/") ? t2 : "/" + t2; +} +function g(t2) { + let e2 = t2; + return "/" !== e2[0] && (e2 = "/" + e2), /^.+\/$/.test(e2) && (e2 = e2.substr(0, e2.length - 1)), e2; +} +function m(t2) { + let e2 = new (i$1())(t2).pathname; + return e2.length <= 0 && (e2 = "/"), g(e2); +} +function y() { + for (var t2 = arguments.length, e2 = new Array(t2), n2 = 0; n2 < t2; n2++) e2[n2] = arguments[n2]; + return function() { + return function(t3) { + var e3 = []; + if (0 === t3.length) return ""; + if ("string" != typeof t3[0]) throw new TypeError("Url must be a string. Received " + t3[0]); + if (t3[0].match(/^[^/:]+:\/*$/) && t3.length > 1) { + var n3 = t3.shift(); + t3[0] = n3 + t3[0]; + } + t3[0].match(/^file:\/\/\//) ? t3[0] = t3[0].replace(/^([^/:]+):\/*/, "$1:///") : t3[0] = t3[0].replace(/^([^/:]+):\/*/, "$1://"); + for (var r2 = 0; r2 < t3.length; r2++) { + var o2 = t3[r2]; + if ("string" != typeof o2) throw new TypeError("Url must be a string. Received " + o2); + "" !== o2 && (r2 > 0 && (o2 = o2.replace(/^[\/]+/, "")), o2 = r2 < t3.length - 1 ? o2.replace(/[\/]+$/, "") : o2.replace(/[\/]+$/, "/"), e3.push(o2)); + } + var i2 = e3.join("/"), s2 = (i2 = i2.replace(/\/(\?|&|#[^!])/g, "$1")).split("?"); + return s2.shift() + (s2.length > 0 ? "?" : "") + s2.join("&"); + }("object" == typeof arguments[0] ? arguments[0] : [].slice.call(arguments)); + }(e2.reduce((t3, e3, n3) => ((0 === n3 || "/" !== e3 || "/" === e3 && "/" !== t3[t3.length - 1]) && t3.push(e3), t3), [])); +} +var v = n(542), b = n.n(v); +const w = "abcdef0123456789"; +function x(t2, e2) { + const n2 = t2.url.replace("//", ""), r2 = -1 == n2.indexOf("/") ? "/" : n2.slice(n2.indexOf("/")), o2 = t2.method ? t2.method.toUpperCase() : "GET", i2 = !!/(^|,)\s*auth\s*($|,)/.test(e2.qop) && "auth", s2 = `00000000${e2.nc}`.slice(-8), a2 = function(t3, e3, n3, r3, o3, i3, s3) { + const a3 = s3 || b()(`${e3}:${n3}:${r3}`); + return t3 && "md5-sess" === t3.toLowerCase() ? b()(`${a3}:${o3}:${i3}`) : a3; + }(e2.algorithm, e2.username, e2.realm, e2.password, e2.nonce, e2.cnonce, e2.ha1), u2 = b()(`${o2}:${r2}`), c2 = i2 ? b()(`${a2}:${e2.nonce}:${s2}:${e2.cnonce}:${i2}:${u2}`) : b()(`${a2}:${e2.nonce}:${u2}`), l2 = { username: e2.username, realm: e2.realm, nonce: e2.nonce, uri: r2, qop: i2, response: c2, nc: s2, cnonce: e2.cnonce, algorithm: e2.algorithm, opaque: e2.opaque }, h2 = []; + for (const t3 in l2) l2[t3] && ("qop" === t3 || "nc" === t3 || "algorithm" === t3 ? h2.push(`${t3}=${l2[t3]}`) : h2.push(`${t3}="${l2[t3]}"`)); + return `Digest ${h2.join(", ")}`; +} +function N(t2) { + return "digest" === (t2.headers && t2.headers.get("www-authenticate") || "").split(/\s/)[0].toLowerCase(); +} +var P = n(101), A = n.n(P); +function O(t2) { + return A().decode(t2); +} +function E(t2, e2) { + var n2; + return `Basic ${n2 = `${t2}:${e2}`, A().encode(n2)}`; +} +const T = "undefined" != typeof WorkerGlobalScope && self instanceof WorkerGlobalScope ? self : "undefined" != typeof window ? window : globalThis, j = T.fetch.bind(T), S = T.Request, $$1 = T.Response; +let C = function(t2) { + return t2.Auto = "auto", t2.Digest = "digest", t2.None = "none", t2.Password = "password", t2.Token = "token", t2; +}({}), I = function(t2) { + return t2.DataTypeNoLength = "data-type-no-length", t2.InvalidAuthType = "invalid-auth-type", t2.InvalidOutputFormat = "invalid-output-format", t2.LinkUnsupportedAuthType = "link-unsupported-auth", t2.InvalidUpdateRange = "invalid-update-range", t2.NotSupported = "not-supported", t2; +}({}); +function k(t2, e2, n2, r2, o2) { + switch (t2.authType) { + case C.Auto: + e2 && n2 && (t2.headers.Authorization = E(e2, n2)); + break; + case C.Digest: + t2.digest = /* @__PURE__ */ function(t3, e3, n3) { + return { username: t3, password: e3, ha1: n3, nc: 0, algorithm: "md5", hasDigestAuth: false }; + }(e2, n2, o2); + break; + case C.None: + break; + case C.Password: + t2.headers.Authorization = E(e2, n2); + break; + case C.Token: + t2.headers.Authorization = `${(i2 = r2).token_type} ${i2.access_token}`; + break; + default: + throw new u({ info: { code: I.InvalidAuthType } }, `Invalid auth type: ${t2.authType}`); + } + var i2; +} +n(345), n(800); +const R = "@@HOTPATCHER", L = () => { +}; +function _(t2) { + return { original: t2, methods: [t2], final: false }; +} +class M { + constructor() { + this._configuration = { registry: {}, getEmptyAction: "null" }, this.__type__ = R; + } + get configuration() { + return this._configuration; + } + get getEmptyAction() { + return this.configuration.getEmptyAction; + } + set getEmptyAction(t2) { + this.configuration.getEmptyAction = t2; + } + control(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + if (!t2 || t2.__type__ !== R) throw new Error("Failed taking control of target HotPatcher instance: Invalid type or object"); + return Object.keys(t2.configuration.registry).forEach((n2) => { + this.configuration.registry.hasOwnProperty(n2) ? e2 && (this.configuration.registry[n2] = Object.assign({}, t2.configuration.registry[n2])) : this.configuration.registry[n2] = Object.assign({}, t2.configuration.registry[n2]); + }), t2._configuration = this.configuration, this; + } + execute(t2) { + const e2 = this.get(t2) || L; + for (var n2 = arguments.length, r2 = new Array(n2 > 1 ? n2 - 1 : 0), o2 = 1; o2 < n2; o2++) r2[o2 - 1] = arguments[o2]; + return e2(...r2); + } + get(t2) { + const e2 = this.configuration.registry[t2]; + if (!e2) switch (this.getEmptyAction) { + case "null": + return null; + case "throw": + throw new Error(`Failed handling method request: No method provided for override: ${t2}`); + default: + throw new Error(`Failed handling request which resulted in an empty method: Invalid empty-action specified: ${this.getEmptyAction}`); + } + return function() { + for (var t3 = arguments.length, e3 = new Array(t3), n2 = 0; n2 < t3; n2++) e3[n2] = arguments[n2]; + if (0 === e3.length) throw new Error("Failed creating sequence: No functions provided"); + return function() { + for (var t4 = arguments.length, n3 = new Array(t4), r2 = 0; r2 < t4; r2++) n3[r2] = arguments[r2]; + let o2 = n3; + const i2 = this; + for (; e3.length > 0; ) o2 = [e3.shift().apply(i2, o2)]; + return o2[0]; + }; + }(...e2.methods); + } + isPatched(t2) { + return !!this.configuration.registry[t2]; + } + patch(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const { chain: r2 = false } = n2; + if (this.configuration.registry[t2] && this.configuration.registry[t2].final) throw new Error(`Failed patching '${t2}': Method marked as being final`); + if ("function" != typeof e2) throw new Error(`Failed patching '${t2}': Provided method is not a function`); + if (r2) this.configuration.registry[t2] ? this.configuration.registry[t2].methods.push(e2) : this.configuration.registry[t2] = _(e2); + else if (this.isPatched(t2)) { + const { original: n3 } = this.configuration.registry[t2]; + this.configuration.registry[t2] = Object.assign(_(e2), { original: n3 }); + } else this.configuration.registry[t2] = _(e2); + return this; + } + patchInline(t2, e2) { + this.isPatched(t2) || this.patch(t2, e2); + for (var n2 = arguments.length, r2 = new Array(n2 > 2 ? n2 - 2 : 0), o2 = 2; o2 < n2; o2++) r2[o2 - 2] = arguments[o2]; + return this.execute(t2, ...r2); + } + plugin(t2) { + for (var e2 = arguments.length, n2 = new Array(e2 > 1 ? e2 - 1 : 0), r2 = 1; r2 < e2; r2++) n2[r2 - 1] = arguments[r2]; + return n2.forEach((e3) => { + this.patch(t2, e3, { chain: true }); + }), this; + } + restore(t2) { + if (!this.isPatched(t2)) throw new Error(`Failed restoring method: No method present for key: ${t2}`); + if ("function" != typeof this.configuration.registry[t2].original) throw new Error(`Failed restoring method: Original method not found or of invalid type for key: ${t2}`); + return this.configuration.registry[t2].methods = [this.configuration.registry[t2].original], this; + } + setFinal(t2) { + if (!this.configuration.registry.hasOwnProperty(t2)) throw new Error(`Failed marking '${t2}' as final: No method found for key`); + return this.configuration.registry[t2].final = true, this; + } +} +let U = null; +function F() { + return U || (U = new M()), U; +} +function D(t2) { + return function(t3) { + if ("object" != typeof t3 || null === t3 || "[object Object]" != Object.prototype.toString.call(t3)) return false; + if (null === Object.getPrototypeOf(t3)) return true; + let e2 = t3; + for (; null !== Object.getPrototypeOf(e2); ) e2 = Object.getPrototypeOf(e2); + return Object.getPrototypeOf(t3) === e2; + }(t2) ? Object.assign({}, t2) : Object.setPrototypeOf(Object.assign({}, t2), Object.getPrototypeOf(t2)); +} +function B() { + for (var t2 = arguments.length, e2 = new Array(t2), n2 = 0; n2 < t2; n2++) e2[n2] = arguments[n2]; + let r2 = null, o2 = [...e2]; + for (; o2.length > 0; ) { + const t3 = o2.shift(); + r2 = r2 ? W(r2, t3) : D(t3); + } + return r2; +} +function W(t2, e2) { + const n2 = D(t2); + return Object.keys(e2).forEach((t3) => { + n2.hasOwnProperty(t3) ? Array.isArray(e2[t3]) ? n2[t3] = Array.isArray(n2[t3]) ? [...n2[t3], ...e2[t3]] : [...e2[t3]] : "object" == typeof e2[t3] && e2[t3] ? n2[t3] = "object" == typeof n2[t3] && n2[t3] ? W(n2[t3], e2[t3]) : D(e2[t3]) : n2[t3] = e2[t3] : n2[t3] = e2[t3]; + }), n2; +} +function V(t2) { + const e2 = {}; + for (const n2 of t2.keys()) e2[n2] = t2.get(n2); + return e2; +} +function z() { + for (var t2 = arguments.length, e2 = new Array(t2), n2 = 0; n2 < t2; n2++) e2[n2] = arguments[n2]; + if (0 === e2.length) return {}; + const r2 = {}; + return e2.reduce((t3, e3) => (Object.keys(e3).forEach((n3) => { + const o2 = n3.toLowerCase(); + r2.hasOwnProperty(o2) ? t3[r2[o2]] = e3[n3] : (r2[o2] = n3, t3[n3] = e3[n3]); + }), t3), {}); +} +n(805); +const G = "function" == typeof ArrayBuffer, { toString: q } = Object.prototype; +function H(t2) { + return G && (t2 instanceof ArrayBuffer || "[object ArrayBuffer]" === q.call(t2)); +} +function X(t2) { + return null != t2 && null != t2.constructor && "function" == typeof t2.constructor.isBuffer && t2.constructor.isBuffer(t2); +} +function Z(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +} +function Y(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const K = Z(function(t2) { + const e2 = t2._digest; + return delete t2._digest, e2.hasDigestAuth && (t2 = B(t2, { headers: { Authorization: x(t2, e2) } })), Y(et(t2), function(n2) { + let r2 = false; + return o2 = function(t3) { + return r2 ? t3 : n2; + }, (i2 = function() { + if (401 == n2.status) return e2.hasDigestAuth = function(t3, e3) { + if (!N(t3)) return false; + const n3 = /([a-z0-9_-]+)=(?:"([^"]+)"|([a-z0-9_-]+))/gi; + for (; ; ) { + const r3 = t3.headers && t3.headers.get("www-authenticate") || "", o3 = n3.exec(r3); + if (!o3) break; + e3[o3[1]] = o3[2] || o3[3]; + } + return e3.nc += 1, e3.cnonce = function() { + let t4 = ""; + for (let e4 = 0; e4 < 32; ++e4) t4 = `${t4}${w[Math.floor(16 * Math.random())]}`; + return t4; + }(), true; + }(n2, e2), function() { + if (e2.hasDigestAuth) return Y(et(t2 = B(t2, { headers: { Authorization: x(t2, e2) } })), function(t3) { + return 401 == t3.status ? e2.hasDigestAuth = false : e2.nc++, r2 = true, t3; + }); + }(); + e2.nc++; + }()) && i2.then ? i2.then(o2) : o2(i2); + var o2, i2; + }); +}), J = Z(function(t2, e2) { + return Y(et(t2), function(n2) { + return n2.ok ? (e2.authType = C.Password, n2) : 401 == n2.status && N(n2) ? (e2.authType = C.Digest, k(e2, e2.username, e2.password, void 0, void 0), t2._digest = e2.digest, K(t2)) : n2; + }); +}), Q = Z(function(t2, e2) { + return e2.authType === C.Auto ? J(t2, e2) : t2._digest ? K(t2) : et(t2); +}); +function tt(t2, e2, n2) { + const r2 = D(t2); + return r2.headers = z(e2.headers, r2.headers || {}, n2.headers || {}), void 0 !== n2.data && (r2.data = n2.data), n2.signal && (r2.signal = n2.signal), e2.httpAgent && (r2.httpAgent = e2.httpAgent), e2.httpsAgent && (r2.httpsAgent = e2.httpsAgent), e2.digest && (r2._digest = e2.digest), "boolean" == typeof e2.withCredentials && (r2.withCredentials = e2.withCredentials), r2; +} +function et(t2) { + const e2 = F(); + return e2.patchInline("request", (t3) => e2.patchInline("fetch", j, t3.url, function(t4) { + let e3 = {}; + const n2 = { method: t4.method }; + if (t4.headers && (e3 = z(e3, t4.headers)), void 0 !== t4.data) { + const [r2, o2] = function(t5) { + if ("string" == typeof t5) return [t5, {}]; + if (X(t5)) return [t5, {}]; + if (H(t5)) return [t5, {}]; + if (t5 && "object" == typeof t5) return [JSON.stringify(t5), { "content-type": "application/json" }]; + throw new Error("Unable to convert request body: Unexpected body type: " + typeof t5); + }(t4.data); + n2.body = r2, e3 = z(e3, o2); + } + return t4.signal && (n2.signal = t4.signal), t4.withCredentials && (n2.credentials = "include"), n2.headers = e3, n2; + }(t3)), t2); +} +var nt = n(285); +const rt = (t2) => { + if ("string" != typeof t2) throw new TypeError("invalid pattern"); + if (t2.length > 65536) throw new TypeError("pattern is too long"); +}, ot = { "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true], "[:alpha:]": ["\\p{L}\\p{Nl}", true], "[:ascii:]": ["\\x00-\\x7f", false], "[:blank:]": ["\\p{Zs}\\t", true], "[:cntrl:]": ["\\p{Cc}", true], "[:digit:]": ["\\p{Nd}", true], "[:graph:]": ["\\p{Z}\\p{C}", true, true], "[:lower:]": ["\\p{Ll}", true], "[:print:]": ["\\p{C}", true], "[:punct:]": ["\\p{P}", true], "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true], "[:upper:]": ["\\p{Lu}", true], "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true], "[:xdigit:]": ["A-Fa-f0-9", false] }, it = (t2) => t2.replace(/[[\]\\-]/g, "\\$&"), st = (t2) => t2.join(""), at = (t2, e2) => { + const n2 = e2; + if ("[" !== t2.charAt(n2)) throw new Error("not in a brace expression"); + const r2 = [], o2 = []; + let i2 = n2 + 1, s2 = false, a2 = false, u2 = false, c2 = false, l2 = n2, h2 = ""; + t: for (; i2 < t2.length; ) { + const e3 = t2.charAt(i2); + if ("!" !== e3 && "^" !== e3 || i2 !== n2 + 1) { + if ("]" === e3 && s2 && !u2) { + l2 = i2 + 1; + break; + } + if (s2 = true, "\\" !== e3 || u2) { + if ("[" === e3 && !u2) { + for (const [e4, [s3, u3, c3]] of Object.entries(ot)) if (t2.startsWith(e4, i2)) { + if (h2) return ["$.", false, t2.length - n2, true]; + i2 += e4.length, c3 ? o2.push(s3) : r2.push(s3), a2 = a2 || u3; + continue t; + } + } + u2 = false, h2 ? (e3 > h2 ? r2.push(it(h2) + "-" + it(e3)) : e3 === h2 && r2.push(it(e3)), h2 = "", i2++) : t2.startsWith("-]", i2 + 1) ? (r2.push(it(e3 + "-")), i2 += 2) : t2.startsWith("-", i2 + 1) ? (h2 = e3, i2 += 2) : (r2.push(it(e3)), i2++); + } else u2 = true, i2++; + } else c2 = true, i2++; + } + if (l2 < i2) return ["", false, 0, false]; + if (!r2.length && !o2.length) return ["$.", false, t2.length - n2, true]; + if (0 === o2.length && 1 === r2.length && /^\\?.$/.test(r2[0]) && !c2) { + return [(p2 = 2 === r2[0].length ? r2[0].slice(-1) : r2[0], p2.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&")), false, l2 - n2, false]; + } + var p2; + const f2 = "[" + (c2 ? "^" : "") + st(r2) + "]", d2 = "[" + (c2 ? "" : "^") + st(o2) + "]"; + return [r2.length && o2.length ? "(" + f2 + "|" + d2 + ")" : r2.length ? f2 : d2, a2, l2 - n2, true]; +}, ut = function(t2) { + let { windowsPathsNoEscape: e2 = false } = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2 ? t2.replace(/\[([^\/\\])\]/g, "$1") : t2.replace(/((?!\\).|^)\[([^\/\\])\]/g, "$1$2").replace(/\\([^\/])/g, "$1"); +}, ct = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]), lt = (t2) => ct.has(t2), ht = "(?!\\.)", pt = /* @__PURE__ */ new Set(["[", "."]), ft = /* @__PURE__ */ new Set(["..", "."]), dt = new Set("().*{}+?[]^$\\!"), gt = "[^/]", mt = gt + "*?", yt = gt + "+?"; +class vt { + type; + #t; + #e; + #n = false; + #r = []; + #o; + #i; + #s; + #a = false; + #u; + #c; + #l = false; + constructor(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + this.type = t2, t2 && (this.#e = true), this.#o = e2, this.#t = this.#o ? this.#o.#t : this, this.#u = this.#t === this ? n2 : this.#t.#u, this.#s = this.#t === this ? [] : this.#t.#s, "!" !== t2 || this.#t.#a || this.#s.push(this), this.#i = this.#o ? this.#o.#r.length : 0; + } + get hasMagic() { + if (void 0 !== this.#e) return this.#e; + for (const t2 of this.#r) if ("string" != typeof t2 && (t2.type || t2.hasMagic)) return this.#e = true; + return this.#e; + } + toString() { + return void 0 !== this.#c ? this.#c : this.type ? this.#c = this.type + "(" + this.#r.map((t2) => String(t2)).join("|") + ")" : this.#c = this.#r.map((t2) => String(t2)).join(""); + } + #h() { + if (this !== this.#t) throw new Error("should only call on root"); + if (this.#a) return this; + let t2; + for (this.toString(), this.#a = true; t2 = this.#s.pop(); ) { + if ("!" !== t2.type) continue; + let e2 = t2, n2 = e2.#o; + for (; n2; ) { + for (let r2 = e2.#i + 1; !n2.type && r2 < n2.#r.length; r2++) for (const e3 of t2.#r) { + if ("string" == typeof e3) throw new Error("string part in extglob AST??"); + e3.copyIn(n2.#r[r2]); + } + e2 = n2, n2 = e2.#o; + } + } + return this; + } + push() { + for (var t2 = arguments.length, e2 = new Array(t2), n2 = 0; n2 < t2; n2++) e2[n2] = arguments[n2]; + for (const t3 of e2) if ("" !== t3) { + if ("string" != typeof t3 && !(t3 instanceof vt && t3.#o === this)) throw new Error("invalid part: " + t3); + this.#r.push(t3); + } + } + toJSON() { + const t2 = null === this.type ? this.#r.slice().map((t3) => "string" == typeof t3 ? t3 : t3.toJSON()) : [this.type, ...this.#r.map((t3) => t3.toJSON())]; + return this.isStart() && !this.type && t2.unshift([]), this.isEnd() && (this === this.#t || this.#t.#a && "!" === this.#o?.type) && t2.push({}), t2; + } + isStart() { + if (this.#t === this) return true; + if (!this.#o?.isStart()) return false; + if (0 === this.#i) return true; + const t2 = this.#o; + for (let e2 = 0; e2 < this.#i; e2++) { + const n2 = t2.#r[e2]; + if (!(n2 instanceof vt && "!" === n2.type)) return false; + } + return true; + } + isEnd() { + if (this.#t === this) return true; + if ("!" === this.#o?.type) return true; + if (!this.#o?.isEnd()) return false; + if (!this.type) return this.#o?.isEnd(); + const t2 = this.#o ? this.#o.#r.length : 0; + return this.#i === t2 - 1; + } + copyIn(t2) { + "string" == typeof t2 ? this.push(t2) : this.push(t2.clone(this)); + } + clone(t2) { + const e2 = new vt(this.type, t2); + for (const t3 of this.#r) e2.copyIn(t3); + return e2; + } + static #p(t2, e2, n2, r2) { + let o2 = false, i2 = false, s2 = -1, a2 = false; + if (null === e2.type) { + let u3 = n2, c3 = ""; + for (; u3 < t2.length; ) { + const n3 = t2.charAt(u3++); + if (o2 || "\\" === n3) o2 = !o2, c3 += n3; + else if (i2) u3 === s2 + 1 ? "^" !== n3 && "!" !== n3 || (a2 = true) : "]" !== n3 || u3 === s2 + 2 && a2 || (i2 = false), c3 += n3; + else if ("[" !== n3) if (r2.noext || !lt(n3) || "(" !== t2.charAt(u3)) c3 += n3; + else { + e2.push(c3), c3 = ""; + const o3 = new vt(n3, e2); + u3 = vt.#p(t2, o3, u3, r2), e2.push(o3); + } + else i2 = true, s2 = u3, a2 = false, c3 += n3; + } + return e2.push(c3), u3; + } + let u2 = n2 + 1, c2 = new vt(null, e2); + const l2 = []; + let h2 = ""; + for (; u2 < t2.length; ) { + const n3 = t2.charAt(u2++); + if (o2 || "\\" === n3) o2 = !o2, h2 += n3; + else if (i2) u2 === s2 + 1 ? "^" !== n3 && "!" !== n3 || (a2 = true) : "]" !== n3 || u2 === s2 + 2 && a2 || (i2 = false), h2 += n3; + else if ("[" !== n3) if (lt(n3) && "(" === t2.charAt(u2)) { + c2.push(h2), h2 = ""; + const e3 = new vt(n3, c2); + c2.push(e3), u2 = vt.#p(t2, e3, u2, r2); + } else if ("|" !== n3) { + if (")" === n3) return "" === h2 && 0 === e2.#r.length && (e2.#l = true), c2.push(h2), h2 = "", e2.push(...l2, c2), u2; + h2 += n3; + } else c2.push(h2), h2 = "", l2.push(c2), c2 = new vt(null, e2); + else i2 = true, s2 = u2, a2 = false, h2 += n3; + } + return e2.type = null, e2.#e = void 0, e2.#r = [t2.substring(n2 - 1)], u2; + } + static fromGlob(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + const n2 = new vt(null, void 0, e2); + return vt.#p(t2, n2, 0, e2), n2; + } + toMMPattern() { + if (this !== this.#t) return this.#t.toMMPattern(); + const t2 = this.toString(), [e2, n2, r2, o2] = this.toRegExpSource(); + if (!(r2 || this.#e || this.#u.nocase && !this.#u.nocaseMagicOnly && t2.toUpperCase() !== t2.toLowerCase())) return n2; + const i2 = (this.#u.nocase ? "i" : "") + (o2 ? "u" : ""); + return Object.assign(new RegExp(`^${e2}$`, i2), { _src: e2, _glob: t2 }); + } + get options() { + return this.#u; + } + toRegExpSource(t2) { + const e2 = t2 ?? !!this.#u.dot; + if (this.#t === this && this.#h(), !this.type) { + const n3 = this.isStart() && this.isEnd(), r3 = this.#r.map((e3) => { + const [r4, o4, i4, s3] = "string" == typeof e3 ? vt.#f(e3, this.#e, n3) : e3.toRegExpSource(t2); + return this.#e = this.#e || i4, this.#n = this.#n || s3, r4; + }).join(""); + let o3 = ""; + if (this.isStart() && "string" == typeof this.#r[0] && (1 !== this.#r.length || !ft.has(this.#r[0]))) { + const n4 = pt, i4 = e2 && n4.has(r3.charAt(0)) || r3.startsWith("\\.") && n4.has(r3.charAt(2)) || r3.startsWith("\\.\\.") && n4.has(r3.charAt(4)), s3 = !e2 && !t2 && n4.has(r3.charAt(0)); + o3 = i4 ? "(?!(?:^|/)\\.\\.?(?:$|/))" : s3 ? ht : ""; + } + let i3 = ""; + return this.isEnd() && this.#t.#a && "!" === this.#o?.type && (i3 = "(?:$|\\/)"), [o3 + r3 + i3, ut(r3), this.#e = !!this.#e, this.#n]; + } + const n2 = "*" === this.type || "+" === this.type, r2 = "!" === this.type ? "(?:(?!(?:" : "(?:"; + let o2 = this.#d(e2); + if (this.isStart() && this.isEnd() && !o2 && "!" !== this.type) { + const t3 = this.toString(); + return this.#r = [t3], this.type = null, this.#e = void 0, [t3, ut(this.toString()), false, false]; + } + let i2 = !n2 || t2 || e2 ? "" : this.#d(true); + i2 === o2 && (i2 = ""), i2 && (o2 = `(?:${o2})(?:${i2})*?`); + let s2 = ""; + return s2 = "!" === this.type && this.#l ? (this.isStart() && !e2 ? ht : "") + yt : r2 + o2 + ("!" === this.type ? "))" + (!this.isStart() || e2 || t2 ? "" : ht) + mt + ")" : "@" === this.type ? ")" : "?" === this.type ? ")?" : "+" === this.type && i2 ? ")" : "*" === this.type && i2 ? ")?" : `)${this.type}`), [s2, ut(o2), this.#e = !!this.#e, this.#n]; + } + #d(t2) { + return this.#r.map((e2) => { + if ("string" == typeof e2) throw new Error("string type in extglob ast??"); + const [n2, r2, o2, i2] = e2.toRegExpSource(t2); + return this.#n = this.#n || i2, n2; + }).filter((t3) => !(this.isStart() && this.isEnd() && !t3)).join("|"); + } + static #f(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], r2 = false, o2 = "", i2 = false; + for (let s2 = 0; s2 < t2.length; s2++) { + const a2 = t2.charAt(s2); + if (r2) r2 = false, o2 += (dt.has(a2) ? "\\" : "") + a2; + else if ("\\" !== a2) { + if ("[" === a2) { + const [n3, r3, a3, u2] = at(t2, s2); + if (a3) { + o2 += n3, i2 = i2 || r3, s2 += a3 - 1, e2 = e2 || u2; + continue; + } + } + "*" !== a2 ? "?" !== a2 ? o2 += a2.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&") : (o2 += gt, e2 = true) : (o2 += n2 && "*" === t2 ? yt : mt, e2 = true); + } else s2 === t2.length - 1 ? o2 += "\\\\" : r2 = true; + } + return [o2, ut(t2), !!e2, i2]; + } +} +const bt = function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + return rt(e2), !(!n2.nocomment && "#" === e2.charAt(0)) && new Gt(e2, n2).match(t2); +}, wt = /^\*+([^+@!?\*\[\(]*)$/, xt = (t2) => (e2) => !e2.startsWith(".") && e2.endsWith(t2), Nt = (t2) => (e2) => e2.endsWith(t2), Pt = (t2) => (t2 = t2.toLowerCase(), (e2) => !e2.startsWith(".") && e2.toLowerCase().endsWith(t2)), At = (t2) => (t2 = t2.toLowerCase(), (e2) => e2.toLowerCase().endsWith(t2)), Ot = /^\*+\.\*+$/, Et = (t2) => !t2.startsWith(".") && t2.includes("."), Tt = (t2) => "." !== t2 && ".." !== t2 && t2.includes("."), jt = /^\.\*+$/, St = (t2) => "." !== t2 && ".." !== t2 && t2.startsWith("."), $t = /^\*+$/, Ct = (t2) => 0 !== t2.length && !t2.startsWith("."), It = (t2) => 0 !== t2.length && "." !== t2 && ".." !== t2, kt = /^\?+([^+@!?\*\[\(]*)?$/, Rt = (t2) => { + let [e2, n2 = ""] = t2; + const r2 = Ut([e2]); + return n2 ? (n2 = n2.toLowerCase(), (t3) => r2(t3) && t3.toLowerCase().endsWith(n2)) : r2; +}, Lt = (t2) => { + let [e2, n2 = ""] = t2; + const r2 = Ft([e2]); + return n2 ? (n2 = n2.toLowerCase(), (t3) => r2(t3) && t3.toLowerCase().endsWith(n2)) : r2; +}, _t = (t2) => { + let [e2, n2 = ""] = t2; + const r2 = Ft([e2]); + return n2 ? (t3) => r2(t3) && t3.endsWith(n2) : r2; +}, Mt = (t2) => { + let [e2, n2 = ""] = t2; + const r2 = Ut([e2]); + return n2 ? (t3) => r2(t3) && t3.endsWith(n2) : r2; +}, Ut = (t2) => { + let [e2] = t2; + const n2 = e2.length; + return (t3) => t3.length === n2 && !t3.startsWith("."); +}, Ft = (t2) => { + let [e2] = t2; + const n2 = e2.length; + return (t3) => t3.length === n2 && "." !== t3 && ".." !== t3; +}, Dt = "object" == typeof process$1$1 && process$1$1 ? "object" == typeof define_process_env_default$1 && define_process_env_default$1 && define_process_env_default$1.__MINIMATCH_TESTING_PLATFORM__ || process$1$1.platform : "posix"; +bt.sep = "win32" === Dt ? "\\" : "/"; +const Bt = Symbol("globstar **"); +bt.GLOBSTAR = Bt, bt.filter = function(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return (n2) => bt(n2, t2, e2); +}; +const Wt = function(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return Object.assign({}, t2, e2); +}; +bt.defaults = (t2) => { + if (!t2 || "object" != typeof t2 || !Object.keys(t2).length) return bt; + const e2 = bt; + return Object.assign(function(n2, r2) { + return e2(n2, r2, Wt(t2, arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {})); + }, { Minimatch: class extends e2.Minimatch { + constructor(e3) { + super(e3, Wt(t2, arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {})); + } + static defaults(n2) { + return e2.defaults(Wt(t2, n2)).Minimatch; + } + }, AST: class extends e2.AST { + constructor(e3, n2) { + super(e3, n2, Wt(t2, arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {})); + } + static fromGlob(n2) { + let r2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2.AST.fromGlob(n2, Wt(t2, r2)); + } + }, unescape: function(n2) { + let r2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2.unescape(n2, Wt(t2, r2)); + }, escape: function(n2) { + let r2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2.escape(n2, Wt(t2, r2)); + }, filter: function(n2) { + let r2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2.filter(n2, Wt(t2, r2)); + }, defaults: (n2) => e2.defaults(Wt(t2, n2)), makeRe: function(n2) { + let r2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2.makeRe(n2, Wt(t2, r2)); + }, braceExpand: function(n2) { + let r2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2.braceExpand(n2, Wt(t2, r2)); + }, match: function(n2, r2) { + let o2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + return e2.match(n2, r2, Wt(t2, o2)); + }, sep: e2.sep, GLOBSTAR: Bt }); +}; +const Vt = function(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return rt(t2), e2.nobrace || !/\{(?:(?!\{).)*\}/.test(t2) ? [t2] : nt(t2); +}; +bt.braceExpand = Vt, bt.makeRe = function(t2) { + return new Gt(t2, arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}).makeRe(); +}, bt.match = function(t2, e2) { + const n2 = new Gt(e2, arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}); + return t2 = t2.filter((t3) => n2.match(t3)), n2.options.nonull && !t2.length && t2.push(e2), t2; +}; +const zt = /[?*]|[+@!]\(.*?\)|\[|\]/; +class Gt { + options; + set; + pattern; + windowsPathsNoEscape; + nonegate; + negate; + comment; + empty; + preserveMultipleSlashes; + partial; + globSet; + globParts; + nocase; + isWindows; + platform; + windowsNoMagicRoot; + regexp; + constructor(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + rt(t2), e2 = e2 || {}, this.options = e2, this.pattern = t2, this.platform = e2.platform || Dt, this.isWindows = "win32" === this.platform, this.windowsPathsNoEscape = !!e2.windowsPathsNoEscape || false === e2.allowWindowsEscape, this.windowsPathsNoEscape && (this.pattern = this.pattern.replace(/\\/g, "/")), this.preserveMultipleSlashes = !!e2.preserveMultipleSlashes, this.regexp = null, this.negate = false, this.nonegate = !!e2.nonegate, this.comment = false, this.empty = false, this.partial = !!e2.partial, this.nocase = !!this.options.nocase, this.windowsNoMagicRoot = void 0 !== e2.windowsNoMagicRoot ? e2.windowsNoMagicRoot : !(!this.isWindows || !this.nocase), this.globSet = [], this.globParts = [], this.set = [], this.make(); + } + hasMagic() { + if (this.options.magicalBraces && this.set.length > 1) return true; + for (const t2 of this.set) for (const e2 of t2) if ("string" != typeof e2) return true; + return false; + } + debug() { + } + make() { + const t2 = this.pattern, e2 = this.options; + if (!e2.nocomment && "#" === t2.charAt(0)) return void (this.comment = true); + if (!t2) return void (this.empty = true); + this.parseNegate(), this.globSet = [...new Set(this.braceExpand())], e2.debug && (this.debug = function() { + return console.error(...arguments); + }), this.debug(this.pattern, this.globSet); + const n2 = this.globSet.map((t3) => this.slashSplit(t3)); + this.globParts = this.preprocess(n2), this.debug(this.pattern, this.globParts); + let r2 = this.globParts.map((t3, e3, n3) => { + if (this.isWindows && this.windowsNoMagicRoot) { + const e4 = !("" !== t3[0] || "" !== t3[1] || "?" !== t3[2] && zt.test(t3[2]) || zt.test(t3[3])), n4 = /^[a-z]:/i.test(t3[0]); + if (e4) return [...t3.slice(0, 4), ...t3.slice(4).map((t4) => this.parse(t4))]; + if (n4) return [t3[0], ...t3.slice(1).map((t4) => this.parse(t4))]; + } + return t3.map((t4) => this.parse(t4)); + }); + if (this.debug(this.pattern, r2), this.set = r2.filter((t3) => -1 === t3.indexOf(false)), this.isWindows) for (let t3 = 0; t3 < this.set.length; t3++) { + const e3 = this.set[t3]; + "" === e3[0] && "" === e3[1] && "?" === this.globParts[t3][2] && "string" == typeof e3[3] && /^[a-z]:$/i.test(e3[3]) && (e3[2] = "?"); + } + this.debug(this.pattern, this.set); + } + preprocess(t2) { + if (this.options.noglobstar) for (let e3 = 0; e3 < t2.length; e3++) for (let n2 = 0; n2 < t2[e3].length; n2++) "**" === t2[e3][n2] && (t2[e3][n2] = "*"); + const { optimizationLevel: e2 = 1 } = this.options; + return e2 >= 2 ? (t2 = this.firstPhasePreProcess(t2), t2 = this.secondPhasePreProcess(t2)) : t2 = e2 >= 1 ? this.levelOneOptimize(t2) : this.adjascentGlobstarOptimize(t2), t2; + } + adjascentGlobstarOptimize(t2) { + return t2.map((t3) => { + let e2 = -1; + for (; -1 !== (e2 = t3.indexOf("**", e2 + 1)); ) { + let n2 = e2; + for (; "**" === t3[n2 + 1]; ) n2++; + n2 !== e2 && t3.splice(e2, n2 - e2); + } + return t3; + }); + } + levelOneOptimize(t2) { + return t2.map((t3) => 0 === (t3 = t3.reduce((t4, e2) => { + const n2 = t4[t4.length - 1]; + return "**" === e2 && "**" === n2 ? t4 : ".." === e2 && n2 && ".." !== n2 && "." !== n2 && "**" !== n2 ? (t4.pop(), t4) : (t4.push(e2), t4); + }, [])).length ? [""] : t3); + } + levelTwoFileOptimize(t2) { + Array.isArray(t2) || (t2 = this.slashSplit(t2)); + let e2 = false; + do { + if (e2 = false, !this.preserveMultipleSlashes) { + for (let n3 = 1; n3 < t2.length - 1; n3++) { + const r2 = t2[n3]; + 1 === n3 && "" === r2 && "" === t2[0] || "." !== r2 && "" !== r2 || (e2 = true, t2.splice(n3, 1), n3--); + } + "." !== t2[0] || 2 !== t2.length || "." !== t2[1] && "" !== t2[1] || (e2 = true, t2.pop()); + } + let n2 = 0; + for (; -1 !== (n2 = t2.indexOf("..", n2 + 1)); ) { + const r2 = t2[n2 - 1]; + r2 && "." !== r2 && ".." !== r2 && "**" !== r2 && (e2 = true, t2.splice(n2 - 1, 2), n2 -= 2); + } + } while (e2); + return 0 === t2.length ? [""] : t2; + } + firstPhasePreProcess(t2) { + let e2 = false; + do { + e2 = false; + for (let n2 of t2) { + let r2 = -1; + for (; -1 !== (r2 = n2.indexOf("**", r2 + 1)); ) { + let o3 = r2; + for (; "**" === n2[o3 + 1]; ) o3++; + o3 > r2 && n2.splice(r2 + 1, o3 - r2); + let i2 = n2[r2 + 1]; + const s2 = n2[r2 + 2], a2 = n2[r2 + 3]; + if (".." !== i2) continue; + if (!s2 || "." === s2 || ".." === s2 || !a2 || "." === a2 || ".." === a2) continue; + e2 = true, n2.splice(r2, 1); + const u2 = n2.slice(0); + u2[r2] = "**", t2.push(u2), r2--; + } + if (!this.preserveMultipleSlashes) { + for (let t3 = 1; t3 < n2.length - 1; t3++) { + const r3 = n2[t3]; + 1 === t3 && "" === r3 && "" === n2[0] || "." !== r3 && "" !== r3 || (e2 = true, n2.splice(t3, 1), t3--); + } + "." !== n2[0] || 2 !== n2.length || "." !== n2[1] && "" !== n2[1] || (e2 = true, n2.pop()); + } + let o2 = 0; + for (; -1 !== (o2 = n2.indexOf("..", o2 + 1)); ) { + const t3 = n2[o2 - 1]; + if (t3 && "." !== t3 && ".." !== t3 && "**" !== t3) { + e2 = true; + const t4 = 1 === o2 && "**" === n2[o2 + 1] ? ["."] : []; + n2.splice(o2 - 1, 2, ...t4), 0 === n2.length && n2.push(""), o2 -= 2; + } + } + } + } while (e2); + return t2; + } + secondPhasePreProcess(t2) { + for (let e2 = 0; e2 < t2.length - 1; e2++) for (let n2 = e2 + 1; n2 < t2.length; n2++) { + const r2 = this.partsMatch(t2[e2], t2[n2], !this.preserveMultipleSlashes); + if (r2) { + t2[e2] = [], t2[n2] = r2; + break; + } + } + return t2.filter((t3) => t3.length); + } + partsMatch(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], r2 = 0, o2 = 0, i2 = [], s2 = ""; + for (; r2 < t2.length && o2 < e2.length; ) if (t2[r2] === e2[o2]) i2.push("b" === s2 ? e2[o2] : t2[r2]), r2++, o2++; + else if (n2 && "**" === t2[r2] && e2[o2] === t2[r2 + 1]) i2.push(t2[r2]), r2++; + else if (n2 && "**" === e2[o2] && t2[r2] === e2[o2 + 1]) i2.push(e2[o2]), o2++; + else if ("*" !== t2[r2] || !e2[o2] || !this.options.dot && e2[o2].startsWith(".") || "**" === e2[o2]) { + if ("*" !== e2[o2] || !t2[r2] || !this.options.dot && t2[r2].startsWith(".") || "**" === t2[r2]) return false; + if ("a" === s2) return false; + s2 = "b", i2.push(e2[o2]), r2++, o2++; + } else { + if ("b" === s2) return false; + s2 = "a", i2.push(t2[r2]), r2++, o2++; + } + return t2.length === e2.length && i2; + } + parseNegate() { + if (this.nonegate) return; + const t2 = this.pattern; + let e2 = false, n2 = 0; + for (let r2 = 0; r2 < t2.length && "!" === t2.charAt(r2); r2++) e2 = !e2, n2++; + n2 && (this.pattern = t2.slice(n2)), this.negate = e2; + } + matchOne(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] && arguments[2]; + const r2 = this.options; + if (this.isWindows) { + const n3 = "string" == typeof t2[0] && /^[a-z]:$/i.test(t2[0]), r3 = !n3 && "" === t2[0] && "" === t2[1] && "?" === t2[2] && /^[a-z]:$/i.test(t2[3]), o3 = "string" == typeof e2[0] && /^[a-z]:$/i.test(e2[0]), i3 = r3 ? 3 : n3 ? 0 : void 0, s3 = !o3 && "" === e2[0] && "" === e2[1] && "?" === e2[2] && "string" == typeof e2[3] && /^[a-z]:$/i.test(e2[3]) ? 3 : o3 ? 0 : void 0; + if ("number" == typeof i3 && "number" == typeof s3) { + const [n4, r4] = [t2[i3], e2[s3]]; + n4.toLowerCase() === r4.toLowerCase() && (e2[s3] = n4, s3 > i3 ? e2 = e2.slice(s3) : i3 > s3 && (t2 = t2.slice(i3))); + } + } + const { optimizationLevel: o2 = 1 } = this.options; + o2 >= 2 && (t2 = this.levelTwoFileOptimize(t2)), this.debug("matchOne", this, { file: t2, pattern: e2 }), this.debug("matchOne", t2.length, e2.length); + for (var i2 = 0, s2 = 0, a2 = t2.length, u2 = e2.length; i2 < a2 && s2 < u2; i2++, s2++) { + this.debug("matchOne loop"); + var c2 = e2[s2], l2 = t2[i2]; + if (this.debug(e2, c2, l2), false === c2) return false; + if (c2 === Bt) { + this.debug("GLOBSTAR", [e2, c2, l2]); + var h2 = i2, p2 = s2 + 1; + if (p2 === u2) { + for (this.debug("** at the end"); i2 < a2; i2++) if ("." === t2[i2] || ".." === t2[i2] || !r2.dot && "." === t2[i2].charAt(0)) return false; + return true; + } + for (; h2 < a2; ) { + var f2 = t2[h2]; + if (this.debug("\nglobstar while", t2, h2, e2, p2, f2), this.matchOne(t2.slice(h2), e2.slice(p2), n2)) return this.debug("globstar found match!", h2, a2, f2), true; + if ("." === f2 || ".." === f2 || !r2.dot && "." === f2.charAt(0)) { + this.debug("dot detected!", t2, h2, e2, p2); + break; + } + this.debug("globstar swallow a segment, and continue"), h2++; + } + return !(!n2 || (this.debug("\n>>> no match, partial?", t2, h2, e2, p2), h2 !== a2)); + } + let o3; + if ("string" == typeof c2 ? (o3 = l2 === c2, this.debug("string match", c2, l2, o3)) : (o3 = c2.test(l2), this.debug("pattern match", c2, l2, o3)), !o3) return false; + } + if (i2 === a2 && s2 === u2) return true; + if (i2 === a2) return n2; + if (s2 === u2) return i2 === a2 - 1 && "" === t2[i2]; + throw new Error("wtf?"); + } + braceExpand() { + return Vt(this.pattern, this.options); + } + parse(t2) { + rt(t2); + const e2 = this.options; + if ("**" === t2) return Bt; + if ("" === t2) return ""; + let n2, r2 = null; + (n2 = t2.match($t)) ? r2 = e2.dot ? It : Ct : (n2 = t2.match(wt)) ? r2 = (e2.nocase ? e2.dot ? At : Pt : e2.dot ? Nt : xt)(n2[1]) : (n2 = t2.match(kt)) ? r2 = (e2.nocase ? e2.dot ? Lt : Rt : e2.dot ? _t : Mt)(n2) : (n2 = t2.match(Ot)) ? r2 = e2.dot ? Tt : Et : (n2 = t2.match(jt)) && (r2 = St); + const o2 = vt.fromGlob(t2, this.options).toMMPattern(); + return r2 && "object" == typeof o2 && Reflect.defineProperty(o2, "test", { value: r2 }), o2; + } + makeRe() { + if (this.regexp || false === this.regexp) return this.regexp; + const t2 = this.set; + if (!t2.length) return this.regexp = false, this.regexp; + const e2 = this.options, n2 = e2.noglobstar ? "[^/]*?" : e2.dot ? "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?" : "(?:(?!(?:\\/|^)\\.).)*?", r2 = new Set(e2.nocase ? ["i"] : []); + let o2 = t2.map((t3) => { + const e3 = t3.map((t4) => { + if (t4 instanceof RegExp) for (const e4 of t4.flags.split("")) r2.add(e4); + return "string" == typeof t4 ? t4.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&") : t4 === Bt ? Bt : t4._src; + }); + return e3.forEach((t4, r3) => { + const o3 = e3[r3 + 1], i3 = e3[r3 - 1]; + t4 === Bt && i3 !== Bt && (void 0 === i3 ? void 0 !== o3 && o3 !== Bt ? e3[r3 + 1] = "(?:\\/|" + n2 + "\\/)?" + o3 : e3[r3] = n2 : void 0 === o3 ? e3[r3 - 1] = i3 + "(?:\\/|" + n2 + ")?" : o3 !== Bt && (e3[r3 - 1] = i3 + "(?:\\/|\\/" + n2 + "\\/)" + o3, e3[r3 + 1] = Bt)); + }), e3.filter((t4) => t4 !== Bt).join("/"); + }).join("|"); + const [i2, s2] = t2.length > 1 ? ["(?:", ")"] : ["", ""]; + o2 = "^" + i2 + o2 + s2 + "$", this.negate && (o2 = "^(?!" + o2 + ").+$"); + try { + this.regexp = new RegExp(o2, [...r2].join("")); + } catch (t3) { + this.regexp = false; + } + return this.regexp; + } + slashSplit(t2) { + return this.preserveMultipleSlashes ? t2.split("/") : this.isWindows && /^\/\/[^\/]+/.test(t2) ? ["", ...t2.split(/\/+/)] : t2.split(/\/+/); + } + match(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : this.partial; + if (this.debug("match", t2, this.pattern), this.comment) return false; + if (this.empty) return "" === t2; + if ("/" === t2 && e2) return true; + const n2 = this.options; + this.isWindows && (t2 = t2.split("\\").join("/")); + const r2 = this.slashSplit(t2); + this.debug(this.pattern, "split", r2); + const o2 = this.set; + this.debug(this.pattern, "set", o2); + let i2 = r2[r2.length - 1]; + if (!i2) for (let t3 = r2.length - 2; !i2 && t3 >= 0; t3--) i2 = r2[t3]; + for (let t3 = 0; t3 < o2.length; t3++) { + const s2 = o2[t3]; + let a2 = r2; + if (n2.matchBase && 1 === s2.length && (a2 = [i2]), this.matchOne(a2, s2, e2)) return !!n2.flipNegate || !this.negate; + } + return !n2.flipNegate && this.negate; + } + static defaults(t2) { + return bt.defaults(t2).Minimatch; + } +} +function qt(t2) { + const e2 = new Error(`${arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ""}Invalid response: ${t2.status} ${t2.statusText}`); + return e2.status = t2.status, e2.response = t2, e2; +} +function Ht(t2, e2) { + const { status: n2 } = e2; + if (401 === n2 && t2.digest) return e2; + if (n2 >= 400) throw qt(e2); + return e2; +} +function Xt(t2, e2) { + return arguments.length > 2 && void 0 !== arguments[2] && arguments[2] ? { data: e2, headers: t2.headers ? V(t2.headers) : {}, status: t2.status, statusText: t2.statusText } : e2; +} +bt.AST = vt, bt.Minimatch = Gt, bt.escape = function(t2) { + let { windowsPathsNoEscape: e2 = false } = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + return e2 ? t2.replace(/[?*()[\]]/g, "[$&]") : t2.replace(/[?*()[\]\\]/g, "\\$&"); +}, bt.unescape = ut; +const Zt = (Yt = function(t2, e2, n2) { + let r2 = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}; + const o2 = tt({ url: y(t2.remoteURL, f(e2)), method: "COPY", headers: { Destination: y(t2.remoteURL, f(n2)), Overwrite: false === r2.overwrite ? "F" : "T", Depth: r2.shallow ? "0" : "infinity" } }, t2, r2); + return s2 = function(e3) { + Ht(t2, e3); + }, (i2 = Q(o2, t2)) && i2.then || (i2 = Promise.resolve(i2)), s2 ? i2.then(s2) : i2; + var i2, s2; +}, function() { + for (var t2 = [], e2 = 0; e2 < arguments.length; e2++) t2[e2] = arguments[e2]; + try { + return Promise.resolve(Yt.apply(this, t2)); + } catch (t3) { + return Promise.reject(t3); + } +}); +var Yt, Kt = n(635), Jt = n(829), Qt = n.n(Jt), te = function(t2) { + return t2.Array = "array", t2.Object = "object", t2.Original = "original", t2; +}(te || {}); +function ee(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : te.Original; + const r2 = Qt().get(t2, e2); + return "array" === n2 && false === Array.isArray(r2) ? [r2] : "object" === n2 && Array.isArray(r2) ? r2[0] : r2; +} +function ne(t2) { + return new Promise((e2) => { + e2(function(t3) { + const { multistatus: e3 } = t3; + if ("" === e3) return { multistatus: { response: [] } }; + if (!e3) throw new Error("Invalid response: No root multistatus found"); + const n2 = { multistatus: Array.isArray(e3) ? e3[0] : e3 }; + return Qt().set(n2, "multistatus.response", ee(n2, "multistatus.response", te.Array)), Qt().set(n2, "multistatus.response", Qt().get(n2, "multistatus.response").map((t4) => function(t5) { + const e4 = Object.assign({}, t5); + return e4.status ? Qt().set(e4, "status", ee(e4, "status", te.Object)) : (Qt().set(e4, "propstat", ee(e4, "propstat", te.Object)), Qt().set(e4, "propstat.prop", ee(e4, "propstat.prop", te.Object))), e4; + }(t4))), n2; + }(new Kt.XMLParser({ removeNSPrefix: true, numberParseOptions: { hex: true, leadingZeros: false } }).parse(t2))); + }); +} +function re(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] && arguments[2]; + const { getlastmodified: r2 = null, getcontentlength: o2 = "0", resourcetype: i2 = null, getcontenttype: s2 = null, getetag: a2 = null } = t2, u2 = i2 && "object" == typeof i2 && void 0 !== i2.collection ? "directory" : "file", c2 = { filename: e2, basename: l().basename(e2), lastmod: r2, size: parseInt(o2, 10), type: u2, etag: "string" == typeof a2 ? a2.replace(/"/g, "") : null }; + return "file" === u2 && (c2.mime = s2 && "string" == typeof s2 ? s2.split(";")[0] : ""), n2 && (void 0 !== t2.displayname && (t2.displayname = String(t2.displayname)), c2.props = t2), c2; +} +function oe(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], r2 = null; + try { + t2.multistatus.response[0].propstat && (r2 = t2.multistatus.response[0]); + } catch (t3) { + } + if (!r2) throw new Error("Failed getting item stat: bad response"); + const { propstat: { prop: o2, status: i2 } } = r2, [s2, a2, u2] = i2.split(" ", 3), c2 = parseInt(a2, 10); + if (c2 >= 400) { + const t3 = new Error(`Invalid response: ${c2} ${u2}`); + throw t3.status = c2, t3; + } + return re(o2, g(e2), n2); +} +function ie(t2) { + switch (String(t2)) { + case "-3": + return "unlimited"; + case "-2": + case "-1": + return "unknown"; + default: + return parseInt(String(t2), 10); + } +} +function se(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const ae = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const { details: r2 = false } = n2, o2 = tt({ url: y(t2.remoteURL, f(e2)), method: "PROPFIND", headers: { Accept: "text/plain,application/xml", Depth: "0" } }, t2, n2); + return se(Q(o2, t2), function(n3) { + return Ht(t2, n3), se(n3.text(), function(t3) { + return se(ne(t3), function(t4) { + const o3 = oe(t4, e2, r2); + return Xt(n3, o3, r2); + }); + }); + }); +}); +function ue(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const ce = le(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r2 = function(t3) { + if (!t3 || "/" === t3) return []; + let e3 = t3; + const n3 = []; + do { + n3.push(e3), e3 = l().dirname(e3); + } while (e3 && "/" !== e3); + return n3; + }(g(e2)); + r2.sort((t3, e3) => t3.length > e3.length ? 1 : e3.length > t3.length ? -1 : 0); + let o2 = false; + return function(t3, e3, n3) { + if ("function" == typeof t3[fe]) { + let l2 = function(t4) { + try { + for (; !(r3 = s2.next()).done; ) if ((t4 = e3(r3.value)) && t4.then) { + if (!me(t4)) return void t4.then(l2, i2 || (i2 = de.bind(null, o3 = new ge(), 2))); + t4 = t4.v; + } + o3 ? de(o3, 1, t4) : o3 = t4; + } catch (t5) { + de(o3 || (o3 = new ge()), 2, t5); + } + }; + var r3, o3, i2, s2 = t3[fe](); + if (l2(), s2.return) { + var a2 = function(t4) { + try { + r3.done || s2.return(); + } catch (t5) { + } + return t4; + }; + if (o3 && o3.then) return o3.then(a2, function(t4) { + throw a2(t4); + }); + a2(); + } + return o3; + } + if (!("length" in t3)) throw new TypeError("Object is not iterable"); + for (var u2 = [], c2 = 0; c2 < t3.length; c2++) u2.push(t3[c2]); + return function(t4, e4, n4) { + var r4, o4, i3 = -1; + return function s3(a3) { + try { + for (; ++i3 < t4.length && (!n4 || !n4()); ) if ((a3 = e4(i3)) && a3.then) { + if (!me(a3)) return void a3.then(s3, o4 || (o4 = de.bind(null, r4 = new ge(), 2))); + a3 = a3.v; + } + r4 ? de(r4, 1, a3) : r4 = a3; + } catch (t5) { + de(r4 || (r4 = new ge()), 2, t5); + } + }(), r4; + }(u2, function(t4) { + return e3(u2[t4]); + }, n3); + }(r2, function(r3) { + return i2 = function() { + return function(n3, o3) { + try { + var i3 = ue(ae(t2, r3), function(t3) { + if ("directory" !== t3.type) throw new Error(`Path includes a file: ${e2}`); + }); + } catch (t3) { + return o3(t3); + } + return i3 && i3.then ? i3.then(void 0, o3) : i3; + }(0, function(e3) { + const i3 = e3; + return function() { + if (404 === i3.status) return o2 = true, pe(ye(t2, r3, { ...n2, recursive: false })); + throw e3; + }(); + }); + }, (s2 = function() { + if (o2) return pe(ye(t2, r3, { ...n2, recursive: false })); + }()) && s2.then ? s2.then(i2) : i2(); + var i2, s2; + }, function() { + return false; + }); +}); +function le(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +} +function he() { +} +function pe(t2, e2) { + return t2 && t2.then ? t2.then(he) : Promise.resolve(); +} +const fe = "undefined" != typeof Symbol ? Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator")) : "@@iterator"; +function de(t2, e2, n2) { + if (!t2.s) { + if (n2 instanceof ge) { + if (!n2.s) return void (n2.o = de.bind(null, t2, e2)); + 1 & e2 && (e2 = n2.s), n2 = n2.v; + } + if (n2 && n2.then) return void n2.then(de.bind(null, t2, e2), de.bind(null, t2, 2)); + t2.s = e2, t2.v = n2; + const r2 = t2.o; + r2 && r2(t2); + } +} +const ge = function() { + function t2() { + } + return t2.prototype.then = function(e2, n2) { + const r2 = new t2(), o2 = this.s; + if (o2) { + const t3 = 1 & o2 ? e2 : n2; + if (t3) { + try { + de(r2, 1, t3(this.v)); + } catch (t4) { + de(r2, 2, t4); + } + return r2; + } + return this; + } + return this.o = function(t3) { + try { + const o3 = t3.v; + 1 & t3.s ? de(r2, 1, e2 ? e2(o3) : o3) : n2 ? de(r2, 1, n2(o3)) : de(r2, 2, o3); + } catch (t4) { + de(r2, 2, t4); + } + }, r2; + }, t2; +}(); +function me(t2) { + return t2 instanceof ge && 1 & t2.s; +} +const ye = le(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + if (true === n2.recursive) return ce(t2, e2, n2); + const r2 = tt({ url: y(t2.remoteURL, (o2 = f(e2), o2.endsWith("/") ? o2 : o2 + "/")), method: "MKCOL" }, t2, n2); + var o2; + return ue(Q(r2, t2), function(e3) { + Ht(t2, e3); + }); +}); +var ve = n(388), be = n.n(ve); +const we = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r2 = {}; + if ("object" == typeof n2.range && "number" == typeof n2.range.start) { + let t3 = `bytes=${n2.range.start}-`; + "number" == typeof n2.range.end && (t3 = `${t3}${n2.range.end}`), r2.Range = t3; + } + const o2 = tt({ url: y(t2.remoteURL, f(e2)), method: "GET", headers: r2 }, t2, n2); + return s2 = function(e3) { + if (Ht(t2, e3), r2.Range && 206 !== e3.status) { + const t3 = new Error(`Invalid response code for partial request: ${e3.status}`); + throw t3.status = e3.status, t3; + } + return n2.callback && setTimeout(() => { + n2.callback(e3); + }, 0), e3.body; + }, (i2 = Q(o2, t2)) && i2.then || (i2 = Promise.resolve(i2)), s2 ? i2.then(s2) : i2; + var i2, s2; +}), xe = () => { +}, Ne = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2, n2) { + n2.url || (n2.url = y(t2.remoteURL, f(e2))); + const r2 = tt(n2, t2, {}); + return i2 = function(e3) { + return Ht(t2, e3), e3; + }, (o2 = Q(r2, t2)) && o2.then || (o2 = Promise.resolve(o2)), i2 ? o2.then(i2) : o2; + var o2, i2; +}), Pe = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r2 = tt({ url: y(t2.remoteURL, f(e2)), method: "DELETE" }, t2, n2); + return i2 = function(e3) { + Ht(t2, e3); + }, (o2 = Q(r2, t2)) && o2.then || (o2 = Promise.resolve(o2)), i2 ? o2.then(i2) : o2; + var o2, i2; +}), Ae = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + return function(r2, o2) { + try { + var i2 = (s2 = ae(t2, e2, n2), a2 = function() { + return true; + }, u2 ? a2 ? a2(s2) : s2 : (s2 && s2.then || (s2 = Promise.resolve(s2)), a2 ? s2.then(a2) : s2)); + } catch (t3) { + return o2(t3); + } + var s2, a2, u2; + return i2 && i2.then ? i2.then(void 0, o2) : i2; + }(0, function(t3) { + if (404 === t3.status) return false; + throw t3; + }); +}); +function Oe(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const Ee = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r2 = tt({ url: y(t2.remoteURL, f(e2), "/"), method: "PROPFIND", headers: { Accept: "text/plain,application/xml", Depth: n2.deep ? "infinity" : "1" } }, t2, n2); + return Oe(Q(r2, t2), function(r3) { + return Ht(t2, r3), Oe(r3.text(), function(o2) { + if (!o2) throw new Error("Failed parsing directory contents: Empty response"); + return Oe(ne(o2), function(o3) { + const i2 = d(e2); + let s2 = function(t3, e3, n3) { + let r4 = arguments.length > 3 && void 0 !== arguments[3] && arguments[3], o4 = arguments.length > 4 && void 0 !== arguments[4] && arguments[4]; + const i3 = l().join(e3, "/"), { multistatus: { response: s3 } } = t3, a2 = s3.map((t4) => { + const e4 = function(t5) { + try { + return t5.replace(/^https?:\/\/[^\/]+/, ""); + } catch (t6) { + throw new u(t6, "Failed normalising HREF"); + } + }(t4.href), { propstat: { prop: n4 } } = t4; + return re(n4, "/" === i3 ? decodeURIComponent(g(e4)) : g(l().relative(decodeURIComponent(i3), decodeURIComponent(e4))), r4); + }); + return o4 ? a2 : a2.filter((t4) => t4.basename && ("file" === t4.type || t4.filename !== n3.replace(/\/$/, ""))); + }(o3, d(t2.remoteBasePath || t2.remotePath), i2, n2.details, n2.includeSelf); + return n2.glob && (s2 = function(t3, e3) { + return t3.filter((t4) => bt(t4.filename, e3, { matchBase: true })); + }(s2, n2.glob)), Xt(r3, s2, n2.details); + }); + }); + }); +}); +function Te(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +} +const je = Te(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r2 = tt({ url: y(t2.remoteURL, f(e2)), method: "GET", headers: { Accept: "text/plain" }, transformResponse: [Ie] }, t2, n2); + return Se(Q(r2, t2), function(e3) { + return Ht(t2, e3), Se(e3.text(), function(t3) { + return Xt(e3, t3, n2.details); + }); + }); +}); +function Se(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const $e = Te(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r2 = tt({ url: y(t2.remoteURL, f(e2)), method: "GET" }, t2, n2); + return Se(Q(r2, t2), function(e3) { + let r3; + return Ht(t2, e3), function(t3, e4) { + var n3 = t3(); + return n3 && n3.then ? n3.then(e4) : e4(); + }(function() { + return Se(e3.arrayBuffer(), function(t3) { + r3 = t3; + }); + }, function() { + return Xt(e3, r3, n2.details); + }); + }); +}), Ce = Te(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const { format: r2 = "binary" } = n2; + if ("binary" !== r2 && "text" !== r2) throw new u({ info: { code: I.InvalidOutputFormat } }, `Invalid output format: ${r2}`); + return "text" === r2 ? je(t2, e2, n2) : $e(t2, e2, n2); +}), Ie = (t2) => t2; +function ke(t2) { + return new Kt.XMLBuilder({ attributeNamePrefix: "@_", format: true, ignoreAttributes: false, suppressEmptyNode: true }).build(Re({ lockinfo: { "@_xmlns:d": "DAV:", lockscope: { exclusive: {} }, locktype: { write: {} }, owner: { href: t2 } } }, "d")); +} +function Re(t2, e2) { + const n2 = { ...t2 }; + for (const t3 in n2) n2.hasOwnProperty(t3) && (n2[t3] && "object" == typeof n2[t3] && -1 === t3.indexOf(":") ? (n2[`${e2}:${t3}`] = Re(n2[t3], e2), delete n2[t3]) : false === /^@_/.test(t3) && (n2[`${e2}:${t3}`] = n2[t3], delete n2[t3])); + return n2; +} +function Le(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +function _e(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +} +const Me = _e(function(t2, e2, n2) { + let r2 = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}; + const o2 = tt({ url: y(t2.remoteURL, f(e2)), method: "UNLOCK", headers: { "Lock-Token": n2 } }, t2, r2); + return Le(Q(o2, t2), function(e3) { + if (Ht(t2, e3), 204 !== e3.status && 200 !== e3.status) throw qt(e3); + }); +}), Ue = _e(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const { refreshToken: r2, timeout: o2 = Fe } = n2, i2 = { Accept: "text/plain,application/xml", Timeout: o2 }; + r2 && (i2.If = r2); + const s2 = tt({ url: y(t2.remoteURL, f(e2)), method: "LOCK", headers: i2, data: ke(t2.contactHref) }, t2, n2); + return Le(Q(s2, t2), function(e3) { + return Ht(t2, e3), Le(e3.text(), function(t3) { + const n3 = (i3 = t3, new Kt.XMLParser({ removeNSPrefix: true, parseAttributeValue: true, parseTagValue: true }).parse(i3)), r3 = Qt().get(n3, "prop.lockdiscovery.activelock.locktoken.href"), o3 = Qt().get(n3, "prop.lockdiscovery.activelock.timeout"); + var i3; + if (!r3) throw qt(e3, "No lock token received: "); + return { token: r3, serverTimeout: o3 }; + }); + }); +}), Fe = "Infinite, Second-4100000000"; +function De(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const Be = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + const n2 = e2.path || "/", r2 = tt({ url: y(t2.remoteURL, n2), method: "PROPFIND", headers: { Accept: "text/plain,application/xml", Depth: "0" } }, t2, e2); + return De(Q(r2, t2), function(n3) { + return Ht(t2, n3), De(n3.text(), function(t3) { + return De(ne(t3), function(t4) { + const r3 = function(t5) { + try { + const [e3] = t5.multistatus.response, { propstat: { prop: { "quota-used-bytes": n4, "quota-available-bytes": r4 } } } = e3; + return void 0 !== n4 && void 0 !== r4 ? { used: parseInt(String(n4), 10), available: ie(r4) } : null; + } catch (t6) { + } + return null; + }(t4); + return Xt(n3, r3, e2.details); + }); + }); + }); +}); +function We(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const Ve = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const { details: r2 = false } = n2, o2 = tt({ url: y(t2.remoteURL, f(e2)), method: "SEARCH", headers: { Accept: "text/plain,application/xml", "Content-Type": t2.headers["Content-Type"] || "application/xml; charset=utf-8" } }, t2, n2); + return We(Q(o2, t2), function(n3) { + return Ht(t2, n3), We(n3.text(), function(t3) { + return We(ne(t3), function(t4) { + const o3 = function(t5, e3, n4) { + const r3 = { truncated: false, results: [] }; + return r3.truncated = t5.multistatus.response.some((t6) => "507" === (t6.status || t6.propstat?.status).split(" ", 3)?.[1] && t6.href.replace(/\/$/, "").endsWith(f(e3).replace(/\/$/, ""))), t5.multistatus.response.forEach((t6) => { + if (void 0 === t6.propstat) return; + const e4 = t6.href.split("/").map(decodeURIComponent).join("/"); + r3.results.push(re(t6.propstat.prop, e4, n4)); + }), r3; + }(t4, e2, r2); + return Xt(n3, o3, r2); + }); + }); + }); +}), ze = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2, n2) { + let r2 = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}; + const o2 = tt({ url: y(t2.remoteURL, f(e2)), method: "MOVE", headers: { Destination: y(t2.remoteURL, f(n2)), Overwrite: false === r2.overwrite ? "F" : "T" } }, t2, r2); + return s2 = function(e3) { + Ht(t2, e3); + }, (i2 = Q(o2, t2)) && i2.then || (i2 = Promise.resolve(i2)), s2 ? i2.then(s2) : i2; + var i2, s2; +}); +var Ge = n(172); +const qe = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2, n2) { + let r2 = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}; + const { contentLength: o2 = true, overwrite: i2 = true } = r2, s2 = { "Content-Type": "application/octet-stream" }; + false === o2 || (s2["Content-Length"] = "number" == typeof o2 ? `${o2}` : `${function(t3) { + if (H(t3)) return t3.byteLength; + if (X(t3)) return t3.length; + if ("string" == typeof t3) return (0, Ge.d)(t3); + throw new u({ info: { code: I.DataTypeNoLength } }, "Cannot calculate data length: Invalid type"); + }(n2)}`), i2 || (s2["If-None-Match"] = "*"); + const a2 = tt({ url: y(t2.remoteURL, f(e2)), method: "PUT", headers: s2, data: n2 }, t2, r2); + return l2 = function(e3) { + try { + Ht(t2, e3); + } catch (t3) { + const e4 = t3; + if (412 !== e4.status || i2) throw e4; + return false; + } + return true; + }, (c2 = Q(a2, t2)) && c2.then || (c2 = Promise.resolve(c2)), l2 ? c2.then(l2) : c2; + var c2, l2; +}), He = /* @__PURE__ */ function(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +}(function(t2, e2) { + let n2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r2 = tt({ url: y(t2.remoteURL, f(e2)), method: "OPTIONS" }, t2, n2); + return i2 = function(e3) { + try { + Ht(t2, e3); + } catch (t3) { + throw t3; + } + return { compliance: (e3.headers.get("DAV") ?? "").split(",").map((t3) => t3.trim()), server: e3.headers.get("Server") ?? "" }; + }, (o2 = Q(r2, t2)) && o2.then || (o2 = Promise.resolve(o2)), i2 ? o2.then(i2) : o2; + var o2, i2; +}); +function Xe(t2, e2, n2) { + return t2 && t2.then || (t2 = Promise.resolve(t2)), e2 ? t2.then(e2) : t2; +} +const Ze = Je(function(t2, e2, n2, r2, o2) { + let i2 = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : {}; + if (n2 > r2 || n2 < 0) throw new u({ info: { code: I.InvalidUpdateRange } }, `Invalid update range ${n2} for partial update`); + const s2 = { "Content-Type": "application/octet-stream", "Content-Length": "" + (r2 - n2 + 1), "Content-Range": `bytes ${n2}-${r2}/*` }, a2 = tt({ url: y(t2.remoteURL, f(e2)), method: "PUT", headers: s2, data: o2 }, t2, i2); + return Xe(Q(a2, t2), function(e3) { + Ht(t2, e3); + }); +}); +function Ye(t2, e2) { + var n2 = t2(); + return n2 && n2.then ? n2.then(e2) : e2(n2); +} +const Ke = Je(function(t2, e2, n2, r2, o2) { + let i2 = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : {}; + if (n2 > r2 || n2 < 0) throw new u({ info: { code: I.InvalidUpdateRange } }, `Invalid update range ${n2} for partial update`); + const s2 = { "Content-Type": "application/x-sabredav-partialupdate", "Content-Length": "" + (r2 - n2 + 1), "X-Update-Range": `bytes=${n2}-${r2}` }, a2 = tt({ url: y(t2.remoteURL, f(e2)), method: "PATCH", headers: s2, data: o2 }, t2, i2); + return Xe(Q(a2, t2), function(e3) { + Ht(t2, e3); + }); +}); +function Je(t2) { + return function() { + for (var e2 = [], n2 = 0; n2 < arguments.length; n2++) e2[n2] = arguments[n2]; + try { + return Promise.resolve(t2.apply(this, e2)); + } catch (t3) { + return Promise.reject(t3); + } + }; +} +const Qe = Je(function(t2, e2, n2, r2, o2) { + let i2 = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : {}; + return Xe(He(t2, e2, i2), function(s2) { + let a2 = false; + return Ye(function() { + if (s2.compliance.includes("sabredav-partialupdate")) return Xe(Ke(t2, e2, n2, r2, o2, i2), function(t3) { + return a2 = true, t3; + }); + }, function(c2) { + let l2 = false; + return a2 ? c2 : Ye(function() { + if (s2.server.includes("Apache") && s2.compliance.includes("")) return Xe(Ze(t2, e2, n2, r2, o2, i2), function(t3) { + return l2 = true, t3; + }); + }, function(t3) { + if (l2) return t3; + throw new u({ info: { code: I.NotSupported } }, "Not supported"); + }); + }); + }); +}), tn = "https://github.com/perry-mitchell/webdav-client/blob/master/LOCK_CONTACT.md"; +function en(t2) { + let e2 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + const { authType: n2 = null, remoteBasePath: r2, contactHref: o2 = tn, ha1: i2, headers: s2 = {}, httpAgent: a2, httpsAgent: c2, password: l2, token: h2, username: p2, withCredentials: d2 } = e2; + let g2 = n2; + g2 || (g2 = p2 || l2 ? C.Password : C.None); + const v2 = { authType: g2, remoteBasePath: r2, contactHref: o2, ha1: i2, headers: Object.assign({}, s2), httpAgent: a2, httpsAgent: c2, password: l2, remotePath: m(t2), remoteURL: t2, token: h2, username: p2, withCredentials: d2 }; + return k(v2, p2, l2, h2, i2), { copyFile: (t3, e3, n3) => Zt(v2, t3, e3, n3), createDirectory: (t3, e3) => ye(v2, t3, e3), createReadStream: (t3, e3) => function(t4, e4) { + let n3 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; + const r3 = new (be()).PassThrough(); + return we(t4, e4, n3).then((t5) => { + t5.pipe(r3); + }).catch((t5) => { + r3.emit("error", t5); + }), r3; + }(v2, t3, e3), createWriteStream: (t3, e3, n3) => function(t4, e4) { + let n4 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, r3 = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : xe; + const o3 = new (be()).PassThrough(), i3 = {}; + false === n4.overwrite && (i3["If-None-Match"] = "*"); + const s3 = tt({ url: y(t4.remoteURL, f(e4)), method: "PUT", headers: i3, data: o3, maxRedirects: 0 }, t4, n4); + return Q(s3, t4).then((e5) => Ht(t4, e5)).then((t5) => { + setTimeout(() => { + r3(t5); + }, 0); + }).catch((t5) => { + o3.emit("error", t5); + }), o3; + }(v2, t3, e3, n3), customRequest: (t3, e3) => Ne(v2, t3, e3), deleteFile: (t3, e3) => Pe(v2, t3, e3), exists: (t3, e3) => Ae(v2, t3, e3), getDirectoryContents: (t3, e3) => Ee(v2, t3, e3), getFileContents: (t3, e3) => Ce(v2, t3, e3), getFileDownloadLink: (t3) => function(t4, e3) { + let n3 = y(t4.remoteURL, f(e3)); + const r3 = /^https:/i.test(n3) ? "https" : "http"; + switch (t4.authType) { + case C.None: + break; + case C.Password: { + const e4 = O(t4.headers.Authorization.replace(/^Basic /i, "").trim()); + n3 = n3.replace(/^https?:\/\//, `${r3}://${e4}@`); + break; + } + default: + throw new u({ info: { code: I.LinkUnsupportedAuthType } }, `Unsupported auth type for file link: ${t4.authType}`); + } + return n3; + }(v2, t3), getFileUploadLink: (t3) => function(t4, e3) { + let n3 = `${y(t4.remoteURL, f(e3))}?Content-Type=application/octet-stream`; + const r3 = /^https:/i.test(n3) ? "https" : "http"; + switch (t4.authType) { + case C.None: + break; + case C.Password: { + const e4 = O(t4.headers.Authorization.replace(/^Basic /i, "").trim()); + n3 = n3.replace(/^https?:\/\//, `${r3}://${e4}@`); + break; + } + default: + throw new u({ info: { code: I.LinkUnsupportedAuthType } }, `Unsupported auth type for file link: ${t4.authType}`); + } + return n3; + }(v2, t3), getHeaders: () => Object.assign({}, v2.headers), getQuota: (t3) => Be(v2, t3), lock: (t3, e3) => Ue(v2, t3, e3), moveFile: (t3, e3, n3) => ze(v2, t3, e3, n3), putFileContents: (t3, e3, n3) => qe(v2, t3, e3, n3), partialUpdateFileContents: (t3, e3, n3, r3, o3) => Qe(v2, t3, e3, n3, r3, o3), getDAVCompliance: (t3) => He(v2, t3), search: (t3, e3) => Ve(v2, t3, e3), setHeaders: (t3) => { + v2.headers = Object.assign({}, t3); + }, stat: (t3, e3) => ae(v2, t3, e3), unlock: (t3, e3, n3) => Me(v2, t3, e3, n3) }; +} +r.hT; +r.O4; +r.Kd; +r.YK; +r.UU; +r.Gu; +r.ky; +r.h4; +r.ch; +r.hq; +r.i5; +function loadState(app, key, fallback) { + const elem = document.querySelector(`#initial-state-${app}-${key}`); + if (elem === null) { + { + return fallback; + } + } + try { + return JSON.parse(atob(elem.value)); + } catch (e2) { + throw new Error(`Could not parse initial state ${key} of ${app}`); + } +} +function isPublicShare() { + return loadState("files_sharing", "isPublic", null) ?? document.querySelector( + 'input#isPublic[type="hidden"][name="isPublic"][value="1"]' + ) !== null; +} +function getSharingToken() { + return loadState("files_sharing", "sharingToken", null) ?? document.querySelector('input#sharingToken[type="hidden"]')?.value ?? null; +} +/*! @license DOMPurify 3.1.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.6/LICENSE */ +const { + entries, + setPrototypeOf, + isFrozen, + getPrototypeOf: getPrototypeOf$1, + getOwnPropertyDescriptor: getOwnPropertyDescriptor$2 +} = Object; +let { + freeze, + seal, + create: create$1 +} = Object; +let { + apply: apply$2, + construct +} = typeof Reflect !== "undefined" && Reflect; +if (!freeze) { + freeze = function freeze2(x2) { + return x2; + }; +} +if (!seal) { + seal = function seal2(x2) { + return x2; + }; +} +if (!apply$2) { + apply$2 = function apply2(fun, thisValue, args) { + return fun.apply(thisValue, args); + }; +} +if (!construct) { + construct = function construct2(Func, args) { + return new Func(...args); + }; +} +const arrayForEach = unapply(Array.prototype.forEach); +const arrayPop = unapply(Array.prototype.pop); +const arrayPush = unapply(Array.prototype.push); +const stringToLowerCase = unapply(String.prototype.toLowerCase); +const stringToString = unapply(String.prototype.toString); +const stringMatch = unapply(String.prototype.match); +const stringReplace = unapply(String.prototype.replace); +const stringIndexOf$1 = unapply(String.prototype.indexOf); +const stringTrim = unapply(String.prototype.trim); +const objectHasOwnProperty = unapply(Object.prototype.hasOwnProperty); +const regExpTest = unapply(RegExp.prototype.test); +const typeErrorCreate = unconstruct(TypeError); +function unapply(func) { + return function(thisArg) { + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + return apply$2(func, thisArg, args); + }; +} +function unconstruct(func) { + return function() { + for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + args[_key2] = arguments[_key2]; + } + return construct(func, args); + }; +} +function addToSet(set2, array) { + let transformCaseFunc = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : stringToLowerCase; + if (setPrototypeOf) { + setPrototypeOf(set2, null); + } + let l2 = array.length; + while (l2--) { + let element = array[l2]; + if (typeof element === "string") { + const lcElement = transformCaseFunc(element); + if (lcElement !== element) { + if (!isFrozen(array)) { + array[l2] = lcElement; + } + element = lcElement; + } + } + set2[element] = true; + } + return set2; +} +function cleanArray(array) { + for (let index = 0; index < array.length; index++) { + const isPropertyExist = objectHasOwnProperty(array, index); + if (!isPropertyExist) { + array[index] = null; + } + } + return array; +} +function clone(object) { + const newObject = create$1(null); + for (const [property, value] of entries(object)) { + const isPropertyExist = objectHasOwnProperty(object, property); + if (isPropertyExist) { + if (Array.isArray(value)) { + newObject[property] = cleanArray(value); + } else if (value && typeof value === "object" && value.constructor === Object) { + newObject[property] = clone(value); + } else { + newObject[property] = value; + } + } + } + return newObject; +} +function lookupGetter(object, prop) { + while (object !== null) { + const desc = getOwnPropertyDescriptor$2(object, prop); + if (desc) { + if (desc.get) { + return unapply(desc.get); + } + if (typeof desc.value === "function") { + return unapply(desc.value); + } + } + object = getPrototypeOf$1(object); + } + function fallbackValue() { + return null; + } + return fallbackValue; +} +const html$1$1 = freeze(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "shadow", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]); +const svg$1 = freeze(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]); +const svgFilters = freeze(["feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence"]); +const svgDisallowed = freeze(["animate", "color-profile", "cursor", "discard", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]); +const mathMl$1 = freeze(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover", "mprescripts"]); +const mathMlDisallowed = freeze(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]); +const text = freeze(["#text"]); +const html$2 = freeze(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "nonce", "noshade", "novalidate", "nowrap", "open", "optimum", "pattern", "placeholder", "playsinline", "popover", "popovertarget", "popovertargetaction", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "wrap", "xmlns", "slot"]); +const svg = freeze(["accent-height", "accumulate", "additive", "alignment-baseline", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "display", "divisor", "dur", "edgemode", "elevation", "end", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "targetx", "targety", "transform", "transform-origin", "text-anchor", "text-decoration", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]); +const mathMl = freeze(["accent", "accentunder", "align", "bevelled", "close", "columnsalign", "columnlines", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lspace", "lquote", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]); +const xml = freeze(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]); +const MUSTACHE_EXPR = seal(/\{\{[\w\W]*|[\w\W]*\}\}/gm); +const ERB_EXPR = seal(/<%[\w\W]*|[\w\W]*%>/gm); +const TMPLIT_EXPR = seal(/\${[\w\W]*}/gm); +const DATA_ATTR = seal(/^data-[\-\w.\u00B7-\uFFFF]/); +const ARIA_ATTR = seal(/^aria-[\-\w]+$/); +const IS_ALLOWED_URI = seal( + /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i + // eslint-disable-line no-useless-escape +); +const IS_SCRIPT_OR_DATA = seal(/^(?:\w+script|data):/i); +const ATTR_WHITESPACE = seal( + /[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g + // eslint-disable-line no-control-regex +); +const DOCTYPE_NAME = seal(/^html$/i); +const CUSTOM_ELEMENT = seal(/^[a-z][.\w]*(-[.\w]+)+$/i); +var EXPRESSIONS = /* @__PURE__ */ Object.freeze({ + __proto__: null, + MUSTACHE_EXPR, + ERB_EXPR, + TMPLIT_EXPR, + DATA_ATTR, + ARIA_ATTR, + IS_ALLOWED_URI, + IS_SCRIPT_OR_DATA, + ATTR_WHITESPACE, + DOCTYPE_NAME, + CUSTOM_ELEMENT +}); +const NODE_TYPE = { + element: 1, + attribute: 2, + text: 3, + cdataSection: 4, + entityReference: 5, + // Deprecated + entityNode: 6, + // Deprecated + progressingInstruction: 7, + comment: 8, + document: 9, + documentType: 10, + documentFragment: 11, + notation: 12 + // Deprecated +}; +const getGlobal = function getGlobal2() { + return typeof window === "undefined" ? null : window; +}; +const _createTrustedTypesPolicy = function _createTrustedTypesPolicy2(trustedTypes, purifyHostElement) { + if (typeof trustedTypes !== "object" || typeof trustedTypes.createPolicy !== "function") { + return null; + } + let suffix = null; + const ATTR_NAME = "data-tt-policy-suffix"; + if (purifyHostElement && purifyHostElement.hasAttribute(ATTR_NAME)) { + suffix = purifyHostElement.getAttribute(ATTR_NAME); + } + const policyName = "dompurify" + (suffix ? "#" + suffix : ""); + try { + return trustedTypes.createPolicy(policyName, { + createHTML(html2) { + return html2; + }, + createScriptURL(scriptUrl) { + return scriptUrl; + } + }); + } catch (_2) { + console.warn("TrustedTypes policy " + policyName + " could not be created."); + return null; + } +}; +function createDOMPurify() { + let window2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal(); + const DOMPurify = (root) => createDOMPurify(root); + DOMPurify.version = "3.1.6"; + DOMPurify.removed = []; + if (!window2 || !window2.document || window2.document.nodeType !== NODE_TYPE.document) { + DOMPurify.isSupported = false; + return DOMPurify; + } + let { + document: document2 + } = window2; + const originalDocument = document2; + const currentScript = originalDocument.currentScript; + const { + DocumentFragment, + HTMLTemplateElement, + Node: Node2, + Element, + NodeFilter, + NamedNodeMap = window2.NamedNodeMap || window2.MozNamedAttrMap, + HTMLFormElement, + DOMParser, + trustedTypes + } = window2; + const ElementPrototype = Element.prototype; + const cloneNode = lookupGetter(ElementPrototype, "cloneNode"); + const remove = lookupGetter(ElementPrototype, "remove"); + const getNextSibling = lookupGetter(ElementPrototype, "nextSibling"); + const getChildNodes = lookupGetter(ElementPrototype, "childNodes"); + const getParentNode = lookupGetter(ElementPrototype, "parentNode"); + if (typeof HTMLTemplateElement === "function") { + const template = document2.createElement("template"); + if (template.content && template.content.ownerDocument) { + document2 = template.content.ownerDocument; + } + } + let trustedTypesPolicy; + let emptyHTML = ""; + const { + implementation, + createNodeIterator, + createDocumentFragment, + getElementsByTagName + } = document2; + const { + importNode + } = originalDocument; + let hooks = {}; + DOMPurify.isSupported = typeof entries === "function" && typeof getParentNode === "function" && implementation && implementation.createHTMLDocument !== void 0; + const { + MUSTACHE_EXPR: MUSTACHE_EXPR2, + ERB_EXPR: ERB_EXPR2, + TMPLIT_EXPR: TMPLIT_EXPR2, + DATA_ATTR: DATA_ATTR2, + ARIA_ATTR: ARIA_ATTR2, + IS_SCRIPT_OR_DATA: IS_SCRIPT_OR_DATA2, + ATTR_WHITESPACE: ATTR_WHITESPACE2, + CUSTOM_ELEMENT: CUSTOM_ELEMENT2 + } = EXPRESSIONS; + let { + IS_ALLOWED_URI: IS_ALLOWED_URI$1 + } = EXPRESSIONS; + let ALLOWED_TAGS = null; + const DEFAULT_ALLOWED_TAGS = addToSet({}, [...html$1$1, ...svg$1, ...svgFilters, ...mathMl$1, ...text]); + let ALLOWED_ATTR = null; + const DEFAULT_ALLOWED_ATTR = addToSet({}, [...html$2, ...svg, ...mathMl, ...xml]); + let CUSTOM_ELEMENT_HANDLING = Object.seal(create$1(null, { + tagNameCheck: { + writable: true, + configurable: false, + enumerable: true, + value: null + }, + attributeNameCheck: { + writable: true, + configurable: false, + enumerable: true, + value: null + }, + allowCustomizedBuiltInElements: { + writable: true, + configurable: false, + enumerable: true, + value: false + } + })); + let FORBID_TAGS = null; + let FORBID_ATTR = null; + let ALLOW_ARIA_ATTR = true; + let ALLOW_DATA_ATTR = true; + let ALLOW_UNKNOWN_PROTOCOLS = false; + let ALLOW_SELF_CLOSE_IN_ATTR = true; + let SAFE_FOR_TEMPLATES = false; + let SAFE_FOR_XML = true; + let WHOLE_DOCUMENT = false; + let SET_CONFIG = false; + let FORCE_BODY = false; + let RETURN_DOM = false; + let RETURN_DOM_FRAGMENT = false; + let RETURN_TRUSTED_TYPE = false; + let SANITIZE_DOM = true; + let SANITIZE_NAMED_PROPS = false; + const SANITIZE_NAMED_PROPS_PREFIX = "user-content-"; + let KEEP_CONTENT = true; + let IN_PLACE = false; + let USE_PROFILES = {}; + let FORBID_CONTENTS = null; + const DEFAULT_FORBID_CONTENTS = addToSet({}, ["annotation-xml", "audio", "colgroup", "desc", "foreignobject", "head", "iframe", "math", "mi", "mn", "mo", "ms", "mtext", "noembed", "noframes", "noscript", "plaintext", "script", "style", "svg", "template", "thead", "title", "video", "xmp"]); + let DATA_URI_TAGS = null; + const DEFAULT_DATA_URI_TAGS = addToSet({}, ["audio", "video", "img", "source", "image", "track"]); + let URI_SAFE_ATTRIBUTES = null; + const DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]); + const MATHML_NAMESPACE = "http://www.w3.org/1998/Math/MathML"; + const SVG_NAMESPACE = "http://www.w3.org/2000/svg"; + const HTML_NAMESPACE = "http://www.w3.org/1999/xhtml"; + let NAMESPACE = HTML_NAMESPACE; + let IS_EMPTY_INPUT = false; + let ALLOWED_NAMESPACES = null; + const DEFAULT_ALLOWED_NAMESPACES = addToSet({}, [MATHML_NAMESPACE, SVG_NAMESPACE, HTML_NAMESPACE], stringToString); + let PARSER_MEDIA_TYPE = null; + const SUPPORTED_PARSER_MEDIA_TYPES = ["application/xhtml+xml", "text/html"]; + const DEFAULT_PARSER_MEDIA_TYPE = "text/html"; + let transformCaseFunc = null; + let CONFIG = null; + const formElement = document2.createElement("form"); + const isRegexOrFunction = function isRegexOrFunction2(testValue) { + return testValue instanceof RegExp || testValue instanceof Function; + }; + const _parseConfig = function _parseConfig2() { + let cfg = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; + if (CONFIG && CONFIG === cfg) { + return; + } + if (!cfg || typeof cfg !== "object") { + cfg = {}; + } + cfg = clone(cfg); + PARSER_MEDIA_TYPE = // eslint-disable-next-line unicorn/prefer-includes + SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? DEFAULT_PARSER_MEDIA_TYPE : cfg.PARSER_MEDIA_TYPE; + transformCaseFunc = PARSER_MEDIA_TYPE === "application/xhtml+xml" ? stringToString : stringToLowerCase; + ALLOWED_TAGS = objectHasOwnProperty(cfg, "ALLOWED_TAGS") ? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc) : DEFAULT_ALLOWED_TAGS; + ALLOWED_ATTR = objectHasOwnProperty(cfg, "ALLOWED_ATTR") ? addToSet({}, cfg.ALLOWED_ATTR, transformCaseFunc) : DEFAULT_ALLOWED_ATTR; + ALLOWED_NAMESPACES = objectHasOwnProperty(cfg, "ALLOWED_NAMESPACES") ? addToSet({}, cfg.ALLOWED_NAMESPACES, stringToString) : DEFAULT_ALLOWED_NAMESPACES; + URI_SAFE_ATTRIBUTES = objectHasOwnProperty(cfg, "ADD_URI_SAFE_ATTR") ? addToSet( + clone(DEFAULT_URI_SAFE_ATTRIBUTES), + // eslint-disable-line indent + cfg.ADD_URI_SAFE_ATTR, + // eslint-disable-line indent + transformCaseFunc + // eslint-disable-line indent + ) : DEFAULT_URI_SAFE_ATTRIBUTES; + DATA_URI_TAGS = objectHasOwnProperty(cfg, "ADD_DATA_URI_TAGS") ? addToSet( + clone(DEFAULT_DATA_URI_TAGS), + // eslint-disable-line indent + cfg.ADD_DATA_URI_TAGS, + // eslint-disable-line indent + transformCaseFunc + // eslint-disable-line indent + ) : DEFAULT_DATA_URI_TAGS; + FORBID_CONTENTS = objectHasOwnProperty(cfg, "FORBID_CONTENTS") ? addToSet({}, cfg.FORBID_CONTENTS, transformCaseFunc) : DEFAULT_FORBID_CONTENTS; + FORBID_TAGS = objectHasOwnProperty(cfg, "FORBID_TAGS") ? addToSet({}, cfg.FORBID_TAGS, transformCaseFunc) : {}; + FORBID_ATTR = objectHasOwnProperty(cfg, "FORBID_ATTR") ? addToSet({}, cfg.FORBID_ATTR, transformCaseFunc) : {}; + USE_PROFILES = objectHasOwnProperty(cfg, "USE_PROFILES") ? cfg.USE_PROFILES : false; + ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; + ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; + ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; + ALLOW_SELF_CLOSE_IN_ATTR = cfg.ALLOW_SELF_CLOSE_IN_ATTR !== false; + SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; + SAFE_FOR_XML = cfg.SAFE_FOR_XML !== false; + WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; + RETURN_DOM = cfg.RETURN_DOM || false; + RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; + RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; + FORCE_BODY = cfg.FORCE_BODY || false; + SANITIZE_DOM = cfg.SANITIZE_DOM !== false; + SANITIZE_NAMED_PROPS = cfg.SANITIZE_NAMED_PROPS || false; + KEEP_CONTENT = cfg.KEEP_CONTENT !== false; + IN_PLACE = cfg.IN_PLACE || false; + IS_ALLOWED_URI$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI; + NAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE; + CUSTOM_ELEMENT_HANDLING = cfg.CUSTOM_ELEMENT_HANDLING || {}; + if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck)) { + CUSTOM_ELEMENT_HANDLING.tagNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck; + } + if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)) { + CUSTOM_ELEMENT_HANDLING.attributeNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck; + } + if (cfg.CUSTOM_ELEMENT_HANDLING && typeof cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements === "boolean") { + CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements; + } + if (SAFE_FOR_TEMPLATES) { + ALLOW_DATA_ATTR = false; + } + if (RETURN_DOM_FRAGMENT) { + RETURN_DOM = true; + } + if (USE_PROFILES) { + ALLOWED_TAGS = addToSet({}, text); + ALLOWED_ATTR = []; + if (USE_PROFILES.html === true) { + addToSet(ALLOWED_TAGS, html$1$1); + addToSet(ALLOWED_ATTR, html$2); + } + if (USE_PROFILES.svg === true) { + addToSet(ALLOWED_TAGS, svg$1); + addToSet(ALLOWED_ATTR, svg); + addToSet(ALLOWED_ATTR, xml); + } + if (USE_PROFILES.svgFilters === true) { + addToSet(ALLOWED_TAGS, svgFilters); + addToSet(ALLOWED_ATTR, svg); + addToSet(ALLOWED_ATTR, xml); + } + if (USE_PROFILES.mathMl === true) { + addToSet(ALLOWED_TAGS, mathMl$1); + addToSet(ALLOWED_ATTR, mathMl); + addToSet(ALLOWED_ATTR, xml); + } + } + if (cfg.ADD_TAGS) { + if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) { + ALLOWED_TAGS = clone(ALLOWED_TAGS); + } + addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc); + } + if (cfg.ADD_ATTR) { + if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) { + ALLOWED_ATTR = clone(ALLOWED_ATTR); + } + addToSet(ALLOWED_ATTR, cfg.ADD_ATTR, transformCaseFunc); + } + if (cfg.ADD_URI_SAFE_ATTR) { + addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR, transformCaseFunc); + } + if (cfg.FORBID_CONTENTS) { + if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) { + FORBID_CONTENTS = clone(FORBID_CONTENTS); + } + addToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS, transformCaseFunc); + } + if (KEEP_CONTENT) { + ALLOWED_TAGS["#text"] = true; + } + if (WHOLE_DOCUMENT) { + addToSet(ALLOWED_TAGS, ["html", "head", "body"]); + } + if (ALLOWED_TAGS.table) { + addToSet(ALLOWED_TAGS, ["tbody"]); + delete FORBID_TAGS.tbody; + } + if (cfg.TRUSTED_TYPES_POLICY) { + if (typeof cfg.TRUSTED_TYPES_POLICY.createHTML !== "function") { + throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.'); + } + if (typeof cfg.TRUSTED_TYPES_POLICY.createScriptURL !== "function") { + throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.'); + } + trustedTypesPolicy = cfg.TRUSTED_TYPES_POLICY; + emptyHTML = trustedTypesPolicy.createHTML(""); + } else { + if (trustedTypesPolicy === void 0) { + trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript); + } + if (trustedTypesPolicy !== null && typeof emptyHTML === "string") { + emptyHTML = trustedTypesPolicy.createHTML(""); + } + } + if (freeze) { + freeze(cfg); + } + CONFIG = cfg; + }; + const MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ["mi", "mo", "mn", "ms", "mtext"]); + const HTML_INTEGRATION_POINTS = addToSet({}, ["foreignobject", "annotation-xml"]); + const COMMON_SVG_AND_HTML_ELEMENTS = addToSet({}, ["title", "style", "font", "a", "script"]); + const ALL_SVG_TAGS = addToSet({}, [...svg$1, ...svgFilters, ...svgDisallowed]); + const ALL_MATHML_TAGS = addToSet({}, [...mathMl$1, ...mathMlDisallowed]); + const _checkValidNamespace = function _checkValidNamespace2(element) { + let parent = getParentNode(element); + if (!parent || !parent.tagName) { + parent = { + namespaceURI: NAMESPACE, + tagName: "template" + }; + } + const tagName = stringToLowerCase(element.tagName); + const parentTagName = stringToLowerCase(parent.tagName); + if (!ALLOWED_NAMESPACES[element.namespaceURI]) { + return false; + } + if (element.namespaceURI === SVG_NAMESPACE) { + if (parent.namespaceURI === HTML_NAMESPACE) { + return tagName === "svg"; + } + if (parent.namespaceURI === MATHML_NAMESPACE) { + return tagName === "svg" && (parentTagName === "annotation-xml" || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]); + } + return Boolean(ALL_SVG_TAGS[tagName]); + } + if (element.namespaceURI === MATHML_NAMESPACE) { + if (parent.namespaceURI === HTML_NAMESPACE) { + return tagName === "math"; + } + if (parent.namespaceURI === SVG_NAMESPACE) { + return tagName === "math" && HTML_INTEGRATION_POINTS[parentTagName]; + } + return Boolean(ALL_MATHML_TAGS[tagName]); + } + if (element.namespaceURI === HTML_NAMESPACE) { + if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) { + return false; + } + if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) { + return false; + } + return !ALL_MATHML_TAGS[tagName] && (COMMON_SVG_AND_HTML_ELEMENTS[tagName] || !ALL_SVG_TAGS[tagName]); + } + if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && ALLOWED_NAMESPACES[element.namespaceURI]) { + return true; + } + return false; + }; + const _forceRemove = function _forceRemove2(node) { + arrayPush(DOMPurify.removed, { + element: node + }); + try { + getParentNode(node).removeChild(node); + } catch (_2) { + remove(node); + } + }; + const _removeAttribute = function _removeAttribute2(name, node) { + try { + arrayPush(DOMPurify.removed, { + attribute: node.getAttributeNode(name), + from: node + }); + } catch (_2) { + arrayPush(DOMPurify.removed, { + attribute: null, + from: node + }); + } + node.removeAttribute(name); + if (name === "is" && !ALLOWED_ATTR[name]) { + if (RETURN_DOM || RETURN_DOM_FRAGMENT) { + try { + _forceRemove(node); + } catch (_2) { + } + } else { + try { + node.setAttribute(name, ""); + } catch (_2) { + } + } + } + }; + const _initDocument = function _initDocument2(dirty) { + let doc = null; + let leadingWhitespace = null; + if (FORCE_BODY) { + dirty = "" + dirty; + } else { + const matches = stringMatch(dirty, /^[\r\n\t ]+/); + leadingWhitespace = matches && matches[0]; + } + if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && NAMESPACE === HTML_NAMESPACE) { + dirty = '' + dirty + ""; + } + const dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty; + if (NAMESPACE === HTML_NAMESPACE) { + try { + doc = new DOMParser().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE); + } catch (_2) { + } + } + if (!doc || !doc.documentElement) { + doc = implementation.createDocument(NAMESPACE, "template", null); + try { + doc.documentElement.innerHTML = IS_EMPTY_INPUT ? emptyHTML : dirtyPayload; + } catch (_2) { + } + } + const body = doc.body || doc.documentElement; + if (dirty && leadingWhitespace) { + body.insertBefore(document2.createTextNode(leadingWhitespace), body.childNodes[0] || null); + } + if (NAMESPACE === HTML_NAMESPACE) { + return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? "html" : "body")[0]; + } + return WHOLE_DOCUMENT ? doc.documentElement : body; + }; + const _createNodeIterator = function _createNodeIterator2(root) { + return createNodeIterator.call( + root.ownerDocument || root, + root, + // eslint-disable-next-line no-bitwise + NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT | NodeFilter.SHOW_PROCESSING_INSTRUCTION | NodeFilter.SHOW_CDATA_SECTION, + null + ); + }; + const _isClobbered = function _isClobbered2(elm) { + return elm instanceof HTMLFormElement && (typeof elm.nodeName !== "string" || typeof elm.textContent !== "string" || typeof elm.removeChild !== "function" || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== "function" || typeof elm.setAttribute !== "function" || typeof elm.namespaceURI !== "string" || typeof elm.insertBefore !== "function" || typeof elm.hasChildNodes !== "function"); + }; + const _isNode = function _isNode2(object) { + return typeof Node2 === "function" && object instanceof Node2; + }; + const _executeHook = function _executeHook2(entryPoint, currentNode, data2) { + if (!hooks[entryPoint]) { + return; + } + arrayForEach(hooks[entryPoint], (hook) => { + hook.call(DOMPurify, currentNode, data2, CONFIG); + }); + }; + const _sanitizeElements = function _sanitizeElements2(currentNode) { + let content = null; + _executeHook("beforeSanitizeElements", currentNode, null); + if (_isClobbered(currentNode)) { + _forceRemove(currentNode); + return true; + } + const tagName = transformCaseFunc(currentNode.nodeName); + _executeHook("uponSanitizeElement", currentNode, { + tagName, + allowedTags: ALLOWED_TAGS + }); + if (currentNode.hasChildNodes() && !_isNode(currentNode.firstElementChild) && regExpTest(/<[/\w]/g, currentNode.innerHTML) && regExpTest(/<[/\w]/g, currentNode.textContent)) { + _forceRemove(currentNode); + return true; + } + if (currentNode.nodeType === NODE_TYPE.progressingInstruction) { + _forceRemove(currentNode); + return true; + } + if (SAFE_FOR_XML && currentNode.nodeType === NODE_TYPE.comment && regExpTest(/<[/\w]/g, currentNode.data)) { + _forceRemove(currentNode); + return true; + } + if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) { + if (!FORBID_TAGS[tagName] && _isBasicCustomElement(tagName)) { + if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, tagName)) { + return false; + } + if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(tagName)) { + return false; + } + } + if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) { + const parentNode = getParentNode(currentNode) || currentNode.parentNode; + const childNodes = getChildNodes(currentNode) || currentNode.childNodes; + if (childNodes && parentNode) { + const childCount = childNodes.length; + for (let i = childCount - 1; i >= 0; --i) { + const childClone = cloneNode(childNodes[i], true); + childClone.__removalCount = (currentNode.__removalCount || 0) + 1; + parentNode.insertBefore(childClone, getNextSibling(currentNode)); + } + } + } + _forceRemove(currentNode); + return true; + } + if (currentNode instanceof Element && !_checkValidNamespace(currentNode)) { + _forceRemove(currentNode); + return true; + } + if ((tagName === "noscript" || tagName === "noembed" || tagName === "noframes") && regExpTest(/<\/no(script|embed|frames)/i, currentNode.innerHTML)) { + _forceRemove(currentNode); + return true; + } + if (SAFE_FOR_TEMPLATES && currentNode.nodeType === NODE_TYPE.text) { + content = currentNode.textContent; + arrayForEach([MUSTACHE_EXPR2, ERB_EXPR2, TMPLIT_EXPR2], (expr) => { + content = stringReplace(content, expr, " "); + }); + if (currentNode.textContent !== content) { + arrayPush(DOMPurify.removed, { + element: currentNode.cloneNode() + }); + currentNode.textContent = content; + } + } + _executeHook("afterSanitizeElements", currentNode, null); + return false; + }; + const _isValidAttribute = function _isValidAttribute2(lcTag, lcName, value) { + if (SANITIZE_DOM && (lcName === "id" || lcName === "name") && (value in document2 || value in formElement)) { + return false; + } + if (ALLOW_DATA_ATTR && !FORBID_ATTR[lcName] && regExpTest(DATA_ATTR2, lcName)) ; + else if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR2, lcName)) ; + else if (!ALLOWED_ATTR[lcName] || FORBID_ATTR[lcName]) { + if ( + // First condition does a very basic check if a) it's basically a valid custom element tagname AND + // b) if the tagName passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck + // and c) if the attribute name passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.attributeNameCheck + _isBasicCustomElement(lcTag) && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, lcTag) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(lcTag)) && (CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.attributeNameCheck, lcName) || CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.attributeNameCheck(lcName)) || // Alternative, second condition checks if it's an `is`-attribute, AND + // the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck + lcName === "is" && CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, value) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(value)) + ) ; + else { + return false; + } + } else if (URI_SAFE_ATTRIBUTES[lcName]) ; + else if (regExpTest(IS_ALLOWED_URI$1, stringReplace(value, ATTR_WHITESPACE2, ""))) ; + else if ((lcName === "src" || lcName === "xlink:href" || lcName === "href") && lcTag !== "script" && stringIndexOf$1(value, "data:") === 0 && DATA_URI_TAGS[lcTag]) ; + else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA2, stringReplace(value, ATTR_WHITESPACE2, ""))) ; + else if (value) { + return false; + } else ; + return true; + }; + const _isBasicCustomElement = function _isBasicCustomElement2(tagName) { + return tagName !== "annotation-xml" && stringMatch(tagName, CUSTOM_ELEMENT2); + }; + const _sanitizeAttributes = function _sanitizeAttributes2(currentNode) { + _executeHook("beforeSanitizeAttributes", currentNode, null); + const { + attributes + } = currentNode; + if (!attributes) { + return; + } + const hookEvent = { + attrName: "", + attrValue: "", + keepAttr: true, + allowedAttributes: ALLOWED_ATTR + }; + let l2 = attributes.length; + while (l2--) { + const attr = attributes[l2]; + const { + name, + namespaceURI, + value: attrValue + } = attr; + const lcName = transformCaseFunc(name); + let value = name === "value" ? attrValue : stringTrim(attrValue); + hookEvent.attrName = lcName; + hookEvent.attrValue = value; + hookEvent.keepAttr = true; + hookEvent.forceKeepAttr = void 0; + _executeHook("uponSanitizeAttribute", currentNode, hookEvent); + value = hookEvent.attrValue; + if (SAFE_FOR_XML && regExpTest(/((--!?|])>)|<\/(style|title)/i, value)) { + _removeAttribute(name, currentNode); + continue; + } + if (hookEvent.forceKeepAttr) { + continue; + } + _removeAttribute(name, currentNode); + if (!hookEvent.keepAttr) { + continue; + } + if (!ALLOW_SELF_CLOSE_IN_ATTR && regExpTest(/\/>/i, value)) { + _removeAttribute(name, currentNode); + continue; + } + if (SAFE_FOR_TEMPLATES) { + arrayForEach([MUSTACHE_EXPR2, ERB_EXPR2, TMPLIT_EXPR2], (expr) => { + value = stringReplace(value, expr, " "); + }); + } + const lcTag = transformCaseFunc(currentNode.nodeName); + if (!_isValidAttribute(lcTag, lcName, value)) { + continue; + } + if (SANITIZE_NAMED_PROPS && (lcName === "id" || lcName === "name")) { + _removeAttribute(name, currentNode); + value = SANITIZE_NAMED_PROPS_PREFIX + value; + } + if (trustedTypesPolicy && typeof trustedTypes === "object" && typeof trustedTypes.getAttributeType === "function") { + if (namespaceURI) ; + else { + switch (trustedTypes.getAttributeType(lcTag, lcName)) { + case "TrustedHTML": { + value = trustedTypesPolicy.createHTML(value); + break; + } + case "TrustedScriptURL": { + value = trustedTypesPolicy.createScriptURL(value); + break; + } + } + } + } + try { + if (namespaceURI) { + currentNode.setAttributeNS(namespaceURI, name, value); + } else { + currentNode.setAttribute(name, value); + } + if (_isClobbered(currentNode)) { + _forceRemove(currentNode); + } else { + arrayPop(DOMPurify.removed); + } + } catch (_2) { + } + } + _executeHook("afterSanitizeAttributes", currentNode, null); + }; + const _sanitizeShadowDOM = function _sanitizeShadowDOM2(fragment) { + let shadowNode = null; + const shadowIterator = _createNodeIterator(fragment); + _executeHook("beforeSanitizeShadowDOM", fragment, null); + while (shadowNode = shadowIterator.nextNode()) { + _executeHook("uponSanitizeShadowNode", shadowNode, null); + if (_sanitizeElements(shadowNode)) { + continue; + } + if (shadowNode.content instanceof DocumentFragment) { + _sanitizeShadowDOM2(shadowNode.content); + } + _sanitizeAttributes(shadowNode); + } + _executeHook("afterSanitizeShadowDOM", fragment, null); + }; + DOMPurify.sanitize = function(dirty) { + let cfg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; + let body = null; + let importedNode = null; + let currentNode = null; + let returnNode = null; + IS_EMPTY_INPUT = !dirty; + if (IS_EMPTY_INPUT) { + dirty = ""; + } + if (typeof dirty !== "string" && !_isNode(dirty)) { + if (typeof dirty.toString === "function") { + dirty = dirty.toString(); + if (typeof dirty !== "string") { + throw typeErrorCreate("dirty is not a string, aborting"); + } + } else { + throw typeErrorCreate("toString is not a function"); + } + } + if (!DOMPurify.isSupported) { + return dirty; + } + if (!SET_CONFIG) { + _parseConfig(cfg); + } + DOMPurify.removed = []; + if (typeof dirty === "string") { + IN_PLACE = false; + } + if (IN_PLACE) { + if (dirty.nodeName) { + const tagName = transformCaseFunc(dirty.nodeName); + if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) { + throw typeErrorCreate("root node is forbidden and cannot be sanitized in-place"); + } + } + } else if (dirty instanceof Node2) { + body = _initDocument(""); + importedNode = body.ownerDocument.importNode(dirty, true); + if (importedNode.nodeType === NODE_TYPE.element && importedNode.nodeName === "BODY") { + body = importedNode; + } else if (importedNode.nodeName === "HTML") { + body = importedNode; + } else { + body.appendChild(importedNode); + } + } else { + if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT && // eslint-disable-next-line unicorn/prefer-includes + dirty.indexOf("<") === -1) { + return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty; + } + body = _initDocument(dirty); + if (!body) { + return RETURN_DOM ? null : RETURN_TRUSTED_TYPE ? emptyHTML : ""; + } + } + if (body && FORCE_BODY) { + _forceRemove(body.firstChild); + } + const nodeIterator = _createNodeIterator(IN_PLACE ? dirty : body); + while (currentNode = nodeIterator.nextNode()) { + if (_sanitizeElements(currentNode)) { + continue; + } + if (currentNode.content instanceof DocumentFragment) { + _sanitizeShadowDOM(currentNode.content); + } + _sanitizeAttributes(currentNode); + } + if (IN_PLACE) { + return dirty; + } + if (RETURN_DOM) { + if (RETURN_DOM_FRAGMENT) { + returnNode = createDocumentFragment.call(body.ownerDocument); + while (body.firstChild) { + returnNode.appendChild(body.firstChild); + } + } else { + returnNode = body; + } + if (ALLOWED_ATTR.shadowroot || ALLOWED_ATTR.shadowrootmode) { + returnNode = importNode.call(originalDocument, returnNode, true); + } + return returnNode; + } + let serializedHTML = WHOLE_DOCUMENT ? body.outerHTML : body.innerHTML; + if (WHOLE_DOCUMENT && ALLOWED_TAGS["!doctype"] && body.ownerDocument && body.ownerDocument.doctype && body.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, body.ownerDocument.doctype.name)) { + serializedHTML = "\n" + serializedHTML; + } + if (SAFE_FOR_TEMPLATES) { + arrayForEach([MUSTACHE_EXPR2, ERB_EXPR2, TMPLIT_EXPR2], (expr) => { + serializedHTML = stringReplace(serializedHTML, expr, " "); + }); + } + return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML; + }; + DOMPurify.setConfig = function() { + let cfg = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; + _parseConfig(cfg); + SET_CONFIG = true; + }; + DOMPurify.clearConfig = function() { + CONFIG = null; + SET_CONFIG = false; + }; + DOMPurify.isValidAttribute = function(tag, attr, value) { + if (!CONFIG) { + _parseConfig({}); + } + const lcTag = transformCaseFunc(tag); + const lcName = transformCaseFunc(attr); + return _isValidAttribute(lcTag, lcName, value); + }; + DOMPurify.addHook = function(entryPoint, hookFunction) { + if (typeof hookFunction !== "function") { + return; + } + hooks[entryPoint] = hooks[entryPoint] || []; + arrayPush(hooks[entryPoint], hookFunction); + }; + DOMPurify.removeHook = function(entryPoint) { + if (hooks[entryPoint]) { + return arrayPop(hooks[entryPoint]); + } + }; + DOMPurify.removeHooks = function(entryPoint) { + if (hooks[entryPoint]) { + hooks[entryPoint] = []; + } + }; + DOMPurify.removeAllHooks = function() { + hooks = {}; + }; + return DOMPurify; +} +var purify = createDOMPurify(); +/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */ +var matchHtmlRegExp = /["'&<>]/; +var escapeHtml_1 = escapeHtml; +function escapeHtml(string) { + var str = "" + string; + var match2 = matchHtmlRegExp.exec(str); + if (!match2) { + return str; + } + var escape2; + var html2 = ""; + var index = 0; + var lastIndex = 0; + for (index = match2.index; index < str.length; index++) { + switch (str.charCodeAt(index)) { + case 34: + escape2 = """; + break; + case 38: + escape2 = "&"; + break; + case 39: + escape2 = "'"; + break; + case 60: + escape2 = "<"; + break; + case 62: + escape2 = ">"; + break; + default: + continue; + } + if (lastIndex !== index) { + html2 += str.substring(lastIndex, index); + } + lastIndex = index + 1; + html2 += escape2; + } + return lastIndex !== index ? html2 + str.substring(lastIndex, index) : html2; +} +const escapeHTML = /* @__PURE__ */ getDefaultExportFromCjs(escapeHtml_1); +var define_process_env_default = {}; +const logger = getLoggerBuilder().setApp("@nextcloud/files").detectUser().build(); +var DefaultType = /* @__PURE__ */ ((DefaultType2) => { + DefaultType2["DEFAULT"] = "default"; + DefaultType2["HIDDEN"] = "hidden"; + return DefaultType2; +})(DefaultType || {}); +class FileAction { + _action; + constructor(action2) { + this.validateAction(action2); + this._action = action2; + } + get id() { + return this._action.id; + } + get displayName() { + return this._action.displayName; + } + get title() { + return this._action.title; + } + get iconSvgInline() { + return this._action.iconSvgInline; + } + get enabled() { + return this._action.enabled; + } + get exec() { + return this._action.exec; + } + get execBatch() { + return this._action.execBatch; + } + get order() { + return this._action.order; + } + get parent() { + return this._action.parent; + } + get default() { + return this._action.default; + } + get inline() { + return this._action.inline; + } + get renderInline() { + return this._action.renderInline; + } + validateAction(action2) { + if (!action2.id || typeof action2.id !== "string") { + throw new Error("Invalid id"); + } + if (!action2.displayName || typeof action2.displayName !== "function") { + throw new Error("Invalid displayName function"); + } + if ("title" in action2 && typeof action2.title !== "function") { + throw new Error("Invalid title function"); + } + if (!action2.iconSvgInline || typeof action2.iconSvgInline !== "function") { + throw new Error("Invalid iconSvgInline function"); + } + if (!action2.exec || typeof action2.exec !== "function") { + throw new Error("Invalid exec function"); + } + if ("enabled" in action2 && typeof action2.enabled !== "function") { + throw new Error("Invalid enabled function"); + } + if ("execBatch" in action2 && typeof action2.execBatch !== "function") { + throw new Error("Invalid execBatch function"); + } + if ("order" in action2 && typeof action2.order !== "number") { + throw new Error("Invalid order"); + } + if ("parent" in action2 && typeof action2.parent !== "string") { + throw new Error("Invalid parent"); + } + if (action2.default && !Object.values(DefaultType).includes(action2.default)) { + throw new Error("Invalid default"); + } + if ("inline" in action2 && typeof action2.inline !== "function") { + throw new Error("Invalid inline function"); + } + if ("renderInline" in action2 && typeof action2.renderInline !== "function") { + throw new Error("Invalid renderInline function"); + } + } +} +const registerFileAction = function(action2) { + if (typeof window._nc_fileactions === "undefined") { + window._nc_fileactions = []; + logger.debug("FileActions initialized"); + } + if (window._nc_fileactions.find((search) => search.id === action2.id)) { + logger.error(`FileAction ${action2.id} already registered`, { action: action2 }); + return; + } + window._nc_fileactions.push(action2); +}; +var Permission = /* @__PURE__ */ ((Permission2) => { + Permission2[Permission2["NONE"] = 0] = "NONE"; + Permission2[Permission2["CREATE"] = 4] = "CREATE"; + Permission2[Permission2["READ"] = 1] = "READ"; + Permission2[Permission2["UPDATE"] = 2] = "UPDATE"; + Permission2[Permission2["DELETE"] = 8] = "DELETE"; + Permission2[Permission2["SHARE"] = 16] = "SHARE"; + Permission2[Permission2["ALL"] = 31] = "ALL"; + return Permission2; +})(Permission || {}); +var FileType = /* @__PURE__ */ ((FileType2) => { + FileType2["Folder"] = "folder"; + FileType2["File"] = "file"; + return FileType2; +})(FileType || {}); +const isDavRessource = function(source, davService) { + return source.match(davService) !== null; +}; +const validateData = (data2, davService) => { + if (data2.id && typeof data2.id !== "number") { + throw new Error("Invalid id type of value"); + } + if (!data2.source) { + throw new Error("Missing mandatory source"); + } + try { + new URL(data2.source); + } catch (e2) { + throw new Error("Invalid source format, source must be a valid URL"); + } + if (!data2.source.startsWith("http")) { + throw new Error("Invalid source format, only http(s) is supported"); + } + if (data2.displayname && typeof data2.displayname !== "string") { + throw new Error("Invalid displayname type"); + } + if (data2.mtime && !(data2.mtime instanceof Date)) { + throw new Error("Invalid mtime type"); + } + if (data2.crtime && !(data2.crtime instanceof Date)) { + throw new Error("Invalid crtime type"); + } + if (!data2.mime || typeof data2.mime !== "string" || !data2.mime.match(/^[-\w.]+\/[-+\w.]+$/gi)) { + throw new Error("Missing or invalid mandatory mime"); + } + if ("size" in data2 && typeof data2.size !== "number" && data2.size !== void 0) { + throw new Error("Invalid size type"); + } + if ("permissions" in data2 && data2.permissions !== void 0 && !(typeof data2.permissions === "number" && data2.permissions >= Permission.NONE && data2.permissions <= Permission.ALL)) { + throw new Error("Invalid permissions"); + } + if (data2.owner && data2.owner !== null && typeof data2.owner !== "string") { + throw new Error("Invalid owner type"); + } + if (data2.attributes && typeof data2.attributes !== "object") { + throw new Error("Invalid attributes type"); + } + if (data2.root && typeof data2.root !== "string") { + throw new Error("Invalid root type"); + } + if (data2.root && !data2.root.startsWith("/")) { + throw new Error("Root must start with a leading slash"); + } + if (data2.root && !data2.source.includes(data2.root)) { + throw new Error("Root must be part of the source"); + } + if (data2.root && isDavRessource(data2.source, davService)) { + const service = data2.source.match(davService)[0]; + if (!data2.source.includes(pathBrowserify.join(service, data2.root))) { + throw new Error("The root must be relative to the service. e.g /files/emma"); + } + } + if (data2.status && !Object.values(NodeStatus).includes(data2.status)) { + throw new Error("Status must be a valid NodeStatus"); + } +}; +var NodeStatus = /* @__PURE__ */ ((NodeStatus2) => { + NodeStatus2["NEW"] = "new"; + NodeStatus2["FAILED"] = "failed"; + NodeStatus2["LOADING"] = "loading"; + NodeStatus2["LOCKED"] = "locked"; + return NodeStatus2; +})(NodeStatus || {}); +class Node { + _data; + _attributes; + _knownDavService = /(remote|public)\.php\/(web)?dav/i; + readonlyAttributes = Object.entries(Object.getOwnPropertyDescriptors(Node.prototype)).filter((e2) => typeof e2[1].get === "function" && e2[0] !== "__proto__").map((e2) => e2[0]); + handler = { + set: (target, prop, value) => { + if (this.readonlyAttributes.includes(prop)) { + return false; + } + return Reflect.set(target, prop, value); + }, + deleteProperty: (target, prop) => { + if (this.readonlyAttributes.includes(prop)) { + return false; + } + return Reflect.deleteProperty(target, prop); + }, + // TODO: This is deprecated and only needed for files v3 + get: (target, prop, receiver) => { + if (this.readonlyAttributes.includes(prop)) { + logger.warn(`Accessing "Node.attributes.${prop}" is deprecated, access it directly on the Node instance.`); + return Reflect.get(this, prop); + } + return Reflect.get(target, prop, receiver); + } + }; + constructor(data2, davService) { + validateData(data2, davService || this._knownDavService); + this._data = { + // TODO: Remove with next major release, this is just for compatibility + displayname: data2.attributes?.displayname, + ...data2, + attributes: {} + }; + this._attributes = new Proxy(this._data.attributes, this.handler); + this.update(data2.attributes ?? {}); + if (davService) { + this._knownDavService = davService; + } + } + /** + * Get the source url to this object + * There is no setter as the source is not meant to be changed manually. + * You can use the rename or move method to change the source. + */ + get source() { + return this._data.source.replace(/\/$/i, ""); + } + /** + * Get the encoded source url to this object for requests purposes + */ + get encodedSource() { + const { origin: origin2 } = new URL(this.source); + return origin2 + encodePath(this.source.slice(origin2.length)); + } + /** + * Get this object name + * There is no setter as the source is not meant to be changed manually. + * You can use the rename or move method to change the source. + */ + get basename() { + return pathBrowserify.basename(this.source); + } + /** + * The nodes displayname + * By default the display name and the `basename` are identical, + * but it is possible to have a different name. This happens + * on the files app for example for shared folders. + */ + get displayname() { + return this._data.displayname || this.basename; + } + /** + * Set the displayname + */ + set displayname(displayname) { + this._data.displayname = displayname; + } + /** + * Get this object's extension + * There is no setter as the source is not meant to be changed manually. + * You can use the rename or move method to change the source. + */ + get extension() { + return pathBrowserify.extname(this.source); + } + /** + * Get the directory path leading to this object + * Will use the relative path to root if available + * + * There is no setter as the source is not meant to be changed manually. + * You can use the rename or move method to change the source. + */ + get dirname() { + if (this.root) { + let source = this.source; + if (this.isDavRessource) { + source = source.split(this._knownDavService).pop(); + } + const firstMatch = source.indexOf(this.root); + const root = this.root.replace(/\/$/, ""); + return pathBrowserify.dirname(source.slice(firstMatch + root.length) || "/"); + } + const url = new URL(this.source); + return pathBrowserify.dirname(url.pathname); + } + /** + * Get the file mime + * There is no setter as the mime is not meant to be changed + */ + get mime() { + return this._data.mime; + } + /** + * Get the file modification time + */ + get mtime() { + return this._data.mtime; + } + /** + * Set the file modification time + */ + set mtime(mtime) { + this._data.mtime = mtime; + } + /** + * Get the file creation time + * There is no setter as the creation time is not meant to be changed + */ + get crtime() { + return this._data.crtime; + } + /** + * Get the file size + */ + get size() { + return this._data.size; + } + /** + * Set the file size + */ + set size(size) { + this.updateMtime(); + this._data.size = size; + } + /** + * Get the file attribute + * This contains all additional attributes not provided by the Node class + */ + get attributes() { + return this._attributes; + } + /** + * Get the file permissions + */ + get permissions() { + if (this.owner === null && !this.isDavRessource) { + return Permission.READ; + } + return this._data.permissions !== void 0 ? this._data.permissions : Permission.NONE; + } + /** + * Set the file permissions + */ + set permissions(permissions) { + this.updateMtime(); + this._data.permissions = permissions; + } + /** + * Get the file owner + * There is no setter as the owner is not meant to be changed + */ + get owner() { + if (!this.isDavRessource) { + return null; + } + return this._data.owner; + } + /** + * Is this a dav-related ressource ? + */ + get isDavRessource() { + return isDavRessource(this.source, this._knownDavService); + } + /** + * Get the dav root of this object + * There is no setter as the root is not meant to be changed + */ + get root() { + if (this._data.root) { + return this._data.root.replace(/^(.+)\/$/, "$1"); + } + if (this.isDavRessource) { + const root = pathBrowserify.dirname(this.source); + return root.split(this._knownDavService).pop() || null; + } + return null; + } + /** + * Get the absolute path of this object relative to the root + */ + get path() { + if (this.root) { + let source = this.source; + if (this.isDavRessource) { + source = source.split(this._knownDavService).pop(); + } + const firstMatch = source.indexOf(this.root); + const root = this.root.replace(/\/$/, ""); + return source.slice(firstMatch + root.length) || "/"; + } + return (this.dirname + "/" + this.basename).replace(/\/\//g, "/"); + } + /** + * Get the node id if defined. + * There is no setter as the fileid is not meant to be changed + */ + get fileid() { + return this._data?.id; + } + /** + * Get the node status. + */ + get status() { + return this._data?.status; + } + /** + * Set the node status. + */ + set status(status) { + this._data.status = status; + } + /** + * Move the node to a new destination + * + * @param {string} destination the new source. + * e.g. https://cloud.domain.com/remote.php/dav/files/emma/Photos/picture.jpg + */ + move(destination) { + validateData({ ...this._data, source: destination }, this._knownDavService); + const oldBasename = this.basename; + this._data.source = destination; + if (this.displayname === oldBasename && this.basename !== oldBasename) { + this.displayname = this.basename; + } + this.updateMtime(); + } + /** + * Rename the node + * This aliases the move method for easier usage + * + * @param basename The new name of the node + */ + rename(basename2) { + if (basename2.includes("/")) { + throw new Error("Invalid basename"); + } + this.move(pathBrowserify.dirname(this.source) + "/" + basename2); + } + /** + * Update the mtime if exists + */ + updateMtime() { + if (this._data.mtime) { + this._data.mtime = /* @__PURE__ */ new Date(); + } + } + /** + * Update the attributes of the node + * Warning, updating attributes will NOT automatically update the mtime. + * + * @param attributes The new attributes to update on the Node attributes + */ + update(attributes) { + for (const [name, value] of Object.entries(attributes)) { + try { + if (value === void 0) { + delete this.attributes[name]; + } else { + this.attributes[name] = value; + } + } catch (e2) { + if (e2 instanceof TypeError) { + continue; + } + throw e2; + } + } + } +} +class Folder extends Node { + constructor(data2) { + super({ + ...data2, + mime: "httpd/unix-directory" + }); + } + get type() { + return FileType.Folder; + } + get extension() { + return null; + } + get mime() { + return "httpd/unix-directory"; + } +} +function davGetRootPath() { + if (isPublicShare()) { + return `/files/${getSharingToken()}`; + } + return `/files/${getCurrentUser()?.uid}`; +} +davGetRootPath(); +function davGetRemoteURL() { + const url = U$1("dav"); + if (isPublicShare()) { + return url.replace("remote.php", "public.php"); + } + return url; +} +davGetRemoteURL(); +var util$3 = {}; +(function(exports) { + const nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD"; + const nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040"; + const nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*"; + const regexName = new RegExp("^" + nameRegexp + "$"); + const getAllMatches = function(string, regex) { + const matches = []; + let match2 = regex.exec(string); + while (match2) { + const allmatches = []; + allmatches.startIndex = regex.lastIndex - match2[0].length; + const len = match2.length; + for (let index = 0; index < len; index++) { + allmatches.push(match2[index]); + } + matches.push(allmatches); + match2 = regex.exec(string); + } + return matches; + }; + const isName = function(string) { + const match2 = regexName.exec(string); + return !(match2 === null || typeof match2 === "undefined"); + }; + exports.isExist = function(v2) { + return typeof v2 !== "undefined"; + }; + exports.isEmptyObject = function(obj) { + return Object.keys(obj).length === 0; + }; + exports.merge = function(target, a2, arrayMode) { + if (a2) { + const keys3 = Object.keys(a2); + const len = keys3.length; + for (let i = 0; i < len; i++) { + if (arrayMode === "strict") { + target[keys3[i]] = [a2[keys3[i]]]; + } else { + target[keys3[i]] = a2[keys3[i]]; + } + } + } + }; + exports.getValue = function(v2) { + if (exports.isExist(v2)) { + return v2; + } else { + return ""; + } + }; + exports.isName = isName; + exports.getAllMatches = getAllMatches; + exports.nameRegexp = nameRegexp; +})(util$3); +if (!Number.parseInt && window.parseInt) { + Number.parseInt = window.parseInt; +} +if (!Number.parseFloat && window.parseFloat) { + Number.parseFloat = window.parseFloat; +} +const debug$1 = typeof process$1$1 === "object" && define_process_env_default && define_process_env_default.NODE_DEBUG && /\bsemver\b/i.test(define_process_env_default.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => { +}; +var debug_1 = debug$1; +const SEMVER_SPEC_VERSION = "2.0.0"; +const MAX_LENGTH$1 = 256; +const MAX_SAFE_INTEGER$1 = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */ +9007199254740991; +const MAX_SAFE_COMPONENT_LENGTH = 16; +const MAX_SAFE_BUILD_LENGTH = MAX_LENGTH$1 - 6; +const RELEASE_TYPES = [ + "major", + "premajor", + "minor", + "preminor", + "patch", + "prepatch", + "prerelease" +]; +var constants = { + MAX_LENGTH: MAX_LENGTH$1, + MAX_SAFE_COMPONENT_LENGTH, + MAX_SAFE_BUILD_LENGTH, + MAX_SAFE_INTEGER: MAX_SAFE_INTEGER$1, + RELEASE_TYPES, + SEMVER_SPEC_VERSION, + FLAG_INCLUDE_PRERELEASE: 1, + FLAG_LOOSE: 2 +}; +var re$1 = { exports: {} }; +(function(module, exports) { + const { + MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH2, + MAX_SAFE_BUILD_LENGTH: MAX_SAFE_BUILD_LENGTH2, + MAX_LENGTH: MAX_LENGTH2 + } = constants; + const debug2 = debug_1; + exports = module.exports = {}; + const re2 = exports.re = []; + const safeRe = exports.safeRe = []; + const src = exports.src = []; + const t2 = exports.t = {}; + let R2 = 0; + const LETTERDASHNUMBER = "[a-zA-Z0-9-]"; + const safeRegexReplacements = [ + ["\\s", 1], + ["\\d", MAX_LENGTH2], + [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH2] + ]; + const makeSafeRegex = (value) => { + for (const [token2, max2] of safeRegexReplacements) { + value = value.split(`${token2}*`).join(`${token2}{0,${max2}}`).split(`${token2}+`).join(`${token2}{1,${max2}}`); + } + return value; + }; + const createToken = (name, value, isGlobal) => { + const safe = makeSafeRegex(value); + const index = R2++; + debug2(name, index, value); + t2[name] = index; + src[index] = value; + re2[index] = new RegExp(value, isGlobal ? "g" : void 0); + safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); + }; + createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); + createToken("NUMERICIDENTIFIERLOOSE", "\\d+"); + createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`); + createToken("MAINVERSION", `(${src[t2.NUMERICIDENTIFIER]})\\.(${src[t2.NUMERICIDENTIFIER]})\\.(${src[t2.NUMERICIDENTIFIER]})`); + createToken("MAINVERSIONLOOSE", `(${src[t2.NUMERICIDENTIFIERLOOSE]})\\.(${src[t2.NUMERICIDENTIFIERLOOSE]})\\.(${src[t2.NUMERICIDENTIFIERLOOSE]})`); + createToken("PRERELEASEIDENTIFIER", `(?:${src[t2.NUMERICIDENTIFIER]}|${src[t2.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t2.NUMERICIDENTIFIERLOOSE]}|${src[t2.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASE", `(?:-(${src[t2.PRERELEASEIDENTIFIER]}(?:\\.${src[t2.PRERELEASEIDENTIFIER]})*))`); + createToken("PRERELEASELOOSE", `(?:-?(${src[t2.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t2.PRERELEASEIDENTIFIERLOOSE]})*))`); + createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`); + createToken("BUILD", `(?:\\+(${src[t2.BUILDIDENTIFIER]}(?:\\.${src[t2.BUILDIDENTIFIER]})*))`); + createToken("FULLPLAIN", `v?${src[t2.MAINVERSION]}${src[t2.PRERELEASE]}?${src[t2.BUILD]}?`); + createToken("FULL", `^${src[t2.FULLPLAIN]}$`); + createToken("LOOSEPLAIN", `[v=\\s]*${src[t2.MAINVERSIONLOOSE]}${src[t2.PRERELEASELOOSE]}?${src[t2.BUILD]}?`); + createToken("LOOSE", `^${src[t2.LOOSEPLAIN]}$`); + createToken("GTLT", "((?:<|>)?=?)"); + createToken("XRANGEIDENTIFIERLOOSE", `${src[t2.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); + createToken("XRANGEIDENTIFIER", `${src[t2.NUMERICIDENTIFIER]}|x|X|\\*`); + createToken("XRANGEPLAIN", `[v=\\s]*(${src[t2.XRANGEIDENTIFIER]})(?:\\.(${src[t2.XRANGEIDENTIFIER]})(?:\\.(${src[t2.XRANGEIDENTIFIER]})(?:${src[t2.PRERELEASE]})?${src[t2.BUILD]}?)?)?`); + createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:${src[t2.PRERELEASELOOSE]})?${src[t2.BUILD]}?)?)?`); + createToken("XRANGE", `^${src[t2.GTLT]}\\s*${src[t2.XRANGEPLAIN]}$`); + createToken("XRANGELOOSE", `^${src[t2.GTLT]}\\s*${src[t2.XRANGEPLAINLOOSE]}$`); + createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH2}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH2}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH2}}))?`); + createToken("COERCE", `${src[t2.COERCEPLAIN]}(?:$|[^\\d])`); + createToken("COERCEFULL", src[t2.COERCEPLAIN] + `(?:${src[t2.PRERELEASE]})?(?:${src[t2.BUILD]})?(?:$|[^\\d])`); + createToken("COERCERTL", src[t2.COERCE], true); + createToken("COERCERTLFULL", src[t2.COERCEFULL], true); + createToken("LONETILDE", "(?:~>?)"); + createToken("TILDETRIM", `(\\s*)${src[t2.LONETILDE]}\\s+`, true); + exports.tildeTrimReplace = "$1~"; + createToken("TILDE", `^${src[t2.LONETILDE]}${src[t2.XRANGEPLAIN]}$`); + createToken("TILDELOOSE", `^${src[t2.LONETILDE]}${src[t2.XRANGEPLAINLOOSE]}$`); + createToken("LONECARET", "(?:\\^)"); + createToken("CARETTRIM", `(\\s*)${src[t2.LONECARET]}\\s+`, true); + exports.caretTrimReplace = "$1^"; + createToken("CARET", `^${src[t2.LONECARET]}${src[t2.XRANGEPLAIN]}$`); + createToken("CARETLOOSE", `^${src[t2.LONECARET]}${src[t2.XRANGEPLAINLOOSE]}$`); + createToken("COMPARATORLOOSE", `^${src[t2.GTLT]}\\s*(${src[t2.LOOSEPLAIN]})$|^$`); + createToken("COMPARATOR", `^${src[t2.GTLT]}\\s*(${src[t2.FULLPLAIN]})$|^$`); + createToken("COMPARATORTRIM", `(\\s*)${src[t2.GTLT]}\\s*(${src[t2.LOOSEPLAIN]}|${src[t2.XRANGEPLAIN]})`, true); + exports.comparatorTrimReplace = "$1$2$3"; + createToken("HYPHENRANGE", `^\\s*(${src[t2.XRANGEPLAIN]})\\s+-\\s+(${src[t2.XRANGEPLAIN]})\\s*$`); + createToken("HYPHENRANGELOOSE", `^\\s*(${src[t2.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t2.XRANGEPLAINLOOSE]})\\s*$`); + createToken("STAR", "(<|>)?=?\\s*\\*"); + createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"); + createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$"); +})(re$1, re$1.exports); +function bind(fn, thisArg) { + return function wrap() { + return fn.apply(thisArg, arguments); + }; +} +const { toString: toString$6 } = Object.prototype; +const { getPrototypeOf } = Object; +const kindOf = /* @__PURE__ */ ((cache) => (thing) => { + const str = toString$6.call(thing); + return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); +})(/* @__PURE__ */ Object.create(null)); +const kindOfTest = (type) => { + type = type.toLowerCase(); + return (thing) => kindOf(thing) === type; +}; +const typeOfTest = (type) => (thing) => typeof thing === type; +const { isArray } = Array; +const isUndefined = typeOfTest("undefined"); +function isBuffer(val2) { + return val2 !== null && !isUndefined(val2) && val2.constructor !== null && !isUndefined(val2.constructor) && isFunction(val2.constructor.isBuffer) && val2.constructor.isBuffer(val2); +} +const isArrayBuffer = kindOfTest("ArrayBuffer"); +function isArrayBufferView(val2) { + let result; + if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { + result = ArrayBuffer.isView(val2); + } else { + result = val2 && val2.buffer && isArrayBuffer(val2.buffer); + } + return result; +} +const isString = typeOfTest("string"); +const isFunction = typeOfTest("function"); +const isNumber = typeOfTest("number"); +const isObject$6 = (thing) => thing !== null && typeof thing === "object"; +const isBoolean = (thing) => thing === true || thing === false; +const isPlainObject = (val2) => { + if (kindOf(val2) !== "object") { + return false; + } + const prototype2 = getPrototypeOf(val2); + return (prototype2 === null || prototype2 === Object.prototype || Object.getPrototypeOf(prototype2) === null) && !(Symbol.toStringTag in val2) && !(Symbol.iterator in val2); +}; +const isDate = kindOfTest("Date"); +const isFile = kindOfTest("File"); +const isBlob = kindOfTest("Blob"); +const isFileList = kindOfTest("FileList"); +const isStream = (val2) => isObject$6(val2) && isFunction(val2.pipe); +const isFormData = (thing) => { + let kind; + return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance + kind === "object" && isFunction(thing.toString) && thing.toString() === "[object FormData]")); +}; +const isURLSearchParams = kindOfTest("URLSearchParams"); +const [isReadableStream, isRequest, isResponse, isHeaders] = ["ReadableStream", "Request", "Response", "Headers"].map(kindOfTest); +const trim = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); +function forEach(obj, fn, { allOwnKeys = false } = {}) { + if (obj === null || typeof obj === "undefined") { + return; + } + let i; + let l2; + if (typeof obj !== "object") { + obj = [obj]; + } + if (isArray(obj)) { + for (i = 0, l2 = obj.length; i < l2; i++) { + fn.call(null, obj[i], i, obj); + } + } else { + const keys3 = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); + const len = keys3.length; + let key; + for (i = 0; i < len; i++) { + key = keys3[i]; + fn.call(null, obj[key], key, obj); + } + } +} +function findKey(obj, key) { + key = key.toLowerCase(); + const keys3 = Object.keys(obj); + let i = keys3.length; + let _key; + while (i-- > 0) { + _key = keys3[i]; + if (key === _key.toLowerCase()) { + return _key; + } + } + return null; +} +const _global = (() => { + if (typeof globalThis !== "undefined") return globalThis; + return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global$e; +})(); +const isContextDefined = (context) => !isUndefined(context) && context !== _global; +function merge() { + const { caseless } = isContextDefined(this) && this || {}; + const result = {}; + const assignValue = (val2, key) => { + const targetKey = caseless && findKey(result, key) || key; + if (isPlainObject(result[targetKey]) && isPlainObject(val2)) { + result[targetKey] = merge(result[targetKey], val2); + } else if (isPlainObject(val2)) { + result[targetKey] = merge({}, val2); + } else if (isArray(val2)) { + result[targetKey] = val2.slice(); + } else { + result[targetKey] = val2; + } + }; + for (let i = 0, l2 = arguments.length; i < l2; i++) { + arguments[i] && forEach(arguments[i], assignValue); + } + return result; +} +const extend = (a2, b2, thisArg, { allOwnKeys } = {}) => { + forEach(b2, (val2, key) => { + if (thisArg && isFunction(val2)) { + a2[key] = bind(val2, thisArg); + } else { + a2[key] = val2; + } + }, { allOwnKeys }); + return a2; +}; +const stripBOM = (content) => { + if (content.charCodeAt(0) === 65279) { + content = content.slice(1); + } + return content; +}; +const inherits = (constructor, superConstructor, props, descriptors2) => { + constructor.prototype = Object.create(superConstructor.prototype, descriptors2); + constructor.prototype.constructor = constructor; + Object.defineProperty(constructor, "super", { + value: superConstructor.prototype + }); + props && Object.assign(constructor.prototype, props); +}; +const toFlatObject = (sourceObj, destObj, filter2, propFilter) => { + let props; + let i; + let prop; + const merged = {}; + destObj = destObj || {}; + if (sourceObj == null) return destObj; + do { + props = Object.getOwnPropertyNames(sourceObj); + i = props.length; + while (i-- > 0) { + prop = props[i]; + if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { + destObj[prop] = sourceObj[prop]; + merged[prop] = true; + } + } + sourceObj = filter2 !== false && getPrototypeOf(sourceObj); + } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype); + return destObj; +}; +const endsWith = (str, searchString, position) => { + str = String(str); + if (position === void 0 || position > str.length) { + position = str.length; + } + position -= searchString.length; + const lastIndex = str.indexOf(searchString, position); + return lastIndex !== -1 && lastIndex === position; +}; +const toArray = (thing) => { + if (!thing) return null; + if (isArray(thing)) return thing; + let i = thing.length; + if (!isNumber(i)) return null; + const arr = new Array(i); + while (i-- > 0) { + arr[i] = thing[i]; + } + return arr; +}; +const isTypedArray = /* @__PURE__ */ ((TypedArray) => { + return (thing) => { + return TypedArray && thing instanceof TypedArray; + }; +})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array)); +const forEachEntry = (obj, fn) => { + const generator = obj && obj[Symbol.iterator]; + const iterator = generator.call(obj); + let result; + while ((result = iterator.next()) && !result.done) { + const pair = result.value; + fn.call(obj, pair[0], pair[1]); + } +}; +const matchAll = (regExp, str) => { + let matches; + const arr = []; + while ((matches = regExp.exec(str)) !== null) { + arr.push(matches); + } + return arr; +}; +const isHTMLForm = kindOfTest("HTMLFormElement"); +const toCamelCase = (str) => { + return str.toLowerCase().replace( + /[-_\s]([a-z\d])(\w*)/g, + function replacer(m2, p1, p2) { + return p1.toUpperCase() + p2; + } + ); +}; +const hasOwnProperty$1 = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype); +const isRegExp = kindOfTest("RegExp"); +const reduceDescriptors = (obj, reducer) => { + const descriptors2 = Object.getOwnPropertyDescriptors(obj); + const reducedDescriptors = {}; + forEach(descriptors2, (descriptor, name) => { + let ret; + if ((ret = reducer(descriptor, name, obj)) !== false) { + reducedDescriptors[name] = ret || descriptor; + } + }); + Object.defineProperties(obj, reducedDescriptors); +}; +const freezeMethods = (obj) => { + reduceDescriptors(obj, (descriptor, name) => { + if (isFunction(obj) && ["arguments", "caller", "callee"].indexOf(name) !== -1) { + return false; + } + const value = obj[name]; + if (!isFunction(value)) return; + descriptor.enumerable = false; + if ("writable" in descriptor) { + descriptor.writable = false; + return; + } + if (!descriptor.set) { + descriptor.set = () => { + throw Error("Can not rewrite read-only method '" + name + "'"); + }; + } + }); +}; +const toObjectSet = (arrayOrString, delimiter) => { + const obj = {}; + const define = (arr) => { + arr.forEach((value) => { + obj[value] = true; + }); + }; + isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); + return obj; +}; +const noop = () => { +}; +const toFiniteNumber = (value, defaultValue) => { + return value != null && Number.isFinite(value = +value) ? value : defaultValue; +}; +const ALPHA = "abcdefghijklmnopqrstuvwxyz"; +const DIGIT = "0123456789"; +const ALPHABET = { + DIGIT, + ALPHA, + ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT +}; +const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { + let str = ""; + const { length } = alphabet; + while (size--) { + str += alphabet[Math.random() * length | 0]; + } + return str; +}; +function isSpecCompliantForm(thing) { + return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator]); +} +const toJSONObject = (obj) => { + const stack = new Array(10); + const visit = (source, i) => { + if (isObject$6(source)) { + if (stack.indexOf(source) >= 0) { + return; + } + if (!("toJSON" in source)) { + stack[i] = source; + const target = isArray(source) ? [] : {}; + forEach(source, (value, key) => { + const reducedValue = visit(value, i + 1); + !isUndefined(reducedValue) && (target[key] = reducedValue); + }); + stack[i] = void 0; + return target; + } + } + return source; + }; + return visit(obj, 0); +}; +const isAsyncFn = kindOfTest("AsyncFunction"); +const isThenable = (thing) => thing && (isObject$6(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); +const _setImmediate = ((setImmediateSupported, postMessageSupported) => { + if (setImmediateSupported) { + return setImmediate; + } + return postMessageSupported ? ((token2, callbacks) => { + _global.addEventListener("message", ({ source, data: data2 }) => { + if (source === _global && data2 === token2) { + callbacks.length && callbacks.shift()(); + } + }, false); + return (cb) => { + callbacks.push(cb); + _global.postMessage(token2, "*"); + }; + })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); +})( + typeof setImmediate === "function", + isFunction(_global.postMessage) +); +const asap = typeof queueMicrotask !== "undefined" ? queueMicrotask.bind(_global) : typeof process$1$1 !== "undefined" && process$1$1.nextTick || _setImmediate; +const utils$1 = { + isArray, + isArrayBuffer, + isBuffer, + isFormData, + isArrayBufferView, + isString, + isNumber, + isBoolean, + isObject: isObject$6, + isPlainObject, + isReadableStream, + isRequest, + isResponse, + isHeaders, + isUndefined, + isDate, + isFile, + isBlob, + isRegExp, + isFunction, + isStream, + isURLSearchParams, + isTypedArray, + isFileList, + forEach, + merge, + extend, + trim, + stripBOM, + inherits, + toFlatObject, + kindOf, + kindOfTest, + endsWith, + toArray, + forEachEntry, + matchAll, + isHTMLForm, + hasOwnProperty: hasOwnProperty$1, + hasOwnProp: hasOwnProperty$1, + // an alias to avoid ESLint no-prototype-builtins detection + reduceDescriptors, + freezeMethods, + toObjectSet, + toCamelCase, + noop, + toFiniteNumber, + findKey, + global: _global, + isContextDefined, + ALPHABET, + generateString, + isSpecCompliantForm, + toJSONObject, + isAsyncFn, + isThenable, + setImmediate: _setImmediate, + asap +}; +var buffer = {}; +var base64Js = {}; +base64Js.byteLength = byteLength; +base64Js.toByteArray = toByteArray; +base64Js.fromByteArray = fromByteArray; +var lookup = []; +var revLookup = []; +var Arr = typeof Uint8Array !== "undefined" ? Uint8Array : Array; +var code = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; +for (var i = 0, len = code.length; i < len; ++i) { + lookup[i] = code[i]; + revLookup[code.charCodeAt(i)] = i; +} +revLookup["-".charCodeAt(0)] = 62; +revLookup["_".charCodeAt(0)] = 63; +function getLens(b64) { + var len = b64.length; + if (len % 4 > 0) { + throw new Error("Invalid string. Length must be a multiple of 4"); + } + var validLen = b64.indexOf("="); + if (validLen === -1) validLen = len; + var placeHoldersLen = validLen === len ? 0 : 4 - validLen % 4; + return [validLen, placeHoldersLen]; +} +function byteLength(b64) { + var lens = getLens(b64); + var validLen = lens[0]; + var placeHoldersLen = lens[1]; + return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen; +} +function _byteLength(b64, validLen, placeHoldersLen) { + return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen; +} +function toByteArray(b64) { + var tmp; + var lens = getLens(b64); + var validLen = lens[0]; + var placeHoldersLen = lens[1]; + var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)); + var curByte = 0; + var len = placeHoldersLen > 0 ? validLen - 4 : validLen; + var i; + for (i = 0; i < len; i += 4) { + tmp = revLookup[b64.charCodeAt(i)] << 18 | revLookup[b64.charCodeAt(i + 1)] << 12 | revLookup[b64.charCodeAt(i + 2)] << 6 | revLookup[b64.charCodeAt(i + 3)]; + arr[curByte++] = tmp >> 16 & 255; + arr[curByte++] = tmp >> 8 & 255; + arr[curByte++] = tmp & 255; + } + if (placeHoldersLen === 2) { + tmp = revLookup[b64.charCodeAt(i)] << 2 | revLookup[b64.charCodeAt(i + 1)] >> 4; + arr[curByte++] = tmp & 255; + } + if (placeHoldersLen === 1) { + tmp = revLookup[b64.charCodeAt(i)] << 10 | revLookup[b64.charCodeAt(i + 1)] << 4 | revLookup[b64.charCodeAt(i + 2)] >> 2; + arr[curByte++] = tmp >> 8 & 255; + arr[curByte++] = tmp & 255; + } + return arr; +} +function tripletToBase64(num) { + return lookup[num >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[num & 63]; +} +function encodeChunk(uint8, start, end) { + var tmp; + var output = []; + for (var i = start; i < end; i += 3) { + tmp = (uint8[i] << 16 & 16711680) + (uint8[i + 1] << 8 & 65280) + (uint8[i + 2] & 255); + output.push(tripletToBase64(tmp)); + } + return output.join(""); +} +function fromByteArray(uint8) { + var tmp; + var len = uint8.length; + var extraBytes = len % 3; + var parts = []; + var maxChunkLength = 16383; + for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { + parts.push(encodeChunk(uint8, i, i + maxChunkLength > len2 ? len2 : i + maxChunkLength)); + } + if (extraBytes === 1) { + tmp = uint8[len - 1]; + parts.push( + lookup[tmp >> 2] + lookup[tmp << 4 & 63] + "==" + ); + } else if (extraBytes === 2) { + tmp = (uint8[len - 2] << 8) + uint8[len - 1]; + parts.push( + lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + "=" + ); + } + return parts.join(""); +} +var ieee754 = {}; +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ +ieee754.read = function(buffer2, offset, isLE, mLen, nBytes) { + var e2, m2; + var eLen = nBytes * 8 - mLen - 1; + var eMax = (1 << eLen) - 1; + var eBias = eMax >> 1; + var nBits = -7; + var i = isLE ? nBytes - 1 : 0; + var d2 = isLE ? -1 : 1; + var s2 = buffer2[offset + i]; + i += d2; + e2 = s2 & (1 << -nBits) - 1; + s2 >>= -nBits; + nBits += eLen; + for (; nBits > 0; e2 = e2 * 256 + buffer2[offset + i], i += d2, nBits -= 8) { + } + m2 = e2 & (1 << -nBits) - 1; + e2 >>= -nBits; + nBits += mLen; + for (; nBits > 0; m2 = m2 * 256 + buffer2[offset + i], i += d2, nBits -= 8) { + } + if (e2 === 0) { + e2 = 1 - eBias; + } else if (e2 === eMax) { + return m2 ? NaN : (s2 ? -1 : 1) * Infinity; + } else { + m2 = m2 + Math.pow(2, mLen); + e2 = e2 - eBias; + } + return (s2 ? -1 : 1) * m2 * Math.pow(2, e2 - mLen); +}; +ieee754.write = function(buffer2, value, offset, isLE, mLen, nBytes) { + var e2, m2, c2; + var eLen = nBytes * 8 - mLen - 1; + var eMax = (1 << eLen) - 1; + var eBias = eMax >> 1; + var rt2 = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0; + var i = isLE ? 0 : nBytes - 1; + var d2 = isLE ? 1 : -1; + var s2 = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0; + value = Math.abs(value); + if (isNaN(value) || value === Infinity) { + m2 = isNaN(value) ? 1 : 0; + e2 = eMax; + } else { + e2 = Math.floor(Math.log(value) / Math.LN2); + if (value * (c2 = Math.pow(2, -e2)) < 1) { + e2--; + c2 *= 2; + } + if (e2 + eBias >= 1) { + value += rt2 / c2; + } else { + value += rt2 * Math.pow(2, 1 - eBias); + } + if (value * c2 >= 2) { + e2++; + c2 /= 2; + } + if (e2 + eBias >= eMax) { + m2 = 0; + e2 = eMax; + } else if (e2 + eBias >= 1) { + m2 = (value * c2 - 1) * Math.pow(2, mLen); + e2 = e2 + eBias; + } else { + m2 = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen); + e2 = 0; + } + } + for (; mLen >= 8; buffer2[offset + i] = m2 & 255, i += d2, m2 /= 256, mLen -= 8) { + } + e2 = e2 << mLen | m2; + eLen += mLen; + for (; eLen > 0; buffer2[offset + i] = e2 & 255, i += d2, e2 /= 256, eLen -= 8) { + } + buffer2[offset + i - d2] |= s2 * 128; +}; +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ +(function(exports) { + const base64 = base64Js; + const ieee754$1 = ieee754; + const customInspectSymbol = typeof Symbol === "function" && typeof Symbol["for"] === "function" ? Symbol["for"]("nodejs.util.inspect.custom") : null; + exports.Buffer = Buffer2; + exports.SlowBuffer = SlowBuffer; + exports.INSPECT_MAX_BYTES = 50; + const K_MAX_LENGTH = 2147483647; + exports.kMaxLength = K_MAX_LENGTH; + const { Uint8Array: GlobalUint8Array, ArrayBuffer: GlobalArrayBuffer, SharedArrayBuffer: GlobalSharedArrayBuffer } = globalThis; + Buffer2.TYPED_ARRAY_SUPPORT = typedArraySupport(); + if (!Buffer2.TYPED_ARRAY_SUPPORT && typeof console !== "undefined" && typeof console.error === "function") { + console.error( + "This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support." + ); + } + function typedArraySupport() { + try { + const arr = new GlobalUint8Array(1); + const proto = { foo: function() { + return 42; + } }; + Object.setPrototypeOf(proto, GlobalUint8Array.prototype); + Object.setPrototypeOf(arr, proto); + return arr.foo() === 42; + } catch (e2) { + return false; + } + } + Object.defineProperty(Buffer2.prototype, "parent", { + enumerable: true, + get: function() { + if (!Buffer2.isBuffer(this)) return void 0; + return this.buffer; + } + }); + Object.defineProperty(Buffer2.prototype, "offset", { + enumerable: true, + get: function() { + if (!Buffer2.isBuffer(this)) return void 0; + return this.byteOffset; + } + }); + function createBuffer(length) { + if (length > K_MAX_LENGTH) { + throw new RangeError('The value "' + length + '" is invalid for option "size"'); + } + const buf = new GlobalUint8Array(length); + Object.setPrototypeOf(buf, Buffer2.prototype); + return buf; + } + function Buffer2(arg, encodingOrOffset, length) { + if (typeof arg === "number") { + if (typeof encodingOrOffset === "string") { + throw new TypeError( + 'The "string" argument must be of type string. Received type number' + ); + } + return allocUnsafe(arg); + } + return from(arg, encodingOrOffset, length); + } + Buffer2.poolSize = 8192; + function from(value, encodingOrOffset, length) { + if (typeof value === "string") { + return fromString(value, encodingOrOffset); + } + if (GlobalArrayBuffer.isView(value)) { + return fromArrayView(value); + } + if (value == null) { + throw new TypeError( + "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value + ); + } + if (isInstance(value, GlobalArrayBuffer) || value && isInstance(value.buffer, GlobalArrayBuffer)) { + return fromArrayBuffer(value, encodingOrOffset, length); + } + if (typeof GlobalSharedArrayBuffer !== "undefined" && (isInstance(value, GlobalSharedArrayBuffer) || value && isInstance(value.buffer, GlobalSharedArrayBuffer))) { + return fromArrayBuffer(value, encodingOrOffset, length); + } + if (typeof value === "number") { + throw new TypeError( + 'The "value" argument must not be of type number. Received type number' + ); + } + const valueOf = value.valueOf && value.valueOf(); + if (valueOf != null && valueOf !== value) { + return Buffer2.from(valueOf, encodingOrOffset, length); + } + const b2 = fromObject(value); + if (b2) return b2; + if (typeof Symbol !== "undefined" && Symbol.toPrimitive != null && typeof value[Symbol.toPrimitive] === "function") { + return Buffer2.from(value[Symbol.toPrimitive]("string"), encodingOrOffset, length); + } + throw new TypeError( + "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value + ); + } + Buffer2.from = function(value, encodingOrOffset, length) { + return from(value, encodingOrOffset, length); + }; + Object.setPrototypeOf(Buffer2.prototype, GlobalUint8Array.prototype); + Object.setPrototypeOf(Buffer2, GlobalUint8Array); + function assertSize(size) { + if (typeof size !== "number") { + throw new TypeError('"size" argument must be of type number'); + } else if (size < 0) { + throw new RangeError('The value "' + size + '" is invalid for option "size"'); + } + } + function alloc(size, fill, encoding) { + assertSize(size); + if (size <= 0) { + return createBuffer(size); + } + if (fill !== void 0) { + return typeof encoding === "string" ? createBuffer(size).fill(fill, encoding) : createBuffer(size).fill(fill); + } + return createBuffer(size); + } + Buffer2.alloc = function(size, fill, encoding) { + return alloc(size, fill, encoding); + }; + function allocUnsafe(size) { + assertSize(size); + return createBuffer(size < 0 ? 0 : checked(size) | 0); + } + Buffer2.allocUnsafe = function(size) { + return allocUnsafe(size); + }; + Buffer2.allocUnsafeSlow = function(size) { + return allocUnsafe(size); + }; + function fromString(string, encoding) { + if (typeof encoding !== "string" || encoding === "") { + encoding = "utf8"; + } + if (!Buffer2.isEncoding(encoding)) { + throw new TypeError("Unknown encoding: " + encoding); + } + const length = byteLength2(string, encoding) | 0; + let buf = createBuffer(length); + const actual = buf.write(string, encoding); + if (actual !== length) { + buf = buf.slice(0, actual); + } + return buf; + } + function fromArrayLike(array) { + const length = array.length < 0 ? 0 : checked(array.length) | 0; + const buf = createBuffer(length); + for (let i = 0; i < length; i += 1) { + buf[i] = array[i] & 255; + } + return buf; + } + function fromArrayView(arrayView) { + if (isInstance(arrayView, GlobalUint8Array)) { + const copy = new GlobalUint8Array(arrayView); + return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength); + } + return fromArrayLike(arrayView); + } + function fromArrayBuffer(array, byteOffset, length) { + if (byteOffset < 0 || array.byteLength < byteOffset) { + throw new RangeError('"offset" is outside of buffer bounds'); + } + if (array.byteLength < byteOffset + (length || 0)) { + throw new RangeError('"length" is outside of buffer bounds'); + } + let buf; + if (byteOffset === void 0 && length === void 0) { + buf = new GlobalUint8Array(array); + } else if (length === void 0) { + buf = new GlobalUint8Array(array, byteOffset); + } else { + buf = new GlobalUint8Array(array, byteOffset, length); + } + Object.setPrototypeOf(buf, Buffer2.prototype); + return buf; + } + function fromObject(obj) { + if (Buffer2.isBuffer(obj)) { + const len = checked(obj.length) | 0; + const buf = createBuffer(len); + if (buf.length === 0) { + return buf; + } + obj.copy(buf, 0, 0, len); + return buf; + } + if (obj.length !== void 0) { + if (typeof obj.length !== "number" || numberIsNaN(obj.length)) { + return createBuffer(0); + } + return fromArrayLike(obj); + } + if (obj.type === "Buffer" && Array.isArray(obj.data)) { + return fromArrayLike(obj.data); + } + } + function checked(length) { + if (length >= K_MAX_LENGTH) { + throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + K_MAX_LENGTH.toString(16) + " bytes"); + } + return length | 0; + } + function SlowBuffer(length) { + if (+length != length) { + length = 0; + } + return Buffer2.alloc(+length); + } + Buffer2.isBuffer = function isBuffer2(b2) { + return b2 != null && b2._isBuffer === true && b2 !== Buffer2.prototype; + }; + Buffer2.compare = function compare(a2, b2) { + if (isInstance(a2, GlobalUint8Array)) a2 = Buffer2.from(a2, a2.offset, a2.byteLength); + if (isInstance(b2, GlobalUint8Array)) b2 = Buffer2.from(b2, b2.offset, b2.byteLength); + if (!Buffer2.isBuffer(a2) || !Buffer2.isBuffer(b2)) { + throw new TypeError( + 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array' + ); + } + if (a2 === b2) return 0; + let x2 = a2.length; + let y2 = b2.length; + for (let i = 0, len = Math.min(x2, y2); i < len; ++i) { + if (a2[i] !== b2[i]) { + x2 = a2[i]; + y2 = b2[i]; + break; + } + } + if (x2 < y2) return -1; + if (y2 < x2) return 1; + return 0; + }; + Buffer2.isEncoding = function isEncoding(encoding) { + switch (String(encoding).toLowerCase()) { + case "hex": + case "utf8": + case "utf-8": + case "ascii": + case "latin1": + case "binary": + case "base64": + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return true; + default: + return false; + } + }; + Buffer2.concat = function concat2(list, length) { + if (!Array.isArray(list)) { + throw new TypeError('"list" argument must be an Array of Buffers'); + } + if (list.length === 0) { + return Buffer2.alloc(0); + } + let i; + if (length === void 0) { + length = 0; + for (i = 0; i < list.length; ++i) { + length += list[i].length; + } + } + const buffer2 = Buffer2.allocUnsafe(length); + let pos = 0; + for (i = 0; i < list.length; ++i) { + let buf = list[i]; + if (isInstance(buf, GlobalUint8Array)) { + if (pos + buf.length > buffer2.length) { + if (!Buffer2.isBuffer(buf)) buf = Buffer2.from(buf); + buf.copy(buffer2, pos); + } else { + GlobalUint8Array.prototype.set.call( + buffer2, + buf, + pos + ); + } + } else if (!Buffer2.isBuffer(buf)) { + throw new TypeError('"list" argument must be an Array of Buffers'); + } else { + buf.copy(buffer2, pos); + } + pos += buf.length; + } + return buffer2; + }; + function byteLength2(string, encoding) { + if (Buffer2.isBuffer(string)) { + return string.length; + } + if (GlobalArrayBuffer.isView(string) || isInstance(string, GlobalArrayBuffer)) { + return string.byteLength; + } + if (typeof string !== "string") { + throw new TypeError( + 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof string + ); + } + const len = string.length; + const mustMatch = arguments.length > 2 && arguments[2] === true; + if (!mustMatch && len === 0) return 0; + let loweredCase = false; + for (; ; ) { + switch (encoding) { + case "ascii": + case "latin1": + case "binary": + return len; + case "utf8": + case "utf-8": + return utf8ToBytes(string).length; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return len * 2; + case "hex": + return len >>> 1; + case "base64": + return base64ToBytes(string).length; + default: + if (loweredCase) { + return mustMatch ? -1 : utf8ToBytes(string).length; + } + encoding = ("" + encoding).toLowerCase(); + loweredCase = true; + } + } + } + Buffer2.byteLength = byteLength2; + function slowToString(encoding, start, end) { + let loweredCase = false; + if (start === void 0 || start < 0) { + start = 0; + } + if (start > this.length) { + return ""; + } + if (end === void 0 || end > this.length) { + end = this.length; + } + if (end <= 0) { + return ""; + } + end >>>= 0; + start >>>= 0; + if (end <= start) { + return ""; + } + if (!encoding) encoding = "utf8"; + while (true) { + switch (encoding) { + case "hex": + return hexSlice(this, start, end); + case "utf8": + case "utf-8": + return utf8Slice(this, start, end); + case "ascii": + return asciiSlice(this, start, end); + case "latin1": + case "binary": + return latin1Slice(this, start, end); + case "base64": + return base64Slice(this, start, end); + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return utf16leSlice(this, start, end); + default: + if (loweredCase) throw new TypeError("Unknown encoding: " + encoding); + encoding = (encoding + "").toLowerCase(); + loweredCase = true; + } + } + } + Buffer2.prototype._isBuffer = true; + function swap(b2, n2, m2) { + const i = b2[n2]; + b2[n2] = b2[m2]; + b2[m2] = i; + } + Buffer2.prototype.swap16 = function swap16() { + const len = this.length; + if (len % 2 !== 0) { + throw new RangeError("Buffer size must be a multiple of 16-bits"); + } + for (let i = 0; i < len; i += 2) { + swap(this, i, i + 1); + } + return this; + }; + Buffer2.prototype.swap32 = function swap32() { + const len = this.length; + if (len % 4 !== 0) { + throw new RangeError("Buffer size must be a multiple of 32-bits"); + } + for (let i = 0; i < len; i += 4) { + swap(this, i, i + 3); + swap(this, i + 1, i + 2); + } + return this; + }; + Buffer2.prototype.swap64 = function swap64() { + const len = this.length; + if (len % 8 !== 0) { + throw new RangeError("Buffer size must be a multiple of 64-bits"); + } + for (let i = 0; i < len; i += 8) { + swap(this, i, i + 7); + swap(this, i + 1, i + 6); + swap(this, i + 2, i + 5); + swap(this, i + 3, i + 4); + } + return this; + }; + Buffer2.prototype.toString = function toString4() { + const length = this.length; + if (length === 0) return ""; + if (arguments.length === 0) return utf8Slice(this, 0, length); + return slowToString.apply(this, arguments); + }; + Buffer2.prototype.toLocaleString = Buffer2.prototype.toString; + Buffer2.prototype.equals = function equals(b2) { + if (!Buffer2.isBuffer(b2)) throw new TypeError("Argument must be a Buffer"); + if (this === b2) return true; + return Buffer2.compare(this, b2) === 0; + }; + Buffer2.prototype.inspect = function inspect() { + let str = ""; + const max2 = exports.INSPECT_MAX_BYTES; + str = this.toString("hex", 0, max2).replace(/(.{2})/g, "$1 ").trim(); + if (this.length > max2) str += " ... "; + return ""; + }; + if (customInspectSymbol) { + Buffer2.prototype[customInspectSymbol] = Buffer2.prototype.inspect; + } + Buffer2.prototype.compare = function compare(target, start, end, thisStart, thisEnd) { + if (isInstance(target, GlobalUint8Array)) { + target = Buffer2.from(target, target.offset, target.byteLength); + } + if (!Buffer2.isBuffer(target)) { + throw new TypeError( + 'The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof target + ); + } + if (start === void 0) { + start = 0; + } + if (end === void 0) { + end = target ? target.length : 0; + } + if (thisStart === void 0) { + thisStart = 0; + } + if (thisEnd === void 0) { + thisEnd = this.length; + } + if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { + throw new RangeError("out of range index"); + } + if (thisStart >= thisEnd && start >= end) { + return 0; + } + if (thisStart >= thisEnd) { + return -1; + } + if (start >= end) { + return 1; + } + start >>>= 0; + end >>>= 0; + thisStart >>>= 0; + thisEnd >>>= 0; + if (this === target) return 0; + let x2 = thisEnd - thisStart; + let y2 = end - start; + const len = Math.min(x2, y2); + const thisCopy = this.slice(thisStart, thisEnd); + const targetCopy = target.slice(start, end); + for (let i = 0; i < len; ++i) { + if (thisCopy[i] !== targetCopy[i]) { + x2 = thisCopy[i]; + y2 = targetCopy[i]; + break; + } + } + if (x2 < y2) return -1; + if (y2 < x2) return 1; + return 0; + }; + function bidirectionalIndexOf(buffer2, val2, byteOffset, encoding, dir) { + if (buffer2.length === 0) return -1; + if (typeof byteOffset === "string") { + encoding = byteOffset; + byteOffset = 0; + } else if (byteOffset > 2147483647) { + byteOffset = 2147483647; + } else if (byteOffset < -2147483648) { + byteOffset = -2147483648; + } + byteOffset = +byteOffset; + if (numberIsNaN(byteOffset)) { + byteOffset = dir ? 0 : buffer2.length - 1; + } + if (byteOffset < 0) byteOffset = buffer2.length + byteOffset; + if (byteOffset >= buffer2.length) { + if (dir) return -1; + else byteOffset = buffer2.length - 1; + } else if (byteOffset < 0) { + if (dir) byteOffset = 0; + else return -1; + } + if (typeof val2 === "string") { + val2 = Buffer2.from(val2, encoding); + } + if (Buffer2.isBuffer(val2)) { + if (val2.length === 0) { + return -1; + } + return arrayIndexOf(buffer2, val2, byteOffset, encoding, dir); + } else if (typeof val2 === "number") { + val2 = val2 & 255; + if (typeof GlobalUint8Array.prototype.indexOf === "function") { + if (dir) { + return GlobalUint8Array.prototype.indexOf.call(buffer2, val2, byteOffset); + } else { + return GlobalUint8Array.prototype.lastIndexOf.call(buffer2, val2, byteOffset); + } + } + return arrayIndexOf(buffer2, [val2], byteOffset, encoding, dir); + } + throw new TypeError("val must be string, number or Buffer"); + } + function arrayIndexOf(arr, val2, byteOffset, encoding, dir) { + let indexSize = 1; + let arrLength = arr.length; + let valLength = val2.length; + if (encoding !== void 0) { + encoding = String(encoding).toLowerCase(); + if (encoding === "ucs2" || encoding === "ucs-2" || encoding === "utf16le" || encoding === "utf-16le") { + if (arr.length < 2 || val2.length < 2) { + return -1; + } + indexSize = 2; + arrLength /= 2; + valLength /= 2; + byteOffset /= 2; + } + } + function read(buf, i2) { + if (indexSize === 1) { + return buf[i2]; + } else { + return buf.readUInt16BE(i2 * indexSize); + } + } + let i; + if (dir) { + let foundIndex = -1; + for (i = byteOffset; i < arrLength; i++) { + if (read(arr, i) === read(val2, foundIndex === -1 ? 0 : i - foundIndex)) { + if (foundIndex === -1) foundIndex = i; + if (i - foundIndex + 1 === valLength) return foundIndex * indexSize; + } else { + if (foundIndex !== -1) i -= i - foundIndex; + foundIndex = -1; + } + } + } else { + if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength; + for (i = byteOffset; i >= 0; i--) { + let found = true; + for (let j2 = 0; j2 < valLength; j2++) { + if (read(arr, i + j2) !== read(val2, j2)) { + found = false; + break; + } + } + if (found) return i; + } + } + return -1; + } + Buffer2.prototype.includes = function includes(val2, byteOffset, encoding) { + return this.indexOf(val2, byteOffset, encoding) !== -1; + }; + Buffer2.prototype.indexOf = function indexOf2(val2, byteOffset, encoding) { + return bidirectionalIndexOf(this, val2, byteOffset, encoding, true); + }; + Buffer2.prototype.lastIndexOf = function lastIndexOf(val2, byteOffset, encoding) { + return bidirectionalIndexOf(this, val2, byteOffset, encoding, false); + }; + function hexWrite(buf, string, offset, length) { + offset = Number(offset) || 0; + const remaining = buf.length - offset; + if (!length) { + length = remaining; + } else { + length = Number(length); + if (length > remaining) { + length = remaining; + } + } + const strLen = string.length; + if (length > strLen / 2) { + length = strLen / 2; + } + let i; + for (i = 0; i < length; ++i) { + const parsed = parseInt(string.substr(i * 2, 2), 16); + if (numberIsNaN(parsed)) return i; + buf[offset + i] = parsed; + } + return i; + } + function utf8Write(buf, string, offset, length) { + return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length); + } + function asciiWrite(buf, string, offset, length) { + return blitBuffer(asciiToBytes(string), buf, offset, length); + } + function base64Write(buf, string, offset, length) { + return blitBuffer(base64ToBytes(string), buf, offset, length); + } + function ucs2Write(buf, string, offset, length) { + return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length); + } + Buffer2.prototype.write = function write(string, offset, length, encoding) { + if (offset === void 0) { + encoding = "utf8"; + length = this.length; + offset = 0; + } else if (length === void 0 && typeof offset === "string") { + encoding = offset; + length = this.length; + offset = 0; + } else if (isFinite(offset)) { + offset = offset >>> 0; + if (isFinite(length)) { + length = length >>> 0; + if (encoding === void 0) encoding = "utf8"; + } else { + encoding = length; + length = void 0; + } + } else { + throw new Error( + "Buffer.write(string, encoding, offset[, length]) is no longer supported" + ); + } + const remaining = this.length - offset; + if (length === void 0 || length > remaining) length = remaining; + if (string.length > 0 && (length < 0 || offset < 0) || offset > this.length) { + throw new RangeError("Attempt to write outside buffer bounds"); + } + if (!encoding) encoding = "utf8"; + let loweredCase = false; + for (; ; ) { + switch (encoding) { + case "hex": + return hexWrite(this, string, offset, length); + case "utf8": + case "utf-8": + return utf8Write(this, string, offset, length); + case "ascii": + case "latin1": + case "binary": + return asciiWrite(this, string, offset, length); + case "base64": + return base64Write(this, string, offset, length); + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return ucs2Write(this, string, offset, length); + default: + if (loweredCase) throw new TypeError("Unknown encoding: " + encoding); + encoding = ("" + encoding).toLowerCase(); + loweredCase = true; + } + } + }; + Buffer2.prototype.toJSON = function toJSON2() { + return { + type: "Buffer", + data: Array.prototype.slice.call(this._arr || this, 0) + }; + }; + function base64Slice(buf, start, end) { + if (start === 0 && end === buf.length) { + return base64.fromByteArray(buf); + } else { + return base64.fromByteArray(buf.slice(start, end)); + } + } + function utf8Slice(buf, start, end) { + end = Math.min(buf.length, end); + const res = []; + let i = start; + while (i < end) { + const firstByte = buf[i]; + let codePoint = null; + let bytesPerSequence = firstByte > 239 ? 4 : firstByte > 223 ? 3 : firstByte > 191 ? 2 : 1; + if (i + bytesPerSequence <= end) { + let secondByte, thirdByte, fourthByte, tempCodePoint; + switch (bytesPerSequence) { + case 1: + if (firstByte < 128) { + codePoint = firstByte; + } + break; + case 2: + secondByte = buf[i + 1]; + if ((secondByte & 192) === 128) { + tempCodePoint = (firstByte & 31) << 6 | secondByte & 63; + if (tempCodePoint > 127) { + codePoint = tempCodePoint; + } + } + break; + case 3: + secondByte = buf[i + 1]; + thirdByte = buf[i + 2]; + if ((secondByte & 192) === 128 && (thirdByte & 192) === 128) { + tempCodePoint = (firstByte & 15) << 12 | (secondByte & 63) << 6 | thirdByte & 63; + if (tempCodePoint > 2047 && (tempCodePoint < 55296 || tempCodePoint > 57343)) { + codePoint = tempCodePoint; + } + } + break; + case 4: + secondByte = buf[i + 1]; + thirdByte = buf[i + 2]; + fourthByte = buf[i + 3]; + if ((secondByte & 192) === 128 && (thirdByte & 192) === 128 && (fourthByte & 192) === 128) { + tempCodePoint = (firstByte & 15) << 18 | (secondByte & 63) << 12 | (thirdByte & 63) << 6 | fourthByte & 63; + if (tempCodePoint > 65535 && tempCodePoint < 1114112) { + codePoint = tempCodePoint; + } + } + } + } + if (codePoint === null) { + codePoint = 65533; + bytesPerSequence = 1; + } else if (codePoint > 65535) { + codePoint -= 65536; + res.push(codePoint >>> 10 & 1023 | 55296); + codePoint = 56320 | codePoint & 1023; + } + res.push(codePoint); + i += bytesPerSequence; + } + return decodeCodePointsArray(res); + } + const MAX_ARGUMENTS_LENGTH = 4096; + function decodeCodePointsArray(codePoints) { + const len = codePoints.length; + if (len <= MAX_ARGUMENTS_LENGTH) { + return String.fromCharCode.apply(String, codePoints); + } + let res = ""; + let i = 0; + while (i < len) { + res += String.fromCharCode.apply( + String, + codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) + ); + } + return res; + } + function asciiSlice(buf, start, end) { + let ret = ""; + end = Math.min(buf.length, end); + for (let i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i] & 127); + } + return ret; + } + function latin1Slice(buf, start, end) { + let ret = ""; + end = Math.min(buf.length, end); + for (let i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i]); + } + return ret; + } + function hexSlice(buf, start, end) { + const len = buf.length; + if (!start || start < 0) start = 0; + if (!end || end < 0 || end > len) end = len; + let out = ""; + for (let i = start; i < end; ++i) { + out += hexSliceLookupTable[buf[i]]; + } + return out; + } + function utf16leSlice(buf, start, end) { + const bytes = buf.slice(start, end); + let res = ""; + for (let i = 0; i < bytes.length - 1; i += 2) { + res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256); + } + return res; + } + Buffer2.prototype.slice = function slice(start, end) { + const len = this.length; + start = ~~start; + end = end === void 0 ? len : ~~end; + if (start < 0) { + start += len; + if (start < 0) start = 0; + } else if (start > len) { + start = len; + } + if (end < 0) { + end += len; + if (end < 0) end = 0; + } else if (end > len) { + end = len; + } + if (end < start) end = start; + const newBuf = this.subarray(start, end); + Object.setPrototypeOf(newBuf, Buffer2.prototype); + return newBuf; + }; + function checkOffset(offset, ext, length) { + if (offset % 1 !== 0 || offset < 0) throw new RangeError("offset is not uint"); + if (offset + ext > length) throw new RangeError("Trying to access beyond buffer length"); + } + Buffer2.prototype.readUintLE = Buffer2.prototype.readUIntLE = function readUIntLE(offset, byteLength3, noAssert) { + offset = offset >>> 0; + byteLength3 = byteLength3 >>> 0; + if (!noAssert) checkOffset(offset, byteLength3, this.length); + let val2 = this[offset]; + let mul = 1; + let i = 0; + while (++i < byteLength3 && (mul *= 256)) { + val2 += this[offset + i] * mul; + } + return val2; + }; + Buffer2.prototype.readUintBE = Buffer2.prototype.readUIntBE = function readUIntBE(offset, byteLength3, noAssert) { + offset = offset >>> 0; + byteLength3 = byteLength3 >>> 0; + if (!noAssert) { + checkOffset(offset, byteLength3, this.length); + } + let val2 = this[offset + --byteLength3]; + let mul = 1; + while (byteLength3 > 0 && (mul *= 256)) { + val2 += this[offset + --byteLength3] * mul; + } + return val2; + }; + Buffer2.prototype.readUint8 = Buffer2.prototype.readUInt8 = function readUInt8(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 1, this.length); + return this[offset]; + }; + Buffer2.prototype.readUint16LE = Buffer2.prototype.readUInt16LE = function readUInt16LE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 2, this.length); + return this[offset] | this[offset + 1] << 8; + }; + Buffer2.prototype.readUint16BE = Buffer2.prototype.readUInt16BE = function readUInt16BE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 2, this.length); + return this[offset] << 8 | this[offset + 1]; + }; + Buffer2.prototype.readUint32LE = Buffer2.prototype.readUInt32LE = function readUInt32LE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 4, this.length); + return (this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16) + this[offset + 3] * 16777216; + }; + Buffer2.prototype.readUint32BE = Buffer2.prototype.readUInt32BE = function readUInt32BE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 4, this.length); + return this[offset] * 16777216 + (this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]); + }; + Buffer2.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE(offset) { + offset = offset >>> 0; + validateNumber(offset, "offset"); + const first = this[offset]; + const last = this[offset + 7]; + if (first === void 0 || last === void 0) { + boundsError(offset, this.length - 8); + } + const lo = first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24; + const hi = this[++offset] + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + last * 2 ** 24; + return BigInt(lo) + (BigInt(hi) << BigInt(32)); + }); + Buffer2.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE(offset) { + offset = offset >>> 0; + validateNumber(offset, "offset"); + const first = this[offset]; + const last = this[offset + 7]; + if (first === void 0 || last === void 0) { + boundsError(offset, this.length - 8); + } + const hi = first * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset]; + const lo = this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last; + return (BigInt(hi) << BigInt(32)) + BigInt(lo); + }); + Buffer2.prototype.readIntLE = function readIntLE(offset, byteLength3, noAssert) { + offset = offset >>> 0; + byteLength3 = byteLength3 >>> 0; + if (!noAssert) checkOffset(offset, byteLength3, this.length); + let val2 = this[offset]; + let mul = 1; + let i = 0; + while (++i < byteLength3 && (mul *= 256)) { + val2 += this[offset + i] * mul; + } + mul *= 128; + if (val2 >= mul) val2 -= Math.pow(2, 8 * byteLength3); + return val2; + }; + Buffer2.prototype.readIntBE = function readIntBE(offset, byteLength3, noAssert) { + offset = offset >>> 0; + byteLength3 = byteLength3 >>> 0; + if (!noAssert) checkOffset(offset, byteLength3, this.length); + let i = byteLength3; + let mul = 1; + let val2 = this[offset + --i]; + while (i > 0 && (mul *= 256)) { + val2 += this[offset + --i] * mul; + } + mul *= 128; + if (val2 >= mul) val2 -= Math.pow(2, 8 * byteLength3); + return val2; + }; + Buffer2.prototype.readInt8 = function readInt8(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 1, this.length); + if (!(this[offset] & 128)) return this[offset]; + return (255 - this[offset] + 1) * -1; + }; + Buffer2.prototype.readInt16LE = function readInt16LE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 2, this.length); + const val2 = this[offset] | this[offset + 1] << 8; + return val2 & 32768 ? val2 | 4294901760 : val2; + }; + Buffer2.prototype.readInt16BE = function readInt16BE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 2, this.length); + const val2 = this[offset + 1] | this[offset] << 8; + return val2 & 32768 ? val2 | 4294901760 : val2; + }; + Buffer2.prototype.readInt32LE = function readInt32LE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 4, this.length); + return this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16 | this[offset + 3] << 24; + }; + Buffer2.prototype.readInt32BE = function readInt32BE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 4, this.length); + return this[offset] << 24 | this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]; + }; + Buffer2.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE(offset) { + offset = offset >>> 0; + validateNumber(offset, "offset"); + const first = this[offset]; + const last = this[offset + 7]; + if (first === void 0 || last === void 0) { + boundsError(offset, this.length - 8); + } + const val2 = this[offset + 4] + this[offset + 5] * 2 ** 8 + this[offset + 6] * 2 ** 16 + (last << 24); + return (BigInt(val2) << BigInt(32)) + BigInt(first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24); + }); + Buffer2.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE(offset) { + offset = offset >>> 0; + validateNumber(offset, "offset"); + const first = this[offset]; + const last = this[offset + 7]; + if (first === void 0 || last === void 0) { + boundsError(offset, this.length - 8); + } + const val2 = (first << 24) + // Overflow + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset]; + return (BigInt(val2) << BigInt(32)) + BigInt(this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last); + }); + Buffer2.prototype.readFloatLE = function readFloatLE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 4, this.length); + return ieee754$1.read(this, offset, true, 23, 4); + }; + Buffer2.prototype.readFloatBE = function readFloatBE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 4, this.length); + return ieee754$1.read(this, offset, false, 23, 4); + }; + Buffer2.prototype.readDoubleLE = function readDoubleLE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 8, this.length); + return ieee754$1.read(this, offset, true, 52, 8); + }; + Buffer2.prototype.readDoubleBE = function readDoubleBE(offset, noAssert) { + offset = offset >>> 0; + if (!noAssert) checkOffset(offset, 8, this.length); + return ieee754$1.read(this, offset, false, 52, 8); + }; + function checkInt(buf, value, offset, ext, max2, min2) { + if (!Buffer2.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance'); + if (value > max2 || value < min2) throw new RangeError('"value" argument is out of bounds'); + if (offset + ext > buf.length) throw new RangeError("Index out of range"); + } + Buffer2.prototype.writeUintLE = Buffer2.prototype.writeUIntLE = function writeUIntLE(value, offset, byteLength3, noAssert) { + value = +value; + offset = offset >>> 0; + byteLength3 = byteLength3 >>> 0; + if (!noAssert) { + const maxBytes = Math.pow(2, 8 * byteLength3) - 1; + checkInt(this, value, offset, byteLength3, maxBytes, 0); + } + let mul = 1; + let i = 0; + this[offset] = value & 255; + while (++i < byteLength3 && (mul *= 256)) { + this[offset + i] = value / mul & 255; + } + return offset + byteLength3; + }; + Buffer2.prototype.writeUintBE = Buffer2.prototype.writeUIntBE = function writeUIntBE(value, offset, byteLength3, noAssert) { + value = +value; + offset = offset >>> 0; + byteLength3 = byteLength3 >>> 0; + if (!noAssert) { + const maxBytes = Math.pow(2, 8 * byteLength3) - 1; + checkInt(this, value, offset, byteLength3, maxBytes, 0); + } + let i = byteLength3 - 1; + let mul = 1; + this[offset + i] = value & 255; + while (--i >= 0 && (mul *= 256)) { + this[offset + i] = value / mul & 255; + } + return offset + byteLength3; + }; + Buffer2.prototype.writeUint8 = Buffer2.prototype.writeUInt8 = function writeUInt8(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 1, 255, 0); + this[offset] = value & 255; + return offset + 1; + }; + Buffer2.prototype.writeUint16LE = Buffer2.prototype.writeUInt16LE = function writeUInt16LE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 2, 65535, 0); + this[offset] = value & 255; + this[offset + 1] = value >>> 8; + return offset + 2; + }; + Buffer2.prototype.writeUint16BE = Buffer2.prototype.writeUInt16BE = function writeUInt16BE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 2, 65535, 0); + this[offset] = value >>> 8; + this[offset + 1] = value & 255; + return offset + 2; + }; + Buffer2.prototype.writeUint32LE = Buffer2.prototype.writeUInt32LE = function writeUInt32LE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 4, 4294967295, 0); + this[offset + 3] = value >>> 24; + this[offset + 2] = value >>> 16; + this[offset + 1] = value >>> 8; + this[offset] = value & 255; + return offset + 4; + }; + Buffer2.prototype.writeUint32BE = Buffer2.prototype.writeUInt32BE = function writeUInt32BE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 4, 4294967295, 0); + this[offset] = value >>> 24; + this[offset + 1] = value >>> 16; + this[offset + 2] = value >>> 8; + this[offset + 3] = value & 255; + return offset + 4; + }; + function wrtBigUInt64LE(buf, value, offset, min2, max2) { + checkIntBI(value, min2, max2, buf, offset, 7); + let lo = Number(value & BigInt(4294967295)); + buf[offset++] = lo; + lo = lo >> 8; + buf[offset++] = lo; + lo = lo >> 8; + buf[offset++] = lo; + lo = lo >> 8; + buf[offset++] = lo; + let hi = Number(value >> BigInt(32) & BigInt(4294967295)); + buf[offset++] = hi; + hi = hi >> 8; + buf[offset++] = hi; + hi = hi >> 8; + buf[offset++] = hi; + hi = hi >> 8; + buf[offset++] = hi; + return offset; + } + function wrtBigUInt64BE(buf, value, offset, min2, max2) { + checkIntBI(value, min2, max2, buf, offset, 7); + let lo = Number(value & BigInt(4294967295)); + buf[offset + 7] = lo; + lo = lo >> 8; + buf[offset + 6] = lo; + lo = lo >> 8; + buf[offset + 5] = lo; + lo = lo >> 8; + buf[offset + 4] = lo; + let hi = Number(value >> BigInt(32) & BigInt(4294967295)); + buf[offset + 3] = hi; + hi = hi >> 8; + buf[offset + 2] = hi; + hi = hi >> 8; + buf[offset + 1] = hi; + hi = hi >> 8; + buf[offset] = hi; + return offset + 8; + } + Buffer2.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE(value, offset = 0) { + return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt("0xffffffffffffffff")); + }); + Buffer2.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE(value, offset = 0) { + return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt("0xffffffffffffffff")); + }); + Buffer2.prototype.writeIntLE = function writeIntLE(value, offset, byteLength3, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) { + const limit = Math.pow(2, 8 * byteLength3 - 1); + checkInt(this, value, offset, byteLength3, limit - 1, -limit); + } + let i = 0; + let mul = 1; + let sub = 0; + this[offset] = value & 255; + while (++i < byteLength3 && (mul *= 256)) { + if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { + sub = 1; + } + this[offset + i] = (value / mul >> 0) - sub & 255; + } + return offset + byteLength3; + }; + Buffer2.prototype.writeIntBE = function writeIntBE(value, offset, byteLength3, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) { + const limit = Math.pow(2, 8 * byteLength3 - 1); + checkInt(this, value, offset, byteLength3, limit - 1, -limit); + } + let i = byteLength3 - 1; + let mul = 1; + let sub = 0; + this[offset + i] = value & 255; + while (--i >= 0 && (mul *= 256)) { + if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { + sub = 1; + } + this[offset + i] = (value / mul >> 0) - sub & 255; + } + return offset + byteLength3; + }; + Buffer2.prototype.writeInt8 = function writeInt8(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 1, 127, -128); + if (value < 0) value = 255 + value + 1; + this[offset] = value & 255; + return offset + 1; + }; + Buffer2.prototype.writeInt16LE = function writeInt16LE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 2, 32767, -32768); + this[offset] = value & 255; + this[offset + 1] = value >>> 8; + return offset + 2; + }; + Buffer2.prototype.writeInt16BE = function writeInt16BE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 2, 32767, -32768); + this[offset] = value >>> 8; + this[offset + 1] = value & 255; + return offset + 2; + }; + Buffer2.prototype.writeInt32LE = function writeInt32LE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 4, 2147483647, -2147483648); + this[offset] = value & 255; + this[offset + 1] = value >>> 8; + this[offset + 2] = value >>> 16; + this[offset + 3] = value >>> 24; + return offset + 4; + }; + Buffer2.prototype.writeInt32BE = function writeInt32BE(value, offset, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) checkInt(this, value, offset, 4, 2147483647, -2147483648); + if (value < 0) value = 4294967295 + value + 1; + this[offset] = value >>> 24; + this[offset + 1] = value >>> 16; + this[offset + 2] = value >>> 8; + this[offset + 3] = value & 255; + return offset + 4; + }; + Buffer2.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE(value, offset = 0) { + return wrtBigUInt64LE(this, value, offset, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); + }); + Buffer2.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE(value, offset = 0) { + return wrtBigUInt64BE(this, value, offset, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); + }); + function checkIEEE754(buf, value, offset, ext, max2, min2) { + if (offset + ext > buf.length) throw new RangeError("Index out of range"); + if (offset < 0) throw new RangeError("Index out of range"); + } + function writeFloat(buf, value, offset, littleEndian, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) { + checkIEEE754(buf, value, offset, 4); + } + ieee754$1.write(buf, value, offset, littleEndian, 23, 4); + return offset + 4; + } + Buffer2.prototype.writeFloatLE = function writeFloatLE(value, offset, noAssert) { + return writeFloat(this, value, offset, true, noAssert); + }; + Buffer2.prototype.writeFloatBE = function writeFloatBE(value, offset, noAssert) { + return writeFloat(this, value, offset, false, noAssert); + }; + function writeDouble(buf, value, offset, littleEndian, noAssert) { + value = +value; + offset = offset >>> 0; + if (!noAssert) { + checkIEEE754(buf, value, offset, 8); + } + ieee754$1.write(buf, value, offset, littleEndian, 52, 8); + return offset + 8; + } + Buffer2.prototype.writeDoubleLE = function writeDoubleLE(value, offset, noAssert) { + return writeDouble(this, value, offset, true, noAssert); + }; + Buffer2.prototype.writeDoubleBE = function writeDoubleBE(value, offset, noAssert) { + return writeDouble(this, value, offset, false, noAssert); + }; + Buffer2.prototype.copy = function copy(target, targetStart, start, end) { + if (!Buffer2.isBuffer(target)) throw new TypeError("argument should be a Buffer"); + if (!start) start = 0; + if (!end && end !== 0) end = this.length; + if (targetStart >= target.length) targetStart = target.length; + if (!targetStart) targetStart = 0; + if (end > 0 && end < start) end = start; + if (end === start) return 0; + if (target.length === 0 || this.length === 0) return 0; + if (targetStart < 0) { + throw new RangeError("targetStart out of bounds"); + } + if (start < 0 || start >= this.length) throw new RangeError("Index out of range"); + if (end < 0) throw new RangeError("sourceEnd out of bounds"); + if (end > this.length) end = this.length; + if (target.length - targetStart < end - start) { + end = target.length - targetStart + start; + } + const len = end - start; + if (this === target && typeof GlobalUint8Array.prototype.copyWithin === "function") { + this.copyWithin(targetStart, start, end); + } else { + GlobalUint8Array.prototype.set.call( + target, + this.subarray(start, end), + targetStart + ); + } + return len; + }; + Buffer2.prototype.fill = function fill(val2, start, end, encoding) { + if (typeof val2 === "string") { + if (typeof start === "string") { + encoding = start; + start = 0; + end = this.length; + } else if (typeof end === "string") { + encoding = end; + end = this.length; + } + if (encoding !== void 0 && typeof encoding !== "string") { + throw new TypeError("encoding must be a string"); + } + if (typeof encoding === "string" && !Buffer2.isEncoding(encoding)) { + throw new TypeError("Unknown encoding: " + encoding); + } + if (val2.length === 1) { + const code2 = val2.charCodeAt(0); + if (encoding === "utf8" && code2 < 128 || encoding === "latin1") { + val2 = code2; + } + } + } else if (typeof val2 === "number") { + val2 = val2 & 255; + } else if (typeof val2 === "boolean") { + val2 = Number(val2); + } + if (start < 0 || this.length < start || this.length < end) { + throw new RangeError("Out of range index"); + } + if (end <= start) { + return this; + } + start = start >>> 0; + end = end === void 0 ? this.length : end >>> 0; + if (!val2) val2 = 0; + let i; + if (typeof val2 === "number") { + for (i = start; i < end; ++i) { + this[i] = val2; + } + } else { + const bytes = Buffer2.isBuffer(val2) ? val2 : Buffer2.from(val2, encoding); + const len = bytes.length; + if (len === 0) { + throw new TypeError('The value "' + val2 + '" is invalid for argument "value"'); + } + for (i = 0; i < end - start; ++i) { + this[i + start] = bytes[i % len]; + } + } + return this; + }; + const errors = {}; + function E2(sym, getMessage, Base) { + errors[sym] = class NodeError extends Base { + constructor() { + super(); + Object.defineProperty(this, "message", { + value: getMessage.apply(this, arguments), + writable: true, + configurable: true + }); + this.name = `${this.name} [${sym}]`; + this.stack; + delete this.name; + } + get code() { + return sym; + } + set code(value) { + Object.defineProperty(this, "code", { + configurable: true, + enumerable: true, + value, + writable: true + }); + } + toString() { + return `${this.name} [${sym}]: ${this.message}`; + } + }; + } + E2( + "ERR_BUFFER_OUT_OF_BOUNDS", + function(name) { + if (name) { + return `${name} is outside of buffer bounds`; + } + return "Attempt to access memory outside buffer bounds"; + }, + RangeError + ); + E2( + "ERR_INVALID_ARG_TYPE", + function(name, actual) { + return `The "${name}" argument must be of type number. Received type ${typeof actual}`; + }, + TypeError + ); + E2( + "ERR_OUT_OF_RANGE", + function(str, range, input) { + let msg = `The value of "${str}" is out of range.`; + let received = input; + if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) { + received = addNumericalSeparator(String(input)); + } else if (typeof input === "bigint") { + received = String(input); + if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) { + received = addNumericalSeparator(received); + } + received += "n"; + } + msg += ` It must be ${range}. Received ${received}`; + return msg; + }, + RangeError + ); + function addNumericalSeparator(val2) { + let res = ""; + let i = val2.length; + const start = val2[0] === "-" ? 1 : 0; + for (; i >= start + 4; i -= 3) { + res = `_${val2.slice(i - 3, i)}${res}`; + } + return `${val2.slice(0, i)}${res}`; + } + function checkBounds(buf, offset, byteLength3) { + validateNumber(offset, "offset"); + if (buf[offset] === void 0 || buf[offset + byteLength3] === void 0) { + boundsError(offset, buf.length - (byteLength3 + 1)); + } + } + function checkIntBI(value, min2, max2, buf, offset, byteLength3) { + if (value > max2 || value < min2) { + const n2 = typeof min2 === "bigint" ? "n" : ""; + let range; + { + if (min2 === 0 || min2 === BigInt(0)) { + range = `>= 0${n2} and < 2${n2} ** ${(byteLength3 + 1) * 8}${n2}`; + } else { + range = `>= -(2${n2} ** ${(byteLength3 + 1) * 8 - 1}${n2}) and < 2 ** ${(byteLength3 + 1) * 8 - 1}${n2}`; + } + } + throw new errors.ERR_OUT_OF_RANGE("value", range, value); + } + checkBounds(buf, offset, byteLength3); + } + function validateNumber(value, name) { + if (typeof value !== "number") { + throw new errors.ERR_INVALID_ARG_TYPE(name, "number", value); + } + } + function boundsError(value, length, type) { + if (Math.floor(value) !== value) { + validateNumber(value, type); + throw new errors.ERR_OUT_OF_RANGE("offset", "an integer", value); + } + if (length < 0) { + throw new errors.ERR_BUFFER_OUT_OF_BOUNDS(); + } + throw new errors.ERR_OUT_OF_RANGE( + "offset", + `>= ${0} and <= ${length}`, + value + ); + } + const INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g; + function base64clean(str) { + str = str.split("=")[0]; + str = str.trim().replace(INVALID_BASE64_RE, ""); + if (str.length < 2) return ""; + while (str.length % 4 !== 0) { + str = str + "="; + } + return str; + } + function utf8ToBytes(string, units) { + units = units || Infinity; + let codePoint; + const length = string.length; + let leadSurrogate = null; + const bytes = []; + for (let i = 0; i < length; ++i) { + codePoint = string.charCodeAt(i); + if (codePoint > 55295 && codePoint < 57344) { + if (!leadSurrogate) { + if (codePoint > 56319) { + if ((units -= 3) > -1) bytes.push(239, 191, 189); + continue; + } else if (i + 1 === length) { + if ((units -= 3) > -1) bytes.push(239, 191, 189); + continue; + } + leadSurrogate = codePoint; + continue; + } + if (codePoint < 56320) { + if ((units -= 3) > -1) bytes.push(239, 191, 189); + leadSurrogate = codePoint; + continue; + } + codePoint = (leadSurrogate - 55296 << 10 | codePoint - 56320) + 65536; + } else if (leadSurrogate) { + if ((units -= 3) > -1) bytes.push(239, 191, 189); + } + leadSurrogate = null; + if (codePoint < 128) { + if ((units -= 1) < 0) break; + bytes.push(codePoint); + } else if (codePoint < 2048) { + if ((units -= 2) < 0) break; + bytes.push( + codePoint >> 6 | 192, + codePoint & 63 | 128 + ); + } else if (codePoint < 65536) { + if ((units -= 3) < 0) break; + bytes.push( + codePoint >> 12 | 224, + codePoint >> 6 & 63 | 128, + codePoint & 63 | 128 + ); + } else if (codePoint < 1114112) { + if ((units -= 4) < 0) break; + bytes.push( + codePoint >> 18 | 240, + codePoint >> 12 & 63 | 128, + codePoint >> 6 & 63 | 128, + codePoint & 63 | 128 + ); + } else { + throw new Error("Invalid code point"); + } + } + return bytes; + } + function asciiToBytes(str) { + const byteArray = []; + for (let i = 0; i < str.length; ++i) { + byteArray.push(str.charCodeAt(i) & 255); + } + return byteArray; + } + function utf16leToBytes(str, units) { + let c2, hi, lo; + const byteArray = []; + for (let i = 0; i < str.length; ++i) { + if ((units -= 2) < 0) break; + c2 = str.charCodeAt(i); + hi = c2 >> 8; + lo = c2 % 256; + byteArray.push(lo); + byteArray.push(hi); + } + return byteArray; + } + function base64ToBytes(str) { + return base64.toByteArray(base64clean(str)); + } + function blitBuffer(src, dst, offset, length) { + let i; + for (i = 0; i < length; ++i) { + if (i + offset >= dst.length || i >= src.length) break; + dst[i + offset] = src[i]; + } + return i; + } + function isInstance(obj, type) { + return obj instanceof type || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type.name; + } + function numberIsNaN(obj) { + return obj !== obj; + } + const hexSliceLookupTable = function() { + const alphabet = "0123456789abcdef"; + const table = new Array(256); + for (let i = 0; i < 16; ++i) { + const i16 = i * 16; + for (let j2 = 0; j2 < 16; ++j2) { + table[i16 + j2] = alphabet[i] + alphabet[j2]; + } + } + return table; + }(); + function defineBigIntMethod(fn) { + return typeof BigInt === "undefined" ? BufferBigIntNotDefined : fn; + } + function BufferBigIntNotDefined() { + throw new Error("BigInt not supported"); + } +})(buffer); +const Buffer = buffer.Buffer; +function AxiosError(message, code2, config, request, response) { + Error.call(this); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = new Error().stack; + } + this.message = message; + this.name = "AxiosError"; + code2 && (this.code = code2); + config && (this.config = config); + request && (this.request = request); + if (response) { + this.response = response; + this.status = response.status ? response.status : null; + } +} +utils$1.inherits(AxiosError, Error, { + toJSON: function toJSON() { + return { + // Standard + message: this.message, + name: this.name, + // Microsoft + description: this.description, + number: this.number, + // Mozilla + fileName: this.fileName, + lineNumber: this.lineNumber, + columnNumber: this.columnNumber, + stack: this.stack, + // Axios + config: utils$1.toJSONObject(this.config), + code: this.code, + status: this.status + }; + } +}); +const prototype$1 = AxiosError.prototype; +const descriptors$1 = {}; +[ + "ERR_BAD_OPTION_VALUE", + "ERR_BAD_OPTION", + "ECONNABORTED", + "ETIMEDOUT", + "ERR_NETWORK", + "ERR_FR_TOO_MANY_REDIRECTS", + "ERR_DEPRECATED", + "ERR_BAD_RESPONSE", + "ERR_BAD_REQUEST", + "ERR_CANCELED", + "ERR_NOT_SUPPORT", + "ERR_INVALID_URL" + // eslint-disable-next-line func-names +].forEach((code2) => { + descriptors$1[code2] = { value: code2 }; +}); +Object.defineProperties(AxiosError, descriptors$1); +Object.defineProperty(prototype$1, "isAxiosError", { value: true }); +AxiosError.from = (error, code2, config, request, response, customProps) => { + const axiosError = Object.create(prototype$1); + utils$1.toFlatObject(error, axiosError, function filter2(obj) { + return obj !== Error.prototype; + }, (prop) => { + return prop !== "isAxiosError"; + }); + AxiosError.call(axiosError, error.message, code2, config, request, response); + axiosError.cause = error; + axiosError.name = error.name; + customProps && Object.assign(axiosError, customProps); + return axiosError; +}; +const httpAdapter = null; +function isVisitable(thing) { + return utils$1.isPlainObject(thing) || utils$1.isArray(thing); +} +function removeBrackets(key) { + return utils$1.endsWith(key, "[]") ? key.slice(0, -2) : key; +} +function renderKey(path, key, dots) { + if (!path) return key; + return path.concat(key).map(function each(token2, i) { + token2 = removeBrackets(token2); + return !dots && i ? "[" + token2 + "]" : token2; + }).join(dots ? "." : ""); +} +function isFlatArray(arr) { + return utils$1.isArray(arr) && !arr.some(isVisitable); +} +const predicates = utils$1.toFlatObject(utils$1, {}, null, function filter(prop) { + return /^is[A-Z]/.test(prop); +}); +function toFormData(obj, formData, options) { + if (!utils$1.isObject(obj)) { + throw new TypeError("target must be an object"); + } + formData = formData || new FormData(); + options = utils$1.toFlatObject(options, { + metaTokens: true, + dots: false, + indexes: false + }, false, function defined(option, source) { + return !utils$1.isUndefined(source[option]); + }); + const metaTokens = options.metaTokens; + const visitor = options.visitor || defaultVisitor; + const dots = options.dots; + const indexes = options.indexes; + const _Blob = options.Blob || typeof Blob !== "undefined" && Blob; + const useBlob = _Blob && utils$1.isSpecCompliantForm(formData); + if (!utils$1.isFunction(visitor)) { + throw new TypeError("visitor must be a function"); + } + function convertValue(value) { + if (value === null) return ""; + if (utils$1.isDate(value)) { + return value.toISOString(); + } + if (!useBlob && utils$1.isBlob(value)) { + throw new AxiosError("Blob is not supported. Use a Buffer instead."); + } + if (utils$1.isArrayBuffer(value) || utils$1.isTypedArray(value)) { + return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); + } + return value; + } + function defaultVisitor(value, key, path) { + let arr = value; + if (value && !path && typeof value === "object") { + if (utils$1.endsWith(key, "{}")) { + key = metaTokens ? key : key.slice(0, -2); + value = JSON.stringify(value); + } else if (utils$1.isArray(value) && isFlatArray(value) || (utils$1.isFileList(value) || utils$1.endsWith(key, "[]")) && (arr = utils$1.toArray(value))) { + key = removeBrackets(key); + arr.forEach(function each(el, index) { + !(utils$1.isUndefined(el) || el === null) && formData.append( + // eslint-disable-next-line no-nested-ternary + indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + "[]", + convertValue(el) + ); + }); + return false; + } + } + if (isVisitable(value)) { + return true; + } + formData.append(renderKey(path, key, dots), convertValue(value)); + return false; + } + const stack = []; + const exposedHelpers = Object.assign(predicates, { + defaultVisitor, + convertValue, + isVisitable + }); + function build(value, path) { + if (utils$1.isUndefined(value)) return; + if (stack.indexOf(value) !== -1) { + throw Error("Circular reference detected in " + path.join(".")); + } + stack.push(value); + utils$1.forEach(value, function each(el, key) { + const result = !(utils$1.isUndefined(el) || el === null) && visitor.call( + formData, + el, + utils$1.isString(key) ? key.trim() : key, + path, + exposedHelpers + ); + if (result === true) { + build(el, path ? path.concat(key) : [key]); + } + }); + stack.pop(); + } + if (!utils$1.isObject(obj)) { + throw new TypeError("data must be an object"); + } + build(obj); + return formData; +} +function encode$1(str) { + const charMap = { + "!": "%21", + "'": "%27", + "(": "%28", + ")": "%29", + "~": "%7E", + "%20": "+", + "%00": "\0" + }; + return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match2) { + return charMap[match2]; + }); +} +function AxiosURLSearchParams(params, options) { + this._pairs = []; + params && toFormData(params, this, options); +} +const prototype = AxiosURLSearchParams.prototype; +prototype.append = function append(name, value) { + this._pairs.push([name, value]); +}; +prototype.toString = function toString(encoder) { + const _encode = encoder ? function(value) { + return encoder.call(this, value, encode$1); + } : encode$1; + return this._pairs.map(function each(pair) { + return _encode(pair[0]) + "=" + _encode(pair[1]); + }, "").join("&"); +}; +function encode(val2) { + return encodeURIComponent(val2).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); +} +function buildURL(url, params, options) { + if (!params) { + return url; + } + const _encode = options && options.encode || encode; + const serializeFn = options && options.serialize; + let serializedParams; + if (serializeFn) { + serializedParams = serializeFn(params, options); + } else { + serializedParams = utils$1.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, options).toString(_encode); + } + if (serializedParams) { + const hashmarkIndex = url.indexOf("#"); + if (hashmarkIndex !== -1) { + url = url.slice(0, hashmarkIndex); + } + url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams; + } + return url; +} +class InterceptorManager { + constructor() { + this.handlers = []; + } + /** + * Add a new interceptor to the stack + * + * @param {Function} fulfilled The function to handle `then` for a `Promise` + * @param {Function} rejected The function to handle `reject` for a `Promise` + * + * @return {Number} An ID used to remove interceptor later + */ + use(fulfilled, rejected, options) { + this.handlers.push({ + fulfilled, + rejected, + synchronous: options ? options.synchronous : false, + runWhen: options ? options.runWhen : null + }); + return this.handlers.length - 1; + } + /** + * Remove an interceptor from the stack + * + * @param {Number} id The ID that was returned by `use` + * + * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise + */ + eject(id2) { + if (this.handlers[id2]) { + this.handlers[id2] = null; + } + } + /** + * Clear all interceptors from the stack + * + * @returns {void} + */ + clear() { + if (this.handlers) { + this.handlers = []; + } + } + /** + * Iterate over all the registered interceptors + * + * This method is particularly useful for skipping over any + * interceptors that may have become `null` calling `eject`. + * + * @param {Function} fn The function to call for each interceptor + * + * @returns {void} + */ + forEach(fn) { + utils$1.forEach(this.handlers, function forEachHandler(h2) { + if (h2 !== null) { + fn(h2); + } + }); + } +} +const transitionalDefaults = { + silentJSONParsing: true, + forcedJSONParsing: true, + clarifyTimeoutError: false +}; +const URLSearchParams$1 = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams; +const FormData$1 = typeof FormData !== "undefined" ? FormData : null; +const Blob$1 = typeof Blob !== "undefined" ? Blob : null; +const platform$1 = { + isBrowser: true, + classes: { + URLSearchParams: URLSearchParams$1, + FormData: FormData$1, + Blob: Blob$1 + }, + protocols: ["http", "https", "file", "blob", "url", "data"] +}; +const hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined"; +const _navigator = typeof navigator === "object" && navigator || void 0; +const hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0); +const hasStandardBrowserWebWorkerEnv = (() => { + return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef + self instanceof WorkerGlobalScope && typeof self.importScripts === "function"; +})(); +const origin = hasBrowserEnv && window.location.href || "http://localhost"; +const utils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ + __proto__: null, + hasBrowserEnv, + hasStandardBrowserEnv, + hasStandardBrowserWebWorkerEnv, + navigator: _navigator, + origin +}, Symbol.toStringTag, { value: "Module" })); +const platform = { + ...utils, + ...platform$1 +}; +function toURLEncodedForm(data2, options) { + return toFormData(data2, new platform.classes.URLSearchParams(), Object.assign({ + visitor: function(value, key, path, helpers) { + if (platform.isNode && utils$1.isBuffer(value)) { + this.append(key, value.toString("base64")); + return false; + } + return helpers.defaultVisitor.apply(this, arguments); + } + }, options)); +} +function parsePropPath(name) { + return utils$1.matchAll(/\w+|\[(\w*)]/g, name).map((match2) => { + return match2[0] === "[]" ? "" : match2[1] || match2[0]; + }); +} +function arrayToObject(arr) { + const obj = {}; + const keys3 = Object.keys(arr); + let i; + const len = keys3.length; + let key; + for (i = 0; i < len; i++) { + key = keys3[i]; + obj[key] = arr[key]; + } + return obj; +} +function formDataToJSON(formData) { + function buildPath(path, value, target, index) { + let name = path[index++]; + if (name === "__proto__") return true; + const isNumericKey = Number.isFinite(+name); + const isLast = index >= path.length; + name = !name && utils$1.isArray(target) ? target.length : name; + if (isLast) { + if (utils$1.hasOwnProp(target, name)) { + target[name] = [target[name], value]; + } else { + target[name] = value; + } + return !isNumericKey; + } + if (!target[name] || !utils$1.isObject(target[name])) { + target[name] = []; + } + const result = buildPath(path, value, target[name], index); + if (result && utils$1.isArray(target[name])) { + target[name] = arrayToObject(target[name]); + } + return !isNumericKey; + } + if (utils$1.isFormData(formData) && utils$1.isFunction(formData.entries)) { + const obj = {}; + utils$1.forEachEntry(formData, (name, value) => { + buildPath(parsePropPath(name), value, obj, 0); + }); + return obj; + } + return null; +} +function stringifySafely(rawValue, parser, encoder) { + if (utils$1.isString(rawValue)) { + try { + (parser || JSON.parse)(rawValue); + return utils$1.trim(rawValue); + } catch (e2) { + if (e2.name !== "SyntaxError") { + throw e2; + } + } + } + return (encoder || JSON.stringify)(rawValue); +} +const defaults = { + transitional: transitionalDefaults, + adapter: ["xhr", "http", "fetch"], + transformRequest: [function transformRequest(data2, headers) { + const contentType = headers.getContentType() || ""; + const hasJSONContentType = contentType.indexOf("application/json") > -1; + const isObjectPayload = utils$1.isObject(data2); + if (isObjectPayload && utils$1.isHTMLForm(data2)) { + data2 = new FormData(data2); + } + const isFormData2 = utils$1.isFormData(data2); + if (isFormData2) { + return hasJSONContentType ? JSON.stringify(formDataToJSON(data2)) : data2; + } + if (utils$1.isArrayBuffer(data2) || utils$1.isBuffer(data2) || utils$1.isStream(data2) || utils$1.isFile(data2) || utils$1.isBlob(data2) || utils$1.isReadableStream(data2)) { + return data2; + } + if (utils$1.isArrayBufferView(data2)) { + return data2.buffer; + } + if (utils$1.isURLSearchParams(data2)) { + headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); + return data2.toString(); + } + let isFileList2; + if (isObjectPayload) { + if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { + return toURLEncodedForm(data2, this.formSerializer).toString(); + } + if ((isFileList2 = utils$1.isFileList(data2)) || contentType.indexOf("multipart/form-data") > -1) { + const _FormData = this.env && this.env.FormData; + return toFormData( + isFileList2 ? { "files[]": data2 } : data2, + _FormData && new _FormData(), + this.formSerializer + ); + } + } + if (isObjectPayload || hasJSONContentType) { + headers.setContentType("application/json", false); + return stringifySafely(data2); + } + return data2; + }], + transformResponse: [function transformResponse(data2) { + const transitional2 = this.transitional || defaults.transitional; + const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing; + const JSONRequested = this.responseType === "json"; + if (utils$1.isResponse(data2) || utils$1.isReadableStream(data2)) { + return data2; + } + if (data2 && utils$1.isString(data2) && (forcedJSONParsing && !this.responseType || JSONRequested)) { + const silentJSONParsing = transitional2 && transitional2.silentJSONParsing; + const strictJSONParsing = !silentJSONParsing && JSONRequested; + try { + return JSON.parse(data2); + } catch (e2) { + if (strictJSONParsing) { + if (e2.name === "SyntaxError") { + throw AxiosError.from(e2, AxiosError.ERR_BAD_RESPONSE, this, null, this.response); + } + throw e2; + } + } + } + return data2; + }], + /** + * A timeout in milliseconds to abort a request. If set to 0 (default) a + * timeout is not created. + */ + timeout: 0, + xsrfCookieName: "XSRF-TOKEN", + xsrfHeaderName: "X-XSRF-TOKEN", + maxContentLength: -1, + maxBodyLength: -1, + env: { + FormData: platform.classes.FormData, + Blob: platform.classes.Blob + }, + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + }, + headers: { + common: { + "Accept": "application/json, text/plain, */*", + "Content-Type": void 0 + } + } +}; +utils$1.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => { + defaults.headers[method] = {}; +}); +const ignoreDuplicateOf = utils$1.toObjectSet([ + "age", + "authorization", + "content-length", + "content-type", + "etag", + "expires", + "from", + "host", + "if-modified-since", + "if-unmodified-since", + "last-modified", + "location", + "max-forwards", + "proxy-authorization", + "referer", + "retry-after", + "user-agent" +]); +const parseHeaders = (rawHeaders) => { + const parsed = {}; + let key; + let val2; + let i; + rawHeaders && rawHeaders.split("\n").forEach(function parser(line) { + i = line.indexOf(":"); + key = line.substring(0, i).trim().toLowerCase(); + val2 = line.substring(i + 1).trim(); + if (!key || parsed[key] && ignoreDuplicateOf[key]) { + return; + } + if (key === "set-cookie") { + if (parsed[key]) { + parsed[key].push(val2); + } else { + parsed[key] = [val2]; + } + } else { + parsed[key] = parsed[key] ? parsed[key] + ", " + val2 : val2; + } + }); + return parsed; +}; +const $internals = Symbol("internals"); +function normalizeHeader(header) { + return header && String(header).trim().toLowerCase(); +} +function normalizeValue(value) { + if (value === false || value == null) { + return value; + } + return utils$1.isArray(value) ? value.map(normalizeValue) : String(value); +} +function parseTokens(str) { + const tokens = /* @__PURE__ */ Object.create(null); + const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; + let match2; + while (match2 = tokensRE.exec(str)) { + tokens[match2[1]] = match2[2]; + } + return tokens; +} +const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); +function matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) { + if (utils$1.isFunction(filter2)) { + return filter2.call(this, value, header); + } + if (isHeaderNameFilter) { + value = header; + } + if (!utils$1.isString(value)) return; + if (utils$1.isString(filter2)) { + return value.indexOf(filter2) !== -1; + } + if (utils$1.isRegExp(filter2)) { + return filter2.test(value); + } +} +function formatHeader(header) { + return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w2, char, str) => { + return char.toUpperCase() + str; + }); +} +function buildAccessors(obj, header) { + const accessorName = utils$1.toCamelCase(" " + header); + ["get", "set", "has"].forEach((methodName) => { + Object.defineProperty(obj, methodName + accessorName, { + value: function(arg1, arg2, arg3) { + return this[methodName].call(this, header, arg1, arg2, arg3); + }, + configurable: true + }); + }); +} +class AxiosHeaders { + constructor(headers) { + headers && this.set(headers); + } + set(header, valueOrRewrite, rewrite) { + const self2 = this; + function setHeader(_value, _header, _rewrite) { + const lHeader = normalizeHeader(_header); + if (!lHeader) { + throw new Error("header name must be a non-empty string"); + } + const key = utils$1.findKey(self2, lHeader); + if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { + self2[key || _header] = normalizeValue(_value); + } + } + const setHeaders = (headers, _rewrite) => utils$1.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); + if (utils$1.isPlainObject(header) || header instanceof this.constructor) { + setHeaders(header, valueOrRewrite); + } else if (utils$1.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { + setHeaders(parseHeaders(header), valueOrRewrite); + } else if (utils$1.isHeaders(header)) { + for (const [key, value] of header.entries()) { + setHeader(value, key, rewrite); + } + } else { + header != null && setHeader(valueOrRewrite, header, rewrite); + } + return this; + } + get(header, parser) { + header = normalizeHeader(header); + if (header) { + const key = utils$1.findKey(this, header); + if (key) { + const value = this[key]; + if (!parser) { + return value; + } + if (parser === true) { + return parseTokens(value); + } + if (utils$1.isFunction(parser)) { + return parser.call(this, value, key); + } + if (utils$1.isRegExp(parser)) { + return parser.exec(value); + } + throw new TypeError("parser must be boolean|regexp|function"); + } + } + } + has(header, matcher) { + header = normalizeHeader(header); + if (header) { + const key = utils$1.findKey(this, header); + return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher))); + } + return false; + } + delete(header, matcher) { + const self2 = this; + let deleted = false; + function deleteHeader(_header) { + _header = normalizeHeader(_header); + if (_header) { + const key = utils$1.findKey(self2, _header); + if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) { + delete self2[key]; + deleted = true; + } + } + } + if (utils$1.isArray(header)) { + header.forEach(deleteHeader); + } else { + deleteHeader(header); + } + return deleted; + } + clear(matcher) { + const keys3 = Object.keys(this); + let i = keys3.length; + let deleted = false; + while (i--) { + const key = keys3[i]; + if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { + delete this[key]; + deleted = true; + } + } + return deleted; + } + normalize(format2) { + const self2 = this; + const headers = {}; + utils$1.forEach(this, (value, header) => { + const key = utils$1.findKey(headers, header); + if (key) { + self2[key] = normalizeValue(value); + delete self2[header]; + return; + } + const normalized = format2 ? formatHeader(header) : String(header).trim(); + if (normalized !== header) { + delete self2[header]; + } + self2[normalized] = normalizeValue(value); + headers[normalized] = true; + }); + return this; + } + concat(...targets) { + return this.constructor.concat(this, ...targets); + } + toJSON(asStrings) { + const obj = /* @__PURE__ */ Object.create(null); + utils$1.forEach(this, (value, header) => { + value != null && value !== false && (obj[header] = asStrings && utils$1.isArray(value) ? value.join(", ") : value); + }); + return obj; + } + [Symbol.iterator]() { + return Object.entries(this.toJSON())[Symbol.iterator](); + } + toString() { + return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); + } + get [Symbol.toStringTag]() { + return "AxiosHeaders"; + } + static from(thing) { + return thing instanceof this ? thing : new this(thing); + } + static concat(first, ...targets) { + const computed = new this(first); + targets.forEach((target) => computed.set(target)); + return computed; + } + static accessor(header) { + const internals = this[$internals] = this[$internals] = { + accessors: {} + }; + const accessors = internals.accessors; + const prototype2 = this.prototype; + function defineAccessor(_header) { + const lHeader = normalizeHeader(_header); + if (!accessors[lHeader]) { + buildAccessors(prototype2, _header); + accessors[lHeader] = true; + } + } + utils$1.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); + return this; + } +} +AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]); +utils$1.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => { + let mapped = key[0].toUpperCase() + key.slice(1); + return { + get: () => value, + set(headerValue) { + this[mapped] = headerValue; + } + }; +}); +utils$1.freezeMethods(AxiosHeaders); +function transformData(fns, response) { + const config = this || defaults; + const context = response || config; + const headers = AxiosHeaders.from(context.headers); + let data2 = context.data; + utils$1.forEach(fns, function transform(fn) { + data2 = fn.call(config, data2, headers.normalize(), response ? response.status : void 0); + }); + headers.normalize(); + return data2; +} +function isCancel(value) { + return !!(value && value.__CANCEL__); +} +function CanceledError(message, config, request) { + AxiosError.call(this, message == null ? "canceled" : message, AxiosError.ERR_CANCELED, config, request); + this.name = "CanceledError"; +} +utils$1.inherits(CanceledError, AxiosError, { + __CANCEL__: true +}); +function settle(resolve3, reject2, response) { + const validateStatus2 = response.config.validateStatus; + if (!response.status || !validateStatus2 || validateStatus2(response.status)) { + resolve3(response); + } else { + reject2(new AxiosError( + "Request failed with status code " + response.status, + [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], + response.config, + response.request, + response + )); + } +} +function parseProtocol(url) { + const match2 = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); + return match2 && match2[1] || ""; +} +function speedometer(samplesCount, min2) { + samplesCount = samplesCount || 10; + const bytes = new Array(samplesCount); + const timestamps = new Array(samplesCount); + let head = 0; + let tail = 0; + let firstSampleTS; + min2 = min2 !== void 0 ? min2 : 1e3; + return function push2(chunkLength) { + const now = Date.now(); + const startedAt = timestamps[tail]; + if (!firstSampleTS) { + firstSampleTS = now; + } + bytes[head] = chunkLength; + timestamps[head] = now; + let i = tail; + let bytesCount = 0; + while (i !== head) { + bytesCount += bytes[i++]; + i = i % samplesCount; + } + head = (head + 1) % samplesCount; + if (head === tail) { + tail = (tail + 1) % samplesCount; + } + if (now - firstSampleTS < min2) { + return; + } + const passed = startedAt && now - startedAt; + return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; + }; +} +function throttle(fn, freq) { + let timestamp = 0; + let threshold = 1e3 / freq; + let lastArgs; + let timer; + const invoke = (args, now = Date.now()) => { + timestamp = now; + lastArgs = null; + if (timer) { + clearTimeout(timer); + timer = null; + } + fn.apply(null, args); + }; + const throttled = (...args) => { + const now = Date.now(); + const passed = now - timestamp; + if (passed >= threshold) { + invoke(args, now); + } else { + lastArgs = args; + if (!timer) { + timer = setTimeout(() => { + timer = null; + invoke(lastArgs); + }, threshold - passed); + } + } + }; + const flush = () => lastArgs && invoke(lastArgs); + return [throttled, flush]; +} +const progressEventReducer = (listener, isDownloadStream, freq = 3) => { + let bytesNotified = 0; + const _speedometer = speedometer(50, 250); + return throttle((e2) => { + const loaded = e2.loaded; + const total = e2.lengthComputable ? e2.total : void 0; + const progressBytes = loaded - bytesNotified; + const rate = _speedometer(progressBytes); + const inRange = loaded <= total; + bytesNotified = loaded; + const data2 = { + loaded, + total, + progress: total ? loaded / total : void 0, + bytes: progressBytes, + rate: rate ? rate : void 0, + estimated: rate && total && inRange ? (total - loaded) / rate : void 0, + event: e2, + lengthComputable: total != null, + [isDownloadStream ? "download" : "upload"]: true + }; + listener(data2); + }, freq); +}; +const progressEventDecorator = (total, throttled) => { + const lengthComputable = total != null; + return [(loaded) => throttled[0]({ + lengthComputable, + total, + loaded + }), throttled[1]]; +}; +const asyncDecorator = (fn) => (...args) => utils$1.asap(() => fn(...args)); +const isURLSameOrigin = platform.hasStandardBrowserEnv ? ( + // Standard browser envs have full support of the APIs needed to test + // whether the request URL is of the same origin as current location. + function standardBrowserEnv() { + const msie = platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent); + const urlParsingNode = document.createElement("a"); + let originURL; + function resolveURL(url) { + let href = url; + if (msie) { + urlParsingNode.setAttribute("href", href); + href = urlParsingNode.href; + } + urlParsingNode.setAttribute("href", href); + return { + href: urlParsingNode.href, + protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, "") : "", + host: urlParsingNode.host, + search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, "") : "", + hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, "") : "", + hostname: urlParsingNode.hostname, + port: urlParsingNode.port, + pathname: urlParsingNode.pathname.charAt(0) === "/" ? urlParsingNode.pathname : "/" + urlParsingNode.pathname + }; + } + originURL = resolveURL(window.location.href); + return function isURLSameOrigin2(requestURL) { + const parsed = utils$1.isString(requestURL) ? resolveURL(requestURL) : requestURL; + return parsed.protocol === originURL.protocol && parsed.host === originURL.host; + }; + }() +) : ( + // Non standard browser envs (web workers, react-native) lack needed support. + /* @__PURE__ */ function nonStandardBrowserEnv() { + return function isURLSameOrigin2() { + return true; + }; + }() +); +const cookies = platform.hasStandardBrowserEnv ? ( + // Standard browser envs support document.cookie + { + write(name, value, expires, path, domain, secure) { + const cookie = [name + "=" + encodeURIComponent(value)]; + utils$1.isNumber(expires) && cookie.push("expires=" + new Date(expires).toGMTString()); + utils$1.isString(path) && cookie.push("path=" + path); + utils$1.isString(domain) && cookie.push("domain=" + domain); + secure === true && cookie.push("secure"); + document.cookie = cookie.join("; "); + }, + read(name) { + const match2 = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); + return match2 ? decodeURIComponent(match2[3]) : null; + }, + remove(name) { + this.write(name, "", Date.now() - 864e5); + } + } +) : ( + // Non-standard browser env (web workers, react-native) lack needed support. + { + write() { + }, + read() { + return null; + }, + remove() { + } + } +); +function isAbsoluteURL(url) { + return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); +} +function combineURLs(baseURL, relativeURL) { + return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; +} +function buildFullPath(baseURL, requestedURL) { + if (baseURL && !isAbsoluteURL(requestedURL)) { + return combineURLs(baseURL, requestedURL); + } + return requestedURL; +} +const headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing; +function mergeConfig(config1, config2) { + config2 = config2 || {}; + const config = {}; + function getMergedValue(target, source, caseless) { + if (utils$1.isPlainObject(target) && utils$1.isPlainObject(source)) { + return utils$1.merge.call({ caseless }, target, source); + } else if (utils$1.isPlainObject(source)) { + return utils$1.merge({}, source); + } else if (utils$1.isArray(source)) { + return source.slice(); + } + return source; + } + function mergeDeepProperties(a2, b2, caseless) { + if (!utils$1.isUndefined(b2)) { + return getMergedValue(a2, b2, caseless); + } else if (!utils$1.isUndefined(a2)) { + return getMergedValue(void 0, a2, caseless); + } + } + function valueFromConfig2(a2, b2) { + if (!utils$1.isUndefined(b2)) { + return getMergedValue(void 0, b2); + } + } + function defaultToConfig2(a2, b2) { + if (!utils$1.isUndefined(b2)) { + return getMergedValue(void 0, b2); + } else if (!utils$1.isUndefined(a2)) { + return getMergedValue(void 0, a2); + } + } + function mergeDirectKeys(a2, b2, prop) { + if (prop in config2) { + return getMergedValue(a2, b2); + } else if (prop in config1) { + return getMergedValue(void 0, a2); + } + } + const mergeMap = { + url: valueFromConfig2, + method: valueFromConfig2, + data: valueFromConfig2, + baseURL: defaultToConfig2, + transformRequest: defaultToConfig2, + transformResponse: defaultToConfig2, + paramsSerializer: defaultToConfig2, + timeout: defaultToConfig2, + timeoutMessage: defaultToConfig2, + withCredentials: defaultToConfig2, + withXSRFToken: defaultToConfig2, + adapter: defaultToConfig2, + responseType: defaultToConfig2, + xsrfCookieName: defaultToConfig2, + xsrfHeaderName: defaultToConfig2, + onUploadProgress: defaultToConfig2, + onDownloadProgress: defaultToConfig2, + decompress: defaultToConfig2, + maxContentLength: defaultToConfig2, + maxBodyLength: defaultToConfig2, + beforeRedirect: defaultToConfig2, + transport: defaultToConfig2, + httpAgent: defaultToConfig2, + httpsAgent: defaultToConfig2, + cancelToken: defaultToConfig2, + socketPath: defaultToConfig2, + responseEncoding: defaultToConfig2, + validateStatus: mergeDirectKeys, + headers: (a2, b2) => mergeDeepProperties(headersToObject(a2), headersToObject(b2), true) + }; + utils$1.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { + const merge2 = mergeMap[prop] || mergeDeepProperties; + const configValue = merge2(config1[prop], config2[prop], prop); + utils$1.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue); + }); + return config; +} +const resolveConfig = (config) => { + const newConfig = mergeConfig({}, config); + let { data: data2, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig; + newConfig.headers = headers = AxiosHeaders.from(headers); + newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer); + if (auth) { + headers.set( + "Authorization", + "Basic " + btoa((auth.username || "") + ":" + (auth.password ? unescape(encodeURIComponent(auth.password)) : "")) + ); + } + let contentType; + if (utils$1.isFormData(data2)) { + if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) { + headers.setContentType(void 0); + } else if ((contentType = headers.getContentType()) !== false) { + const [type, ...tokens] = contentType ? contentType.split(";").map((token2) => token2.trim()).filter(Boolean) : []; + headers.setContentType([type || "multipart/form-data", ...tokens].join("; ")); + } + } + if (platform.hasStandardBrowserEnv) { + withXSRFToken && utils$1.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); + if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin(newConfig.url)) { + const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName); + if (xsrfValue) { + headers.set(xsrfHeaderName, xsrfValue); + } + } + } + return newConfig; +}; +const isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; +const xhrAdapter = isXHRAdapterSupported && function(config) { + return new Promise(function dispatchXhrRequest(resolve3, reject2) { + const _config = resolveConfig(config); + let requestData = _config.data; + const requestHeaders = AxiosHeaders.from(_config.headers).normalize(); + let { responseType, onUploadProgress, onDownloadProgress } = _config; + let onCanceled; + let uploadThrottled, downloadThrottled; + let flushUpload, flushDownload; + function done() { + flushUpload && flushUpload(); + flushDownload && flushDownload(); + _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); + _config.signal && _config.signal.removeEventListener("abort", onCanceled); + } + let request = new XMLHttpRequest(); + request.open(_config.method.toUpperCase(), _config.url, true); + request.timeout = _config.timeout; + function onloadend() { + if (!request) { + return; + } + const responseHeaders = AxiosHeaders.from( + "getAllResponseHeaders" in request && request.getAllResponseHeaders() + ); + const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; + const response = { + data: responseData, + status: request.status, + statusText: request.statusText, + headers: responseHeaders, + config, + request + }; + settle(function _resolve(value) { + resolve3(value); + done(); + }, function _reject(err) { + reject2(err); + done(); + }, response); + request = null; + } + if ("onloadend" in request) { + request.onloadend = onloadend; + } else { + request.onreadystatechange = function handleLoad() { + if (!request || request.readyState !== 4) { + return; + } + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { + return; + } + setTimeout(onloadend); + }; + } + request.onabort = function handleAbort() { + if (!request) { + return; + } + reject2(new AxiosError("Request aborted", AxiosError.ECONNABORTED, config, request)); + request = null; + }; + request.onerror = function handleError() { + reject2(new AxiosError("Network Error", AxiosError.ERR_NETWORK, config, request)); + request = null; + }; + request.ontimeout = function handleTimeout() { + let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded"; + const transitional2 = _config.transitional || transitionalDefaults; + if (_config.timeoutErrorMessage) { + timeoutErrorMessage = _config.timeoutErrorMessage; + } + reject2(new AxiosError( + timeoutErrorMessage, + transitional2.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED, + config, + request + )); + request = null; + }; + requestData === void 0 && requestHeaders.setContentType(null); + if ("setRequestHeader" in request) { + utils$1.forEach(requestHeaders.toJSON(), function setRequestHeader(val2, key) { + request.setRequestHeader(key, val2); + }); + } + if (!utils$1.isUndefined(_config.withCredentials)) { + request.withCredentials = !!_config.withCredentials; + } + if (responseType && responseType !== "json") { + request.responseType = _config.responseType; + } + if (onDownloadProgress) { + [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true); + request.addEventListener("progress", downloadThrottled); + } + if (onUploadProgress && request.upload) { + [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress); + request.upload.addEventListener("progress", uploadThrottled); + request.upload.addEventListener("loadend", flushUpload); + } + if (_config.cancelToken || _config.signal) { + onCanceled = (cancel) => { + if (!request) { + return; + } + reject2(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel); + request.abort(); + request = null; + }; + _config.cancelToken && _config.cancelToken.subscribe(onCanceled); + if (_config.signal) { + _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled); + } + } + const protocol = parseProtocol(_config.url); + if (protocol && platform.protocols.indexOf(protocol) === -1) { + reject2(new AxiosError("Unsupported protocol " + protocol + ":", AxiosError.ERR_BAD_REQUEST, config)); + return; + } + request.send(requestData || null); + }); +}; +const composeSignals = (signals, timeout) => { + const { length } = signals = signals ? signals.filter(Boolean) : []; + if (timeout || length) { + let controller = new AbortController(); + let aborted; + const onabort = function(reason) { + if (!aborted) { + aborted = true; + unsubscribe(); + const err = reason instanceof Error ? reason : this.reason; + controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err)); + } + }; + let timer = timeout && setTimeout(() => { + timer = null; + onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT)); + }, timeout); + const unsubscribe = () => { + if (signals) { + timer && clearTimeout(timer); + timer = null; + signals.forEach((signal2) => { + signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener("abort", onabort); + }); + signals = null; + } + }; + signals.forEach((signal2) => signal2.addEventListener("abort", onabort)); + const { signal } = controller; + signal.unsubscribe = () => utils$1.asap(unsubscribe); + return signal; + } +}; +const streamChunk = function* (chunk, chunkSize) { + let len = chunk.byteLength; + if (!chunkSize || len < chunkSize) { + yield chunk; + return; + } + let pos = 0; + let end; + while (pos < len) { + end = pos + chunkSize; + yield chunk.slice(pos, end); + pos = end; + } +}; +const readBytes = async function* (iterable, chunkSize) { + for await (const chunk of readStream(iterable)) { + yield* streamChunk(chunk, chunkSize); + } +}; +const readStream = async function* (stream) { + if (stream[Symbol.asyncIterator]) { + yield* stream; + return; + } + const reader = stream.getReader(); + try { + for (; ; ) { + const { done, value } = await reader.read(); + if (done) { + break; + } + yield value; + } + } finally { + await reader.cancel(); + } +}; +const trackStream = (stream, chunkSize, onProgress, onFinish) => { + const iterator = readBytes(stream, chunkSize); + let bytes = 0; + let done; + let _onFinish = (e2) => { + if (!done) { + done = true; + onFinish && onFinish(e2); + } + }; + return new ReadableStream({ + async pull(controller) { + try { + const { done: done2, value } = await iterator.next(); + if (done2) { + _onFinish(); + controller.close(); + return; + } + let len = value.byteLength; + if (onProgress) { + let loadedBytes = bytes += len; + onProgress(loadedBytes); + } + controller.enqueue(new Uint8Array(value)); + } catch (err) { + _onFinish(err); + throw err; + } + }, + cancel(reason) { + _onFinish(reason); + return iterator.return(); + } + }, { + highWaterMark: 2 + }); +}; +const isFetchSupported = typeof fetch === "function" && typeof Request === "function" && typeof Response === "function"; +const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === "function"; +const encodeText = isFetchSupported && (typeof TextEncoder === "function" ? /* @__PURE__ */ ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer())); +const test$1 = (fn, ...args) => { + try { + return !!fn(...args); + } catch (e2) { + return false; + } +}; +const supportsRequestStream = isReadableStreamSupported && test$1(() => { + let duplexAccessed = false; + const hasContentType = new Request(platform.origin, { + body: new ReadableStream(), + method: "POST", + get duplex() { + duplexAccessed = true; + return "half"; + } + }).headers.has("Content-Type"); + return duplexAccessed && !hasContentType; +}); +const DEFAULT_CHUNK_SIZE = 64 * 1024; +const supportsResponseStream = isReadableStreamSupported && test$1(() => utils$1.isReadableStream(new Response("").body)); +const resolvers = { + stream: supportsResponseStream && ((res) => res.body) +}; +isFetchSupported && ((res) => { + ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => { + !resolvers[type] && (resolvers[type] = utils$1.isFunction(res[type]) ? (res2) => res2[type]() : (_2, config) => { + throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config); + }); + }); +})(new Response()); +const getBodyLength = async (body) => { + if (body == null) { + return 0; + } + if (utils$1.isBlob(body)) { + return body.size; + } + if (utils$1.isSpecCompliantForm(body)) { + const _request = new Request(platform.origin, { + method: "POST", + body + }); + return (await _request.arrayBuffer()).byteLength; + } + if (utils$1.isArrayBufferView(body) || utils$1.isArrayBuffer(body)) { + return body.byteLength; + } + if (utils$1.isURLSearchParams(body)) { + body = body + ""; + } + if (utils$1.isString(body)) { + return (await encodeText(body)).byteLength; + } +}; +const resolveBodyLength = async (headers, body) => { + const length = utils$1.toFiniteNumber(headers.getContentLength()); + return length == null ? getBodyLength(body) : length; +}; +const fetchAdapter = isFetchSupported && (async (config) => { + let { + url, + method, + data: data2, + signal, + cancelToken, + timeout, + onDownloadProgress, + onUploadProgress, + responseType, + headers, + withCredentials = "same-origin", + fetchOptions + } = resolveConfig(config); + responseType = responseType ? (responseType + "").toLowerCase() : "text"; + let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout); + let request; + const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { + composedSignal.unsubscribe(); + }); + let requestContentLength; + try { + if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data2)) !== 0) { + let _request = new Request(url, { + method: "POST", + body: data2, + duplex: "half" + }); + let contentTypeHeader; + if (utils$1.isFormData(data2) && (contentTypeHeader = _request.headers.get("content-type"))) { + headers.setContentType(contentTypeHeader); + } + if (_request.body) { + const [onProgress, flush] = progressEventDecorator( + requestContentLength, + progressEventReducer(asyncDecorator(onUploadProgress)) + ); + data2 = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); + } + } + if (!utils$1.isString(withCredentials)) { + withCredentials = withCredentials ? "include" : "omit"; + } + const isCredentialsSupported = "credentials" in Request.prototype; + request = new Request(url, { + ...fetchOptions, + signal: composedSignal, + method: method.toUpperCase(), + headers: headers.normalize().toJSON(), + body: data2, + duplex: "half", + credentials: isCredentialsSupported ? withCredentials : void 0 + }); + let response = await fetch(request); + const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response"); + if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) { + const options = {}; + ["status", "statusText", "headers"].forEach((prop) => { + options[prop] = response[prop]; + }); + const responseContentLength = utils$1.toFiniteNumber(response.headers.get("content-length")); + const [onProgress, flush] = onDownloadProgress && progressEventDecorator( + responseContentLength, + progressEventReducer(asyncDecorator(onDownloadProgress), true) + ) || []; + response = new Response( + trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { + flush && flush(); + unsubscribe && unsubscribe(); + }), + options + ); + } + responseType = responseType || "text"; + let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || "text"](response, config); + !isStreamResponse && unsubscribe && unsubscribe(); + return await new Promise((resolve3, reject2) => { + settle(resolve3, reject2, { + data: responseData, + headers: AxiosHeaders.from(response.headers), + status: response.status, + statusText: response.statusText, + config, + request + }); + }); + } catch (err) { + unsubscribe && unsubscribe(); + if (err && err.name === "TypeError" && /fetch/i.test(err.message)) { + throw Object.assign( + new AxiosError("Network Error", AxiosError.ERR_NETWORK, config, request), + { + cause: err.cause || err + } + ); + } + throw AxiosError.from(err, err && err.code, config, request); + } +}); +const knownAdapters = { + http: httpAdapter, + xhr: xhrAdapter, + fetch: fetchAdapter +}; +utils$1.forEach(knownAdapters, (fn, value) => { + if (fn) { + try { + Object.defineProperty(fn, "name", { value }); + } catch (e2) { + } + Object.defineProperty(fn, "adapterName", { value }); + } +}); +const renderReason = (reason) => `- ${reason}`; +const isResolvedHandle = (adapter) => utils$1.isFunction(adapter) || adapter === null || adapter === false; +const adapters = { + getAdapter: (adapters2) => { + adapters2 = utils$1.isArray(adapters2) ? adapters2 : [adapters2]; + const { length } = adapters2; + let nameOrAdapter; + let adapter; + const rejectedReasons = {}; + for (let i = 0; i < length; i++) { + nameOrAdapter = adapters2[i]; + let id2; + adapter = nameOrAdapter; + if (!isResolvedHandle(nameOrAdapter)) { + adapter = knownAdapters[(id2 = String(nameOrAdapter)).toLowerCase()]; + if (adapter === void 0) { + throw new AxiosError(`Unknown adapter '${id2}'`); + } + } + if (adapter) { + break; + } + rejectedReasons[id2 || "#" + i] = adapter; + } + if (!adapter) { + const reasons = Object.entries(rejectedReasons).map( + ([id2, state]) => `adapter ${id2} ` + (state === false ? "is not supported by the environment" : "is not available in the build") + ); + let s2 = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified"; + throw new AxiosError( + `There is no suitable adapter to dispatch the request ` + s2, + "ERR_NOT_SUPPORT" + ); + } + return adapter; + }, + adapters: knownAdapters +}; +function throwIfCancellationRequested(config) { + if (config.cancelToken) { + config.cancelToken.throwIfRequested(); + } + if (config.signal && config.signal.aborted) { + throw new CanceledError(null, config); + } +} +function dispatchRequest(config) { + throwIfCancellationRequested(config); + config.headers = AxiosHeaders.from(config.headers); + config.data = transformData.call( + config, + config.transformRequest + ); + if (["post", "put", "patch"].indexOf(config.method) !== -1) { + config.headers.setContentType("application/x-www-form-urlencoded", false); + } + const adapter = adapters.getAdapter(config.adapter || defaults.adapter); + return adapter(config).then(function onAdapterResolution(response) { + throwIfCancellationRequested(config); + response.data = transformData.call( + config, + config.transformResponse, + response + ); + response.headers = AxiosHeaders.from(response.headers); + return response; + }, function onAdapterRejection(reason) { + if (!isCancel(reason)) { + throwIfCancellationRequested(config); + if (reason && reason.response) { + reason.response.data = transformData.call( + config, + config.transformResponse, + reason.response + ); + reason.response.headers = AxiosHeaders.from(reason.response.headers); + } + } + return Promise.reject(reason); + }); +} +const VERSION = "1.7.7"; +const validators$1 = {}; +["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { + validators$1[type] = function validator2(thing) { + return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type; + }; +}); +const deprecatedWarnings = {}; +validators$1.transitional = function transitional(validator2, version2, message) { + function formatMessage(opt, desc) { + return "[Axios v" + VERSION + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : ""); + } + return (value, opt, opts) => { + if (validator2 === false) { + throw new AxiosError( + formatMessage(opt, " has been removed" + (version2 ? " in " + version2 : "")), + AxiosError.ERR_DEPRECATED + ); + } + if (version2 && !deprecatedWarnings[opt]) { + deprecatedWarnings[opt] = true; + console.warn( + formatMessage( + opt, + " has been deprecated since v" + version2 + " and will be removed in the near future" + ) + ); + } + return validator2 ? validator2(value, opt, opts) : true; + }; +}; +function assertOptions(options, schema, allowUnknown) { + if (typeof options !== "object") { + throw new AxiosError("options must be an object", AxiosError.ERR_BAD_OPTION_VALUE); + } + const keys3 = Object.keys(options); + let i = keys3.length; + while (i-- > 0) { + const opt = keys3[i]; + const validator2 = schema[opt]; + if (validator2) { + const value = options[opt]; + const result = value === void 0 || validator2(value, opt, options); + if (result !== true) { + throw new AxiosError("option " + opt + " must be " + result, AxiosError.ERR_BAD_OPTION_VALUE); + } + continue; + } + if (allowUnknown !== true) { + throw new AxiosError("Unknown option " + opt, AxiosError.ERR_BAD_OPTION); + } + } +} +const validator = { + assertOptions, + validators: validators$1 +}; +const validators = validator.validators; +class Axios { + constructor(instanceConfig) { + this.defaults = instanceConfig; + this.interceptors = { + request: new InterceptorManager(), + response: new InterceptorManager() + }; + } + /** + * Dispatch a request + * + * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) + * @param {?Object} config + * + * @returns {Promise} The Promise to be fulfilled + */ + async request(configOrUrl, config) { + try { + return await this._request(configOrUrl, config); + } catch (err) { + if (err instanceof Error) { + let dummy; + Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : dummy = new Error(); + const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, "") : ""; + try { + if (!err.stack) { + err.stack = stack; + } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ""))) { + err.stack += "\n" + stack; + } + } catch (e2) { + } + } + throw err; + } + } + _request(configOrUrl, config) { + if (typeof configOrUrl === "string") { + config = config || {}; + config.url = configOrUrl; + } else { + config = configOrUrl || {}; + } + config = mergeConfig(this.defaults, config); + const { transitional: transitional2, paramsSerializer, headers } = config; + if (transitional2 !== void 0) { + validator.assertOptions(transitional2, { + silentJSONParsing: validators.transitional(validators.boolean), + forcedJSONParsing: validators.transitional(validators.boolean), + clarifyTimeoutError: validators.transitional(validators.boolean) + }, false); + } + if (paramsSerializer != null) { + if (utils$1.isFunction(paramsSerializer)) { + config.paramsSerializer = { + serialize: paramsSerializer + }; + } else { + validator.assertOptions(paramsSerializer, { + encode: validators.function, + serialize: validators.function + }, true); + } + } + config.method = (config.method || this.defaults.method || "get").toLowerCase(); + let contextHeaders = headers && utils$1.merge( + headers.common, + headers[config.method] + ); + headers && utils$1.forEach( + ["delete", "get", "head", "post", "put", "patch", "common"], + (method) => { + delete headers[method]; + } + ); + config.headers = AxiosHeaders.concat(contextHeaders, headers); + const requestInterceptorChain = []; + let synchronousRequestInterceptors = true; + this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { + if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { + return; + } + synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; + requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); + }); + const responseInterceptorChain = []; + this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { + responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); + }); + let promise; + let i = 0; + let len; + if (!synchronousRequestInterceptors) { + const chain = [dispatchRequest.bind(this), void 0]; + chain.unshift.apply(chain, requestInterceptorChain); + chain.push.apply(chain, responseInterceptorChain); + len = chain.length; + promise = Promise.resolve(config); + while (i < len) { + promise = promise.then(chain[i++], chain[i++]); + } + return promise; + } + len = requestInterceptorChain.length; + let newConfig = config; + i = 0; + while (i < len) { + const onFulfilled = requestInterceptorChain[i++]; + const onRejected = requestInterceptorChain[i++]; + try { + newConfig = onFulfilled(newConfig); + } catch (error) { + onRejected.call(this, error); + break; + } + } + try { + promise = dispatchRequest.call(this, newConfig); + } catch (error) { + return Promise.reject(error); + } + i = 0; + len = responseInterceptorChain.length; + while (i < len) { + promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); + } + return promise; + } + getUri(config) { + config = mergeConfig(this.defaults, config); + const fullPath = buildFullPath(config.baseURL, config.url); + return buildURL(fullPath, config.params, config.paramsSerializer); + } +} +utils$1.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { + Axios.prototype[method] = function(url, config) { + return this.request(mergeConfig(config || {}, { + method, + url, + data: (config || {}).data + })); + }; +}); +utils$1.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { + function generateHTTPMethod(isForm) { + return function httpMethod(url, data2, config) { + return this.request(mergeConfig(config || {}, { + method, + headers: isForm ? { + "Content-Type": "multipart/form-data" + } : {}, + url, + data: data2 + })); + }; + } + Axios.prototype[method] = generateHTTPMethod(); + Axios.prototype[method + "Form"] = generateHTTPMethod(true); +}); +class CancelToken { + constructor(executor) { + if (typeof executor !== "function") { + throw new TypeError("executor must be a function."); + } + let resolvePromise; + this.promise = new Promise(function promiseExecutor(resolve3) { + resolvePromise = resolve3; + }); + const token2 = this; + this.promise.then((cancel) => { + if (!token2._listeners) return; + let i = token2._listeners.length; + while (i-- > 0) { + token2._listeners[i](cancel); + } + token2._listeners = null; + }); + this.promise.then = (onfulfilled) => { + let _resolve; + const promise = new Promise((resolve3) => { + token2.subscribe(resolve3); + _resolve = resolve3; + }).then(onfulfilled); + promise.cancel = function reject2() { + token2.unsubscribe(_resolve); + }; + return promise; + }; + executor(function cancel(message, config, request) { + if (token2.reason) { + return; + } + token2.reason = new CanceledError(message, config, request); + resolvePromise(token2.reason); + }); + } + /** + * Throws a `CanceledError` if cancellation has been requested. + */ + throwIfRequested() { + if (this.reason) { + throw this.reason; + } + } + /** + * Subscribe to the cancel signal + */ + subscribe(listener) { + if (this.reason) { + listener(this.reason); + return; + } + if (this._listeners) { + this._listeners.push(listener); + } else { + this._listeners = [listener]; + } + } + /** + * Unsubscribe from the cancel signal + */ + unsubscribe(listener) { + if (!this._listeners) { + return; + } + const index = this._listeners.indexOf(listener); + if (index !== -1) { + this._listeners.splice(index, 1); + } + } + toAbortSignal() { + const controller = new AbortController(); + const abort = (err) => { + controller.abort(err); + }; + this.subscribe(abort); + controller.signal.unsubscribe = () => this.unsubscribe(abort); + return controller.signal; + } + /** + * Returns an object that contains a new `CancelToken` and a function that, when called, + * cancels the `CancelToken`. + */ + static source() { + let cancel; + const token2 = new CancelToken(function executor(c2) { + cancel = c2; + }); + return { + token: token2, + cancel + }; + } +} +function spread(callback) { + return function wrap(arr) { + return callback.apply(null, arr); + }; +} +function isAxiosError(payload) { + return utils$1.isObject(payload) && payload.isAxiosError === true; +} +const HttpStatusCode = { + Continue: 100, + SwitchingProtocols: 101, + Processing: 102, + EarlyHints: 103, + Ok: 200, + Created: 201, + Accepted: 202, + NonAuthoritativeInformation: 203, + NoContent: 204, + ResetContent: 205, + PartialContent: 206, + MultiStatus: 207, + AlreadyReported: 208, + ImUsed: 226, + MultipleChoices: 300, + MovedPermanently: 301, + Found: 302, + SeeOther: 303, + NotModified: 304, + UseProxy: 305, + Unused: 306, + TemporaryRedirect: 307, + PermanentRedirect: 308, + BadRequest: 400, + Unauthorized: 401, + PaymentRequired: 402, + Forbidden: 403, + NotFound: 404, + MethodNotAllowed: 405, + NotAcceptable: 406, + ProxyAuthenticationRequired: 407, + RequestTimeout: 408, + Conflict: 409, + Gone: 410, + LengthRequired: 411, + PreconditionFailed: 412, + PayloadTooLarge: 413, + UriTooLong: 414, + UnsupportedMediaType: 415, + RangeNotSatisfiable: 416, + ExpectationFailed: 417, + ImATeapot: 418, + MisdirectedRequest: 421, + UnprocessableEntity: 422, + Locked: 423, + FailedDependency: 424, + TooEarly: 425, + UpgradeRequired: 426, + PreconditionRequired: 428, + TooManyRequests: 429, + RequestHeaderFieldsTooLarge: 431, + UnavailableForLegalReasons: 451, + InternalServerError: 500, + NotImplemented: 501, + BadGateway: 502, + ServiceUnavailable: 503, + GatewayTimeout: 504, + HttpVersionNotSupported: 505, + VariantAlsoNegotiates: 506, + InsufficientStorage: 507, + LoopDetected: 508, + NotExtended: 510, + NetworkAuthenticationRequired: 511 +}; +Object.entries(HttpStatusCode).forEach(([key, value]) => { + HttpStatusCode[value] = key; +}); +function createInstance(defaultConfig) { + const context = new Axios(defaultConfig); + const instance = bind(Axios.prototype.request, context); + utils$1.extend(instance, Axios.prototype, context, { allOwnKeys: true }); + utils$1.extend(instance, context, null, { allOwnKeys: true }); + instance.create = function create3(instanceConfig) { + return createInstance(mergeConfig(defaultConfig, instanceConfig)); + }; + return instance; +} +const axios = createInstance(defaults); +axios.Axios = Axios; +axios.CanceledError = CanceledError; +axios.CancelToken = CancelToken; +axios.isCancel = isCancel; +axios.VERSION = VERSION; +axios.toFormData = toFormData; +axios.AxiosError = AxiosError; +axios.Cancel = axios.CanceledError; +axios.all = function all2(promises) { + return Promise.all(promises); +}; +axios.spread = spread; +axios.isAxiosError = isAxiosError; +axios.mergeConfig = mergeConfig; +axios.AxiosHeaders = AxiosHeaders; +axios.formToJSON = (thing) => formDataToJSON(utils$1.isHTMLForm(thing) ? new FormData(thing) : thing); +axios.getAdapter = adapters.getAdapter; +axios.HttpStatusCode = HttpStatusCode; +axios.default = axios; +const RETRY_KEY = Symbol("csrf-retry"); +const onError$2 = (axios2) => async (error) => { + var _a2; + const { config, response, request } = error; + const responseURL = request == null ? void 0 : request.responseURL; + const status = response == null ? void 0 : response.status; + if (status === 412 && ((_a2 = response == null ? void 0 : response.data) == null ? void 0 : _a2.message) === "CSRF check failed" && config[RETRY_KEY] === void 0) { + console.warn("Request to ".concat(responseURL, " failed because of a CSRF mismatch. Fetching a new token")); + const { data: { token: token2 } } = await axios2.get(_$1("/csrftoken")); + console.debug("New request token ".concat(token2, " fetched")); + axios2.defaults.headers.requesttoken = token2; + return axios2({ + ...config, + headers: { + ...config.headers, + requesttoken: token2 + }, + [RETRY_KEY]: true + }); + } + return Promise.reject(error); +}; +const RETRY_DELAY_KEY = Symbol("retryDelay"); +const onError$1 = (axios2) => async (error) => { + var _a2; + const { config, response, request } = error; + const responseURL = request == null ? void 0 : request.responseURL; + const status = response == null ? void 0 : response.status; + const headers = response == null ? void 0 : response.headers; + if (status === 503 && headers["x-nextcloud-maintenance-mode"] === "1" && config.retryIfMaintenanceMode && (!config[RETRY_DELAY_KEY] || config[RETRY_DELAY_KEY] <= 32)) { + const retryDelay = ((_a2 = config[RETRY_DELAY_KEY]) != null ? _a2 : 1) * 2; + console.warn("Request to ".concat(responseURL, " failed because of maintenance mode. Retrying in ").concat(retryDelay, "s")); + await new Promise((resolve3) => { + setTimeout(resolve3, retryDelay * 1e3); + }); + return axios2({ + ...config, + [RETRY_DELAY_KEY]: retryDelay + }); + } + return Promise.reject(error); +}; +const onError = async (error) => { + var _a2; + const { config, response, request } = error; + const responseURL = request == null ? void 0 : request.responseURL; + const status = response == null ? void 0 : response.status; + if (status === 401 && ((_a2 = response == null ? void 0 : response.data) == null ? void 0 : _a2.message) === "Current user is not logged in" && config.reloadExpiredSession && (window == null ? void 0 : window.location)) { + console.error("Request to ".concat(responseURL, " failed because the user session expired. Reloading the page …")); + window.location.reload(); + } + return Promise.reject(error); +}; +var _a; +const client = axios.create({ + headers: { + requesttoken: (_a = getRequestToken()) != null ? _a : "", + "X-Requested-With": "XMLHttpRequest" + } +}); +const cancelableClient = Object.assign(client, { + CancelToken: axios.CancelToken, + isCancel: axios.isCancel +}); +cancelableClient.interceptors.response.use((r2) => r2, onError$2(cancelableClient)); +cancelableClient.interceptors.response.use((r2) => r2, onError$1(cancelableClient)); +cancelableClient.interceptors.response.use((r2) => r2, onError); +onRequestTokenUpdate((token2) => { + client.defaults.headers.requesttoken = token2; +}); +var dist = {}; +var fails$d = function(exec2) { + try { + return !!exec2(); + } catch (error) { + return true; + } +}; +var fails$c = fails$d; +var functionBindNative = !fails$c(function() { + var test2 = function() { + }.bind(); + return typeof test2 != "function" || test2.hasOwnProperty("prototype"); +}); +var NATIVE_BIND$2 = functionBindNative; +var FunctionPrototype$2 = Function.prototype; +var apply$1 = FunctionPrototype$2.apply; +var call$9 = FunctionPrototype$2.call; +var functionApply = typeof Reflect == "object" && Reflect.apply || (NATIVE_BIND$2 ? call$9.bind(apply$1) : function() { + return call$9.apply(apply$1, arguments); +}); +var NATIVE_BIND$1 = functionBindNative; +var call$8 = Function.prototype.call; +var functionCall = NATIVE_BIND$1 ? call$8.bind(call$8) : function() { + return call$8.apply(call$8, arguments); +}; +var NATIVE_BIND = functionBindNative; +var FunctionPrototype$1 = Function.prototype; +var call$7 = FunctionPrototype$1.call; +var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype$1.bind.bind(call$7, call$7); +var functionUncurryThis = NATIVE_BIND ? uncurryThisWithBind : function(fn) { + return function() { + return call$7.apply(fn, arguments); + }; +}; +var check = function(it2) { + return it2 && it2.Math === Math && it2; +}; +var global$d = ( + // eslint-disable-next-line es/no-global-this -- safe + check(typeof globalThis == "object" && globalThis) || check(typeof window == "object" && window) || // eslint-disable-next-line no-restricted-globals -- safe + check(typeof self == "object" && self) || check(typeof commonjsGlobal == "object" && commonjsGlobal) || check(typeof commonjsGlobal == "object" && commonjsGlobal) || // eslint-disable-next-line no-new-func -- fallback + /* @__PURE__ */ function() { + return this; + }() || Function("return this")() +); +var objectGetOwnPropertyDescriptor = {}; +var fails$b = fails$d; +var descriptors = !fails$b(function() { + return Object.defineProperty({}, 1, { get: function() { + return 7; + } })[1] !== 7; +}); +var objectPropertyIsEnumerable = {}; +var $propertyIsEnumerable = {}.propertyIsEnumerable; +var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor; +var NASHORN_BUG = getOwnPropertyDescriptor$1 && !$propertyIsEnumerable.call({ 1: 2 }, 1); +objectPropertyIsEnumerable.f = NASHORN_BUG ? function propertyIsEnumerable(V2) { + var descriptor = getOwnPropertyDescriptor$1(this, V2); + return !!descriptor && descriptor.enumerable; +} : $propertyIsEnumerable; +var createPropertyDescriptor$2 = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; +}; +var uncurryThis$c = functionUncurryThis; +var toString$5 = uncurryThis$c({}.toString); +var stringSlice$5 = uncurryThis$c("".slice); +var classofRaw$1 = function(it2) { + return stringSlice$5(toString$5(it2), 8, -1); +}; +var uncurryThis$b = functionUncurryThis; +var fails$a = fails$d; +var classof$3 = classofRaw$1; +var $Object$3 = Object; +var split = uncurryThis$b("".split); +var indexedObject = fails$a(function() { + return !$Object$3("z").propertyIsEnumerable(0); +}) ? function(it2) { + return classof$3(it2) === "String" ? split(it2, "") : $Object$3(it2); +} : $Object$3; +var isNullOrUndefined$3 = function(it2) { + return it2 === null || it2 === void 0; +}; +var isNullOrUndefined$2 = isNullOrUndefined$3; +var $TypeError$6 = TypeError; +var requireObjectCoercible$4 = function(it2) { + if (isNullOrUndefined$2(it2)) throw new $TypeError$6("Can't call method on " + it2); + return it2; +}; +var IndexedObject = indexedObject; +var requireObjectCoercible$3 = requireObjectCoercible$4; +var toIndexedObject$4 = function(it2) { + return IndexedObject(requireObjectCoercible$3(it2)); +}; +var documentAll = typeof document == "object" && document.all; +var isCallable$d = typeof documentAll == "undefined" && documentAll !== void 0 ? function(argument) { + return typeof argument == "function" || argument === documentAll; +} : function(argument) { + return typeof argument == "function"; +}; +var isCallable$c = isCallable$d; +var isObject$5 = function(it2) { + return typeof it2 == "object" ? it2 !== null : isCallable$c(it2); +}; +var global$c = global$d; +var isCallable$b = isCallable$d; +var aFunction = function(argument) { + return isCallable$b(argument) ? argument : void 0; +}; +var getBuiltIn$3 = function(namespace, method) { + return arguments.length < 2 ? aFunction(global$c[namespace]) : global$c[namespace] && global$c[namespace][method]; +}; +var uncurryThis$a = functionUncurryThis; +var objectIsPrototypeOf = uncurryThis$a({}.isPrototypeOf); +var engineUserAgent = typeof navigator != "undefined" && String(navigator.userAgent) || ""; +var global$b = global$d; +var userAgent = engineUserAgent; +var process = global$b.process; +var Deno = global$b.Deno; +var versions = process && process.versions || Deno && Deno.version; +var v8 = versions && versions.v8; +var match, version; +if (v8) { + match = v8.split("."); + version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]); +} +if (!version && userAgent) { + match = userAgent.match(/Edge\/(\d+)/); + if (!match || match[1] >= 74) { + match = userAgent.match(/Chrome\/(\d+)/); + if (match) version = +match[1]; + } +} +var engineV8Version = version; +var V8_VERSION = engineV8Version; +var fails$9 = fails$d; +var global$a = global$d; +var $String$4 = global$a.String; +var symbolConstructorDetection = !!Object.getOwnPropertySymbols && !fails$9(function() { + var symbol = Symbol("symbol detection"); + return !$String$4(symbol) || !(Object(symbol) instanceof Symbol) || // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances + !Symbol.sham && V8_VERSION && V8_VERSION < 41; +}); +var NATIVE_SYMBOL$1 = symbolConstructorDetection; +var useSymbolAsUid = NATIVE_SYMBOL$1 && !Symbol.sham && typeof Symbol.iterator == "symbol"; +var getBuiltIn$2 = getBuiltIn$3; +var isCallable$a = isCallable$d; +var isPrototypeOf = objectIsPrototypeOf; +var USE_SYMBOL_AS_UID$1 = useSymbolAsUid; +var $Object$2 = Object; +var isSymbol$2 = USE_SYMBOL_AS_UID$1 ? function(it2) { + return typeof it2 == "symbol"; +} : function(it2) { + var $Symbol = getBuiltIn$2("Symbol"); + return isCallable$a($Symbol) && isPrototypeOf($Symbol.prototype, $Object$2(it2)); +}; +var $String$3 = String; +var tryToString$1 = function(argument) { + try { + return $String$3(argument); + } catch (error) { + return "Object"; + } +}; +var isCallable$9 = isCallable$d; +var tryToString = tryToString$1; +var $TypeError$5 = TypeError; +var aCallable$1 = function(argument) { + if (isCallable$9(argument)) return argument; + throw new $TypeError$5(tryToString(argument) + " is not a function"); +}; +var aCallable = aCallable$1; +var isNullOrUndefined$1 = isNullOrUndefined$3; +var getMethod$2 = function(V2, P2) { + var func = V2[P2]; + return isNullOrUndefined$1(func) ? void 0 : aCallable(func); +}; +var call$6 = functionCall; +var isCallable$8 = isCallable$d; +var isObject$4 = isObject$5; +var $TypeError$4 = TypeError; +var ordinaryToPrimitive$1 = function(input, pref) { + var fn, val2; + if (pref === "string" && isCallable$8(fn = input.toString) && !isObject$4(val2 = call$6(fn, input))) return val2; + if (isCallable$8(fn = input.valueOf) && !isObject$4(val2 = call$6(fn, input))) return val2; + if (pref !== "string" && isCallable$8(fn = input.toString) && !isObject$4(val2 = call$6(fn, input))) return val2; + throw new $TypeError$4("Can't convert object to primitive value"); +}; +var sharedStore = { exports: {} }; +var global$9 = global$d; +var defineProperty$1 = Object.defineProperty; +var defineGlobalProperty$3 = function(key, value) { + try { + defineProperty$1(global$9, key, { value, configurable: true, writable: true }); + } catch (error) { + global$9[key] = value; + } + return value; +}; +var globalThis$1 = global$d; +var defineGlobalProperty$2 = defineGlobalProperty$3; +var SHARED = "__core-js_shared__"; +var store$3 = sharedStore.exports = globalThis$1[SHARED] || defineGlobalProperty$2(SHARED, {}); +(store$3.versions || (store$3.versions = [])).push({ + version: "3.37.0", + mode: "global", + copyright: "© 2014-2024 Denis Pushkarev (zloirock.ru)", + license: "https://github.com/zloirock/core-js/blob/v3.37.0/LICENSE", + source: "https://github.com/zloirock/core-js" +}); +var sharedStoreExports = sharedStore.exports; +var store$2 = sharedStoreExports; +var shared$4 = function(key, value) { + return store$2[key] || (store$2[key] = value || {}); +}; +var requireObjectCoercible$2 = requireObjectCoercible$4; +var $Object$1 = Object; +var toObject$2 = function(argument) { + return $Object$1(requireObjectCoercible$2(argument)); +}; +var uncurryThis$9 = functionUncurryThis; +var toObject$1 = toObject$2; +var hasOwnProperty = uncurryThis$9({}.hasOwnProperty); +var hasOwnProperty_1 = Object.hasOwn || function hasOwn(it2, key) { + return hasOwnProperty(toObject$1(it2), key); +}; +var uncurryThis$8 = functionUncurryThis; +var id = 0; +var postfix = Math.random(); +var toString$4 = uncurryThis$8(1 .toString); +var uid$2 = function(key) { + return "Symbol(" + (key === void 0 ? "" : key) + ")_" + toString$4(++id + postfix, 36); +}; +var global$8 = global$d; +var shared$3 = shared$4; +var hasOwn$6 = hasOwnProperty_1; +var uid$1 = uid$2; +var NATIVE_SYMBOL = symbolConstructorDetection; +var USE_SYMBOL_AS_UID = useSymbolAsUid; +var Symbol$1 = global$8.Symbol; +var WellKnownSymbolsStore = shared$3("wks"); +var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol$1["for"] || Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid$1; +var wellKnownSymbol$5 = function(name) { + if (!hasOwn$6(WellKnownSymbolsStore, name)) { + WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn$6(Symbol$1, name) ? Symbol$1[name] : createWellKnownSymbol("Symbol." + name); + } + return WellKnownSymbolsStore[name]; +}; +var call$5 = functionCall; +var isObject$3 = isObject$5; +var isSymbol$1 = isSymbol$2; +var getMethod$1 = getMethod$2; +var ordinaryToPrimitive = ordinaryToPrimitive$1; +var wellKnownSymbol$4 = wellKnownSymbol$5; +var $TypeError$3 = TypeError; +var TO_PRIMITIVE = wellKnownSymbol$4("toPrimitive"); +var toPrimitive$1 = function(input, pref) { + if (!isObject$3(input) || isSymbol$1(input)) return input; + var exoticToPrim = getMethod$1(input, TO_PRIMITIVE); + var result; + if (exoticToPrim) { + if (pref === void 0) pref = "default"; + result = call$5(exoticToPrim, input, pref); + if (!isObject$3(result) || isSymbol$1(result)) return result; + throw new $TypeError$3("Can't convert object to primitive value"); + } + if (pref === void 0) pref = "number"; + return ordinaryToPrimitive(input, pref); +}; +var toPrimitive = toPrimitive$1; +var isSymbol = isSymbol$2; +var toPropertyKey$2 = function(argument) { + var key = toPrimitive(argument, "string"); + return isSymbol(key) ? key : key + ""; +}; +var global$7 = global$d; +var isObject$2 = isObject$5; +var document$1 = global$7.document; +var EXISTS$1 = isObject$2(document$1) && isObject$2(document$1.createElement); +var documentCreateElement$1 = function(it2) { + return EXISTS$1 ? document$1.createElement(it2) : {}; +}; +var DESCRIPTORS$7 = descriptors; +var fails$8 = fails$d; +var createElement = documentCreateElement$1; +var ie8DomDefine = !DESCRIPTORS$7 && !fails$8(function() { + return Object.defineProperty(createElement("div"), "a", { + get: function() { + return 7; + } + }).a !== 7; +}); +var DESCRIPTORS$6 = descriptors; +var call$4 = functionCall; +var propertyIsEnumerableModule = objectPropertyIsEnumerable; +var createPropertyDescriptor$1 = createPropertyDescriptor$2; +var toIndexedObject$3 = toIndexedObject$4; +var toPropertyKey$1 = toPropertyKey$2; +var hasOwn$5 = hasOwnProperty_1; +var IE8_DOM_DEFINE$1 = ie8DomDefine; +var $getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor; +objectGetOwnPropertyDescriptor.f = DESCRIPTORS$6 ? $getOwnPropertyDescriptor$1 : function getOwnPropertyDescriptor(O2, P2) { + O2 = toIndexedObject$3(O2); + P2 = toPropertyKey$1(P2); + if (IE8_DOM_DEFINE$1) try { + return $getOwnPropertyDescriptor$1(O2, P2); + } catch (error) { + } + if (hasOwn$5(O2, P2)) return createPropertyDescriptor$1(!call$4(propertyIsEnumerableModule.f, O2, P2), O2[P2]); +}; +var objectDefineProperty = {}; +var DESCRIPTORS$5 = descriptors; +var fails$7 = fails$d; +var v8PrototypeDefineBug = DESCRIPTORS$5 && fails$7(function() { + return Object.defineProperty(function() { + }, "prototype", { + value: 42, + writable: false + }).prototype !== 42; +}); +var isObject$1 = isObject$5; +var $String$2 = String; +var $TypeError$2 = TypeError; +var anObject$7 = function(argument) { + if (isObject$1(argument)) return argument; + throw new $TypeError$2($String$2(argument) + " is not an object"); +}; +var DESCRIPTORS$4 = descriptors; +var IE8_DOM_DEFINE = ie8DomDefine; +var V8_PROTOTYPE_DEFINE_BUG$1 = v8PrototypeDefineBug; +var anObject$6 = anObject$7; +var toPropertyKey = toPropertyKey$2; +var $TypeError$1 = TypeError; +var $defineProperty = Object.defineProperty; +var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; +var ENUMERABLE = "enumerable"; +var CONFIGURABLE$1 = "configurable"; +var WRITABLE = "writable"; +objectDefineProperty.f = DESCRIPTORS$4 ? V8_PROTOTYPE_DEFINE_BUG$1 ? function defineProperty(O2, P2, Attributes) { + anObject$6(O2); + P2 = toPropertyKey(P2); + anObject$6(Attributes); + if (typeof O2 === "function" && P2 === "prototype" && "value" in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) { + var current = $getOwnPropertyDescriptor(O2, P2); + if (current && current[WRITABLE]) { + O2[P2] = Attributes.value; + Attributes = { + configurable: CONFIGURABLE$1 in Attributes ? Attributes[CONFIGURABLE$1] : current[CONFIGURABLE$1], + enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE], + writable: false + }; + } + } + return $defineProperty(O2, P2, Attributes); +} : $defineProperty : function defineProperty2(O2, P2, Attributes) { + anObject$6(O2); + P2 = toPropertyKey(P2); + anObject$6(Attributes); + if (IE8_DOM_DEFINE) try { + return $defineProperty(O2, P2, Attributes); + } catch (error) { + } + if ("get" in Attributes || "set" in Attributes) throw new $TypeError$1("Accessors not supported"); + if ("value" in Attributes) O2[P2] = Attributes.value; + return O2; +}; +var DESCRIPTORS$3 = descriptors; +var definePropertyModule$3 = objectDefineProperty; +var createPropertyDescriptor = createPropertyDescriptor$2; +var createNonEnumerableProperty$3 = DESCRIPTORS$3 ? function(object, key, value) { + return definePropertyModule$3.f(object, key, createPropertyDescriptor(1, value)); +} : function(object, key, value) { + object[key] = value; + return object; +}; +var makeBuiltIn$2 = { exports: {} }; +var DESCRIPTORS$2 = descriptors; +var hasOwn$4 = hasOwnProperty_1; +var FunctionPrototype = Function.prototype; +var getDescriptor = DESCRIPTORS$2 && Object.getOwnPropertyDescriptor; +var EXISTS = hasOwn$4(FunctionPrototype, "name"); +var PROPER = EXISTS && function something() { +}.name === "something"; +var CONFIGURABLE = EXISTS && (!DESCRIPTORS$2 || DESCRIPTORS$2 && getDescriptor(FunctionPrototype, "name").configurable); +var functionName = { + EXISTS, + PROPER, + CONFIGURABLE +}; +var uncurryThis$7 = functionUncurryThis; +var isCallable$7 = isCallable$d; +var store$1 = sharedStoreExports; +var functionToString = uncurryThis$7(Function.toString); +if (!isCallable$7(store$1.inspectSource)) { + store$1.inspectSource = function(it2) { + return functionToString(it2); + }; +} +var inspectSource$1 = store$1.inspectSource; +var global$6 = global$d; +var isCallable$6 = isCallable$d; +var WeakMap$2 = global$6.WeakMap; +var weakMapBasicDetection = isCallable$6(WeakMap$2) && /native code/.test(String(WeakMap$2)); +var shared$2 = shared$4; +var uid = uid$2; +var keys = shared$2("keys"); +var sharedKey$2 = function(key) { + return keys[key] || (keys[key] = uid(key)); +}; +var hiddenKeys$4 = {}; +var NATIVE_WEAK_MAP = weakMapBasicDetection; +var global$5 = global$d; +var isObject = isObject$5; +var createNonEnumerableProperty$2 = createNonEnumerableProperty$3; +var hasOwn$3 = hasOwnProperty_1; +var shared$1 = sharedStoreExports; +var sharedKey$1 = sharedKey$2; +var hiddenKeys$3 = hiddenKeys$4; +var OBJECT_ALREADY_INITIALIZED = "Object already initialized"; +var TypeError$1 = global$5.TypeError; +var WeakMap$1 = global$5.WeakMap; +var set, get, has; +var enforce = function(it2) { + return has(it2) ? get(it2) : set(it2, {}); +}; +var getterFor = function(TYPE) { + return function(it2) { + var state; + if (!isObject(it2) || (state = get(it2)).type !== TYPE) { + throw new TypeError$1("Incompatible receiver, " + TYPE + " required"); + } + return state; + }; +}; +if (NATIVE_WEAK_MAP || shared$1.state) { + var store = shared$1.state || (shared$1.state = new WeakMap$1()); + store.get = store.get; + store.has = store.has; + store.set = store.set; + set = function(it2, metadata) { + if (store.has(it2)) throw new TypeError$1(OBJECT_ALREADY_INITIALIZED); + metadata.facade = it2; + store.set(it2, metadata); + return metadata; + }; + get = function(it2) { + return store.get(it2) || {}; + }; + has = function(it2) { + return store.has(it2); + }; +} else { + var STATE = sharedKey$1("state"); + hiddenKeys$3[STATE] = true; + set = function(it2, metadata) { + if (hasOwn$3(it2, STATE)) throw new TypeError$1(OBJECT_ALREADY_INITIALIZED); + metadata.facade = it2; + createNonEnumerableProperty$2(it2, STATE, metadata); + return metadata; + }; + get = function(it2) { + return hasOwn$3(it2, STATE) ? it2[STATE] : {}; + }; + has = function(it2) { + return hasOwn$3(it2, STATE); + }; +} +var internalState = { + set, + get, + has, + enforce, + getterFor +}; +var uncurryThis$6 = functionUncurryThis; +var fails$6 = fails$d; +var isCallable$5 = isCallable$d; +var hasOwn$2 = hasOwnProperty_1; +var DESCRIPTORS$1 = descriptors; +var CONFIGURABLE_FUNCTION_NAME = functionName.CONFIGURABLE; +var inspectSource = inspectSource$1; +var InternalStateModule = internalState; +var enforceInternalState = InternalStateModule.enforce; +var getInternalState$1 = InternalStateModule.get; +var $String$1 = String; +var defineProperty3 = Object.defineProperty; +var stringSlice$4 = uncurryThis$6("".slice); +var replace$2 = uncurryThis$6("".replace); +var join2 = uncurryThis$6([].join); +var CONFIGURABLE_LENGTH = DESCRIPTORS$1 && !fails$6(function() { + return defineProperty3(function() { + }, "length", { value: 8 }).length !== 8; +}); +var TEMPLATE = String(String).split("String"); +var makeBuiltIn$1 = makeBuiltIn$2.exports = function(value, name, options) { + if (stringSlice$4($String$1(name), 0, 7) === "Symbol(") { + name = "[" + replace$2($String$1(name), /^Symbol\(([^)]*)\).*$/, "$1") + "]"; + } + if (options && options.getter) name = "get " + name; + if (options && options.setter) name = "set " + name; + if (!hasOwn$2(value, "name") || CONFIGURABLE_FUNCTION_NAME && value.name !== name) { + if (DESCRIPTORS$1) defineProperty3(value, "name", { value: name, configurable: true }); + else value.name = name; + } + if (CONFIGURABLE_LENGTH && options && hasOwn$2(options, "arity") && value.length !== options.arity) { + defineProperty3(value, "length", { value: options.arity }); + } + try { + if (options && hasOwn$2(options, "constructor") && options.constructor) { + if (DESCRIPTORS$1) defineProperty3(value, "prototype", { writable: false }); + } else if (value.prototype) value.prototype = void 0; + } catch (error) { + } + var state = enforceInternalState(value); + if (!hasOwn$2(state, "source")) { + state.source = join2(TEMPLATE, typeof name == "string" ? name : ""); + } + return value; +}; +Function.prototype.toString = makeBuiltIn$1(function toString2() { + return isCallable$5(this) && getInternalState$1(this).source || inspectSource(this); +}, "toString"); +var makeBuiltInExports = makeBuiltIn$2.exports; +var isCallable$4 = isCallable$d; +var definePropertyModule$2 = objectDefineProperty; +var makeBuiltIn = makeBuiltInExports; +var defineGlobalProperty$1 = defineGlobalProperty$3; +var defineBuiltIn$2 = function(O2, key, value, options) { + if (!options) options = {}; + var simple = options.enumerable; + var name = options.name !== void 0 ? options.name : key; + if (isCallable$4(value)) makeBuiltIn(value, name, options); + if (options.global) { + if (simple) O2[key] = value; + else defineGlobalProperty$1(key, value); + } else { + try { + if (!options.unsafe) delete O2[key]; + else if (O2[key]) simple = true; + } catch (error) { + } + if (simple) O2[key] = value; + else definePropertyModule$2.f(O2, key, { + value, + enumerable: false, + configurable: !options.nonConfigurable, + writable: !options.nonWritable + }); + } + return O2; +}; +var objectGetOwnPropertyNames = {}; +var ceil = Math.ceil; +var floor$1 = Math.floor; +var mathTrunc = Math.trunc || function trunc(x2) { + var n2 = +x2; + return (n2 > 0 ? floor$1 : ceil)(n2); +}; +var trunc2 = mathTrunc; +var toIntegerOrInfinity$4 = function(argument) { + var number = +argument; + return number !== number || number === 0 ? 0 : trunc2(number); +}; +var toIntegerOrInfinity$3 = toIntegerOrInfinity$4; +var max$1 = Math.max; +var min$2 = Math.min; +var toAbsoluteIndex$1 = function(index, length) { + var integer = toIntegerOrInfinity$3(index); + return integer < 0 ? max$1(integer + length, 0) : min$2(integer, length); +}; +var toIntegerOrInfinity$2 = toIntegerOrInfinity$4; +var min$1 = Math.min; +var toLength$2 = function(argument) { + var len = toIntegerOrInfinity$2(argument); + return len > 0 ? min$1(len, 9007199254740991) : 0; +}; +var toLength$1 = toLength$2; +var lengthOfArrayLike$1 = function(obj) { + return toLength$1(obj.length); +}; +var toIndexedObject$2 = toIndexedObject$4; +var toAbsoluteIndex = toAbsoluteIndex$1; +var lengthOfArrayLike = lengthOfArrayLike$1; +var createMethod$1 = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O2 = toIndexedObject$2($this); + var length = lengthOfArrayLike(O2); + if (length === 0) return !IS_INCLUDES && -1; + var index = toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el !== el) while (length > index) { + value = O2[index++]; + if (value !== value) return true; + } + else for (; length > index; index++) { + if ((IS_INCLUDES || index in O2) && O2[index] === el) return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; +}; +var arrayIncludes = { + // `Array.prototype.includes` method + // https://tc39.es/ecma262/#sec-array.prototype.includes + includes: createMethod$1(true), + // `Array.prototype.indexOf` method + // https://tc39.es/ecma262/#sec-array.prototype.indexof + indexOf: createMethod$1(false) +}; +var uncurryThis$5 = functionUncurryThis; +var hasOwn$1 = hasOwnProperty_1; +var toIndexedObject$1 = toIndexedObject$4; +var indexOf$1 = arrayIncludes.indexOf; +var hiddenKeys$2 = hiddenKeys$4; +var push$1 = uncurryThis$5([].push); +var objectKeysInternal = function(object, names) { + var O2 = toIndexedObject$1(object); + var i = 0; + var result = []; + var key; + for (key in O2) !hasOwn$1(hiddenKeys$2, key) && hasOwn$1(O2, key) && push$1(result, key); + while (names.length > i) if (hasOwn$1(O2, key = names[i++])) { + ~indexOf$1(result, key) || push$1(result, key); + } + return result; +}; +var enumBugKeys$3 = [ + "constructor", + "hasOwnProperty", + "isPrototypeOf", + "propertyIsEnumerable", + "toLocaleString", + "toString", + "valueOf" +]; +var internalObjectKeys$1 = objectKeysInternal; +var enumBugKeys$2 = enumBugKeys$3; +var hiddenKeys$1 = enumBugKeys$2.concat("length", "prototype"); +objectGetOwnPropertyNames.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O2) { + return internalObjectKeys$1(O2, hiddenKeys$1); +}; +var objectGetOwnPropertySymbols = {}; +objectGetOwnPropertySymbols.f = Object.getOwnPropertySymbols; +var getBuiltIn$1 = getBuiltIn$3; +var uncurryThis$4 = functionUncurryThis; +var getOwnPropertyNamesModule = objectGetOwnPropertyNames; +var getOwnPropertySymbolsModule = objectGetOwnPropertySymbols; +var anObject$5 = anObject$7; +var concat$1 = uncurryThis$4([].concat); +var ownKeys$1 = getBuiltIn$1("Reflect", "ownKeys") || function ownKeys(it2) { + var keys3 = getOwnPropertyNamesModule.f(anObject$5(it2)); + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + return getOwnPropertySymbols ? concat$1(keys3, getOwnPropertySymbols(it2)) : keys3; +}; +var hasOwn2 = hasOwnProperty_1; +var ownKeys2 = ownKeys$1; +var getOwnPropertyDescriptorModule = objectGetOwnPropertyDescriptor; +var definePropertyModule$1 = objectDefineProperty; +var copyConstructorProperties$1 = function(target, source, exceptions) { + var keys3 = ownKeys2(source); + var defineProperty4 = definePropertyModule$1.f; + var getOwnPropertyDescriptor3 = getOwnPropertyDescriptorModule.f; + for (var i = 0; i < keys3.length; i++) { + var key = keys3[i]; + if (!hasOwn2(target, key) && !(exceptions && hasOwn2(exceptions, key))) { + defineProperty4(target, key, getOwnPropertyDescriptor3(source, key)); + } + } +}; +var fails$5 = fails$d; +var isCallable$3 = isCallable$d; +var replacement = /#|\.prototype\./; +var isForced$1 = function(feature, detection) { + var value = data[normalize2(feature)]; + return value === POLYFILL ? true : value === NATIVE ? false : isCallable$3(detection) ? fails$5(detection) : !!detection; +}; +var normalize2 = isForced$1.normalize = function(string) { + return String(string).replace(replacement, ".").toLowerCase(); +}; +var data = isForced$1.data = {}; +var NATIVE = isForced$1.NATIVE = "N"; +var POLYFILL = isForced$1.POLYFILL = "P"; +var isForced_1 = isForced$1; +var global$4 = global$d; +var getOwnPropertyDescriptor2 = objectGetOwnPropertyDescriptor.f; +var createNonEnumerableProperty$1 = createNonEnumerableProperty$3; +var defineBuiltIn$1 = defineBuiltIn$2; +var defineGlobalProperty = defineGlobalProperty$3; +var copyConstructorProperties = copyConstructorProperties$1; +var isForced = isForced_1; +var _export = function(options, source) { + var TARGET = options.target; + var GLOBAL = options.global; + var STATIC = options.stat; + var FORCED, target, key, targetProperty, sourceProperty, descriptor; + if (GLOBAL) { + target = global$4; + } else if (STATIC) { + target = global$4[TARGET] || defineGlobalProperty(TARGET, {}); + } else { + target = global$4[TARGET] && global$4[TARGET].prototype; + } + if (target) for (key in source) { + sourceProperty = source[key]; + if (options.dontCallGetSet) { + descriptor = getOwnPropertyDescriptor2(target, key); + targetProperty = descriptor && descriptor.value; + } else targetProperty = target[key]; + FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? "." : "#") + key, options.forced); + if (!FORCED && targetProperty !== void 0) { + if (typeof sourceProperty == typeof targetProperty) continue; + copyConstructorProperties(sourceProperty, targetProperty); + } + if (options.sham || targetProperty && targetProperty.sham) { + createNonEnumerableProperty$1(sourceProperty, "sham", true); + } + defineBuiltIn$1(target, key, sourceProperty, options); + } +}; +var wellKnownSymbol$3 = wellKnownSymbol$5; +var TO_STRING_TAG$1 = wellKnownSymbol$3("toStringTag"); +var test = {}; +test[TO_STRING_TAG$1] = "z"; +var toStringTagSupport = String(test) === "[object z]"; +var TO_STRING_TAG_SUPPORT = toStringTagSupport; +var isCallable$2 = isCallable$d; +var classofRaw = classofRaw$1; +var wellKnownSymbol$2 = wellKnownSymbol$5; +var TO_STRING_TAG = wellKnownSymbol$2("toStringTag"); +var $Object = Object; +var CORRECT_ARGUMENTS = classofRaw(/* @__PURE__ */ function() { + return arguments; +}()) === "Arguments"; +var tryGet = function(it2, key) { + try { + return it2[key]; + } catch (error) { + } +}; +var classof$2 = TO_STRING_TAG_SUPPORT ? classofRaw : function(it2) { + var O2, tag, result; + return it2 === void 0 ? "Undefined" : it2 === null ? "Null" : typeof (tag = tryGet(O2 = $Object(it2), TO_STRING_TAG)) == "string" ? tag : CORRECT_ARGUMENTS ? classofRaw(O2) : (result = classofRaw(O2)) === "Object" && isCallable$2(O2.callee) ? "Arguments" : result; +}; +var classof$1 = classof$2; +var $String = String; +var toString$3 = function(argument) { + if (classof$1(argument) === "Symbol") throw new TypeError("Cannot convert a Symbol value to a string"); + return $String(argument); +}; +var anObject$4 = anObject$7; +var regexpFlags$1 = function() { + var that = anObject$4(this); + var result = ""; + if (that.hasIndices) result += "d"; + if (that.global) result += "g"; + if (that.ignoreCase) result += "i"; + if (that.multiline) result += "m"; + if (that.dotAll) result += "s"; + if (that.unicode) result += "u"; + if (that.unicodeSets) result += "v"; + if (that.sticky) result += "y"; + return result; +}; +var fails$4 = fails$d; +var global$3 = global$d; +var $RegExp$2 = global$3.RegExp; +var UNSUPPORTED_Y$1 = fails$4(function() { + var re2 = $RegExp$2("a", "y"); + re2.lastIndex = 2; + return re2.exec("abcd") !== null; +}); +var MISSED_STICKY = UNSUPPORTED_Y$1 || fails$4(function() { + return !$RegExp$2("a", "y").sticky; +}); +var BROKEN_CARET = UNSUPPORTED_Y$1 || fails$4(function() { + var re2 = $RegExp$2("^r", "gy"); + re2.lastIndex = 2; + return re2.exec("str") !== null; +}); +var regexpStickyHelpers = { + BROKEN_CARET, + MISSED_STICKY, + UNSUPPORTED_Y: UNSUPPORTED_Y$1 +}; +var objectDefineProperties = {}; +var internalObjectKeys = objectKeysInternal; +var enumBugKeys$1 = enumBugKeys$3; +var objectKeys$1 = Object.keys || function keys2(O2) { + return internalObjectKeys(O2, enumBugKeys$1); +}; +var DESCRIPTORS = descriptors; +var V8_PROTOTYPE_DEFINE_BUG = v8PrototypeDefineBug; +var definePropertyModule = objectDefineProperty; +var anObject$3 = anObject$7; +var toIndexedObject = toIndexedObject$4; +var objectKeys = objectKeys$1; +objectDefineProperties.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O2, Properties) { + anObject$3(O2); + var props = toIndexedObject(Properties); + var keys3 = objectKeys(Properties); + var length = keys3.length; + var index = 0; + var key; + while (length > index) definePropertyModule.f(O2, key = keys3[index++], props[key]); + return O2; +}; +var getBuiltIn = getBuiltIn$3; +var html$1 = getBuiltIn("document", "documentElement"); +var anObject$2 = anObject$7; +var definePropertiesModule = objectDefineProperties; +var enumBugKeys = enumBugKeys$3; +var hiddenKeys = hiddenKeys$4; +var html = html$1; +var documentCreateElement = documentCreateElement$1; +var sharedKey = sharedKey$2; +var GT = ">"; +var LT = "<"; +var PROTOTYPE = "prototype"; +var SCRIPT = "script"; +var IE_PROTO = sharedKey("IE_PROTO"); +var EmptyConstructor = function() { +}; +var scriptTag = function(content) { + return LT + SCRIPT + GT + content + LT + "/" + SCRIPT + GT; +}; +var NullProtoObjectViaActiveX = function(activeXDocument2) { + activeXDocument2.write(scriptTag("")); + activeXDocument2.close(); + var temp = activeXDocument2.parentWindow.Object; + activeXDocument2 = null; + return temp; +}; +var NullProtoObjectViaIFrame = function() { + var iframe = documentCreateElement("iframe"); + var JS = "java" + SCRIPT + ":"; + var iframeDocument; + iframe.style.display = "none"; + html.appendChild(iframe); + iframe.src = String(JS); + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(scriptTag("document.F=Object")); + iframeDocument.close(); + return iframeDocument.F; +}; +var activeXDocument; +var NullProtoObject = function() { + try { + activeXDocument = new ActiveXObject("htmlfile"); + } catch (error) { + } + NullProtoObject = typeof document != "undefined" ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument); + var length = enumBugKeys.length; + while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]]; + return NullProtoObject(); +}; +hiddenKeys[IE_PROTO] = true; +var objectCreate = Object.create || function create(O2, Properties) { + var result; + if (O2 !== null) { + EmptyConstructor[PROTOTYPE] = anObject$2(O2); + result = new EmptyConstructor(); + EmptyConstructor[PROTOTYPE] = null; + result[IE_PROTO] = O2; + } else result = NullProtoObject(); + return Properties === void 0 ? result : definePropertiesModule.f(result, Properties); +}; +var fails$3 = fails$d; +var global$2 = global$d; +var $RegExp$1 = global$2.RegExp; +var regexpUnsupportedDotAll = fails$3(function() { + var re2 = $RegExp$1(".", "s"); + return !(re2.dotAll && re2.test("\n") && re2.flags === "s"); +}); +var fails$2 = fails$d; +var global$1 = global$d; +var $RegExp = global$1.RegExp; +var regexpUnsupportedNcg = fails$2(function() { + var re2 = $RegExp("(?b)", "g"); + return re2.exec("b").groups.a !== "b" || "b".replace(re2, "$c") !== "bc"; +}); +var call$3 = functionCall; +var uncurryThis$3 = functionUncurryThis; +var toString$2 = toString$3; +var regexpFlags = regexpFlags$1; +var stickyHelpers = regexpStickyHelpers; +var shared = shared$4; +var create2 = objectCreate; +var getInternalState = internalState.get; +var UNSUPPORTED_DOT_ALL = regexpUnsupportedDotAll; +var UNSUPPORTED_NCG = regexpUnsupportedNcg; +var nativeReplace = shared("native-string-replace", String.prototype.replace); +var nativeExec = RegExp.prototype.exec; +var patchedExec = nativeExec; +var charAt$3 = uncurryThis$3("".charAt); +var indexOf = uncurryThis$3("".indexOf); +var replace$1 = uncurryThis$3("".replace); +var stringSlice$3 = uncurryThis$3("".slice); +var UPDATES_LAST_INDEX_WRONG = function() { + var re1 = /a/; + var re2 = /b*/g; + call$3(nativeExec, re1, "a"); + call$3(nativeExec, re2, "a"); + return re1.lastIndex !== 0 || re2.lastIndex !== 0; +}(); +var UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET; +var NPCG_INCLUDED = /()??/.exec("")[1] !== void 0; +var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG; +if (PATCH) { + patchedExec = function exec2(string) { + var re2 = this; + var state = getInternalState(re2); + var str = toString$2(string); + var raw = state.raw; + var result, reCopy, lastIndex, match2, i, object, group; + if (raw) { + raw.lastIndex = re2.lastIndex; + result = call$3(patchedExec, raw, str); + re2.lastIndex = raw.lastIndex; + return result; + } + var groups = state.groups; + var sticky = UNSUPPORTED_Y && re2.sticky; + var flags = call$3(regexpFlags, re2); + var source = re2.source; + var charsAdded = 0; + var strCopy = str; + if (sticky) { + flags = replace$1(flags, "y", ""); + if (indexOf(flags, "g") === -1) { + flags += "g"; + } + strCopy = stringSlice$3(str, re2.lastIndex); + if (re2.lastIndex > 0 && (!re2.multiline || re2.multiline && charAt$3(str, re2.lastIndex - 1) !== "\n")) { + source = "(?: " + source + ")"; + strCopy = " " + strCopy; + charsAdded++; + } + reCopy = new RegExp("^(?:" + source + ")", flags); + } + if (NPCG_INCLUDED) { + reCopy = new RegExp("^" + source + "$(?!\\s)", flags); + } + if (UPDATES_LAST_INDEX_WRONG) lastIndex = re2.lastIndex; + match2 = call$3(nativeExec, sticky ? reCopy : re2, strCopy); + if (sticky) { + if (match2) { + match2.input = stringSlice$3(match2.input, charsAdded); + match2[0] = stringSlice$3(match2[0], charsAdded); + match2.index = re2.lastIndex; + re2.lastIndex += match2[0].length; + } else re2.lastIndex = 0; + } else if (UPDATES_LAST_INDEX_WRONG && match2) { + re2.lastIndex = re2.global ? match2.index + match2[0].length : lastIndex; + } + if (NPCG_INCLUDED && match2 && match2.length > 1) { + call$3(nativeReplace, match2[0], reCopy, function() { + for (i = 1; i < arguments.length - 2; i++) { + if (arguments[i] === void 0) match2[i] = void 0; + } + }); + } + if (match2 && groups) { + match2.groups = object = create2(null); + for (i = 0; i < groups.length; i++) { + group = groups[i]; + object[group[0]] = match2[group[1]]; + } + } + return match2; + }; +} +var regexpExec$2 = patchedExec; +var $ = _export; +var exec = regexpExec$2; +$({ target: "RegExp", proto: true, forced: /./.exec !== exec }, { + exec +}); +var call$2 = functionCall; +var defineBuiltIn = defineBuiltIn$2; +var regexpExec$1 = regexpExec$2; +var fails$1 = fails$d; +var wellKnownSymbol$1 = wellKnownSymbol$5; +var createNonEnumerableProperty = createNonEnumerableProperty$3; +var SPECIES = wellKnownSymbol$1("species"); +var RegExpPrototype = RegExp.prototype; +var fixRegexpWellKnownSymbolLogic = function(KEY, exec2, FORCED, SHAM) { + var SYMBOL = wellKnownSymbol$1(KEY); + var DELEGATES_TO_SYMBOL = !fails$1(function() { + var O2 = {}; + O2[SYMBOL] = function() { + return 7; + }; + return ""[KEY](O2) !== 7; + }); + var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails$1(function() { + var execCalled = false; + var re2 = /a/; + if (KEY === "split") { + re2 = {}; + re2.constructor = {}; + re2.constructor[SPECIES] = function() { + return re2; + }; + re2.flags = ""; + re2[SYMBOL] = /./[SYMBOL]; + } + re2.exec = function() { + execCalled = true; + return null; + }; + re2[SYMBOL](""); + return !execCalled; + }); + if (!DELEGATES_TO_SYMBOL || !DELEGATES_TO_EXEC || FORCED) { + var nativeRegExpMethod = /./[SYMBOL]; + var methods = exec2(SYMBOL, ""[KEY], function(nativeMethod, regexp, str, arg2, forceStringMethod) { + var $exec = regexp.exec; + if ($exec === regexpExec$1 || $exec === RegExpPrototype.exec) { + if (DELEGATES_TO_SYMBOL && !forceStringMethod) { + return { done: true, value: call$2(nativeRegExpMethod, regexp, str, arg2) }; + } + return { done: true, value: call$2(nativeMethod, str, regexp, arg2) }; + } + return { done: false }; + }); + defineBuiltIn(String.prototype, KEY, methods[0]); + defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]); + } + if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], "sham", true); +}; +var uncurryThis$2 = functionUncurryThis; +var toIntegerOrInfinity$1 = toIntegerOrInfinity$4; +var toString$1 = toString$3; +var requireObjectCoercible$1 = requireObjectCoercible$4; +var charAt$2 = uncurryThis$2("".charAt); +var charCodeAt = uncurryThis$2("".charCodeAt); +var stringSlice$2 = uncurryThis$2("".slice); +var createMethod = function(CONVERT_TO_STRING) { + return function($this, pos) { + var S2 = toString$1(requireObjectCoercible$1($this)); + var position = toIntegerOrInfinity$1(pos); + var size = S2.length; + var first, second; + if (position < 0 || position >= size) return CONVERT_TO_STRING ? "" : void 0; + first = charCodeAt(S2, position); + return first < 55296 || first > 56319 || position + 1 === size || (second = charCodeAt(S2, position + 1)) < 56320 || second > 57343 ? CONVERT_TO_STRING ? charAt$2(S2, position) : first : CONVERT_TO_STRING ? stringSlice$2(S2, position, position + 2) : (first - 55296 << 10) + (second - 56320) + 65536; + }; +}; +var stringMultibyte = { + // `String.prototype.codePointAt` method + // https://tc39.es/ecma262/#sec-string.prototype.codepointat + codeAt: createMethod(false), + // `String.prototype.at` method + // https://github.com/mathiasbynens/String.prototype.at + charAt: createMethod(true) +}; +var charAt$1 = stringMultibyte.charAt; +var advanceStringIndex$1 = function(S2, index, unicode) { + return index + (unicode ? charAt$1(S2, index).length : 1); +}; +var uncurryThis$1 = functionUncurryThis; +var toObject = toObject$2; +var floor = Math.floor; +var charAt = uncurryThis$1("".charAt); +var replace = uncurryThis$1("".replace); +var stringSlice$1 = uncurryThis$1("".slice); +var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g; +var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g; +var getSubstitution$1 = function(matched, str, position, captures, namedCaptures, replacement2) { + var tailPos = position + matched.length; + var m2 = captures.length; + var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; + if (namedCaptures !== void 0) { + namedCaptures = toObject(namedCaptures); + symbols = SUBSTITUTION_SYMBOLS; + } + return replace(replacement2, symbols, function(match2, ch) { + var capture; + switch (charAt(ch, 0)) { + case "$": + return "$"; + case "&": + return matched; + case "`": + return stringSlice$1(str, 0, position); + case "'": + return stringSlice$1(str, tailPos); + case "<": + capture = namedCaptures[stringSlice$1(ch, 1, -1)]; + break; + default: + var n2 = +ch; + if (n2 === 0) return match2; + if (n2 > m2) { + var f2 = floor(n2 / 10); + if (f2 === 0) return match2; + if (f2 <= m2) return captures[f2 - 1] === void 0 ? charAt(ch, 1) : captures[f2 - 1] + charAt(ch, 1); + return match2; + } + capture = captures[n2 - 1]; + } + return capture === void 0 ? "" : capture; + }); +}; +var call$1 = functionCall; +var anObject$1 = anObject$7; +var isCallable$1 = isCallable$d; +var classof = classofRaw$1; +var regexpExec = regexpExec$2; +var $TypeError = TypeError; +var regexpExecAbstract = function(R2, S2) { + var exec2 = R2.exec; + if (isCallable$1(exec2)) { + var result = call$1(exec2, R2, S2); + if (result !== null) anObject$1(result); + return result; + } + if (classof(R2) === "RegExp") return call$1(regexpExec, R2, S2); + throw new $TypeError("RegExp#exec called on incompatible receiver"); +}; +var apply = functionApply; +var call = functionCall; +var uncurryThis = functionUncurryThis; +var fixRegExpWellKnownSymbolLogic = fixRegexpWellKnownSymbolLogic; +var fails = fails$d; +var anObject = anObject$7; +var isCallable = isCallable$d; +var isNullOrUndefined = isNullOrUndefined$3; +var toIntegerOrInfinity = toIntegerOrInfinity$4; +var toLength = toLength$2; +var toString3 = toString$3; +var requireObjectCoercible = requireObjectCoercible$4; +var advanceStringIndex = advanceStringIndex$1; +var getMethod = getMethod$2; +var getSubstitution = getSubstitution$1; +var regExpExec = regexpExecAbstract; +var wellKnownSymbol = wellKnownSymbol$5; +var REPLACE = wellKnownSymbol("replace"); +var max = Math.max; +var min = Math.min; +var concat = uncurryThis([].concat); +var push = uncurryThis([].push); +var stringIndexOf = uncurryThis("".indexOf); +var stringSlice = uncurryThis("".slice); +var maybeToString = function(it2) { + return it2 === void 0 ? it2 : String(it2); +}; +var REPLACE_KEEPS_$0 = function() { + return "a".replace(/./, "$0") === "$0"; +}(); +var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = function() { + if (/./[REPLACE]) { + return /./[REPLACE]("a", "$0") === ""; + } + return false; +}(); +var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function() { + var re2 = /./; + re2.exec = function() { + var result = []; + result.groups = { a: "7" }; + return result; + }; + return "".replace(re2, "$") !== "7"; +}); +fixRegExpWellKnownSymbolLogic("replace", function(_2, nativeReplace2, maybeCallNative) { + var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? "$" : "$0"; + return [ + // `String.prototype.replace` method + // https://tc39.es/ecma262/#sec-string.prototype.replace + function replace2(searchValue, replaceValue) { + var O2 = requireObjectCoercible(this); + var replacer = isNullOrUndefined(searchValue) ? void 0 : getMethod(searchValue, REPLACE); + return replacer ? call(replacer, searchValue, O2, replaceValue) : call(nativeReplace2, toString3(O2), searchValue, replaceValue); + }, + // `RegExp.prototype[@@replace]` method + // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace + function(string, replaceValue) { + var rx = anObject(this); + var S2 = toString3(string); + if (typeof replaceValue == "string" && stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 && stringIndexOf(replaceValue, "$<") === -1) { + var res = maybeCallNative(nativeReplace2, rx, S2, replaceValue); + if (res.done) return res.value; + } + var functionalReplace = isCallable(replaceValue); + if (!functionalReplace) replaceValue = toString3(replaceValue); + var global2 = rx.global; + var fullUnicode; + if (global2) { + fullUnicode = rx.unicode; + rx.lastIndex = 0; + } + var results = []; + var result; + while (true) { + result = regExpExec(rx, S2); + if (result === null) break; + push(results, result); + if (!global2) break; + var matchStr = toString3(result[0]); + if (matchStr === "") rx.lastIndex = advanceStringIndex(S2, toLength(rx.lastIndex), fullUnicode); + } + var accumulatedResult = ""; + var nextSourcePosition = 0; + for (var i = 0; i < results.length; i++) { + result = results[i]; + var matched = toString3(result[0]); + var position = max(min(toIntegerOrInfinity(result.index), S2.length), 0); + var captures = []; + var replacement2; + for (var j2 = 1; j2 < result.length; j2++) push(captures, maybeToString(result[j2])); + var namedCaptures = result.groups; + if (functionalReplace) { + var replacerArgs = concat([matched], captures, position, S2); + if (namedCaptures !== void 0) push(replacerArgs, namedCaptures); + replacement2 = toString3(apply(replaceValue, void 0, replacerArgs)); + } else { + replacement2 = getSubstitution(matched, S2, position, captures, namedCaptures, replaceValue); + } + if (position >= nextSourcePosition) { + accumulatedResult += stringSlice(S2, nextSourcePosition, position) + replacement2; + nextSourcePosition = position + matched.length; + } + } + return accumulatedResult + stringSlice(S2, nextSourcePosition); + } + ]; +}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE); +Object.defineProperty(dist, "__esModule", { + value: true +}); +dist.generateUrl = dist.generateRemoteUrl = dist.generateOcsUrl = dist.generateFilePath = void 0; +dist.getAppRootUrl = getAppRootUrl; +dist.getRootUrl = getRootUrl; +dist.linkTo = dist.imagePath = void 0; +const linkTo = (app, file) => generateFilePath(app, "", file); +dist.linkTo = linkTo; +const linkToRemoteBase = (service) => getRootUrl() + "/remote.php/" + service; +const generateRemoteUrl = (service) => window.location.protocol + "//" + window.location.host + linkToRemoteBase(service); +dist.generateRemoteUrl = generateRemoteUrl; +const generateOcsUrl = (url, params, options) => { + const allOptions = Object.assign({ + ocsVersion: 2 + }, options || {}); + const version2 = allOptions.ocsVersion === 1 ? 1 : 2; + return window.location.protocol + "//" + window.location.host + getRootUrl() + "/ocs/v" + version2 + ".php" + _generateUrlPath(url, params, options); +}; +dist.generateOcsUrl = generateOcsUrl; +const _generateUrlPath = (url, params, options) => { + const allOptions = Object.assign({ + escape: true + }, options || {}); + const _build = function(text2, vars) { + vars = vars || {}; + return text2.replace(/{([^{}]*)}/g, function(a2, b2) { + var r2 = vars[b2]; + if (allOptions.escape) { + return typeof r2 === "string" || typeof r2 === "number" ? encodeURIComponent(r2.toString()) : encodeURIComponent(a2); + } else { + return typeof r2 === "string" || typeof r2 === "number" ? r2.toString() : a2; + } + }); + }; + if (url.charAt(0) !== "/") { + url = "/" + url; + } + return _build(url, params || {}); +}; +const generateUrl = (url, params, options) => { + var _window; + const allOptions = Object.assign({ + noRewrite: false + }, options || {}); + if (((_window = window) === null || _window === void 0 || (_window = _window.OC) === null || _window === void 0 || (_window = _window.config) === null || _window === void 0 ? void 0 : _window.modRewriteWorking) === true && !allOptions.noRewrite) { + return getRootUrl() + _generateUrlPath(url, params, options); + } + return getRootUrl() + "/index.php" + _generateUrlPath(url, params, options); +}; +dist.generateUrl = generateUrl; +const imagePath = (app, file) => { + if (file.indexOf(".") === -1) { + return generateFilePath(app, "img", file + ".svg"); + } + return generateFilePath(app, "img", file); +}; +dist.imagePath = imagePath; +const generateFilePath = (app, type, file) => { + var _window2; + const isCore = ((_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.OC) === null || _window2 === void 0 || (_window2 = _window2.coreApps) === null || _window2 === void 0 ? void 0 : _window2.indexOf(app)) !== -1; + let link = getRootUrl(); + if (file.substring(file.length - 3) === "php" && !isCore) { + link += "/index.php/apps/" + app; + if (file !== "index.php") { + link += "/"; + if (type) { + link += encodeURI(type + "/"); + } + link += file; + } + } else if (file.substring(file.length - 3) !== "php" && !isCore) { + link = getAppRootUrl(app); + if (type) { + link += "/" + type + "/"; + } + if (link.substring(link.length - 1) !== "/") { + link += "/"; + } + link += file; + } else { + if ((app === "settings" || app === "core" || app === "search") && type === "ajax") { + link += "/index.php/"; + } else { + link += "/"; + } + if (!isCore) { + link += "apps/"; + } + if (app !== "") { + app += "/"; + link += app; + } + if (type) { + link += type + "/"; + } + link += file; + } + return link; +}; +dist.generateFilePath = generateFilePath; +function getRootUrl() { + let webroot = window._oc_webroot; + if (typeof webroot === "undefined") { + webroot = location.pathname; + const pos = webroot.indexOf("/index.php/"); + if (pos !== -1) { + webroot = webroot.substr(0, pos); + } else { + webroot = webroot.substr(0, webroot.lastIndexOf("/")); + } + } + return webroot; +} +function getAppRootUrl(app) { + var _window$_oc_appswebro, _webroots$app; + const webroots = (_window$_oc_appswebro = window._oc_appswebroots) !== null && _window$_oc_appswebro !== void 0 ? _window$_oc_appswebro : {}; + return (_webroots$app = webroots[app]) !== null && _webroots$app !== void 0 ? _webroots$app : ""; +} +function getAppTranslations(appId) { + var _a2, _b, _c, _d; + return { + translations: (_b = (_a2 = window._oc_l10n_registry_translations) === null || _a2 === void 0 ? void 0 : _a2[appId]) !== null && _b !== void 0 ? _b : {}, + pluralFunction: (_d = (_c = window._oc_l10n_registry_plural_functions) === null || _c === void 0 ? void 0 : _c[appId]) !== null && _d !== void 0 ? _d : (number) => number + }; +} +function translate(app, text2, vars, number, options) { + const defaultOptions = { + escape: true, + sanitize: true + }; + const allOptions = Object.assign({}, defaultOptions, {}); + const identity = (value) => value; + const optSanitize = allOptions.sanitize ? purify.sanitize : identity; + allOptions.escape ? escapeHTML : identity; + const bundle = getAppTranslations(app); + let translation = bundle.translations[text2] || text2; + translation = Array.isArray(translation) ? translation[0] : translation; + { + return optSanitize(translation); + } +} +const FolderZipSvg = ''; +/*! third party licenses: js/vendor.LICENSE.txt */ +const action = new FileAction({ + id: "extract", + displayName: () => translate("extract", "Extract here"), + iconSvgInline: () => FolderZipSvg, + // Only works on single files + enabled(nodes) { + if (nodes.length !== 1) { + return false; + } + if (nodes[0].attributes.getcontenttype === "application/zip" || nodes[0].attributes.getcontenttype === "application/x-tar" || nodes[0].attributes.getcontenttype === "application/gzip" || nodes[0].attributes.getcontenttype === "application/x-rar-compressed" || nodes[0].attributes.getcontenttype === "application/x-7z-compressed" || nodes[0].attributes.getcontenttype === "application/x-deb" || nodes[0].attributes.getcontenttype === "application/x-bzip2") { + return (nodes[0].permissions & Permission.UPDATE) !== 0; + } + return false; + }, + async exec(node, view, dir) { + var data2 = { + nameOfFile: node.attributes.basename, + directory: dir, + external: node.attributes["mount-type"].startsWith("external") ? 1 : 0, + mime: node.attributes.mime + }; + const url = _$1("/apps/extract/ajax/extract.php"); + cancelableClient.post(url, data2).then((resp) => resp.data).then((data22) => { + const time = data22["extracted"]["mtime"] * 1e3; + const folder = new Folder({ + id: data22["extracted"]["fileId"], + source: data22["extracted"]["source"], + root: data22["extracted"]["root"], + owner: data22["extracted"]["owner"], + permissions: data22["extracted"]["permissions"], + mtime: new Date(time), + // Include mount-type from parent folder as this is inherited + attributes: { + "mount-type": data22["extracted"]["mount-type"], + "owner-id": data22["extracted"]["owner"], + "owner-display-name": data22["extracted"]["owner-display-name"] + } + }); + emit("files:node:created", folder); + window.OCP.Files.Router.goToRoute( + null, + // use default route + { view: "files", fileid: data22["fileId"] }, + { dir } + ); + return null; + }).catch((error) => { + console.log("Could not send extract request."); + console.log(error); + }); + return null; + }, + order: 25 +}); +export { + action as a, + registerFileAction as r +}; +//# sourceMappingURL=extract-extractAction.mjs.map diff --git a/js/extract-extractAction.mjs.map b/js/extract-extractAction.mjs.map new file mode 100644 index 0000000..00481ac --- /dev/null +++ b/js/extract-extractAction.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"extract-extractAction.mjs","sources":["../node_modules/vite-plugin-node-polyfills/shims/process/dist/index.js","../node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js","../node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js","../node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js","../node_modules/@nextcloud/event-bus/node_modules/semver/internal/parse-options.js","../node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js","../node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js","../node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js","../node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js","../node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js","../node_modules/@nextcloud/event-bus/dist/index.mjs","../node_modules/@nextcloud/browser-storage/dist/scopedstorage.js","../node_modules/@nextcloud/browser-storage/dist/storagebuilder.js","../node_modules/@nextcloud/browser-storage/dist/index.js","../node_modules/@nextcloud/auth/dist/index.mjs","../node_modules/@nextcloud/logger/dist/index.mjs","../node_modules/path-browserify/index.js","../node_modules/@nextcloud/paths/dist/index.mjs","../node_modules/@nextcloud/router/dist/index.mjs","../node_modules/cancelable-promise/esm/CancelablePromise.mjs","../node_modules/vite-plugin-node-polyfills/shims/global/dist/index.js","../node_modules/webdav/dist/web/index.js","../node_modules/@nextcloud/initial-state/dist/index.mjs","../node_modules/@nextcloud/sharing/dist/public.mjs","../node_modules/dompurify/dist/purify.es.mjs","../node_modules/escape-html/index.js","../node_modules/@nextcloud/files/dist/index.mjs","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/platform/common/utils.js","../node_modules/axios/lib/platform/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/helpers/throttle.js","../node_modules/axios/lib/helpers/progressEventReducer.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/helpers/resolveConfig.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/helpers/composeSignals.js","../node_modules/axios/lib/helpers/trackStream.js","../node_modules/axios/lib/adapters/fetch.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../node_modules/@nextcloud/axios/dist/index.mjs","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/function-bind-native.js","../node_modules/core-js/internals/function-apply.js","../node_modules/core-js/internals/function-call.js","../node_modules/core-js/internals/function-uncurry-this.js","../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/is-null-or-undefined.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/is-callable.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/object-is-prototype-of.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/symbol-constructor-detection.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/is-symbol.js","../node_modules/core-js/internals/try-to-string.js","../node_modules/core-js/internals/a-callable.js","../node_modules/core-js/internals/get-method.js","../node_modules/core-js/internals/ordinary-to-primitive.js","../node_modules/core-js/internals/define-global-property.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has-own-property.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-property-key.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/v8-prototype-define-bug.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/function-name.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/weak-map-basic-detection.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/make-built-in.js","../node_modules/core-js/internals/define-built-in.js","../node_modules/core-js/internals/math-trunc.js","../node_modules/core-js/internals/to-integer-or-infinity.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/length-of-array-like.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/to-string.js","../node_modules/core-js/internals/regexp-flags.js","../node_modules/core-js/internals/regexp-sticky-helpers.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/regexp-unsupported-dot-all.js","../node_modules/core-js/internals/regexp-unsupported-ncg.js","../node_modules/core-js/internals/regexp-exec.js","../node_modules/core-js/modules/es.regexp.exec.js","../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/internals/advance-string-index.js","../node_modules/core-js/internals/get-substitution.js","../node_modules/core-js/internals/regexp-exec-abstract.js","../node_modules/core-js/modules/es.string.replace.js","../node_modules/@nextcloud/l10n/node_modules/@nextcloud/router/dist/index.js","../node_modules/@nextcloud/l10n/dist/index.mjs","../node_modules/@mdi/svg/svg/folder-zip.svg?raw","../src/actions/extract-action.ts"],"sourcesContent":["function getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nvar browser = {exports: {}};\n\n// shim for using process in browser\nvar process = browser.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\nvar browserExports = browser.exports;\nconst process$1 = /*@__PURE__*/getDefaultExportFromCjs(browserExports);\n\nexport { process$1 as default, process$1 as process };\n//# sourceMappingURL=index.js.map\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","// 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\n// Max safe length for a build identifier. The max length minus 6 characters for\n// the shortest version with a build 0.0.0+BUILD.\nconst MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6\n\nconst RELEASE_TYPES = [\n 'major',\n 'premajor',\n 'minor',\n 'preminor',\n 'patch',\n 'prepatch',\n 'prerelease',\n]\n\nmodule.exports = {\n MAX_LENGTH,\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_SAFE_INTEGER,\n RELEASE_TYPES,\n SEMVER_SPEC_VERSION,\n FLAG_INCLUDE_PRERELEASE: 0b001,\n FLAG_LOOSE: 0b010,\n}\n","const {\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_LENGTH,\n} = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst safeRe = exports.safeRe = []\nconst src = exports.src = []\nconst t = exports.t = {}\nlet R = 0\n\nconst LETTERDASHNUMBER = '[a-zA-Z0-9-]'\n\n// Replace some greedy regex tokens to prevent regex dos issues. These regex are\n// used internally via the safeRe object since all inputs in this library get\n// normalized first to trim and collapse all extra whitespace. The original\n// regexes are exported for userland consumption and lower level usage. A\n// future breaking change could export the safer regex only with a note that\n// all input should have extra whitespace removed.\nconst safeRegexReplacements = [\n ['\\\\s', 1],\n ['\\\\d', MAX_LENGTH],\n [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH],\n]\n\nconst makeSafeRegex = (value) => {\n for (const [token, max] of safeRegexReplacements) {\n value = value\n .split(`${token}*`).join(`${token}{0,${max}}`)\n .split(`${token}+`).join(`${token}{1,${max}}`)\n }\n return value\n}\n\nconst createToken = (name, value, isGlobal) => {\n const safe = makeSafeRegex(value)\n const index = R++\n debug(name, index, value)\n t[name] = index\n src[index] = value\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\n safeRe[index] = new RegExp(safe, 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', '\\\\d+')\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-]${LETTERDASHNUMBER}*`)\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', `${LETTERDASHNUMBER}+`)\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('COERCEPLAIN', `${'(^|[^\\\\d])' +\n '(\\\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`)\ncreateToken('COERCE', `${src[t.COERCEPLAIN]}(?:$|[^\\\\d])`)\ncreateToken('COERCEFULL', src[t.COERCEPLAIN] +\n `(?:${src[t.PRERELEASE]})?` +\n `(?:${src[t.BUILD]})?` +\n `(?:$|[^\\\\d])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\ncreateToken('COERCERTLFULL', src[t.COERCEFULL], 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","// parse out just the options we care about\nconst looseOption = Object.freeze({ loose: true })\nconst emptyOpts = Object.freeze({ })\nconst parseOptions = options => {\n if (!options) {\n return emptyOpts\n }\n\n if (typeof options !== 'object') {\n return looseOption\n }\n\n return options\n}\nmodule.exports = parseOptions\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 debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { safeRe: 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. Must be a string. Got type \"${typeof 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('build 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, identifierBase) {\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, identifierBase)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier, identifierBase)\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, identifierBase)\n this.inc('pre', identifier, identifierBase)\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, identifierBase)\n }\n this.inc('pre', identifier, identifierBase)\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 const base = Number(identifierBase) ? 1 : 0\n\n if (!identifier && identifierBase === false) {\n throw new Error('invalid increment argument: identifier is empty')\n }\n\n if (this.prerelease.length === 0) {\n this.prerelease = [base]\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 if (identifier === this.prerelease.join('.') && identifierBase === false) {\n throw new Error('invalid increment argument: identifier already exists')\n }\n this.prerelease.push(base)\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 let prerelease = [identifier, base]\n if (identifierBase === false) {\n prerelease = [identifier]\n }\n if (compareIdentifiers(this.prerelease[0], identifier) === 0) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = prerelease\n }\n } else {\n this.prerelease = prerelease\n }\n }\n break\n }\n default:\n throw new Error(`invalid increment argument: ${release}`)\n }\n this.raw = this.format()\n if (this.build.length) {\n this.raw += `+${this.build.join('.')}`\n }\n return this\n }\n}\n\nmodule.exports = SemVer\n","const SemVer = require('../classes/semver')\nconst parse = (version, options, throwErrors = false) => {\n if (version instanceof SemVer) {\n return version\n }\n try {\n return new SemVer(version, options)\n } catch (er) {\n if (!throwErrors) {\n return null\n }\n throw er\n }\n}\n\nmodule.exports = parse\n","const parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","import valid from \"semver/functions/valid.js\";\nimport major from \"semver/functions/major.js\";\nclass ProxyBus {\n bus;\n constructor(bus2) {\n if (typeof bus2.getVersion !== \"function\" || !valid(bus2.getVersion())) {\n console.warn(\"Proxying an event bus with an unknown or invalid version\");\n } else if (major(bus2.getVersion()) !== major(this.getVersion())) {\n console.warn(\n \"Proxying an event bus of version \" + bus2.getVersion() + \" with \" + this.getVersion()\n );\n }\n this.bus = bus2;\n }\n getVersion() {\n return \"3.3.1\";\n }\n subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n emit(name, event) {\n this.bus.emit(name, event);\n }\n}\nclass SimpleBus {\n handlers = /* @__PURE__ */ new Map();\n getVersion() {\n return \"3.3.1\";\n }\n subscribe(name, handler) {\n this.handlers.set(\n name,\n (this.handlers.get(name) || []).concat(\n handler\n )\n );\n }\n unsubscribe(name, handler) {\n this.handlers.set(\n name,\n (this.handlers.get(name) || []).filter((h) => h !== handler)\n );\n }\n emit(name, event) {\n (this.handlers.get(name) || []).forEach((h) => {\n try {\n h(event);\n } catch (e) {\n console.error(\"could not invoke event listener\", e);\n }\n });\n }\n}\nlet bus = null;\nfunction getBus() {\n if (bus !== null) {\n return bus;\n }\n if (typeof window === \"undefined\") {\n return new Proxy({}, {\n get: () => {\n return () => console.error(\n \"Window not available, EventBus can not be established!\"\n );\n }\n });\n }\n if (window.OC?._eventBus && typeof window._nc_event_bus === \"undefined\") {\n console.warn(\n \"found old event bus instance at OC._eventBus. Update your version!\"\n );\n window._nc_event_bus = window.OC._eventBus;\n }\n if (typeof window?._nc_event_bus !== \"undefined\") {\n bus = new ProxyBus(window._nc_event_bus);\n } else {\n bus = window._nc_event_bus = new SimpleBus();\n }\n return bus;\n}\nfunction subscribe(name, handler) {\n getBus().subscribe(name, handler);\n}\nfunction unsubscribe(name, handler) {\n getBus().unsubscribe(name, handler);\n}\nfunction emit(name, event) {\n getBus().emit(name, event);\n}\nexport {\n ProxyBus,\n SimpleBus,\n emit,\n subscribe,\n unsubscribe\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nclass ScopedStorage {\n constructor(scope, wrapped, persistent) {\n _defineProperty(this, \"scope\", void 0);\n _defineProperty(this, \"wrapped\", void 0);\n this.scope = \"\".concat(persistent ? ScopedStorage.GLOBAL_SCOPE_PERSISTENT : ScopedStorage.GLOBAL_SCOPE_VOLATILE, \"_\").concat(btoa(scope), \"_\");\n this.wrapped = wrapped;\n }\n scopeKey(key) {\n return \"\".concat(this.scope).concat(key);\n }\n setItem(key, value) {\n this.wrapped.setItem(this.scopeKey(key), value);\n }\n getItem(key) {\n return this.wrapped.getItem(this.scopeKey(key));\n }\n removeItem(key) {\n this.wrapped.removeItem(this.scopeKey(key));\n }\n clear() {\n Object.keys(this.wrapped).filter(key => key.startsWith(this.scope)).map(this.wrapped.removeItem.bind(this.wrapped));\n }\n}\nexports.default = ScopedStorage;\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_VOLATILE\", 'nextcloud_vol');\n_defineProperty(ScopedStorage, \"GLOBAL_SCOPE_PERSISTENT\", 'nextcloud_per');\n//# sourceMappingURL=scopedstorage.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nclass StorageBuilder {\n constructor(appId) {\n _defineProperty(this, \"appId\", void 0);\n _defineProperty(this, \"persisted\", false);\n _defineProperty(this, \"clearedOnLogout\", false);\n this.appId = appId;\n }\n persist() {\n let persist = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n this.persisted = persist;\n return this;\n }\n clearOnLogout() {\n let clear = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n this.clearedOnLogout = clear;\n return this;\n }\n build() {\n return new _scopedstorage.default(this.appId, this.persisted ? window.localStorage : window.sessionStorage, !this.clearedOnLogout);\n }\n}\nexports.default = StorageBuilder;\n//# sourceMappingURL=storagebuilder.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.clearAll = clearAll;\nexports.clearNonPersistent = clearNonPersistent;\nexports.getBuilder = getBuilder;\nvar _storagebuilder = _interopRequireDefault(require(\"./storagebuilder\"));\nvar _scopedstorage = _interopRequireDefault(require(\"./scopedstorage\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/**\n * Get the storage builder for an app\n * @param appId App ID to scope storage\n */\nfunction getBuilder(appId) {\n return new _storagebuilder.default(appId);\n}\n\n/**\n * Clear values from storage\n * @param storage The storage to clear\n * @param pred Callback to check if value should be cleared\n */\nfunction clearStorage(storage, pred) {\n Object.keys(storage).filter(k => pred ? pred(k) : true).map(storage.removeItem.bind(storage));\n}\n\n/**\n * Clear all values from all storages\n */\nfunction clearAll() {\n const storages = [window.sessionStorage, window.localStorage];\n storages.map(s => clearStorage(s));\n}\n\n/**\n * Clear ony non persistent values\n */\nfunction clearNonPersistent() {\n const storages = [window.sessionStorage, window.localStorage];\n storages.map(s => clearStorage(s, k => !k.startsWith(_scopedstorage.default.GLOBAL_SCOPE_PERSISTENT)));\n}\n//# sourceMappingURL=index.js.map","import { subscribe } from \"@nextcloud/event-bus\";\nimport { getBuilder } from \"@nextcloud/browser-storage\";\nlet token;\nconst observers = [];\nfunction getRequestToken() {\n if (token === void 0) {\n token = document.head.dataset.requesttoken ?? null;\n }\n return token;\n}\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n}\nsubscribe(\"csrf-token-update\", (e) => {\n token = e.token;\n observers.forEach((observer) => {\n try {\n observer(token);\n } catch (e2) {\n console.error(\"Error updating CSRF token observer\", e2);\n }\n });\n});\nfunction getCSPNonce() {\n const meta = document?.querySelector('meta[name=\"csp-nonce\"]');\n if (!meta) {\n const token2 = getRequestToken();\n return token2 ? btoa(token2) : void 0;\n }\n return meta.nonce;\n}\nconst browserStorage = getBuilder(\"public\").persist().build();\nfunction getGuestNickname() {\n return browserStorage.getItem(\"guestNickname\");\n}\nfunction setGuestNickname(nickname) {\n browserStorage.setItem(\"guestNickname\", nickname);\n}\nlet currentUser;\nconst getAttribute = (el, attribute) => {\n if (el) {\n return el.getAttribute(attribute);\n }\n return null;\n};\nfunction getCurrentUser() {\n if (currentUser !== void 0) {\n return currentUser;\n }\n const head = document?.getElementsByTagName(\"head\")[0];\n if (!head) {\n return null;\n }\n const uid = getAttribute(head, \"data-user\");\n if (uid === null) {\n currentUser = null;\n return currentUser;\n }\n currentUser = {\n uid,\n displayName: getAttribute(head, \"data-user-displayname\"),\n isAdmin: !!window._oc_isadmin\n };\n return currentUser;\n}\nexport {\n getCSPNonce,\n getCurrentUser,\n getGuestNickname,\n getRequestToken,\n onRequestTokenUpdate,\n setGuestNickname\n};\n","import { getCurrentUser } from \"@nextcloud/auth\";\nvar LogLevel = /* @__PURE__ */ ((LogLevel2) => {\n LogLevel2[LogLevel2[\"Debug\"] = 0] = \"Debug\";\n LogLevel2[LogLevel2[\"Info\"] = 1] = \"Info\";\n LogLevel2[LogLevel2[\"Warn\"] = 2] = \"Warn\";\n LogLevel2[LogLevel2[\"Error\"] = 3] = \"Error\";\n LogLevel2[LogLevel2[\"Fatal\"] = 4] = \"Fatal\";\n return LogLevel2;\n})(LogLevel || {});\nvar __defProp$1 = Object.defineProperty;\nvar __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField$1 = (obj, key, value) => {\n __defNormalProp$1(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass ConsoleLogger {\n constructor(context) {\n __publicField$1(this, \"context\");\n this.context = context || {};\n }\n formatMessage(message, level, context) {\n let msg = \"[\" + LogLevel[level].toUpperCase() + \"] \";\n if (context && context.app) {\n msg += context.app + \": \";\n }\n if (typeof message === \"string\")\n return msg + message;\n msg += \"Unexpected \".concat(message.name);\n if (message.message)\n msg += ' \"'.concat(message.message, '\"');\n if (level === LogLevel.Debug && message.stack)\n msg += \"\\n\\nStack trace:\\n\".concat(message.stack);\n return msg;\n }\n log(level, message, context) {\n var _a, _b;\n if (typeof ((_a = this.context) == null ? void 0 : _a.level) === \"number\" && level < ((_b = this.context) == null ? void 0 : _b.level)) {\n return;\n }\n if (typeof message === \"object\" && (context == null ? void 0 : context.error) === void 0) {\n context.error = message;\n }\n switch (level) {\n case LogLevel.Debug:\n console.debug(this.formatMessage(message, LogLevel.Debug, context), context);\n break;\n case LogLevel.Info:\n console.info(this.formatMessage(message, LogLevel.Info, context), context);\n break;\n case LogLevel.Warn:\n console.warn(this.formatMessage(message, LogLevel.Warn, context), context);\n break;\n case LogLevel.Error:\n console.error(this.formatMessage(message, LogLevel.Error, context), context);\n break;\n case LogLevel.Fatal:\n default:\n console.error(this.formatMessage(message, LogLevel.Fatal, context), context);\n break;\n }\n }\n debug(message, context) {\n this.log(LogLevel.Debug, message, Object.assign({}, this.context, context));\n }\n info(message, context) {\n this.log(LogLevel.Info, message, Object.assign({}, this.context, context));\n }\n warn(message, context) {\n this.log(LogLevel.Warn, message, Object.assign({}, this.context, context));\n }\n error(message, context) {\n this.log(LogLevel.Error, message, Object.assign({}, this.context, context));\n }\n fatal(message, context) {\n this.log(LogLevel.Fatal, message, Object.assign({}, this.context, context));\n }\n}\nfunction buildConsoleLogger(context) {\n return new ConsoleLogger(context);\n}\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass LoggerBuilder {\n constructor(factory) {\n __publicField(this, \"context\");\n __publicField(this, \"factory\");\n this.context = {};\n this.factory = factory;\n }\n /**\n * Set the app name within the logging context\n *\n * @param appId App name\n */\n setApp(appId) {\n this.context.app = appId;\n return this;\n }\n /**\n * Set the logging level within the logging context\n *\n * @param level Logging level\n */\n setLogLevel(level) {\n this.context.level = level;\n return this;\n }\n /* eslint-disable jsdoc/no-undefined-types */\n /**\n * Set the user id within the logging context\n * @param uid User ID\n * @see {@link detectUser}\n */\n /* eslint-enable jsdoc/no-undefined-types */\n setUid(uid) {\n this.context.uid = uid;\n return this;\n }\n /**\n * Detect the currently logged in user and set the user id within the logging context\n */\n detectUser() {\n const user = getCurrentUser();\n if (user !== null) {\n this.context.uid = user.uid;\n }\n return this;\n }\n /**\n * Detect and use logging level configured in nextcloud config\n */\n detectLogLevel() {\n const self = this;\n const onLoaded = () => {\n var _a, _b;\n if (document.readyState === \"complete\" || document.readyState === \"interactive\") {\n self.context.level = (_b = (_a = window._oc_config) == null ? void 0 : _a.loglevel) != null ? _b : LogLevel.Warn;\n if (window._oc_debug) {\n self.context.level = LogLevel.Debug;\n }\n document.removeEventListener(\"readystatechange\", onLoaded);\n } else {\n document.addEventListener(\"readystatechange\", onLoaded);\n }\n };\n onLoaded();\n return this;\n }\n /** Build a logger using the logging context and factory */\n build() {\n if (this.context.level === void 0) {\n this.detectLogLevel();\n }\n return this.factory(this.context);\n }\n}\nfunction getLoggerBuilder() {\n return new LoggerBuilder(buildConsoleLogger);\n}\nfunction getLogger() {\n return getLoggerBuilder().build();\n}\nexport {\n LogLevel,\n getLogger,\n getLoggerBuilder\n};\n","// 'path' module extracted from Node.js v8.11.1 (only the posix part)\n// transplited with Babel\n\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nfunction assertPath(path) {\n if (typeof path !== 'string') {\n throw new TypeError('Path must be a string. Received ' + JSON.stringify(path));\n }\n}\n\n// Resolves . and .. elements in a path with directory names\nfunction normalizeStringPosix(path, allowAboveRoot) {\n var res = '';\n var lastSegmentLength = 0;\n var lastSlash = -1;\n var dots = 0;\n var code;\n for (var i = 0; i <= path.length; ++i) {\n if (i < path.length)\n code = path.charCodeAt(i);\n else if (code === 47 /*/*/)\n break;\n else\n code = 47 /*/*/;\n if (code === 47 /*/*/) {\n if (lastSlash === i - 1 || dots === 1) {\n // NOOP\n } else if (lastSlash !== i - 1 && dots === 2) {\n if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 /*.*/ || res.charCodeAt(res.length - 2) !== 46 /*.*/) {\n if (res.length > 2) {\n var lastSlashIndex = res.lastIndexOf('/');\n if (lastSlashIndex !== res.length - 1) {\n if (lastSlashIndex === -1) {\n res = '';\n lastSegmentLength = 0;\n } else {\n res = res.slice(0, lastSlashIndex);\n lastSegmentLength = res.length - 1 - res.lastIndexOf('/');\n }\n lastSlash = i;\n dots = 0;\n continue;\n }\n } else if (res.length === 2 || res.length === 1) {\n res = '';\n lastSegmentLength = 0;\n lastSlash = i;\n dots = 0;\n continue;\n }\n }\n if (allowAboveRoot) {\n if (res.length > 0)\n res += '/..';\n else\n res = '..';\n lastSegmentLength = 2;\n }\n } else {\n if (res.length > 0)\n res += '/' + path.slice(lastSlash + 1, i);\n else\n res = path.slice(lastSlash + 1, i);\n lastSegmentLength = i - lastSlash - 1;\n }\n lastSlash = i;\n dots = 0;\n } else if (code === 46 /*.*/ && dots !== -1) {\n ++dots;\n } else {\n dots = -1;\n }\n }\n return res;\n}\n\nfunction _format(sep, pathObject) {\n var dir = pathObject.dir || pathObject.root;\n var base = pathObject.base || (pathObject.name || '') + (pathObject.ext || '');\n if (!dir) {\n return base;\n }\n if (dir === pathObject.root) {\n return dir + base;\n }\n return dir + sep + base;\n}\n\nvar posix = {\n // path.resolve([from ...], to)\n resolve: function resolve() {\n var resolvedPath = '';\n var resolvedAbsolute = false;\n var cwd;\n\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path;\n if (i >= 0)\n path = arguments[i];\n else {\n if (cwd === undefined)\n cwd = process.cwd();\n path = cwd;\n }\n\n assertPath(path);\n\n // Skip empty entries\n if (path.length === 0) {\n continue;\n }\n\n resolvedPath = path + '/' + resolvedPath;\n resolvedAbsolute = path.charCodeAt(0) === 47 /*/*/;\n }\n\n // At this point the path should be resolved to a full absolute path, but\n // handle relative paths to be safe (might happen when process.cwd() fails)\n\n // Normalize the path\n resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);\n\n if (resolvedAbsolute) {\n if (resolvedPath.length > 0)\n return '/' + resolvedPath;\n else\n return '/';\n } else if (resolvedPath.length > 0) {\n return resolvedPath;\n } else {\n return '.';\n }\n },\n\n normalize: function normalize(path) {\n assertPath(path);\n\n if (path.length === 0) return '.';\n\n var isAbsolute = path.charCodeAt(0) === 47 /*/*/;\n var trailingSeparator = path.charCodeAt(path.length - 1) === 47 /*/*/;\n\n // Normalize the path\n path = normalizeStringPosix(path, !isAbsolute);\n\n if (path.length === 0 && !isAbsolute) path = '.';\n if (path.length > 0 && trailingSeparator) path += '/';\n\n if (isAbsolute) return '/' + path;\n return path;\n },\n\n isAbsolute: function isAbsolute(path) {\n assertPath(path);\n return path.length > 0 && path.charCodeAt(0) === 47 /*/*/;\n },\n\n join: function join() {\n if (arguments.length === 0)\n return '.';\n var joined;\n for (var i = 0; i < arguments.length; ++i) {\n var arg = arguments[i];\n assertPath(arg);\n if (arg.length > 0) {\n if (joined === undefined)\n joined = arg;\n else\n joined += '/' + arg;\n }\n }\n if (joined === undefined)\n return '.';\n return posix.normalize(joined);\n },\n\n relative: function relative(from, to) {\n assertPath(from);\n assertPath(to);\n\n if (from === to) return '';\n\n from = posix.resolve(from);\n to = posix.resolve(to);\n\n if (from === to) return '';\n\n // Trim any leading backslashes\n var fromStart = 1;\n for (; fromStart < from.length; ++fromStart) {\n if (from.charCodeAt(fromStart) !== 47 /*/*/)\n break;\n }\n var fromEnd = from.length;\n var fromLen = fromEnd - fromStart;\n\n // Trim any leading backslashes\n var toStart = 1;\n for (; toStart < to.length; ++toStart) {\n if (to.charCodeAt(toStart) !== 47 /*/*/)\n break;\n }\n var toEnd = to.length;\n var toLen = toEnd - toStart;\n\n // Compare paths to find the longest common path from root\n var length = fromLen < toLen ? fromLen : toLen;\n var lastCommonSep = -1;\n var i = 0;\n for (; i <= length; ++i) {\n if (i === length) {\n if (toLen > length) {\n if (to.charCodeAt(toStart + i) === 47 /*/*/) {\n // We get here if `from` is the exact base path for `to`.\n // For example: from='/foo/bar'; to='/foo/bar/baz'\n return to.slice(toStart + i + 1);\n } else if (i === 0) {\n // We get here if `from` is the root\n // For example: from='/'; to='/foo'\n return to.slice(toStart + i);\n }\n } else if (fromLen > length) {\n if (from.charCodeAt(fromStart + i) === 47 /*/*/) {\n // We get here if `to` is the exact base path for `from`.\n // For example: from='/foo/bar/baz'; to='/foo/bar'\n lastCommonSep = i;\n } else if (i === 0) {\n // We get here if `to` is the root.\n // For example: from='/foo'; to='/'\n lastCommonSep = 0;\n }\n }\n break;\n }\n var fromCode = from.charCodeAt(fromStart + i);\n var toCode = to.charCodeAt(toStart + i);\n if (fromCode !== toCode)\n break;\n else if (fromCode === 47 /*/*/)\n lastCommonSep = i;\n }\n\n var out = '';\n // Generate the relative path based on the path difference between `to`\n // and `from`\n for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {\n if (i === fromEnd || from.charCodeAt(i) === 47 /*/*/) {\n if (out.length === 0)\n out += '..';\n else\n out += '/..';\n }\n }\n\n // Lastly, append the rest of the destination (`to`) path that comes after\n // the common path parts\n if (out.length > 0)\n return out + to.slice(toStart + lastCommonSep);\n else {\n toStart += lastCommonSep;\n if (to.charCodeAt(toStart) === 47 /*/*/)\n ++toStart;\n return to.slice(toStart);\n }\n },\n\n _makeLong: function _makeLong(path) {\n return path;\n },\n\n dirname: function dirname(path) {\n assertPath(path);\n if (path.length === 0) return '.';\n var code = path.charCodeAt(0);\n var hasRoot = code === 47 /*/*/;\n var end = -1;\n var matchedSlash = true;\n for (var i = path.length - 1; i >= 1; --i) {\n code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n if (!matchedSlash) {\n end = i;\n break;\n }\n } else {\n // We saw the first non-path separator\n matchedSlash = false;\n }\n }\n\n if (end === -1) return hasRoot ? '/' : '.';\n if (hasRoot && end === 1) return '//';\n return path.slice(0, end);\n },\n\n basename: function basename(path, ext) {\n if (ext !== undefined && typeof ext !== 'string') throw new TypeError('\"ext\" argument must be a string');\n assertPath(path);\n\n var start = 0;\n var end = -1;\n var matchedSlash = true;\n var i;\n\n if (ext !== undefined && ext.length > 0 && ext.length <= path.length) {\n if (ext.length === path.length && ext === path) return '';\n var extIdx = ext.length - 1;\n var firstNonSlashEnd = -1;\n for (i = path.length - 1; i >= 0; --i) {\n var code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else {\n if (firstNonSlashEnd === -1) {\n // We saw the first non-path separator, remember this index in case\n // we need it if the extension ends up not matching\n matchedSlash = false;\n firstNonSlashEnd = i + 1;\n }\n if (extIdx >= 0) {\n // Try to match the explicit extension\n if (code === ext.charCodeAt(extIdx)) {\n if (--extIdx === -1) {\n // We matched the extension, so mark this as the end of our path\n // component\n end = i;\n }\n } else {\n // Extension does not match, so our result is the entire path\n // component\n extIdx = -1;\n end = firstNonSlashEnd;\n }\n }\n }\n }\n\n if (start === end) end = firstNonSlashEnd;else if (end === -1) end = path.length;\n return path.slice(start, end);\n } else {\n for (i = path.length - 1; i >= 0; --i) {\n if (path.charCodeAt(i) === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // path component\n matchedSlash = false;\n end = i + 1;\n }\n }\n\n if (end === -1) return '';\n return path.slice(start, end);\n }\n },\n\n extname: function extname(path) {\n assertPath(path);\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find\n var preDotState = 0;\n for (var i = path.length - 1; i >= 0; --i) {\n var code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // extension\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46 /*.*/) {\n // If this is our first dot, mark it as the start of our extension\n if (startDot === -1)\n startDot = i;\n else if (preDotState !== 1)\n preDotState = 1;\n } else if (startDot !== -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension\n preDotState = -1;\n }\n }\n\n if (startDot === -1 || end === -1 ||\n // We saw a non-dot character immediately before the dot\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n return '';\n }\n return path.slice(startDot, end);\n },\n\n format: function format(pathObject) {\n if (pathObject === null || typeof pathObject !== 'object') {\n throw new TypeError('The \"pathObject\" argument must be of type Object. Received type ' + typeof pathObject);\n }\n return _format('/', pathObject);\n },\n\n parse: function parse(path) {\n assertPath(path);\n\n var ret = { root: '', dir: '', base: '', ext: '', name: '' };\n if (path.length === 0) return ret;\n var code = path.charCodeAt(0);\n var isAbsolute = code === 47 /*/*/;\n var start;\n if (isAbsolute) {\n ret.root = '/';\n start = 1;\n } else {\n start = 0;\n }\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n var i = path.length - 1;\n\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find\n var preDotState = 0;\n\n // Get non-dir info\n for (; i >= start; --i) {\n code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // extension\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46 /*.*/) {\n // If this is our first dot, mark it as the start of our extension\n if (startDot === -1) startDot = i;else if (preDotState !== 1) preDotState = 1;\n } else if (startDot !== -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension\n preDotState = -1;\n }\n }\n\n if (startDot === -1 || end === -1 ||\n // We saw a non-dot character immediately before the dot\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n if (end !== -1) {\n if (startPart === 0 && isAbsolute) ret.base = ret.name = path.slice(1, end);else ret.base = ret.name = path.slice(startPart, end);\n }\n } else {\n if (startPart === 0 && isAbsolute) {\n ret.name = path.slice(1, startDot);\n ret.base = path.slice(1, end);\n } else {\n ret.name = path.slice(startPart, startDot);\n ret.base = path.slice(startPart, end);\n }\n ret.ext = path.slice(startDot, end);\n }\n\n if (startPart > 0) ret.dir = path.slice(0, startPart - 1);else if (isAbsolute) ret.dir = '/';\n\n return ret;\n },\n\n sep: '/',\n delimiter: ':',\n win32: null,\n posix: null\n};\n\nposix.posix = posix;\n\nmodule.exports = posix;\n","function encodePath(path) {\n if (!path) {\n return path;\n }\n return path.split(\"/\").map(encodeURIComponent).join(\"/\");\n}\nfunction basename(path) {\n return path.replace(/\\\\/g, \"/\").replace(/.*\\//, \"\");\n}\nfunction dirname(path) {\n return path.replace(/\\\\/g, \"/\").replace(/\\/[^\\/]*$/, \"\");\n}\nfunction joinPaths(...args) {\n if (arguments.length < 1) {\n return \"\";\n }\n const nonEmptyArgs = args.filter((arg) => arg.length > 0);\n if (nonEmptyArgs.length < 1) {\n return \"\";\n }\n const lastArg = nonEmptyArgs[nonEmptyArgs.length - 1];\n const leadingSlash = nonEmptyArgs[0].charAt(0) === \"/\";\n const trailingSlash = lastArg.charAt(lastArg.length - 1) === \"/\";\n const sections = nonEmptyArgs.reduce((acc, section) => acc.concat(section.split(\"/\")), []);\n let first = !leadingSlash;\n const path = sections.reduce((acc, section) => {\n if (section === \"\") {\n return acc;\n }\n if (first) {\n first = false;\n return acc + section;\n }\n return acc + \"/\" + section;\n }, \"\");\n if (trailingSlash) {\n return path + \"/\";\n }\n return path;\n}\nfunction isSamePath(path1, path2) {\n const pathSections1 = (path1 || \"\").split(\"/\").filter((p) => p !== \".\");\n const pathSections2 = (path2 || \"\").split(\"/\").filter((p) => p !== \".\");\n path1 = joinPaths.apply(void 0, pathSections1);\n path2 = joinPaths.apply(void 0, pathSections2);\n return path1 === path2;\n}\nexport {\n basename,\n dirname,\n encodePath,\n isSamePath,\n joinPaths\n};\n","const R = (n, e) => d(n, \"\", e), g = (n) => \"/remote.php/\" + n, U = (n, e) => {\n var o;\n return ((o = e == null ? void 0 : e.baseURL) != null ? o : w()) + g(n);\n}, v = (n, e, o) => {\n var c;\n const i = Object.assign({\n ocsVersion: 2\n }, o || {}).ocsVersion === 1 ? 1 : 2;\n return ((c = o == null ? void 0 : o.baseURL) != null ? c : w()) + \"/ocs/v\" + i + \".php\" + u(n, e, o);\n}, u = (n, e, o) => {\n const c = Object.assign({\n escape: !0\n }, o || {}), r = function(i, s) {\n return s = s || {}, i.replace(\n /{([^{}]*)}/g,\n function(l, t) {\n const a = s[t];\n return c.escape ? encodeURIComponent(typeof a == \"string\" || typeof a == \"number\" ? a.toString() : l) : typeof a == \"string\" || typeof a == \"number\" ? a.toString() : l;\n }\n );\n };\n return n.charAt(0) !== \"/\" && (n = \"/\" + n), r(n, e || {});\n}, _ = (n, e, o) => {\n var c, r, i;\n const s = Object.assign({\n noRewrite: !1\n }, o || {}), l = (c = o == null ? void 0 : o.baseURL) != null ? c : f();\n return ((i = (r = window == null ? void 0 : window.OC) == null ? void 0 : r.config) == null ? void 0 : i.modRewriteWorking) === !0 && !s.noRewrite ? l + u(n, e, o) : l + \"/index.php\" + u(n, e, o);\n}, h = (n, e) => e.includes(\".\") ? d(n, \"img\", e) : d(n, \"img\", \"\".concat(e, \".svg\")), d = (n, e, o) => {\n var c, r, i;\n const s = (i = (r = (c = window == null ? void 0 : window.OC) == null ? void 0 : c.coreApps) == null ? void 0 : r.includes(n)) != null ? i : !1, l = o.slice(-3) === \"php\";\n let t = f();\n return l && !s ? (t += \"/index.php/apps/\".concat(n), e && (t += \"/\".concat(encodeURI(e))), o !== \"index.php\" && (t += \"/\".concat(o))) : !l && !s ? (t = b(n), e && (t += \"/\".concat(e, \"/\")), t.at(-1) !== \"/\" && (t += \"/\"), t += o) : ((n === \"settings\" || n === \"core\" || n === \"search\") && e === \"ajax\" && (t += \"/index.php\"), n && (t += \"/\".concat(n)), e && (t += \"/\".concat(e)), t += \"/\".concat(o)), t;\n}, w = () => window.location.protocol + \"//\" + window.location.host + f();\nfunction f() {\n let n = window._oc_webroot;\n if (typeof n > \"u\") {\n n = location.pathname;\n const e = n.indexOf(\"/index.php/\");\n if (e !== -1)\n n = n.slice(0, e);\n else {\n const o = n.indexOf(\"/\", 1);\n n = n.slice(0, o > 0 ? o : void 0);\n }\n }\n return n;\n}\nfunction b(n) {\n var e, o;\n return (o = ((e = window._oc_appswebroots) != null ? e : {})[n]) != null ? o : \"\";\n}\nexport {\n d as generateFilePath,\n v as generateOcsUrl,\n U as generateRemoteUrl,\n _ as generateUrl,\n b as getAppRootUrl,\n w as getBaseUrl,\n f as getRootUrl,\n h as imagePath,\n R as linkTo\n};\n","function _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\nfunction _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }\n\nfunction _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError(\"Cannot initialize the same private elements twice on an object\"); } }\n\nfunction _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"get\"); return _classApplyDescriptorGet(receiver, descriptor); }\n\nfunction _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }\n\nfunction _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"set\"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }\n\nfunction _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError(\"attempted to \" + action + \" private field on non-instance\"); } return privateMap.get(receiver); }\n\nfunction _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError(\"attempted to set read only private field\"); } descriptor.value = value; } }\n\nvar toStringTag = typeof Symbol !== 'undefined' ? Symbol.toStringTag : '@@toStringTag';\n\nvar _internals = /*#__PURE__*/new WeakMap();\n\nvar _promise = /*#__PURE__*/new WeakMap();\n\nclass CancelablePromiseInternal {\n constructor(_ref) {\n var {\n executor = () => {},\n internals = defaultInternals(),\n promise = new Promise((resolve, reject) => executor(resolve, reject, onCancel => {\n internals.onCancelList.push(onCancel);\n }))\n } = _ref;\n\n _classPrivateFieldInitSpec(this, _internals, {\n writable: true,\n value: void 0\n });\n\n _classPrivateFieldInitSpec(this, _promise, {\n writable: true,\n value: void 0\n });\n\n _defineProperty(this, toStringTag, 'CancelablePromise');\n\n this.cancel = this.cancel.bind(this);\n\n _classPrivateFieldSet(this, _internals, internals);\n\n _classPrivateFieldSet(this, _promise, promise || new Promise((resolve, reject) => executor(resolve, reject, onCancel => {\n internals.onCancelList.push(onCancel);\n })));\n }\n\n then(onfulfilled, onrejected) {\n return makeCancelable(_classPrivateFieldGet(this, _promise).then(createCallback(onfulfilled, _classPrivateFieldGet(this, _internals)), createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n\n catch(onrejected) {\n return makeCancelable(_classPrivateFieldGet(this, _promise).catch(createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n\n finally(onfinally, runWhenCanceled) {\n if (runWhenCanceled) {\n _classPrivateFieldGet(this, _internals).onCancelList.push(onfinally);\n }\n\n return makeCancelable(_classPrivateFieldGet(this, _promise).finally(createCallback(() => {\n if (onfinally) {\n if (runWhenCanceled) {\n _classPrivateFieldGet(this, _internals).onCancelList = _classPrivateFieldGet(this, _internals).onCancelList.filter(callback => callback !== onfinally);\n }\n\n return onfinally();\n }\n }, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n\n cancel() {\n _classPrivateFieldGet(this, _internals).isCanceled = true;\n\n var callbacks = _classPrivateFieldGet(this, _internals).onCancelList;\n\n _classPrivateFieldGet(this, _internals).onCancelList = [];\n\n for (var callback of callbacks) {\n if (typeof callback === 'function') {\n try {\n callback();\n } catch (err) {\n console.error(err);\n }\n }\n }\n }\n\n isCanceled() {\n return _classPrivateFieldGet(this, _internals).isCanceled === true;\n }\n\n}\n\nexport class CancelablePromise extends CancelablePromiseInternal {\n constructor(executor) {\n super({\n executor\n });\n }\n\n}\n\n_defineProperty(CancelablePromise, \"all\", function all(iterable) {\n return makeAllCancelable(iterable, Promise.all(iterable));\n});\n\n_defineProperty(CancelablePromise, \"allSettled\", function allSettled(iterable) {\n return makeAllCancelable(iterable, Promise.allSettled(iterable));\n});\n\n_defineProperty(CancelablePromise, \"any\", function any(iterable) {\n return makeAllCancelable(iterable, Promise.any(iterable));\n});\n\n_defineProperty(CancelablePromise, \"race\", function race(iterable) {\n return makeAllCancelable(iterable, Promise.race(iterable));\n});\n\n_defineProperty(CancelablePromise, \"resolve\", function resolve(value) {\n return cancelable(Promise.resolve(value));\n});\n\n_defineProperty(CancelablePromise, \"reject\", function reject(reason) {\n return cancelable(Promise.reject(reason));\n});\n\n_defineProperty(CancelablePromise, \"isCancelable\", isCancelablePromise);\n\nexport default CancelablePromise;\nexport function cancelable(promise) {\n return makeCancelable(promise, defaultInternals());\n}\nexport function isCancelablePromise(promise) {\n return promise instanceof CancelablePromise || promise instanceof CancelablePromiseInternal;\n}\n\nfunction createCallback(onResult, internals) {\n if (onResult) {\n return arg => {\n if (!internals.isCanceled) {\n var result = onResult(arg);\n\n if (isCancelablePromise(result)) {\n internals.onCancelList.push(result.cancel);\n }\n\n return result;\n }\n\n return arg;\n };\n }\n}\n\nfunction makeCancelable(promise, internals) {\n return new CancelablePromiseInternal({\n internals,\n promise\n });\n}\n\nfunction makeAllCancelable(iterable, promise) {\n var internals = defaultInternals();\n internals.onCancelList.push(() => {\n for (var resolvable of iterable) {\n if (isCancelablePromise(resolvable)) {\n resolvable.cancel();\n }\n }\n });\n return new CancelablePromiseInternal({\n internals,\n promise\n });\n}\n\nfunction defaultInternals() {\n return {\n isCanceled: false,\n onCancelList: []\n };\n}\n//# sourceMappingURL=CancelablePromise.mjs.map","const global = globalThis || void 0 || self;\n\nexport { global as default, global };\n//# sourceMappingURL=index.js.map\n","/*! For license information please see index.js.LICENSE.txt */\nvar t={2:t=>{function e(t,e,o){t instanceof RegExp&&(t=n(t,o)),e instanceof RegExp&&(e=n(e,o));var i=r(t,e,o);return i&&{start:i[0],end:i[1],pre:o.slice(0,i[0]),body:o.slice(i[0]+t.length,i[1]),post:o.slice(i[1]+e.length)}}function n(t,e){var n=e.match(t);return n?n[0]:null}function r(t,e,n){var r,o,i,s,a,u=n.indexOf(t),c=n.indexOf(e,u+1),l=u;if(u>=0&&c>0){for(r=[],i=n.length;l>=0&&!a;)l==u?(r.push(l),u=n.indexOf(t,l+1)):1==r.length?a=[r.pop(),c]:((o=r.pop())=0?u:c;r.length&&(a=[i,s])}return a}t.exports=e,e.range=r},101:function(t,e,n){var r;t=n.nmd(t),function(o){var i=(t&&t.exports,\"object\"==typeof global&&global);i.global!==i&&i.window;var s=function(t){this.message=t};(s.prototype=new Error).name=\"InvalidCharacterError\";var a=function(t){throw new s(t)},u=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",c=/[\\t\\n\\f\\r ]/g,l={encode:function(t){t=String(t),/[^\\0-\\xFF]/.test(t)&&a(\"The string to be encoded contains characters outside of the Latin1 range.\");for(var e,n,r,o,i=t.length%3,s=\"\",c=-1,l=t.length-i;++c>18&63)+u.charAt(o>>12&63)+u.charAt(o>>6&63)+u.charAt(63&o);return 2==i?(e=t.charCodeAt(c)<<8,n=t.charCodeAt(++c),s+=u.charAt((o=e+n)>>10)+u.charAt(o>>4&63)+u.charAt(o<<2&63)+\"=\"):1==i&&(o=t.charCodeAt(c),s+=u.charAt(o>>2)+u.charAt(o<<4&63)+\"==\"),s},decode:function(t){var e=(t=String(t).replace(c,\"\")).length;e%4==0&&(e=(t=t.replace(/==?$/,\"\")).length),(e%4==1||/[^+a-zA-Z0-9/]/.test(t))&&a(\"Invalid character: the string to be decoded is not correctly encoded.\");for(var n,r,o=0,i=\"\",s=-1;++s>(-2*o&6)));return i},version:\"1.0.0\"};void 0===(r=function(){return l}.call(e,n,e,t))||(t.exports=r)}()},172:(t,e)=>{e.d=function(t){if(!t)return 0;for(var e=(t=t.toString()).length,n=t.length;n--;){var r=t.charCodeAt(n);56320<=r&&r<=57343&&n--,127{var e={utf8:{stringToBytes:function(t){return e.bin.stringToBytes(unescape(encodeURIComponent(t)))},bytesToString:function(t){return decodeURIComponent(escape(e.bin.bytesToString(t)))}},bin:{stringToBytes:function(t){for(var e=[],n=0;n{var e,n;e=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",n={rotl:function(t,e){return t<>>32-e},rotr:function(t,e){return t<<32-e|t>>>e},endian:function(t){if(t.constructor==Number)return 16711935&n.rotl(t,8)|4278255360&n.rotl(t,24);for(var e=0;e0;t--)e.push(Math.floor(256*Math.random()));return e},bytesToWords:function(t){for(var e=[],n=0,r=0;n>>5]|=t[n]<<24-r%32;return e},wordsToBytes:function(t){for(var e=[],n=0;n<32*t.length;n+=8)e.push(t[n>>>5]>>>24-n%32&255);return e},bytesToHex:function(t){for(var e=[],n=0;n>>4).toString(16)),e.push((15&t[n]).toString(16));return e.join(\"\")},hexToBytes:function(t){for(var e=[],n=0;n>>6*(3-i)&63)):n.push(\"=\");return n.join(\"\")},base64ToBytes:function(t){t=t.replace(/[^A-Z0-9+\\/]/gi,\"\");for(var n=[],r=0,o=0;r>>6-2*o);return n}},t.exports=n},635:(t,e,n)=>{const r=n(31),o=n(338),i=n(221);t.exports={XMLParser:o,XMLValidator:r,XMLBuilder:i}},705:(t,e)=>{const n=\":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\",r=\"[\"+n+\"][\"+n+\"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040]*\",o=new RegExp(\"^\"+r+\"$\");e.isExist=function(t){return void 0!==t},e.isEmptyObject=function(t){return 0===Object.keys(t).length},e.merge=function(t,e,n){if(e){const r=Object.keys(e),o=r.length;for(let i=0;i{const r=n(705),o={allowBooleanAttributes:!1,unpairedTags:[]};function i(t){return\" \"===t||\"\\t\"===t||\"\\n\"===t||\"\\r\"===t}function s(t,e){const n=e;for(;e5&&\"xml\"===r)return d(\"InvalidXml\",\"XML declaration allowed only at the start of the document.\",m(t,e));if(\"?\"==t[e]&&\">\"==t[e+1]){e++;break}}return e}function a(t,e){if(t.length>e+5&&\"-\"===t[e+1]&&\"-\"===t[e+2]){for(e+=3;e\"===t[e+2]){e+=2;break}}else if(t.length>e+8&&\"D\"===t[e+1]&&\"O\"===t[e+2]&&\"C\"===t[e+3]&&\"T\"===t[e+4]&&\"Y\"===t[e+5]&&\"P\"===t[e+6]&&\"E\"===t[e+7]){let n=1;for(e+=8;e\"===t[e]&&(n--,0===n))break}else if(t.length>e+9&&\"[\"===t[e+1]&&\"C\"===t[e+2]&&\"D\"===t[e+3]&&\"A\"===t[e+4]&&\"T\"===t[e+5]&&\"A\"===t[e+6]&&\"[\"===t[e+7])for(e+=8;e\"===t[e+2]){e+=2;break}return e}e.validate=function(t,e){e=Object.assign({},o,e);const n=[];let u=!1,c=!1;\"\\ufeff\"===t[0]&&(t=t.substr(1));for(let o=0;o\"!==t[o]&&\" \"!==t[o]&&\"\\t\"!==t[o]&&\"\\n\"!==t[o]&&\"\\r\"!==t[o];o++)v+=t[o];if(v=v.trim(),\"/\"===v[v.length-1]&&(v=v.substring(0,v.length-1),o--),h=v,!r.isName(h)){let e;return e=0===v.trim().length?\"Invalid space after '<'.\":\"Tag '\"+v+\"' is an invalid name.\",d(\"InvalidTag\",e,m(t,o))}const b=l(t,o);if(!1===b)return d(\"InvalidAttr\",\"Attributes for '\"+v+\"' have open quote.\",m(t,o));let w=b.value;if(o=b.index,\"/\"===w[w.length-1]){const n=o-w.length;w=w.substring(0,w.length-1);const r=p(w,e);if(!0!==r)return d(r.err.code,r.err.msg,m(t,n+r.err.line));u=!0}else if(y){if(!b.tagClosed)return d(\"InvalidTag\",\"Closing tag '\"+v+\"' doesn't have proper closing.\",m(t,o));if(w.trim().length>0)return d(\"InvalidTag\",\"Closing tag '\"+v+\"' can't have attributes or invalid starting.\",m(t,g));if(0===n.length)return d(\"InvalidTag\",\"Closing tag '\"+v+\"' has not been opened.\",m(t,g));{const e=n.pop();if(v!==e.tagName){let n=m(t,e.tagStartPos);return d(\"InvalidTag\",\"Expected closing tag '\"+e.tagName+\"' (opened in line \"+n.line+\", col \"+n.col+\") instead of closing tag '\"+v+\"'.\",m(t,g))}0==n.length&&(c=!0)}}else{const r=p(w,e);if(!0!==r)return d(r.err.code,r.err.msg,m(t,o-w.length+r.err.line));if(!0===c)return d(\"InvalidXml\",\"Multiple possible root nodes found.\",m(t,o));-1!==e.unpairedTags.indexOf(v)||n.push({tagName:v,tagStartPos:g}),u=!0}for(o++;o0)||d(\"InvalidXml\",\"Invalid '\"+JSON.stringify(n.map((t=>t.tagName)),null,4).replace(/\\r?\\n/g,\"\")+\"' found.\",{line:1,col:1}):d(\"InvalidXml\",\"Start tag expected.\",1)};const u='\"',c=\"'\";function l(t,e){let n=\"\",r=\"\",o=!1;for(;e\"===t[e]&&\"\"===r){o=!0;break}n+=t[e]}return\"\"===r&&{value:n,index:e,tagClosed:o}}const h=new RegExp(\"(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\\\"])(([\\\\s\\\\S])*?)\\\\5)?\",\"g\");function p(t,e){const n=r.getAllMatches(t,h),o={};for(let t=0;t{const r=n(87),o={attributeNamePrefix:\"@_\",attributesGroupName:!1,textNodeName:\"#text\",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:\" \",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp(\"&\",\"g\"),val:\"&\"},{regex:new RegExp(\">\",\"g\"),val:\">\"},{regex:new RegExp(\"<\",\"g\"),val:\"<\"},{regex:new RegExp(\"'\",\"g\"),val:\"'\"},{regex:new RegExp('\"',\"g\"),val:\""\"}],processEntities:!0,stopNodes:[],oneListGroup:!1};function i(t){this.options=Object.assign({},o,t),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=u),this.processTextOrObjNode=s,this.options.format?(this.indentate=a,this.tagEndChar=\">\\n\",this.newLine=\"\\n\"):(this.indentate=function(){return\"\"},this.tagEndChar=\">\",this.newLine=\"\")}function s(t,e,n){const r=this.j2x(t,n+1);return void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,r.attrStr,n):this.buildObjectNode(r.val,e,r.attrStr,n)}function a(t){return this.options.indentBy.repeat(t)}function u(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}i.prototype.build=function(t){return this.options.preserveOrder?r(t,this.options):(Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t}),this.j2x(t,0).val)},i.prototype.j2x=function(t,e){let n=\"\",r=\"\";for(let o in t)if(Object.prototype.hasOwnProperty.call(t,o))if(void 0===t[o])this.isAttribute(o)&&(r+=\"\");else if(null===t[o])this.isAttribute(o)?r+=\"\":\"?\"===o[0]?r+=this.indentate(e)+\"<\"+o+\"?\"+this.tagEndChar:r+=this.indentate(e)+\"<\"+o+\"/\"+this.tagEndChar;else if(t[o]instanceof Date)r+=this.buildTextValNode(t[o],o,\"\",e);else if(\"object\"!=typeof t[o]){const i=this.isAttribute(o);if(i)n+=this.buildAttrPairStr(i,\"\"+t[o]);else if(o===this.options.textNodeName){let e=this.options.tagValueProcessor(o,\"\"+t[o]);r+=this.replaceEntitiesValue(e)}else r+=this.buildTextValNode(t[o],o,\"\",e)}else if(Array.isArray(t[o])){const n=t[o].length;let i=\"\",s=\"\";for(let a=0;a\"+t+o}},i.prototype.closeTag=function(t){let e=\"\";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e=\"/\"):e=this.options.suppressEmptyNode?\"/\":`>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(r)+`\\x3c!--${t}--\\x3e`+this.newLine;if(\"?\"===e[0])return this.indentate(r)+\"<\"+e+n+\"?\"+this.tagEndChar;{let o=this.options.tagValueProcessor(e,t);return o=this.replaceEntitiesValue(o),\"\"===o?this.indentate(r)+\"<\"+e+n+this.closeTag(e)+this.tagEndChar:this.indentate(r)+\"<\"+e+n+\">\"+o+\"0&&this.options.processEntities)for(let e=0;e{function e(t,s,a,u){let c=\"\",l=!1;for(let h=0;h`,l=!1;continue}if(f===s.commentPropName){c+=u+`\\x3c!--${p[f][0][s.textNodeName]}--\\x3e`,l=!0;continue}if(\"?\"===f[0]){const t=r(p[\":@\"],s),e=\"?xml\"===f?\"\":u;let n=p[f][0][s.textNodeName];n=0!==n.length?\" \"+n:\"\",c+=e+`<${f}${n}${t}?>`,l=!0;continue}let g=u;\"\"!==g&&(g+=s.indentBy);const m=u+`<${f}${r(p[\":@\"],s)}`,y=e(p[f],s,d,g);-1!==s.unpairedTags.indexOf(f)?s.suppressUnpairedNode?c+=m+\">\":c+=m+\"/>\":y&&0!==y.length||!s.suppressEmptyNode?y&&y.endsWith(\">\")?c+=m+`>${y}${u}`:(c+=m+\">\",y&&\"\"!==u&&(y.includes(\"/>\")||y.includes(\"`):c+=m+\"/>\",l=!0}return c}function n(t){const e=Object.keys(t);for(let n=0;n0&&e.processEntities)for(let n=0;n0&&(r=\"\\n\"),e(t,n,\"\",r)}},193:(t,e,n)=>{const r=n(705);function o(t,e){let n=\"\";for(;e\"===t[e]){if(p?\"-\"===t[e-1]&&\"-\"===t[e-2]&&(p=!1,r--):r--,0===r)break}else\"[\"===t[e]?h=!0:f+=t[e];else{if(h&&s(t,e))e+=7,[entityName,val,e]=o(t,e+1),-1===val.indexOf(\"&\")&&(n[l(entityName)]={regx:RegExp(`&${entityName};`,\"g\"),val});else if(h&&a(t,e))e+=8;else if(h&&u(t,e))e+=8;else if(h&&c(t,e))e+=9;else{if(!i)throw new Error(\"Invalid DOCTYPE\");p=!0}r++,f=\"\"}if(0!==r)throw new Error(\"Unclosed DOCTYPE\")}return{entities:n,i:e}}},63:(t,e)=>{const n={preserveOrder:!1,attributeNamePrefix:\"@_\",attributesGroupName:!1,textNodeName:\"#text\",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,n){return t}};e.buildOptions=function(t){return Object.assign({},n,t)},e.defaultOptions=n},299:(t,e,n)=>{const r=n(705),o=n(365),i=n(193),s=n(494);function a(t){const e=Object.keys(t);for(let n=0;n0)){s||(t=this.replaceEntitiesValue(t));const r=this.options.tagValueProcessor(e,t,n,o,i);return null==r?t:typeof r!=typeof t||r!==t?r:this.options.trimValues||t.trim()===t?w(t,this.options.parseTagValue,this.options.numberParseOptions):t}}function c(t){if(this.options.removeNSPrefix){const e=t.split(\":\"),n=\"/\"===t.charAt(0)?\"/\":\"\";if(\"xmlns\"===e[0])return\"\";2===e.length&&(t=n+e[1])}return t}const l=new RegExp(\"([^\\\\s=]+)\\\\s*(=\\\\s*(['\\\"])([\\\\s\\\\S]*?)\\\\3)?\",\"gm\");function h(t,e,n){if(!this.options.ignoreAttributes&&\"string\"==typeof t){const n=r.getAllMatches(t,l),o=n.length,i={};for(let t=0;t\",a,\"Closing Tag is not closed.\");let o=t.substring(a+2,e).trim();if(this.options.removeNSPrefix){const t=o.indexOf(\":\");-1!==t&&(o=o.substr(t+1))}this.options.transformTagName&&(o=this.options.transformTagName(o)),n&&(r=this.saveTextToParentTag(r,n,s));const i=s.substring(s.lastIndexOf(\".\")+1);if(o&&-1!==this.options.unpairedTags.indexOf(o))throw new Error(`Unpaired tag can not be used as closing tag: `);let u=0;i&&-1!==this.options.unpairedTags.indexOf(i)?(u=s.lastIndexOf(\".\",s.lastIndexOf(\".\")-1),this.tagsNodeStack.pop()):u=s.lastIndexOf(\".\"),s=s.substring(0,u),n=this.tagsNodeStack.pop(),r=\"\",a=e}else if(\"?\"===t[a+1]){let e=v(t,a,!1,\"?>\");if(!e)throw new Error(\"Pi Tag is not closed.\");if(r=this.saveTextToParentTag(r,n,s),this.options.ignoreDeclaration&&\"?xml\"===e.tagName||this.options.ignorePiTags);else{const t=new o(e.tagName);t.add(this.options.textNodeName,\"\"),e.tagName!==e.tagExp&&e.attrExpPresent&&(t[\":@\"]=this.buildAttributesMap(e.tagExp,s,e.tagName)),this.addChild(n,t,s)}a=e.closeIndex+1}else if(\"!--\"===t.substr(a+1,3)){const e=y(t,\"--\\x3e\",a+4,\"Comment is not closed.\");if(this.options.commentPropName){const o=t.substring(a+4,e-2);r=this.saveTextToParentTag(r,n,s),n.add(this.options.commentPropName,[{[this.options.textNodeName]:o}])}a=e}else if(\"!D\"===t.substr(a+1,2)){const e=i(t,a);this.docTypeEntities=e.entities,a=e.i}else if(\"![\"===t.substr(a+1,2)){const e=y(t,\"]]>\",a,\"CDATA is not closed.\")-2,o=t.substring(a+9,e);r=this.saveTextToParentTag(r,n,s);let i=this.parseTextData(o,n.tagname,s,!0,!1,!0,!0);null==i&&(i=\"\"),this.options.cdataPropName?n.add(this.options.cdataPropName,[{[this.options.textNodeName]:o}]):n.add(this.options.textNodeName,i),a=e+2}else{let i=v(t,a,this.options.removeNSPrefix),u=i.tagName;const c=i.rawTagName;let l=i.tagExp,h=i.attrExpPresent,p=i.closeIndex;this.options.transformTagName&&(u=this.options.transformTagName(u)),n&&r&&\"!xml\"!==n.tagname&&(r=this.saveTextToParentTag(r,n,s,!1));const f=n;if(f&&-1!==this.options.unpairedTags.indexOf(f.tagname)&&(n=this.tagsNodeStack.pop(),s=s.substring(0,s.lastIndexOf(\".\"))),u!==e.tagname&&(s+=s?\".\"+u:u),this.isItStopNode(this.options.stopNodes,s,u)){let e=\"\";if(l.length>0&&l.lastIndexOf(\"/\")===l.length-1)\"/\"===u[u.length-1]?(u=u.substr(0,u.length-1),s=s.substr(0,s.length-1),l=u):l=l.substr(0,l.length-1),a=i.closeIndex;else if(-1!==this.options.unpairedTags.indexOf(u))a=i.closeIndex;else{const n=this.readStopNodeData(t,c,p+1);if(!n)throw new Error(`Unexpected end of ${c}`);a=n.i,e=n.tagContent}const r=new o(u);u!==l&&h&&(r[\":@\"]=this.buildAttributesMap(l,s,u)),e&&(e=this.parseTextData(e,u,s,!0,h,!0,!0)),s=s.substr(0,s.lastIndexOf(\".\")),r.add(this.options.textNodeName,e),this.addChild(n,r,s)}else{if(l.length>0&&l.lastIndexOf(\"/\")===l.length-1){\"/\"===u[u.length-1]?(u=u.substr(0,u.length-1),s=s.substr(0,s.length-1),l=u):l=l.substr(0,l.length-1),this.options.transformTagName&&(u=this.options.transformTagName(u));const t=new o(u);u!==l&&h&&(t[\":@\"]=this.buildAttributesMap(l,s,u)),this.addChild(n,t,s),s=s.substr(0,s.lastIndexOf(\".\"))}else{const t=new o(u);this.tagsNodeStack.push(n),u!==l&&h&&(t[\":@\"]=this.buildAttributesMap(l,s,u)),this.addChild(n,t,s),n=t}r=\"\",a=p}}else r+=t[a];return e.child};function f(t,e,n){const r=this.options.updateTag(e.tagname,n,e[\":@\"]);!1===r||(\"string\"==typeof r?(e.tagname=r,t.addChild(e)):t.addChild(e))}const d=function(t){if(this.options.processEntities){for(let e in this.docTypeEntities){const n=this.docTypeEntities[e];t=t.replace(n.regx,n.val)}for(let e in this.lastEntities){const n=this.lastEntities[e];t=t.replace(n.regex,n.val)}if(this.options.htmlEntities)for(let e in this.htmlEntities){const n=this.htmlEntities[e];t=t.replace(n.regex,n.val)}t=t.replace(this.ampEntity.regex,this.ampEntity.val)}return t};function g(t,e,n,r){return t&&(void 0===r&&(r=0===Object.keys(e.child).length),void 0!==(t=this.parseTextData(t,e.tagname,n,!1,!!e[\":@\"]&&0!==Object.keys(e[\":@\"]).length,r))&&\"\"!==t&&e.add(this.options.textNodeName,t),t=\"\"),t}function m(t,e,n){const r=\"*.\"+n;for(const n in t){const o=t[n];if(r===o||e===o)return!0}return!1}function y(t,e,n,r){const o=t.indexOf(e,n);if(-1===o)throw new Error(r);return o+e.length-1}function v(t,e,n){const r=function(t,e){let n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\">\",o=\"\";for(let i=e;i3&&void 0!==arguments[3]?arguments[3]:\">\");if(!r)return;let o=r.data;const i=r.index,s=o.search(/\\s/);let a=o,u=!0;-1!==s&&(a=o.substring(0,s),o=o.substring(s+1).trimStart());const c=a;if(n){const t=a.indexOf(\":\");-1!==t&&(a=a.substr(t+1),u=a!==r.data.substr(t+1))}return{tagName:a,tagExp:o,closeIndex:i,attrExpPresent:u,rawTagName:c}}function b(t,e,n){const r=n;let o=1;for(;n\",n,`${e} is not closed`);if(t.substring(n+2,i).trim()===e&&(o--,0===o))return{tagContent:t.substring(r,n),i};n=i}else if(\"?\"===t[n+1])n=y(t,\"?>\",n+1,\"StopNode is not closed.\");else if(\"!--\"===t.substr(n+1,3))n=y(t,\"--\\x3e\",n+3,\"StopNode is not closed.\");else if(\"![\"===t.substr(n+1,2))n=y(t,\"]]>\",n,\"StopNode is not closed.\")-2;else{const r=v(t,n,\">\");r&&((r&&r.tagName)===e&&\"/\"!==r.tagExp[r.tagExp.length-1]&&o++,n=r.closeIndex)}}function w(t,e,n){if(e&&\"string\"==typeof t){const e=t.trim();return\"true\"===e||\"false\"!==e&&s(t,n)}return r.isExist(t)?t:\"\"}t.exports=class{constructor(t){this.options=t,this.currentNode=null,this.tagsNodeStack=[],this.docTypeEntities={},this.lastEntities={apos:{regex:/&(apos|#39|#x27);/g,val:\"'\"},gt:{regex:/&(gt|#62|#x3E);/g,val:\">\"},lt:{regex:/&(lt|#60|#x3C);/g,val:\"<\"},quot:{regex:/&(quot|#34|#x22);/g,val:'\"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:\"&\"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:\" \"},cent:{regex:/&(cent|#162);/g,val:\"¢\"},pound:{regex:/&(pound|#163);/g,val:\"£\"},yen:{regex:/&(yen|#165);/g,val:\"¥\"},euro:{regex:/&(euro|#8364);/g,val:\"€\"},copyright:{regex:/&(copy|#169);/g,val:\"©\"},reg:{regex:/&(reg|#174);/g,val:\"®\"},inr:{regex:/&(inr|#8377);/g,val:\"₹\"},num_dec:{regex:/&#([0-9]{1,7});/g,val:(t,e)=>String.fromCharCode(Number.parseInt(e,10))},num_hex:{regex:/&#x([0-9a-fA-F]{1,6});/g,val:(t,e)=>String.fromCharCode(Number.parseInt(e,16))}},this.addExternalEntities=a,this.parseXml=p,this.parseTextData=u,this.resolveNameSpace=c,this.buildAttributesMap=h,this.isItStopNode=m,this.replaceEntitiesValue=d,this.readStopNodeData=b,this.saveTextToParentTag=g,this.addChild=f}}},338:(t,e,n)=>{const{buildOptions:r}=n(63),o=n(299),{prettify:i}=n(728),s=n(31);t.exports=class{constructor(t){this.externalEntities={},this.options=r(t)}parse(t,e){if(\"string\"==typeof t);else{if(!t.toString)throw new Error(\"XML data is accepted in String or Bytes[] form.\");t=t.toString()}if(e){!0===e&&(e={});const n=s.validate(t,e);if(!0!==n)throw Error(`${n.err.msg}:${n.err.line}:${n.err.col}`)}const n=new o(this.options);n.addExternalEntities(this.externalEntities);const r=n.parseXml(t);return this.options.preserveOrder||void 0===r?r:i(r,this.options)}addEntity(t,e){if(-1!==e.indexOf(\"&\"))throw new Error(\"Entity value can't have '&'\");if(-1!==t.indexOf(\"&\")||-1!==t.indexOf(\";\"))throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for ' '\");if(\"&\"===e)throw new Error(\"An entity with value '&' is not permitted\");this.externalEntities[t]=e}}},728:(t,e)=>{function n(t,e,s){let a;const u={};for(let c=0;c0&&(u[e.textNodeName]=a):void 0!==a&&(u[e.textNodeName]=a),u}function r(t){const e=Object.keys(t);for(let t=0;t{t.exports=class{constructor(t){this.tagname=t,this.child=[],this[\":@\"]={}}add(t,e){\"__proto__\"===t&&(t=\"#__proto__\"),this.child.push({[t]:e})}addChild(t){\"__proto__\"===t.tagname&&(t.tagname=\"#__proto__\"),t[\":@\"]&&Object.keys(t[\":@\"]).length>0?this.child.push({[t.tagname]:t.child,\":@\":t[\":@\"]}):this.child.push({[t.tagname]:t.child})}}},135:t=>{function e(t){return!!t.constructor&&\"function\"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}t.exports=function(t){return null!=t&&(e(t)||function(t){return\"function\"==typeof t.readFloatLE&&\"function\"==typeof t.slice&&e(t.slice(0,0))}(t)||!!t._isBuffer)}},542:(t,e,n)=>{!function(){var e=n(298),r=n(526).utf8,o=n(135),i=n(526).bin,s=function(t,n){t.constructor==String?t=n&&\"binary\"===n.encoding?i.stringToBytes(t):r.stringToBytes(t):o(t)?t=Array.prototype.slice.call(t,0):Array.isArray(t)||t.constructor===Uint8Array||(t=t.toString());for(var a=e.bytesToWords(t),u=8*t.length,c=1732584193,l=-271733879,h=-1732584194,p=271733878,f=0;f>>24)|4278255360&(a[f]<<24|a[f]>>>8);a[u>>>5]|=128<>>9<<4)]=u;var d=s._ff,g=s._gg,m=s._hh,y=s._ii;for(f=0;f>>0,l=l+b>>>0,h=h+w>>>0,p=p+x>>>0}return e.endian([c,l,h,p])};s._ff=function(t,e,n,r,o,i,s){var a=t+(e&n|~e&r)+(o>>>0)+s;return(a<>>32-i)+e},s._gg=function(t,e,n,r,o,i,s){var a=t+(e&r|n&~r)+(o>>>0)+s;return(a<>>32-i)+e},s._hh=function(t,e,n,r,o,i,s){var a=t+(e^n^r)+(o>>>0)+s;return(a<>>32-i)+e},s._ii=function(t,e,n,r,o,i,s){var a=t+(n^(e|~r))+(o>>>0)+s;return(a<>>32-i)+e},s._blocksize=16,s._digestsize=16,t.exports=function(t,n){if(null==t)throw new Error(\"Illegal argument \"+t);var r=e.wordsToBytes(s(t,n));return n&&n.asBytes?r:n&&n.asString?i.bytesToString(r):e.bytesToHex(r)}}()},285:(t,e,n)=>{var r=n(2);t.exports=function(t){return t?(\"{}\"===t.substr(0,2)&&(t=\"\\\\{\\\\}\"+t.substr(2)),m(function(t){return t.split(\"\\\\\\\\\").join(o).split(\"\\\\{\").join(i).split(\"\\\\}\").join(s).split(\"\\\\,\").join(a).split(\"\\\\.\").join(u)}(t),!0).map(l)):[]};var o=\"\\0SLASH\"+Math.random()+\"\\0\",i=\"\\0OPEN\"+Math.random()+\"\\0\",s=\"\\0CLOSE\"+Math.random()+\"\\0\",a=\"\\0COMMA\"+Math.random()+\"\\0\",u=\"\\0PERIOD\"+Math.random()+\"\\0\";function c(t){return parseInt(t,10)==t?parseInt(t,10):t.charCodeAt(0)}function l(t){return t.split(o).join(\"\\\\\").split(i).join(\"{\").split(s).join(\"}\").split(a).join(\",\").split(u).join(\".\")}function h(t){if(!t)return[\"\"];var e=[],n=r(\"{\",\"}\",t);if(!n)return t.split(\",\");var o=n.pre,i=n.body,s=n.post,a=o.split(\",\");a[a.length-1]+=\"{\"+i+\"}\";var u=h(s);return s.length&&(a[a.length-1]+=u.shift(),a.push.apply(a,u)),e.push.apply(e,a),e}function p(t){return\"{\"+t+\"}\"}function f(t){return/^-?0\\d/.test(t)}function d(t,e){return t<=e}function g(t,e){return t>=e}function m(t,e){var n=[],o=r(\"{\",\"}\",t);if(!o)return[t];var i=o.pre,a=o.post.length?m(o.post,!1):[\"\"];if(/\\$$/.test(o.pre))for(var u=0;u=0;if(!x&&!N)return o.post.match(/,.*\\}/)?m(t=o.pre+\"{\"+o.body+s+o.post):[t];if(x)y=o.body.split(/\\.\\./);else if(1===(y=h(o.body)).length&&1===(y=m(y[0],!1).map(p)).length)return a.map((function(t){return o.pre+y[0]+t}));if(x){var P=c(y[0]),A=c(y[1]),O=Math.max(y[0].length,y[1].length),E=3==y.length?Math.abs(c(y[2])):1,T=d;A0){var I=new Array(C+1).join(\"0\");$=S<0?\"-\"+I+$.slice(1):I+$}}v.push($)}}else{v=[];for(var k=0;k{function e(t){return e=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},e(t)}function n(t){var e=\"function\"==typeof Map?new Map:void 0;return n=function(t){if(null===t||(n=t,-1===Function.toString.call(n).indexOf(\"[native code]\")))return t;var n;if(\"function\"!=typeof t)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,s)}function s(){return r(t,arguments,i(this).constructor)}return s.prototype=Object.create(t.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),o(s,t)},n(t)}function r(t,e,n){return r=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}()?Reflect.construct:function(t,e,n){var r=[null];r.push.apply(r,e);var i=new(Function.bind.apply(t,r));return n&&o(i,n.prototype),i},r.apply(null,arguments)}function o(t,e){return o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},o(t,e)}function i(t){return i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},i(t)}var s=function(t){function n(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,n),(r=function(t,n){return!n||\"object\"!==e(n)&&\"function\"!=typeof n?function(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}(t):n}(this,i(n).call(this,t))).name=\"ObjectPrototypeMutationError\",r}return function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)}(n,t),n}(n(Error));function a(t,n){for(var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},o=n.split(\".\"),i=o.length,s=function(e){var n=o[e];if(!t)return{v:void 0};if(\"+\"===n){if(Array.isArray(t))return{v:t.map((function(n,i){var s=o.slice(e+1);return s.length>0?a(n,s.join(\".\"),r):r(t,i,o,e)}))};var i=o.slice(0,e).join(\".\");throw new Error(\"Object at wildcard (\".concat(i,\") is not an array\"))}t=r(t,n,o,e)},u=0;u2&&void 0!==arguments[2]?arguments[2]:{};if(\"object\"!=e(t)||null===t)return!1;if(void 0===n)return!1;if(\"number\"==typeof n)return n in t;try{var o=!1;return a(t,n,(function(t,e,n,i){if(!u(n,i))return t&&t[e];o=r.own?t.hasOwnProperty(e):e in t})),o}catch(t){return!1}},hasOwn:function(t,e,n){return this.has(t,e,n||{own:!0})},isIn:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(\"object\"!=e(t)||null===t)return!1;if(void 0===n)return!1;try{var i=!1,s=!1;return a(t,n,(function(t,n,o,a){return i=i||t===r||!!t&&t[n]===r,s=u(o,a)&&\"object\"===e(t)&&n in t,t&&t[n]})),o.validPath?i&&s:i}catch(t){return!1}},ObjectPrototypeMutationError:s}},47:(t,e,n)=>{var r=n(410),o=function(t){return\"string\"==typeof t};function i(t,e){for(var n=[],r=0;r=-1&&!e;n--){var r=n>=0?arguments[n]:process.cwd();if(!o(r))throw new TypeError(\"Arguments to path.resolve must be strings\");r&&(t=r+\"/\"+t,e=\"/\"===r.charAt(0))}return(e?\"/\":\"\")+(t=i(t.split(\"/\"),!e).join(\"/\"))||\".\"},a.normalize=function(t){var e=a.isAbsolute(t),n=\"/\"===t.substr(-1);return(t=i(t.split(\"/\"),!e).join(\"/\"))||e||(t=\".\"),t&&n&&(t+=\"/\"),(e?\"/\":\"\")+t},a.isAbsolute=function(t){return\"/\"===t.charAt(0)},a.join=function(){for(var t=\"\",e=0;e=0&&\"\"===t[n];n--);return e>n?[]:t.slice(e,n+1)}t=a.resolve(t).substr(1),e=a.resolve(e).substr(1);for(var r=n(t.split(\"/\")),o=n(e.split(\"/\")),i=Math.min(r.length,o.length),s=i,u=0;u{var n=Object.prototype.hasOwnProperty;function r(t){try{return decodeURIComponent(t.replace(/\\+/g,\" \"))}catch(t){return null}}function o(t){try{return encodeURIComponent(t)}catch(t){return null}}e.stringify=function(t,e){e=e||\"\";var r,i,s=[];for(i in\"string\"!=typeof e&&(e=\"?\"),t)if(n.call(t,i)){if((r=t[i])||null!=r&&!isNaN(r)||(r=\"\"),i=o(i),r=o(r),null===i||null===r)continue;s.push(i+\"=\"+r)}return s.length?e+s.join(\"&\"):\"\"},e.parse=function(t){for(var e,n=/([^=?#&]+)=?([^&]*)/g,o={};e=n.exec(t);){var i=r(e[1]),s=r(e[2]);null===i||null===s||i in o||(o[i]=s)}return o}},670:t=>{t.exports=function(t,e){if(e=e.split(\":\")[0],!(t=+t))return!1;switch(e){case\"http\":case\"ws\":return 80!==t;case\"https\":case\"wss\":return 443!==t;case\"ftp\":return 21!==t;case\"gopher\":return 70!==t;case\"file\":return!1}return 0!==t}},494:t=>{const e=/^[-+]?0x[a-fA-F0-9]+$/,n=/^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);const r={hex:!0,leadingZeros:!0,decimalPoint:\".\",eNotation:!0};t.exports=function(t){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(o=Object.assign({},r,o),!t||\"string\"!=typeof t)return t;let i=t.trim();if(void 0!==o.skipLike&&o.skipLike.test(i))return t;if(o.hex&&e.test(i))return Number.parseInt(i,16);{const e=n.exec(i);if(e){const n=e[1],r=e[2];let a=(s=e[3])&&-1!==s.indexOf(\".\")?(\".\"===(s=s.replace(/0+$/,\"\"))?s=\"0\":\".\"===s[0]?s=\"0\"+s:\".\"===s[s.length-1]&&(s=s.substr(0,s.length-1)),s):s;const u=e[4]||e[6];if(!o.leadingZeros&&r.length>0&&n&&\".\"!==i[2])return t;if(!o.leadingZeros&&r.length>0&&!n&&\".\"!==i[1])return t;{const e=Number(i),s=\"\"+e;return-1!==s.search(/[eE]/)||u?o.eNotation?e:t:-1!==i.indexOf(\".\")?\"0\"===s&&\"\"===a||s===a||n&&s===\"-\"+a?e:t:r?a===s||n+a===s?e:t:i===s||i===n+s?e:t}}return t}var s}},737:(t,e,n)=>{var r=n(670),o=n(647),i=/^[\\x00-\\x20\\u00a0\\u1680\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000\\ufeff]+/,s=/[\\n\\r\\t]/g,a=/^[A-Za-z][A-Za-z0-9+-.]*:\\/\\//,u=/:\\d+$/,c=/^([a-z][a-z0-9.+-]*:)?(\\/\\/)?([\\\\/]+)?([\\S\\s]*)/i,l=/^[a-zA-Z]:/;function h(t){return(t||\"\").toString().replace(i,\"\")}var p=[[\"#\",\"hash\"],[\"?\",\"query\"],function(t,e){return g(e.protocol)?t.replace(/\\\\/g,\"/\"):t},[\"/\",\"pathname\"],[\"@\",\"auth\",1],[NaN,\"host\",void 0,1,1],[/:(\\d*)$/,\"port\",void 0,1],[NaN,\"hostname\",void 0,1,1]],f={hash:1,query:1};function d(t){var e,n=(\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{}).location||{},r={},o=typeof(t=t||n);if(\"blob:\"===t.protocol)r=new y(unescape(t.pathname),{});else if(\"string\"===o)for(e in r=new y(t,{}),f)delete r[e];else if(\"object\"===o){for(e in t)e in f||(r[e]=t[e]);void 0===r.slashes&&(r.slashes=a.test(t.href))}return r}function g(t){return\"file:\"===t||\"ftp:\"===t||\"http:\"===t||\"https:\"===t||\"ws:\"===t||\"wss:\"===t}function m(t,e){t=(t=h(t)).replace(s,\"\"),e=e||{};var n,r=c.exec(t),o=r[1]?r[1].toLowerCase():\"\",i=!!r[2],a=!!r[3],u=0;return i?a?(n=r[2]+r[3]+r[4],u=r[2].length+r[3].length):(n=r[2]+r[4],u=r[2].length):a?(n=r[3]+r[4],u=r[3].length):n=r[4],\"file:\"===o?u>=2&&(n=n.slice(2)):g(o)?n=r[4]:o?i&&(n=n.slice(2)):u>=2&&g(e.protocol)&&(n=r[4]),{protocol:o,slashes:i||g(o),slashesCount:u,rest:n}}function y(t,e,n){if(t=(t=h(t)).replace(s,\"\"),!(this instanceof y))return new y(t,e,n);var i,a,u,c,f,v,b=p.slice(),w=typeof e,x=this,N=0;for(\"object\"!==w&&\"string\"!==w&&(n=e,e=null),n&&\"function\"!=typeof n&&(n=o.parse),i=!(a=m(t||\"\",e=d(e))).protocol&&!a.slashes,x.slashes=a.slashes||i&&e.slashes,x.protocol=a.protocol||e.protocol||\"\",t=a.rest,(\"file:\"===a.protocol&&(2!==a.slashesCount||l.test(t))||!a.slashes&&(a.protocol||a.slashesCount<2||!g(x.protocol)))&&(b[3]=[/(.*)/,\"pathname\"]);N{},388:()=>{},805:()=>{},345:()=>{},800:()=>{}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={id:r,loaded:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.loaded=!0,i.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.nmd=t=>(t.paths=[],t.children||(t.children=[]),t);var r={};n.d(r,{hT:()=>C,O4:()=>I,Kd:()=>S,YK:()=>$,UU:()=>en,Gu:()=>F,ky:()=>oe,h4:()=>ne,ch:()=>re,hq:()=>Xt,i5:()=>ie});var o=n(737),i=n.n(o);function s(t){if(!a(t))throw new Error(\"Parameter was not an error\")}function a(t){return!!t&&\"object\"==typeof t&&\"[object Error]\"===(e=t,Object.prototype.toString.call(e))||t instanceof Error;var e}class u extends Error{constructor(t,e){const n=[...arguments],{options:r,shortMessage:o}=function(t){let e,n=\"\";if(0===t.length)e={};else if(a(t[0]))e={cause:t[0]},n=t.slice(1).join(\" \")||\"\";else if(t[0]&&\"object\"==typeof t[0])e=Object.assign({},t[0]),n=t.slice(1).join(\" \")||\"\";else{if(\"string\"!=typeof t[0])throw new Error(\"Invalid arguments passed to Layerr\");e={},n=n=t.join(\" \")||\"\"}return{options:e,shortMessage:n}}(n);let i=o;if(r.cause&&(i=`${i}: ${r.cause.message}`),super(i),this.message=i,r.name&&\"string\"==typeof r.name?this.name=r.name:this.name=\"Layerr\",r.cause&&Object.defineProperty(this,\"_cause\",{value:r.cause}),Object.defineProperty(this,\"_info\",{value:{}}),r.info&&\"object\"==typeof r.info&&Object.assign(this._info,r.info),Error.captureStackTrace){const t=r.constructorOpt||this.constructor;Error.captureStackTrace(this,t)}}static cause(t){return s(t),t._cause&&a(t._cause)?t._cause:null}static fullStack(t){s(t);const e=u.cause(t);return e?`${t.stack}\\ncaused by: ${u.fullStack(e)}`:t.stack??\"\"}static info(t){s(t);const e={},n=u.cause(t);return n&&Object.assign(e,u.info(n)),t._info&&Object.assign(e,t._info),e}toString(){let t=this.name||this.constructor.name||this.constructor.prototype.name;return this.message&&(t=`${t}: ${this.message}`),t}}var c=n(47),l=n.n(c);const h=\"__PATH_SEPARATOR_POSIX__\",p=\"__PATH_SEPARATOR_WINDOWS__\";function f(t){try{const e=t.replace(/\\//g,h).replace(/\\\\\\\\/g,p);return encodeURIComponent(e).split(p).join(\"\\\\\\\\\").split(h).join(\"/\")}catch(t){throw new u(t,\"Failed encoding path\")}}function d(t){return t.startsWith(\"/\")?t:\"/\"+t}function g(t){let e=t;return\"/\"!==e[0]&&(e=\"/\"+e),/^.+\\/$/.test(e)&&(e=e.substr(0,e.length-1)),e}function m(t){let e=new(i())(t).pathname;return e.length<=0&&(e=\"/\"),g(e)}function y(){for(var t=arguments.length,e=new Array(t),n=0;n1){var n=t.shift();t[0]=n+t[0]}t[0].match(/^file:\\/\\/\\//)?t[0]=t[0].replace(/^([^/:]+):\\/*/,\"$1:///\"):t[0]=t[0].replace(/^([^/:]+):\\/*/,\"$1://\");for(var r=0;r0&&(o=o.replace(/^[\\/]+/,\"\")),o=r0?\"?\":\"\")+s.join(\"&\")}(\"object\"==typeof arguments[0]?arguments[0]:[].slice.call(arguments))}(e.reduce(((t,e,n)=>((0===n||\"/\"!==e||\"/\"===e&&\"/\"!==t[t.length-1])&&t.push(e),t)),[]))}var v=n(542),b=n.n(v);const w=\"abcdef0123456789\";function x(t,e){const n=t.url.replace(\"//\",\"\"),r=-1==n.indexOf(\"/\")?\"/\":n.slice(n.indexOf(\"/\")),o=t.method?t.method.toUpperCase():\"GET\",i=!!/(^|,)\\s*auth\\s*($|,)/.test(e.qop)&&\"auth\",s=`00000000${e.nc}`.slice(-8),a=function(t,e,n,r,o,i,s){const a=s||b()(`${e}:${n}:${r}`);return t&&\"md5-sess\"===t.toLowerCase()?b()(`${a}:${o}:${i}`):a}(e.algorithm,e.username,e.realm,e.password,e.nonce,e.cnonce,e.ha1),u=b()(`${o}:${r}`),c=i?b()(`${a}:${e.nonce}:${s}:${e.cnonce}:${i}:${u}`):b()(`${a}:${e.nonce}:${u}`),l={username:e.username,realm:e.realm,nonce:e.nonce,uri:r,qop:i,response:c,nc:s,cnonce:e.cnonce,algorithm:e.algorithm,opaque:e.opaque},h=[];for(const t in l)l[t]&&(\"qop\"===t||\"nc\"===t||\"algorithm\"===t?h.push(`${t}=${l[t]}`):h.push(`${t}=\"${l[t]}\"`));return`Digest ${h.join(\", \")}`}function N(t){return\"digest\"===(t.headers&&t.headers.get(\"www-authenticate\")||\"\").split(/\\s/)[0].toLowerCase()}var P=n(101),A=n.n(P);function O(t){return A().decode(t)}function E(t,e){var n;return`Basic ${n=`${t}:${e}`,A().encode(n)}`}const T=\"undefined\"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:\"undefined\"!=typeof window?window:globalThis,j=T.fetch.bind(T),S=(T.Headers,T.Request),$=T.Response;let C=function(t){return t.Auto=\"auto\",t.Digest=\"digest\",t.None=\"none\",t.Password=\"password\",t.Token=\"token\",t}({}),I=function(t){return t.DataTypeNoLength=\"data-type-no-length\",t.InvalidAuthType=\"invalid-auth-type\",t.InvalidOutputFormat=\"invalid-output-format\",t.LinkUnsupportedAuthType=\"link-unsupported-auth\",t.InvalidUpdateRange=\"invalid-update-range\",t.NotSupported=\"not-supported\",t}({});function k(t,e,n,r,o){switch(t.authType){case C.Auto:e&&n&&(t.headers.Authorization=E(e,n));break;case C.Digest:t.digest=function(t,e,n){return{username:t,password:e,ha1:n,nc:0,algorithm:\"md5\",hasDigestAuth:!1}}(e,n,o);break;case C.None:break;case C.Password:t.headers.Authorization=E(e,n);break;case C.Token:t.headers.Authorization=`${(i=r).token_type} ${i.access_token}`;break;default:throw new u({info:{code:I.InvalidAuthType}},`Invalid auth type: ${t.authType}`)}var i}n(345),n(800);const R=\"@@HOTPATCHER\",L=()=>{};function _(t){return{original:t,methods:[t],final:!1}}class M{constructor(){this._configuration={registry:{},getEmptyAction:\"null\"},this.__type__=R}get configuration(){return this._configuration}get getEmptyAction(){return this.configuration.getEmptyAction}set getEmptyAction(t){this.configuration.getEmptyAction=t}control(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!t||t.__type__!==R)throw new Error(\"Failed taking control of target HotPatcher instance: Invalid type or object\");return Object.keys(t.configuration.registry).forEach((n=>{this.configuration.registry.hasOwnProperty(n)?e&&(this.configuration.registry[n]=Object.assign({},t.configuration.registry[n])):this.configuration.registry[n]=Object.assign({},t.configuration.registry[n])})),t._configuration=this.configuration,this}execute(t){const e=this.get(t)||L;for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o0;)o=[e.shift().apply(i,o)];return o[0]}}(...e.methods)}isPatched(t){return!!this.configuration.registry[t]}patch(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{chain:r=!1}=n;if(this.configuration.registry[t]&&this.configuration.registry[t].final)throw new Error(`Failed patching '${t}': Method marked as being final`);if(\"function\"!=typeof e)throw new Error(`Failed patching '${t}': Provided method is not a function`);if(r)this.configuration.registry[t]?this.configuration.registry[t].methods.push(e):this.configuration.registry[t]=_(e);else if(this.isPatched(t)){const{original:n}=this.configuration.registry[t];this.configuration.registry[t]=Object.assign(_(e),{original:n})}else this.configuration.registry[t]=_(e);return this}patchInline(t,e){this.isPatched(t)||this.patch(t,e);for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o1?e-1:0),r=1;r{this.patch(t,e,{chain:!0})})),this}restore(t){if(!this.isPatched(t))throw new Error(`Failed restoring method: No method present for key: ${t}`);if(\"function\"!=typeof this.configuration.registry[t].original)throw new Error(`Failed restoring method: Original method not found or of invalid type for key: ${t}`);return this.configuration.registry[t].methods=[this.configuration.registry[t].original],this}setFinal(t){if(!this.configuration.registry.hasOwnProperty(t))throw new Error(`Failed marking '${t}' as final: No method found for key`);return this.configuration.registry[t].final=!0,this}}let U=null;function F(){return U||(U=new M),U}function D(t){return function(t){if(\"object\"!=typeof t||null===t||\"[object Object]\"!=Object.prototype.toString.call(t))return!1;if(null===Object.getPrototypeOf(t))return!0;let e=t;for(;null!==Object.getPrototypeOf(e);)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}(t)?Object.assign({},t):Object.setPrototypeOf(Object.assign({},t),Object.getPrototypeOf(t))}function B(){for(var t=arguments.length,e=new Array(t),n=0;n0;){const t=o.shift();r=r?W(r,t):D(t)}return r}function W(t,e){const n=D(t);return Object.keys(e).forEach((t=>{n.hasOwnProperty(t)?Array.isArray(e[t])?n[t]=Array.isArray(n[t])?[...n[t],...e[t]]:[...e[t]]:\"object\"==typeof e[t]&&e[t]?n[t]=\"object\"==typeof n[t]&&n[t]?W(n[t],e[t]):D(e[t]):n[t]=e[t]:n[t]=e[t]})),n}function V(t){const e={};for(const n of t.keys())e[n]=t.get(n);return e}function z(){for(var t=arguments.length,e=new Array(t),n=0;n(Object.keys(e).forEach((n=>{const o=n.toLowerCase();r.hasOwnProperty(o)?t[r[o]]=e[n]:(r[o]=n,t[n]=e[n])})),t)),{})}n(805);const G=\"function\"==typeof ArrayBuffer,{toString:q}=Object.prototype;function H(t){return G&&(t instanceof ArrayBuffer||\"[object ArrayBuffer]\"===q.call(t))}function X(t){return null!=t&&null!=t.constructor&&\"function\"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}function Z(t){return function(){for(var e=[],n=0;ne.patchInline(\"fetch\",j,t.url,function(t){let e={};const n={method:t.method};if(t.headers&&(e=z(e,t.headers)),void 0!==t.data){const[r,o]=function(t){if(\"string\"==typeof t)return[t,{}];if(X(t))return[t,{}];if(H(t))return[t,{}];if(t&&\"object\"==typeof t)return[JSON.stringify(t),{\"content-type\":\"application/json\"}];throw new Error(\"Unable to convert request body: Unexpected body type: \"+typeof t)}(t.data);n.body=r,e=z(e,o)}return t.signal&&(n.signal=t.signal),t.withCredentials&&(n.credentials=\"include\"),n.headers=e,n}(t))),t)}var nt=n(285);const rt=t=>{if(\"string\"!=typeof t)throw new TypeError(\"invalid pattern\");if(t.length>65536)throw new TypeError(\"pattern is too long\")},ot={\"[:alnum:]\":[\"\\\\p{L}\\\\p{Nl}\\\\p{Nd}\",!0],\"[:alpha:]\":[\"\\\\p{L}\\\\p{Nl}\",!0],\"[:ascii:]\":[\"\\\\x00-\\\\x7f\",!1],\"[:blank:]\":[\"\\\\p{Zs}\\\\t\",!0],\"[:cntrl:]\":[\"\\\\p{Cc}\",!0],\"[:digit:]\":[\"\\\\p{Nd}\",!0],\"[:graph:]\":[\"\\\\p{Z}\\\\p{C}\",!0,!0],\"[:lower:]\":[\"\\\\p{Ll}\",!0],\"[:print:]\":[\"\\\\p{C}\",!0],\"[:punct:]\":[\"\\\\p{P}\",!0],\"[:space:]\":[\"\\\\p{Z}\\\\t\\\\r\\\\n\\\\v\\\\f\",!0],\"[:upper:]\":[\"\\\\p{Lu}\",!0],\"[:word:]\":[\"\\\\p{L}\\\\p{Nl}\\\\p{Nd}\\\\p{Pc}\",!0],\"[:xdigit:]\":[\"A-Fa-f0-9\",!1]},it=t=>t.replace(/[[\\]\\\\-]/g,\"\\\\$&\"),st=t=>t.join(\"\"),at=(t,e)=>{const n=e;if(\"[\"!==t.charAt(n))throw new Error(\"not in a brace expression\");const r=[],o=[];let i=n+1,s=!1,a=!1,u=!1,c=!1,l=n,h=\"\";t:for(;ih?r.push(it(h)+\"-\"+it(e)):e===h&&r.push(it(e)),h=\"\",i++):t.startsWith(\"-]\",i+1)?(r.push(it(e+\"-\")),i+=2):t.startsWith(\"-\",i+1)?(h=e,i+=2):(r.push(it(e)),i++)}else u=!0,i++}else c=!0,i++}if(l1&&void 0!==arguments[1]?arguments[1]:{};return e?t.replace(/\\[([^\\/\\\\])\\]/g,\"$1\"):t.replace(/((?!\\\\).|^)\\[([^\\/\\\\])\\]/g,\"$1$2\").replace(/\\\\([^\\/])/g,\"$1\")},ct=new Set([\"!\",\"?\",\"+\",\"*\",\"@\"]),lt=t=>ct.has(t),ht=\"(?!\\\\.)\",pt=new Set([\"[\",\".\"]),ft=new Set([\"..\",\".\"]),dt=new Set(\"().*{}+?[]^$\\\\!\"),gt=\"[^/]\",mt=gt+\"*?\",yt=gt+\"+?\";class vt{type;#t;#e;#n=!1;#r=[];#o;#i;#s;#a=!1;#u;#c;#l=!1;constructor(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.type=t,t&&(this.#e=!0),this.#o=e,this.#t=this.#o?this.#o.#t:this,this.#u=this.#t===this?n:this.#t.#u,this.#s=this.#t===this?[]:this.#t.#s,\"!\"!==t||this.#t.#a||this.#s.push(this),this.#i=this.#o?this.#o.#r.length:0}get hasMagic(){if(void 0!==this.#e)return this.#e;for(const t of this.#r)if(\"string\"!=typeof t&&(t.type||t.hasMagic))return this.#e=!0;return this.#e}toString(){return void 0!==this.#c?this.#c:this.type?this.#c=this.type+\"(\"+this.#r.map((t=>String(t))).join(\"|\")+\")\":this.#c=this.#r.map((t=>String(t))).join(\"\")}#h(){if(this!==this.#t)throw new Error(\"should only call on root\");if(this.#a)return this;let t;for(this.toString(),this.#a=!0;t=this.#s.pop();){if(\"!\"!==t.type)continue;let e=t,n=e.#o;for(;n;){for(let r=e.#i+1;!n.type&&r\"string\"==typeof t?t:t.toJSON())):[this.type,...this.#r.map((t=>t.toJSON()))];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#t||this.#t.#a&&\"!\"===this.#o?.type)&&t.push({}),t}isStart(){if(this.#t===this)return!0;if(!this.#o?.isStart())return!1;if(0===this.#i)return!0;const t=this.#o;for(let e=0;e1&&void 0!==arguments[1]?arguments[1]:{};const n=new vt(null,void 0,e);return vt.#p(t,n,0,e),n}toMMPattern(){if(this!==this.#t)return this.#t.toMMPattern();const t=this.toString(),[e,n,r,o]=this.toRegExpSource();if(!(r||this.#e||this.#u.nocase&&!this.#u.nocaseMagicOnly&&t.toUpperCase()!==t.toLowerCase()))return n;const i=(this.#u.nocase?\"i\":\"\")+(o?\"u\":\"\");return Object.assign(new RegExp(`^${e}$`,i),{_src:e,_glob:t})}get options(){return this.#u}toRegExpSource(t){const e=t??!!this.#u.dot;if(this.#t===this&&this.#h(),!this.type){const n=this.isStart()&&this.isEnd(),r=this.#r.map((e=>{const[r,o,i,s]=\"string\"==typeof e?vt.#f(e,this.#e,n):e.toRegExpSource(t);return this.#e=this.#e||i,this.#n=this.#n||s,r})).join(\"\");let o=\"\";if(this.isStart()&&\"string\"==typeof this.#r[0]&&(1!==this.#r.length||!ft.has(this.#r[0]))){const n=pt,i=e&&n.has(r.charAt(0))||r.startsWith(\"\\\\.\")&&n.has(r.charAt(2))||r.startsWith(\"\\\\.\\\\.\")&&n.has(r.charAt(4)),s=!e&&!t&&n.has(r.charAt(0));o=i?\"(?!(?:^|/)\\\\.\\\\.?(?:$|/))\":s?ht:\"\"}let i=\"\";return this.isEnd()&&this.#t.#a&&\"!\"===this.#o?.type&&(i=\"(?:$|\\\\/)\"),[o+r+i,ut(r),this.#e=!!this.#e,this.#n]}const n=\"*\"===this.type||\"+\"===this.type,r=\"!\"===this.type?\"(?:(?!(?:\":\"(?:\";let o=this.#d(e);if(this.isStart()&&this.isEnd()&&!o&&\"!\"!==this.type){const t=this.toString();return this.#r=[t],this.type=null,this.#e=void 0,[t,ut(this.toString()),!1,!1]}let i=!n||t||e?\"\":this.#d(!0);i===o&&(i=\"\"),i&&(o=`(?:${o})(?:${i})*?`);let s=\"\";return s=\"!\"===this.type&&this.#l?(this.isStart()&&!e?ht:\"\")+yt:r+o+(\"!\"===this.type?\"))\"+(!this.isStart()||e||t?\"\":ht)+mt+\")\":\"@\"===this.type?\")\":\"?\"===this.type?\")?\":\"+\"===this.type&&i?\")\":\"*\"===this.type&&i?\")?\":`)${this.type}`),[s,ut(o),this.#e=!!this.#e,this.#n]}#d(t){return this.#r.map((e=>{if(\"string\"==typeof e)throw new Error(\"string type in extglob ast??\");const[n,r,o,i]=e.toRegExpSource(t);return this.#n=this.#n||i,n})).filter((t=>!(this.isStart()&&this.isEnd()&&!t))).join(\"|\")}static#f(t,e){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=!1,o=\"\",i=!1;for(let s=0;s2&&void 0!==arguments[2]?arguments[2]:{};return rt(e),!(!n.nocomment&&\"#\"===e.charAt(0))&&new Gt(e,n).match(t)},wt=/^\\*+([^+@!?\\*\\[\\(]*)$/,xt=t=>e=>!e.startsWith(\".\")&&e.endsWith(t),Nt=t=>e=>e.endsWith(t),Pt=t=>(t=t.toLowerCase(),e=>!e.startsWith(\".\")&&e.toLowerCase().endsWith(t)),At=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),Ot=/^\\*+\\.\\*+$/,Et=t=>!t.startsWith(\".\")&&t.includes(\".\"),Tt=t=>\".\"!==t&&\"..\"!==t&&t.includes(\".\"),jt=/^\\.\\*+$/,St=t=>\".\"!==t&&\"..\"!==t&&t.startsWith(\".\"),$t=/^\\*+$/,Ct=t=>0!==t.length&&!t.startsWith(\".\"),It=t=>0!==t.length&&\".\"!==t&&\"..\"!==t,kt=/^\\?+([^+@!?\\*\\[\\(]*)?$/,Rt=t=>{let[e,n=\"\"]=t;const r=Ut([e]);return n?(n=n.toLowerCase(),t=>r(t)&&t.toLowerCase().endsWith(n)):r},Lt=t=>{let[e,n=\"\"]=t;const r=Ft([e]);return n?(n=n.toLowerCase(),t=>r(t)&&t.toLowerCase().endsWith(n)):r},_t=t=>{let[e,n=\"\"]=t;const r=Ft([e]);return n?t=>r(t)&&t.endsWith(n):r},Mt=t=>{let[e,n=\"\"]=t;const r=Ut([e]);return n?t=>r(t)&&t.endsWith(n):r},Ut=t=>{let[e]=t;const n=e.length;return t=>t.length===n&&!t.startsWith(\".\")},Ft=t=>{let[e]=t;const n=e.length;return t=>t.length===n&&\".\"!==t&&\"..\"!==t},Dt=\"object\"==typeof process&&process?\"object\"==typeof process.env&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:\"posix\";bt.sep=\"win32\"===Dt?\"\\\\\":\"/\";const Bt=Symbol(\"globstar **\");bt.GLOBSTAR=Bt,bt.filter=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return n=>bt(n,t,e)};const Wt=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.assign({},t,e)};bt.defaults=t=>{if(!t||\"object\"!=typeof t||!Object.keys(t).length)return bt;const e=bt;return Object.assign((function(n,r){return e(n,r,Wt(t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}))}),{Minimatch:class extends e.Minimatch{constructor(e){super(e,Wt(t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}))}static defaults(n){return e.defaults(Wt(t,n)).Minimatch}},AST:class extends e.AST{constructor(e,n){super(e,n,Wt(t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}))}static fromGlob(n){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.AST.fromGlob(n,Wt(t,r))}},unescape:function(n){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.unescape(n,Wt(t,r))},escape:function(n){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.escape(n,Wt(t,r))},filter:function(n){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.filter(n,Wt(t,r))},defaults:n=>e.defaults(Wt(t,n)),makeRe:function(n){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.makeRe(n,Wt(t,r))},braceExpand:function(n){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.braceExpand(n,Wt(t,r))},match:function(n,r){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.match(n,r,Wt(t,o))},sep:e.sep,GLOBSTAR:Bt})};const Vt=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return rt(t),e.nobrace||!/\\{(?:(?!\\{).)*\\}/.test(t)?[t]:nt(t)};bt.braceExpand=Vt,bt.makeRe=function(t){return new Gt(t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).makeRe()},bt.match=function(t,e){const n=new Gt(e,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{});return t=t.filter((t=>n.match(t))),n.options.nonull&&!t.length&&t.push(e),t};const zt=/[?*]|[+@!]\\(.*?\\)|\\[|\\]/;class Gt{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};rt(t),e=e||{},this.options=e,this.pattern=t,this.platform=e.platform||Dt,this.isWindows=\"win32\"===this.platform,this.windowsPathsNoEscape=!!e.windowsPathsNoEscape||!1===e.allowWindowsEscape,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\\\/g,\"/\")),this.preserveMultipleSlashes=!!e.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!e.nonegate,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=void 0!==e.windowsNoMagicRoot?e.windowsNoMagicRoot:!(!this.isWindows||!this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(const t of this.set)for(const e of t)if(\"string\"!=typeof e)return!0;return!1}debug(){}make(){const t=this.pattern,e=this.options;if(!e.nocomment&&\"#\"===t.charAt(0))return void(this.comment=!0);if(!t)return void(this.empty=!0);this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],e.debug&&(this.debug=function(){return console.error(...arguments)}),this.debug(this.pattern,this.globSet);const n=this.globSet.map((t=>this.slashSplit(t)));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let r=this.globParts.map(((t,e,n)=>{if(this.isWindows&&this.windowsNoMagicRoot){const e=!(\"\"!==t[0]||\"\"!==t[1]||\"?\"!==t[2]&&zt.test(t[2])||zt.test(t[3])),n=/^[a-z]:/i.test(t[0]);if(e)return[...t.slice(0,4),...t.slice(4).map((t=>this.parse(t)))];if(n)return[t[0],...t.slice(1).map((t=>this.parse(t)))]}return t.map((t=>this.parse(t)))}));if(this.debug(this.pattern,r),this.set=r.filter((t=>-1===t.indexOf(!1))),this.isWindows)for(let t=0;t=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):t=e>=1?this.levelOneOptimize(t):this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map((t=>{let e=-1;for(;-1!==(e=t.indexOf(\"**\",e+1));){let n=e;for(;\"**\"===t[n+1];)n++;n!==e&&t.splice(e,n-e)}return t}))}levelOneOptimize(t){return t.map((t=>0===(t=t.reduce(((t,e)=>{const n=t[t.length-1];return\"**\"===e&&\"**\"===n?t:\"..\"===e&&n&&\"..\"!==n&&\".\"!==n&&\"**\"!==n?(t.pop(),t):(t.push(e),t)}),[])).length?[\"\"]:t))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let e=!1;do{if(e=!1,!this.preserveMultipleSlashes){for(let n=1;nr&&n.splice(r+1,o-r);let i=n[r+1];const s=n[r+2],a=n[r+3];if(\"..\"!==i)continue;if(!s||\".\"===s||\"..\"===s||!a||\".\"===a||\"..\"===a)continue;e=!0,n.splice(r,1);const u=n.slice(0);u[r]=\"**\",t.push(u),r--}if(!this.preserveMultipleSlashes){for(let t=1;tt.length))}partsMatch(t,e){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=0,o=0,i=[],s=\"\";for(;r2&&void 0!==arguments[2]&&arguments[2];const r=this.options;if(this.isWindows){const n=\"string\"==typeof t[0]&&/^[a-z]:$/i.test(t[0]),r=!n&&\"\"===t[0]&&\"\"===t[1]&&\"?\"===t[2]&&/^[a-z]:$/i.test(t[3]),o=\"string\"==typeof e[0]&&/^[a-z]:$/i.test(e[0]),i=r?3:n?0:void 0,s=!o&&\"\"===e[0]&&\"\"===e[1]&&\"?\"===e[2]&&\"string\"==typeof e[3]&&/^[a-z]:$/i.test(e[3])?3:o?0:void 0;if(\"number\"==typeof i&&\"number\"==typeof s){const[n,r]=[t[i],e[s]];n.toLowerCase()===r.toLowerCase()&&(e[s]=n,s>i?e=e.slice(s):i>s&&(t=t.slice(i)))}}const{optimizationLevel:o=1}=this.options;o>=2&&(t=this.levelTwoFileOptimize(t)),this.debug(\"matchOne\",this,{file:t,pattern:e}),this.debug(\"matchOne\",t.length,e.length);for(var i=0,s=0,a=t.length,u=e.length;i>> no match, partial?\",t,h,e,p),h!==a))}let o;if(\"string\"==typeof c?(o=l===c,this.debug(\"string match\",c,l,o)):(o=c.test(l),this.debug(\"pattern match\",c,l,o)),!o)return!1}if(i===a&&s===u)return!0;if(i===a)return n;if(s===u)return i===a-1&&\"\"===t[i];throw new Error(\"wtf?\")}braceExpand(){return Vt(this.pattern,this.options)}parse(t){rt(t);const e=this.options;if(\"**\"===t)return Bt;if(\"\"===t)return\"\";let n,r=null;(n=t.match($t))?r=e.dot?It:Ct:(n=t.match(wt))?r=(e.nocase?e.dot?At:Pt:e.dot?Nt:xt)(n[1]):(n=t.match(kt))?r=(e.nocase?e.dot?Lt:Rt:e.dot?_t:Mt)(n):(n=t.match(Ot))?r=e.dot?Tt:Et:(n=t.match(jt))&&(r=St);const o=vt.fromGlob(t,this.options).toMMPattern();return r&&\"object\"==typeof o&&Reflect.defineProperty(o,\"test\",{value:r}),o}makeRe(){if(this.regexp||!1===this.regexp)return this.regexp;const t=this.set;if(!t.length)return this.regexp=!1,this.regexp;const e=this.options,n=e.noglobstar?\"[^/]*?\":e.dot?\"(?:(?!(?:\\\\/|^)(?:\\\\.{1,2})($|\\\\/)).)*?\":\"(?:(?!(?:\\\\/|^)\\\\.).)*?\",r=new Set(e.nocase?[\"i\"]:[]);let o=t.map((t=>{const e=t.map((t=>{if(t instanceof RegExp)for(const e of t.flags.split(\"\"))r.add(e);return\"string\"==typeof t?t.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g,\"\\\\$&\"):t===Bt?Bt:t._src}));return e.forEach(((t,r)=>{const o=e[r+1],i=e[r-1];t===Bt&&i!==Bt&&(void 0===i?void 0!==o&&o!==Bt?e[r+1]=\"(?:\\\\/|\"+n+\"\\\\/)?\"+o:e[r]=n:void 0===o?e[r-1]=i+\"(?:\\\\/|\"+n+\")?\":o!==Bt&&(e[r-1]=i+\"(?:\\\\/|\\\\/\"+n+\"\\\\/)\"+o,e[r+1]=Bt))})),e.filter((t=>t!==Bt)).join(\"/\")})).join(\"|\");const[i,s]=t.length>1?[\"(?:\",\")\"]:[\"\",\"\"];o=\"^\"+i+o+s+\"$\",this.negate&&(o=\"^(?!\"+o+\").+$\");try{this.regexp=new RegExp(o,[...r].join(\"\"))}catch(t){this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split(\"/\"):this.isWindows&&/^\\/\\/[^\\/]+/.test(t)?[\"\",...t.split(/\\/+/)]:t.split(/\\/+/)}match(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.partial;if(this.debug(\"match\",t,this.pattern),this.comment)return!1;if(this.empty)return\"\"===t;if(\"/\"===t&&e)return!0;const n=this.options;this.isWindows&&(t=t.split(\"\\\\\").join(\"/\"));const r=this.slashSplit(t);this.debug(this.pattern,\"split\",r);const o=this.set;this.debug(this.pattern,\"set\",o);let i=r[r.length-1];if(!i)for(let t=r.length-2;!i&&t>=0;t--)i=r[t];for(let t=0;t1&&void 0!==arguments[1]?arguments[1]:\"\"}Invalid response: ${t.status} ${t.statusText}`);return e.status=t.status,e.response=t,e}function Ht(t,e){const{status:n}=e;if(401===n&&t.digest)return e;if(n>=400)throw qt(e);return e}function Xt(t,e){return arguments.length>2&&void 0!==arguments[2]&&arguments[2]?{data:e,headers:t.headers?V(t.headers):{},status:t.status,statusText:t.statusText}:e}bt.AST=vt,bt.Minimatch=Gt,bt.escape=function(t){let{windowsPathsNoEscape:e=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e?t.replace(/[?*()[\\]]/g,\"[$&]\"):t.replace(/[?*()[\\]\\\\]/g,\"\\\\$&\")},bt.unescape=ut;const Zt=(Yt=function(t,e,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const o=tt({url:y(t.remoteURL,f(e)),method:\"COPY\",headers:{Destination:y(t.remoteURL,f(n)),Overwrite:!1===r.overwrite?\"F\":\"T\",Depth:r.shallow?\"0\":\"infinity\"}},t,r);return s=function(e){Ht(t,e)},(i=Q(o,t))&&i.then||(i=Promise.resolve(i)),s?i.then(s):i;var i,s},function(){for(var t=[],e=0;e2&&void 0!==arguments[2]?arguments[2]:te.Original;const r=Qt().get(t,e);return\"array\"===n&&!1===Array.isArray(r)?[r]:\"object\"===n&&Array.isArray(r)?r[0]:r}function ne(t){return new Promise((e=>{e(function(t){const{multistatus:e}=t;if(\"\"===e)return{multistatus:{response:[]}};if(!e)throw new Error(\"Invalid response: No root multistatus found\");const n={multistatus:Array.isArray(e)?e[0]:e};return Qt().set(n,\"multistatus.response\",ee(n,\"multistatus.response\",te.Array)),Qt().set(n,\"multistatus.response\",Qt().get(n,\"multistatus.response\").map((t=>function(t){const e=Object.assign({},t);return e.status?Qt().set(e,\"status\",ee(e,\"status\",te.Object)):(Qt().set(e,\"propstat\",ee(e,\"propstat\",te.Object)),Qt().set(e,\"propstat.prop\",ee(e,\"propstat.prop\",te.Object))),e}(t)))),n}(new Kt.XMLParser({removeNSPrefix:!0,numberParseOptions:{hex:!0,leadingZeros:!1}}).parse(t)))}))}function re(t,e){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const{getlastmodified:r=null,getcontentlength:o=\"0\",resourcetype:i=null,getcontenttype:s=null,getetag:a=null}=t,u=i&&\"object\"==typeof i&&void 0!==i.collection?\"directory\":\"file\",c={filename:e,basename:l().basename(e),lastmod:r,size:parseInt(o,10),type:u,etag:\"string\"==typeof a?a.replace(/\"/g,\"\"):null};return\"file\"===u&&(c.mime=s&&\"string\"==typeof s?s.split(\";\")[0]:\"\"),n&&(void 0!==t.displayname&&(t.displayname=String(t.displayname)),c.props=t),c}function oe(t,e){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=null;try{t.multistatus.response[0].propstat&&(r=t.multistatus.response[0])}catch(t){}if(!r)throw new Error(\"Failed getting item stat: bad response\");const{propstat:{prop:o,status:i}}=r,[s,a,u]=i.split(\" \",3),c=parseInt(a,10);if(c>=400){const t=new Error(`Invalid response: ${c} ${u}`);throw t.status=c,t}return re(o,g(e),n)}function ie(t){switch(String(t)){case\"-3\":return\"unlimited\";case\"-2\":case\"-1\":return\"unknown\";default:return parseInt(String(t),10)}}function se(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}const ae=function(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};const{details:r=!1}=n,o=tt({url:y(t.remoteURL,f(e)),method:\"PROPFIND\",headers:{Accept:\"text/plain,application/xml\",Depth:\"0\"}},t,n);return se(Q(o,t),(function(n){return Ht(t,n),se(n.text(),(function(t){return se(ne(t),(function(t){const o=oe(t,e,r);return Xt(n,o,r)}))}))}))}));function ue(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}const ce=le((function(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=function(t){if(!t||\"/\"===t)return[];let e=t;const n=[];do{n.push(e),e=l().dirname(e)}while(e&&\"/\"!==e);return n}(g(e));r.sort(((t,e)=>t.length>e.length?1:e.length>t.length?-1:0));let o=!1;return function(t,e,n){if(\"function\"==typeof t[fe]){var r,o,i,s=t[fe]();function l(t){try{for(;!(r=s.next()).done;)if((t=e(r.value))&&t.then){if(!me(t))return void t.then(l,i||(i=de.bind(null,o=new ge,2)));t=t.v}o?de(o,1,t):o=t}catch(t){de(o||(o=new ge),2,t)}}if(l(),s.return){var a=function(t){try{r.done||s.return()}catch(t){}return t};if(o&&o.then)return o.then(a,(function(t){throw a(t)}));a()}return o}if(!(\"length\"in t))throw new TypeError(\"Object is not iterable\");for(var u=[],c=0;c2&&void 0!==arguments[2]?arguments[2]:{};if(!0===n.recursive)return ce(t,e,n);const r=tt({url:y(t.remoteURL,(o=f(e),o.endsWith(\"/\")?o:o+\"/\")),method:\"MKCOL\"},t,n);var o;return ue(Q(r,t),(function(e){Ht(t,e)}))}));var ve=n(388),be=n.n(ve);const we=function(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};const r={};if(\"object\"==typeof n.range&&\"number\"==typeof n.range.start){let t=`bytes=${n.range.start}-`;\"number\"==typeof n.range.end&&(t=`${t}${n.range.end}`),r.Range=t}const o=tt({url:y(t.remoteURL,f(e)),method:\"GET\",headers:r},t,n);return s=function(e){if(Ht(t,e),r.Range&&206!==e.status){const t=new Error(`Invalid response code for partial request: ${e.status}`);throw t.status=e.status,t}return n.callback&&setTimeout((()=>{n.callback(e)}),0),e.body},(i=Q(o,t))&&i.then||(i=Promise.resolve(i)),s?i.then(s):i;var i,s})),xe=()=>{},Ne=function(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};const r=tt({url:y(t.remoteURL,f(e)),method:\"DELETE\"},t,n);return i=function(e){Ht(t,e)},(o=Q(r,t))&&o.then||(o=Promise.resolve(o)),i?o.then(i):o;var o,i})),Ae=function(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};return function(r,o){try{var i=(s=ae(t,e,n),a=function(){return!0},u?a?a(s):s:(s&&s.then||(s=Promise.resolve(s)),a?s.then(a):s))}catch(t){return o(t)}var s,a,u;return i&&i.then?i.then(void 0,o):i}(0,(function(t){if(404===t.status)return!1;throw t}))}));function Oe(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}const Ee=function(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};const r=tt({url:y(t.remoteURL,f(e),\"/\"),method:\"PROPFIND\",headers:{Accept:\"text/plain,application/xml\",Depth:n.deep?\"infinity\":\"1\"}},t,n);return Oe(Q(r,t),(function(r){return Ht(t,r),Oe(r.text(),(function(o){if(!o)throw new Error(\"Failed parsing directory contents: Empty response\");return Oe(ne(o),(function(o){const i=d(e);let s=function(t,e,n){let r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=arguments.length>4&&void 0!==arguments[4]&&arguments[4];const i=l().join(e,\"/\"),{multistatus:{response:s}}=t,a=s.map((t=>{const e=function(t){try{return t.replace(/^https?:\\/\\/[^\\/]+/,\"\")}catch(t){throw new u(t,\"Failed normalising HREF\")}}(t.href),{propstat:{prop:n}}=t;return re(n,\"/\"===i?decodeURIComponent(g(e)):g(l().relative(decodeURIComponent(i),decodeURIComponent(e))),r)}));return o?a:a.filter((t=>t.basename&&(\"file\"===t.type||t.filename!==n.replace(/\\/$/,\"\"))))}(o,d(t.remoteBasePath||t.remotePath),i,n.details,n.includeSelf);return n.glob&&(s=function(t,e){return t.filter((t=>bt(t.filename,e,{matchBase:!0})))}(s,n.glob)),Xt(r,s,n.details)}))}))}))}));function Te(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};const r=tt({url:y(t.remoteURL,f(e)),method:\"GET\",headers:{Accept:\"text/plain\"},transformResponse:[Ie]},t,n);return Se(Q(r,t),(function(e){return Ht(t,e),Se(e.text(),(function(t){return Xt(e,t,n.details)}))}))}));function Se(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}const $e=Te((function(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=tt({url:y(t.remoteURL,f(e)),method:\"GET\"},t,n);return Se(Q(r,t),(function(e){let r;return Ht(t,e),function(t,e){var n=t();return n&&n.then?n.then(e):e()}((function(){return Se(e.arrayBuffer(),(function(t){r=t}))}),(function(){return Xt(e,r,n.details)}))}))})),Ce=Te((function(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{format:r=\"binary\"}=n;if(\"binary\"!==r&&\"text\"!==r)throw new u({info:{code:I.InvalidOutputFormat}},`Invalid output format: ${r}`);return\"text\"===r?je(t,e,n):$e(t,e,n)})),Ie=t=>t;function ke(t){return new Kt.XMLBuilder({attributeNamePrefix:\"@_\",format:!0,ignoreAttributes:!1,suppressEmptyNode:!0}).build(Re({lockinfo:{\"@_xmlns:d\":\"DAV:\",lockscope:{exclusive:{}},locktype:{write:{}},owner:{href:t}}},\"d\"))}function Re(t,e){const n={...t};for(const t in n)n.hasOwnProperty(t)&&(n[t]&&\"object\"==typeof n[t]&&-1===t.indexOf(\":\")?(n[`${e}:${t}`]=Re(n[t],e),delete n[t]):!1===/^@_/.test(t)&&(n[`${e}:${t}`]=n[t],delete n[t]));return n}function Le(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}function _e(t){return function(){for(var e=[],n=0;n3&&void 0!==arguments[3]?arguments[3]:{};const o=tt({url:y(t.remoteURL,f(e)),method:\"UNLOCK\",headers:{\"Lock-Token\":n}},t,r);return Le(Q(o,t),(function(e){if(Ht(t,e),204!==e.status&&200!==e.status)throw qt(e)}))})),Ue=_e((function(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{refreshToken:r,timeout:o=Fe}=n,i={Accept:\"text/plain,application/xml\",Timeout:o};r&&(i.If=r);const s=tt({url:y(t.remoteURL,f(e)),method:\"LOCK\",headers:i,data:ke(t.contactHref)},t,n);return Le(Q(s,t),(function(e){return Ht(t,e),Le(e.text(),(function(t){const n=(i=t,new Kt.XMLParser({removeNSPrefix:!0,parseAttributeValue:!0,parseTagValue:!0}).parse(i)),r=Qt().get(n,\"prop.lockdiscovery.activelock.locktoken.href\"),o=Qt().get(n,\"prop.lockdiscovery.activelock.timeout\");var i;if(!r)throw qt(e,\"No lock token received: \");return{token:r,serverTimeout:o}}))}))})),Fe=\"Infinite, Second-4100000000\";function De(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}const Be=function(t){return function(){for(var e=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:{};const n=e.path||\"/\",r=tt({url:y(t.remoteURL,n),method:\"PROPFIND\",headers:{Accept:\"text/plain,application/xml\",Depth:\"0\"}},t,e);return De(Q(r,t),(function(n){return Ht(t,n),De(n.text(),(function(t){return De(ne(t),(function(t){const r=function(t){try{const[e]=t.multistatus.response,{propstat:{prop:{\"quota-used-bytes\":n,\"quota-available-bytes\":r}}}=e;return void 0!==n&&void 0!==r?{used:parseInt(String(n),10),available:ie(r)}:null}catch(t){}return null}(t);return Xt(n,r,e.details)}))}))}))}));function We(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}const Ve=function(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};const{details:r=!1}=n,o=tt({url:y(t.remoteURL,f(e)),method:\"SEARCH\",headers:{Accept:\"text/plain,application/xml\",\"Content-Type\":t.headers[\"Content-Type\"]||\"application/xml; charset=utf-8\"}},t,n);return We(Q(o,t),(function(n){return Ht(t,n),We(n.text(),(function(t){return We(ne(t),(function(t){const o=function(t,e,n){const r={truncated:!1,results:[]};return r.truncated=t.multistatus.response.some((t=>\"507\"===(t.status||t.propstat?.status).split(\" \",3)?.[1]&&t.href.replace(/\\/$/,\"\").endsWith(f(e).replace(/\\/$/,\"\")))),t.multistatus.response.forEach((t=>{if(void 0===t.propstat)return;const e=t.href.split(\"/\").map(decodeURIComponent).join(\"/\");r.results.push(re(t.propstat.prop,e,n))})),r}(t,e,r);return Xt(n,o,r)}))}))}))})),ze=function(t){return function(){for(var e=[],n=0;n3&&void 0!==arguments[3]?arguments[3]:{};const o=tt({url:y(t.remoteURL,f(e)),method:\"MOVE\",headers:{Destination:y(t.remoteURL,f(n)),Overwrite:!1===r.overwrite?\"F\":\"T\"}},t,r);return s=function(e){Ht(t,e)},(i=Q(o,t))&&i.then||(i=Promise.resolve(i)),s?i.then(s):i;var i,s}));var Ge=n(172);const qe=function(t){return function(){for(var e=[],n=0;n3&&void 0!==arguments[3]?arguments[3]:{};const{contentLength:o=!0,overwrite:i=!0}=r,s={\"Content-Type\":\"application/octet-stream\"};!1===o||(s[\"Content-Length\"]=\"number\"==typeof o?`${o}`:`${function(t){if(H(t))return t.byteLength;if(X(t))return t.length;if(\"string\"==typeof t)return(0,Ge.d)(t);throw new u({info:{code:I.DataTypeNoLength}},\"Cannot calculate data length: Invalid type\")}(n)}`),i||(s[\"If-None-Match\"]=\"*\");const a=tt({url:y(t.remoteURL,f(e)),method:\"PUT\",headers:s,data:n},t,r);return l=function(e){try{Ht(t,e)}catch(t){const e=t;if(412!==e.status||i)throw e;return!1}return!0},(c=Q(a,t))&&c.then||(c=Promise.resolve(c)),l?c.then(l):c;var c,l})),He=function(t){return function(){for(var e=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:{};const r=tt({url:y(t.remoteURL,f(e)),method:\"OPTIONS\"},t,n);return i=function(e){try{Ht(t,e)}catch(t){throw t}return{compliance:(e.headers.get(\"DAV\")??\"\").split(\",\").map((t=>t.trim())),server:e.headers.get(\"Server\")??\"\"}},(o=Q(r,t))&&o.then||(o=Promise.resolve(o)),i?o.then(i):o;var o,i}));function Xe(t,e,n){return n?e?e(t):t:(t&&t.then||(t=Promise.resolve(t)),e?t.then(e):t)}const Ze=Je((function(t,e,n,r,o){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};if(n>r||n<0)throw new u({info:{code:I.InvalidUpdateRange}},`Invalid update range ${n} for partial update`);const s={\"Content-Type\":\"application/octet-stream\",\"Content-Length\":\"\"+(r-n+1),\"Content-Range\":`bytes ${n}-${r}/*`},a=tt({url:y(t.remoteURL,f(e)),method:\"PUT\",headers:s,data:o},t,i);return Xe(Q(a,t),(function(e){Ht(t,e)}))}));function Ye(t,e){var n=t();return n&&n.then?n.then(e):e(n)}const Ke=Je((function(t,e,n,r,o){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};if(n>r||n<0)throw new u({info:{code:I.InvalidUpdateRange}},`Invalid update range ${n} for partial update`);const s={\"Content-Type\":\"application/x-sabredav-partialupdate\",\"Content-Length\":\"\"+(r-n+1),\"X-Update-Range\":`bytes=${n}-${r}`},a=tt({url:y(t.remoteURL,f(e)),method:\"PATCH\",headers:s,data:o},t,i);return Xe(Q(a,t),(function(e){Ht(t,e)}))}));function Je(t){return function(){for(var e=[],n=0;n5&&void 0!==arguments[5]?arguments[5]:{};return Xe(He(t,e,i),(function(s){let a=!1;return Ye((function(){if(s.compliance.includes(\"sabredav-partialupdate\"))return Xe(Ke(t,e,n,r,o,i),(function(t){return a=!0,t}))}),(function(c){let l=!1;return a?c:Ye((function(){if(s.server.includes(\"Apache\")&&s.compliance.includes(\"\"))return Xe(Ze(t,e,n,r,o,i),(function(t){return l=!0,t}))}),(function(t){if(l)return t;throw new u({info:{code:I.NotSupported}},\"Not supported\")}))}))}))})),tn=\"https://github.com/perry-mitchell/webdav-client/blob/master/LOCK_CONTACT.md\";function en(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{authType:n=null,remoteBasePath:r,contactHref:o=tn,ha1:i,headers:s={},httpAgent:a,httpsAgent:c,password:l,token:h,username:p,withCredentials:d}=e;let g=n;g||(g=p||l?C.Password:C.None);const v={authType:g,remoteBasePath:r,contactHref:o,ha1:i,headers:Object.assign({},s),httpAgent:a,httpsAgent:c,password:l,remotePath:m(t),remoteURL:t,token:h,username:p,withCredentials:d};return k(v,p,l,h,i),{copyFile:(t,e,n)=>Zt(v,t,e,n),createDirectory:(t,e)=>ye(v,t,e),createReadStream:(t,e)=>function(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=new(0,be().PassThrough);return we(t,e,n).then((t=>{t.pipe(r)})).catch((t=>{r.emit(\"error\",t)})),r}(v,t,e),createWriteStream:(t,e,n)=>function(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:xe;const o=new(0,be().PassThrough),i={};!1===n.overwrite&&(i[\"If-None-Match\"]=\"*\");const s=tt({url:y(t.remoteURL,f(e)),method:\"PUT\",headers:i,data:o,maxRedirects:0},t,n);return Q(s,t).then((e=>Ht(t,e))).then((t=>{setTimeout((()=>{r(t)}),0)})).catch((t=>{o.emit(\"error\",t)})),o}(v,t,e,n),customRequest:(t,e)=>Ne(v,t,e),deleteFile:(t,e)=>Pe(v,t,e),exists:(t,e)=>Ae(v,t,e),getDirectoryContents:(t,e)=>Ee(v,t,e),getFileContents:(t,e)=>Ce(v,t,e),getFileDownloadLink:t=>function(t,e){let n=y(t.remoteURL,f(e));const r=/^https:/i.test(n)?\"https\":\"http\";switch(t.authType){case C.None:break;case C.Password:{const e=O(t.headers.Authorization.replace(/^Basic /i,\"\").trim());n=n.replace(/^https?:\\/\\//,`${r}://${e}@`);break}default:throw new u({info:{code:I.LinkUnsupportedAuthType}},`Unsupported auth type for file link: ${t.authType}`)}return n}(v,t),getFileUploadLink:t=>function(t,e){let n=`${y(t.remoteURL,f(e))}?Content-Type=application/octet-stream`;const r=/^https:/i.test(n)?\"https\":\"http\";switch(t.authType){case C.None:break;case C.Password:{const e=O(t.headers.Authorization.replace(/^Basic /i,\"\").trim());n=n.replace(/^https?:\\/\\//,`${r}://${e}@`);break}default:throw new u({info:{code:I.LinkUnsupportedAuthType}},`Unsupported auth type for file link: ${t.authType}`)}return n}(v,t),getHeaders:()=>Object.assign({},v.headers),getQuota:t=>Be(v,t),lock:(t,e)=>Ue(v,t,e),moveFile:(t,e,n)=>ze(v,t,e,n),putFileContents:(t,e,n)=>qe(v,t,e,n),partialUpdateFileContents:(t,e,n,r,o)=>Qe(v,t,e,n,r,o),getDAVCompliance:t=>He(v,t),search:(t,e)=>Ve(v,t,e),setHeaders:t=>{v.headers=Object.assign({},t)},stat:(t,e)=>ae(v,t,e),unlock:(t,e,n)=>Me(v,t,e,n)}}var nn=r.hT,rn=r.O4,on=r.Kd,sn=r.YK,an=r.UU,un=r.Gu,cn=r.ky,ln=r.h4,hn=r.ch,pn=r.hq,fn=r.i5;export{nn as AuthType,rn as ErrorCode,on as Request,sn as Response,an as createClient,un as getPatcher,cn as parseStat,ln as parseXML,hn as prepareFileFromProps,pn as processResponsePayload,fn as translateDiskSpace};","function loadState(app, key, fallback) {\n const elem = document.querySelector(`#initial-state-${app}-${key}`);\n if (elem === null) {\n if (fallback !== void 0) {\n return fallback;\n }\n throw new Error(`Could not find initial state ${key} of ${app}`);\n }\n try {\n return JSON.parse(atob(elem.value));\n } catch (e) {\n throw new Error(`Could not parse initial state ${key} of ${app}`);\n }\n}\nexport {\n loadState\n};\n","import { loadState } from \"@nextcloud/initial-state\";\nfunction isPublicShare() {\n return loadState(\"files_sharing\", \"isPublic\", null) ?? document.querySelector(\n 'input#isPublic[type=\"hidden\"][name=\"isPublic\"][value=\"1\"]'\n ) !== null;\n}\nfunction getSharingToken() {\n return loadState(\"files_sharing\", \"sharingToken\", null) ?? document.querySelector('input#sharingToken[type=\"hidden\"]')?.value ?? null;\n}\nexport {\n getSharingToken,\n isPublicShare\n};\n","/*! @license DOMPurify 3.1.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.6/LICENSE */\n\nconst {\n entries,\n setPrototypeOf,\n isFrozen,\n getPrototypeOf,\n getOwnPropertyDescriptor\n} = Object;\nlet {\n freeze,\n seal,\n create\n} = Object; // eslint-disable-line import/no-mutable-exports\nlet {\n apply,\n construct\n} = typeof Reflect !== 'undefined' && Reflect;\nif (!freeze) {\n freeze = function freeze(x) {\n return x;\n };\n}\nif (!seal) {\n seal = function seal(x) {\n return x;\n };\n}\nif (!apply) {\n apply = function apply(fun, thisValue, args) {\n return fun.apply(thisValue, args);\n };\n}\nif (!construct) {\n construct = function construct(Func, args) {\n return new Func(...args);\n };\n}\nconst arrayForEach = unapply(Array.prototype.forEach);\nconst arrayPop = unapply(Array.prototype.pop);\nconst arrayPush = unapply(Array.prototype.push);\nconst stringToLowerCase = unapply(String.prototype.toLowerCase);\nconst stringToString = unapply(String.prototype.toString);\nconst stringMatch = unapply(String.prototype.match);\nconst stringReplace = unapply(String.prototype.replace);\nconst stringIndexOf = unapply(String.prototype.indexOf);\nconst stringTrim = unapply(String.prototype.trim);\nconst objectHasOwnProperty = unapply(Object.prototype.hasOwnProperty);\nconst regExpTest = unapply(RegExp.prototype.test);\nconst typeErrorCreate = unconstruct(TypeError);\n\n/**\n * Creates a new function that calls the given function with a specified thisArg and arguments.\n *\n * @param {Function} func - The function to be wrapped and called.\n * @returns {Function} A new function that calls the given function with a specified thisArg and arguments.\n */\nfunction unapply(func) {\n return function (thisArg) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n return apply(func, thisArg, args);\n };\n}\n\n/**\n * Creates a new function that constructs an instance of the given constructor function with the provided arguments.\n *\n * @param {Function} func - The constructor function to be wrapped and called.\n * @returns {Function} A new function that constructs an instance of the given constructor function with the provided arguments.\n */\nfunction unconstruct(func) {\n return function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return construct(func, args);\n };\n}\n\n/**\n * Add properties to a lookup table\n *\n * @param {Object} set - The set to which elements will be added.\n * @param {Array} array - The array containing elements to be added to the set.\n * @param {Function} transformCaseFunc - An optional function to transform the case of each element before adding to the set.\n * @returns {Object} The modified set with added elements.\n */\nfunction addToSet(set, array) {\n let transformCaseFunc = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : stringToLowerCase;\n if (setPrototypeOf) {\n // Make 'in' and truthy checks like Boolean(set.constructor)\n // independent of any properties defined on Object.prototype.\n // Prevent prototype setters from intercepting set as a this value.\n setPrototypeOf(set, null);\n }\n let l = array.length;\n while (l--) {\n let element = array[l];\n if (typeof element === 'string') {\n const lcElement = transformCaseFunc(element);\n if (lcElement !== element) {\n // Config presets (e.g. tags.js, attrs.js) are immutable.\n if (!isFrozen(array)) {\n array[l] = lcElement;\n }\n element = lcElement;\n }\n }\n set[element] = true;\n }\n return set;\n}\n\n/**\n * Clean up an array to harden against CSPP\n *\n * @param {Array} array - The array to be cleaned.\n * @returns {Array} The cleaned version of the array\n */\nfunction cleanArray(array) {\n for (let index = 0; index < array.length; index++) {\n const isPropertyExist = objectHasOwnProperty(array, index);\n if (!isPropertyExist) {\n array[index] = null;\n }\n }\n return array;\n}\n\n/**\n * Shallow clone an object\n *\n * @param {Object} object - The object to be cloned.\n * @returns {Object} A new object that copies the original.\n */\nfunction clone(object) {\n const newObject = create(null);\n for (const [property, value] of entries(object)) {\n const isPropertyExist = objectHasOwnProperty(object, property);\n if (isPropertyExist) {\n if (Array.isArray(value)) {\n newObject[property] = cleanArray(value);\n } else if (value && typeof value === 'object' && value.constructor === Object) {\n newObject[property] = clone(value);\n } else {\n newObject[property] = value;\n }\n }\n }\n return newObject;\n}\n\n/**\n * This method automatically checks if the prop is function or getter and behaves accordingly.\n *\n * @param {Object} object - The object to look up the getter function in its prototype chain.\n * @param {String} prop - The property name for which to find the getter function.\n * @returns {Function} The getter function found in the prototype chain or a fallback function.\n */\nfunction lookupGetter(object, prop) {\n while (object !== null) {\n const desc = getOwnPropertyDescriptor(object, prop);\n if (desc) {\n if (desc.get) {\n return unapply(desc.get);\n }\n if (typeof desc.value === 'function') {\n return unapply(desc.value);\n }\n }\n object = getPrototypeOf(object);\n }\n function fallbackValue() {\n return null;\n }\n return fallbackValue;\n}\n\nconst html$1 = freeze(['a', 'abbr', 'acronym', 'address', 'area', 'article', 'aside', 'audio', 'b', 'bdi', 'bdo', 'big', 'blink', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'center', 'cite', 'code', 'col', 'colgroup', 'content', 'data', 'datalist', 'dd', 'decorator', 'del', 'details', 'dfn', 'dialog', 'dir', 'div', 'dl', 'dt', 'element', 'em', 'fieldset', 'figcaption', 'figure', 'font', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'img', 'input', 'ins', 'kbd', 'label', 'legend', 'li', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meter', 'nav', 'nobr', 'ol', 'optgroup', 'option', 'output', 'p', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'section', 'select', 'shadow', 'small', 'source', 'spacer', 'span', 'strike', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'tr', 'track', 'tt', 'u', 'ul', 'var', 'video', 'wbr']);\n\n// SVG\nconst svg$1 = freeze(['svg', 'a', 'altglyph', 'altglyphdef', 'altglyphitem', 'animatecolor', 'animatemotion', 'animatetransform', 'circle', 'clippath', 'defs', 'desc', 'ellipse', 'filter', 'font', 'g', 'glyph', 'glyphref', 'hkern', 'image', 'line', 'lineargradient', 'marker', 'mask', 'metadata', 'mpath', 'path', 'pattern', 'polygon', 'polyline', 'radialgradient', 'rect', 'stop', 'style', 'switch', 'symbol', 'text', 'textpath', 'title', 'tref', 'tspan', 'view', 'vkern']);\nconst svgFilters = freeze(['feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix', 'feDiffuseLighting', 'feDisplacementMap', 'feDistantLight', 'feDropShadow', 'feFlood', 'feFuncA', 'feFuncB', 'feFuncG', 'feFuncR', 'feGaussianBlur', 'feImage', 'feMerge', 'feMergeNode', 'feMorphology', 'feOffset', 'fePointLight', 'feSpecularLighting', 'feSpotLight', 'feTile', 'feTurbulence']);\n\n// List of SVG elements that are disallowed by default.\n// We still need to know them so that we can do namespace\n// checks properly in case one wants to add them to\n// allow-list.\nconst svgDisallowed = freeze(['animate', 'color-profile', 'cursor', 'discard', 'font-face', 'font-face-format', 'font-face-name', 'font-face-src', 'font-face-uri', 'foreignobject', 'hatch', 'hatchpath', 'mesh', 'meshgradient', 'meshpatch', 'meshrow', 'missing-glyph', 'script', 'set', 'solidcolor', 'unknown', 'use']);\nconst mathMl$1 = freeze(['math', 'menclose', 'merror', 'mfenced', 'mfrac', 'mglyph', 'mi', 'mlabeledtr', 'mmultiscripts', 'mn', 'mo', 'mover', 'mpadded', 'mphantom', 'mroot', 'mrow', 'ms', 'mspace', 'msqrt', 'mstyle', 'msub', 'msup', 'msubsup', 'mtable', 'mtd', 'mtext', 'mtr', 'munder', 'munderover', 'mprescripts']);\n\n// Similarly to SVG, we want to know all MathML elements,\n// even those that we disallow by default.\nconst mathMlDisallowed = freeze(['maction', 'maligngroup', 'malignmark', 'mlongdiv', 'mscarries', 'mscarry', 'msgroup', 'mstack', 'msline', 'msrow', 'semantics', 'annotation', 'annotation-xml', 'mprescripts', 'none']);\nconst text = freeze(['#text']);\n\nconst html = freeze(['accept', 'action', 'align', 'alt', 'autocapitalize', 'autocomplete', 'autopictureinpicture', 'autoplay', 'background', 'bgcolor', 'border', 'capture', 'cellpadding', 'cellspacing', 'checked', 'cite', 'class', 'clear', 'color', 'cols', 'colspan', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inputmode', 'integrity', 'ismap', 'kind', 'label', 'lang', 'list', 'loading', 'loop', 'low', 'max', 'maxlength', 'media', 'method', 'min', 'minlength', 'multiple', 'muted', 'name', 'nonce', 'noshade', 'novalidate', 'nowrap', 'open', 'optimum', 'pattern', 'placeholder', 'playsinline', 'popover', 'popovertarget', 'popovertargetaction', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'wrap', 'xmlns', 'slot']);\nconst svg = freeze(['accent-height', 'accumulate', 'additive', 'alignment-baseline', 'ascent', 'attributename', 'attributetype', 'azimuth', 'basefrequency', 'baseline-shift', 'begin', 'bias', 'by', 'class', 'clip', 'clippathunits', 'clip-path', 'clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cx', 'cy', 'd', 'dx', 'dy', 'diffuseconstant', 'direction', 'display', 'divisor', 'dur', 'edgemode', 'elevation', 'end', 'fill', 'fill-opacity', 'fill-rule', 'filter', 'filterunits', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'fx', 'fy', 'g1', 'g2', 'glyph-name', 'glyphref', 'gradientunits', 'gradienttransform', 'height', 'href', 'id', 'image-rendering', 'in', 'in2', 'k', 'k1', 'k2', 'k3', 'k4', 'kerning', 'keypoints', 'keysplines', 'keytimes', 'lang', 'lengthadjust', 'letter-spacing', 'kernelmatrix', 'kernelunitlength', 'lighting-color', 'local', 'marker-end', 'marker-mid', 'marker-start', 'markerheight', 'markerunits', 'markerwidth', 'maskcontentunits', 'maskunits', 'max', 'mask', 'media', 'method', 'mode', 'min', 'name', 'numoctaves', 'offset', 'operator', 'opacity', 'order', 'orient', 'orientation', 'origin', 'overflow', 'paint-order', 'path', 'pathlength', 'patterncontentunits', 'patterntransform', 'patternunits', 'points', 'preservealpha', 'preserveaspectratio', 'primitiveunits', 'r', 'rx', 'ry', 'radius', 'refx', 'refy', 'repeatcount', 'repeatdur', 'restart', 'result', 'rotate', 'scale', 'seed', 'shape-rendering', 'specularconstant', 'specularexponent', 'spreadmethod', 'startoffset', 'stddeviation', 'stitchtiles', 'stop-color', 'stop-opacity', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke', 'stroke-width', 'style', 'surfacescale', 'systemlanguage', 'tabindex', 'targetx', 'targety', 'transform', 'transform-origin', 'text-anchor', 'text-decoration', 'text-rendering', 'textlength', 'type', 'u1', 'u2', 'unicode', 'values', 'viewbox', 'visibility', 'version', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'width', 'word-spacing', 'wrap', 'writing-mode', 'xchannelselector', 'ychannelselector', 'x', 'x1', 'x2', 'xmlns', 'y', 'y1', 'y2', 'z', 'zoomandpan']);\nconst mathMl = freeze(['accent', 'accentunder', 'align', 'bevelled', 'close', 'columnsalign', 'columnlines', 'columnspan', 'denomalign', 'depth', 'dir', 'display', 'displaystyle', 'encoding', 'fence', 'frame', 'height', 'href', 'id', 'largeop', 'length', 'linethickness', 'lspace', 'lquote', 'mathbackground', 'mathcolor', 'mathsize', 'mathvariant', 'maxsize', 'minsize', 'movablelimits', 'notation', 'numalign', 'open', 'rowalign', 'rowlines', 'rowspacing', 'rowspan', 'rspace', 'rquote', 'scriptlevel', 'scriptminsize', 'scriptsizemultiplier', 'selection', 'separator', 'separators', 'stretchy', 'subscriptshift', 'supscriptshift', 'symmetric', 'voffset', 'width', 'xmlns']);\nconst xml = freeze(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']);\n\n// eslint-disable-next-line unicorn/better-regex\nconst MUSTACHE_EXPR = seal(/\\{\\{[\\w\\W]*|[\\w\\W]*\\}\\}/gm); // Specify template detection regex for SAFE_FOR_TEMPLATES mode\nconst ERB_EXPR = seal(/<%[\\w\\W]*|[\\w\\W]*%>/gm);\nconst TMPLIT_EXPR = seal(/\\${[\\w\\W]*}/gm);\nconst DATA_ATTR = seal(/^data-[\\-\\w.\\u00B7-\\uFFFF]/); // eslint-disable-line no-useless-escape\nconst ARIA_ATTR = seal(/^aria-[\\-\\w]+$/); // eslint-disable-line no-useless-escape\nconst IS_ALLOWED_URI = seal(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\\-]+(?:[^a-z+.\\-:]|$))/i // eslint-disable-line no-useless-escape\n);\nconst IS_SCRIPT_OR_DATA = seal(/^(?:\\w+script|data):/i);\nconst ATTR_WHITESPACE = seal(/[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205F\\u3000]/g // eslint-disable-line no-control-regex\n);\nconst DOCTYPE_NAME = seal(/^html$/i);\nconst CUSTOM_ELEMENT = seal(/^[a-z][.\\w]*(-[.\\w]+)+$/i);\n\nvar EXPRESSIONS = /*#__PURE__*/Object.freeze({\n __proto__: null,\n MUSTACHE_EXPR: MUSTACHE_EXPR,\n ERB_EXPR: ERB_EXPR,\n TMPLIT_EXPR: TMPLIT_EXPR,\n DATA_ATTR: DATA_ATTR,\n ARIA_ATTR: ARIA_ATTR,\n IS_ALLOWED_URI: IS_ALLOWED_URI,\n IS_SCRIPT_OR_DATA: IS_SCRIPT_OR_DATA,\n ATTR_WHITESPACE: ATTR_WHITESPACE,\n DOCTYPE_NAME: DOCTYPE_NAME,\n CUSTOM_ELEMENT: CUSTOM_ELEMENT\n});\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType\nconst NODE_TYPE = {\n element: 1,\n attribute: 2,\n text: 3,\n cdataSection: 4,\n entityReference: 5,\n // Deprecated\n entityNode: 6,\n // Deprecated\n progressingInstruction: 7,\n comment: 8,\n document: 9,\n documentType: 10,\n documentFragment: 11,\n notation: 12 // Deprecated\n};\nconst getGlobal = function getGlobal() {\n return typeof window === 'undefined' ? null : window;\n};\n\n/**\n * Creates a no-op policy for internal use only.\n * Don't export this function outside this module!\n * @param {TrustedTypePolicyFactory} trustedTypes The policy factory.\n * @param {HTMLScriptElement} purifyHostElement The Script element used to load DOMPurify (to determine policy name suffix).\n * @return {TrustedTypePolicy} The policy created (or null, if Trusted Types\n * are not supported or creating the policy failed).\n */\nconst _createTrustedTypesPolicy = function _createTrustedTypesPolicy(trustedTypes, purifyHostElement) {\n if (typeof trustedTypes !== 'object' || typeof trustedTypes.createPolicy !== 'function') {\n return null;\n }\n\n // Allow the callers to control the unique policy name\n // by adding a data-tt-policy-suffix to the script element with the DOMPurify.\n // Policy creation with duplicate names throws in Trusted Types.\n let suffix = null;\n const ATTR_NAME = 'data-tt-policy-suffix';\n if (purifyHostElement && purifyHostElement.hasAttribute(ATTR_NAME)) {\n suffix = purifyHostElement.getAttribute(ATTR_NAME);\n }\n const policyName = 'dompurify' + (suffix ? '#' + suffix : '');\n try {\n return trustedTypes.createPolicy(policyName, {\n createHTML(html) {\n return html;\n },\n createScriptURL(scriptUrl) {\n return scriptUrl;\n }\n });\n } catch (_) {\n // Policy creation failed (most likely another DOMPurify script has\n // already run). Skip creating the policy, as this will only cause errors\n // if TT are enforced.\n console.warn('TrustedTypes policy ' + policyName + ' could not be created.');\n return null;\n }\n};\nfunction createDOMPurify() {\n let window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getGlobal();\n const DOMPurify = root => createDOMPurify(root);\n\n /**\n * Version label, exposed for easier checks\n * if DOMPurify is up to date or not\n */\n DOMPurify.version = '3.1.6';\n\n /**\n * Array of elements that DOMPurify removed during sanitation.\n * Empty if nothing was removed.\n */\n DOMPurify.removed = [];\n if (!window || !window.document || window.document.nodeType !== NODE_TYPE.document) {\n // Not running in a browser, provide a factory function\n // so that you can pass your own Window\n DOMPurify.isSupported = false;\n return DOMPurify;\n }\n let {\n document\n } = window;\n const originalDocument = document;\n const currentScript = originalDocument.currentScript;\n const {\n DocumentFragment,\n HTMLTemplateElement,\n Node,\n Element,\n NodeFilter,\n NamedNodeMap = window.NamedNodeMap || window.MozNamedAttrMap,\n HTMLFormElement,\n DOMParser,\n trustedTypes\n } = window;\n const ElementPrototype = Element.prototype;\n const cloneNode = lookupGetter(ElementPrototype, 'cloneNode');\n const remove = lookupGetter(ElementPrototype, 'remove');\n const getNextSibling = lookupGetter(ElementPrototype, 'nextSibling');\n const getChildNodes = lookupGetter(ElementPrototype, 'childNodes');\n const getParentNode = lookupGetter(ElementPrototype, 'parentNode');\n\n // As per issue #47, the web-components registry is inherited by a\n // new document created via createHTMLDocument. As per the spec\n // (http://w3c.github.io/webcomponents/spec/custom/#creating-and-passing-registries)\n // a new empty registry is used when creating a template contents owner\n // document, so we use that as our parent document to ensure nothing\n // is inherited.\n if (typeof HTMLTemplateElement === 'function') {\n const template = document.createElement('template');\n if (template.content && template.content.ownerDocument) {\n document = template.content.ownerDocument;\n }\n }\n let trustedTypesPolicy;\n let emptyHTML = '';\n const {\n implementation,\n createNodeIterator,\n createDocumentFragment,\n getElementsByTagName\n } = document;\n const {\n importNode\n } = originalDocument;\n let hooks = {};\n\n /**\n * Expose whether this browser supports running the full DOMPurify.\n */\n DOMPurify.isSupported = typeof entries === 'function' && typeof getParentNode === 'function' && implementation && implementation.createHTMLDocument !== undefined;\n const {\n MUSTACHE_EXPR,\n ERB_EXPR,\n TMPLIT_EXPR,\n DATA_ATTR,\n ARIA_ATTR,\n IS_SCRIPT_OR_DATA,\n ATTR_WHITESPACE,\n CUSTOM_ELEMENT\n } = EXPRESSIONS;\n let {\n IS_ALLOWED_URI: IS_ALLOWED_URI$1\n } = EXPRESSIONS;\n\n /**\n * We consider the elements and attributes below to be safe. Ideally\n * don't add any new ones but feel free to remove unwanted ones.\n */\n\n /* allowed element names */\n let ALLOWED_TAGS = null;\n const DEFAULT_ALLOWED_TAGS = addToSet({}, [...html$1, ...svg$1, ...svgFilters, ...mathMl$1, ...text]);\n\n /* Allowed attribute names */\n let ALLOWED_ATTR = null;\n const DEFAULT_ALLOWED_ATTR = addToSet({}, [...html, ...svg, ...mathMl, ...xml]);\n\n /*\n * Configure how DOMPUrify should handle custom elements and their attributes as well as customized built-in elements.\n * @property {RegExp|Function|null} tagNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any custom elements)\n * @property {RegExp|Function|null} attributeNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any attributes not on the allow list)\n * @property {boolean} allowCustomizedBuiltInElements allow custom elements derived from built-ins if they pass CUSTOM_ELEMENT_HANDLING.tagNameCheck. Default: `false`.\n */\n let CUSTOM_ELEMENT_HANDLING = Object.seal(create(null, {\n tagNameCheck: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: null\n },\n attributeNameCheck: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: null\n },\n allowCustomizedBuiltInElements: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: false\n }\n }));\n\n /* Explicitly forbidden tags (overrides ALLOWED_TAGS/ADD_TAGS) */\n let FORBID_TAGS = null;\n\n /* Explicitly forbidden attributes (overrides ALLOWED_ATTR/ADD_ATTR) */\n let FORBID_ATTR = null;\n\n /* Decide if ARIA attributes are okay */\n let ALLOW_ARIA_ATTR = true;\n\n /* Decide if custom data attributes are okay */\n let ALLOW_DATA_ATTR = true;\n\n /* Decide if unknown protocols are okay */\n let ALLOW_UNKNOWN_PROTOCOLS = false;\n\n /* Decide if self-closing tags in attributes are allowed.\n * Usually removed due to a mXSS issue in jQuery 3.0 */\n let ALLOW_SELF_CLOSE_IN_ATTR = true;\n\n /* Output should be safe for common template engines.\n * This means, DOMPurify removes data attributes, mustaches and ERB\n */\n let SAFE_FOR_TEMPLATES = false;\n\n /* Output should be safe even for XML used within HTML and alike.\n * This means, DOMPurify removes comments when containing risky content.\n */\n let SAFE_FOR_XML = true;\n\n /* Decide if document with ... should be returned */\n let WHOLE_DOCUMENT = false;\n\n /* Track whether config is already set on this instance of DOMPurify. */\n let SET_CONFIG = false;\n\n /* Decide if all elements (e.g. style, script) must be children of\n * document.body. By default, browsers might move them to document.head */\n let FORCE_BODY = false;\n\n /* Decide if a DOM `HTMLBodyElement` should be returned, instead of a html\n * string (or a TrustedHTML object if Trusted Types are supported).\n * If `WHOLE_DOCUMENT` is enabled a `HTMLHtmlElement` will be returned instead\n */\n let RETURN_DOM = false;\n\n /* Decide if a DOM `DocumentFragment` should be returned, instead of a html\n * string (or a TrustedHTML object if Trusted Types are supported) */\n let RETURN_DOM_FRAGMENT = false;\n\n /* Try to return a Trusted Type object instead of a string, return a string in\n * case Trusted Types are not supported */\n let RETURN_TRUSTED_TYPE = false;\n\n /* Output should be free from DOM clobbering attacks?\n * This sanitizes markups named with colliding, clobberable built-in DOM APIs.\n */\n let SANITIZE_DOM = true;\n\n /* Achieve full DOM Clobbering protection by isolating the namespace of named\n * properties and JS variables, mitigating attacks that abuse the HTML/DOM spec rules.\n *\n * HTML/DOM spec rules that enable DOM Clobbering:\n * - Named Access on Window (§7.3.3)\n * - DOM Tree Accessors (§3.1.5)\n * - Form Element Parent-Child Relations (§4.10.3)\n * - Iframe srcdoc / Nested WindowProxies (§4.8.5)\n * - HTMLCollection (§4.2.10.2)\n *\n * Namespace isolation is implemented by prefixing `id` and `name` attributes\n * with a constant string, i.e., `user-content-`\n */\n let SANITIZE_NAMED_PROPS = false;\n const SANITIZE_NAMED_PROPS_PREFIX = 'user-content-';\n\n /* Keep element content when removing element? */\n let KEEP_CONTENT = true;\n\n /* If a `Node` is passed to sanitize(), then performs sanitization in-place instead\n * of importing it into a new Document and returning a sanitized copy */\n let IN_PLACE = false;\n\n /* Allow usage of profiles like html, svg and mathMl */\n let USE_PROFILES = {};\n\n /* Tags to ignore content of when KEEP_CONTENT is true */\n let FORBID_CONTENTS = null;\n const DEFAULT_FORBID_CONTENTS = addToSet({}, ['annotation-xml', 'audio', 'colgroup', 'desc', 'foreignobject', 'head', 'iframe', 'math', 'mi', 'mn', 'mo', 'ms', 'mtext', 'noembed', 'noframes', 'noscript', 'plaintext', 'script', 'style', 'svg', 'template', 'thead', 'title', 'video', 'xmp']);\n\n /* Tags that are safe for data: URIs */\n let DATA_URI_TAGS = null;\n const DEFAULT_DATA_URI_TAGS = addToSet({}, ['audio', 'video', 'img', 'source', 'image', 'track']);\n\n /* Attributes safe for values like \"javascript:\" */\n let URI_SAFE_ATTRIBUTES = null;\n const DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ['alt', 'class', 'for', 'id', 'label', 'name', 'pattern', 'placeholder', 'role', 'summary', 'title', 'value', 'style', 'xmlns']);\n const MATHML_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\n const SVG_NAMESPACE = 'http://www.w3.org/2000/svg';\n const HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\n /* Document namespace */\n let NAMESPACE = HTML_NAMESPACE;\n let IS_EMPTY_INPUT = false;\n\n /* Allowed XHTML+XML namespaces */\n let ALLOWED_NAMESPACES = null;\n const DEFAULT_ALLOWED_NAMESPACES = addToSet({}, [MATHML_NAMESPACE, SVG_NAMESPACE, HTML_NAMESPACE], stringToString);\n\n /* Parsing of strict XHTML documents */\n let PARSER_MEDIA_TYPE = null;\n const SUPPORTED_PARSER_MEDIA_TYPES = ['application/xhtml+xml', 'text/html'];\n const DEFAULT_PARSER_MEDIA_TYPE = 'text/html';\n let transformCaseFunc = null;\n\n /* Keep a reference to config to pass to hooks */\n let CONFIG = null;\n\n /* Ideally, do not touch anything below this line */\n /* ______________________________________________ */\n\n const formElement = document.createElement('form');\n const isRegexOrFunction = function isRegexOrFunction(testValue) {\n return testValue instanceof RegExp || testValue instanceof Function;\n };\n\n /**\n * _parseConfig\n *\n * @param {Object} cfg optional config literal\n */\n // eslint-disable-next-line complexity\n const _parseConfig = function _parseConfig() {\n let cfg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (CONFIG && CONFIG === cfg) {\n return;\n }\n\n /* Shield configuration object from tampering */\n if (!cfg || typeof cfg !== 'object') {\n cfg = {};\n }\n\n /* Shield configuration object from prototype pollution */\n cfg = clone(cfg);\n PARSER_MEDIA_TYPE =\n // eslint-disable-next-line unicorn/prefer-includes\n SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? DEFAULT_PARSER_MEDIA_TYPE : cfg.PARSER_MEDIA_TYPE;\n\n // HTML tags and attributes are not case-sensitive, converting to lowercase. Keeping XHTML as is.\n transformCaseFunc = PARSER_MEDIA_TYPE === 'application/xhtml+xml' ? stringToString : stringToLowerCase;\n\n /* Set configuration parameters */\n ALLOWED_TAGS = objectHasOwnProperty(cfg, 'ALLOWED_TAGS') ? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc) : DEFAULT_ALLOWED_TAGS;\n ALLOWED_ATTR = objectHasOwnProperty(cfg, 'ALLOWED_ATTR') ? addToSet({}, cfg.ALLOWED_ATTR, transformCaseFunc) : DEFAULT_ALLOWED_ATTR;\n ALLOWED_NAMESPACES = objectHasOwnProperty(cfg, 'ALLOWED_NAMESPACES') ? addToSet({}, cfg.ALLOWED_NAMESPACES, stringToString) : DEFAULT_ALLOWED_NAMESPACES;\n URI_SAFE_ATTRIBUTES = objectHasOwnProperty(cfg, 'ADD_URI_SAFE_ATTR') ? addToSet(clone(DEFAULT_URI_SAFE_ATTRIBUTES),\n // eslint-disable-line indent\n cfg.ADD_URI_SAFE_ATTR,\n // eslint-disable-line indent\n transformCaseFunc // eslint-disable-line indent\n ) // eslint-disable-line indent\n : DEFAULT_URI_SAFE_ATTRIBUTES;\n DATA_URI_TAGS = objectHasOwnProperty(cfg, 'ADD_DATA_URI_TAGS') ? addToSet(clone(DEFAULT_DATA_URI_TAGS),\n // eslint-disable-line indent\n cfg.ADD_DATA_URI_TAGS,\n // eslint-disable-line indent\n transformCaseFunc // eslint-disable-line indent\n ) // eslint-disable-line indent\n : DEFAULT_DATA_URI_TAGS;\n FORBID_CONTENTS = objectHasOwnProperty(cfg, 'FORBID_CONTENTS') ? addToSet({}, cfg.FORBID_CONTENTS, transformCaseFunc) : DEFAULT_FORBID_CONTENTS;\n FORBID_TAGS = objectHasOwnProperty(cfg, 'FORBID_TAGS') ? addToSet({}, cfg.FORBID_TAGS, transformCaseFunc) : {};\n FORBID_ATTR = objectHasOwnProperty(cfg, 'FORBID_ATTR') ? addToSet({}, cfg.FORBID_ATTR, transformCaseFunc) : {};\n USE_PROFILES = objectHasOwnProperty(cfg, 'USE_PROFILES') ? cfg.USE_PROFILES : false;\n ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; // Default true\n ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; // Default true\n ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; // Default false\n ALLOW_SELF_CLOSE_IN_ATTR = cfg.ALLOW_SELF_CLOSE_IN_ATTR !== false; // Default true\n SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; // Default false\n SAFE_FOR_XML = cfg.SAFE_FOR_XML !== false; // Default true\n WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; // Default false\n RETURN_DOM = cfg.RETURN_DOM || false; // Default false\n RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; // Default false\n RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; // Default false\n FORCE_BODY = cfg.FORCE_BODY || false; // Default false\n SANITIZE_DOM = cfg.SANITIZE_DOM !== false; // Default true\n SANITIZE_NAMED_PROPS = cfg.SANITIZE_NAMED_PROPS || false; // Default false\n KEEP_CONTENT = cfg.KEEP_CONTENT !== false; // Default true\n IN_PLACE = cfg.IN_PLACE || false; // Default false\n IS_ALLOWED_URI$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI;\n NAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE;\n CUSTOM_ELEMENT_HANDLING = cfg.CUSTOM_ELEMENT_HANDLING || {};\n if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck)) {\n CUSTOM_ELEMENT_HANDLING.tagNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck;\n }\n if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)) {\n CUSTOM_ELEMENT_HANDLING.attributeNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck;\n }\n if (cfg.CUSTOM_ELEMENT_HANDLING && typeof cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements === 'boolean') {\n CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements;\n }\n if (SAFE_FOR_TEMPLATES) {\n ALLOW_DATA_ATTR = false;\n }\n if (RETURN_DOM_FRAGMENT) {\n RETURN_DOM = true;\n }\n\n /* Parse profile info */\n if (USE_PROFILES) {\n ALLOWED_TAGS = addToSet({}, text);\n ALLOWED_ATTR = [];\n if (USE_PROFILES.html === true) {\n addToSet(ALLOWED_TAGS, html$1);\n addToSet(ALLOWED_ATTR, html);\n }\n if (USE_PROFILES.svg === true) {\n addToSet(ALLOWED_TAGS, svg$1);\n addToSet(ALLOWED_ATTR, svg);\n addToSet(ALLOWED_ATTR, xml);\n }\n if (USE_PROFILES.svgFilters === true) {\n addToSet(ALLOWED_TAGS, svgFilters);\n addToSet(ALLOWED_ATTR, svg);\n addToSet(ALLOWED_ATTR, xml);\n }\n if (USE_PROFILES.mathMl === true) {\n addToSet(ALLOWED_TAGS, mathMl$1);\n addToSet(ALLOWED_ATTR, mathMl);\n addToSet(ALLOWED_ATTR, xml);\n }\n }\n\n /* Merge configuration parameters */\n if (cfg.ADD_TAGS) {\n if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {\n ALLOWED_TAGS = clone(ALLOWED_TAGS);\n }\n addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc);\n }\n if (cfg.ADD_ATTR) {\n if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {\n ALLOWED_ATTR = clone(ALLOWED_ATTR);\n }\n addToSet(ALLOWED_ATTR, cfg.ADD_ATTR, transformCaseFunc);\n }\n if (cfg.ADD_URI_SAFE_ATTR) {\n addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR, transformCaseFunc);\n }\n if (cfg.FORBID_CONTENTS) {\n if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) {\n FORBID_CONTENTS = clone(FORBID_CONTENTS);\n }\n addToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS, transformCaseFunc);\n }\n\n /* Add #text in case KEEP_CONTENT is set to true */\n if (KEEP_CONTENT) {\n ALLOWED_TAGS['#text'] = true;\n }\n\n /* Add html, head and body to ALLOWED_TAGS in case WHOLE_DOCUMENT is true */\n if (WHOLE_DOCUMENT) {\n addToSet(ALLOWED_TAGS, ['html', 'head', 'body']);\n }\n\n /* Add tbody to ALLOWED_TAGS in case tables are permitted, see #286, #365 */\n if (ALLOWED_TAGS.table) {\n addToSet(ALLOWED_TAGS, ['tbody']);\n delete FORBID_TAGS.tbody;\n }\n if (cfg.TRUSTED_TYPES_POLICY) {\n if (typeof cfg.TRUSTED_TYPES_POLICY.createHTML !== 'function') {\n throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.');\n }\n if (typeof cfg.TRUSTED_TYPES_POLICY.createScriptURL !== 'function') {\n throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.');\n }\n\n // Overwrite existing TrustedTypes policy.\n trustedTypesPolicy = cfg.TRUSTED_TYPES_POLICY;\n\n // Sign local variables required by `sanitize`.\n emptyHTML = trustedTypesPolicy.createHTML('');\n } else {\n // Uninitialized policy, attempt to initialize the internal dompurify policy.\n if (trustedTypesPolicy === undefined) {\n trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript);\n }\n\n // If creating the internal policy succeeded sign internal variables.\n if (trustedTypesPolicy !== null && typeof emptyHTML === 'string') {\n emptyHTML = trustedTypesPolicy.createHTML('');\n }\n }\n\n // Prevent further manipulation of configuration.\n // Not available in IE8, Safari 5, etc.\n if (freeze) {\n freeze(cfg);\n }\n CONFIG = cfg;\n };\n const MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ['mi', 'mo', 'mn', 'ms', 'mtext']);\n const HTML_INTEGRATION_POINTS = addToSet({}, ['foreignobject', 'annotation-xml']);\n\n // Certain elements are allowed in both SVG and HTML\n // namespace. We need to specify them explicitly\n // so that they don't get erroneously deleted from\n // HTML namespace.\n const COMMON_SVG_AND_HTML_ELEMENTS = addToSet({}, ['title', 'style', 'font', 'a', 'script']);\n\n /* Keep track of all possible SVG and MathML tags\n * so that we can perform the namespace checks\n * correctly. */\n const ALL_SVG_TAGS = addToSet({}, [...svg$1, ...svgFilters, ...svgDisallowed]);\n const ALL_MATHML_TAGS = addToSet({}, [...mathMl$1, ...mathMlDisallowed]);\n\n /**\n * @param {Element} element a DOM element whose namespace is being checked\n * @returns {boolean} Return false if the element has a\n * namespace that a spec-compliant parser would never\n * return. Return true otherwise.\n */\n const _checkValidNamespace = function _checkValidNamespace(element) {\n let parent = getParentNode(element);\n\n // In JSDOM, if we're inside shadow DOM, then parentNode\n // can be null. We just simulate parent in this case.\n if (!parent || !parent.tagName) {\n parent = {\n namespaceURI: NAMESPACE,\n tagName: 'template'\n };\n }\n const tagName = stringToLowerCase(element.tagName);\n const parentTagName = stringToLowerCase(parent.tagName);\n if (!ALLOWED_NAMESPACES[element.namespaceURI]) {\n return false;\n }\n if (element.namespaceURI === SVG_NAMESPACE) {\n // The only way to switch from HTML namespace to SVG\n // is via . If it happens via any other tag, then\n // it should be killed.\n if (parent.namespaceURI === HTML_NAMESPACE) {\n return tagName === 'svg';\n }\n\n // The only way to switch from MathML to SVG is via`\n // svg if parent is either or MathML\n // text integration points.\n if (parent.namespaceURI === MATHML_NAMESPACE) {\n return tagName === 'svg' && (parentTagName === 'annotation-xml' || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]);\n }\n\n // We only allow elements that are defined in SVG\n // spec. All others are disallowed in SVG namespace.\n return Boolean(ALL_SVG_TAGS[tagName]);\n }\n if (element.namespaceURI === MATHML_NAMESPACE) {\n // The only way to switch from HTML namespace to MathML\n // is via . If it happens via any other tag, then\n // it should be killed.\n if (parent.namespaceURI === HTML_NAMESPACE) {\n return tagName === 'math';\n }\n\n // The only way to switch from SVG to MathML is via\n // and HTML integration points\n if (parent.namespaceURI === SVG_NAMESPACE) {\n return tagName === 'math' && HTML_INTEGRATION_POINTS[parentTagName];\n }\n\n // We only allow elements that are defined in MathML\n // spec. All others are disallowed in MathML namespace.\n return Boolean(ALL_MATHML_TAGS[tagName]);\n }\n if (element.namespaceURI === HTML_NAMESPACE) {\n // The only way to switch from SVG to HTML is via\n // HTML integration points, and from MathML to HTML\n // is via MathML text integration points\n if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) {\n return false;\n }\n if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) {\n return false;\n }\n\n // We disallow tags that are specific for MathML\n // or SVG and should never appear in HTML namespace\n return !ALL_MATHML_TAGS[tagName] && (COMMON_SVG_AND_HTML_ELEMENTS[tagName] || !ALL_SVG_TAGS[tagName]);\n }\n\n // For XHTML and XML documents that support custom namespaces\n if (PARSER_MEDIA_TYPE === 'application/xhtml+xml' && ALLOWED_NAMESPACES[element.namespaceURI]) {\n return true;\n }\n\n // The code should never reach this place (this means\n // that the element somehow got namespace that is not\n // HTML, SVG, MathML or allowed via ALLOWED_NAMESPACES).\n // Return false just in case.\n return false;\n };\n\n /**\n * _forceRemove\n *\n * @param {Node} node a DOM node\n */\n const _forceRemove = function _forceRemove(node) {\n arrayPush(DOMPurify.removed, {\n element: node\n });\n try {\n // eslint-disable-next-line unicorn/prefer-dom-node-remove\n getParentNode(node).removeChild(node);\n } catch (_) {\n remove(node);\n }\n };\n\n /**\n * _removeAttribute\n *\n * @param {String} name an Attribute name\n * @param {Node} node a DOM node\n */\n const _removeAttribute = function _removeAttribute(name, node) {\n try {\n arrayPush(DOMPurify.removed, {\n attribute: node.getAttributeNode(name),\n from: node\n });\n } catch (_) {\n arrayPush(DOMPurify.removed, {\n attribute: null,\n from: node\n });\n }\n node.removeAttribute(name);\n\n // We void attribute values for unremovable \"is\"\" attributes\n if (name === 'is' && !ALLOWED_ATTR[name]) {\n if (RETURN_DOM || RETURN_DOM_FRAGMENT) {\n try {\n _forceRemove(node);\n } catch (_) {}\n } else {\n try {\n node.setAttribute(name, '');\n } catch (_) {}\n }\n }\n };\n\n /**\n * _initDocument\n *\n * @param {String} dirty a string of dirty markup\n * @return {Document} a DOM, filled with the dirty markup\n */\n const _initDocument = function _initDocument(dirty) {\n /* Create a HTML document */\n let doc = null;\n let leadingWhitespace = null;\n if (FORCE_BODY) {\n dirty = '' + dirty;\n } else {\n /* If FORCE_BODY isn't used, leading whitespace needs to be preserved manually */\n const matches = stringMatch(dirty, /^[\\r\\n\\t ]+/);\n leadingWhitespace = matches && matches[0];\n }\n if (PARSER_MEDIA_TYPE === 'application/xhtml+xml' && NAMESPACE === HTML_NAMESPACE) {\n // Root of XHTML doc must contain xmlns declaration (see https://www.w3.org/TR/xhtml1/normative.html#strict)\n dirty = '' + dirty + '';\n }\n const dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty;\n /*\n * Use the DOMParser API by default, fallback later if needs be\n * DOMParser not work for svg when has multiple root element.\n */\n if (NAMESPACE === HTML_NAMESPACE) {\n try {\n doc = new DOMParser().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE);\n } catch (_) {}\n }\n\n /* Use createHTMLDocument in case DOMParser is not available */\n if (!doc || !doc.documentElement) {\n doc = implementation.createDocument(NAMESPACE, 'template', null);\n try {\n doc.documentElement.innerHTML = IS_EMPTY_INPUT ? emptyHTML : dirtyPayload;\n } catch (_) {\n // Syntax error if dirtyPayload is invalid xml\n }\n }\n const body = doc.body || doc.documentElement;\n if (dirty && leadingWhitespace) {\n body.insertBefore(document.createTextNode(leadingWhitespace), body.childNodes[0] || null);\n }\n\n /* Work on whole document or just its body */\n if (NAMESPACE === HTML_NAMESPACE) {\n return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? 'html' : 'body')[0];\n }\n return WHOLE_DOCUMENT ? doc.documentElement : body;\n };\n\n /**\n * Creates a NodeIterator object that you can use to traverse filtered lists of nodes or elements in a document.\n *\n * @param {Node} root The root element or node to start traversing on.\n * @return {NodeIterator} The created NodeIterator\n */\n const _createNodeIterator = function _createNodeIterator(root) {\n return createNodeIterator.call(root.ownerDocument || root, root,\n // eslint-disable-next-line no-bitwise\n NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT | NodeFilter.SHOW_PROCESSING_INSTRUCTION | NodeFilter.SHOW_CDATA_SECTION, null);\n };\n\n /**\n * _isClobbered\n *\n * @param {Node} elm element to check for clobbering attacks\n * @return {Boolean} true if clobbered, false if safe\n */\n const _isClobbered = function _isClobbered(elm) {\n return elm instanceof HTMLFormElement && (typeof elm.nodeName !== 'string' || typeof elm.textContent !== 'string' || typeof elm.removeChild !== 'function' || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== 'function' || typeof elm.setAttribute !== 'function' || typeof elm.namespaceURI !== 'string' || typeof elm.insertBefore !== 'function' || typeof elm.hasChildNodes !== 'function');\n };\n\n /**\n * Checks whether the given object is a DOM node.\n *\n * @param {Node} object object to check whether it's a DOM node\n * @return {Boolean} true is object is a DOM node\n */\n const _isNode = function _isNode(object) {\n return typeof Node === 'function' && object instanceof Node;\n };\n\n /**\n * _executeHook\n * Execute user configurable hooks\n *\n * @param {String} entryPoint Name of the hook's entry point\n * @param {Node} currentNode node to work on with the hook\n * @param {Object} data additional hook parameters\n */\n const _executeHook = function _executeHook(entryPoint, currentNode, data) {\n if (!hooks[entryPoint]) {\n return;\n }\n arrayForEach(hooks[entryPoint], hook => {\n hook.call(DOMPurify, currentNode, data, CONFIG);\n });\n };\n\n /**\n * _sanitizeElements\n *\n * @protect nodeName\n * @protect textContent\n * @protect removeChild\n *\n * @param {Node} currentNode to check for permission to exist\n * @return {Boolean} true if node was killed, false if left alive\n */\n const _sanitizeElements = function _sanitizeElements(currentNode) {\n let content = null;\n\n /* Execute a hook if present */\n _executeHook('beforeSanitizeElements', currentNode, null);\n\n /* Check if element is clobbered or can clobber */\n if (_isClobbered(currentNode)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Now let's check the element's type and name */\n const tagName = transformCaseFunc(currentNode.nodeName);\n\n /* Execute a hook if present */\n _executeHook('uponSanitizeElement', currentNode, {\n tagName,\n allowedTags: ALLOWED_TAGS\n });\n\n /* Detect mXSS attempts abusing namespace confusion */\n if (currentNode.hasChildNodes() && !_isNode(currentNode.firstElementChild) && regExpTest(/<[/\\w]/g, currentNode.innerHTML) && regExpTest(/<[/\\w]/g, currentNode.textContent)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Remove any occurrence of processing instructions */\n if (currentNode.nodeType === NODE_TYPE.progressingInstruction) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Remove any kind of possibly harmful comments */\n if (SAFE_FOR_XML && currentNode.nodeType === NODE_TYPE.comment && regExpTest(/<[/\\w]/g, currentNode.data)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Remove element if anything forbids its presence */\n if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {\n /* Check if we have a custom element to handle */\n if (!FORBID_TAGS[tagName] && _isBasicCustomElement(tagName)) {\n if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, tagName)) {\n return false;\n }\n if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(tagName)) {\n return false;\n }\n }\n\n /* Keep content except for bad-listed elements */\n if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) {\n const parentNode = getParentNode(currentNode) || currentNode.parentNode;\n const childNodes = getChildNodes(currentNode) || currentNode.childNodes;\n if (childNodes && parentNode) {\n const childCount = childNodes.length;\n for (let i = childCount - 1; i >= 0; --i) {\n const childClone = cloneNode(childNodes[i], true);\n childClone.__removalCount = (currentNode.__removalCount || 0) + 1;\n parentNode.insertBefore(childClone, getNextSibling(currentNode));\n }\n }\n }\n _forceRemove(currentNode);\n return true;\n }\n\n /* Check whether element has a valid namespace */\n if (currentNode instanceof Element && !_checkValidNamespace(currentNode)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Make sure that older browsers don't get fallback-tag mXSS */\n if ((tagName === 'noscript' || tagName === 'noembed' || tagName === 'noframes') && regExpTest(/<\\/no(script|embed|frames)/i, currentNode.innerHTML)) {\n _forceRemove(currentNode);\n return true;\n }\n\n /* Sanitize element content to be template-safe */\n if (SAFE_FOR_TEMPLATES && currentNode.nodeType === NODE_TYPE.text) {\n /* Get the element's text content */\n content = currentNode.textContent;\n arrayForEach([MUSTACHE_EXPR, ERB_EXPR, TMPLIT_EXPR], expr => {\n content = stringReplace(content, expr, ' ');\n });\n if (currentNode.textContent !== content) {\n arrayPush(DOMPurify.removed, {\n element: currentNode.cloneNode()\n });\n currentNode.textContent = content;\n }\n }\n\n /* Execute a hook if present */\n _executeHook('afterSanitizeElements', currentNode, null);\n return false;\n };\n\n /**\n * _isValidAttribute\n *\n * @param {string} lcTag Lowercase tag name of containing element.\n * @param {string} lcName Lowercase attribute name.\n * @param {string} value Attribute value.\n * @return {Boolean} Returns true if `value` is valid, otherwise false.\n */\n // eslint-disable-next-line complexity\n const _isValidAttribute = function _isValidAttribute(lcTag, lcName, value) {\n /* Make sure attribute cannot clobber */\n if (SANITIZE_DOM && (lcName === 'id' || lcName === 'name') && (value in document || value in formElement)) {\n return false;\n }\n\n /* Allow valid data-* attributes: At least one character after \"-\"\n (https://html.spec.whatwg.org/multipage/dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes)\n XML-compatible (https://html.spec.whatwg.org/multipage/infrastructure.html#xml-compatible and http://www.w3.org/TR/xml/#d0e804)\n We don't need to check the value; it's always URI safe. */\n if (ALLOW_DATA_ATTR && !FORBID_ATTR[lcName] && regExpTest(DATA_ATTR, lcName)) ; else if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR, lcName)) ; else if (!ALLOWED_ATTR[lcName] || FORBID_ATTR[lcName]) {\n if (\n // First condition does a very basic check if a) it's basically a valid custom element tagname AND\n // b) if the tagName passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck\n // and c) if the attribute name passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.attributeNameCheck\n _isBasicCustomElement(lcTag) && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, lcTag) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(lcTag)) && (CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.attributeNameCheck, lcName) || CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.attributeNameCheck(lcName)) ||\n // Alternative, second condition checks if it's an `is`-attribute, AND\n // the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck\n lcName === 'is' && CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, value) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(value))) ; else {\n return false;\n }\n /* Check value is safe. First, is attr inert? If so, is safe */\n } else if (URI_SAFE_ATTRIBUTES[lcName]) ; else if (regExpTest(IS_ALLOWED_URI$1, stringReplace(value, ATTR_WHITESPACE, ''))) ; else if ((lcName === 'src' || lcName === 'xlink:href' || lcName === 'href') && lcTag !== 'script' && stringIndexOf(value, 'data:') === 0 && DATA_URI_TAGS[lcTag]) ; else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA, stringReplace(value, ATTR_WHITESPACE, ''))) ; else if (value) {\n return false;\n } else ;\n return true;\n };\n\n /**\n * _isBasicCustomElement\n * checks if at least one dash is included in tagName, and it's not the first char\n * for more sophisticated checking see https://github.com/sindresorhus/validate-element-name\n *\n * @param {string} tagName name of the tag of the node to sanitize\n * @returns {boolean} Returns true if the tag name meets the basic criteria for a custom element, otherwise false.\n */\n const _isBasicCustomElement = function _isBasicCustomElement(tagName) {\n return tagName !== 'annotation-xml' && stringMatch(tagName, CUSTOM_ELEMENT);\n };\n\n /**\n * _sanitizeAttributes\n *\n * @protect attributes\n * @protect nodeName\n * @protect removeAttribute\n * @protect setAttribute\n *\n * @param {Node} currentNode to sanitize\n */\n const _sanitizeAttributes = function _sanitizeAttributes(currentNode) {\n /* Execute a hook if present */\n _executeHook('beforeSanitizeAttributes', currentNode, null);\n const {\n attributes\n } = currentNode;\n\n /* Check if we have attributes; if not we might have a text node */\n if (!attributes) {\n return;\n }\n const hookEvent = {\n attrName: '',\n attrValue: '',\n keepAttr: true,\n allowedAttributes: ALLOWED_ATTR\n };\n let l = attributes.length;\n\n /* Go backwards over all attributes; safely remove bad ones */\n while (l--) {\n const attr = attributes[l];\n const {\n name,\n namespaceURI,\n value: attrValue\n } = attr;\n const lcName = transformCaseFunc(name);\n let value = name === 'value' ? attrValue : stringTrim(attrValue);\n\n /* Execute a hook if present */\n hookEvent.attrName = lcName;\n hookEvent.attrValue = value;\n hookEvent.keepAttr = true;\n hookEvent.forceKeepAttr = undefined; // Allows developers to see this is a property they can set\n _executeHook('uponSanitizeAttribute', currentNode, hookEvent);\n value = hookEvent.attrValue;\n\n /* Work around a security issue with comments inside attributes */\n if (SAFE_FOR_XML && regExpTest(/((--!?|])>)|<\\/(style|title)/i, value)) {\n _removeAttribute(name, currentNode);\n continue;\n }\n\n /* Did the hooks approve of the attribute? */\n if (hookEvent.forceKeepAttr) {\n continue;\n }\n\n /* Remove attribute */\n _removeAttribute(name, currentNode);\n\n /* Did the hooks approve of the attribute? */\n if (!hookEvent.keepAttr) {\n continue;\n }\n\n /* Work around a security issue in jQuery 3.0 */\n if (!ALLOW_SELF_CLOSE_IN_ATTR && regExpTest(/\\/>/i, value)) {\n _removeAttribute(name, currentNode);\n continue;\n }\n\n /* Sanitize attribute content to be template-safe */\n if (SAFE_FOR_TEMPLATES) {\n arrayForEach([MUSTACHE_EXPR, ERB_EXPR, TMPLIT_EXPR], expr => {\n value = stringReplace(value, expr, ' ');\n });\n }\n\n /* Is `value` valid for this attribute? */\n const lcTag = transformCaseFunc(currentNode.nodeName);\n if (!_isValidAttribute(lcTag, lcName, value)) {\n continue;\n }\n\n /* Full DOM Clobbering protection via namespace isolation,\n * Prefix id and name attributes with `user-content-`\n */\n if (SANITIZE_NAMED_PROPS && (lcName === 'id' || lcName === 'name')) {\n // Remove the attribute with this value\n _removeAttribute(name, currentNode);\n\n // Prefix the value and later re-create the attribute with the sanitized value\n value = SANITIZE_NAMED_PROPS_PREFIX + value;\n }\n\n /* Handle attributes that require Trusted Types */\n if (trustedTypesPolicy && typeof trustedTypes === 'object' && typeof trustedTypes.getAttributeType === 'function') {\n if (namespaceURI) ; else {\n switch (trustedTypes.getAttributeType(lcTag, lcName)) {\n case 'TrustedHTML':\n {\n value = trustedTypesPolicy.createHTML(value);\n break;\n }\n case 'TrustedScriptURL':\n {\n value = trustedTypesPolicy.createScriptURL(value);\n break;\n }\n }\n }\n }\n\n /* Handle invalid data-* attribute set by try-catching it */\n try {\n if (namespaceURI) {\n currentNode.setAttributeNS(namespaceURI, name, value);\n } else {\n /* Fallback to setAttribute() for browser-unrecognized namespaces e.g. \"x-schema\". */\n currentNode.setAttribute(name, value);\n }\n if (_isClobbered(currentNode)) {\n _forceRemove(currentNode);\n } else {\n arrayPop(DOMPurify.removed);\n }\n } catch (_) {}\n }\n\n /* Execute a hook if present */\n _executeHook('afterSanitizeAttributes', currentNode, null);\n };\n\n /**\n * _sanitizeShadowDOM\n *\n * @param {DocumentFragment} fragment to iterate over recursively\n */\n const _sanitizeShadowDOM = function _sanitizeShadowDOM(fragment) {\n let shadowNode = null;\n const shadowIterator = _createNodeIterator(fragment);\n\n /* Execute a hook if present */\n _executeHook('beforeSanitizeShadowDOM', fragment, null);\n while (shadowNode = shadowIterator.nextNode()) {\n /* Execute a hook if present */\n _executeHook('uponSanitizeShadowNode', shadowNode, null);\n\n /* Sanitize tags and elements */\n if (_sanitizeElements(shadowNode)) {\n continue;\n }\n\n /* Deep shadow DOM detected */\n if (shadowNode.content instanceof DocumentFragment) {\n _sanitizeShadowDOM(shadowNode.content);\n }\n\n /* Check attributes, sanitize if necessary */\n _sanitizeAttributes(shadowNode);\n }\n\n /* Execute a hook if present */\n _executeHook('afterSanitizeShadowDOM', fragment, null);\n };\n\n /**\n * Sanitize\n * Public method providing core sanitation functionality\n *\n * @param {String|Node} dirty string or DOM node\n * @param {Object} cfg object\n */\n // eslint-disable-next-line complexity\n DOMPurify.sanitize = function (dirty) {\n let cfg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let body = null;\n let importedNode = null;\n let currentNode = null;\n let returnNode = null;\n /* Make sure we have a string to sanitize.\n DO NOT return early, as this will return the wrong type if\n the user has requested a DOM object rather than a string */\n IS_EMPTY_INPUT = !dirty;\n if (IS_EMPTY_INPUT) {\n dirty = '';\n }\n\n /* Stringify, in case dirty is an object */\n if (typeof dirty !== 'string' && !_isNode(dirty)) {\n if (typeof dirty.toString === 'function') {\n dirty = dirty.toString();\n if (typeof dirty !== 'string') {\n throw typeErrorCreate('dirty is not a string, aborting');\n }\n } else {\n throw typeErrorCreate('toString is not a function');\n }\n }\n\n /* Return dirty HTML if DOMPurify cannot run */\n if (!DOMPurify.isSupported) {\n return dirty;\n }\n\n /* Assign config vars */\n if (!SET_CONFIG) {\n _parseConfig(cfg);\n }\n\n /* Clean up removed elements */\n DOMPurify.removed = [];\n\n /* Check if dirty is correctly typed for IN_PLACE */\n if (typeof dirty === 'string') {\n IN_PLACE = false;\n }\n if (IN_PLACE) {\n /* Do some early pre-sanitization to avoid unsafe root nodes */\n if (dirty.nodeName) {\n const tagName = transformCaseFunc(dirty.nodeName);\n if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {\n throw typeErrorCreate('root node is forbidden and cannot be sanitized in-place');\n }\n }\n } else if (dirty instanceof Node) {\n /* If dirty is a DOM element, append to an empty document to avoid\n elements being stripped by the parser */\n body = _initDocument('');\n importedNode = body.ownerDocument.importNode(dirty, true);\n if (importedNode.nodeType === NODE_TYPE.element && importedNode.nodeName === 'BODY') {\n /* Node is already a body, use as is */\n body = importedNode;\n } else if (importedNode.nodeName === 'HTML') {\n body = importedNode;\n } else {\n // eslint-disable-next-line unicorn/prefer-dom-node-append\n body.appendChild(importedNode);\n }\n } else {\n /* Exit directly if we have nothing to do */\n if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT &&\n // eslint-disable-next-line unicorn/prefer-includes\n dirty.indexOf('<') === -1) {\n return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty;\n }\n\n /* Initialize the document to work on */\n body = _initDocument(dirty);\n\n /* Check we have a DOM node from the data */\n if (!body) {\n return RETURN_DOM ? null : RETURN_TRUSTED_TYPE ? emptyHTML : '';\n }\n }\n\n /* Remove first element node (ours) if FORCE_BODY is set */\n if (body && FORCE_BODY) {\n _forceRemove(body.firstChild);\n }\n\n /* Get node iterator */\n const nodeIterator = _createNodeIterator(IN_PLACE ? dirty : body);\n\n /* Now start iterating over the created document */\n while (currentNode = nodeIterator.nextNode()) {\n /* Sanitize tags and elements */\n if (_sanitizeElements(currentNode)) {\n continue;\n }\n\n /* Shadow DOM detected, sanitize it */\n if (currentNode.content instanceof DocumentFragment) {\n _sanitizeShadowDOM(currentNode.content);\n }\n\n /* Check attributes, sanitize if necessary */\n _sanitizeAttributes(currentNode);\n }\n\n /* If we sanitized `dirty` in-place, return it. */\n if (IN_PLACE) {\n return dirty;\n }\n\n /* Return sanitized string or DOM */\n if (RETURN_DOM) {\n if (RETURN_DOM_FRAGMENT) {\n returnNode = createDocumentFragment.call(body.ownerDocument);\n while (body.firstChild) {\n // eslint-disable-next-line unicorn/prefer-dom-node-append\n returnNode.appendChild(body.firstChild);\n }\n } else {\n returnNode = body;\n }\n if (ALLOWED_ATTR.shadowroot || ALLOWED_ATTR.shadowrootmode) {\n /*\n AdoptNode() is not used because internal state is not reset\n (e.g. the past names map of a HTMLFormElement), this is safe\n in theory but we would rather not risk another attack vector.\n The state that is cloned by importNode() is explicitly defined\n by the specs.\n */\n returnNode = importNode.call(originalDocument, returnNode, true);\n }\n return returnNode;\n }\n let serializedHTML = WHOLE_DOCUMENT ? body.outerHTML : body.innerHTML;\n\n /* Serialize doctype if allowed */\n if (WHOLE_DOCUMENT && ALLOWED_TAGS['!doctype'] && body.ownerDocument && body.ownerDocument.doctype && body.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, body.ownerDocument.doctype.name)) {\n serializedHTML = '\\n' + serializedHTML;\n }\n\n /* Sanitize final string template-safe */\n if (SAFE_FOR_TEMPLATES) {\n arrayForEach([MUSTACHE_EXPR, ERB_EXPR, TMPLIT_EXPR], expr => {\n serializedHTML = stringReplace(serializedHTML, expr, ' ');\n });\n }\n return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML;\n };\n\n /**\n * Public method to set the configuration once\n * setConfig\n *\n * @param {Object} cfg configuration object\n */\n DOMPurify.setConfig = function () {\n let cfg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _parseConfig(cfg);\n SET_CONFIG = true;\n };\n\n /**\n * Public method to remove the configuration\n * clearConfig\n *\n */\n DOMPurify.clearConfig = function () {\n CONFIG = null;\n SET_CONFIG = false;\n };\n\n /**\n * Public method to check if an attribute value is valid.\n * Uses last set config, if any. Otherwise, uses config defaults.\n * isValidAttribute\n *\n * @param {String} tag Tag name of containing element.\n * @param {String} attr Attribute name.\n * @param {String} value Attribute value.\n * @return {Boolean} Returns true if `value` is valid. Otherwise, returns false.\n */\n DOMPurify.isValidAttribute = function (tag, attr, value) {\n /* Initialize shared config vars if necessary. */\n if (!CONFIG) {\n _parseConfig({});\n }\n const lcTag = transformCaseFunc(tag);\n const lcName = transformCaseFunc(attr);\n return _isValidAttribute(lcTag, lcName, value);\n };\n\n /**\n * AddHook\n * Public method to add DOMPurify hooks\n *\n * @param {String} entryPoint entry point for the hook to add\n * @param {Function} hookFunction function to execute\n */\n DOMPurify.addHook = function (entryPoint, hookFunction) {\n if (typeof hookFunction !== 'function') {\n return;\n }\n hooks[entryPoint] = hooks[entryPoint] || [];\n arrayPush(hooks[entryPoint], hookFunction);\n };\n\n /**\n * RemoveHook\n * Public method to remove a DOMPurify hook at a given entryPoint\n * (pops it from the stack of hooks if more are present)\n *\n * @param {String} entryPoint entry point for the hook to remove\n * @return {Function} removed(popped) hook\n */\n DOMPurify.removeHook = function (entryPoint) {\n if (hooks[entryPoint]) {\n return arrayPop(hooks[entryPoint]);\n }\n };\n\n /**\n * RemoveHooks\n * Public method to remove all DOMPurify hooks at a given entryPoint\n *\n * @param {String} entryPoint entry point for the hooks to remove\n */\n DOMPurify.removeHooks = function (entryPoint) {\n if (hooks[entryPoint]) {\n hooks[entryPoint] = [];\n }\n };\n\n /**\n * RemoveAllHooks\n * Public method to remove all DOMPurify hooks\n */\n DOMPurify.removeAllHooks = function () {\n hooks = {};\n };\n return DOMPurify;\n}\nvar purify = createDOMPurify();\n\nexport { purify as default };\n//# sourceMappingURL=purify.es.mjs.map\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '"';\n break;\n case 38: // &\n escape = '&';\n break;\n case 39: // '\n escape = ''';\n break;\n case 60: // <\n escape = '<';\n break;\n case 62: // >\n escape = '>';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","import { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { getCurrentUser, onRequestTokenUpdate, getRequestToken } from \"@nextcloud/auth\";\nimport { join, basename, extname, dirname } from \"path\";\nimport { encodePath } from \"@nextcloud/paths\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport { CancelablePromise } from \"cancelable-promise\";\nimport { createClient, getPatcher } from \"webdav\";\nimport { isPublicShare, getSharingToken } from \"@nextcloud/sharing/public\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport { getCanonicalLocale, getLanguage } from \"@nextcloud/l10n\";\nimport { TypedEventTarget } from \"typescript-event-target\";\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/files\").detectUser().build();\nvar NewMenuEntryCategory = /* @__PURE__ */ ((NewMenuEntryCategory2) => {\n NewMenuEntryCategory2[NewMenuEntryCategory2[\"UploadFromDevice\"] = 0] = \"UploadFromDevice\";\n NewMenuEntryCategory2[NewMenuEntryCategory2[\"CreateNew\"] = 1] = \"CreateNew\";\n NewMenuEntryCategory2[NewMenuEntryCategory2[\"Other\"] = 2] = \"Other\";\n return NewMenuEntryCategory2;\n})(NewMenuEntryCategory || {});\nclass NewFileMenu {\n _entries = [];\n registerEntry(entry) {\n this.validateEntry(entry);\n entry.category = entry.category ?? 1;\n this._entries.push(entry);\n }\n unregisterEntry(entry) {\n const entryIndex = typeof entry === \"string\" ? this.getEntryIndex(entry) : this.getEntryIndex(entry.id);\n if (entryIndex === -1) {\n logger.warn(\"Entry not found, nothing removed\", { entry, entries: this.getEntries() });\n return;\n }\n this._entries.splice(entryIndex, 1);\n }\n /**\n * Get the list of registered entries\n *\n * @param {Folder} context the creation context. Usually the current folder\n */\n getEntries(context) {\n if (context) {\n return this._entries.filter((entry) => typeof entry.enabled === \"function\" ? entry.enabled(context) : true);\n }\n return this._entries;\n }\n getEntryIndex(id) {\n return this._entries.findIndex((entry) => entry.id === id);\n }\n validateEntry(entry) {\n if (!entry.id || !entry.displayName || !(entry.iconSvgInline || entry.iconClass) || !entry.handler) {\n throw new Error(\"Invalid entry\");\n }\n if (typeof entry.id !== \"string\" || typeof entry.displayName !== \"string\") {\n throw new Error(\"Invalid id or displayName property\");\n }\n if (entry.iconClass && typeof entry.iconClass !== \"string\" || entry.iconSvgInline && typeof entry.iconSvgInline !== \"string\") {\n throw new Error(\"Invalid icon provided\");\n }\n if (entry.enabled !== void 0 && typeof entry.enabled !== \"function\") {\n throw new Error(\"Invalid enabled property\");\n }\n if (typeof entry.handler !== \"function\") {\n throw new Error(\"Invalid handler property\");\n }\n if (\"order\" in entry && typeof entry.order !== \"number\") {\n throw new Error(\"Invalid order property\");\n }\n if (this.getEntryIndex(entry.id) !== -1) {\n throw new Error(\"Duplicate entry\");\n }\n }\n}\nconst getNewFileMenu = function() {\n if (typeof window._nc_newfilemenu === \"undefined\") {\n window._nc_newfilemenu = new NewFileMenu();\n logger.debug(\"NewFileMenu initialized\");\n }\n return window._nc_newfilemenu;\n};\nvar DefaultType = /* @__PURE__ */ ((DefaultType2) => {\n DefaultType2[\"DEFAULT\"] = \"default\";\n DefaultType2[\"HIDDEN\"] = \"hidden\";\n return DefaultType2;\n})(DefaultType || {});\nclass FileAction {\n _action;\n constructor(action) {\n this.validateAction(action);\n this._action = action;\n }\n get id() {\n return this._action.id;\n }\n get displayName() {\n return this._action.displayName;\n }\n get title() {\n return this._action.title;\n }\n get iconSvgInline() {\n return this._action.iconSvgInline;\n }\n get enabled() {\n return this._action.enabled;\n }\n get exec() {\n return this._action.exec;\n }\n get execBatch() {\n return this._action.execBatch;\n }\n get order() {\n return this._action.order;\n }\n get parent() {\n return this._action.parent;\n }\n get default() {\n return this._action.default;\n }\n get inline() {\n return this._action.inline;\n }\n get renderInline() {\n return this._action.renderInline;\n }\n validateAction(action) {\n if (!action.id || typeof action.id !== \"string\") {\n throw new Error(\"Invalid id\");\n }\n if (!action.displayName || typeof action.displayName !== \"function\") {\n throw new Error(\"Invalid displayName function\");\n }\n if (\"title\" in action && typeof action.title !== \"function\") {\n throw new Error(\"Invalid title function\");\n }\n if (!action.iconSvgInline || typeof action.iconSvgInline !== \"function\") {\n throw new Error(\"Invalid iconSvgInline function\");\n }\n if (!action.exec || typeof action.exec !== \"function\") {\n throw new Error(\"Invalid exec function\");\n }\n if (\"enabled\" in action && typeof action.enabled !== \"function\") {\n throw new Error(\"Invalid enabled function\");\n }\n if (\"execBatch\" in action && typeof action.execBatch !== \"function\") {\n throw new Error(\"Invalid execBatch function\");\n }\n if (\"order\" in action && typeof action.order !== \"number\") {\n throw new Error(\"Invalid order\");\n }\n if (\"parent\" in action && typeof action.parent !== \"string\") {\n throw new Error(\"Invalid parent\");\n }\n if (action.default && !Object.values(DefaultType).includes(action.default)) {\n throw new Error(\"Invalid default\");\n }\n if (\"inline\" in action && typeof action.inline !== \"function\") {\n throw new Error(\"Invalid inline function\");\n }\n if (\"renderInline\" in action && typeof action.renderInline !== \"function\") {\n throw new Error(\"Invalid renderInline function\");\n }\n }\n}\nconst registerFileAction = function(action) {\n if (typeof window._nc_fileactions === \"undefined\") {\n window._nc_fileactions = [];\n logger.debug(\"FileActions initialized\");\n }\n if (window._nc_fileactions.find((search) => search.id === action.id)) {\n logger.error(`FileAction ${action.id} already registered`, { action });\n return;\n }\n window._nc_fileactions.push(action);\n};\nconst getFileActions = function() {\n if (typeof window._nc_fileactions === \"undefined\") {\n window._nc_fileactions = [];\n logger.debug(\"FileActions initialized\");\n }\n return window._nc_fileactions;\n};\nclass Header {\n _header;\n constructor(header) {\n this.validateHeader(header);\n this._header = header;\n }\n get id() {\n return this._header.id;\n }\n get order() {\n return this._header.order;\n }\n get enabled() {\n return this._header.enabled;\n }\n get render() {\n return this._header.render;\n }\n get updated() {\n return this._header.updated;\n }\n validateHeader(header) {\n if (!header.id || !header.render || !header.updated) {\n throw new Error(\"Invalid header: id, render and updated are required\");\n }\n if (typeof header.id !== \"string\") {\n throw new Error(\"Invalid id property\");\n }\n if (header.enabled !== void 0 && typeof header.enabled !== \"function\") {\n throw new Error(\"Invalid enabled property\");\n }\n if (header.render && typeof header.render !== \"function\") {\n throw new Error(\"Invalid render property\");\n }\n if (header.updated && typeof header.updated !== \"function\") {\n throw new Error(\"Invalid updated property\");\n }\n }\n}\nconst registerFileListHeaders = function(header) {\n if (typeof window._nc_filelistheader === \"undefined\") {\n window._nc_filelistheader = [];\n logger.debug(\"FileListHeaders initialized\");\n }\n if (window._nc_filelistheader.find((search) => search.id === header.id)) {\n logger.error(`Header ${header.id} already registered`, { header });\n return;\n }\n window._nc_filelistheader.push(header);\n};\nconst getFileListHeaders = function() {\n if (typeof window._nc_filelistheader === \"undefined\") {\n window._nc_filelistheader = [];\n logger.debug(\"FileListHeaders initialized\");\n }\n return window._nc_filelistheader;\n};\nvar Permission = /* @__PURE__ */ ((Permission2) => {\n Permission2[Permission2[\"NONE\"] = 0] = \"NONE\";\n Permission2[Permission2[\"CREATE\"] = 4] = \"CREATE\";\n Permission2[Permission2[\"READ\"] = 1] = \"READ\";\n Permission2[Permission2[\"UPDATE\"] = 2] = \"UPDATE\";\n Permission2[Permission2[\"DELETE\"] = 8] = \"DELETE\";\n Permission2[Permission2[\"SHARE\"] = 16] = \"SHARE\";\n Permission2[Permission2[\"ALL\"] = 31] = \"ALL\";\n return Permission2;\n})(Permission || {});\nconst defaultDavProperties = [\n \"d:getcontentlength\",\n \"d:getcontenttype\",\n \"d:getetag\",\n \"d:getlastmodified\",\n \"d:creationdate\",\n \"d:displayname\",\n \"d:quota-available-bytes\",\n \"d:resourcetype\",\n \"nc:has-preview\",\n \"nc:is-encrypted\",\n \"nc:mount-type\",\n \"oc:comments-unread\",\n \"oc:favorite\",\n \"oc:fileid\",\n \"oc:owner-display-name\",\n \"oc:owner-id\",\n \"oc:permissions\",\n \"oc:size\"\n];\nconst defaultDavNamespaces = {\n d: \"DAV:\",\n nc: \"http://nextcloud.org/ns\",\n oc: \"http://owncloud.org/ns\",\n ocs: \"http://open-collaboration-services.org/ns\"\n};\nconst registerDavProperty = function(prop, namespace = { nc: \"http://nextcloud.org/ns\" }) {\n if (typeof window._nc_dav_properties === \"undefined\") {\n window._nc_dav_properties = [...defaultDavProperties];\n window._nc_dav_namespaces = { ...defaultDavNamespaces };\n }\n const namespaces = { ...window._nc_dav_namespaces, ...namespace };\n if (window._nc_dav_properties.find((search) => search === prop)) {\n logger.warn(`${prop} already registered`, { prop });\n return false;\n }\n if (prop.startsWith(\"<\") || prop.split(\":\").length !== 2) {\n logger.error(`${prop} is not valid. See example: 'oc:fileid'`, { prop });\n return false;\n }\n const ns = prop.split(\":\")[0];\n if (!namespaces[ns]) {\n logger.error(`${prop} namespace unknown`, { prop, namespaces });\n return false;\n }\n window._nc_dav_properties.push(prop);\n window._nc_dav_namespaces = namespaces;\n return true;\n};\nconst getDavProperties = function() {\n if (typeof window._nc_dav_properties === \"undefined\") {\n window._nc_dav_properties = [...defaultDavProperties];\n }\n return window._nc_dav_properties.map((prop) => `<${prop} />`).join(\" \");\n};\nconst getDavNameSpaces = function() {\n if (typeof window._nc_dav_namespaces === \"undefined\") {\n window._nc_dav_namespaces = { ...defaultDavNamespaces };\n }\n return Object.keys(window._nc_dav_namespaces).map((ns) => `xmlns:${ns}=\"${window._nc_dav_namespaces?.[ns]}\"`).join(\" \");\n};\nconst davGetDefaultPropfind = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t`;\n};\nconst davGetFavoritesReport = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n};\nconst davGetRecentSearch = function(lastModified) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${getCurrentUser()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${lastModified}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n};\nconst davParsePermissions = function(permString = \"\") {\n let permissions = Permission.NONE;\n if (!permString) {\n return permissions;\n }\n if (permString.includes(\"C\") || permString.includes(\"K\")) {\n permissions |= Permission.CREATE;\n }\n if (permString.includes(\"G\")) {\n permissions |= Permission.READ;\n }\n if (permString.includes(\"W\") || permString.includes(\"N\") || permString.includes(\"V\")) {\n permissions |= Permission.UPDATE;\n }\n if (permString.includes(\"D\")) {\n permissions |= Permission.DELETE;\n }\n if (permString.includes(\"R\")) {\n permissions |= Permission.SHARE;\n }\n return permissions;\n};\nvar FileType = /* @__PURE__ */ ((FileType2) => {\n FileType2[\"Folder\"] = \"folder\";\n FileType2[\"File\"] = \"file\";\n return FileType2;\n})(FileType || {});\nconst isDavRessource = function(source, davService) {\n return source.match(davService) !== null;\n};\nconst validateData = (data, davService) => {\n if (data.id && typeof data.id !== \"number\") {\n throw new Error(\"Invalid id type of value\");\n }\n if (!data.source) {\n throw new Error(\"Missing mandatory source\");\n }\n try {\n new URL(data.source);\n } catch (e) {\n throw new Error(\"Invalid source format, source must be a valid URL\");\n }\n if (!data.source.startsWith(\"http\")) {\n throw new Error(\"Invalid source format, only http(s) is supported\");\n }\n if (data.displayname && typeof data.displayname !== \"string\") {\n throw new Error(\"Invalid displayname type\");\n }\n if (data.mtime && !(data.mtime instanceof Date)) {\n throw new Error(\"Invalid mtime type\");\n }\n if (data.crtime && !(data.crtime instanceof Date)) {\n throw new Error(\"Invalid crtime type\");\n }\n if (!data.mime || typeof data.mime !== \"string\" || !data.mime.match(/^[-\\w.]+\\/[-+\\w.]+$/gi)) {\n throw new Error(\"Missing or invalid mandatory mime\");\n }\n if (\"size\" in data && typeof data.size !== \"number\" && data.size !== void 0) {\n throw new Error(\"Invalid size type\");\n }\n if (\"permissions\" in data && data.permissions !== void 0 && !(typeof data.permissions === \"number\" && data.permissions >= Permission.NONE && data.permissions <= Permission.ALL)) {\n throw new Error(\"Invalid permissions\");\n }\n if (data.owner && data.owner !== null && typeof data.owner !== \"string\") {\n throw new Error(\"Invalid owner type\");\n }\n if (data.attributes && typeof data.attributes !== \"object\") {\n throw new Error(\"Invalid attributes type\");\n }\n if (data.root && typeof data.root !== \"string\") {\n throw new Error(\"Invalid root type\");\n }\n if (data.root && !data.root.startsWith(\"/\")) {\n throw new Error(\"Root must start with a leading slash\");\n }\n if (data.root && !data.source.includes(data.root)) {\n throw new Error(\"Root must be part of the source\");\n }\n if (data.root && isDavRessource(data.source, davService)) {\n const service = data.source.match(davService)[0];\n if (!data.source.includes(join(service, data.root))) {\n throw new Error(\"The root must be relative to the service. e.g /files/emma\");\n }\n }\n if (data.status && !Object.values(NodeStatus).includes(data.status)) {\n throw new Error(\"Status must be a valid NodeStatus\");\n }\n};\nvar NodeStatus = /* @__PURE__ */ ((NodeStatus2) => {\n NodeStatus2[\"NEW\"] = \"new\";\n NodeStatus2[\"FAILED\"] = \"failed\";\n NodeStatus2[\"LOADING\"] = \"loading\";\n NodeStatus2[\"LOCKED\"] = \"locked\";\n return NodeStatus2;\n})(NodeStatus || {});\nclass Node {\n _data;\n _attributes;\n _knownDavService = /(remote|public)\\.php\\/(web)?dav/i;\n readonlyAttributes = Object.entries(Object.getOwnPropertyDescriptors(Node.prototype)).filter((e) => typeof e[1].get === \"function\" && e[0] !== \"__proto__\").map((e) => e[0]);\n handler = {\n set: (target, prop, value) => {\n if (this.readonlyAttributes.includes(prop)) {\n return false;\n }\n return Reflect.set(target, prop, value);\n },\n deleteProperty: (target, prop) => {\n if (this.readonlyAttributes.includes(prop)) {\n return false;\n }\n return Reflect.deleteProperty(target, prop);\n },\n // TODO: This is deprecated and only needed for files v3\n get: (target, prop, receiver) => {\n if (this.readonlyAttributes.includes(prop)) {\n logger.warn(`Accessing \"Node.attributes.${prop}\" is deprecated, access it directly on the Node instance.`);\n return Reflect.get(this, prop);\n }\n return Reflect.get(target, prop, receiver);\n }\n };\n constructor(data, davService) {\n validateData(data, davService || this._knownDavService);\n this._data = {\n // TODO: Remove with next major release, this is just for compatibility\n displayname: data.attributes?.displayname,\n ...data,\n attributes: {}\n };\n this._attributes = new Proxy(this._data.attributes, this.handler);\n this.update(data.attributes ?? {});\n if (davService) {\n this._knownDavService = davService;\n }\n }\n /**\n * Get the source url to this object\n * There is no setter as the source is not meant to be changed manually.\n * You can use the rename or move method to change the source.\n */\n get source() {\n return this._data.source.replace(/\\/$/i, \"\");\n }\n /**\n * Get the encoded source url to this object for requests purposes\n */\n get encodedSource() {\n const { origin } = new URL(this.source);\n return origin + encodePath(this.source.slice(origin.length));\n }\n /**\n * Get this object name\n * There is no setter as the source is not meant to be changed manually.\n * You can use the rename or move method to change the source.\n */\n get basename() {\n return basename(this.source);\n }\n /**\n * The nodes displayname\n * By default the display name and the `basename` are identical,\n * but it is possible to have a different name. This happens\n * on the files app for example for shared folders.\n */\n get displayname() {\n return this._data.displayname || this.basename;\n }\n /**\n * Set the displayname\n */\n set displayname(displayname) {\n this._data.displayname = displayname;\n }\n /**\n * Get this object's extension\n * There is no setter as the source is not meant to be changed manually.\n * You can use the rename or move method to change the source.\n */\n get extension() {\n return extname(this.source);\n }\n /**\n * Get the directory path leading to this object\n * Will use the relative path to root if available\n *\n * There is no setter as the source is not meant to be changed manually.\n * You can use the rename or move method to change the source.\n */\n get dirname() {\n if (this.root) {\n let source = this.source;\n if (this.isDavRessource) {\n source = source.split(this._knownDavService).pop();\n }\n const firstMatch = source.indexOf(this.root);\n const root = this.root.replace(/\\/$/, \"\");\n return dirname(source.slice(firstMatch + root.length) || \"/\");\n }\n const url = new URL(this.source);\n return dirname(url.pathname);\n }\n /**\n * Get the file mime\n * There is no setter as the mime is not meant to be changed\n */\n get mime() {\n return this._data.mime;\n }\n /**\n * Get the file modification time\n */\n get mtime() {\n return this._data.mtime;\n }\n /**\n * Set the file modification time\n */\n set mtime(mtime) {\n this._data.mtime = mtime;\n }\n /**\n * Get the file creation time\n * There is no setter as the creation time is not meant to be changed\n */\n get crtime() {\n return this._data.crtime;\n }\n /**\n * Get the file size\n */\n get size() {\n return this._data.size;\n }\n /**\n * Set the file size\n */\n set size(size) {\n this.updateMtime();\n this._data.size = size;\n }\n /**\n * Get the file attribute\n * This contains all additional attributes not provided by the Node class\n */\n get attributes() {\n return this._attributes;\n }\n /**\n * Get the file permissions\n */\n get permissions() {\n if (this.owner === null && !this.isDavRessource) {\n return Permission.READ;\n }\n return this._data.permissions !== void 0 ? this._data.permissions : Permission.NONE;\n }\n /**\n * Set the file permissions\n */\n set permissions(permissions) {\n this.updateMtime();\n this._data.permissions = permissions;\n }\n /**\n * Get the file owner\n * There is no setter as the owner is not meant to be changed\n */\n get owner() {\n if (!this.isDavRessource) {\n return null;\n }\n return this._data.owner;\n }\n /**\n * Is this a dav-related ressource ?\n */\n get isDavRessource() {\n return isDavRessource(this.source, this._knownDavService);\n }\n /**\n * Get the dav root of this object\n * There is no setter as the root is not meant to be changed\n */\n get root() {\n if (this._data.root) {\n return this._data.root.replace(/^(.+)\\/$/, \"$1\");\n }\n if (this.isDavRessource) {\n const root = dirname(this.source);\n return root.split(this._knownDavService).pop() || null;\n }\n return null;\n }\n /**\n * Get the absolute path of this object relative to the root\n */\n get path() {\n if (this.root) {\n let source = this.source;\n if (this.isDavRessource) {\n source = source.split(this._knownDavService).pop();\n }\n const firstMatch = source.indexOf(this.root);\n const root = this.root.replace(/\\/$/, \"\");\n return source.slice(firstMatch + root.length) || \"/\";\n }\n return (this.dirname + \"/\" + this.basename).replace(/\\/\\//g, \"/\");\n }\n /**\n * Get the node id if defined.\n * There is no setter as the fileid is not meant to be changed\n */\n get fileid() {\n return this._data?.id;\n }\n /**\n * Get the node status.\n */\n get status() {\n return this._data?.status;\n }\n /**\n * Set the node status.\n */\n set status(status) {\n this._data.status = status;\n }\n /**\n * Move the node to a new destination\n *\n * @param {string} destination the new source.\n * e.g. https://cloud.domain.com/remote.php/dav/files/emma/Photos/picture.jpg\n */\n move(destination) {\n validateData({ ...this._data, source: destination }, this._knownDavService);\n const oldBasename = this.basename;\n this._data.source = destination;\n if (this.displayname === oldBasename && this.basename !== oldBasename) {\n this.displayname = this.basename;\n }\n this.updateMtime();\n }\n /**\n * Rename the node\n * This aliases the move method for easier usage\n *\n * @param basename The new name of the node\n */\n rename(basename2) {\n if (basename2.includes(\"/\")) {\n throw new Error(\"Invalid basename\");\n }\n this.move(dirname(this.source) + \"/\" + basename2);\n }\n /**\n * Update the mtime if exists\n */\n updateMtime() {\n if (this._data.mtime) {\n this._data.mtime = /* @__PURE__ */ new Date();\n }\n }\n /**\n * Update the attributes of the node\n * Warning, updating attributes will NOT automatically update the mtime.\n *\n * @param attributes The new attributes to update on the Node attributes\n */\n update(attributes) {\n for (const [name, value] of Object.entries(attributes)) {\n try {\n if (value === void 0) {\n delete this.attributes[name];\n } else {\n this.attributes[name] = value;\n }\n } catch (e) {\n if (e instanceof TypeError) {\n continue;\n }\n throw e;\n }\n }\n }\n}\nclass File extends Node {\n get type() {\n return FileType.File;\n }\n}\nclass Folder extends Node {\n constructor(data) {\n super({\n ...data,\n mime: \"httpd/unix-directory\"\n });\n }\n get type() {\n return FileType.Folder;\n }\n get extension() {\n return null;\n }\n get mime() {\n return \"httpd/unix-directory\";\n }\n}\nfunction davGetRootPath() {\n if (isPublicShare()) {\n return `/files/${getSharingToken()}`;\n }\n return `/files/${getCurrentUser()?.uid}`;\n}\nconst davRootPath = davGetRootPath();\nfunction davGetRemoteURL() {\n const url = generateRemoteUrl(\"dav\");\n if (isPublicShare()) {\n return url.replace(\"remote.php\", \"public.php\");\n }\n return url;\n}\nconst davRemoteURL = davGetRemoteURL();\nconst davGetClient = function(remoteURL = davRemoteURL, headers = {}) {\n const client = createClient(remoteURL, { headers });\n function setHeaders(token) {\n client.setHeaders({\n ...headers,\n // Add this so the server knows it is an request from the browser\n \"X-Requested-With\": \"XMLHttpRequest\",\n // Inject user auth\n requesttoken: token ?? \"\"\n });\n }\n onRequestTokenUpdate(setHeaders);\n setHeaders(getRequestToken());\n const patcher = getPatcher();\n patcher.patch(\"fetch\", (url, options) => {\n const headers2 = options.headers;\n if (headers2?.method) {\n options.method = headers2.method;\n delete headers2.method;\n }\n return fetch(url, options);\n });\n return client;\n};\nconst getFavoriteNodes = (davClient, path = \"/\", davRoot = davRootPath) => {\n const controller = new AbortController();\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await davClient.getDirectoryContents(`${davRoot}${path}`, {\n signal: controller.signal,\n details: true,\n data: davGetFavoritesReport(),\n headers: {\n // see davGetClient for patched webdav client\n method: \"REPORT\"\n },\n includeSelf: true\n });\n const nodes = contentsResponse.data.filter((node) => node.filename !== path).map((result) => davResultToNode(result, davRoot));\n resolve(nodes);\n } catch (error) {\n reject(error);\n }\n });\n};\nconst davResultToNode = function(node, filesRoot = davRootPath, remoteURL = davRemoteURL) {\n let userId = getCurrentUser()?.uid;\n if (isPublicShare()) {\n userId = userId ?? \"anonymous\";\n } else if (!userId) {\n throw new Error(\"No user id found\");\n }\n const props = node.props;\n const permissions = davParsePermissions(props?.permissions);\n const owner = String(props?.[\"owner-id\"] || userId);\n const id = props.fileid || 0;\n const nodeData = {\n id,\n source: `${remoteURL}${node.filename}`,\n mtime: new Date(Date.parse(node.lastmod)),\n mime: node.mime || \"application/octet-stream\",\n // Manually cast to work around for https://github.com/perry-mitchell/webdav-client/pull/380\n displayname: props.displayname !== void 0 ? String(props.displayname) : void 0,\n size: props?.size || Number.parseInt(props.getcontentlength || \"0\"),\n // The fileid is set to -1 for failed requests\n status: id < 0 ? NodeStatus.FAILED : void 0,\n permissions,\n owner,\n root: filesRoot,\n attributes: {\n ...node,\n ...props,\n hasPreview: props?.[\"has-preview\"]\n }\n };\n delete nodeData.attributes?.props;\n return node.type === \"file\" ? new File(nodeData) : new Folder(nodeData);\n};\nvar InvalidFilenameErrorReason = /* @__PURE__ */ ((InvalidFilenameErrorReason2) => {\n InvalidFilenameErrorReason2[\"ReservedName\"] = \"reserved name\";\n InvalidFilenameErrorReason2[\"Character\"] = \"character\";\n InvalidFilenameErrorReason2[\"Extension\"] = \"extension\";\n return InvalidFilenameErrorReason2;\n})(InvalidFilenameErrorReason || {});\nclass InvalidFilenameError extends Error {\n constructor(options) {\n super(`Invalid ${options.reason} '${options.segment}' in filename '${options.filename}'`, { cause: options });\n }\n /**\n * The filename that was validated\n */\n get filename() {\n return this.cause.filename;\n }\n /**\n * Reason why the validation failed\n */\n get reason() {\n return this.cause.reason;\n }\n /**\n * Part of the filename that caused this error\n */\n get segment() {\n return this.cause.segment;\n }\n}\nfunction validateFilename(filename) {\n const capabilities = getCapabilities().files;\n const forbiddenCharacters = capabilities.forbidden_filename_characters ?? window._oc_config?.forbidden_filenames_characters ?? [\"/\", \"\\\\\"];\n for (const character of forbiddenCharacters) {\n if (filename.includes(character)) {\n throw new InvalidFilenameError({ segment: character, reason: \"character\", filename });\n }\n }\n filename = filename.toLocaleLowerCase();\n const forbiddenFilenames = capabilities.forbidden_filenames ?? [\".htaccess\"];\n if (forbiddenFilenames.includes(filename)) {\n throw new InvalidFilenameError({\n filename,\n segment: filename,\n reason: \"reserved name\"\n /* ReservedName */\n });\n }\n const endOfBasename = filename.indexOf(\".\", 1);\n const basename2 = filename.substring(0, endOfBasename === -1 ? void 0 : endOfBasename);\n const forbiddenFilenameBasenames = capabilities.forbidden_filename_basenames ?? [];\n if (forbiddenFilenameBasenames.includes(basename2)) {\n throw new InvalidFilenameError({\n filename,\n segment: basename2,\n reason: \"reserved name\"\n /* ReservedName */\n });\n }\n const forbiddenFilenameExtensions = capabilities.forbidden_filename_extensions ?? [\".part\", \".filepart\"];\n for (const extension of forbiddenFilenameExtensions) {\n if (filename.length > extension.length && filename.endsWith(extension)) {\n throw new InvalidFilenameError({ segment: extension, reason: \"extension\", filename });\n }\n }\n}\nfunction isFilenameValid(filename) {\n try {\n validateFilename(filename);\n return true;\n } catch (error) {\n if (error instanceof InvalidFilenameError) {\n return false;\n }\n throw error;\n }\n}\nfunction getUniqueName(name, otherNames, options) {\n const opts = {\n suffix: (n) => `(${n})`,\n ignoreFileExtension: false,\n ...options\n };\n let newName = name;\n let i = 1;\n while (otherNames.includes(newName)) {\n const ext = opts.ignoreFileExtension ? \"\" : extname(name);\n const base = basename(name, ext);\n newName = `${base} ${opts.suffix(i++)}${ext}`;\n }\n return newName;\n}\nconst humanList = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\"];\nconst humanListBinary = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\"];\nfunction formatFileSize(size, skipSmallSizes = false, binaryPrefixes = false, base1000 = false) {\n binaryPrefixes = binaryPrefixes && !base1000;\n if (typeof size === \"string\") {\n size = Number(size);\n }\n let order = size > 0 ? Math.floor(Math.log(size) / Math.log(base1000 ? 1e3 : 1024)) : 0;\n order = Math.min((binaryPrefixes ? humanListBinary.length : humanList.length) - 1, order);\n const readableFormat = binaryPrefixes ? humanListBinary[order] : humanList[order];\n let relativeSize = (size / Math.pow(base1000 ? 1e3 : 1024, order)).toFixed(1);\n if (skipSmallSizes === true && order === 0) {\n return (relativeSize !== \"0.0\" ? \"< 1 \" : \"0 \") + (binaryPrefixes ? humanListBinary[1] : humanList[1]);\n }\n if (order < 2) {\n relativeSize = parseFloat(relativeSize).toFixed(0);\n } else {\n relativeSize = parseFloat(relativeSize).toLocaleString(getCanonicalLocale());\n }\n return relativeSize + \" \" + readableFormat;\n}\nfunction parseFileSize(value, forceBinary = false) {\n try {\n value = `${value}`.toLocaleLowerCase().replaceAll(/\\s+/g, \"\").replaceAll(\",\", \".\");\n } catch (e) {\n return null;\n }\n const match = value.match(/^([0-9]*(\\.[0-9]*)?)([kmgtp]?)(i?)b?$/);\n if (match === null || match[1] === \".\" || match[1] === \"\") {\n return null;\n }\n const bytesArray = {\n \"\": 0,\n k: 1,\n m: 2,\n g: 3,\n t: 4,\n p: 5,\n e: 6\n };\n const decimalString = `${match[1]}`;\n const base = match[4] === \"i\" || forceBinary ? 1024 : 1e3;\n return Math.round(Number.parseFloat(decimalString) * base ** bytesArray[match[3]]);\n}\nfunction stringify(value) {\n if (value instanceof Date) {\n return value.toISOString();\n }\n return String(value);\n}\nfunction orderBy(collection, identifiers2, orders) {\n identifiers2 = identifiers2 ?? [(value) => value];\n orders = orders ?? [];\n const sorting = identifiers2.map((_, index) => (orders[index] ?? \"asc\") === \"asc\" ? 1 : -1);\n const collator = Intl.Collator(\n [getLanguage(), getCanonicalLocale()],\n {\n // handle 10 as ten and not as one-zero\n numeric: true,\n usage: \"sort\"\n }\n );\n return [...collection].sort((a, b) => {\n for (const [index, identifier] of identifiers2.entries()) {\n const value = collator.compare(stringify(identifier(a)), stringify(identifier(b)));\n if (value !== 0) {\n return value * sorting[index];\n }\n }\n return 0;\n });\n}\nvar FilesSortingMode = /* @__PURE__ */ ((FilesSortingMode2) => {\n FilesSortingMode2[\"Name\"] = \"basename\";\n FilesSortingMode2[\"Modified\"] = \"mtime\";\n FilesSortingMode2[\"Size\"] = \"size\";\n return FilesSortingMode2;\n})(FilesSortingMode || {});\nfunction sortNodes(nodes, options = {}) {\n const sortingOptions = {\n // Default to sort by name\n sortingMode: \"basename\",\n // Default to sort ascending\n sortingOrder: \"asc\",\n ...options\n };\n const basename2 = (name) => name.lastIndexOf(\".\") > 0 ? name.slice(0, name.lastIndexOf(\".\")) : name;\n const identifiers2 = [\n // 1: Sort favorites first if enabled\n ...sortingOptions.sortFavoritesFirst ? [(v) => v.attributes?.favorite !== 1] : [],\n // 2: Sort folders first if sorting by name\n ...sortingOptions.sortFoldersFirst ? [(v) => v.type !== \"folder\"] : [],\n // 3: Use sorting mode if NOT basename (to be able to use display name too)\n ...sortingOptions.sortingMode !== \"basename\" ? [(v) => v[sortingOptions.sortingMode]] : [],\n // 4: Use display name if available, fallback to name\n (v) => basename2(v.attributes?.displayname || v.basename),\n // 5: Finally, use basename if all previous sorting methods failed\n (v) => v.basename\n ];\n const orders = [\n // (for 1): always sort favorites before normal files\n ...sortingOptions.sortFavoritesFirst ? [\"asc\"] : [],\n // (for 2): always sort folders before files\n ...sortingOptions.sortFoldersFirst ? [\"asc\"] : [],\n // (for 3): Reverse if sorting by mtime as mtime higher means edited more recent -> lower\n ...sortingOptions.sortingMode === \"mtime\" ? [sortingOptions.sortingOrder === \"asc\" ? \"desc\" : \"asc\"] : [],\n // (also for 3 so make sure not to conflict with 2 and 3)\n ...sortingOptions.sortingMode !== \"mtime\" && sortingOptions.sortingMode !== \"basename\" ? [sortingOptions.sortingOrder] : [],\n // for 4: use configured sorting direction\n sortingOptions.sortingOrder,\n // for 5: use configured sorting direction\n sortingOptions.sortingOrder\n ];\n return orderBy(nodes, identifiers2, orders);\n}\nclass Navigation extends TypedEventTarget {\n _views = [];\n _currentView = null;\n /**\n * Register a new view on the navigation\n * @param view The view to register\n * @throws `Error` is thrown if a view with the same id is already registered\n */\n register(view) {\n if (this._views.find((search) => search.id === view.id)) {\n throw new Error(`View id ${view.id} is already registered`);\n }\n this._views.push(view);\n this.dispatchTypedEvent(\"update\", new CustomEvent(\"update\"));\n }\n /**\n * Remove a registered view\n * @param id The id of the view to remove\n */\n remove(id) {\n const index = this._views.findIndex((view) => view.id === id);\n if (index !== -1) {\n this._views.splice(index, 1);\n this.dispatchTypedEvent(\"update\", new CustomEvent(\"update\"));\n }\n }\n /**\n * Set the currently active view\n * @fires UpdateActiveViewEvent\n * @param view New active view\n */\n setActive(view) {\n this._currentView = view;\n const event = new CustomEvent(\"updateActive\", { detail: view });\n this.dispatchTypedEvent(\"updateActive\", event);\n }\n /**\n * The currently active files view\n */\n get active() {\n return this._currentView;\n }\n /**\n * All registered views\n */\n get views() {\n return this._views;\n }\n}\nconst getNavigation = function() {\n if (typeof window._nc_navigation === \"undefined\") {\n window._nc_navigation = new Navigation();\n logger.debug(\"Navigation service initialized\");\n }\n return window._nc_navigation;\n};\nclass Column {\n _column;\n constructor(column) {\n isValidColumn(column);\n this._column = column;\n }\n get id() {\n return this._column.id;\n }\n get title() {\n return this._column.title;\n }\n get render() {\n return this._column.render;\n }\n get sort() {\n return this._column.sort;\n }\n get summary() {\n return this._column.summary;\n }\n}\nconst isValidColumn = function(column) {\n if (!column.id || typeof column.id !== \"string\") {\n throw new Error(\"A column id is required\");\n }\n if (!column.title || typeof column.title !== \"string\") {\n throw new Error(\"A column title is required\");\n }\n if (!column.render || typeof column.render !== \"function\") {\n throw new Error(\"A render function is required\");\n }\n if (column.sort && typeof column.sort !== \"function\") {\n throw new Error(\"Column sortFunction must be a function\");\n }\n if (column.summary && typeof column.summary !== \"function\") {\n throw new Error(\"Column summary must be a function\");\n }\n return true;\n};\nfunction getDefaultExportFromCjs(x) {\n return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, \"default\") ? x[\"default\"] : x;\n}\nvar validator$2 = {};\nvar util$3 = {};\n(function(exports) {\n const nameStartChar = \":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\";\n const nameChar = nameStartChar + \"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\";\n const nameRegexp = \"[\" + nameStartChar + \"][\" + nameChar + \"]*\";\n const regexName = new RegExp(\"^\" + nameRegexp + \"$\");\n const getAllMatches = function(string, regex) {\n const matches = [];\n let match = regex.exec(string);\n while (match) {\n const allmatches = [];\n allmatches.startIndex = regex.lastIndex - match[0].length;\n const len = match.length;\n for (let index = 0; index < len; index++) {\n allmatches.push(match[index]);\n }\n matches.push(allmatches);\n match = regex.exec(string);\n }\n return matches;\n };\n const isName = function(string) {\n const match = regexName.exec(string);\n return !(match === null || typeof match === \"undefined\");\n };\n exports.isExist = function(v) {\n return typeof v !== \"undefined\";\n };\n exports.isEmptyObject = function(obj) {\n return Object.keys(obj).length === 0;\n };\n exports.merge = function(target, a, arrayMode) {\n if (a) {\n const keys = Object.keys(a);\n const len = keys.length;\n for (let i = 0; i < len; i++) {\n if (arrayMode === \"strict\") {\n target[keys[i]] = [a[keys[i]]];\n } else {\n target[keys[i]] = a[keys[i]];\n }\n }\n }\n };\n exports.getValue = function(v) {\n if (exports.isExist(v)) {\n return v;\n } else {\n return \"\";\n }\n };\n exports.isName = isName;\n exports.getAllMatches = getAllMatches;\n exports.nameRegexp = nameRegexp;\n})(util$3);\nconst util$2 = util$3;\nconst defaultOptions$2 = {\n allowBooleanAttributes: false,\n //A tag can have attributes without any value\n unpairedTags: []\n};\nvalidator$2.validate = function(xmlData, options) {\n options = Object.assign({}, defaultOptions$2, options);\n const tags = [];\n let tagFound = false;\n let reachedRoot = false;\n if (xmlData[0] === \"\\uFEFF\") {\n xmlData = xmlData.substr(1);\n }\n for (let i = 0; i < xmlData.length; i++) {\n if (xmlData[i] === \"<\" && xmlData[i + 1] === \"?\") {\n i += 2;\n i = readPI(xmlData, i);\n if (i.err) return i;\n } else if (xmlData[i] === \"<\") {\n let tagStartPos = i;\n i++;\n if (xmlData[i] === \"!\") {\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else {\n let closingTag = false;\n if (xmlData[i] === \"/\") {\n closingTag = true;\n i++;\n }\n let tagName = \"\";\n for (; i < xmlData.length && xmlData[i] !== \">\" && xmlData[i] !== \" \" && xmlData[i] !== \"\t\" && xmlData[i] !== \"\\n\" && xmlData[i] !== \"\\r\"; i++) {\n tagName += xmlData[i];\n }\n tagName = tagName.trim();\n if (tagName[tagName.length - 1] === \"/\") {\n tagName = tagName.substring(0, tagName.length - 1);\n i--;\n }\n if (!validateTagName(tagName)) {\n let msg;\n if (tagName.trim().length === 0) {\n msg = \"Invalid space after '<'.\";\n } else {\n msg = \"Tag '\" + tagName + \"' is an invalid name.\";\n }\n return getErrorObject(\"InvalidTag\", msg, getLineNumberForPosition(xmlData, i));\n }\n const result = readAttributeStr(xmlData, i);\n if (result === false) {\n return getErrorObject(\"InvalidAttr\", \"Attributes for '\" + tagName + \"' have open quote.\", getLineNumberForPosition(xmlData, i));\n }\n let attrStr = result.value;\n i = result.index;\n if (attrStr[attrStr.length - 1] === \"/\") {\n const attrStrStart = i - attrStr.length;\n attrStr = attrStr.substring(0, attrStr.length - 1);\n const isValid = validateAttributeString(attrStr, options);\n if (isValid === true) {\n tagFound = true;\n } else {\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));\n }\n } else if (closingTag) {\n if (!result.tagClosed) {\n return getErrorObject(\"InvalidTag\", \"Closing tag '\" + tagName + \"' doesn't have proper closing.\", getLineNumberForPosition(xmlData, i));\n } else if (attrStr.trim().length > 0) {\n return getErrorObject(\"InvalidTag\", \"Closing tag '\" + tagName + \"' can't have attributes or invalid starting.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else if (tags.length === 0) {\n return getErrorObject(\"InvalidTag\", \"Closing tag '\" + tagName + \"' has not been opened.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else {\n const otg = tags.pop();\n if (tagName !== otg.tagName) {\n let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);\n return getErrorObject(\n \"InvalidTag\",\n \"Expected closing tag '\" + otg.tagName + \"' (opened in line \" + openPos.line + \", col \" + openPos.col + \") instead of closing tag '\" + tagName + \"'.\",\n getLineNumberForPosition(xmlData, tagStartPos)\n );\n }\n if (tags.length == 0) {\n reachedRoot = true;\n }\n }\n } else {\n const isValid = validateAttributeString(attrStr, options);\n if (isValid !== true) {\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));\n }\n if (reachedRoot === true) {\n return getErrorObject(\"InvalidXml\", \"Multiple possible root nodes found.\", getLineNumberForPosition(xmlData, i));\n } else if (options.unpairedTags.indexOf(tagName) !== -1) ;\n else {\n tags.push({ tagName, tagStartPos });\n }\n tagFound = true;\n }\n for (i++; i < xmlData.length; i++) {\n if (xmlData[i] === \"<\") {\n if (xmlData[i + 1] === \"!\") {\n i++;\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else if (xmlData[i + 1] === \"?\") {\n i = readPI(xmlData, ++i);\n if (i.err) return i;\n } else {\n break;\n }\n } else if (xmlData[i] === \"&\") {\n const afterAmp = validateAmpersand(xmlData, i);\n if (afterAmp == -1)\n return getErrorObject(\"InvalidChar\", \"char '&' is not expected.\", getLineNumberForPosition(xmlData, i));\n i = afterAmp;\n } else {\n if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {\n return getErrorObject(\"InvalidXml\", \"Extra text at the end\", getLineNumberForPosition(xmlData, i));\n }\n }\n }\n if (xmlData[i] === \"<\") {\n i--;\n }\n }\n } else {\n if (isWhiteSpace(xmlData[i])) {\n continue;\n }\n return getErrorObject(\"InvalidChar\", \"char '\" + xmlData[i] + \"' is not expected.\", getLineNumberForPosition(xmlData, i));\n }\n }\n if (!tagFound) {\n return getErrorObject(\"InvalidXml\", \"Start tag expected.\", 1);\n } else if (tags.length == 1) {\n return getErrorObject(\"InvalidTag\", \"Unclosed tag '\" + tags[0].tagName + \"'.\", getLineNumberForPosition(xmlData, tags[0].tagStartPos));\n } else if (tags.length > 0) {\n return getErrorObject(\"InvalidXml\", \"Invalid '\" + JSON.stringify(tags.map((t2) => t2.tagName), null, 4).replace(/\\r?\\n/g, \"\") + \"' found.\", { line: 1, col: 1 });\n }\n return true;\n};\nfunction isWhiteSpace(char) {\n return char === \" \" || char === \"\t\" || char === \"\\n\" || char === \"\\r\";\n}\nfunction readPI(xmlData, i) {\n const start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == \"?\" || xmlData[i] == \" \") {\n const tagname = xmlData.substr(start, i - start);\n if (i > 5 && tagname === \"xml\") {\n return getErrorObject(\"InvalidXml\", \"XML declaration allowed only at the start of the document.\", getLineNumberForPosition(xmlData, i));\n } else if (xmlData[i] == \"?\" && xmlData[i + 1] == \">\") {\n i++;\n break;\n } else {\n continue;\n }\n }\n }\n return i;\n}\nfunction readCommentAndCDATA(xmlData, i) {\n if (xmlData.length > i + 5 && xmlData[i + 1] === \"-\" && xmlData[i + 2] === \"-\") {\n for (i += 3; i < xmlData.length; i++) {\n if (xmlData[i] === \"-\" && xmlData[i + 1] === \"-\" && xmlData[i + 2] === \">\") {\n i += 2;\n break;\n }\n }\n } else if (xmlData.length > i + 8 && xmlData[i + 1] === \"D\" && xmlData[i + 2] === \"O\" && xmlData[i + 3] === \"C\" && xmlData[i + 4] === \"T\" && xmlData[i + 5] === \"Y\" && xmlData[i + 6] === \"P\" && xmlData[i + 7] === \"E\") {\n let angleBracketsCount = 1;\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === \"<\") {\n angleBracketsCount++;\n } else if (xmlData[i] === \">\") {\n angleBracketsCount--;\n if (angleBracketsCount === 0) {\n break;\n }\n }\n }\n } else if (xmlData.length > i + 9 && xmlData[i + 1] === \"[\" && xmlData[i + 2] === \"C\" && xmlData[i + 3] === \"D\" && xmlData[i + 4] === \"A\" && xmlData[i + 5] === \"T\" && xmlData[i + 6] === \"A\" && xmlData[i + 7] === \"[\") {\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === \"]\" && xmlData[i + 1] === \"]\" && xmlData[i + 2] === \">\") {\n i += 2;\n break;\n }\n }\n }\n return i;\n}\nconst doubleQuote = '\"';\nconst singleQuote = \"'\";\nfunction readAttributeStr(xmlData, i) {\n let attrStr = \"\";\n let startChar = \"\";\n let tagClosed = false;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {\n if (startChar === \"\") {\n startChar = xmlData[i];\n } else if (startChar !== xmlData[i]) ;\n else {\n startChar = \"\";\n }\n } else if (xmlData[i] === \">\") {\n if (startChar === \"\") {\n tagClosed = true;\n break;\n }\n }\n attrStr += xmlData[i];\n }\n if (startChar !== \"\") {\n return false;\n }\n return {\n value: attrStr,\n index: i,\n tagClosed\n };\n}\nconst validAttrStrRegxp = new RegExp(`(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\"])(([\\\\s\\\\S])*?)\\\\5)?`, \"g\");\nfunction validateAttributeString(attrStr, options) {\n const matches = util$2.getAllMatches(attrStr, validAttrStrRegxp);\n const attrNames = {};\n for (let i = 0; i < matches.length; i++) {\n if (matches[i][1].length === 0) {\n return getErrorObject(\"InvalidAttr\", \"Attribute '\" + matches[i][2] + \"' has no space in starting.\", getPositionFromMatch(matches[i]));\n } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) {\n return getErrorObject(\"InvalidAttr\", \"Attribute '\" + matches[i][2] + \"' is without value.\", getPositionFromMatch(matches[i]));\n } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) {\n return getErrorObject(\"InvalidAttr\", \"boolean attribute '\" + matches[i][2] + \"' is not allowed.\", getPositionFromMatch(matches[i]));\n }\n const attrName = matches[i][2];\n if (!validateAttrName(attrName)) {\n return getErrorObject(\"InvalidAttr\", \"Attribute '\" + attrName + \"' is an invalid name.\", getPositionFromMatch(matches[i]));\n }\n if (!attrNames.hasOwnProperty(attrName)) {\n attrNames[attrName] = 1;\n } else {\n return getErrorObject(\"InvalidAttr\", \"Attribute '\" + attrName + \"' is repeated.\", getPositionFromMatch(matches[i]));\n }\n }\n return true;\n}\nfunction validateNumberAmpersand(xmlData, i) {\n let re2 = /\\d/;\n if (xmlData[i] === \"x\") {\n i++;\n re2 = /[\\da-fA-F]/;\n }\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === \";\")\n return i;\n if (!xmlData[i].match(re2))\n break;\n }\n return -1;\n}\nfunction validateAmpersand(xmlData, i) {\n i++;\n if (xmlData[i] === \";\")\n return -1;\n if (xmlData[i] === \"#\") {\n i++;\n return validateNumberAmpersand(xmlData, i);\n }\n let count = 0;\n for (; i < xmlData.length; i++, count++) {\n if (xmlData[i].match(/\\w/) && count < 20)\n continue;\n if (xmlData[i] === \";\")\n break;\n return -1;\n }\n return i;\n}\nfunction getErrorObject(code, message, lineNumber) {\n return {\n err: {\n code,\n msg: message,\n line: lineNumber.line || lineNumber,\n col: lineNumber.col\n }\n };\n}\nfunction validateAttrName(attrName) {\n return util$2.isName(attrName);\n}\nfunction validateTagName(tagname) {\n return util$2.isName(tagname);\n}\nfunction getLineNumberForPosition(xmlData, index) {\n const lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return {\n line: lines.length,\n // column number is last line's length + 1, because column numbering starts at 1:\n col: lines[lines.length - 1].length + 1\n };\n}\nfunction getPositionFromMatch(match) {\n return match.startIndex + match[1].length;\n}\nvar OptionsBuilder = {};\nconst defaultOptions$1 = {\n preserveOrder: false,\n attributeNamePrefix: \"@_\",\n attributesGroupName: false,\n textNodeName: \"#text\",\n ignoreAttributes: true,\n removeNSPrefix: false,\n // remove NS from tag name or attribute name if true\n allowBooleanAttributes: false,\n //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseTagValue: true,\n parseAttributeValue: false,\n trimValues: true,\n //Trim string values of tag and attributes\n cdataPropName: false,\n numberParseOptions: {\n hex: true,\n leadingZeros: true,\n eNotation: true\n },\n tagValueProcessor: function(tagName, val2) {\n return val2;\n },\n attributeValueProcessor: function(attrName, val2) {\n return val2;\n },\n stopNodes: [],\n //nested tags will not be parsed even for errors\n alwaysCreateTextNode: false,\n isArray: () => false,\n commentPropName: false,\n unpairedTags: [],\n processEntities: true,\n htmlEntities: false,\n ignoreDeclaration: false,\n ignorePiTags: false,\n transformTagName: false,\n transformAttributeName: false,\n updateTag: function(tagName, jPath, attrs) {\n return tagName;\n }\n // skipEmptyListItem: false\n};\nconst buildOptions$1 = function(options) {\n return Object.assign({}, defaultOptions$1, options);\n};\nOptionsBuilder.buildOptions = buildOptions$1;\nOptionsBuilder.defaultOptions = defaultOptions$1;\nclass XmlNode {\n constructor(tagname) {\n this.tagname = tagname;\n this.child = [];\n this[\":@\"] = {};\n }\n add(key, val2) {\n if (key === \"__proto__\") key = \"#__proto__\";\n this.child.push({ [key]: val2 });\n }\n addChild(node) {\n if (node.tagname === \"__proto__\") node.tagname = \"#__proto__\";\n if (node[\":@\"] && Object.keys(node[\":@\"]).length > 0) {\n this.child.push({ [node.tagname]: node.child, [\":@\"]: node[\":@\"] });\n } else {\n this.child.push({ [node.tagname]: node.child });\n }\n }\n}\nvar xmlNode$1 = XmlNode;\nconst util$1 = util$3;\nfunction readDocType$1(xmlData, i) {\n const entities = {};\n if (xmlData[i + 3] === \"O\" && xmlData[i + 4] === \"C\" && xmlData[i + 5] === \"T\" && xmlData[i + 6] === \"Y\" && xmlData[i + 7] === \"P\" && xmlData[i + 8] === \"E\") {\n i = i + 9;\n let angleBracketsCount = 1;\n let hasBody = false, comment = false;\n let exp = \"\";\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === \"<\" && !comment) {\n if (hasBody && isEntity(xmlData, i)) {\n i += 7;\n [entityName, val, i] = readEntityExp(xmlData, i + 1);\n if (val.indexOf(\"&\") === -1)\n entities[validateEntityName(entityName)] = {\n regx: RegExp(`&${entityName};`, \"g\"),\n val\n };\n } else if (hasBody && isElement(xmlData, i)) i += 8;\n else if (hasBody && isAttlist(xmlData, i)) i += 8;\n else if (hasBody && isNotation(xmlData, i)) i += 9;\n else if (isComment) comment = true;\n else throw new Error(\"Invalid DOCTYPE\");\n angleBracketsCount++;\n exp = \"\";\n } else if (xmlData[i] === \">\") {\n if (comment) {\n if (xmlData[i - 1] === \"-\" && xmlData[i - 2] === \"-\") {\n comment = false;\n angleBracketsCount--;\n }\n } else {\n angleBracketsCount--;\n }\n if (angleBracketsCount === 0) {\n break;\n }\n } else if (xmlData[i] === \"[\") {\n hasBody = true;\n } else {\n exp += xmlData[i];\n }\n }\n if (angleBracketsCount !== 0) {\n throw new Error(`Unclosed DOCTYPE`);\n }\n } else {\n throw new Error(`Invalid Tag instead of DOCTYPE`);\n }\n return { entities, i };\n}\nfunction readEntityExp(xmlData, i) {\n let entityName2 = \"\";\n for (; i < xmlData.length && (xmlData[i] !== \"'\" && xmlData[i] !== '\"'); i++) {\n entityName2 += xmlData[i];\n }\n entityName2 = entityName2.trim();\n if (entityName2.indexOf(\" \") !== -1) throw new Error(\"External entites are not supported\");\n const startChar = xmlData[i++];\n let val2 = \"\";\n for (; i < xmlData.length && xmlData[i] !== startChar; i++) {\n val2 += xmlData[i];\n }\n return [entityName2, val2, i];\n}\nfunction isComment(xmlData, i) {\n if (xmlData[i + 1] === \"!\" && xmlData[i + 2] === \"-\" && xmlData[i + 3] === \"-\") return true;\n return false;\n}\nfunction isEntity(xmlData, i) {\n if (xmlData[i + 1] === \"!\" && xmlData[i + 2] === \"E\" && xmlData[i + 3] === \"N\" && xmlData[i + 4] === \"T\" && xmlData[i + 5] === \"I\" && xmlData[i + 6] === \"T\" && xmlData[i + 7] === \"Y\") return true;\n return false;\n}\nfunction isElement(xmlData, i) {\n if (xmlData[i + 1] === \"!\" && xmlData[i + 2] === \"E\" && xmlData[i + 3] === \"L\" && xmlData[i + 4] === \"E\" && xmlData[i + 5] === \"M\" && xmlData[i + 6] === \"E\" && xmlData[i + 7] === \"N\" && xmlData[i + 8] === \"T\") return true;\n return false;\n}\nfunction isAttlist(xmlData, i) {\n if (xmlData[i + 1] === \"!\" && xmlData[i + 2] === \"A\" && xmlData[i + 3] === \"T\" && xmlData[i + 4] === \"T\" && xmlData[i + 5] === \"L\" && xmlData[i + 6] === \"I\" && xmlData[i + 7] === \"S\" && xmlData[i + 8] === \"T\") return true;\n return false;\n}\nfunction isNotation(xmlData, i) {\n if (xmlData[i + 1] === \"!\" && xmlData[i + 2] === \"N\" && xmlData[i + 3] === \"O\" && xmlData[i + 4] === \"T\" && xmlData[i + 5] === \"A\" && xmlData[i + 6] === \"T\" && xmlData[i + 7] === \"I\" && xmlData[i + 8] === \"O\" && xmlData[i + 9] === \"N\") return true;\n return false;\n}\nfunction validateEntityName(name) {\n if (util$1.isName(name))\n return name;\n else\n throw new Error(`Invalid entity name ${name}`);\n}\nvar DocTypeReader = readDocType$1;\nconst hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;\nconst numRegex = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\nif (!Number.parseInt && window.parseInt) {\n Number.parseInt = window.parseInt;\n}\nif (!Number.parseFloat && window.parseFloat) {\n Number.parseFloat = window.parseFloat;\n}\nconst consider = {\n hex: true,\n leadingZeros: true,\n decimalPoint: \".\",\n eNotation: true\n //skipLike: /regex/\n};\nfunction toNumber$1(str, options = {}) {\n options = Object.assign({}, consider, options);\n if (!str || typeof str !== \"string\") return str;\n let trimmedStr = str.trim();\n if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) return str;\n else if (options.hex && hexRegex.test(trimmedStr)) {\n return Number.parseInt(trimmedStr, 16);\n } else {\n const match = numRegex.exec(trimmedStr);\n if (match) {\n const sign = match[1];\n const leadingZeros = match[2];\n let numTrimmedByZeros = trimZeros(match[3]);\n const eNotation = match[4] || match[6];\n if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== \".\") return str;\n else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== \".\") return str;\n else {\n const num = Number(trimmedStr);\n const numStr = \"\" + num;\n if (numStr.search(/[eE]/) !== -1) {\n if (options.eNotation) return num;\n else return str;\n } else if (eNotation) {\n if (options.eNotation) return num;\n else return str;\n } else if (trimmedStr.indexOf(\".\") !== -1) {\n if (numStr === \"0\" && numTrimmedByZeros === \"\") return num;\n else if (numStr === numTrimmedByZeros) return num;\n else if (sign && numStr === \"-\" + numTrimmedByZeros) return num;\n else return str;\n }\n if (leadingZeros) {\n if (numTrimmedByZeros === numStr) return num;\n else if (sign + numTrimmedByZeros === numStr) return num;\n else return str;\n }\n if (trimmedStr === numStr) return num;\n else if (trimmedStr === sign + numStr) return num;\n return str;\n }\n } else {\n return str;\n }\n }\n}\nfunction trimZeros(numStr) {\n if (numStr && numStr.indexOf(\".\") !== -1) {\n numStr = numStr.replace(/0+$/, \"\");\n if (numStr === \".\") numStr = \"0\";\n else if (numStr[0] === \".\") numStr = \"0\" + numStr;\n else if (numStr[numStr.length - 1] === \".\") numStr = numStr.substr(0, numStr.length - 1);\n return numStr;\n }\n return numStr;\n}\nvar strnum = toNumber$1;\nconst util = util$3;\nconst xmlNode = xmlNode$1;\nconst readDocType = DocTypeReader;\nconst toNumber = strnum;\nlet OrderedObjParser$1 = class OrderedObjParser {\n constructor(options) {\n this.options = options;\n this.currentNode = null;\n this.tagsNodeStack = [];\n this.docTypeEntities = {};\n this.lastEntities = {\n \"apos\": { regex: /&(apos|#39|#x27);/g, val: \"'\" },\n \"gt\": { regex: /&(gt|#62|#x3E);/g, val: \">\" },\n \"lt\": { regex: /&(lt|#60|#x3C);/g, val: \"<\" },\n \"quot\": { regex: /&(quot|#34|#x22);/g, val: '\"' }\n };\n this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: \"&\" };\n this.htmlEntities = {\n \"space\": { regex: /&(nbsp|#160);/g, val: \" \" },\n // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n \"cent\": { regex: /&(cent|#162);/g, val: \"¢\" },\n \"pound\": { regex: /&(pound|#163);/g, val: \"£\" },\n \"yen\": { regex: /&(yen|#165);/g, val: \"¥\" },\n \"euro\": { regex: /&(euro|#8364);/g, val: \"€\" },\n \"copyright\": { regex: /&(copy|#169);/g, val: \"©\" },\n \"reg\": { regex: /&(reg|#174);/g, val: \"®\" },\n \"inr\": { regex: /&(inr|#8377);/g, val: \"₹\" },\n \"num_dec\": { regex: /&#([0-9]{1,7});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },\n \"num_hex\": { regex: /&#x([0-9a-fA-F]{1,6});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 16)) }\n };\n this.addExternalEntities = addExternalEntities;\n this.parseXml = parseXml;\n this.parseTextData = parseTextData;\n this.resolveNameSpace = resolveNameSpace;\n this.buildAttributesMap = buildAttributesMap;\n this.isItStopNode = isItStopNode;\n this.replaceEntitiesValue = replaceEntitiesValue$1;\n this.readStopNodeData = readStopNodeData;\n this.saveTextToParentTag = saveTextToParentTag;\n this.addChild = addChild;\n }\n};\nfunction addExternalEntities(externalEntities) {\n const entKeys = Object.keys(externalEntities);\n for (let i = 0; i < entKeys.length; i++) {\n const ent = entKeys[i];\n this.lastEntities[ent] = {\n regex: new RegExp(\"&\" + ent + \";\", \"g\"),\n val: externalEntities[ent]\n };\n }\n}\nfunction parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {\n if (val2 !== void 0) {\n if (this.options.trimValues && !dontTrim) {\n val2 = val2.trim();\n }\n if (val2.length > 0) {\n if (!escapeEntities) val2 = this.replaceEntitiesValue(val2);\n const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode);\n if (newval === null || newval === void 0) {\n return val2;\n } else if (typeof newval !== typeof val2 || newval !== val2) {\n return newval;\n } else if (this.options.trimValues) {\n return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);\n } else {\n const trimmedVal = val2.trim();\n if (trimmedVal === val2) {\n return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);\n } else {\n return val2;\n }\n }\n }\n }\n}\nfunction resolveNameSpace(tagname) {\n if (this.options.removeNSPrefix) {\n const tags = tagname.split(\":\");\n const prefix = tagname.charAt(0) === \"/\" ? \"/\" : \"\";\n if (tags[0] === \"xmlns\") {\n return \"\";\n }\n if (tags.length === 2) {\n tagname = prefix + tags[1];\n }\n }\n return tagname;\n}\nconst attrsRegx = new RegExp(`([^\\\\s=]+)\\\\s*(=\\\\s*(['\"])([\\\\s\\\\S]*?)\\\\3)?`, \"gm\");\nfunction buildAttributesMap(attrStr, jPath, tagName) {\n if (!this.options.ignoreAttributes && typeof attrStr === \"string\") {\n const matches = util.getAllMatches(attrStr, attrsRegx);\n const len = matches.length;\n const attrs = {};\n for (let i = 0; i < len; i++) {\n const attrName = this.resolveNameSpace(matches[i][1]);\n let oldVal = matches[i][4];\n let aName = this.options.attributeNamePrefix + attrName;\n if (attrName.length) {\n if (this.options.transformAttributeName) {\n aName = this.options.transformAttributeName(aName);\n }\n if (aName === \"__proto__\") aName = \"#__proto__\";\n if (oldVal !== void 0) {\n if (this.options.trimValues) {\n oldVal = oldVal.trim();\n }\n oldVal = this.replaceEntitiesValue(oldVal);\n const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);\n if (newVal === null || newVal === void 0) {\n attrs[aName] = oldVal;\n } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) {\n attrs[aName] = newVal;\n } else {\n attrs[aName] = parseValue(\n oldVal,\n this.options.parseAttributeValue,\n this.options.numberParseOptions\n );\n }\n } else if (this.options.allowBooleanAttributes) {\n attrs[aName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (this.options.attributesGroupName) {\n const attrCollection = {};\n attrCollection[this.options.attributesGroupName] = attrs;\n return attrCollection;\n }\n return attrs;\n }\n}\nconst parseXml = function(xmlData) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\");\n const xmlObj = new xmlNode(\"!xml\");\n let currentNode = xmlObj;\n let textData = \"\";\n let jPath = \"\";\n for (let i = 0; i < xmlData.length; i++) {\n const ch = xmlData[i];\n if (ch === \"<\") {\n if (xmlData[i + 1] === \"/\") {\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"Closing Tag is not closed.\");\n let tagName = xmlData.substring(i + 2, closeIndex).trim();\n if (this.options.removeNSPrefix) {\n const colonIndex = tagName.indexOf(\":\");\n if (colonIndex !== -1) {\n tagName = tagName.substr(colonIndex + 1);\n }\n }\n if (this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n if (currentNode) {\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n }\n const lastTagName = jPath.substring(jPath.lastIndexOf(\".\") + 1);\n if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) {\n throw new Error(`Unpaired tag can not be used as closing tag: `);\n }\n let propIndex = 0;\n if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) {\n propIndex = jPath.lastIndexOf(\".\", jPath.lastIndexOf(\".\") - 1);\n this.tagsNodeStack.pop();\n } else {\n propIndex = jPath.lastIndexOf(\".\");\n }\n jPath = jPath.substring(0, propIndex);\n currentNode = this.tagsNodeStack.pop();\n textData = \"\";\n i = closeIndex;\n } else if (xmlData[i + 1] === \"?\") {\n let tagData = readTagExp(xmlData, i, false, \"?>\");\n if (!tagData) throw new Error(\"Pi Tag is not closed.\");\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n if (this.options.ignoreDeclaration && tagData.tagName === \"?xml\" || this.options.ignorePiTags) ;\n else {\n const childNode = new xmlNode(tagData.tagName);\n childNode.add(this.options.textNodeName, \"\");\n if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) {\n childNode[\":@\"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);\n }\n this.addChild(currentNode, childNode, jPath);\n }\n i = tagData.closeIndex + 1;\n } else if (xmlData.substr(i + 1, 3) === \"!--\") {\n const endIndex = findClosingIndex(xmlData, \"-->\", i + 4, \"Comment is not closed.\");\n if (this.options.commentPropName) {\n const comment = xmlData.substring(i + 4, endIndex - 2);\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]);\n }\n i = endIndex;\n } else if (xmlData.substr(i + 1, 2) === \"!D\") {\n const result = readDocType(xmlData, i);\n this.docTypeEntities = result.entities;\n i = result.i;\n } else if (xmlData.substr(i + 1, 2) === \"![\") {\n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"CDATA is not closed.\") - 2;\n const tagExp = xmlData.substring(i + 9, closeIndex);\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);\n if (val2 == void 0) val2 = \"\";\n if (this.options.cdataPropName) {\n currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]);\n } else {\n currentNode.add(this.options.textNodeName, val2);\n }\n i = closeIndex + 2;\n } else {\n let result = readTagExp(xmlData, i, this.options.removeNSPrefix);\n let tagName = result.tagName;\n const rawTagName = result.rawTagName;\n let tagExp = result.tagExp;\n let attrExpPresent = result.attrExpPresent;\n let closeIndex = result.closeIndex;\n if (this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n if (currentNode && textData) {\n if (currentNode.tagname !== \"!xml\") {\n textData = this.saveTextToParentTag(textData, currentNode, jPath, false);\n }\n }\n const lastTag = currentNode;\n if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) {\n currentNode = this.tagsNodeStack.pop();\n jPath = jPath.substring(0, jPath.lastIndexOf(\".\"));\n }\n if (tagName !== xmlObj.tagname) {\n jPath += jPath ? \".\" + tagName : tagName;\n }\n if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {\n let tagContent = \"\";\n if (tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1) {\n if (tagName[tagName.length - 1] === \"/\") {\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n } else {\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n i = result.closeIndex;\n } else if (this.options.unpairedTags.indexOf(tagName) !== -1) {\n i = result.closeIndex;\n } else {\n const result2 = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);\n if (!result2) throw new Error(`Unexpected end of ${rawTagName}`);\n i = result2.i;\n tagContent = result2.tagContent;\n }\n const childNode = new xmlNode(tagName);\n if (tagName !== tagExp && attrExpPresent) {\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n if (tagContent) {\n tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);\n }\n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n childNode.add(this.options.textNodeName, tagContent);\n this.addChild(currentNode, childNode, jPath);\n } else {\n if (tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1) {\n if (tagName[tagName.length - 1] === \"/\") {\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n } else {\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n if (this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n const childNode = new xmlNode(tagName);\n if (tagName !== tagExp && attrExpPresent) {\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n this.addChild(currentNode, childNode, jPath);\n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n } else {\n const childNode = new xmlNode(tagName);\n this.tagsNodeStack.push(currentNode);\n if (tagName !== tagExp && attrExpPresent) {\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n this.addChild(currentNode, childNode, jPath);\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }\n } else {\n textData += xmlData[i];\n }\n }\n return xmlObj.child;\n};\nfunction addChild(currentNode, childNode, jPath) {\n const result = this.options.updateTag(childNode.tagname, jPath, childNode[\":@\"]);\n if (result === false) ;\n else if (typeof result === \"string\") {\n childNode.tagname = result;\n currentNode.addChild(childNode);\n } else {\n currentNode.addChild(childNode);\n }\n}\nconst replaceEntitiesValue$1 = function(val2) {\n if (this.options.processEntities) {\n for (let entityName2 in this.docTypeEntities) {\n const entity = this.docTypeEntities[entityName2];\n val2 = val2.replace(entity.regx, entity.val);\n }\n for (let entityName2 in this.lastEntities) {\n const entity = this.lastEntities[entityName2];\n val2 = val2.replace(entity.regex, entity.val);\n }\n if (this.options.htmlEntities) {\n for (let entityName2 in this.htmlEntities) {\n const entity = this.htmlEntities[entityName2];\n val2 = val2.replace(entity.regex, entity.val);\n }\n }\n val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val);\n }\n return val2;\n};\nfunction saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {\n if (textData) {\n if (isLeafNode === void 0) isLeafNode = Object.keys(currentNode.child).length === 0;\n textData = this.parseTextData(\n textData,\n currentNode.tagname,\n jPath,\n false,\n currentNode[\":@\"] ? Object.keys(currentNode[\":@\"]).length !== 0 : false,\n isLeafNode\n );\n if (textData !== void 0 && textData !== \"\")\n currentNode.add(this.options.textNodeName, textData);\n textData = \"\";\n }\n return textData;\n}\nfunction isItStopNode(stopNodes, jPath, currentTagName) {\n const allNodesExp = \"*.\" + currentTagName;\n for (const stopNodePath in stopNodes) {\n const stopNodeExp = stopNodes[stopNodePath];\n if (allNodesExp === stopNodeExp || jPath === stopNodeExp) return true;\n }\n return false;\n}\nfunction tagExpWithClosingIndex(xmlData, i, closingChar = \">\") {\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < xmlData.length; index++) {\n let ch = xmlData[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === closingChar[0]) {\n if (closingChar[1]) {\n if (xmlData[index + 1] === closingChar[1]) {\n return {\n data: tagExp,\n index\n };\n }\n } else {\n return {\n data: tagExp,\n index\n };\n }\n } else if (ch === \"\t\") {\n ch = \" \";\n }\n tagExp += ch;\n }\n}\nfunction findClosingIndex(xmlData, str, i, errMsg) {\n const closingIndex = xmlData.indexOf(str, i);\n if (closingIndex === -1) {\n throw new Error(errMsg);\n } else {\n return closingIndex + str.length - 1;\n }\n}\nfunction readTagExp(xmlData, i, removeNSPrefix, closingChar = \">\") {\n const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar);\n if (!result) return;\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.search(/\\s/);\n let tagName = tagExp;\n let attrExpPresent = true;\n if (separatorIndex !== -1) {\n tagName = tagExp.substring(0, separatorIndex);\n tagExp = tagExp.substring(separatorIndex + 1).trimStart();\n }\n const rawTagName = tagName;\n if (removeNSPrefix) {\n const colonIndex = tagName.indexOf(\":\");\n if (colonIndex !== -1) {\n tagName = tagName.substr(colonIndex + 1);\n attrExpPresent = tagName !== result.data.substr(colonIndex + 1);\n }\n }\n return {\n tagName,\n tagExp,\n closeIndex,\n attrExpPresent,\n rawTagName\n };\n}\nfunction readStopNodeData(xmlData, tagName, i) {\n const startIndex = i;\n let openTagCount = 1;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === \"<\") {\n if (xmlData[i + 1] === \"/\") {\n const closeIndex = findClosingIndex(xmlData, \">\", i, `${tagName} is not closed`);\n let closeTagName = xmlData.substring(i + 2, closeIndex).trim();\n if (closeTagName === tagName) {\n openTagCount--;\n if (openTagCount === 0) {\n return {\n tagContent: xmlData.substring(startIndex, i),\n i: closeIndex\n };\n }\n }\n i = closeIndex;\n } else if (xmlData[i + 1] === \"?\") {\n const closeIndex = findClosingIndex(xmlData, \"?>\", i + 1, \"StopNode is not closed.\");\n i = closeIndex;\n } else if (xmlData.substr(i + 1, 3) === \"!--\") {\n const closeIndex = findClosingIndex(xmlData, \"-->\", i + 3, \"StopNode is not closed.\");\n i = closeIndex;\n } else if (xmlData.substr(i + 1, 2) === \"![\") {\n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"StopNode is not closed.\") - 2;\n i = closeIndex;\n } else {\n const tagData = readTagExp(xmlData, i, \">\");\n if (tagData) {\n const openTagName = tagData && tagData.tagName;\n if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== \"/\") {\n openTagCount++;\n }\n i = tagData.closeIndex;\n }\n }\n }\n }\n}\nfunction parseValue(val2, shouldParse, options) {\n if (shouldParse && typeof val2 === \"string\") {\n const newval = val2.trim();\n if (newval === \"true\") return true;\n else if (newval === \"false\") return false;\n else return toNumber(val2, options);\n } else {\n if (util.isExist(val2)) {\n return val2;\n } else {\n return \"\";\n }\n }\n}\nvar OrderedObjParser_1 = OrderedObjParser$1;\nvar node2json = {};\nfunction prettify$1(node, options) {\n return compress(node, options);\n}\nfunction compress(arr, options, jPath) {\n let text;\n const compressedObj = {};\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const property = propName$1(tagObj);\n let newJpath = \"\";\n if (jPath === void 0) newJpath = property;\n else newJpath = jPath + \".\" + property;\n if (property === options.textNodeName) {\n if (text === void 0) text = tagObj[property];\n else text += \"\" + tagObj[property];\n } else if (property === void 0) {\n continue;\n } else if (tagObj[property]) {\n let val2 = compress(tagObj[property], options, newJpath);\n const isLeaf = isLeafTag(val2, options);\n if (tagObj[\":@\"]) {\n assignAttributes(val2, tagObj[\":@\"], newJpath, options);\n } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) {\n val2 = val2[options.textNodeName];\n } else if (Object.keys(val2).length === 0) {\n if (options.alwaysCreateTextNode) val2[options.textNodeName] = \"\";\n else val2 = \"\";\n }\n if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) {\n if (!Array.isArray(compressedObj[property])) {\n compressedObj[property] = [compressedObj[property]];\n }\n compressedObj[property].push(val2);\n } else {\n if (options.isArray(property, newJpath, isLeaf)) {\n compressedObj[property] = [val2];\n } else {\n compressedObj[property] = val2;\n }\n }\n }\n }\n if (typeof text === \"string\") {\n if (text.length > 0) compressedObj[options.textNodeName] = text;\n } else if (text !== void 0) compressedObj[options.textNodeName] = text;\n return compressedObj;\n}\nfunction propName$1(obj) {\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (key !== \":@\") return key;\n }\n}\nfunction assignAttributes(obj, attrMap, jpath, options) {\n if (attrMap) {\n const keys = Object.keys(attrMap);\n const len = keys.length;\n for (let i = 0; i < len; i++) {\n const atrrName = keys[i];\n if (options.isArray(atrrName, jpath + \".\" + atrrName, true, true)) {\n obj[atrrName] = [attrMap[atrrName]];\n } else {\n obj[atrrName] = attrMap[atrrName];\n }\n }\n }\n}\nfunction isLeafTag(obj, options) {\n const { textNodeName } = options;\n const propCount = Object.keys(obj).length;\n if (propCount === 0) {\n return true;\n }\n if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === \"boolean\" || obj[textNodeName] === 0)) {\n return true;\n }\n return false;\n}\nnode2json.prettify = prettify$1;\nconst { buildOptions } = OptionsBuilder;\nconst OrderedObjParser2 = OrderedObjParser_1;\nconst { prettify } = node2json;\nconst validator$1 = validator$2;\nlet XMLParser$1 = class XMLParser {\n constructor(options) {\n this.externalEntities = {};\n this.options = buildOptions(options);\n }\n /**\n * Parse XML dats to JS object \n * @param {string|Buffer} xmlData \n * @param {boolean|Object} validationOption \n */\n parse(xmlData, validationOption) {\n if (typeof xmlData === \"string\") ;\n else if (xmlData.toString) {\n xmlData = xmlData.toString();\n } else {\n throw new Error(\"XML data is accepted in String or Bytes[] form.\");\n }\n if (validationOption) {\n if (validationOption === true) validationOption = {};\n const result = validator$1.validate(xmlData, validationOption);\n if (result !== true) {\n throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`);\n }\n }\n const orderedObjParser = new OrderedObjParser2(this.options);\n orderedObjParser.addExternalEntities(this.externalEntities);\n const orderedResult = orderedObjParser.parseXml(xmlData);\n if (this.options.preserveOrder || orderedResult === void 0) return orderedResult;\n else return prettify(orderedResult, this.options);\n }\n /**\n * Add Entity which is not by default supported by this library\n * @param {string} key \n * @param {string} value \n */\n addEntity(key, value) {\n if (value.indexOf(\"&\") !== -1) {\n throw new Error(\"Entity value can't have '&'\");\n } else if (key.indexOf(\"&\") !== -1 || key.indexOf(\";\") !== -1) {\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for ' '\");\n } else if (value === \"&\") {\n throw new Error(\"An entity with value '&' is not permitted\");\n } else {\n this.externalEntities[key] = value;\n }\n }\n};\nvar XMLParser_1 = XMLParser$1;\nconst EOL = \"\\n\";\nfunction toXml(jArray, options) {\n let indentation = \"\";\n if (options.format && options.indentBy.length > 0) {\n indentation = EOL;\n }\n return arrToStr(jArray, options, \"\", indentation);\n}\nfunction arrToStr(arr, options, jPath, indentation) {\n let xmlStr = \"\";\n let isPreviousElementTag = false;\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const tagName = propName(tagObj);\n if (tagName === void 0) continue;\n let newJPath = \"\";\n if (jPath.length === 0) newJPath = tagName;\n else newJPath = `${jPath}.${tagName}`;\n if (tagName === options.textNodeName) {\n let tagText = tagObj[tagName];\n if (!isStopNode(newJPath, options)) {\n tagText = options.tagValueProcessor(tagName, tagText);\n tagText = replaceEntitiesValue(tagText, options);\n }\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += tagText;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.cdataPropName) {\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += ``;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.commentPropName) {\n xmlStr += indentation + ``;\n isPreviousElementTag = true;\n continue;\n } else if (tagName[0] === \"?\") {\n const attStr2 = attr_to_str(tagObj[\":@\"], options);\n const tempInd = tagName === \"?xml\" ? \"\" : indentation;\n let piTextNodeName = tagObj[tagName][0][options.textNodeName];\n piTextNodeName = piTextNodeName.length !== 0 ? \" \" + piTextNodeName : \"\";\n xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`;\n isPreviousElementTag = true;\n continue;\n }\n let newIdentation = indentation;\n if (newIdentation !== \"\") {\n newIdentation += options.indentBy;\n }\n const attStr = attr_to_str(tagObj[\":@\"], options);\n const tagStart = indentation + `<${tagName}${attStr}`;\n const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);\n if (options.unpairedTags.indexOf(tagName) !== -1) {\n if (options.suppressUnpairedNode) xmlStr += tagStart + \">\";\n else xmlStr += tagStart + \"/>\";\n } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {\n xmlStr += tagStart + \"/>\";\n } else if (tagValue && tagValue.endsWith(\">\")) {\n xmlStr += tagStart + `>${tagValue}${indentation}`;\n } else {\n xmlStr += tagStart + \">\";\n if (tagValue && indentation !== \"\" && (tagValue.includes(\"/>\") || tagValue.includes(\"`;\n }\n isPreviousElementTag = true;\n }\n return xmlStr;\n}\nfunction propName(obj) {\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (!obj.hasOwnProperty(key)) continue;\n if (key !== \":@\") return key;\n }\n}\nfunction attr_to_str(attrMap, options) {\n let attrStr = \"\";\n if (attrMap && !options.ignoreAttributes) {\n for (let attr in attrMap) {\n if (!attrMap.hasOwnProperty(attr)) continue;\n let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);\n attrVal = replaceEntitiesValue(attrVal, options);\n if (attrVal === true && options.suppressBooleanAttributes) {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;\n } else {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}=\"${attrVal}\"`;\n }\n }\n }\n return attrStr;\n}\nfunction isStopNode(jPath, options) {\n jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);\n let tagName = jPath.substr(jPath.lastIndexOf(\".\") + 1);\n for (let index in options.stopNodes) {\n if (options.stopNodes[index] === jPath || options.stopNodes[index] === \"*.\" + tagName) return true;\n }\n return false;\n}\nfunction replaceEntitiesValue(textValue, options) {\n if (textValue && textValue.length > 0 && options.processEntities) {\n for (let i = 0; i < options.entities.length; i++) {\n const entity = options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n}\nvar orderedJs2Xml = toXml;\nconst buildFromOrderedJs = orderedJs2Xml;\nconst defaultOptions = {\n attributeNamePrefix: \"@_\",\n attributesGroupName: false,\n textNodeName: \"#text\",\n ignoreAttributes: true,\n cdataPropName: false,\n format: false,\n indentBy: \" \",\n suppressEmptyNode: false,\n suppressUnpairedNode: true,\n suppressBooleanAttributes: true,\n tagValueProcessor: function(key, a) {\n return a;\n },\n attributeValueProcessor: function(attrName, a) {\n return a;\n },\n preserveOrder: false,\n commentPropName: false,\n unpairedTags: [],\n entities: [\n { regex: new RegExp(\"&\", \"g\"), val: \"&\" },\n //it must be on top\n { regex: new RegExp(\">\", \"g\"), val: \">\" },\n { regex: new RegExp(\"<\", \"g\"), val: \"<\" },\n { regex: new RegExp(\"'\", \"g\"), val: \"'\" },\n { regex: new RegExp('\"', \"g\"), val: \""\" }\n ],\n processEntities: true,\n stopNodes: [],\n // transformTagName: false,\n // transformAttributeName: false,\n oneListGroup: false\n};\nfunction Builder(options) {\n this.options = Object.assign({}, defaultOptions, options);\n if (this.options.ignoreAttributes || this.options.attributesGroupName) {\n this.isAttribute = function() {\n return false;\n };\n } else {\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n this.processTextOrObjNode = processTextOrObjNode;\n if (this.options.format) {\n this.indentate = indentate;\n this.tagEndChar = \">\\n\";\n this.newLine = \"\\n\";\n } else {\n this.indentate = function() {\n return \"\";\n };\n this.tagEndChar = \">\";\n this.newLine = \"\";\n }\n}\nBuilder.prototype.build = function(jObj) {\n if (this.options.preserveOrder) {\n return buildFromOrderedJs(jObj, this.options);\n } else {\n if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) {\n jObj = {\n [this.options.arrayNodeName]: jObj\n };\n }\n return this.j2x(jObj, 0).val;\n }\n};\nBuilder.prototype.j2x = function(jObj, level) {\n let attrStr = \"\";\n let val2 = \"\";\n for (let key in jObj) {\n if (!Object.prototype.hasOwnProperty.call(jObj, key)) continue;\n if (typeof jObj[key] === \"undefined\") {\n if (this.isAttribute(key)) {\n val2 += \"\";\n }\n } else if (jObj[key] === null) {\n if (this.isAttribute(key)) {\n val2 += \"\";\n } else if (key[0] === \"?\") {\n val2 += this.indentate(level) + \"<\" + key + \"?\" + this.tagEndChar;\n } else {\n val2 += this.indentate(level) + \"<\" + key + \"/\" + this.tagEndChar;\n }\n } else if (jObj[key] instanceof Date) {\n val2 += this.buildTextValNode(jObj[key], key, \"\", level);\n } else if (typeof jObj[key] !== \"object\") {\n const attr = this.isAttribute(key);\n if (attr) {\n attrStr += this.buildAttrPairStr(attr, \"\" + jObj[key]);\n } else {\n if (key === this.options.textNodeName) {\n let newval = this.options.tagValueProcessor(key, \"\" + jObj[key]);\n val2 += this.replaceEntitiesValue(newval);\n } else {\n val2 += this.buildTextValNode(jObj[key], key, \"\", level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n const arrLen = jObj[key].length;\n let listTagVal = \"\";\n let listTagAttr = \"\";\n for (let j = 0; j < arrLen; j++) {\n const item = jObj[key][j];\n if (typeof item === \"undefined\") ;\n else if (item === null) {\n if (key[0] === \"?\") val2 += this.indentate(level) + \"<\" + key + \"?\" + this.tagEndChar;\n else val2 += this.indentate(level) + \"<\" + key + \"/\" + this.tagEndChar;\n } else if (typeof item === \"object\") {\n if (this.options.oneListGroup) {\n const result = this.j2x(item, level + 1);\n listTagVal += result.val;\n if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {\n listTagAttr += result.attrStr;\n }\n } else {\n listTagVal += this.processTextOrObjNode(item, key, level);\n }\n } else {\n if (this.options.oneListGroup) {\n let textValue = this.options.tagValueProcessor(key, item);\n textValue = this.replaceEntitiesValue(textValue);\n listTagVal += textValue;\n } else {\n listTagVal += this.buildTextValNode(item, key, \"\", level);\n }\n }\n }\n if (this.options.oneListGroup) {\n listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);\n }\n val2 += listTagVal;\n } else {\n if (this.options.attributesGroupName && key === this.options.attributesGroupName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += this.buildAttrPairStr(Ks[j], \"\" + jObj[key][Ks[j]]);\n }\n } else {\n val2 += this.processTextOrObjNode(jObj[key], key, level);\n }\n }\n }\n return { attrStr, val: val2 };\n};\nBuilder.prototype.buildAttrPairStr = function(attrName, val2) {\n val2 = this.options.attributeValueProcessor(attrName, \"\" + val2);\n val2 = this.replaceEntitiesValue(val2);\n if (this.options.suppressBooleanAttributes && val2 === \"true\") {\n return \" \" + attrName;\n } else return \" \" + attrName + '=\"' + val2 + '\"';\n};\nfunction processTextOrObjNode(object, key, level) {\n const result = this.j2x(object, level + 1);\n if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) {\n return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);\n } else {\n return this.buildObjectNode(result.val, key, result.attrStr, level);\n }\n}\nBuilder.prototype.buildObjectNode = function(val2, key, attrStr, level) {\n if (val2 === \"\") {\n if (key[0] === \"?\") return this.indentate(level) + \"<\" + key + attrStr + \"?\" + this.tagEndChar;\n else {\n return this.indentate(level) + \"<\" + key + attrStr + this.closeTag(key) + this.tagEndChar;\n }\n } else {\n let tagEndExp = \"\" + val2 + tagEndExp;\n } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {\n return this.indentate(level) + `` + this.newLine;\n } else {\n return this.indentate(level) + \"<\" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp;\n }\n }\n};\nBuilder.prototype.closeTag = function(key) {\n let closeTag = \"\";\n if (this.options.unpairedTags.indexOf(key) !== -1) {\n if (!this.options.suppressUnpairedNode) closeTag = \"/\";\n } else if (this.options.suppressEmptyNode) {\n closeTag = \"/\";\n } else {\n closeTag = `>` + this.newLine;\n } else if (this.options.commentPropName !== false && key === this.options.commentPropName) {\n return this.indentate(level) + `` + this.newLine;\n } else if (key[0] === \"?\") {\n return this.indentate(level) + \"<\" + key + attrStr + \"?\" + this.tagEndChar;\n } else {\n let textValue = this.options.tagValueProcessor(key, val2);\n textValue = this.replaceEntitiesValue(textValue);\n if (textValue === \"\") {\n return this.indentate(level) + \"<\" + key + attrStr + this.closeTag(key) + this.tagEndChar;\n } else {\n return this.indentate(level) + \"<\" + key + attrStr + \">\" + textValue + \" 0 && this.options.processEntities) {\n for (let i = 0; i < this.options.entities.length; i++) {\n const entity = this.options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n};\nfunction indentate(level) {\n return this.options.indentBy.repeat(level);\n}\nfunction isAttribute(name) {\n if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {\n return name.substr(this.attrPrefixLen);\n } else {\n return false;\n }\n}\nvar json2xml = Builder;\nconst validator = validator$2;\nconst XMLParser2 = XMLParser_1;\nconst XMLBuilder = json2xml;\nvar fxp = {\n XMLParser: XMLParser2,\n XMLValidator: validator,\n XMLBuilder\n};\nfunction isSvg(string) {\n if (typeof string !== \"string\") {\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof string}\\``);\n }\n string = string.trim();\n if (string.length === 0) {\n return false;\n }\n if (fxp.XMLValidator.validate(string) !== true) {\n return false;\n }\n let jsonObject;\n const parser = new fxp.XMLParser();\n try {\n jsonObject = parser.parse(string);\n } catch {\n return false;\n }\n if (!jsonObject) {\n return false;\n }\n if (!Object.keys(jsonObject).some((x) => x.toLowerCase() === \"svg\")) {\n return false;\n }\n return true;\n}\nclass View {\n _view;\n constructor(view) {\n isValidView(view);\n this._view = view;\n }\n get id() {\n return this._view.id;\n }\n get name() {\n return this._view.name;\n }\n get caption() {\n return this._view.caption;\n }\n get emptyTitle() {\n return this._view.emptyTitle;\n }\n get emptyCaption() {\n return this._view.emptyCaption;\n }\n get getContents() {\n return this._view.getContents;\n }\n get icon() {\n return this._view.icon;\n }\n set icon(icon) {\n this._view.icon = icon;\n }\n get order() {\n return this._view.order;\n }\n set order(order) {\n this._view.order = order;\n }\n get params() {\n return this._view.params;\n }\n set params(params) {\n this._view.params = params;\n }\n get columns() {\n return this._view.columns;\n }\n get emptyView() {\n return this._view.emptyView;\n }\n get parent() {\n return this._view.parent;\n }\n get sticky() {\n return this._view.sticky;\n }\n get expanded() {\n return this._view.expanded;\n }\n set expanded(expanded) {\n this._view.expanded = expanded;\n }\n get defaultSortKey() {\n return this._view.defaultSortKey;\n }\n get loadChildViews() {\n return this._view.loadChildViews;\n }\n}\nconst isValidView = function(view) {\n if (!view.id || typeof view.id !== \"string\") {\n throw new Error(\"View id is required and must be a string\");\n }\n if (!view.name || typeof view.name !== \"string\") {\n throw new Error(\"View name is required and must be a string\");\n }\n if (view.columns && view.columns.length > 0 && (!view.caption || typeof view.caption !== \"string\")) {\n throw new Error(\"View caption is required for top-level views and must be a string\");\n }\n if (!view.getContents || typeof view.getContents !== \"function\") {\n throw new Error(\"View getContents is required and must be a function\");\n }\n if (!view.icon || typeof view.icon !== \"string\" || !isSvg(view.icon)) {\n throw new Error(\"View icon is required and must be a valid svg string\");\n }\n if (!(\"order\" in view) || typeof view.order !== \"number\") {\n throw new Error(\"View order is required and must be a number\");\n }\n if (view.columns) {\n view.columns.forEach((column) => {\n if (!(column instanceof Column)) {\n throw new Error(\"View columns must be an array of Column. Invalid column found\");\n }\n });\n }\n if (view.emptyView && typeof view.emptyView !== \"function\") {\n throw new Error(\"View emptyView must be a function\");\n }\n if (view.parent && typeof view.parent !== \"string\") {\n throw new Error(\"View parent must be a string\");\n }\n if (\"sticky\" in view && typeof view.sticky !== \"boolean\") {\n throw new Error(\"View sticky must be a boolean\");\n }\n if (\"expanded\" in view && typeof view.expanded !== \"boolean\") {\n throw new Error(\"View expanded must be a boolean\");\n }\n if (view.defaultSortKey && typeof view.defaultSortKey !== \"string\") {\n throw new Error(\"View defaultSortKey must be a string\");\n }\n if (view.loadChildViews && typeof view.loadChildViews !== \"function\") {\n throw new Error(\"View loadChildViews must be a function\");\n }\n return true;\n};\nconst debug$1 = typeof process === \"object\" && process.env && process.env.NODE_DEBUG && /\\bsemver\\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error(\"SEMVER\", ...args) : () => {\n};\nvar debug_1 = debug$1;\nconst SEMVER_SPEC_VERSION = \"2.0.0\";\nconst MAX_LENGTH$1 = 256;\nconst MAX_SAFE_INTEGER$1 = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */\n9007199254740991;\nconst MAX_SAFE_COMPONENT_LENGTH = 16;\nconst MAX_SAFE_BUILD_LENGTH = MAX_LENGTH$1 - 6;\nconst RELEASE_TYPES = [\n \"major\",\n \"premajor\",\n \"minor\",\n \"preminor\",\n \"patch\",\n \"prepatch\",\n \"prerelease\"\n];\nvar constants = {\n MAX_LENGTH: MAX_LENGTH$1,\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_SAFE_INTEGER: MAX_SAFE_INTEGER$1,\n RELEASE_TYPES,\n SEMVER_SPEC_VERSION,\n FLAG_INCLUDE_PRERELEASE: 1,\n FLAG_LOOSE: 2\n};\nvar re$1 = { exports: {} };\n(function(module, exports) {\n const {\n MAX_SAFE_COMPONENT_LENGTH: MAX_SAFE_COMPONENT_LENGTH2,\n MAX_SAFE_BUILD_LENGTH: MAX_SAFE_BUILD_LENGTH2,\n MAX_LENGTH: MAX_LENGTH2\n } = constants;\n const debug2 = debug_1;\n exports = module.exports = {};\n const re2 = exports.re = [];\n const safeRe = exports.safeRe = [];\n const src = exports.src = [];\n const t2 = exports.t = {};\n let R = 0;\n const LETTERDASHNUMBER = \"[a-zA-Z0-9-]\";\n const safeRegexReplacements = [\n [\"\\\\s\", 1],\n [\"\\\\d\", MAX_LENGTH2],\n [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH2]\n ];\n const makeSafeRegex = (value) => {\n for (const [token, max] of safeRegexReplacements) {\n value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);\n }\n return value;\n };\n const createToken = (name, value, isGlobal) => {\n const safe = makeSafeRegex(value);\n const index = R++;\n debug2(name, index, value);\n t2[name] = index;\n src[index] = value;\n re2[index] = new RegExp(value, isGlobal ? \"g\" : void 0);\n safeRe[index] = new RegExp(safe, isGlobal ? \"g\" : void 0);\n };\n createToken(\"NUMERICIDENTIFIER\", \"0|[1-9]\\\\d*\");\n createToken(\"NUMERICIDENTIFIERLOOSE\", \"\\\\d+\");\n createToken(\"NONNUMERICIDENTIFIER\", `\\\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);\n createToken(\"MAINVERSION\", `(${src[t2.NUMERICIDENTIFIER]})\\\\.(${src[t2.NUMERICIDENTIFIER]})\\\\.(${src[t2.NUMERICIDENTIFIER]})`);\n createToken(\"MAINVERSIONLOOSE\", `(${src[t2.NUMERICIDENTIFIERLOOSE]})\\\\.(${src[t2.NUMERICIDENTIFIERLOOSE]})\\\\.(${src[t2.NUMERICIDENTIFIERLOOSE]})`);\n createToken(\"PRERELEASEIDENTIFIER\", `(?:${src[t2.NUMERICIDENTIFIER]}|${src[t2.NONNUMERICIDENTIFIER]})`);\n createToken(\"PRERELEASEIDENTIFIERLOOSE\", `(?:${src[t2.NUMERICIDENTIFIERLOOSE]}|${src[t2.NONNUMERICIDENTIFIER]})`);\n createToken(\"PRERELEASE\", `(?:-(${src[t2.PRERELEASEIDENTIFIER]}(?:\\\\.${src[t2.PRERELEASEIDENTIFIER]})*))`);\n createToken(\"PRERELEASELOOSE\", `(?:-?(${src[t2.PRERELEASEIDENTIFIERLOOSE]}(?:\\\\.${src[t2.PRERELEASEIDENTIFIERLOOSE]})*))`);\n createToken(\"BUILDIDENTIFIER\", `${LETTERDASHNUMBER}+`);\n createToken(\"BUILD\", `(?:\\\\+(${src[t2.BUILDIDENTIFIER]}(?:\\\\.${src[t2.BUILDIDENTIFIER]})*))`);\n createToken(\"FULLPLAIN\", `v?${src[t2.MAINVERSION]}${src[t2.PRERELEASE]}?${src[t2.BUILD]}?`);\n createToken(\"FULL\", `^${src[t2.FULLPLAIN]}$`);\n createToken(\"LOOSEPLAIN\", `[v=\\\\s]*${src[t2.MAINVERSIONLOOSE]}${src[t2.PRERELEASELOOSE]}?${src[t2.BUILD]}?`);\n createToken(\"LOOSE\", `^${src[t2.LOOSEPLAIN]}$`);\n createToken(\"GTLT\", \"((?:<|>)?=?)\");\n createToken(\"XRANGEIDENTIFIERLOOSE\", `${src[t2.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`);\n createToken(\"XRANGEIDENTIFIER\", `${src[t2.NUMERICIDENTIFIER]}|x|X|\\\\*`);\n createToken(\"XRANGEPLAIN\", `[v=\\\\s]*(${src[t2.XRANGEIDENTIFIER]})(?:\\\\.(${src[t2.XRANGEIDENTIFIER]})(?:\\\\.(${src[t2.XRANGEIDENTIFIER]})(?:${src[t2.PRERELEASE]})?${src[t2.BUILD]}?)?)?`);\n createToken(\"XRANGEPLAINLOOSE\", `[v=\\\\s]*(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:\\\\.(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:\\\\.(${src[t2.XRANGEIDENTIFIERLOOSE]})(?:${src[t2.PRERELEASELOOSE]})?${src[t2.BUILD]}?)?)?`);\n createToken(\"XRANGE\", `^${src[t2.GTLT]}\\\\s*${src[t2.XRANGEPLAIN]}$`);\n createToken(\"XRANGELOOSE\", `^${src[t2.GTLT]}\\\\s*${src[t2.XRANGEPLAINLOOSE]}$`);\n createToken(\"COERCEPLAIN\", `${\"(^|[^\\\\d])(\\\\d{1,\"}${MAX_SAFE_COMPONENT_LENGTH2}})(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH2}}))?(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH2}}))?`);\n createToken(\"COERCE\", `${src[t2.COERCEPLAIN]}(?:$|[^\\\\d])`);\n createToken(\"COERCEFULL\", src[t2.COERCEPLAIN] + `(?:${src[t2.PRERELEASE]})?(?:${src[t2.BUILD]})?(?:$|[^\\\\d])`);\n createToken(\"COERCERTL\", src[t2.COERCE], true);\n createToken(\"COERCERTLFULL\", src[t2.COERCEFULL], true);\n createToken(\"LONETILDE\", \"(?:~>?)\");\n createToken(\"TILDETRIM\", `(\\\\s*)${src[t2.LONETILDE]}\\\\s+`, true);\n exports.tildeTrimReplace = \"$1~\";\n createToken(\"TILDE\", `^${src[t2.LONETILDE]}${src[t2.XRANGEPLAIN]}$`);\n createToken(\"TILDELOOSE\", `^${src[t2.LONETILDE]}${src[t2.XRANGEPLAINLOOSE]}$`);\n createToken(\"LONECARET\", \"(?:\\\\^)\");\n createToken(\"CARETTRIM\", `(\\\\s*)${src[t2.LONECARET]}\\\\s+`, true);\n exports.caretTrimReplace = \"$1^\";\n createToken(\"CARET\", `^${src[t2.LONECARET]}${src[t2.XRANGEPLAIN]}$`);\n createToken(\"CARETLOOSE\", `^${src[t2.LONECARET]}${src[t2.XRANGEPLAINLOOSE]}$`);\n createToken(\"COMPARATORLOOSE\", `^${src[t2.GTLT]}\\\\s*(${src[t2.LOOSEPLAIN]})$|^$`);\n createToken(\"COMPARATOR\", `^${src[t2.GTLT]}\\\\s*(${src[t2.FULLPLAIN]})$|^$`);\n createToken(\"COMPARATORTRIM\", `(\\\\s*)${src[t2.GTLT]}\\\\s*(${src[t2.LOOSEPLAIN]}|${src[t2.XRANGEPLAIN]})`, true);\n exports.comparatorTrimReplace = \"$1$2$3\";\n createToken(\"HYPHENRANGE\", `^\\\\s*(${src[t2.XRANGEPLAIN]})\\\\s+-\\\\s+(${src[t2.XRANGEPLAIN]})\\\\s*$`);\n createToken(\"HYPHENRANGELOOSE\", `^\\\\s*(${src[t2.XRANGEPLAINLOOSE]})\\\\s+-\\\\s+(${src[t2.XRANGEPLAINLOOSE]})\\\\s*$`);\n createToken(\"STAR\", \"(<|>)?=?\\\\s*\\\\*\");\n createToken(\"GTE0\", \"^\\\\s*>=\\\\s*0\\\\.0\\\\.0\\\\s*$\");\n createToken(\"GTE0PRE\", \"^\\\\s*>=\\\\s*0\\\\.0\\\\.0-0\\\\s*$\");\n})(re$1, re$1.exports);\nvar reExports = re$1.exports;\nconst looseOption = Object.freeze({ loose: true });\nconst emptyOpts = Object.freeze({});\nconst parseOptions$1 = (options) => {\n if (!options) {\n return emptyOpts;\n }\n if (typeof options !== \"object\") {\n return looseOption;\n }\n return options;\n};\nvar parseOptions_1 = parseOptions$1;\nconst numeric = /^[0-9]+$/;\nconst compareIdentifiers$1 = (a, b) => {\n const anum = numeric.test(a);\n const bnum = numeric.test(b);\n if (anum && bnum) {\n a = +a;\n b = +b;\n }\n return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;\n};\nconst rcompareIdentifiers = (a, b) => compareIdentifiers$1(b, a);\nvar identifiers = {\n compareIdentifiers: compareIdentifiers$1,\n rcompareIdentifiers\n};\nconst debug = debug_1;\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = constants;\nconst { safeRe: re, t } = reExports;\nconst parseOptions = parseOptions_1;\nconst { compareIdentifiers } = identifiers;\nlet SemVer$2 = class SemVer {\n constructor(version, options) {\n options = parseOptions(options);\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose && 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. Must be a string. Got type \"${typeof version}\".`);\n }\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\n `version is longer than ${MAX_LENGTH} characters`\n );\n }\n debug(\"SemVer\", version, options);\n this.options = options;\n this.loose = !!options.loose;\n this.includePrerelease = !!options.includePrerelease;\n const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);\n if (!m) {\n throw new TypeError(`Invalid Version: ${version}`);\n }\n this.raw = version;\n this.major = +m[1];\n this.minor = +m[2];\n this.patch = +m[3];\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError(\"Invalid major version\");\n }\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError(\"Invalid minor version\");\n }\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError(\"Invalid patch version\");\n }\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 this.build = m[5] ? m[5].split(\".\") : [];\n this.format();\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 toString() {\n return this.version;\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 if (other.version === this.version) {\n return 0;\n }\n return this.compareMain(other) || this.comparePre(other);\n }\n compareMain(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n }\n return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch);\n }\n comparePre(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n }\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 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 === void 0 && b === void 0) {\n return 0;\n } else if (b === void 0) {\n return 1;\n } else if (a === void 0) {\n return -1;\n } else if (a === b) {\n continue;\n } else {\n return compareIdentifiers(a, b);\n }\n } while (++i);\n }\n compareBuild(other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options);\n }\n let i = 0;\n do {\n const a = this.build[i];\n const b = other.build[i];\n debug(\"build compare\", i, a, b);\n if (a === void 0 && b === void 0) {\n return 0;\n } else if (b === void 0) {\n return 1;\n } else if (a === void 0) {\n return -1;\n } else if (a === b) {\n continue;\n } else {\n return compareIdentifiers(a, b);\n }\n } while (++i);\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, identifierBase) {\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, identifierBase);\n break;\n case \"preminor\":\n this.prerelease.length = 0;\n this.patch = 0;\n this.minor++;\n this.inc(\"pre\", identifier, identifierBase);\n break;\n case \"prepatch\":\n this.prerelease.length = 0;\n this.inc(\"patch\", identifier, identifierBase);\n this.inc(\"pre\", identifier, identifierBase);\n break;\n case \"prerelease\":\n if (this.prerelease.length === 0) {\n this.inc(\"patch\", identifier, identifierBase);\n }\n this.inc(\"pre\", identifier, identifierBase);\n break;\n case \"major\":\n if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {\n this.major++;\n }\n this.minor = 0;\n this.patch = 0;\n this.prerelease = [];\n break;\n case \"minor\":\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.prerelease.length === 0) {\n this.patch++;\n }\n this.prerelease = [];\n break;\n case \"pre\": {\n const base = Number(identifierBase) ? 1 : 0;\n if (!identifier && identifierBase === false) {\n throw new Error(\"invalid increment argument: identifier is empty\");\n }\n if (this.prerelease.length === 0) {\n this.prerelease = [base];\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 if (identifier === this.prerelease.join(\".\") && identifierBase === false) {\n throw new Error(\"invalid increment argument: identifier already exists\");\n }\n this.prerelease.push(base);\n }\n }\n if (identifier) {\n let prerelease = [identifier, base];\n if (identifierBase === false) {\n prerelease = [identifier];\n }\n if (compareIdentifiers(this.prerelease[0], identifier) === 0) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = prerelease;\n }\n } else {\n this.prerelease = prerelease;\n }\n }\n break;\n }\n default:\n throw new Error(`invalid increment argument: ${release}`);\n }\n this.raw = this.format();\n if (this.build.length) {\n this.raw += `+${this.build.join(\".\")}`;\n }\n return this;\n }\n};\nvar semver = SemVer$2;\nconst SemVer$1 = semver;\nconst parse$1 = (version, options, throwErrors = false) => {\n if (version instanceof SemVer$1) {\n return version;\n }\n try {\n return new SemVer$1(version, options);\n } catch (er) {\n if (!throwErrors) {\n return null;\n }\n throw er;\n }\n};\nvar parse_1 = parse$1;\nconst parse = parse_1;\nconst valid = (version, options) => {\n const v = parse(version, options);\n return v ? v.version : null;\n};\nvar valid_1 = valid;\nconst valid$1 = /* @__PURE__ */ getDefaultExportFromCjs(valid_1);\nconst SemVer2 = semver;\nconst major = (a, loose) => new SemVer2(a, loose).major;\nvar major_1 = major;\nconst major$1 = /* @__PURE__ */ getDefaultExportFromCjs(major_1);\nclass ProxyBus {\n bus;\n constructor(bus2) {\n if (typeof bus2.getVersion !== \"function\" || !valid$1(bus2.getVersion())) {\n console.warn(\"Proxying an event bus with an unknown or invalid version\");\n } else if (major$1(bus2.getVersion()) !== major$1(this.getVersion())) {\n console.warn(\n \"Proxying an event bus of version \" + bus2.getVersion() + \" with \" + this.getVersion()\n );\n }\n this.bus = bus2;\n }\n getVersion() {\n return \"3.3.1\";\n }\n subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n emit(name, event) {\n this.bus.emit(name, event);\n }\n}\nclass SimpleBus {\n handlers = /* @__PURE__ */ new Map();\n getVersion() {\n return \"3.3.1\";\n }\n subscribe(name, handler) {\n this.handlers.set(\n name,\n (this.handlers.get(name) || []).concat(\n handler\n )\n );\n }\n unsubscribe(name, handler) {\n this.handlers.set(\n name,\n (this.handlers.get(name) || []).filter((h) => h !== handler)\n );\n }\n emit(name, event) {\n (this.handlers.get(name) || []).forEach((h) => {\n try {\n h(event);\n } catch (e) {\n console.error(\"could not invoke event listener\", e);\n }\n });\n }\n}\nlet bus = null;\nfunction getBus() {\n if (bus !== null) {\n return bus;\n }\n if (typeof window === \"undefined\") {\n return new Proxy({}, {\n get: () => {\n return () => console.error(\n \"Window not available, EventBus can not be established!\"\n );\n }\n });\n }\n if (window.OC?._eventBus && typeof window._nc_event_bus === \"undefined\") {\n console.warn(\n \"found old event bus instance at OC._eventBus. Update your version!\"\n );\n window._nc_event_bus = window.OC._eventBus;\n }\n if (typeof window?._nc_event_bus !== \"undefined\") {\n bus = new ProxyBus(window._nc_event_bus);\n } else {\n bus = window._nc_event_bus = new SimpleBus();\n }\n return bus;\n}\nfunction emit(name, event) {\n getBus().emit(name, event);\n}\n/*!\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nclass FileListFilter extends TypedEventTarget {\n id;\n order;\n constructor(id, order = 100) {\n super();\n this.id = id;\n this.order = order;\n }\n filter(nodes) {\n throw new Error(\"Not implemented\");\n }\n updateChips(chips) {\n this.dispatchTypedEvent(\"update:chips\", new CustomEvent(\"update:chips\", { detail: chips }));\n }\n filterUpdated() {\n this.dispatchTypedEvent(\"update:filter\", new CustomEvent(\"update:filter\"));\n }\n}\nfunction registerFileListFilter(filter) {\n if (!window._nc_filelist_filters) {\n window._nc_filelist_filters = /* @__PURE__ */ new Map();\n }\n if (window._nc_filelist_filters.has(filter.id)) {\n throw new Error(`File list filter \"${filter.id}\" already registered`);\n }\n window._nc_filelist_filters.set(filter.id, filter);\n emit(\"files:filter:added\", filter);\n}\nfunction unregisterFileListFilter(filterId) {\n if (window._nc_filelist_filters && window._nc_filelist_filters.has(filterId)) {\n window._nc_filelist_filters.delete(filterId);\n emit(\"files:filter:removed\", filterId);\n }\n}\nfunction getFileListFilters() {\n if (!window._nc_filelist_filters) {\n return [];\n }\n return [...window._nc_filelist_filters.values()];\n}\nconst addNewFileMenuEntry = function(entry) {\n const newFileMenu = getNewFileMenu();\n return newFileMenu.registerEntry(entry);\n};\nconst removeNewFileMenuEntry = function(entry) {\n const newFileMenu = getNewFileMenu();\n return newFileMenu.unregisterEntry(entry);\n};\nconst getNewFileMenuEntries = function(context) {\n const newFileMenu = getNewFileMenu();\n return newFileMenu.getEntries(context).sort((a, b) => {\n if (a.order !== void 0 && b.order !== void 0 && a.order !== b.order) {\n return a.order - b.order;\n }\n return a.displayName.localeCompare(b.displayName, void 0, { numeric: true, sensitivity: \"base\" });\n });\n};\nexport {\n Column,\n DefaultType,\n File,\n FileAction,\n FileListFilter,\n FileType,\n FilesSortingMode,\n Folder,\n Header,\n InvalidFilenameError,\n InvalidFilenameErrorReason,\n Navigation,\n NewMenuEntryCategory,\n Node,\n NodeStatus,\n Permission,\n View,\n addNewFileMenuEntry,\n davGetClient,\n davGetDefaultPropfind,\n davGetFavoritesReport,\n davGetRecentSearch,\n davGetRemoteURL,\n davGetRootPath,\n davParsePermissions,\n davRemoteURL,\n davResultToNode,\n davRootPath,\n defaultDavNamespaces,\n defaultDavProperties,\n formatFileSize,\n getDavNameSpaces,\n getDavProperties,\n getFavoriteNodes,\n getFileActions,\n getFileListFilters,\n getFileListHeaders,\n getNavigation,\n getNewFileMenuEntries,\n getUniqueName,\n isFilenameValid,\n orderBy,\n parseFileSize,\n registerDavProperty,\n registerFileAction,\n registerFileListFilter,\n registerFileListHeaders,\n removeNewFileMenuEntry,\n sortNodes,\n unregisterFileListFilter,\n validateFilename\n};\n","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","var buffer = {};\n\nvar base64Js = {};\n\nbase64Js.byteLength = byteLength;\nbase64Js.toByteArray = toByteArray;\nbase64Js.fromByteArray = fromByteArray;\n\nvar lookup = [];\nvar revLookup = [];\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array;\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i];\n revLookup[code.charCodeAt(i)] = i;\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62;\nrevLookup['_'.charCodeAt(0)] = 63;\n\nfunction getLens (b64) {\n var len = b64.length;\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=');\n if (validLen === -1) validLen = len;\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4);\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp;\n var lens = getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen));\n\n var curByte = 0;\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen;\n\n var i;\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)];\n arr[curByte++] = (tmp >> 16) & 0xFF;\n arr[curByte++] = (tmp >> 8) & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4);\n arr[curByte++] = tmp & 0xFF;\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2);\n arr[curByte++] = (tmp >> 8) & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp;\n var output = [];\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF);\n output.push(tripletToBase64(tmp));\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp;\n var len = uint8.length;\n var extraBytes = len % 3; // if we have 1 byte left, pad 2 bytes\n var parts = [];\n var maxChunkLength = 16383; // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)));\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1];\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n );\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1];\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n );\n }\n\n return parts.join('')\n}\n\nvar ieee754 = {};\n\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\n\nieee754.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m;\n var eLen = (nBytes * 8) - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = -7;\n var i = isLE ? (nBytes - 1) : 0;\n var d = isLE ? -1 : 1;\n var s = buffer[offset + i];\n\n i += d;\n\n e = s & ((1 << (-nBits)) - 1);\n s >>= (-nBits);\n nBits += eLen;\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1);\n e >>= (-nBits);\n nBits += mLen;\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen);\n e = e - eBias;\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n};\n\nieee754.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c;\n var eLen = (nBytes * 8) - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0);\n var i = isLE ? 0 : (nBytes - 1);\n var d = isLE ? 1 : -1;\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\n\n value = Math.abs(value);\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0;\n e = eMax;\n } else {\n e = Math.floor(Math.log(value) / Math.LN2);\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * Math.pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\n e = 0;\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m;\n eLen += mLen;\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128;\n};\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n(function (exports) {\n\n\tconst base64 = base64Js;\n\tconst ieee754$1 = ieee754;\n\tconst customInspectSymbol =\n\t (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n\t ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n\t : null;\n\n\texports.Buffer = Buffer;\n\texports.SlowBuffer = SlowBuffer;\n\texports.INSPECT_MAX_BYTES = 50;\n\n\tconst K_MAX_LENGTH = 0x7fffffff;\n\texports.kMaxLength = K_MAX_LENGTH;\n\tconst { Uint8Array: GlobalUint8Array, ArrayBuffer: GlobalArrayBuffer, SharedArrayBuffer: GlobalSharedArrayBuffer } = globalThis;\n\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Print warning and recommend using `buffer` v4.x which has an Object\n\t * implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * We report that the browser does not support typed arrays if the are not subclassable\n\t * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n\t * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n\t * for __proto__ and has a buggy typed array implementation.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n\t typeof console.error === 'function') {\n\t console.error(\n\t 'This browser lacks typed array (Uint8Array) support which is required by ' +\n\t '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n\t );\n\t}\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances can be augmented?\n\t try {\n\t const arr = new GlobalUint8Array(1);\n\t const proto = { foo: function () { return 42 } };\n\t Object.setPrototypeOf(proto, GlobalUint8Array.prototype);\n\t Object.setPrototypeOf(arr, proto);\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tObject.defineProperty(Buffer.prototype, 'parent', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.buffer\n\t }\n\t});\n\n\tObject.defineProperty(Buffer.prototype, 'offset', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.byteOffset\n\t }\n\t});\n\n\tfunction createBuffer (length) {\n\t if (length > K_MAX_LENGTH) {\n\t throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n\t }\n\t // Return an augmented `Uint8Array` instance\n\t const buf = new GlobalUint8Array(length);\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\t return buf\n\t}\n\n\t/**\n\t * The Buffer constructor returns instances of `Uint8Array` that have their\n\t * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n\t * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n\t * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n\t * returns a single octet.\n\t *\n\t * The `Uint8Array` prototype remains unmodified.\n\t */\n\n\tfunction Buffer (arg, encodingOrOffset, length) {\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t if (typeof encodingOrOffset === 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be of type string. Received type number'\n\t )\n\t }\n\t return allocUnsafe(arg)\n\t }\n\t return from(arg, encodingOrOffset, length)\n\t}\n\n\tBuffer.poolSize = 8192; // not used by this implementation\n\n\tfunction from (value, encodingOrOffset, length) {\n\t if (typeof value === 'string') {\n\t return fromString(value, encodingOrOffset)\n\t }\n\n\t if (GlobalArrayBuffer.isView(value)) {\n\t return fromArrayView(value)\n\t }\n\n\t if (value == null) {\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t }\n\n\t if (isInstance(value, GlobalArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalArrayBuffer))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof GlobalSharedArrayBuffer !== 'undefined' &&\n\t (isInstance(value, GlobalSharedArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalSharedArrayBuffer)))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof value === 'number') {\n\t throw new TypeError(\n\t 'The \"value\" argument must not be of type number. Received type number'\n\t )\n\t }\n\n\t const valueOf = value.valueOf && value.valueOf();\n\t if (valueOf != null && valueOf !== value) {\n\t return Buffer.from(valueOf, encodingOrOffset, length)\n\t }\n\n\t const b = fromObject(value);\n\t if (b) return b\n\n\t if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n\t typeof value[Symbol.toPrimitive] === 'function') {\n\t return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n\t }\n\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t}\n\n\t/**\n\t * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n\t * if value is a number.\n\t * Buffer.from(str[, encoding])\n\t * Buffer.from(array)\n\t * Buffer.from(buffer)\n\t * Buffer.from(arrayBuffer[, byteOffset[, length]])\n\t **/\n\tBuffer.from = function (value, encodingOrOffset, length) {\n\t return from(value, encodingOrOffset, length)\n\t};\n\n\t// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n\t// https://github.com/feross/buffer/pull/148\n\tObject.setPrototypeOf(Buffer.prototype, GlobalUint8Array.prototype);\n\tObject.setPrototypeOf(Buffer, GlobalUint8Array);\n\n\tfunction assertSize (size) {\n\t if (typeof size !== 'number') {\n\t throw new TypeError('\"size\" argument must be of type number')\n\t } else if (size < 0) {\n\t throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n\t }\n\t}\n\n\tfunction alloc (size, fill, encoding) {\n\t assertSize(size);\n\t if (size <= 0) {\n\t return createBuffer(size)\n\t }\n\t if (fill !== undefined) {\n\t // Only pay attention to encoding if it's a string. This\n\t // prevents accidentally sending in a number that would\n\t // be interpreted as a start offset.\n\t return typeof encoding === 'string'\n\t ? createBuffer(size).fill(fill, encoding)\n\t : createBuffer(size).fill(fill)\n\t }\n\t return createBuffer(size)\n\t}\n\n\t/**\n\t * Creates a new filled Buffer instance.\n\t * alloc(size[, fill[, encoding]])\n\t **/\n\tBuffer.alloc = function (size, fill, encoding) {\n\t return alloc(size, fill, encoding)\n\t};\n\n\tfunction allocUnsafe (size) {\n\t assertSize(size);\n\t return createBuffer(size < 0 ? 0 : checked(size) | 0)\n\t}\n\n\t/**\n\t * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n\t * */\n\tBuffer.allocUnsafe = function (size) {\n\t return allocUnsafe(size)\n\t};\n\t/**\n\t * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n\t */\n\tBuffer.allocUnsafeSlow = function (size) {\n\t return allocUnsafe(size)\n\t};\n\n\tfunction fromString (string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') {\n\t encoding = 'utf8';\n\t }\n\n\t if (!Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\n\t const length = byteLength(string, encoding) | 0;\n\t let buf = createBuffer(length);\n\n\t const actual = buf.write(string, encoding);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (array) {\n\t const length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t const buf = createBuffer(length);\n\t for (let i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayView (arrayView) {\n\t if (isInstance(arrayView, GlobalUint8Array)) {\n\t const copy = new GlobalUint8Array(arrayView);\n\t return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n\t }\n\t return fromArrayLike(arrayView)\n\t}\n\n\tfunction fromArrayBuffer (array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\"offset\" is outside of buffer bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\"length\" is outside of buffer bounds')\n\t }\n\n\t let buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new GlobalUint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new GlobalUint8Array(array, byteOffset);\n\t } else {\n\t buf = new GlobalUint8Array(array, byteOffset, length);\n\t }\n\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\n\t return buf\n\t}\n\n\tfunction fromObject (obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t const len = checked(obj.length) | 0;\n\t const buf = createBuffer(len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj.length !== undefined) {\n\t if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n\t return createBuffer(0)\n\t }\n\t return fromArrayLike(obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(obj.data)\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction SlowBuffer (length) {\n\t if (+length != length) { // eslint-disable-line eqeqeq\n\t length = 0;\n\t }\n\t return Buffer.alloc(+length)\n\t}\n\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return b != null && b._isBuffer === true &&\n\t b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n\t};\n\n\tBuffer.compare = function compare (a, b) {\n\t if (isInstance(a, GlobalUint8Array)) a = Buffer.from(a, a.offset, a.byteLength);\n\t if (isInstance(b, GlobalUint8Array)) b = Buffer.from(b, b.offset, b.byteLength);\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError(\n\t 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n\t )\n\t }\n\n\t if (a === b) return 0\n\n\t let x = a.length;\n\t let y = b.length;\n\n\t for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n\t if (a[i] !== b[i]) {\n\t x = a[i];\n\t y = b[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t case 'base64':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!Array.isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return Buffer.alloc(0)\n\t }\n\n\t let i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t const buffer = Buffer.allocUnsafe(length);\n\t let pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t let buf = list[i];\n\t if (isInstance(buf, GlobalUint8Array)) {\n\t if (pos + buf.length > buffer.length) {\n\t if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf);\n\t buf.copy(buffer, pos);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t buffer,\n\t buf,\n\t pos\n\t );\n\t }\n\t } else if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t } else {\n\t buf.copy(buffer, pos);\n\t }\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tfunction byteLength (string, encoding) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (GlobalArrayBuffer.isView(string) || isInstance(string, GlobalArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n\t 'Received type ' + typeof string\n\t )\n\t }\n\n\t const len = string.length;\n\t const mustMatch = (arguments.length > 2 && arguments[2] === true);\n\t if (!mustMatch && len === 0) return 0\n\n\t // Use a for loop to avoid recursion\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) {\n\t return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n\t }\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength;\n\n\tfunction slowToString (encoding, start, end) {\n\t let loweredCase = false;\n\n\t // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n\t // property of a typed array.\n\n\t // This behaves neither like String nor Uint8Array in that we set start/end\n\t // to their upper/lower bounds if the value passed is out of range.\n\t // undefined is handled specially as per ECMA-262 6th Edition,\n\t // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n\t if (start === undefined || start < 0) {\n\t start = 0;\n\t }\n\t // Return early if start > this.length. Done here to prevent potential uint32\n\t // coercion fail below.\n\t if (start > this.length) {\n\t return ''\n\t }\n\n\t if (end === undefined || end > this.length) {\n\t end = this.length;\n\t }\n\n\t if (end <= 0) {\n\t return ''\n\t }\n\n\t // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n\t end >>>= 0;\n\t start >>>= 0;\n\n\t if (end <= start) {\n\t return ''\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Slice(this, start, end)\n\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\n\t// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n\t// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n\t// reliably in a browserify context because there could be multiple different\n\t// copies of the 'buffer' package in use. This method works even for Buffer\n\t// instances that were created from another copy of the `buffer` package.\n\t// See: https://github.com/feross/buffer/issues/154\n\tBuffer.prototype._isBuffer = true;\n\n\tfunction swap (b, n, m) {\n\t const i = b[n];\n\t b[n] = b[m];\n\t b[m] = i;\n\t}\n\n\tBuffer.prototype.swap16 = function swap16 () {\n\t const len = this.length;\n\t if (len % 2 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 16-bits')\n\t }\n\t for (let i = 0; i < len; i += 2) {\n\t swap(this, i, i + 1);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap32 = function swap32 () {\n\t const len = this.length;\n\t if (len % 4 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 32-bits')\n\t }\n\t for (let i = 0; i < len; i += 4) {\n\t swap(this, i, i + 3);\n\t swap(this, i + 1, i + 2);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap64 = function swap64 () {\n\t const len = this.length;\n\t if (len % 8 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 64-bits')\n\t }\n\t for (let i = 0; i < len; i += 8) {\n\t swap(this, i, i + 7);\n\t swap(this, i + 1, i + 6);\n\t swap(this, i + 2, i + 5);\n\t swap(this, i + 3, i + 4);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.toString = function toString () {\n\t const length = this.length;\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t};\n\n\tBuffer.prototype.toLocaleString = Buffer.prototype.toString;\n\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t};\n\n\tBuffer.prototype.inspect = function inspect () {\n\t let str = '';\n\t const max = exports.INSPECT_MAX_BYTES;\n\t str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim();\n\t if (this.length > max) str += ' ... ';\n\t return ''\n\t};\n\tif (customInspectSymbol) {\n\t Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect;\n\t}\n\n\tBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n\t if (isInstance(target, GlobalUint8Array)) {\n\t target = Buffer.from(target, target.offset, target.byteLength);\n\t }\n\t if (!Buffer.isBuffer(target)) {\n\t throw new TypeError(\n\t 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n\t 'Received type ' + (typeof target)\n\t )\n\t }\n\n\t if (start === undefined) {\n\t start = 0;\n\t }\n\t if (end === undefined) {\n\t end = target ? target.length : 0;\n\t }\n\t if (thisStart === undefined) {\n\t thisStart = 0;\n\t }\n\t if (thisEnd === undefined) {\n\t thisEnd = this.length;\n\t }\n\n\t if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n\t throw new RangeError('out of range index')\n\t }\n\n\t if (thisStart >= thisEnd && start >= end) {\n\t return 0\n\t }\n\t if (thisStart >= thisEnd) {\n\t return -1\n\t }\n\t if (start >= end) {\n\t return 1\n\t }\n\n\t start >>>= 0;\n\t end >>>= 0;\n\t thisStart >>>= 0;\n\t thisEnd >>>= 0;\n\n\t if (this === target) return 0\n\n\t let x = thisEnd - thisStart;\n\t let y = end - start;\n\t const len = Math.min(x, y);\n\n\t const thisCopy = this.slice(thisStart, thisEnd);\n\t const targetCopy = target.slice(start, end);\n\n\t for (let i = 0; i < len; ++i) {\n\t if (thisCopy[i] !== targetCopy[i]) {\n\t x = thisCopy[i];\n\t y = targetCopy[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\t// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n\t// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n\t//\n\t// Arguments:\n\t// - buffer - a Buffer to search\n\t// - val - a string, Buffer, or number\n\t// - byteOffset - an index into `buffer`; will be clamped to an int32\n\t// - encoding - an optional encoding, relevant is val is a string\n\t// - dir - true for indexOf, false for lastIndexOf\n\tfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n\t // Empty buffer means no match\n\t if (buffer.length === 0) return -1\n\n\t // Normalize byteOffset\n\t if (typeof byteOffset === 'string') {\n\t encoding = byteOffset;\n\t byteOffset = 0;\n\t } else if (byteOffset > 0x7fffffff) {\n\t byteOffset = 0x7fffffff;\n\t } else if (byteOffset < -0x80000000) {\n\t byteOffset = -0x80000000;\n\t }\n\t byteOffset = +byteOffset; // Coerce to Number.\n\t if (numberIsNaN(byteOffset)) {\n\t // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n\t byteOffset = dir ? 0 : (buffer.length - 1);\n\t }\n\n\t // Normalize byteOffset: negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = buffer.length + byteOffset;\n\t if (byteOffset >= buffer.length) {\n\t if (dir) return -1\n\t else byteOffset = buffer.length - 1;\n\t } else if (byteOffset < 0) {\n\t if (dir) byteOffset = 0;\n\t else return -1\n\t }\n\n\t // Normalize val\n\t if (typeof val === 'string') {\n\t val = Buffer.from(val, encoding);\n\t }\n\n\t // Finally, search either indexOf (if dir is true) or lastIndexOf\n\t if (Buffer.isBuffer(val)) {\n\t // Special case: looking for empty string/buffer always fails\n\t if (val.length === 0) {\n\t return -1\n\t }\n\t return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n\t } else if (typeof val === 'number') {\n\t val = val & 0xFF; // Search for a byte value [0-255]\n\t if (typeof GlobalUint8Array.prototype.indexOf === 'function') {\n\t if (dir) {\n\t return GlobalUint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n\t } else {\n\t return GlobalUint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n\t }\n\t }\n\t return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n\t }\n\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\n\tfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n\t let indexSize = 1;\n\t let arrLength = arr.length;\n\t let valLength = val.length;\n\n\t if (encoding !== undefined) {\n\t encoding = String(encoding).toLowerCase();\n\t if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n\t encoding === 'utf16le' || encoding === 'utf-16le') {\n\t if (arr.length < 2 || val.length < 2) {\n\t return -1\n\t }\n\t indexSize = 2;\n\t arrLength /= 2;\n\t valLength /= 2;\n\t byteOffset /= 2;\n\t }\n\t }\n\n\t function read (buf, i) {\n\t if (indexSize === 1) {\n\t return buf[i]\n\t } else {\n\t return buf.readUInt16BE(i * indexSize)\n\t }\n\t }\n\n\t let i;\n\t if (dir) {\n\t let foundIndex = -1;\n\t for (i = byteOffset; i < arrLength; i++) {\n\t if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n\t if (foundIndex === -1) foundIndex = i;\n\t if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n\t } else {\n\t if (foundIndex !== -1) i -= i - foundIndex;\n\t foundIndex = -1;\n\t }\n\t }\n\t } else {\n\t if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength;\n\t for (i = byteOffset; i >= 0; i--) {\n\t let found = true;\n\t for (let j = 0; j < valLength; j++) {\n\t if (read(arr, i + j) !== read(val, j)) {\n\t found = false;\n\t break\n\t }\n\t }\n\t if (found) return i\n\t }\n\t }\n\n\t return -1\n\t}\n\n\tBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n\t return this.indexOf(val, byteOffset, encoding) !== -1\n\t};\n\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n\t};\n\n\tBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n\t};\n\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0;\n\t const remaining = buf.length - offset;\n\t if (!length) {\n\t length = remaining;\n\t } else {\n\t length = Number(length);\n\t if (length > remaining) {\n\t length = remaining;\n\t }\n\t }\n\n\t const strLen = string.length;\n\n\t if (length > strLen / 2) {\n\t length = strLen / 2;\n\t }\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t const parsed = parseInt(string.substr(i * 2, 2), 16);\n\t if (numberIsNaN(parsed)) return i\n\t buf[offset + i] = parsed;\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8';\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset;\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset >>> 0;\n\t if (isFinite(length)) {\n\t length = length >>> 0;\n\t if (encoding === undefined) encoding = 'utf8';\n\t } else {\n\t encoding = length;\n\t length = undefined;\n\t }\n\t } else {\n\t throw new Error(\n\t 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n\t )\n\t }\n\n\t const remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return asciiWrite(this, string, offset, length)\n\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t};\n\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t};\n\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end);\n\t const res = [];\n\n\t let i = start;\n\t while (i < end) {\n\t const firstByte = buf[i];\n\t let codePoint = null;\n\t let bytesPerSequence = (firstByte > 0xEF)\n\t ? 4\n\t : (firstByte > 0xDF)\n\t ? 3\n\t : (firstByte > 0xBF)\n\t ? 2\n\t : 1;\n\n\t if (i + bytesPerSequence <= end) {\n\t let secondByte, thirdByte, fourthByte, tempCodePoint;\n\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte;\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1];\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F);\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F);\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t fourthByte = buf[i + 3];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F);\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t }\n\t }\n\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD;\n\t bytesPerSequence = 1;\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000;\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800);\n\t codePoint = 0xDC00 | codePoint & 0x3FF;\n\t }\n\n\t res.push(codePoint);\n\t i += bytesPerSequence;\n\t }\n\n\t return decodeCodePointsArray(res)\n\t}\n\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tconst MAX_ARGUMENTS_LENGTH = 0x1000;\n\n\tfunction decodeCodePointsArray (codePoints) {\n\t const len = codePoints.length;\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t let res = '';\n\t let i = 0;\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t );\n\t }\n\t return res\n\t}\n\n\tfunction asciiSlice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i] & 0x7F);\n\t }\n\t return ret\n\t}\n\n\tfunction latin1Slice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i]);\n\t }\n\t return ret\n\t}\n\n\tfunction hexSlice (buf, start, end) {\n\t const len = buf.length;\n\n\t if (!start || start < 0) start = 0;\n\t if (!end || end < 0 || end > len) end = len;\n\n\t let out = '';\n\t for (let i = start; i < end; ++i) {\n\t out += hexSliceLookupTable[buf[i]];\n\t }\n\t return out\n\t}\n\n\tfunction utf16leSlice (buf, start, end) {\n\t const bytes = buf.slice(start, end);\n\t let res = '';\n\t // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n\t for (let i = 0; i < bytes.length - 1; i += 2) {\n\t res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256));\n\t }\n\t return res\n\t}\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t const len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t const newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(newBuf, Buffer.prototype);\n\n\t return newBuf\n\t};\n\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\n\tBuffer.prototype.readUintLE =\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUintBE =\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length);\n\t }\n\n\t let val = this[offset + --byteLength];\n\t let mul = 1;\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUint8 =\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t return this[offset]\n\t};\n\n\tBuffer.prototype.readUint16LE =\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return this[offset] | (this[offset + 1] << 8)\n\t};\n\n\tBuffer.prototype.readUint16BE =\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return (this[offset] << 8) | this[offset + 1]\n\t};\n\n\tBuffer.prototype.readUint32LE =\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t};\n\n\tBuffer.prototype.readUint32BE =\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const lo = first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24;\n\n\t const hi = this[++offset] +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t last * 2 ** 24;\n\n\t return BigInt(lo) + (BigInt(hi) << BigInt(32))\n\t});\n\n\tBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const hi = first * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t const lo = this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last;\n\n\t return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n\t});\n\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let i = byteLength;\n\t let mul = 1;\n\t let val = this[offset + --i];\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t};\n\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset] | (this[offset + 1] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset + 1] | (this[offset] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t};\n\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = this[offset + 4] +\n\t this[offset + 5] * 2 ** 8 +\n\t this[offset + 6] * 2 ** 16 +\n\t (last << 24); // Overflow\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24)\n\t});\n\n\tBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = (first << 24) + // Overflow\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last)\n\t});\n\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, true, 23, 4)\n\t};\n\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, false, 23, 4)\n\t};\n\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, true, 52, 8)\n\t};\n\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, false, 52, 8)\n\t};\n\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t}\n\n\tBuffer.prototype.writeUintLE =\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let mul = 1;\n\t let i = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUintBE =\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUint8 =\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0);\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeUint16LE =\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint16BE =\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint32LE =\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset + 3] = (value >>> 24);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeUint32BE =\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t return offset\n\t}\n\n\tfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset + 7] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 6] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 5] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 4] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset + 3] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 2] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 1] = hi;\n\t hi = hi >> 8;\n\t buf[offset] = hi;\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = 0;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80);\n\t if (value < 0) value = 0xff + value + 1;\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 3] = (value >>> 24);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t if (value < 0) value = 0xffffffff + value + 1;\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t if (offset < 0) throw new RangeError('Index out of range')\n\t}\n\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 23, 4);\n\t return offset + 4\n\t}\n\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t};\n\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 52, 8);\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t};\n\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t const len = end - start;\n\n\t if (this === target && typeof GlobalUint8Array.prototype.copyWithin === 'function') {\n\t // Use built-in when available, missing from IE11\n\t this.copyWithin(targetStart, start, end);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, end),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\t// Usage:\n\t// buffer.fill(number[, offset[, end]])\n\t// buffer.fill(buffer[, offset[, end]])\n\t// buffer.fill(string[, offset[, end]][, encoding])\n\tBuffer.prototype.fill = function fill (val, start, end, encoding) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t encoding = start;\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t encoding = end;\n\t end = this.length;\n\t }\n\t if (encoding !== undefined && typeof encoding !== 'string') {\n\t throw new TypeError('encoding must be a string')\n\t }\n\t if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\t if (val.length === 1) {\n\t const code = val.charCodeAt(0);\n\t if ((encoding === 'utf8' && code < 128) ||\n\t encoding === 'latin1') {\n\t // Fast path: If `val` fits into a single byte, use that numeric value.\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t } else if (typeof val === 'boolean') {\n\t val = Number(val);\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t let i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t const bytes = Buffer.isBuffer(val)\n\t ? val\n\t : Buffer.from(val, encoding);\n\t const len = bytes.length;\n\t if (len === 0) {\n\t throw new TypeError('The value \"' + val +\n\t '\" is invalid for argument \"value\"')\n\t }\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\t// CUSTOM ERRORS\n\t// =============\n\n\t// Simplified versions from Node, changed for Buffer-only usage\n\tconst errors = {};\n\tfunction E (sym, getMessage, Base) {\n\t errors[sym] = class NodeError extends Base {\n\t constructor () {\n\t super();\n\n\t Object.defineProperty(this, 'message', {\n\t value: getMessage.apply(this, arguments),\n\t writable: true,\n\t configurable: true\n\t });\n\n\t // Add the error code to the name to include it in the stack trace.\n\t this.name = `${this.name} [${sym}]`;\n\t // Access the stack to generate the error message including the error code\n\t // from the name.\n\t this.stack; // eslint-disable-line no-unused-expressions\n\t // Reset the name to the actual name.\n\t delete this.name;\n\t }\n\n\t get code () {\n\t return sym\n\t }\n\n\t set code (value) {\n\t Object.defineProperty(this, 'code', {\n\t configurable: true,\n\t enumerable: true,\n\t value,\n\t writable: true\n\t });\n\t }\n\n\t toString () {\n\t return `${this.name} [${sym}]: ${this.message}`\n\t }\n\t };\n\t}\n\n\tE('ERR_BUFFER_OUT_OF_BOUNDS',\n\t function (name) {\n\t if (name) {\n\t return `${name} is outside of buffer bounds`\n\t }\n\n\t return 'Attempt to access memory outside buffer bounds'\n\t }, RangeError);\n\tE('ERR_INVALID_ARG_TYPE',\n\t function (name, actual) {\n\t return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n\t }, TypeError);\n\tE('ERR_OUT_OF_RANGE',\n\t function (str, range, input) {\n\t let msg = `The value of \"${str}\" is out of range.`;\n\t let received = input;\n\t if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n\t received = addNumericalSeparator(String(input));\n\t } else if (typeof input === 'bigint') {\n\t received = String(input);\n\t if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n\t received = addNumericalSeparator(received);\n\t }\n\t received += 'n';\n\t }\n\t msg += ` It must be ${range}. Received ${received}`;\n\t return msg\n\t }, RangeError);\n\n\tfunction addNumericalSeparator (val) {\n\t let res = '';\n\t let i = val.length;\n\t const start = val[0] === '-' ? 1 : 0;\n\t for (; i >= start + 4; i -= 3) {\n\t res = `_${val.slice(i - 3, i)}${res}`;\n\t }\n\t return `${val.slice(0, i)}${res}`\n\t}\n\n\t// CHECK FUNCTIONS\n\t// ===============\n\n\tfunction checkBounds (buf, offset, byteLength) {\n\t validateNumber(offset, 'offset');\n\t if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n\t boundsError(offset, buf.length - (byteLength + 1));\n\t }\n\t}\n\n\tfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n\t if (value > max || value < min) {\n\t const n = typeof min === 'bigint' ? 'n' : '';\n\t let range;\n\t if (byteLength > 3) {\n\t if (min === 0 || min === BigInt(0)) {\n\t range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`;\n\t } else {\n\t range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n\t `${(byteLength + 1) * 8 - 1}${n}`;\n\t }\n\t } else {\n\t range = `>= ${min}${n} and <= ${max}${n}`;\n\t }\n\t throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n\t }\n\t checkBounds(buf, offset, byteLength);\n\t}\n\n\tfunction validateNumber (value, name) {\n\t if (typeof value !== 'number') {\n\t throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n\t }\n\t}\n\n\tfunction boundsError (value, length, type) {\n\t if (Math.floor(value) !== value) {\n\t validateNumber(value, type);\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n\t }\n\n\t if (length < 0) {\n\t throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n\t }\n\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n\t `>= ${type ? 1 : 0} and <= ${length}`,\n\t value)\n\t}\n\n\t// HELPER FUNCTIONS\n\t// ================\n\n\tconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\n\n\tfunction base64clean (str) {\n\t // Node takes equal signs as end of the Base64 encoding\n\t str = str.split('=')[0];\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = str.trim().replace(INVALID_BASE64_RE, '');\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '=';\n\t }\n\t return str\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t let codePoint;\n\t const length = string.length;\n\t let leadSurrogate = null;\n\t const bytes = [];\n\n\t for (let i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction asciiToBytes (str) {\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF);\n\t }\n\t return byteArray\n\t}\n\n\tfunction utf16leToBytes (str, units) {\n\t let c, hi, lo;\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t if ((units -= 2) < 0) break\n\n\t c = str.charCodeAt(i);\n\t hi = c >> 8;\n\t lo = c % 256;\n\t byteArray.push(lo);\n\t byteArray.push(hi);\n\t }\n\n\t return byteArray\n\t}\n\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\t// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n\t// the `instanceof` check but they should be treated as of that type.\n\t// See: https://github.com/feross/buffer/issues/166\n\tfunction isInstance (obj, type) {\n\t return obj instanceof type ||\n\t (obj != null && obj.constructor != null && obj.constructor.name != null &&\n\t obj.constructor.name === type.name)\n\t}\n\tfunction numberIsNaN (obj) {\n\t // For IE11 support\n\t return obj !== obj // eslint-disable-line no-self-compare\n\t}\n\n\t// Create lookup table for `toString('hex')`\n\t// See: https://github.com/feross/buffer/issues/219\n\tconst hexSliceLookupTable = (function () {\n\t const alphabet = '0123456789abcdef';\n\t const table = new Array(256);\n\t for (let i = 0; i < 16; ++i) {\n\t const i16 = i * 16;\n\t for (let j = 0; j < 16; ++j) {\n\t table[i16 + j] = alphabet[i] + alphabet[j];\n\t }\n\t }\n\t return table\n\t})();\n\n\t// Return not function with Error if BigInt not supported\n\tfunction defineBigIntMethod (fn) {\n\t return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n\t}\n\n\tfunction BufferBigIntNotDefined () {\n\t throw new Error('BigInt not supported')\n\t} \n} (buffer));\n\nconst Buffer = buffer.Buffer;\n\nconst Blob = buffer.Blob;\nconst BlobOptions = buffer.BlobOptions;\nconst Buffer$1 = buffer.Buffer;\nconst File = buffer.File;\nconst FileOptions = buffer.FileOptions;\nconst INSPECT_MAX_BYTES = buffer.INSPECT_MAX_BYTES;\nconst SlowBuffer = buffer.SlowBuffer;\nconst TranscodeEncoding = buffer.TranscodeEncoding;\nconst atob = buffer.atob;\nconst btoa = buffer.btoa;\nconst constants = buffer.constants;\nconst isAscii = buffer.isAscii;\nconst isUtf8 = buffer.isUtf8;\nconst kMaxLength = buffer.kMaxLength;\nconst kStringMaxLength = buffer.kStringMaxLength;\nconst resolveObjectURL = buffer.resolveObjectURL;\nconst transcode = buffer.transcode;\nexport { Blob, BlobOptions, Buffer$1 as Buffer, File, FileOptions, INSPECT_MAX_BYTES, SlowBuffer, TranscodeEncoding, atob, btoa, constants, Buffer as default, isAscii, isUtf8, kMaxLength, kStringMaxLength, resolveObjectURL, transcode };\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover its components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","export const VERSION = \"1.7.7\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy;\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","import Axios from \"axios\";\nimport { isAxiosError, isCancel } from \"axios\";\nimport { getRequestToken, onRequestTokenUpdate } from \"@nextcloud/auth\";\nimport { generateUrl } from \"@nextcloud/router\";\nconst RETRY_KEY = Symbol(\"csrf-retry\");\nconst onError$2 = (axios) => async (error) => {\n var _a2;\n const { config, response, request } = error;\n const responseURL = request == null ? void 0 : request.responseURL;\n const status = response == null ? void 0 : response.status;\n if (status === 412 && ((_a2 = response == null ? void 0 : response.data) == null ? void 0 : _a2.message) === \"CSRF check failed\" && config[RETRY_KEY] === void 0) {\n console.warn(\"Request to \".concat(responseURL, \" failed because of a CSRF mismatch. Fetching a new token\"));\n const { data: { token } } = await axios.get(generateUrl(\"/csrftoken\"));\n console.debug(\"New request token \".concat(token, \" fetched\"));\n axios.defaults.headers.requesttoken = token;\n return axios({\n ...config,\n headers: {\n ...config.headers,\n requesttoken: token\n },\n [RETRY_KEY]: true\n });\n }\n return Promise.reject(error);\n};\nconst RETRY_DELAY_KEY = Symbol(\"retryDelay\");\nconst onError$1 = (axios) => async (error) => {\n var _a2;\n const { config, response, request } = error;\n const responseURL = request == null ? void 0 : request.responseURL;\n const status = response == null ? void 0 : response.status;\n const headers = response == null ? void 0 : response.headers;\n if (status === 503 && headers[\"x-nextcloud-maintenance-mode\"] === \"1\" && config.retryIfMaintenanceMode && (!config[RETRY_DELAY_KEY] || config[RETRY_DELAY_KEY] <= 32)) {\n const retryDelay = ((_a2 = config[RETRY_DELAY_KEY]) != null ? _a2 : 1) * 2;\n console.warn(\"Request to \".concat(responseURL, \" failed because of maintenance mode. Retrying in \").concat(retryDelay, \"s\"));\n await new Promise((resolve) => {\n setTimeout(resolve, retryDelay * 1e3);\n });\n return axios({\n ...config,\n [RETRY_DELAY_KEY]: retryDelay\n });\n }\n return Promise.reject(error);\n};\nconst onError = async (error) => {\n var _a2;\n const { config, response, request } = error;\n const responseURL = request == null ? void 0 : request.responseURL;\n const status = response == null ? void 0 : response.status;\n if (status === 401 && ((_a2 = response == null ? void 0 : response.data) == null ? void 0 : _a2.message) === \"Current user is not logged in\" && config.reloadExpiredSession && (window == null ? void 0 : window.location)) {\n console.error(\"Request to \".concat(responseURL, \" failed because the user session expired. Reloading the page …\"));\n window.location.reload();\n }\n return Promise.reject(error);\n};\nvar _a;\nconst client = Axios.create({\n headers: {\n requesttoken: (_a = getRequestToken()) != null ? _a : \"\",\n \"X-Requested-With\": \"XMLHttpRequest\"\n }\n});\nconst cancelableClient = Object.assign(client, {\n CancelToken: Axios.CancelToken,\n isCancel: Axios.isCancel\n});\ncancelableClient.interceptors.response.use((r) => r, onError$2(cancelableClient));\ncancelableClient.interceptors.response.use((r) => r, onError$1(cancelableClient));\ncancelableClient.interceptors.response.use((r) => r, onError);\nonRequestTokenUpdate((token) => {\n client.defaults.headers.requesttoken = token;\n});\nexport {\n cancelableClient as default,\n isAxiosError,\n isCancel\n};\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar 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 es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.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} : $propertyIsEnumerable;\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.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(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\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","'use strict';\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar documentAll = typeof document == 'object' && document.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nmodule.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && 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;\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar globalThis = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});\n\n(store.versions || (store.versions = [])).push({\n version: '3.37.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.37.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar store = require('../internals/shared-store');\n\nmodule.exports = function (key, value) {\n return store[key] || (store[key] = value || {});\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar 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","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar 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';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar 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","'use strict';\nmodule.exports = {};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\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 new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\).*$/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\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 = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n var len = toIntegerOrInfinity(argument);\n return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\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 = lengthOfArrayLike(O);\n if (length === 0) return !IS_INCLUDES && -1;\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","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\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) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\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","'use strict';\nvar 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\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\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\nvar concat = uncurryThis([].concat);\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 ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\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, exceptions) {\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 (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\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 : isCallable(detection) ? 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 global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\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.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\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] || defineGlobalProperty(TARGET, {});\n } else {\n target = global[TARGET] && global[TARGET].prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\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 defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar 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","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\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' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\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.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') !== null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') !== null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","'use strict';\nvar 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\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\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++], props[key]);\n return O;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = 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 activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\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\n// eslint-disable-next-line es/no-object-create -- safe\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 : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.test('\\n') && re.flags === 's');\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar 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 || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(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 = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], 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't work for /(.?)?/\n call(nativeReplace, 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 if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegExp 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 () {\n execCalled = true;\n return null;\n };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\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: call(nativeRegExpMethod, regexp, str, arg2) };\n }\n return { done: true, value: call(nativeMethod, str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (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","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 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 ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw new $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\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 // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\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\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n var fullUnicode;\n if (global) {\n fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n\n var results = [];\n var result;\n while (true) {\n result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(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 = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n var replacement;\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++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.generateUrl = exports.generateRemoteUrl = exports.generateOcsUrl = exports.generateFilePath = void 0;\nexports.getAppRootUrl = getAppRootUrl;\nexports.getRootUrl = getRootUrl;\nexports.linkTo = exports.imagePath = void 0;\nrequire(\"core-js/modules/es.string.replace.js\");\n/**\n * Get an url with webroot 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} URL with webroot to a file\n */\nconst linkTo = (app, file) => 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 */\nexports.linkTo = linkTo;\nconst linkToRemoteBase = service => 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 */\nconst generateRemoteUrl = service => 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} url OCS API service url\n * @param {object} params parameters to be replaced into the service url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @param {Number} options.ocsVersion OCS version to use (defaults to 2)\n * @return {string} Absolute path for the OCS URL\n */\nexports.generateRemoteUrl = generateRemoteUrl;\nconst generateOcsUrl = (url, params, options) => {\n const allOptions = Object.assign({\n ocsVersion: 2\n }, options || {});\n const version = allOptions.ocsVersion === 1 ? 1 : 2;\n return window.location.protocol + '//' + window.location.host + getRootUrl() + '/ocs/v' + version + '.php' + _generateUrlPath(url, params, options);\n};\nexports.generateOcsUrl = generateOcsUrl;\n/**\n * Generate a url path, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the address\n * @param {UrlOptions} options options for the parameter replacement\n * @return {string} Path part for the given URL\n */\nconst _generateUrlPath = (url, params, options) => {\n const allOptions = Object.assign({\n escape: true\n }, options || {});\n const _build = function (text, vars) {\n vars = vars || {};\n return text.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\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 if (url.charAt(0) !== '/') {\n url = '/' + url;\n }\n return _build(url, params || {});\n};\n\n/**\n * Generate the url with webroot for the given relative url, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.noRewrite True if you want to force index.php being added\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @return {string} URL with webroot for the given relative URL\n */\nconst generateUrl = (url, params, options) => {\n var _window;\n const allOptions = Object.assign({\n noRewrite: false\n }, options || {});\n if (((_window = window) === null || _window === void 0 || (_window = _window.OC) === null || _window === void 0 || (_window = _window.config) === null || _window === void 0 ? void 0 : _window.modRewriteWorking) === true && !allOptions.noRewrite) {\n return getRootUrl() + _generateUrlPath(url, params, options);\n }\n return getRootUrl() + '/index.php' + _generateUrlPath(url, params, options);\n};\n\n/**\n * Get the path with webroot 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 */\nexports.generateUrl = generateUrl;\nconst 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 return generateFilePath(app, 'img', file);\n};\n\n/**\n * Get the url with webroot 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} URL with webroot for a file in an app\n */\nexports.imagePath = imagePath;\nconst generateFilePath = (app, type, file) => {\n var _window2;\n const isCore = ((_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.OC) === null || _window2 === void 0 || (_window2 = _window2.coreApps) === null || _window2 === void 0 ? void 0 : _window2.indexOf(app)) !== -1;\n let link = getRootUrl();\n if (file.substring(file.length - 3) === 'php' && !isCore) {\n link += '/index.php/apps/' + app;\n if (file !== 'index.php') {\n link += '/';\n if (type) {\n link += encodeURI(type + '/');\n }\n link += file;\n }\n } else if (file.substring(file.length - 3) !== 'php' && !isCore) {\n link = getAppRootUrl(app);\n if (type) {\n link += '/' + type + '/';\n }\n if (link.substring(link.length - 1) !== '/') {\n link += '/';\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 if (!isCore) {\n link += 'apps/';\n }\n if (app !== '') {\n app += '/';\n link += app;\n }\n if (type) {\n link += type + '/';\n }\n link += file;\n }\n return link;\n};\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 */\nexports.generateFilePath = generateFilePath;\nfunction getRootUrl() {\n let webroot = window._oc_webroot;\n if (typeof webroot === 'undefined') {\n webroot = location.pathname;\n const pos = webroot.indexOf('/index.php/');\n if (pos !== -1) {\n webroot = webroot.substr(0, pos);\n } else {\n webroot = webroot.substr(0, webroot.lastIndexOf('/'));\n }\n }\n return webroot;\n}\n\n/**\n * Return the web root path for a given app\n * @param {string} app The ID of the app\n */\nfunction getAppRootUrl(app) {\n var _window$_oc_appswebro, _webroots$app;\n const webroots = (_window$_oc_appswebro = window._oc_appswebroots) !== null && _window$_oc_appswebro !== void 0 ? _window$_oc_appswebro : {};\n return (_webroots$app = webroots[app]) !== null && _webroots$app !== void 0 ? _webroots$app : '';\n}\n//# sourceMappingURL=index.js.map","import { generateFilePath } from '@nextcloud/router';\nimport DOMPurify from 'dompurify';\nimport escapeHTML from 'escape-html';\n\n/// \n/**\n * Get the first day of the week\n *\n * @return {number}\n */\nfunction getFirstDay() {\n if (typeof window.firstDay === 'undefined') {\n console.warn('No firstDay found');\n return 1;\n }\n return window.firstDay;\n}\n/**\n * Get a list of day names (full names)\n *\n * @return {string[]}\n */\nfunction getDayNames() {\n if (typeof window.dayNames === 'undefined') {\n console.warn('No dayNames found');\n return [\n 'Sunday',\n 'Monday',\n 'Tuesday',\n 'Wednesday',\n 'Thursday',\n 'Friday',\n 'Saturday',\n ];\n }\n return window.dayNames;\n}\n/**\n * Get a list of day names (short names)\n *\n * @return {string[]}\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 return window.dayNamesShort;\n}\n/**\n * Get a list of day names (minified names)\n *\n * @return {string[]}\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 return window.dayNamesMin;\n}\n/**\n * Get a list of month names (full names)\n *\n * @return {string[]}\n */\nfunction getMonthNames() {\n if (typeof window.monthNames === 'undefined') {\n console.warn('No monthNames found');\n return [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n ];\n }\n return window.monthNames;\n}\n/**\n * Get a list of month names (short names)\n *\n * @return {string[]}\n */\nfunction getMonthNamesShort() {\n if (typeof window.monthNamesShort === 'undefined') {\n console.warn('No monthNamesShort found');\n return [\n 'Jan.',\n 'Feb.',\n 'Mar.',\n 'Apr.',\n 'May.',\n 'Jun.',\n 'Jul.',\n 'Aug.',\n 'Sep.',\n 'Oct.',\n 'Nov.',\n 'Dec.',\n ];\n }\n return window.monthNamesShort;\n}\n\n/**\n * Returns the user's locale\n */\nfunction getLocale() {\n return document.documentElement.dataset.locale || 'en';\n}\n/**\n * Returns user's locale in canonical form\n * E.g. `en-US` instead of `en_US`\n */\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, '-');\n}\n/**\n * Returns the user's language\n */\nfunction getLanguage() {\n return document.documentElement.lang || 'en';\n}\n/**\n * Check whether the current, or a given, language is read right-to-left\n *\n * @param language Language code to check, defaults to current language\n */\nfunction isRTL(language) {\n const languageCode = language || getLanguage();\n // Source: https://meta.wikimedia.org/wiki/Template:List_of_language_names_ordered_by_code\n const rtlLanguages = [\n /* eslint-disable no-multi-spaces */\n 'ae',\n 'ar',\n 'arc',\n 'arz',\n 'bcc',\n 'bqi',\n 'ckb',\n 'dv',\n 'fa',\n 'glk',\n 'ha',\n 'he',\n 'khw',\n 'ks',\n 'ku',\n 'mzn',\n 'nqo',\n 'pnb',\n 'ps',\n 'sd',\n 'ug',\n 'ur',\n 'uzs',\n 'yi', // 'ייִדיש', Yiddish\n /* eslint-enable no-multi-spaces */\n ];\n // special case for Uzbek Afghan\n if ((language || getCanonicalLocale()).startsWith('uz-AF')) {\n return true;\n }\n return rtlLanguages.includes(languageCode);\n}\n\n/// \n/**\n * Check if translations and plural function are set for given app\n *\n * @param {string} appId the app id\n * @return {boolean}\n */\nfunction hasAppTranslations(appId) {\n var _a, _b;\n return (((_a = window._oc_l10n_registry_translations) === null || _a === void 0 ? void 0 : _a[appId]) !== undefined\n && ((_b = window._oc_l10n_registry_plural_functions) === null || _b === void 0 ? void 0 : _b[appId]) !== undefined);\n}\n/**\n * Register new, or extend available, translations for an app\n *\n * @param {string} appId the app id\n * @param {object} translations the translations list\n * @param {Function} pluralFunction the plural function\n */\nfunction registerAppTranslations(appId, translations, pluralFunction) {\n var _a;\n window._oc_l10n_registry_translations = Object.assign(window._oc_l10n_registry_translations || {}, {\n [appId]: Object.assign(((_a = window._oc_l10n_registry_translations) === null || _a === void 0 ? void 0 : _a[appId]) || {}, translations),\n });\n window._oc_l10n_registry_plural_functions = Object.assign(window._oc_l10n_registry_plural_functions || {}, {\n [appId]: pluralFunction,\n });\n}\n/**\n * Unregister all translations and plural function for given app\n *\n * @param {string} appId the app id\n */\nfunction unregisterAppTranslations(appId) {\n var _a, _b;\n (_a = window._oc_l10n_registry_translations) === null || _a === void 0 ? true : delete _a[appId];\n (_b = window._oc_l10n_registry_plural_functions) === null || _b === void 0 ? true : delete _b[appId];\n}\n/**\n * Get translations bundle for given app and current locale\n *\n * @param {string} appId the app id\n * @return {object}\n */\nfunction getAppTranslations(appId) {\n var _a, _b, _c, _d;\n return {\n translations: (_b = (_a = window._oc_l10n_registry_translations) === null || _a === void 0 ? void 0 : _a[appId]) !== null && _b !== void 0 ? _b : {},\n pluralFunction: (_d = (_c = window._oc_l10n_registry_plural_functions) === null || _c === void 0 ? void 0 : _c[appId]) !== null && _d !== void 0 ? _d : ((number) => number),\n };\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, number, options) {\n const defaultOptions = {\n escape: true,\n sanitize: true,\n };\n const allOptions = Object.assign({}, defaultOptions, options || {});\n const identity = (value) => value;\n const optSanitize = allOptions.sanitize ? DOMPurify.sanitize : identity;\n const optEscape = allOptions.escape ? escapeHTML : identity;\n // TODO: cache this function to avoid inline recreation\n // of the same function over and over again in case\n // translate() is used in a loop\n const _build = (text, vars, number) => {\n return text.replace(/%n/g, '' + number).replace(/{([^{}]*)}/g, (match, key) => {\n if (vars === undefined || !(key in vars)) {\n return optSanitize(match);\n }\n const r = vars[key];\n if (typeof r === 'string' || typeof r === 'number') {\n return optSanitize(optEscape(r));\n }\n else {\n return optSanitize(match);\n }\n });\n };\n const bundle = getAppTranslations(app);\n let translation = bundle.translations[text] || text;\n translation = Array.isArray(translation) ? translation[0] : translation;\n if (typeof vars === 'object' || number !== undefined) {\n return optSanitize(_build(translation, vars, number));\n }\n else {\n return optSanitize(translation);\n }\n}\n/**\n * Translate a string containing an object which possibly requires a plural form\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} number 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 */\nfunction translatePlural(app, textSingular, textPlural, number, vars, options) {\n const identifier = '_' + textSingular + '_::_' + textPlural + '_';\n const bundle = getAppTranslations(app);\n const value = bundle.translations[identifier];\n if (typeof value !== 'undefined') {\n const translation = value;\n if (Array.isArray(translation)) {\n const plural = bundle.pluralFunction(number);\n return translate(app, translation[plural], vars, number, options);\n }\n }\n if (number === 1) {\n return translate(app, textSingular, vars, number, options);\n }\n else {\n return translate(app, textPlural, vars, number, options);\n }\n}\n/**\n * Load an app's translation bundle if not loaded already.\n *\n * @param {string} appName name of the app\n * @param {Function} callback callback to be called when\n * the translations are loaded\n * @return {Promise} promise\n */\nfunction loadTranslations(appName, callback) {\n if (hasAppTranslations(appName) || getLocale() === 'en') {\n return Promise.resolve().then(callback);\n }\n const url = generateFilePath(appName, 'l10n', getLocale() + '.json');\n const promise = new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open('GET', url, true);\n request.onerror = () => {\n reject(new Error(request.statusText || 'Network error'));\n };\n request.onload = () => {\n if (request.status >= 200 && request.status < 300) {\n try {\n const bundle = JSON.parse(request.responseText);\n if (typeof bundle.translations === 'object')\n resolve(bundle);\n }\n catch (error) {\n // error is probably a SyntaxError due to invalid response text, this is handled by next line\n }\n reject(new Error('Invalid content of translation bundle'));\n }\n else {\n reject(new Error(request.statusText));\n }\n };\n request.send();\n });\n // load JSON translation bundle per AJAX\n return promise\n .then((result) => {\n register(appName, result.translations);\n return result;\n })\n .then(callback);\n}\n/**\n * Register an app's translation bundle.\n *\n * @param {string} appName name of the app\n * @param {Object} bundle translation bundle\n */\nfunction register(appName, bundle) {\n registerAppTranslations(appName, bundle, getPlural);\n}\n/**\n * Unregister all translations of an app\n *\n * @param appName name of the app\n * @since 2.1.0\n */\nfunction unregister(appName) {\n return unregisterAppTranslations(appName);\n}\n/**\n * Get array index of translations for a plural form\n *\n *\n * @param {number} number the number of elements\n * @return {number} 0 for the singular form(, 1 for the first plural form, ...)\n */\nfunction getPlural(number) {\n let language = getLanguage();\n if (language === 'pt-BR') {\n // temporary set a locale for brazilian\n language = 'xbr';\n }\n if (language.length > 3) {\n language = language.substring(0, language.lastIndexOf('-'));\n }\n /*\n * The plural rules are derived from code of the Zend Framework (2010-09-25),\n * which is subject to the new BSD license (http://framework.zend.com/license/new-bsd).\n * Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)\n */\n switch (language) {\n case 'az':\n case 'bo':\n case 'dz':\n case 'id':\n case 'ja':\n case 'jv':\n case 'ka':\n case 'km':\n case 'kn':\n case 'ko':\n case 'ms':\n case 'th':\n case 'tr':\n case 'vi':\n case 'zh':\n return 0;\n case 'af':\n case 'bn':\n case 'bg':\n case 'ca':\n case 'da':\n case 'de':\n case 'el':\n case 'en':\n case 'eo':\n case 'es':\n case 'et':\n case 'eu':\n case 'fa':\n case 'fi':\n case 'fo':\n case 'fur':\n case 'fy':\n case 'gl':\n case 'gu':\n case 'ha':\n case 'he':\n case 'hu':\n case 'is':\n case 'it':\n case 'ku':\n case 'lb':\n case 'ml':\n case 'mn':\n case 'mr':\n case 'nah':\n case 'nb':\n case 'ne':\n case 'nl':\n case 'nn':\n case 'no':\n case 'oc':\n case 'om':\n case 'or':\n case 'pa':\n case 'pap':\n case 'ps':\n case 'pt':\n case 'so':\n case 'sq':\n case 'sv':\n case 'sw':\n case 'ta':\n case 'te':\n case 'tk':\n case 'ur':\n case 'zu':\n return number === 1 ? 0 : 1;\n case 'am':\n case 'bh':\n case 'fil':\n case 'fr':\n case 'gun':\n case 'hi':\n case 'hy':\n case 'ln':\n case 'mg':\n case 'nso':\n case 'xbr':\n case 'ti':\n case 'wa':\n return number === 0 || number === 1 ? 0 : 1;\n case 'be':\n case 'bs':\n case 'hr':\n case 'ru':\n case 'sh':\n case 'sr':\n case 'uk':\n return number % 10 === 1 && number % 100 !== 11\n ? 0\n : number % 10 >= 2\n && number % 10 <= 4\n && (number % 100 < 10 || number % 100 >= 20)\n ? 1\n : 2;\n case 'cs':\n case 'sk':\n return number === 1 ? 0 : number >= 2 && number <= 4 ? 1 : 2;\n case 'ga':\n return number === 1 ? 0 : number === 2 ? 1 : 2;\n case 'lt':\n return number % 10 === 1 && number % 100 !== 11\n ? 0\n : number % 10 >= 2 && (number % 100 < 10 || number % 100 >= 20)\n ? 1\n : 2;\n case 'sl':\n return number % 100 === 1\n ? 0\n : number % 100 === 2\n ? 1\n : number % 100 === 3 || number % 100 === 4\n ? 2\n : 3;\n case 'mk':\n return number % 10 === 1 ? 0 : 1;\n case 'mt':\n return number === 1\n ? 0\n : number === 0 || (number % 100 > 1 && number % 100 < 11)\n ? 1\n : number % 100 > 10 && number % 100 < 20\n ? 2\n : 3;\n case 'lv':\n return number === 0\n ? 0\n : number % 10 === 1 && number % 100 !== 11\n ? 1\n : 2;\n case 'pl':\n return number === 1\n ? 0\n : number % 10 >= 2\n && number % 10 <= 4\n && (number % 100 < 12 || number % 100 > 14)\n ? 1\n : 2;\n case 'cy':\n return number === 1\n ? 0\n : number === 2\n ? 1\n : number === 8 || number === 11\n ? 2\n : 3;\n case 'ro':\n return number === 1\n ? 0\n : number === 0 || (number % 100 > 0 && number % 100 < 20)\n ? 1\n : 2;\n case 'ar':\n return number === 0\n ? 0\n : number === 1\n ? 1\n : number === 2\n ? 2\n : number % 100 >= 3 && number % 100 <= 10\n ? 3\n : number % 100 >= 11 && number % 100 <= 99\n ? 4\n : 5;\n default:\n return 0;\n }\n}\n\nexport { getCanonicalLocale, getDayNames, getDayNamesMin, getDayNamesShort, getFirstDay, getLanguage, getLocale, getMonthNames, getMonthNamesShort, getPlural, isRTL, loadTranslations, register, translate, translatePlural, unregister };\n","export default \"\"","import axios from '@nextcloud/axios'\nimport { emit } from '@nextcloud/event-bus'\nimport { Node, View, Permission, Folder, FileAction } from '@nextcloud/files'\nimport { generateUrl } from '@nextcloud/router'\nimport { translate as t } from '@nextcloud/l10n'\n// import type VueRouter from 'vue-router'\nimport FolderZipSvg from '@mdi/svg/svg/folder-zip.svg?raw'\n\nexport const action = new FileAction({\n\tid: 'extract',\n\tdisplayName: () => t('extract', 'Extract here'),\n\ticonSvgInline: () => FolderZipSvg,\n\t// Only works on single files\n\tenabled(nodes: Node[]) {\n\t\t// Only works on single node\n\t\tif (nodes.length !== 1) {\n\t\t\treturn false\n\t\t}\n\n\t\tif (nodes[0].attributes.getcontenttype === 'application/zip'\n\t\t\t|| nodes[0].attributes.getcontenttype === 'application/x-tar'\n\t\t\t|| nodes[0].attributes.getcontenttype === 'application/gzip'\n\t\t\t|| nodes[0].attributes.getcontenttype === 'application/x-rar-compressed'\n\t\t\t|| nodes[0].attributes.getcontenttype === 'application/x-7z-compressed'\n\t\t\t|| nodes[0].attributes.getcontenttype === 'application/x-deb'\n\t\t\t|| nodes[0].attributes.getcontenttype === 'application/x-bzip2'\n\t\t) {\n\t\t\treturn (nodes[0].permissions & Permission.UPDATE) !== 0\n\t\t}\n\n\t\treturn false\n\t},\n\tasync exec(node: Node, view: View, dir: string) {\n\t\tvar data = {\n\t\t\tnameOfFile: node.attributes.basename,\n\t\t\tdirectory: dir,\n\t\t\texternal: node.attributes[\"mount-type\"].startsWith(\"external\") ? 1 : 0,\n\t\t\tmime: node.attributes.mime,\n\t\t};\n\t\tconst url = generateUrl('/apps/extract/ajax/extract.php')\n\t\taxios.post(url, data)\n\t\t\t.then(resp => resp.data)\n\t\t\t.then(data => {\n\t\t\t\t// We need the extracted folder so we can emit it in the next step.\n\t\t\t\t// Just like it's done when a new folder is created.\n\t\t\t\tconst time = data['extracted']['mtime'] * 1000\n\t\t\t\tconst folder = new Folder({\n\t\t\t\t\tid: data['extracted']['fileId'],\n\t\t\t\t\tsource: data['extracted']['source'],\n\t\t\t\t\troot: data['extracted']['root'],\n\t\t\t\t\towner: data['extracted']['owner'],\n\t\t\t\t\tpermissions: data['extracted']['permissions'],\n\t\t\t\t\tmtime: new Date(time),\n\t\t\t\t\t// Include mount-type from parent folder as this is inherited\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\t'mount-type': data['extracted']['mount-type'],\n\t\t\t\t\t\t'owner-id': data['extracted']['owner'],\n\t\t\t\t\t\t'owner-display-name': data['extracted']['owner-display-name'],\n\t\t\t\t\t},\n\t\t\t\t})\n\n\t\t\t\temit('files:node:created', folder)\n\n\t\t\t\twindow.OCP.Files.Router.goToRoute(\n\t\t\t\t\tnull, // use default route\n\t\t\t\t\t{ view: 'files', fileid: data['fileId'] },\n\t\t\t\t\t{ dir: dir },\n\t\t\t\t)\n\t\t\t\treturn null\n\n\t\t\t})\n\t\t\t.catch(error => {\n\t\t\t\tconsole.log('Could not send extract request.')\n\t\t\t\tconsole.log(error)\n\t\t\t})\n\t\treturn null\n\t},\n\torder: 25,\n})"],"names":["getDefaultExportFromCjs","x","process","e","noop","process$1","debug","define_process_env_default","debug_1","SEMVER_SPEC_VERSION","MAX_LENGTH","MAX_SAFE_INTEGER","MAX_SAFE_COMPONENT_LENGTH","MAX_SAFE_BUILD_LENGTH","RELEASE_TYPES","constants","require$$0","require$$1","re","t","R","token","max","parseOptions","compareIdentifiers","a","b","require$$2","require$$3","require$$4","version","m","id","SemVer","parse","v","valid","major","h","_defineProperty","_toPropertyKey","_toPrimitive","r","_scopedstorage","_interopRequireDefault","dist","k","s","e2","getBuilder","uid","_a","self","code","isAbsolute","g","n","U","o","w","u","c","l","_","f","action","resolve","reject","global","i","d","y","p","N","P","A","O","E","T","j","S","$","C","I","getPrototypeOf","getOwnPropertyDescriptor","create","apply","freeze","seal","construct","stringIndexOf","set","html$1","html","getGlobal","_createTrustedTypesPolicy","window","document","Node","MUSTACHE_EXPR","ERB_EXPR","TMPLIT_EXPR","DATA_ATTR","ARIA_ATTR","IS_SCRIPT_OR_DATA","ATTR_WHITESPACE","CUSTOM_ELEMENT","isRegexOrFunction","_parseConfig","_checkValidNamespace","_forceRemove","_removeAttribute","_initDocument","_createNodeIterator","_isClobbered","_isNode","_executeHook","data","_sanitizeElements","_isValidAttribute","_isBasicCustomElement","_sanitizeAttributes","_sanitizeShadowDOM","match","escape","join","origin","basename","extname","dirname","generateRemoteUrl","keys","toString","val","isObject","prototype","descriptors","filter","hasOwnProperty","buffer","rt","Buffer","byteLength","isBuffer","concat","indexOf","toJSON","min","utils","encode","URLSearchParams","FormData","Blob","platform","isFormData","isFileList","transitional","format","validateStatus","push","isURLSameOrigin","merge","signal","done","test","res","adapters","validators","validator","all","axios","generateUrl","Axios","fails","exec","NATIVE_BIND","FunctionPrototype","call","it","this","V","createPropertyDescriptor","uncurryThis","stringSlice","classofRaw","classof","$Object","isNullOrUndefined","$TypeError","requireObjectCoercible","toIndexedObject","isCallable","getBuiltIn","$String","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","isSymbol","tryToString","aCallable","getMethod","ordinaryToPrimitive","defineProperty","defineGlobalProperty","globalThis","store","sharedStoreModule","shared","toObject","hasOwn","require$$5","Symbol","wellKnownSymbol","toPrimitive","toPropertyKey","EXISTS","documentCreateElement","DESCRIPTORS","require$$6","IE8_DOM_DEFINE","require$$7","$getOwnPropertyDescriptor","anObject","V8_PROTOTYPE_DEFINE_BUG","CONFIGURABLE","definePropertyModule","createNonEnumerableProperty","inspectSource","WeakMap","sharedKey","hiddenKeys","TypeError","getInternalState","replace","makeBuiltIn","makeBuiltInModule","defineBuiltIn","floor","trunc","toIntegerOrInfinity","toAbsoluteIndex","toLength","lengthOfArrayLike","createMethod","enumBugKeys","internalObjectKeys","ownKeys","copyConstructorProperties","isForced","normalize","TO_STRING_TAG","regexpFlags","$RegExp","UNSUPPORTED_Y","objectKeys","activeXDocument","require$$8","require$$9","charAt","regexpExec","advanceStringIndex","getSubstitution","replacement","require$$10","require$$11","require$$12","require$$13","require$$14","require$$15","require$$16","nativeReplace","text","DOMPurify"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164]} \ No newline at end of file diff --git a/js/extract-init.mjs b/js/extract-init.mjs new file mode 100644 index 0000000..78aa268 --- /dev/null +++ b/js/extract-init.mjs @@ -0,0 +1,7 @@ +/*! third party licenses: js/vendor.LICENSE.txt */ +const appName = "extract"; +const appVersion = "1.4.0"; +import { r as registerFileAction, a as action } from "./extract-extractAction.mjs"; +/*! third party licenses: js/vendor.LICENSE.txt */ +registerFileAction(action); +//# sourceMappingURL=extract-init.mjs.map diff --git a/js/extract-init.mjs.map b/js/extract-init.mjs.map new file mode 100644 index 0000000..95bb851 --- /dev/null +++ b/js/extract-init.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"extract-init.mjs","sources":["../src/init.ts"],"sourcesContent":["import { registerFileAction } from '@nextcloud/files'\n\nimport { action as extractAction } from './actions/extract-action'\n\nregisterFileAction(extractAction)"],"names":["extractAction"],"mappings":";;;;;AAIA,mBAAmBA,MAAa;"} \ No newline at end of file diff --git a/js/extraction.js b/js/extraction.js deleted file mode 100644 index 97404bb..0000000 --- a/js/extraction.js +++ /dev/null @@ -1,54 +0,0 @@ -window.addEventListener('DOMContentLoaded', () => { - - if (!OCA.Files || !OCA.Files.fileActions) { - return; - } - - const types = { - zip: ['application/zip',], - rar: ['application/x-rar-compressed'], - // TAR - //'application/x-tar', 'application/x-7z-compressed' - other: ['application/x-tar', 'application/x-7z-compressed', 'application/x-bzip2', 'application/x-deb', 'application/x-gzip', 'application/x-compressed'], - }; - - for (const [type, mimeTypes] of Object.entries(types)) { - for (const mime of mimeTypes) { - OCA.Files.fileActions.registerAction({ - name: 'extract-' + type, - displayName: t('extract', 'Extract here'), - mime, - permissions: OC.PERMISSION_UPDATE, - type: OCA.Files.FileActions.TYPE_DROPDOWN, - iconClass: 'icon-extract', - actionHandler: function (filename, context) { - var data = { - nameOfFile: filename, - directory: context.dir, - external: context.fileInfoModel.attributes.mountType && context.fileInfoModel.attributes.mountType.startsWith("external") ? 1 : 0, - type: type, - }; - const tr = context.fileList.findFileEl(filename); - context.fileList.showFileBusyState(tr, true); - $.ajax({ - type: "POST", - async: "false", - url: OC.filePath('extract', 'ajax', 'extract.php'), - data: data, - success: function (response) { - if (response.code === 1) { - context.fileList.reload(); - } else { - context.fileList.showFileBusyState(tr, false); - OC.dialogs.alert( - t('extract', response.desc), - t('extract', 'Error extracting ' + filename) - ); - } - } - }); - } - }); - } - } -}); diff --git a/js/vendor.LICENSE.txt b/js/vendor.LICENSE.txt new file mode 100644 index 0000000..c29f615 --- /dev/null +++ b/js/vendor.LICENSE.txt @@ -0,0 +1,85 @@ +Included dependencies: + +@mdi/svg +version: 7.4.47 +license: Apache-2.0 + +@nextcloud/auth +version: 2.4.0 +license: GPL-3.0-or-later + +@nextcloud/axios +version: 2.5.0 +license: GPL-3.0 + +@nextcloud/browser-storage +version: 0.4.0 +license: GPL-3.0-or-later + +@nextcloud/event-bus +version: 3.3.1 +license: GPL-3.0-or-later + +@nextcloud/files +version: 3.8.0 +license: AGPL-3.0-or-later + +@nextcloud/initial-state +version: 2.2.0 +license: GPL-3.0-or-later + +@nextcloud/l10n +version: 2.2.0 +license: GPL-3.0-or-later + +@nextcloud/logger +version: 3.0.2 +license: GPL-3.0-or-later + +@nextcloud/paths +version: 2.2.1 +license: GPL-3.0-or-later + +@nextcloud/router +version: 3.0.1 +license: GPL-3.0-or-later + +@nextcloud/sharing +version: 0.2.3 +license: GPL-3.0-or-later + +axios +version: 1.7.7 +license: MIT + +cancelable-promise +version: 4.3.1 +license: MIT + +core-js +version: 3.37.0 +license: MIT + +dompurify +version: 3.1.6 +license: (MPL-2.0 OR Apache-2.0) + +escape-html +version: 1.0.3 +license: MIT + +path-browserify +version: 1.0.1 +license: MIT + +semver +version: 7.6.3 +license: ISC + +vite-plugin-node-polyfills +version: 0.22.0 +license: MIT + +webdav +version: 5.7.1 +license: MIT \ No newline at end of file diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index 116dd9d..d855943 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -20,35 +20,29 @@ namespace OCA\Extract\AppInfo; +use OCA\Extract\Listener\LoadExtractActions; +use OCA\Files\Event\LoadAdditionalScriptsEvent; use OCP\AppFramework\Bootstrap\IBootstrap; use OCP\AppFramework\Bootstrap\IRegistrationContext; use OCP\AppFramework\Bootstrap\IBootContext; use OCP\AppFramework\App; -use OCP\EventDispatcher\IEventDispatcher; -use OCP\Util; class Application extends App implements IBootstrap { + public const APP_ID = "extract"; + public function __construct(array $urlParams = []) { - $infoXml = new \SimpleXMLElement(file_get_contents(__DIR__ . '/../../appinfo/info.xml')); - $this->appName = (string)$infoXml->id; - parent::__construct($this->appName, $urlParams); + parent::__construct(self::APP_ID, $urlParams); } // Called later than "register". public function boot(IBootContext $context): void { - $context->injectFn(function(IEventDispatcher $dispatcher) { - Util::addScript($this->appName, 'extraction' ); - Util::addStyle($this->appName, 'style' ); - }); } // Called earlier than boot, so anything initialized in the // "boot()" method must not be used here. public function register(IRegistrationContext $context): void { - // if ((@include_once __DIR__ . '/../../vendor/autoload.php') === false) { - // throw new \Exception('Cannot include autoload. Did you run install dependencies using composer?'); - // } + $context->registerEventListener(LoadAdditionalScriptsEvent::class, LoadExtractActions::class); } } diff --git a/lib/Controller/ExtractionController.php b/lib/Controller/ExtractionController.php index ee0e7aa..d4f0aca 100644 --- a/lib/Controller/ExtractionController.php +++ b/lib/Controller/ExtractionController.php @@ -1,9 +1,6 @@ "zip", + "application/x-rar-compressed" => "rar", + "application/x-tar" => "other", + "application/x-7z-compressed" => "other", + "application/x-bzip2" => "other", + "application/x-deb" => "other", + "application/x-gzip" => "other", + "application/x-compressed" => "other" + ]; + + public function __construct( + string $AppName, + IRequest $request, + ExtractionService $extractionService, + IRootFolder $rootFolder, + IL10N $l, + LoggerInterface $logger, + IManager $encryptionManager, + $UserId, + IURLGenerator $urlGenerator, + ) { parent::__construct($AppName, $request); $this->l = $l; $this->logger = $logger; @@ -67,9 +80,11 @@ public function __construct( $this->extractionService = $extractionService; $this->rootFolder = $rootFolder; $this->userFolder = $this->rootFolder->getUserFolder($this->userId); + $this->urlGenerator = $urlGenerator; } - private function getFile($directory, $fileName){ + private function getFile($directory, $fileName) + { $fileNode = $this->userFolder->get($directory . '/' . $fileName); return $fileNode->getStorage()->getLocalFile($fileNode->getInternalPath()); } @@ -87,7 +102,8 @@ private function getFile($directory, $fileName){ * @param null|string $tmpPath The Nextcloud temporary path. This is only * non-null when extracting from external storage. */ - private function postExtract(string $fileName, string $directory, string $extractTo, ?string $tmpPath){ + private function postExtract(string $fileName, string $directory, string $extractTo, ?string $tmpPath) + { $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($extractTo)); foreach ($iterator as $file) { @@ -100,10 +116,10 @@ private function postExtract(string $fileName, string $directory, string $extrac } $NCDestination = $directory . '/' . $fileName; - if($tmpPath){ + if ($tmpPath) { $tmpFolder = $this->rootFolder->get($tmpPath); $tmpFolder->move($this->userFolder->getFullPath($NCDestination)); - }else{ + } else { // This seems to be enough to trigger a files-cache refresh $this->userFolder->get($NCDestination); } @@ -114,7 +130,10 @@ private function postExtract(string $fileName, string $directory, string $extrac * * @NoAdminRequired */ - public function extract($nameOfFile, $directory, $external, $type){ + public function extract($nameOfFile, $directory, $external, $mime) + { + $type = $this->mimeTypes[$mime]; + if ($this->encryptionManager->isEnabled()) { $response = array(); $response = array_merge($response, array("code" => 0, "desc" => $this->l->t("Encryption is not supported yet"))); @@ -126,15 +145,15 @@ public function extract($nameOfFile, $directory, $external, $type){ $fileName = pathinfo($nameOfFile, PATHINFO_FILENAME); $extractTo = $dir . '/' . $fileName; - // if the file is un external storage - if($external){ + // if the file is an external storage + if ($external) { $appPath = $this->userId . '/' . $this->appName; try { $appDirectory = $this->rootFolder->get($appPath); } catch (\OCP\Files\NotFoundException $e) { $appDirectory = $this->rootFolder->newFolder($appPath); } - if(pathinfo($fileName, PATHINFO_EXTENSION) == "tar"){ + if (pathinfo($fileName, PATHINFO_EXTENSION) == "tar") { $archiveDir = pathinfo($fileName, PATHINFO_FILENAME); } else { $archiveDir = $fileName; @@ -155,31 +174,63 @@ public function extract($nameOfFile, $directory, $external, $type){ switch ($type) { case 'zip': - $response = $this->extractionService->extractZip($file, $fileName, $extractTo); + $response = $this->extractionService->extractZip($file, $extractTo); break; case 'rar': - $response = $this->extractionService->extractRar($file, $fileName, $extractTo); + $response = $this->extractionService->extractRar($file, $extractTo); break; default: // Check if the file is .tar.gz in order to do the extraction on a single step - if(pathinfo($fileName, PATHINFO_EXTENSION) == "tar"){ + if (pathinfo($fileName, PATHINFO_EXTENSION) == "tar") { $cleanFileName = pathinfo($fileName, PATHINFO_FILENAME); $extractTo = dirname($extractTo) . '/' . $cleanFileName; - $response = $this->extractionService->extractOther($file, $cleanFileName, $extractTo); + $response = $this->extractionService->extractOther($file, $extractTo); $file = $extractTo . '/' . pathinfo($file, PATHINFO_FILENAME); $fileName = $cleanFileName; - $response = $this->extractionService->extractOther($file, $fileName, $extractTo); + $response = $this->extractionService->extractOther($file, $extractTo); // remove .tar file unlink($file); - }else{ - $response = $this->extractionService->extractOther($file, $fileName, $extractTo); + } else { + $response = $this->extractionService->extractOther($file, $extractTo); } break; } $this->postExtract($fileName, $directory, $extractTo, $tmpPath); + try { + // collect and return the properties of the resulting folder node + $extractDir = '/' . trim($directory . "/" . $fileName, '/'); + $node = $this->userFolder->get($extractDir); + $fileId = $node->getId(); + $owner = $node->getOwner()->getUID(); + $permissions = $node->getPermissions(); + $mTime = $node->getMTime(); + $source = $this->urlGenerator->getBaseUrl() . '/remote.php/dav/files/' . $this->userId . "$extractDir"; + $root = '/files/' . $this->userId; + $mountType = $node->getMountPoint()->getMountType(); + $ownerDisplayName = $node->getOwner()->getDisplayName(); + + $folder = []; + $folder['fileId'] = $fileId; + $folder['source'] = $source; + $folder['root'] = $root; + $folder['owner'] = $owner; + $folder['permissions'] = $permissions; + $folder['mtime'] = $mTime; + $folder['mount-type'] = $mountType; + $folder['owner-display-name'] = $ownerDisplayName; + $response['extracted'] = $folder; + + } catch (NotFoundException $e) { + $this->logger->debug(" - NotFoundException: " . print_r($e->getMessage(), true)); + return new DataResponse([], Http::STATUS_NOT_FOUND); + } catch (InvalidPathException $e) { + $this->logger->debug(" - InvalidPathException: " . print_r($e->getMessage(), true)); + return new DataResponse([], Http::STATUS_NOT_FOUND); + } + return new DataResponse($response); } } diff --git a/lib/Listener/LoadExtractActions.php b/lib/Listener/LoadExtractActions.php new file mode 100644 index 0000000..e832d2b --- /dev/null +++ b/lib/Listener/LoadExtractActions.php @@ -0,0 +1,30 @@ + @@ -22,14 +23,12 @@ namespace OCA\Extract\Service; -use Psr\Log\LoggerInterface; -use Psr\Log\LogLevel; use OCP\IL10N; - +use Psr\Log\LoggerInterface; use ZipArchive; -use Rar; -class ExtractionService { +class ExtractionService +{ /** @var IL10N */ private $l; @@ -38,47 +37,49 @@ class ExtractionService { private $logger; public function __construct( - IL10N $l - , LoggerInterface $logger + IL10N $l, + LoggerInterface $logger ) { $this->l = $l; $this->logger = $logger; } - public function extractZip($file, $filename, $extractTo){ + public function extractZip($file, $extractTo) + { $response = array(); - if (!extension_loaded("zip")){ + if (!extension_loaded("zip")) { $response = array_merge($response, array("code" => 0, "desc" => $this->l->t("Zip extension is not available"))); return $response; } $zip = new ZipArchive(); - if (!$zip->open($file) === TRUE){ + if (!$zip->open($file) === TRUE) { $response = array_merge($response, array("code" => 0, "desc" => $this->l->t("Cannot open Zip file"))); return $response; } - $zip->extractTo($extractTo); + $success = $zip->extractTo($extractTo); $zip->close(); - $response = array_merge($response, array("code" => 1)); + $response = array_merge($response, array("code" => $success)); return $response; } - public function extractRar($file, $filename, $extractTo){ + public function extractRar($file, $extractTo) + { $response = array(); - if (!extension_loaded("rar")){ - exec('unrar x ' .escapeshellarg($file). ' -R ' .escapeshellarg($extractTo). '/ -o+',$output,$return); - if(sizeof($output) <= 4){ - $response = array_merge($response, array("code" => 0, "desc" => $this->l->t("Oops something went wrong. Check that you have rar extension or unrar installed"))); - return $response; - } - }else{ + if (!extension_loaded("rar")) { + exec('unrar x ' . escapeshellarg($file) . ' -R ' . escapeshellarg($extractTo) . '/ -o+', $output, $return); + if (sizeof($output) <= 4) { + $response = array_merge($response, array("code" => 0, "desc" => $this->l->t("Oops something went wrong. Check that you have rar extension or unrar installed"))); + return $response; + } + } else { $rar_file = rar_open($file); $list = rar_list($rar_file); - foreach($list as $archive_file) { + foreach ($list as $archive_file) { $entry = rar_entry_get($rar_file, $archive_file->getName()); $entry->extract($extractTo); } @@ -89,14 +90,15 @@ public function extractRar($file, $filename, $extractTo){ return $response; } - public function extractOther($file, $filename, $extractTo){ + public function extractOther($file, $extractTo) + { $response = array(); - exec('7za -y x ' .escapeshellarg($file). ' -o' .escapeshellarg($extractTo),$output,$return); + exec('7za -y x ' . escapeshellarg($file) . ' -o' . escapeshellarg($extractTo), $output, $return); - if(sizeof($output) <= 5){ - $response = array_merge($response, array("code" => 0, "desc" => $this->l->t("Oops something went wrong. Check that you have p7zip installed"))); - $this->logger->log(LogLevel::ERROR, __METHOD__ . ': ' . $output); + if (sizeof($output) <= 5) { + $response = array_merge($response, array("code" => 0, "desc" => $this->l->t("Oops something went wrong."))); + $this->logger->error("Is 7-Zip installed? Output: " . print_r($output, true)); return $response; } $response = array_merge($response, array("code" => 1)); diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..01e15bf --- /dev/null +++ b/package-lock.json @@ -0,0 +1,17803 @@ +{ + "name": "extract", + "version": "0.0.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "extract", + "version": "0.0.1", + "license": "agpl", + "dependencies": { + "@mdi/svg": "^7.4.47", + "@nextcloud/axios": "^2.4.0", + "@nextcloud/files": "^3.1.0", + "@nextcloud/l10n": "^2.1.0", + "@nextcloud/logger": "^3.0.1", + "@nextcloud/router": "^3.0.0", + "@nextcloud/vue": "^8.11.2", + "serve": "^14.2.3", + "vue": "^2.7.16" + }, + "devDependencies": { + "@nextcloud/babel-config": "^1.0.0", + "@nextcloud/browserslist-config": "^2.2.0", + "@nextcloud/eslint-config": "^v8.3.0-beta.2", + "@nextcloud/stylelint-config": "^2.4.0", + "@nextcloud/vite-config": "^1.2.5", + "@nextcloud/webpack-vue-config": "^6.0.1", + "vite": "^5.4.2" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", + "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "dev": true, + "peer": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/eslint-parser": { + "version": "7.25.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.1.tgz", + "integrity": "sha512-Y956ghgTT4j7rKesabkh5WeqgSFZVFwaPR0IWFm7KFHFmmJ4afbG49SmfW4S+GyRPx0Dy5jxEWA5t0rpxfElWg==", + "dev": true, + "peer": true, + "dependencies": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || >=14.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.11.0", + "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.25.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz", + "integrity": "sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz", + "integrity": "sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", + "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.25.2", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.4.tgz", + "integrity": "sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-member-expression-to-functions": "^7.24.8", + "@babel/helper-optimise-call-expression": "^7.24.7", + "@babel/helper-replace-supers": "^7.25.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/traverse": "^7.25.4", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.2.tgz", + "integrity": "sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz", + "integrity": "sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/traverse": "^7.24.8", + "@babel/types": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", + "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz", + "integrity": "sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz", + "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.0.tgz", + "integrity": "sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-wrap-function": "^7.25.0", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.0.tgz", + "integrity": "sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.24.8", + "@babel/helper-optimise-call-expression": "^7.24.7", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz", + "integrity": "sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", + "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.0.tgz", + "integrity": "sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", + "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "dependencies": { + "@babel/types": "^7.25.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.3.tgz", + "integrity": "sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/traverse": "^7.25.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.0.tgz", + "integrity": "sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.0.tgz", + "integrity": "sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz", + "integrity": "sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/plugin-transform-optional-chaining": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.0.tgz", + "integrity": "sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.6.tgz", + "integrity": "sha512-aABl0jHw9bZ2karQ/uUD6XP4u0SG22SJrOHFoL6XB1R7dTovOP4TzTlsxOYC5yQ1pdscVK2JTUnF6QL3ARoAiQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.6.tgz", + "integrity": "sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz", + "integrity": "sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.4.tgz", + "integrity": "sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-remap-async-to-generator": "^7.25.0", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/traverse": "^7.25.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz", + "integrity": "sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-remap-async-to-generator": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz", + "integrity": "sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.0.tgz", + "integrity": "sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.4.tgz", + "integrity": "sha512-nZeZHyCWPfjkdU5pA/uHiTaDAFUEqkpzf1YoQT2NeSynCGYq9rxfyI3XpQbfx/a0hSnFH6TGlEXvae5Vi7GD8g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.25.4", + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz", + "integrity": "sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.4.tgz", + "integrity": "sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-replace-supers": "^7.25.0", + "@babel/traverse": "^7.25.4", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz", + "integrity": "sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/template": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz", + "integrity": "sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz", + "integrity": "sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz", + "integrity": "sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.0.tgz", + "integrity": "sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.0", + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz", + "integrity": "sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz", + "integrity": "sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz", + "integrity": "sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz", + "integrity": "sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.25.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.1.tgz", + "integrity": "sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/traverse": "^7.25.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz", + "integrity": "sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.2.tgz", + "integrity": "sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz", + "integrity": "sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz", + "integrity": "sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz", + "integrity": "sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz", + "integrity": "sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-simple-access": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.0.tgz", + "integrity": "sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.25.0", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz", + "integrity": "sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz", + "integrity": "sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz", + "integrity": "sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz", + "integrity": "sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz", + "integrity": "sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz", + "integrity": "sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz", + "integrity": "sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-replace-supers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz", + "integrity": "sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz", + "integrity": "sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz", + "integrity": "sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.4.tgz", + "integrity": "sha512-ao8BG7E2b/URaUQGqN3Tlsg+M3KlHY6rJ1O1gXAEUnZoyNQnvKyH87Kfg+FoxSeyWUB8ISZZsC91C44ZuBFytw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.25.4", + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz", + "integrity": "sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-create-class-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz", + "integrity": "sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz", + "integrity": "sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz", + "integrity": "sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz", + "integrity": "sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz", + "integrity": "sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz", + "integrity": "sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz", + "integrity": "sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz", + "integrity": "sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz", + "integrity": "sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz", + "integrity": "sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz", + "integrity": "sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.4.tgz", + "integrity": "sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.2", + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.4.tgz", + "integrity": "sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.25.4", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-validator-option": "^7.24.8", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.3", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.0", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.0", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.7", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.0", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.24.7", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.24.7", + "@babel/plugin-transform-async-generator-functions": "^7.25.4", + "@babel/plugin-transform-async-to-generator": "^7.24.7", + "@babel/plugin-transform-block-scoped-functions": "^7.24.7", + "@babel/plugin-transform-block-scoping": "^7.25.0", + "@babel/plugin-transform-class-properties": "^7.25.4", + "@babel/plugin-transform-class-static-block": "^7.24.7", + "@babel/plugin-transform-classes": "^7.25.4", + "@babel/plugin-transform-computed-properties": "^7.24.7", + "@babel/plugin-transform-destructuring": "^7.24.8", + "@babel/plugin-transform-dotall-regex": "^7.24.7", + "@babel/plugin-transform-duplicate-keys": "^7.24.7", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.0", + "@babel/plugin-transform-dynamic-import": "^7.24.7", + "@babel/plugin-transform-exponentiation-operator": "^7.24.7", + "@babel/plugin-transform-export-namespace-from": "^7.24.7", + "@babel/plugin-transform-for-of": "^7.24.7", + "@babel/plugin-transform-function-name": "^7.25.1", + "@babel/plugin-transform-json-strings": "^7.24.7", + "@babel/plugin-transform-literals": "^7.25.2", + "@babel/plugin-transform-logical-assignment-operators": "^7.24.7", + "@babel/plugin-transform-member-expression-literals": "^7.24.7", + "@babel/plugin-transform-modules-amd": "^7.24.7", + "@babel/plugin-transform-modules-commonjs": "^7.24.8", + "@babel/plugin-transform-modules-systemjs": "^7.25.0", + "@babel/plugin-transform-modules-umd": "^7.24.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.7", + "@babel/plugin-transform-new-target": "^7.24.7", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7", + "@babel/plugin-transform-numeric-separator": "^7.24.7", + "@babel/plugin-transform-object-rest-spread": "^7.24.7", + "@babel/plugin-transform-object-super": "^7.24.7", + "@babel/plugin-transform-optional-catch-binding": "^7.24.7", + "@babel/plugin-transform-optional-chaining": "^7.24.8", + "@babel/plugin-transform-parameters": "^7.24.7", + "@babel/plugin-transform-private-methods": "^7.25.4", + "@babel/plugin-transform-private-property-in-object": "^7.24.7", + "@babel/plugin-transform-property-literals": "^7.24.7", + "@babel/plugin-transform-regenerator": "^7.24.7", + "@babel/plugin-transform-reserved-words": "^7.24.7", + "@babel/plugin-transform-shorthand-properties": "^7.24.7", + "@babel/plugin-transform-spread": "^7.24.7", + "@babel/plugin-transform-sticky-regex": "^7.24.7", + "@babel/plugin-transform-template-literals": "^7.24.7", + "@babel/plugin-transform-typeof-symbol": "^7.24.8", + "@babel/plugin-transform-unicode-escapes": "^7.24.7", + "@babel/plugin-transform-unicode-property-regex": "^7.24.7", + "@babel/plugin-transform-unicode-regex": "^7.24.7", + "@babel/plugin-transform-unicode-sets-regex": "^7.25.4", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.10.6", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "core-js-compat": "^3.37.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true, + "peer": true + }, + "node_modules/@babel/runtime": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz", + "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", + "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", + "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.6", + "@babel/parser": "^7.25.6", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@buttercup/fetch": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@buttercup/fetch/-/fetch-0.2.1.tgz", + "integrity": "sha512-sCgECOx8wiqY8NN1xN22BqqKzXYIG2AicNLlakOAI4f0WgyLVUbAigMf8CZhBtJxdudTcB1gD5lciqi44jwJvg==", + "optionalDependencies": { + "node-fetch": "^3.3.0" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.7.1.tgz", + "integrity": "sha512-2SJS42gxmACHgikc1WGesXLIT8d/q2l0UFM7TaEeIzdFCE/FPMtTiizcPGGJtlPo2xuQzY09OhrLTzRxqJqwGw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^2.4.1" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.4.1.tgz", + "integrity": "sha512-eQ9DIktFJBhGjioABJRtUucoWR2mwllurfnM8LuNGAqX3ViZXaUchqk+1s7jjtkFiT9ySdACsFEA3etErkALUg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + } + }, + "node_modules/@csstools/media-query-list-parser": { + "version": "2.1.13", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.13.tgz", + "integrity": "sha512-XaHr+16KRU9Gf8XLi3q8kDlI18d5vzKSKCY510Vrtc9iNR0NJzbY9hhTmwhzYZj/ZwGL4VmB3TA9hJW0Um2qFA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" + } + }, + "node_modules/@csstools/selector-specificity": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.1.1.tgz", + "integrity": "sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.41.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz", + "integrity": "sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==", + "dev": true, + "peer": true, + "dependencies": { + "comment-parser": "1.4.1", + "esquery": "^1.5.0", + "jsdoc-type-pratt-parser": "~4.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", + "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", + "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", + "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", + "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", + "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", + "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", + "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", + "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", + "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", + "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", + "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", + "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", + "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", + "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", + "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", + "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", + "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", + "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", + "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", + "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", + "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", + "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", + "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", + "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "peer": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.7.tgz", + "integrity": "sha512-yDzVT/Lm101nQ5TCVeK65LtdN7Tj4Qpr9RTXJ2vPFLqtLxwOrpoxAHAJI8J3yYWUc40J0BDBheaitK5SJmno2g==", + "dependencies": { + "@floating-ui/utils": "^0.2.7" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.10", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.10.tgz", + "integrity": "sha512-fskgCFv8J8OamCmyun8MfjB1Olfn+uZKjOKZ0vhYF3gRmEUXcGOjxWL8bBr7i4kIuPZ2KD2S3EUIOxnjC8kl2A==", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.7" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.7.tgz", + "integrity": "sha512-X8R8Oj771YRl/w+c1HqAC1szL8zWQRwFvgDwT129k9ACdBoud/+/rX9V0qiMl6LWUdP9voC2nDVZYPMQQsb6eA==" + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "peer": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true, + "peer": true + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "dev": true, + "peer": true + }, + "node_modules/@linusborg/vue-simple-portal": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@linusborg/vue-simple-portal/-/vue-simple-portal-0.1.5.tgz", + "integrity": "sha512-dq+oubEVW4UabBoQxmH97GiDa+F6sTomw4KcXFHnXEpw69rdkXFCxo1WzwuvWjoLiUVYJTyN1dtlUvTa50VcXg==", + "dependencies": { + "nanoid": "^3.1.20" + }, + "peerDependencies": { + "vue": "^2.6.6" + } + }, + "node_modules/@mapbox/hast-util-table-cell-style": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@mapbox/hast-util-table-cell-style/-/hast-util-table-cell-style-0.2.1.tgz", + "integrity": "sha512-LyQz4XJIdCdY/+temIhD/Ed0x/p4GAOUycpFSEK2Ads1CPKZy6b7V/2ROEtQiLLQ8soIs0xe/QAoR6kwpyW/yw==", + "dependencies": { + "unist-util-visit": "^1.4.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-is": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz", + "integrity": "sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==" + }, + "node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-visit": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.1.tgz", + "integrity": "sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==", + "dependencies": { + "unist-util-visit-parents": "^2.0.0" + } + }, + "node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-visit-parents": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz", + "integrity": "sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==", + "dependencies": { + "unist-util-is": "^3.0.0" + } + }, + "node_modules/@mdi/svg": { + "version": "7.4.47", + "resolved": "https://registry.npmjs.org/@mdi/svg/-/svg-7.4.47.tgz", + "integrity": "sha512-WQ2gDll12T9WD34fdRFgQVgO8bag3gavrAgJ0frN4phlwdJARpE6gO1YvLEMJR0KKgoc+/Ea/A0Pp11I00xBvw==" + }, + "node_modules/@microsoft/api-extractor": { + "version": "7.43.0", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.43.0.tgz", + "integrity": "sha512-GFhTcJpB+MI6FhvXEI9b2K0snulNLWHqC/BbcJtyNYcKUiw7l3Lgis5ApsYncJ0leALX7/of4XfmXk+maT111w==", + "dev": true, + "dependencies": { + "@microsoft/api-extractor-model": "7.28.13", + "@microsoft/tsdoc": "0.14.2", + "@microsoft/tsdoc-config": "~0.16.1", + "@rushstack/node-core-library": "4.0.2", + "@rushstack/rig-package": "0.5.2", + "@rushstack/terminal": "0.10.0", + "@rushstack/ts-command-line": "4.19.1", + "lodash": "~4.17.15", + "minimatch": "~3.0.3", + "resolve": "~1.22.1", + "semver": "~7.5.4", + "source-map": "~0.6.1", + "typescript": "5.4.2" + }, + "bin": { + "api-extractor": "bin/api-extractor" + } + }, + "node_modules/@microsoft/api-extractor-model": { + "version": "7.28.13", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.28.13.tgz", + "integrity": "sha512-39v/JyldX4MS9uzHcdfmjjfS6cYGAoXV+io8B5a338pkHiSt+gy2eXQ0Q7cGFJ7quSa1VqqlMdlPrB6sLR/cAw==", + "dev": true, + "dependencies": { + "@microsoft/tsdoc": "0.14.2", + "@microsoft/tsdoc-config": "~0.16.1", + "@rushstack/node-core-library": "4.0.2" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/minimatch": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/typescript": { + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.2.tgz", + "integrity": "sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@microsoft/tsdoc": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz", + "integrity": "sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==", + "dev": true + }, + "node_modules/@microsoft/tsdoc-config": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.16.2.tgz", + "integrity": "sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==", + "dev": true, + "dependencies": { + "@microsoft/tsdoc": "0.14.2", + "ajv": "~6.12.6", + "jju": "~1.4.0", + "resolve": "~1.19.0" + } + }, + "node_modules/@microsoft/tsdoc-config/node_modules/resolve": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", + "dev": true, + "dependencies": { + "is-core-module": "^2.1.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@nextcloud/auth": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/auth/-/auth-2.4.0.tgz", + "integrity": "sha512-T5OFltKd0O9Hfj47VrzE7TVjCwqOMHH9JLyjjLUR3pu2MaTY9WL6AjL79sHbFTXUaIkftZgJKu12lHYmqXnL2Q==", + "dependencies": { + "@nextcloud/browser-storage": "^0.4.0", + "@nextcloud/event-bus": "^3.3.1" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/axios": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-2.5.0.tgz", + "integrity": "sha512-82LQ5PZA0ZVUnS8QiGoAGOR5kE7EKD84qEEgeZJ+Y7p5iljwi3AT6niQuP7YuHjt3MKM+6jQiyghZk5SquiszQ==", + "dependencies": { + "@nextcloud/auth": "^2.3.0", + "@nextcloud/router": "^3.0.1", + "axios": "^1.6.8" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/babel-config": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/babel-config/-/babel-config-1.2.0.tgz", + "integrity": "sha512-QOESlmX99UOfXdPANpoeFtfoRWWfKhBm1wXgF2lLnwpOBq4ZzdtqI+wphhWA/lkdfw/sftZzd1UJF/gcPDpiAw==", + "dev": true, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.24.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/preset-env": "^7.24.5" + } + }, + "node_modules/@nextcloud/browser-storage": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.4.0.tgz", + "integrity": "sha512-D6XxznxCYmJ3oBCC3p0JB6GZJ2RZ9dgbB1UqtTePXrIvHUMBAeF/YkiGKYxLAVZCZb+NSNZXgAYHm/3LnIUbDg==", + "dependencies": { + "core-js": "3.37.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/browserslist-config": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-2.2.0.tgz", + "integrity": "sha512-kC42RQW5rZjZZsRaEjVlIQpp6aW/yxm+zZdETnrRQnUzcPwBgF4wO4makfGT63Ckd+LkgUW+geesPiPRqxFVew==", + "dev": true + }, + "node_modules/@nextcloud/capabilities": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/capabilities/-/capabilities-1.2.0.tgz", + "integrity": "sha512-L1NQtOfHWzkfj0Ple1MEJt6HmOHWAi3y4qs+OnwSWexqJT0DtXTVPyRxi7ADyITwRxS5H9R/HMl6USAj4Nr1nQ==", + "dependencies": { + "@nextcloud/initial-state": "^2.1.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/eslint-config": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-8.4.1.tgz", + "integrity": "sha512-ilrPxOnfVkB4dAddtkhbJmbYK9FwEVZ5oIJ2ipiE97rQz82TUZxmfEHE1tr87FbIvz0drIcREgGil3zuNWHjrg==", + "dev": true, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.24.5", + "@babel/eslint-parser": "^7.16.5", + "@nextcloud/eslint-plugin": "^2.2.1", + "@vue/eslint-config-typescript": "^13.0.0", + "eslint": "^8.27.0", + "eslint-config-standard": "^17.1.0", + "eslint-import-resolver-exports": "^1.0.0-beta.5", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsdoc": "^46.2.6", + "eslint-plugin-n": "^16.0.0", + "eslint-plugin-promise": "^6.1.1", + "eslint-plugin-vue": "^9.7.0", + "typescript": "^5.0.2" + } + }, + "node_modules/@nextcloud/eslint-plugin": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@nextcloud/eslint-plugin/-/eslint-plugin-2.2.1.tgz", + "integrity": "sha512-RX+0FxpL1h2EzjNLeW0VSGTkbyWIq7WgV7QAjtyUmDbSGwf1ds9Zy5OcRkgXRHRIu/W0gB0DhS2iz9qXHphCzA==", + "dev": true, + "peer": true, + "dependencies": { + "fast-xml-parser": "^4.2.5", + "requireindex": "^1.2.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/@nextcloud/eslint-plugin/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nextcloud/event-bus": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-3.3.1.tgz", + "integrity": "sha512-VBYJspOVk5aZopgZwCUoMKFqcTLCNel2TLvtu0HMPV2gR5ZLPiPAKbkyKkYTh+Sd5QB1gR6l3STTv1gyal0soQ==", + "dependencies": { + "@types/node": "^20.12.12", + "semver": "^7.6.2" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/event-bus/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nextcloud/files": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/@nextcloud/files/-/files-3.8.0.tgz", + "integrity": "sha512-5oi61suf2nDcXPTA4BSxl7EomJBCWrmc6ZGaokaj+jREOsSVlS+nR3ID/6eMqZSsqODpAARK56djyUPmiHOLWQ==", + "dependencies": { + "@nextcloud/auth": "^2.3.0", + "@nextcloud/capabilities": "^1.2.0", + "@nextcloud/l10n": "^3.1.0", + "@nextcloud/logger": "^3.0.2", + "@nextcloud/paths": "^2.2.1", + "@nextcloud/router": "^3.0.1", + "@nextcloud/sharing": "^0.2.3", + "cancelable-promise": "^4.3.1", + "is-svg": "^5.0.1", + "typedoc-plugin-missing-exports": "^3.0.0", + "typescript-event-target": "^1.1.1", + "webdav": "^5.7.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/files/node_modules/@nextcloud/l10n": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-3.1.0.tgz", + "integrity": "sha512-unciqr8QSJ29vFBw9S1bquyoj1PTWHszNL8tcUNuxUAYpq0hX+8o7rpB5gimELA4sj4m9+VCJwgLtBZd1Yj0lg==", + "dependencies": { + "@nextcloud/router": "^3.0.1", + "@nextcloud/typings": "^1.8.0", + "@types/dompurify": "^3.0.5", + "@types/escape-html": "^1.0.4", + "dompurify": "^3.1.2", + "escape-html": "^1.0.3", + "node-gettext": "^3.0.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/initial-state": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-2.2.0.tgz", + "integrity": "sha512-cDW98L5KGGgpS8pzd+05304/p80cyu8U2xSDQGa+kGPTpUFmCbv2qnO5WrwwGTauyjYijCal2bmw82VddSH+Pg==", + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/l10n": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-2.2.0.tgz", + "integrity": "sha512-UAM2NJcl/NR46MANSF7Gr7q8/Up672zRyGrxLpN3k4URNmWQM9upkbRME+1K3T29wPrUyOIbQu710ZjvZafqFA==", + "dependencies": { + "@nextcloud/router": "^2.1.2", + "@nextcloud/typings": "^1.7.0", + "dompurify": "^3.0.3", + "escape-html": "^1.0.3", + "node-gettext": "^3.0.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^9.0.0" + } + }, + "node_modules/@nextcloud/l10n/node_modules/@nextcloud/router": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-2.2.1.tgz", + "integrity": "sha512-ZRc/WI0RaksEJMz08H/6LimIdP+1A1xTHThCYEghs7VgAKNp5917vT2OKSpG0cMRbIwk0ongFVt5FB5qjy/iFg==", + "dependencies": { + "@nextcloud/typings": "^1.7.0", + "core-js": "^3.6.4" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/logger": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-3.0.2.tgz", + "integrity": "sha512-wByt0R0/6QC44RBpaJr1MWghjjOxk/pRbACHo/ZWWKht1qYbJRHB4GtEi+35KEIHY07ZpqxiDk6dIRuN7sXYWQ==", + "dependencies": { + "@nextcloud/auth": "^2.3.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@nextcloud/paths/-/paths-2.2.1.tgz", + "integrity": "sha512-M3ShLjrxR7B48eKThLMoqbxTqTKyQXcwf9TgeXQGbCIhiHoXU6as5j8l5qNv/uZlANokVdowpuWHBi3b2+YNNA==", + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/router": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-3.0.1.tgz", + "integrity": "sha512-Ci/uD3x8OKHdxSqXL6gRJ+mGJOEXjeiHjj7hqsZqVTsT7kOrCjDf0/J8z5RyLlokKZ0IpSe+hGxgi3YB7Gpw3Q==", + "dependencies": { + "@nextcloud/typings": "^1.7.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/sharing": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@nextcloud/sharing/-/sharing-0.2.3.tgz", + "integrity": "sha512-hxQFOBBahbJkcmAGZFVS3943pQGSafNF6LMHmgcj0JPqExu1DWKuZvsCXZnGkaRJVcewHnZFcLAhpOf+VfcZmA==", + "dependencies": { + "@nextcloud/initial-state": "^2.2.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/stylelint-config": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/stylelint-config/-/stylelint-config-2.4.0.tgz", + "integrity": "sha512-S/q/offcs9pwnkjSrnfvsONryCOe6e1lfK2sszN6ZtkYyXvaqi8EbQuuhaGlxCstn9oXwbXfAI6O3Y8lGrjdFg==", + "dev": true, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + }, + "peerDependencies": { + "stylelint": "^15.6.0", + "stylelint-config-recommended-scss": "^13.1.0", + "stylelint-config-recommended-vue": "^1.1.0" + } + }, + "node_modules/@nextcloud/timezones": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@nextcloud/timezones/-/timezones-0.1.1.tgz", + "integrity": "sha512-ldLuLyz605sszetnp6jy6mtlThu4ICKsZThxHIZwn6t4QzjQH3xr+k8mRU7GIvKq9egUFDqBp4gBjxm3/ROZig==", + "dependencies": { + "ical.js": "^2.0.1" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/typings": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.9.1.tgz", + "integrity": "sha512-i0l/L5gKW8EACbXHVxXM6wn3sUhY2qmnL2OijppzU4dENC7/hqySMQDer7/+cJbNSNG7uHF/Z+9JmHtDfRfuGg==", + "dependencies": { + "@types/jquery": "3.5.16" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/vite-config": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@nextcloud/vite-config/-/vite-config-1.4.2.tgz", + "integrity": "sha512-j40LVge0C7vAQ7sDLkw9eLHN8dghz9ItdT94Z3qxSFBZMy5xK4gkrcT4eKbDMwQdlPXqraYIP7cOEXGd7p7qkA==", + "dev": true, + "dependencies": { + "@rollup/plugin-replace": "^5.0.7", + "@vitejs/plugin-vue2": "^2.3.1", + "browserslist-to-esbuild": "^2.1.1", + "magic-string": "^0.30.11", + "rollup-plugin-corejs": "^1.0.0", + "rollup-plugin-esbuild-minify": "^1.1.2", + "rollup-plugin-license": "^3.5.2", + "rollup-plugin-node-externals": "^7.1.2", + "spdx-expression-parse": "^4.0.0", + "vite-plugin-css-injected-by-js": "^3.5.1", + "vite-plugin-dts": "^3.9.1", + "vite-plugin-node-polyfills": "^0.22.0" + }, + "engines": { + "node": "^20", + "npm": "^10" + }, + "peerDependencies": { + "browserslist": ">=4.0", + "sass": ">=1.60", + "vite": "^4 || ^5" + } + }, + "node_modules/@nextcloud/vue": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-8.17.1.tgz", + "integrity": "sha512-DC7nI04pp69vS5VxMDhpwPFhb5TWvyJgtmFciAx6j8RFrTPutdjNfOxOCncGaNXOlodaIpg/6EYV8YHU9DR9ng==", + "dependencies": { + "@floating-ui/dom": "^1.1.0", + "@linusborg/vue-simple-portal": "^0.1.5", + "@nextcloud/auth": "^2.2.1", + "@nextcloud/axios": "^2.4.0", + "@nextcloud/browser-storage": "^0.4.0", + "@nextcloud/capabilities": "^1.1.0", + "@nextcloud/event-bus": "^3.1.0", + "@nextcloud/initial-state": "^2.1.0", + "@nextcloud/l10n": "^3.0.1", + "@nextcloud/logger": "^3.0.1", + "@nextcloud/router": "^3.0.0", + "@nextcloud/sharing": "^0.2.2", + "@nextcloud/timezones": "^0.1.1", + "@nextcloud/vue-select": "^3.25.0", + "@vueuse/components": "^11.0.0", + "@vueuse/core": "^11.0.0", + "clone": "^2.1.2", + "debounce": "2.1.0", + "dompurify": "^3.0.5", + "emoji-mart-vue-fast": "^15.0.1", + "escape-html": "^1.0.3", + "floating-vue": "^1.0.0-beta.19", + "focus-trap": "^7.4.3", + "linkify-string": "^4.0.0", + "md5": "^2.3.0", + "rehype-external-links": "^3.0.0", + "rehype-react": "^7.1.2", + "remark-breaks": "^4.0.0", + "remark-gfm": "^4.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.0.0", + "splitpanes": "^2.4.1", + "string-length": "^5.0.1", + "striptags": "^3.2.0", + "tributejs": "^5.1.3", + "unified": "^11.0.1", + "unist-builder": "^4.0.0", + "unist-util-visit": "^5.0.0", + "vue": "^2.7.16", + "vue-color": "^2.8.1", + "vue-frag": "^1.4.3", + "vue-router": "^3.6.5", + "vue2-datepicker": "^3.11.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/vue-select": { + "version": "3.25.1", + "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.25.1.tgz", + "integrity": "sha512-jqCi4G+Q0H6+Hm8wSN3vRX2+eXG2jXR2bwBX/sErVEsH5UaxT4Nb7KqgdeIjVfeF7ccIdRqpmIb4Pkf0lao67w==", + "engines": { + "node": "^20.0.0" + }, + "peerDependencies": { + "vue": "2.x" + } + }, + "node_modules/@nextcloud/vue/node_modules/@nextcloud/l10n": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-3.1.0.tgz", + "integrity": "sha512-unciqr8QSJ29vFBw9S1bquyoj1PTWHszNL8tcUNuxUAYpq0hX+8o7rpB5gimELA4sj4m9+VCJwgLtBZd1Yj0lg==", + "dependencies": { + "@nextcloud/router": "^3.0.1", + "@nextcloud/typings": "^1.8.0", + "@types/dompurify": "^3.0.5", + "@types/escape-html": "^1.0.4", + "dompurify": "^3.1.2", + "escape-html": "^1.0.3", + "node-gettext": "^3.0.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/webpack-vue-config": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-6.0.1.tgz", + "integrity": "sha512-NE+U52ih35QGmtcKbp0f2ZAL7ZA3CJEJarp62aveyQ6eIIt5LZ8lcihAKcbNWkGFwyc5O40iTjIg/NHJYAG7xQ==", + "dev": true, + "engines": { + "node": "^20.0.0", + "npm": "^9.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.22.9", + "babel-loader": "^9.1.3", + "css-loader": "^6.8.1", + "node-polyfill-webpack-plugin": "3.0.0", + "sass": "^1.64.2", + "sass-loader": "^13.3.2", + "style-loader": "^3.3.3", + "ts-loader": "^9.4.4", + "vue": "^2.7.16", + "vue-loader": "^15.10.1", + "vue-template-compiler": "^2.7.16", + "webpack": "^5.88.2", + "webpack-cli": "^5.1.4", + "webpack-dev-server": "^4.15.1" + } + }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "peer": true, + "dependencies": { + "eslint-scope": "5.1.1" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "peer": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "peer": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.4.0" + } + }, + "node_modules/@rollup/plugin-inject": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.5.tgz", + "integrity": "sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-replace": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-5.0.7.tgz", + "integrity": "sha512-PqxSfuorkHz/SPpyngLyg5GCEkOcee9M1bkxiVDr41Pd61mqP1PLOoDPbpl44SB2mQGKwV/In74gqQmGITOhEQ==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", + "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.2.tgz", + "integrity": "sha512-fSuPrt0ZO8uXeS+xP3b+yYTCBUd05MoSp2N/MFOgjhhUhMmchXlpTQrTpI8T+YAwAQuK7MafsCOxW7VrPMrJcg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.2.tgz", + "integrity": "sha512-xGU5ZQmPlsjQS6tzTTGwMsnKUtu0WVbl0hYpTPauvbRAnmIvpInhJtgjj3mcuJpEiuUw4v1s4BimkdfDWlh7gA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.2.tgz", + "integrity": "sha512-99AhQ3/ZMxU7jw34Sq8brzXqWH/bMnf7ZVhvLk9QU2cOepbQSVTns6qoErJmSiAvU3InRqC2RRZ5ovh1KN0d0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.2.tgz", + "integrity": "sha512-ZbRaUvw2iN/y37x6dY50D8m2BnDbBjlnMPotDi/qITMJ4sIxNY33HArjikDyakhSv0+ybdUxhWxE6kTI4oX26w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.2.tgz", + "integrity": "sha512-ztRJJMiE8nnU1YFcdbd9BcH6bGWG1z+jP+IPW2oDUAPxPjo9dverIOyXz76m6IPA6udEL12reYeLojzW2cYL7w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.2.tgz", + "integrity": "sha512-flOcGHDZajGKYpLV0JNc0VFH361M7rnV1ee+NTeC/BQQ1/0pllYcFmxpagltANYt8FYf9+kL6RSk80Ziwyhr7w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.2.tgz", + "integrity": "sha512-69CF19Kp3TdMopyteO/LJbWufOzqqXzkrv4L2sP8kfMaAQ6iwky7NoXTp7bD6/irKgknDKM0P9E/1l5XxVQAhw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.2.tgz", + "integrity": "sha512-48pD/fJkTiHAZTnZwR0VzHrao70/4MlzJrq0ZsILjLW/Ab/1XlVUStYyGt7tdyIiVSlGZbnliqmult/QGA2O2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.2.tgz", + "integrity": "sha512-cZdyuInj0ofc7mAQpKcPR2a2iu4YM4FQfuUzCVA2u4HI95lCwzjoPtdWjdpDKyHxI0UO82bLDoOaLfpZ/wviyQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.2.tgz", + "integrity": "sha512-RL56JMT6NwQ0lXIQmMIWr1SW28z4E4pOhRRNqwWZeXpRlykRIlEpSWdsgNWJbYBEWD84eocjSGDu/XxbYeCmwg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.2.tgz", + "integrity": "sha512-PMxkrWS9z38bCr3rWvDFVGD6sFeZJw4iQlhrup7ReGmfn7Oukrr/zweLhYX6v2/8J6Cep9IEA/SmjXjCmSbrMQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.2.tgz", + "integrity": "sha512-B90tYAUoLhU22olrafY3JQCFLnT3NglazdwkHyxNDYF/zAxJt5fJUB/yBoWFoIQ7SQj+KLe3iL4BhOMa9fzgpw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.2.tgz", + "integrity": "sha512-7twFizNXudESmC9oneLGIUmoHiiLppz/Xs5uJQ4ShvE6234K0VB1/aJYU3f/4g7PhssLGKBVCC37uRkkOi8wjg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.2.tgz", + "integrity": "sha512-9rRero0E7qTeYf6+rFh3AErTNU1VCQg2mn7CQcI44vNUWM9Ze7MSRS/9RFuSsox+vstRt97+x3sOhEey024FRQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.2.tgz", + "integrity": "sha512-5rA4vjlqgrpbFVVHX3qkrCo/fZTj1q0Xxpg+Z7yIo3J2AilW7t2+n6Q8Jrx+4MrYpAnjttTYF8rr7bP46BPzRw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.2.tgz", + "integrity": "sha512-6UUxd0+SKomjdzuAcp+HAmxw1FlGBnl1v2yEPSabtx4lBfdXHDVsW7+lQkgz9cNFJGY3AWR7+V8P5BqkD9L9nA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rushstack/node-core-library": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-4.0.2.tgz", + "integrity": "sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==", + "dev": true, + "dependencies": { + "fs-extra": "~7.0.1", + "import-lazy": "~4.0.0", + "jju": "~1.4.0", + "resolve": "~1.22.1", + "semver": "~7.5.4", + "z-schema": "~5.0.2" + }, + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/node-core-library/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rushstack/node-core-library/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rushstack/node-core-library/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@rushstack/rig-package": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.5.2.tgz", + "integrity": "sha512-mUDecIJeH3yYGZs2a48k+pbhM6JYwWlgjs2Ca5f2n1G2/kgdgP9D/07oglEGf6mRyXEnazhEENeYTSNDRCwdqA==", + "dev": true, + "dependencies": { + "resolve": "~1.22.1", + "strip-json-comments": "~3.1.1" + } + }, + "node_modules/@rushstack/terminal": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.10.0.tgz", + "integrity": "sha512-UbELbXnUdc7EKwfH2sb8ChqNgapUOdqcCIdQP4NGxBpTZV2sQyeekuK3zmfQSa/MN+/7b4kBogl2wq0vpkpYGw==", + "dev": true, + "dependencies": { + "@rushstack/node-core-library": "4.0.2", + "supports-color": "~8.1.1" + }, + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/terminal/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@rushstack/terminal/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@rushstack/ts-command-line": { + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.19.1.tgz", + "integrity": "sha512-J7H768dgcpG60d7skZ5uSSwyCZs/S2HrWP1Ds8d1qYAyaaeJmpmmLr9BVw97RjFzmQPOYnoXcKA4GkqDCkduQg==", + "dev": true, + "dependencies": { + "@rushstack/terminal": "0.10.0", + "@types/argparse": "1.0.38", + "argparse": "~1.0.9", + "string-argv": "~0.3.1" + } + }, + "node_modules/@rushstack/ts-command-line/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@shikijs/core": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.16.1.tgz", + "integrity": "sha512-aI0hBtw+a6KsJp2jcD4YuQqKpeCbURMZbhHVozDknJpm+KJqeMRkEnfBC8BaKE/5XC+uofPgCLsa/TkTk0Ba0w==", + "peer": true, + "dependencies": { + "@shikijs/vscode-textmate": "^9.2.0", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@shikijs/vscode-textmate": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-9.2.0.tgz", + "integrity": "sha512-5FinaOp6Vdh/dl4/yaOTh0ZeKch+rYS8DUb38V3GMKYVkdqzxw53lViRKUYkVILRiVQT7dcPC7VvAKOR73zVtQ==", + "peer": true + }, + "node_modules/@types/argparse": { + "version": "1.0.38", + "resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz", + "integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==", + "dev": true + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/dompurify": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/dompurify/-/dompurify-3.0.5.tgz", + "integrity": "sha512-1Wg0g3BtQF7sSb27fJQAKck1HECM6zV1EB66j8JH9i3LCjYabJa0FSdiSgsD5K/RbrsR0SiraKacLB+T8ZVYAg==", + "dependencies": { + "@types/trusted-types": "*" + } + }, + "node_modules/@types/escape-html": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/escape-html/-/escape-html-1.0.4.tgz", + "integrity": "sha512-qZ72SFTgUAZ5a7Tj6kf2SHLetiH5S6f8G5frB2SPQ3EyF02kxdyBFf4Tz4banE3xCgGnKgWLt//a6VuYHKYJTg==" + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/estree-jsx": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", + "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", + "dev": true, + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.5", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.5.tgz", + "integrity": "sha512-y6W03tvrACO72aijJ5uF02FRq5cgDR9lUxddQ8vyF+GvmjJQqbzDcJngEjURc+ZsG31VI3hODNZJ2URj86pzmg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true, + "peer": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.15", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.15.tgz", + "integrity": "sha512-25g5atgiVNTIv0LBDTg1H74Hvayx0ajtJPLLcYE3whFv75J0pWNtOBzaXJQgDTmrX1bx5U9YC2w/n65BN1HwRQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jquery": { + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.16.tgz", + "integrity": "sha512-bsI7y4ZgeMkmpG9OM710RRzDFp+w4P1RGiIt30C1mSBT+ExCleeh4HObwgArnDFELmRrOpXgSYN9VF1hj+f1lw==", + "dependencies": { + "@types/sizzle": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "peer": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "peer": true + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true, + "peer": true + }, + "node_modules/@types/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", + "dev": true, + "peer": true + }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, + "node_modules/@types/node": { + "version": "20.16.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.3.tgz", + "integrity": "sha512-/wdGiWRkMOm53gAsSyFMXFZHbVg7C6CbkrzHNpaHoYfsUWPg7m6ZRKtvQjgvQ9i8WT540a3ydRlRQbxjY30XxQ==", + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", + "dev": true, + "peer": true + }, + "node_modules/@types/prop-types": { + "version": "15.7.12", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==", + "peer": true + }, + "node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "dev": true, + "peer": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true, + "peer": true + }, + "node_modules/@types/react": { + "version": "18.3.5", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.5.tgz", + "integrity": "sha512-WeqMfGJLGuLCqHGYRGHxnKrXcTitc6L/nBUWfWPcTarG3t9PsquqUMuVeXZeca+mglY4Vo5GZjCi0A3Or2lnxA==", + "peer": true, + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true, + "peer": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "peer": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "dev": true, + "peer": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sizzle": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.8.tgz", + "integrity": "sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==" + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==" + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", + "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==" + }, + "node_modules/@types/ws": { + "version": "8.5.12", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.12.tgz", + "integrity": "sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz", + "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/type-utils": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^7.0.0", + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz", + "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", + "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz", + "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", + "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", + "dev": true, + "peer": true, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", + "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", + "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", + "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "7.18.0", + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" + }, + "node_modules/@vitejs/plugin-vue2": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue2/-/plugin-vue2-2.3.1.tgz", + "integrity": "sha512-/ksaaz2SRLN11JQhLdEUhDzOn909WEk99q9t9w+N12GjQCljzv7GyvAbD/p20aBUjHkvpGOoQ+FCOkG+mjDF4A==", + "dev": true, + "engines": { + "node": "^14.18.0 || >= 16.0.0" + }, + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0 || ^5.0.0", + "vue": "^2.7.0-0" + } + }, + "node_modules/@volar/language-core": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", + "dev": true, + "dependencies": { + "@volar/source-map": "1.11.1" + } + }, + "node_modules/@volar/source-map": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", + "dev": true, + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@volar/typescript": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", + "dev": true, + "dependencies": { + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.38.tgz", + "integrity": "sha512-8IQOTCWnLFqfHzOGm9+P8OPSEDukgg3Huc92qSG49if/xI2SAwLHQO2qaPQbjCWPBcQoO1WYfXfTACUrWV3c5A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.24.7", + "@vue/shared": "3.4.38", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.0" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.38.tgz", + "integrity": "sha512-Osc/c7ABsHXTsETLgykcOwIxFktHfGSUDkb05V61rocEfsFDcjDLH/IHJSNJP+/Sv9KeN2Lx1V6McZzlSb9EhQ==", + "dev": true, + "dependencies": { + "@vue/compiler-core": "3.4.38", + "@vue/shared": "3.4.38" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.16.tgz", + "integrity": "sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg==", + "dependencies": { + "@babel/parser": "^7.23.5", + "postcss": "^8.4.14", + "source-map": "^0.6.1" + }, + "optionalDependencies": { + "prettier": "^1.18.2 || ^2.0.0" + } + }, + "node_modules/@vue/compiler-sfc/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vue/component-compiler-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz", + "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==", + "dev": true, + "peer": true, + "dependencies": { + "consolidate": "^0.15.1", + "hash-sum": "^1.0.2", + "lru-cache": "^4.1.2", + "merge-source-map": "^1.1.0", + "postcss": "^7.0.36", + "postcss-selector-parser": "^6.0.2", + "source-map": "~0.6.1", + "vue-template-es2015-compiler": "^1.9.0" + }, + "optionalDependencies": { + "prettier": "^1.18.2 || ^2.0.0" + } + }, + "node_modules/@vue/component-compiler-utils/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "peer": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/@vue/component-compiler-utils/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true, + "peer": true + }, + "node_modules/@vue/component-compiler-utils/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "peer": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/@vue/component-compiler-utils/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vue/component-compiler-utils/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true, + "peer": true + }, + "node_modules/@vue/eslint-config-typescript": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-13.0.0.tgz", + "integrity": "sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", + "vue-eslint-parser": "^9.3.1" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "peerDependencies": { + "eslint": "^8.56.0", + "eslint-plugin-vue": "^9.0.0", + "typescript": ">=4.7.4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core": { + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", + "dev": true, + "dependencies": { + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", + "vue-template-compiler": "^2.7.14" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/shared": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.38.tgz", + "integrity": "sha512-q0xCiLkuWWQLzVrecPb0RMsNWyxICOjPrcrwxTUEHb1fsnvni4dcuyG7RT/Ie7VPTvnjzIaWzRMUBsrqNj/hhw==", + "dev": true + }, + "node_modules/@vueuse/components": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-11.0.3.tgz", + "integrity": "sha512-/mbv4R1ody3rYz42U14SQ6GkAKHCAHhFIBdR6nKJbEJeFMoiB93dzX0sT2S05CpYCJJgv3JLAwEHeehYqqmbyQ==", + "dependencies": { + "@vueuse/core": "11.0.3", + "@vueuse/shared": "11.0.3", + "vue-demi": ">=0.14.10" + } + }, + "node_modules/@vueuse/components/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/core": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-11.0.3.tgz", + "integrity": "sha512-RENlh64+SYA9XMExmmH1a3TPqeIuJBNNB/63GT35MZI+zpru3oMRUA6cEFr9HmGqEgUisurwGwnIieF6qu3aXw==", + "dependencies": { + "@types/web-bluetooth": "^0.0.20", + "@vueuse/metadata": "11.0.3", + "@vueuse/shared": "11.0.3", + "vue-demi": ">=0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/metadata": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-11.0.3.tgz", + "integrity": "sha512-+FtbO4SD5WpsOcQTcC0hAhNlOid6QNLzqedtquTtQ+CRNBoAt9GuV07c6KNHK1wCmlq8DFPwgiLF2rXwgSHX5Q==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-11.0.3.tgz", + "integrity": "sha512-0rY2m6HS5t27n/Vp5cTDsKTlNnimCqsbh/fmT2LgE+aaU42EMfXo8+bNX91W9I7DDmxfuACXMmrd7d79JxkqWA==", + "dependencies": { + "vue-demi": ">=0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webpack-cli/configtest": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", + "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } + }, + "node_modules/@webpack-cli/info": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", + "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } + }, + "node_modules/@webpack-cli/serve": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", + "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, + "node_modules/@zeit/schemas": { + "version": "2.36.0", + "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.36.0.tgz", + "integrity": "sha512-7kjMwcChYEzMKjeex9ZFXkt1AyNov9R5HZtjBKVsmVpw7pa7ZtlCGvCBC2vnnXctaYN+aRI61HjIqeetZW5ROg==" + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, + "peer": true, + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "peer": true + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-align/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "peer": true, + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "peer": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "peer": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "peer": true + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true, + "peer": true + }, + "node_modules/array-includes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dev": true, + "peer": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/assert": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz", + "integrity": "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "is-nan": "^1.3.2", + "object-is": "^1.1.5", + "object.assign": "^4.1.4", + "util": "^0.12.5" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/babel-loader": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", + "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", + "dev": true, + "peer": true, + "dependencies": { + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.10.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz", + "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.2", + "core-js-compat": "^3.38.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz", + "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true, + "peer": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true, + "peer": true + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "dev": true + }, + "node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "peer": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/bonjour-service": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true, + "peer": true + }, + "node_modules/boxen": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-7.0.0.tgz", + "integrity": "sha512-j//dBVuyacJbvW+tvZ9HuH03fZ46QcaKvvhZickZqtB271DxJ7SNRSNxrV/dZX0085m7hISRZWbzWlJvx/rHSg==", + "dependencies": { + "ansi-align": "^3.0.1", + "camelcase": "^7.0.0", + "chalk": "^5.0.1", + "cli-boxes": "^3.0.0", + "string-width": "^5.1.2", + "type-fest": "^2.13.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/boxen/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true + }, + "node_modules/browser-resolve": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-2.0.0.tgz", + "integrity": "sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==", + "dev": true, + "dependencies": { + "resolve": "^1.17.0" + } + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz", + "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==", + "dev": true, + "dependencies": { + "bn.js": "^5.2.1", + "browserify-rsa": "^4.1.0", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.5", + "hash-base": "~3.0", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.7", + "readable-stream": "^2.3.8", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/browserify-sign/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/browserify-sign/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", + "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/browserslist-to-esbuild": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/browserslist-to-esbuild/-/browserslist-to-esbuild-2.1.1.tgz", + "integrity": "sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==", + "dev": true, + "dependencies": { + "meow": "^13.0.0" + }, + "bin": { + "browserslist-to-esbuild": "cli/index.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "browserslist": "*" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "peer": true + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", + "dev": true + }, + "node_modules/builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "peer": true, + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/builtins/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/byte-length/-/byte-length-1.0.2.tgz", + "integrity": "sha512-ovBpjmsgd/teRmgcPh23d4gJvxDoXtAzEL9xTfMU8Yc2kqCDb7L9jAG0XHl1nzuGl+h3ebCIF1i62UFyA9V/2Q==" + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz", + "integrity": "sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", + "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", + "dev": true, + "peer": true, + "dependencies": { + "camelcase": "^6.3.0", + "map-obj": "^4.1.0", + "quick-lru": "^5.1.1", + "type-fest": "^1.2.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cancelable-promise": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/cancelable-promise/-/cancelable-promise-4.3.1.tgz", + "integrity": "sha512-A/8PwLk/T7IJDfUdQ68NR24QHa8rIlnN/stiJEBo6dmVUkD4K14LswG0w3VwdeK/o7qOwRUR1k2MhK5Rpy2m7A==" + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001655", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", + "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk-template": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-0.4.0.tgz", + "integrity": "sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==", + "dependencies": { + "chalk": "^4.1.2" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/chalk-template?sponsor=1" + } + }, + "node_modules/chalk-template/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/chalk-template/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk-template/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/chalk-template/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/chalk-template/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/chalk-template/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/char-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz", + "integrity": "sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==", + "engines": { + "node": ">=12.20" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", + "engines": { + "node": "*" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "peer": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/clamp": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", + "integrity": "sha512-kgMuFyE78OC6Dyu3Dy7vcx4uy97EIbVxJB/B0eJ3bUNAkwdNcxYzgKltnyADiYwsR7SEqkkUPsEUT//OVS6XMA==" + }, + "node_modules/cli-boxes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-3.0.0.tgz", + "integrity": "sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==", + "dependencies": { + "arch": "^2.2.0", + "execa": "^5.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "peer": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-deep/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "peer": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "peer": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "peer": true + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true, + "peer": true + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true, + "peer": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "peer": true + }, + "node_modules/comment-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/commenting": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/commenting/-/commenting-1.1.0.tgz", + "integrity": "sha512-YeNK4tavZwtH7jEgK1ZINXzLKm6DZdEMfsaaieOsCAN0S8vsY7UeuO3Q7d/M018EFgE+IeUAuBOKkFccBZsUZA==", + "dev": true + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true, + "peer": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "node_modules/consolidate": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz", + "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==", + "deprecated": "Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog", + "dev": true, + "peer": true, + "dependencies": { + "bluebird": "^3.1.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "peer": true + }, + "node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true, + "peer": true + }, + "node_modules/core-js": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", + "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "peer": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", + "engines": { + "node": "*" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/css-functions-list": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.2.tgz", + "integrity": "sha512-c+N0v6wbKVxTu5gOBBFkr9BEdBWaqqjQeiJ8QvSRIJOf+UxlJh930m8e6/WNeODIK0mYLFkoONrnj16i2EcvfQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12 || >=16" + } + }, + "node_modules/css-loader": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", + "dev": true, + "peer": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/css-loader/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "dev": true, + "peer": true, + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "peer": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/date-format-parse": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/date-format-parse/-/date-format-parse-0.2.7.tgz", + "integrity": "sha512-/+lyMUKoRogMuTeOVii6lUwjbVlesN9YRYLzZT/g3TEZ3uD9QnpjResujeEqUW+OSNbT7T1+SYdyEkTcRv+KDQ==" + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true + }, + "node_modules/debounce": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-2.1.0.tgz", + "integrity": "sha512-OkL3+0pPWCqoBc/nhO9u6TIQNTK44fnBnzuVtJAbp13Naxw9R6u21x+8tVTka87AhDZ3htqZ2pSSsZl9fqL2Wg==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/debug": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", + "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "dev": true, + "peer": true, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "peer": true + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "peer": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/des.js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz", + "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true, + "peer": true + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "peer": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "dev": true, + "peer": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "peer": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "peer": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domain-browser": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.23.0.tgz", + "integrity": "sha512-ArzcM/II1wCCujdCNyQjXrAFwS4mrLh4C7DZWlaI8mdh7h3BfKdNd3bKXITfl2PT9FtfQqaGvhi1vPRQPimjGA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "peer": true + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "peer": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/dompurify": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.6.tgz", + "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==" + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "peer": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true, + "peer": true + }, + "node_modules/electron-to-chromium": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", + "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", + "dev": true + }, + "node_modules/elliptic": { + "version": "6.5.7", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz", + "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/emoji-mart-vue-fast": { + "version": "15.0.2", + "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-15.0.2.tgz", + "integrity": "sha512-q7VaE6yRrlQd+jpHPToh1XnIatgACkQjBj0vQ7uNaWrbVsKlhZaOsqZVoegT5IZt5XkYoR2x4MHMNep/BJP9rw==", + "dependencies": { + "@babel/runtime": "^7.18.6", + "core-js": "^3.23.5" + }, + "peerDependencies": { + "vue": ">2.0.0" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "dev": true, + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/envinfo": { + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", + "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", + "dev": true, + "peer": true, + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "peer": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dev": true, + "peer": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "dev": true, + "peer": true + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, + "peer": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dev": true, + "peer": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, + "peer": true, + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "peer": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esbuild": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", + "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.23.1", + "@esbuild/android-arm": "0.23.1", + "@esbuild/android-arm64": "0.23.1", + "@esbuild/android-x64": "0.23.1", + "@esbuild/darwin-arm64": "0.23.1", + "@esbuild/darwin-x64": "0.23.1", + "@esbuild/freebsd-arm64": "0.23.1", + "@esbuild/freebsd-x64": "0.23.1", + "@esbuild/linux-arm": "0.23.1", + "@esbuild/linux-arm64": "0.23.1", + "@esbuild/linux-ia32": "0.23.1", + "@esbuild/linux-loong64": "0.23.1", + "@esbuild/linux-mips64el": "0.23.1", + "@esbuild/linux-ppc64": "0.23.1", + "@esbuild/linux-riscv64": "0.23.1", + "@esbuild/linux-s390x": "0.23.1", + "@esbuild/linux-x64": "0.23.1", + "@esbuild/netbsd-x64": "0.23.1", + "@esbuild/openbsd-arm64": "0.23.1", + "@esbuild/openbsd-x64": "0.23.1", + "@esbuild/sunos-x64": "0.23.1", + "@esbuild/win32-arm64": "0.23.1", + "@esbuild/win32-ia32": "0.23.1", + "@esbuild/win32-x64": "0.23.1" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-compat-utils": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.5.1.tgz", + "integrity": "sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==", + "dev": true, + "peer": true, + "dependencies": { + "semver": "^7.5.4" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/eslint-compat-utils/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-config-standard": { + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz", + "integrity": "sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.1", + "eslint-plugin-import": "^2.25.2", + "eslint-plugin-n": "^15.0.0 || ^16.0.0 ", + "eslint-plugin-promise": "^6.0.0" + } + }, + "node_modules/eslint-import-resolver-exports": { + "version": "1.0.0-beta.5", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-exports/-/eslint-import-resolver-exports-1.0.0-beta.5.tgz", + "integrity": "sha512-o6t0w7muUpXr7MkUVzD5igQoDfAQvTmcPp8HEAJdNF8eOuAO+yn6I/TTyMxz9ecCwzX7e02vzlkHURoScUuidg==", + "dev": true, + "peer": true, + "dependencies": { + "resolve.exports": "^2.0.0" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.3.tgz", + "integrity": "sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==", + "dev": true, + "peer": true, + "dependencies": { + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.3.5", + "enhanced-resolve": "^5.15.0", + "eslint-module-utils": "^2.8.1", + "fast-glob": "^3.3.2", + "get-tsconfig": "^4.7.5", + "is-bun-module": "^1.0.2", + "is-glob": "^4.0.3" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.2.tgz", + "integrity": "sha512-3XnC5fDyc8M4J2E8pt8pmSVRX2M+5yWMCfI/kDZwauQeFgzQOuhcRBFKjTeJagqgk4sFKxe1mvNVnaWwImx/Tg==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-es-x": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.8.0.tgz", + "integrity": "sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==", + "dev": true, + "funding": [ + "https://github.com/sponsors/ota-meshi", + "https://opencollective.com/eslint" + ], + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.1.2", + "@eslint-community/regexpp": "^4.11.0", + "eslint-compat-utils": "^0.5.1" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": ">=8" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "dev": true, + "peer": true, + "dependencies": { + "array-includes": "^3.1.7", + "array.prototype.findlastindex": "^1.2.3", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.8.0", + "hasown": "^2.0.0", + "is-core-module": "^2.13.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.7", + "object.groupby": "^1.0.1", + "object.values": "^1.1.7", + "semver": "^6.3.1", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "peer": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint-plugin-jsdoc": { + "version": "46.10.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.10.1.tgz", + "integrity": "sha512-x8wxIpv00Y50NyweDUpa+58ffgSAI5sqe+zcZh33xphD0AVh+1kqr1ombaTRb7Fhpove1zfUuujlX9DWWBP5ag==", + "dev": true, + "peer": true, + "dependencies": { + "@es-joy/jsdoccomment": "~0.41.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.5.0", + "is-builtin-module": "^3.2.1", + "semver": "^7.5.4", + "spdx-expression-parse": "^4.0.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-n": { + "version": "16.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-16.6.2.tgz", + "integrity": "sha512-6TyDmZ1HXoFQXnhCTUjVFULReoBPOAjpuiKELMkeP40yffI/1ZRO+d9ug/VC6fqISo2WkuIBk3cvuRPALaWlOQ==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "builtins": "^5.0.1", + "eslint-plugin-es-x": "^7.5.0", + "get-tsconfig": "^4.7.0", + "globals": "^13.24.0", + "ignore": "^5.2.4", + "is-builtin-module": "^3.2.1", + "is-core-module": "^2.12.1", + "minimatch": "^3.1.2", + "resolve": "^1.22.2", + "semver": "^7.5.3" + }, + "engines": { + "node": ">=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-n/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint-plugin-n/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-n/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint-plugin-n/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-n/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-promise": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.6.0.tgz", + "integrity": "sha512-57Zzfw8G6+Gq7axm2Pdo3gW/Rx3h9Yywgn61uE/3elTCOePEHVrn2i5CdfBwA1BLK0Q0WqctICIUSqXZW/VprQ==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-vue": { + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.27.0.tgz", + "integrity": "sha512-5Dw3yxEyuBSXTzT5/Ge1X5kIkRTQ3nvBn/VwPwInNiZBSJOO/timWMUaflONnFBzU6NhB68lxnCda7ULV5N7LA==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "globals": "^13.24.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.1.1", + "postcss-selector-parser": "^6.0.15", + "semver": "^7.6.0", + "vue-eslint-parser": "^9.4.3", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-vue/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-vue/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-vue/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "peer": true + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "peer": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-toolkit": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/estree-toolkit/-/estree-toolkit-1.7.7.tgz", + "integrity": "sha512-HBbdqx4TB7uQM+c4NeFXc2/qOc3VqRkyTOdCn4ukyruVEbqDxT4M/3Hce1C8D4SACqWwHNhQdeM8sdBZmDNaAA==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.5", + "@types/estree-jsx": "^1.0.5" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true, + "peer": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/express": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "dev": true, + "peer": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true, + "peer": true + }, + "node_modules/express/node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "peer": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/express/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "peer": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "peer": true + }, + "node_modules/fast-uri": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", + "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", + "dev": true, + "peer": true + }, + "node_modules/fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", + "dependencies": { + "punycode": "^1.3.2" + } + }, + "node_modules/fast-url-parser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, + "node_modules/fast-xml-parser": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz", + "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + }, + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + ], + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "peer": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "peer": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "peer": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "node_modules/find-cache-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", + "dev": true, + "peer": true, + "dependencies": { + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "peer": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "peer": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true, + "peer": true + }, + "node_modules/floating-vue": { + "version": "1.0.0-beta.19", + "resolved": "https://registry.npmjs.org/floating-vue/-/floating-vue-1.0.0-beta.19.tgz", + "integrity": "sha512-OcM7z5Ua4XAykqolmvPj3l1s+KqUKj6Xz2t66eqjgaWfNBjtuifmxO5+4rRXakIch/Crt8IH+vKdKcR3jOUaoQ==", + "dependencies": { + "@floating-ui/dom": "^0.1.10", + "vue-resize": "^1.0.0" + }, + "peerDependencies": { + "vue": "^2.6.10" + } + }, + "node_modules/floating-vue/node_modules/@floating-ui/core": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-0.3.1.tgz", + "integrity": "sha512-ensKY7Ub59u16qsVIFEo2hwTCqZ/r9oZZFh51ivcLGHfUwTn8l1Xzng8RJUe91H/UP8PeqeBronAGx0qmzwk2g==" + }, + "node_modules/floating-vue/node_modules/@floating-ui/dom": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.1.10.tgz", + "integrity": "sha512-4kAVoogvQm2N0XE0G6APQJuCNuErjOfPW8Ux7DFxh8+AfugWflwVJ5LDlHOwrwut7z/30NUvdtHzQ3zSip4EzQ==", + "dependencies": { + "@floating-ui/core": "^0.3.0" + } + }, + "node_modules/focus-trap": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.4.tgz", + "integrity": "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==", + "dependencies": { + "tabbable": "^6.2.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz", + "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==", + "dev": true, + "peer": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "peer": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.0.tgz", + "integrity": "sha512-Pgba6TExTZ0FJAn1qkJAjIeKoDJ3CsI2ChuLohJnZl/tTU8MVrq3b+2t5UOPfRa4RMsorClBjJALkJUMjG1PAw==", + "dev": true, + "peer": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "peer": true, + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "peer": true, + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "peer": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "peer": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", + "dev": true, + "peer": true + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "peer": true + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true, + "peer": true + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", + "dev": true, + "peer": true + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-to-hyperscript": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", + "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.1", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-to-hyperscript/node_modules/@types/unist": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==" + }, + "node_modules/hast-util-is-element": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "peer": true + }, + "node_modules/hot-patcher": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hot-patcher/-/hot-patcher-2.0.1.tgz", + "integrity": "sha512-ECg1JFG0YzehicQaogenlcs2qg6WsXQsxtnbr1i696u5tLUjtJdQAh0u2g0Q5YV45f263Ta1GnUJsc8WIfJf4Q==" + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "peer": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "peer": true + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "peer": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "peer": true + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-entities": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "peer": true + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "peer": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true, + "peer": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "peer": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "dev": true, + "peer": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "peer": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", + "dev": true + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/ical.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ical.js/-/ical.js-2.0.1.tgz", + "integrity": "sha512-uYYb1CwTXbd9NP/xTtgQZ5ivv6bpUjQu9VM98s3X78L3XRu00uJW5ZtmnLwyxhztpf5fSiRyDpFW7ZNCePlaPw==" + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "peer": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "dev": true, + "peer": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "peer": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "peer": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "peer": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "peer": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "peer": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "peer": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "peer": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "peer": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dev": true, + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", + "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-absolute-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz", + "integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "peer": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "peer": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "peer": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dev": true, + "peer": true, + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-bun-module": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-1.1.0.tgz", + "integrity": "sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==", + "dev": true, + "peer": true, + "dependencies": { + "semver": "^7.6.3" + } + }, + "node_modules/is-bun-module/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "dev": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dev": true, + "peer": true, + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "peer": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "peer": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "peer": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-port-reachable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-port-reachable/-/is-port-reachable-4.0.0.tgz", + "integrity": "sha512-9UoipoxYmSk6Xy7QFgRv2HDyaysmgSG75TFQs6S+3pDM7ZhKTF/bskZV+0UlABHzKjNVhPjYCLfeZUEg1wXxig==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "peer": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-svg": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-5.1.0.tgz", + "integrity": "sha512-uVg5yifaTxHoefNf5Jcx+i9RZe2OBYd/UStp1umx+EERa4xGRa3LLGXjoEph43qUORC0qkafUgrXZ6zzK89yGA==", + "dependencies": { + "fast-xml-parser": "^4.4.1" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "peer": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "peer": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isomorphic-timers-promises": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/isomorphic-timers-promises/-/isomorphic-timers-promises-1.0.1.tgz", + "integrity": "sha512-u4sej9B1LPSxTGKB/HiuzvEQnXH0ECYkSVQU39koSwmFAxhlEAFl9RdTvLv4TOTQUgBS5O3O5fwUxk6byBZ+IQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jju": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", + "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", + "dev": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "peer": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "peer": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdoc-type-pratt-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "peer": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "peer": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "peer": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/known-css-properties": { + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.29.0.tgz", + "integrity": "sha512-Ne7wqW7/9Cz54PDt4I3tcV+hAyat8ypyOGzYRJQfdxnnjeWsTxt1cy8pjvvKeI5kfXuyvULyeeAvwvvtAX3ayQ==", + "dev": true, + "peer": true + }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "dev": true + }, + "node_modules/launch-editor": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.8.1.tgz", + "integrity": "sha512-elBx2l/tp9z99X5H/qev8uyDywVh0VXAwEbjk8kJhnc5grOFkGh7aW6q55me9xnYbss261XtnUrysZ+XvGbhQA==", + "dev": true, + "peer": true, + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/layerr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/layerr/-/layerr-3.0.0.tgz", + "integrity": "sha512-tv754Ki2dXpPVApOrjTyRo4/QegVb9eVFq4mjqp4+NM5NaX7syQvN5BBNfV/ZpAHCEHV24XdUVrBAoka4jt3pA==" + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "peer": true + }, + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", + "peer": true, + "dependencies": { + "uc.micro": "^2.0.0" + } + }, + "node_modules/linkify-string": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/linkify-string/-/linkify-string-4.1.3.tgz", + "integrity": "sha512-6dAgx4MiTcvEX87OS5aNpAioO7cSELUXp61k7azOvMYOLSmREx0w4yM1Uf0+O3JLC08YdkUyZhAX+YkasRt/mw==", + "peerDependencies": { + "linkifyjs": "^4.0.0" + } + }, + "node_modules/linkifyjs": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.1.3.tgz", + "integrity": "sha512-auMesunaJ8yfkHvK4gfg1K0SaKX/6Wn9g2Aac/NwX+l5VdmFZzo/hdPGxEOETj+ryRa4/fiOPjeeKURSAJx1sg==", + "peer": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "peer": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/loader-utils/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "peer": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true, + "peer": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "peer": true + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==" + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", + "dev": true, + "peer": true + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "peer": true + }, + "node_modules/magic-string": { + "version": "0.30.11", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", + "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/markdown-it": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", + "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", + "peer": true, + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" + }, + "bin": { + "markdown-it": "bin/markdown-it.mjs" + } + }, + "node_modules/markdown-table": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", + "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/material-colors": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.6.tgz", + "integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==" + }, + "node_modules/mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true, + "peer": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "dependencies": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", + "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz", + "integrity": "sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz", + "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-footnote": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz", + "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-newline-to-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-newline-to-break/-/mdast-util-newline-to-break-2.0.0.tgz", + "integrity": "sha512-MbgeFca0hLYIEx/2zGsszCSEJJ1JSCdiY5xQxRcLDDGa8EPvlLPupJ4DSajbMPAnC0je8jfb9TiUATnxxrHUog==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-find-and-replace": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", + "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", + "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", + "dev": true, + "peer": true + }, + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "peer": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dev": true, + "peer": true, + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/meow": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", + "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true, + "peer": true + }, + "node_modules/merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "dev": true, + "peer": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/merge-source-map/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.1.tgz", + "integrity": "sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz", + "integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", + "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", + "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-character": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", + "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", + "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz", + "integrity": "sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", + "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", + "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.1.tgz", + "integrity": "sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true + }, + "node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "peer": true, + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minimist-options/node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "dev": true + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dev": true, + "peer": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "peer": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "peer": true + }, + "node_modules/nested-property": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/nested-property/-/nested-property-4.0.0.tgz", + "integrity": "sha512-yFehXNWRs4cM0+dz7QxCd06hTbWbSkV0ISsqBfkntU6TOY4Qm3Q88fRRLOddkGh2Qq6dZvnKVAahfhjcUvLnyA==" + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gettext": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-3.0.0.tgz", + "integrity": "sha512-/VRYibXmVoN6tnSAY2JWhNRhWYJ8Cd844jrZU/DwLVoI4vBI6ceYbd8i42sYZ9uOgDH3S7vslIKOWV/ZrT2YBA==", + "dependencies": { + "lodash.get": "^4.4.2" + } + }, + "node_modules/node-polyfill-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-QpG496dDBiaelQZu9wDcVvpLbtk7h9Ctz693RaUMZBgl8DUoFToO90ZTLKq57gP7rwKqYtGbMBXkcEgLSag2jQ==", + "dev": true, + "peer": true, + "dependencies": { + "assert": "^2.1.0", + "browserify-zlib": "^0.2.0", + "buffer": "^6.0.3", + "console-browserify": "^1.2.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.12.0", + "domain-browser": "^4.22.0", + "events": "^3.3.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "punycode": "^2.3.0", + "querystring-es3": "^0.2.1", + "readable-stream": "^4.4.2", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.3.0", + "timers-browserify": "^2.0.12", + "tty-browserify": "^0.0.1", + "type-fest": "^4.4.0", + "url": "^0.11.3", + "util": "^0.12.5", + "vm-browserify": "^1.1.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "webpack": ">=5" + } + }, + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true + }, + "node_modules/node-stdlib-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/node-stdlib-browser/-/node-stdlib-browser-1.2.0.tgz", + "integrity": "sha512-VSjFxUhRhkyed8AtLwSCkMrJRfQ3e2lGtG3sP6FEgaLKBBbxM/dLfjRe1+iLhjvyLFW3tBQ8+c0pcOtXGbAZJg==", + "dev": true, + "dependencies": { + "assert": "^2.0.0", + "browser-resolve": "^2.0.0", + "browserify-zlib": "^0.2.0", + "buffer": "^5.7.1", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "create-require": "^1.1.1", + "crypto-browserify": "^3.11.0", + "domain-browser": "^4.22.0", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "isomorphic-timers-promises": "^1.0.1", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "pkg-dir": "^5.0.0", + "process": "^0.11.10", + "punycode": "^1.4.1", + "querystring-es3": "^0.2.1", + "readable-stream": "^3.6.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.1", + "url": "^0.11.0", + "util": "^0.12.4", + "vm-browserify": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-stdlib-browser/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/node-stdlib-browser/node_modules/pkg-dir": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-stdlib-browser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "dev": true + }, + "node_modules/node-stdlib-browser/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "peer": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "peer": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-inspect": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true, + "peer": true + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "peer": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "peer": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "peer": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "peer": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", + "dev": true + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-name-regex": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/package-name-regex/-/package-name-regex-2.0.6.tgz", + "integrity": "sha512-gFL35q7kbE/zBaPA3UKhp2vSzcPYx2ecbYuwv1ucE9Il6IIgBDweBlH8D68UFGZic2MkllKa2KHCfC1IQBQUYA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/dword-design" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz", + "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==", + "dev": true, + "dependencies": { + "asn1.js": "^4.10.1", + "browserify-aes": "^1.2.0", + "evp_bytestokey": "^1.0.3", + "hash-base": "~3.0", + "pbkdf2": "^3.1.2", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-posix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/path-posix/-/path-posix-1.0.0.tgz", + "integrity": "sha512-1gJ0WpNIiYcQydgg3Ed8KzvIqTsDpNwq+cjBCssvBtuTWjEqY1AW+i+OepiEMqDCzyro9B2sLAe4RBPajMYFiA==" + }, + "node_modules/path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-dir": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", + "dev": true, + "peer": true, + "dependencies": { + "find-up": "^6.3.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "peer": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "peer": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "peer": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "peer": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/pkg-dir/node_modules/yocto-queue": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.4.44", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.44.tgz", + "integrity": "sha512-Aweb9unOEpQ3ezu4Q00DPvvM2ZTUitJdNKeP/+uQgr1IBIqu574IaZoURId7BKtWMREwzKa9OgzPzezWGPWFQw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.1", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-html": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.7.0.tgz", + "integrity": "sha512-MfcMpSUIaR/nNgeVS8AyvyDugXlADjN9AcV7e5rDfrF1wduIAGSkL4q2+wgrZgA3sHVAHLDO9FuauHhZYW2nBw==", + "dev": true, + "peer": true, + "dependencies": { + "htmlparser2": "^8.0.0", + "js-tokens": "^9.0.0", + "postcss": "^8.4.0", + "postcss-safe-parser": "^6.0.0" + }, + "engines": { + "node": "^12 || >=14" + } + }, + "node_modules/postcss-html/node_modules/js-tokens": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz", + "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==", + "dev": true, + "peer": true + }, + "node_modules/postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", + "dev": true, + "peer": true + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "dev": true, + "peer": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", + "dev": true, + "peer": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "dev": true, + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "peer": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-resolve-nested-selector": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz", + "integrity": "sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==", + "dev": true, + "peer": true + }, + "node_modules/postcss-safe-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", + "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" + } + }, + "node_modules/postcss-scss": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz", + "integrity": "sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-scss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.4.29" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true, + "peer": true + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "optional": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/property-information": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", + "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "peer": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "dev": true, + "peer": true + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", + "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", + "dev": true, + "peer": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", + "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", + "dev": true, + "peer": true, + "dependencies": { + "find-up": "^5.0.0", + "read-pkg": "^6.0.0", + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dev": true, + "peer": true, + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "peer": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/rechoir": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", + "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", + "dev": true, + "peer": true, + "dependencies": { + "resolve": "^1.20.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/redent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", + "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", + "dev": true, + "peer": true, + "dependencies": { + "indent-string": "^5.0.0", + "strip-indent": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true, + "peer": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "peer": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dependencies": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==", + "dependencies": { + "rc": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "peer": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/rehype-external-links": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rehype-external-links/-/rehype-external-links-3.0.0.tgz", + "integrity": "sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==", + "dependencies": { + "@types/hast": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-is-element": "^3.0.0", + "is-absolute-url": "^4.0.0", + "space-separated-tokens": "^2.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-react": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/rehype-react/-/rehype-react-7.2.0.tgz", + "integrity": "sha512-MHYyCHka+3TtzBMKtcuvVOBAbI1HrfoYA+XH9m7/rlrQQATCPwtJnPdkxKKcIGF8vc9mxqQja9r9f+FHItQeWg==", + "dependencies": { + "@mapbox/hast-util-table-cell-style": "^0.2.0", + "@types/hast": "^2.0.0", + "hast-to-hyperscript": "^10.0.0", + "hast-util-whitespace": "^2.0.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@types/react": ">=17" + } + }, + "node_modules/rehype-react/node_modules/@types/hast": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz", + "integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/rehype-react/node_modules/@types/unist": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==" + }, + "node_modules/rehype-react/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/rehype-react/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-react/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-react/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-react/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-breaks": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-4.0.0.tgz", + "integrity": "sha512-IjEjJOkH4FuJvHZVIW0QCDWxcG96kCq7An/KVH2NfJe6rKZU2AsHeB3OEjPNRxi4QC34Xdx7I2KGYn6IpT7gxQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-newline-to-break": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-gfm": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", + "integrity": "sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-gfm": "^3.0.0", + "micromark-extension-gfm": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.0.tgz", + "integrity": "sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", + "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requireindex": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", + "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.5" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "peer": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "peer": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rollup": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.2.tgz", + "integrity": "sha512-e3TapAgYf9xjdLvKQCkQTnbTKd4a6jwlpQSJJFokHGaX2IVjoEqkIIhiQfqsi0cdwlOD+tQGuOd5AJkc5RngBw==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.21.2", + "@rollup/rollup-android-arm64": "4.21.2", + "@rollup/rollup-darwin-arm64": "4.21.2", + "@rollup/rollup-darwin-x64": "4.21.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.21.2", + "@rollup/rollup-linux-arm-musleabihf": "4.21.2", + "@rollup/rollup-linux-arm64-gnu": "4.21.2", + "@rollup/rollup-linux-arm64-musl": "4.21.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.21.2", + "@rollup/rollup-linux-riscv64-gnu": "4.21.2", + "@rollup/rollup-linux-s390x-gnu": "4.21.2", + "@rollup/rollup-linux-x64-gnu": "4.21.2", + "@rollup/rollup-linux-x64-musl": "4.21.2", + "@rollup/rollup-win32-arm64-msvc": "4.21.2", + "@rollup/rollup-win32-ia32-msvc": "4.21.2", + "@rollup/rollup-win32-x64-msvc": "4.21.2", + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-corejs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-corejs/-/rollup-plugin-corejs-1.0.0.tgz", + "integrity": "sha512-3NBmG9c4luZ+yWDA4b9oyhaCioLthj0Tb0shiFRpPBSZlAZ1TGDzawGmg9mAMbcTw36IMw2MdkOpUGa9S56PaQ==", + "dev": true, + "dependencies": { + "acorn": "^8.11.3", + "browserslist": "^4.23.0", + "core-js-compat": "^3.37.0", + "estree-toolkit": "^1.7.3", + "magic-string": "^0.30.10" + }, + "engines": { + "node": ">= 20.0.0" + }, + "peerDependencies": { + "rollup": "^3 || ^4" + } + }, + "node_modules/rollup-plugin-esbuild-minify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-esbuild-minify/-/rollup-plugin-esbuild-minify-1.1.2.tgz", + "integrity": "sha512-l8s3ggesd6WVpi7GPQG/X5MMhwg9thEQLRrsjO6X7xQMkKMxmmjm1NTunQid4pcIKcPYJdAkPwSo2vbI2Itf8Q==", + "dev": true, + "dependencies": { + "esbuild": "^0.23.0" + }, + "engines": { + "node": ">= 14.18" + }, + "peerDependencies": { + "rollup": "^2 || ^3 || ^4" + } + }, + "node_modules/rollup-plugin-license": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-license/-/rollup-plugin-license-3.5.2.tgz", + "integrity": "sha512-NNeXBcE6RyQdZdSC8Vxe8Cheax2aUa/K0Ok6JDZwr9isjkSDer4aMg0sovas1Ua76ojLZX1BrNQ6ZFspztKkZQ==", + "dev": true, + "dependencies": { + "commenting": "~1.1.0", + "fdir": "6.1.1", + "lodash": "~4.17.21", + "magic-string": "~0.30.0", + "moment": "~2.30.1", + "package-name-regex": "~2.0.6", + "spdx-expression-validate": "~2.0.0", + "spdx-satisfies": "~5.0.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0" + } + }, + "node_modules/rollup-plugin-license/node_modules/fdir": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.1.1.tgz", + "integrity": "sha512-QfKBVg453Dyn3mr0Q0O+Tkr1r79lOTAKSi9f/Ot4+qVEwxWhav2Z+SudrG9vQjM2aYRMQQZ2/Q1zdA8ACM1pDg==", + "dev": true, + "peerDependencies": { + "picomatch": "3.x" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/rollup-plugin-license/node_modules/picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/rollup-plugin-node-externals": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-node-externals/-/rollup-plugin-node-externals-7.1.3.tgz", + "integrity": "sha512-RM+7tJAejAoRsCf93TptTSdqUhRA8S78DleihMiu54Kac+uLkd9VIegLPhGnaW3ehZTXh56+R301mFH6j2A7vw==", + "dev": true, + "funding": [ + { + "type": "patreon", + "url": "https://patreon.com/Septh" + }, + { + "type": "paypal", + "url": "https://paypal.me/septh07" + } + ], + "engines": { + "node": ">= 21 || ^20.6.0 || ^18.19.0" + }, + "peerDependencies": { + "rollup": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "peer": true + }, + "node_modules/sass": { + "version": "1.77.8", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz", + "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==", + "dev": true, + "peer": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.3.3", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.3.tgz", + "integrity": "sha512-mt5YN2F1MOZr3d/wBRcZxeFgwgkH44wVc2zohO2YF6JiOMkiXe4BYRZpSu2sO1g71mo/j16txzUhsKZlqjVGzA==", + "dev": true, + "peer": true, + "dependencies": { + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "peer": true + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true, + "peer": true + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "peer": true + }, + "node_modules/send/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/serve/-/serve-14.2.3.tgz", + "integrity": "sha512-VqUFMC7K3LDGeGnJM9h56D3XGKb6KGgOw0cVNtA26yYXHCcpxf3xwCTUaQoWlVS7i8Jdh3GjQkOB23qsXyjoyQ==", + "dependencies": { + "@zeit/schemas": "2.36.0", + "ajv": "8.12.0", + "arg": "5.0.2", + "boxen": "7.0.0", + "chalk": "5.0.1", + "chalk-template": "0.4.0", + "clipboardy": "3.0.0", + "compression": "1.7.4", + "is-port-reachable": "4.0.0", + "serve-handler": "6.1.5", + "update-check": "1.5.4" + }, + "bin": { + "serve": "build/main.js" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/serve-handler": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", + "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", + "dependencies": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + } + }, + "node_modules/serve-handler/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/serve-handler/node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "peer": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "peer": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true, + "peer": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true, + "peer": true + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "peer": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/serve/node_modules/chalk": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", + "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/serve/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "peer": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true, + "peer": true + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "peer": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shiki": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.16.1.tgz", + "integrity": "sha512-tCJIMaxDVB1mEIJ5TvfZU7kCPB5eo9fli5+21Olc/bmyv+w8kye3JOp+LZRmGkAyT71hrkefQhTiY+o9mBikRQ==", + "peer": true, + "dependencies": { + "@shikijs/core": "1.16.1", + "@shikijs/vscode-textmate": "^9.2.0", + "@types/hast": "^3.0.4" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "peer": true + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "peer": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdx-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/spdx-compare/-/spdx-compare-1.0.0.tgz", + "integrity": "sha512-C1mDZOX0hnu0ep9dfmuoi03+eOdDoz2yvK79RxbcrVEG1NO1Ph35yW102DHWKN4pk80nwCgeMmSY5L25VE4D9A==", + "dev": true, + "dependencies": { + "array-find-index": "^1.0.2", + "spdx-expression-parse": "^3.0.0", + "spdx-ranges": "^2.0.0" + } + }, + "node_modules/spdx-compare/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "peer": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-correct/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "peer": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-expression-validate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-validate/-/spdx-expression-validate-2.0.0.tgz", + "integrity": "sha512-b3wydZLM+Tc6CFvaRDBOF9d76oGIHNCLYFeHbftFXUWjnfZWganmDmvtM5sm1cRwJc/VDBMLyGGrsLFd1vOxbg==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/spdx-expression-validate/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.20", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", + "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==", + "dev": true + }, + "node_modules/spdx-ranges": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/spdx-ranges/-/spdx-ranges-2.1.1.tgz", + "integrity": "sha512-mcdpQFV7UDAgLpXEE/jOMqvK4LBoO0uTQg0uvXUewmEFhpiZx5yJSZITHB8w1ZahKdhfZqP5GPEOKLyEq5p8XA==", + "dev": true + }, + "node_modules/spdx-satisfies": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/spdx-satisfies/-/spdx-satisfies-5.0.1.tgz", + "integrity": "sha512-Nwor6W6gzFp8XX4neaKQ7ChV4wmpSh2sSDemMFSzHxpTw460jxFYeOn+jq4ybnSSw/5sc3pjka9MQPouksQNpw==", + "dev": true, + "dependencies": { + "spdx-compare": "^1.0.0", + "spdx-expression-parse": "^3.0.0", + "spdx-ranges": "^2.0.0" + } + }, + "node_modules/spdx-satisfies/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/spdy-transport/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/splitpanes": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/splitpanes/-/splitpanes-2.4.1.tgz", + "integrity": "sha512-kpEo1WuMXuc6QfdQdO2V/fl/trONlkUKp+pputsLTiW9RMtwEvjb4/aYGm2m3+KAzjmb+zLwr4A4SYZu74+pgQ==" + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dev": true, + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-browserify/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "dev": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/stream-http/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-length": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz", + "integrity": "sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==", + "dependencies": { + "char-regex": "^2.0.0", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-length/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-length/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", + "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", + "dev": true, + "peer": true, + "dependencies": { + "min-indent": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/striptags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/striptags/-/striptags-3.2.0.tgz", + "integrity": "sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw==" + }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" + }, + "node_modules/style-loader": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.4.tgz", + "integrity": "sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", + "dev": true, + "peer": true + }, + "node_modules/style-to-object": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", + "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/stylelint": { + "version": "15.11.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.11.0.tgz", + "integrity": "sha512-78O4c6IswZ9TzpcIiQJIN49K3qNoXTM8zEJzhaTE/xRTCZswaovSEVIa/uwbOltZrk16X4jAxjaOhzz/hTm1Kw==", + "dev": true, + "peer": true, + "dependencies": { + "@csstools/css-parser-algorithms": "^2.3.1", + "@csstools/css-tokenizer": "^2.2.0", + "@csstools/media-query-list-parser": "^2.1.4", + "@csstools/selector-specificity": "^3.0.0", + "balanced-match": "^2.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^8.2.0", + "css-functions-list": "^3.2.1", + "css-tree": "^2.3.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.1", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^7.0.0", + "global-modules": "^2.0.0", + "globby": "^11.1.0", + "globjoin": "^0.1.4", + "html-tags": "^3.3.1", + "ignore": "^5.2.4", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.29.0", + "mathml-tag-names": "^2.1.3", + "meow": "^10.1.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.28", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^6.0.0", + "postcss-selector-parser": "^6.0.13", + "postcss-value-parser": "^4.2.0", + "resolve-from": "^5.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "style-search": "^0.1.0", + "supports-hyperlinks": "^3.0.0", + "svg-tags": "^1.0.0", + "table": "^6.8.1", + "write-file-atomic": "^5.0.1" + }, + "bin": { + "stylelint": "bin/stylelint.mjs" + }, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" + } + }, + "node_modules/stylelint-config-html": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stylelint-config-html/-/stylelint-config-html-1.1.0.tgz", + "integrity": "sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==", + "dev": true, + "peer": true, + "engines": { + "node": "^12 || >=14" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, + "peerDependencies": { + "postcss-html": "^1.0.0", + "stylelint": ">=14.0.0" + } + }, + "node_modules/stylelint-config-recommended": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-13.0.0.tgz", + "integrity": "sha512-EH+yRj6h3GAe/fRiyaoO2F9l9Tgg50AOFhaszyfov9v6ayXJ1IkSHwTxd7lB48FmOeSGDPLjatjO11fJpmarkQ==", + "dev": true, + "peer": true, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "stylelint": "^15.10.0" + } + }, + "node_modules/stylelint-config-recommended-scss": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-13.1.0.tgz", + "integrity": "sha512-8L5nDfd+YH6AOoBGKmhH8pLWF1dpfY816JtGMePcBqqSsLU+Ysawx44fQSlMOJ2xTfI9yTGpup5JU77c17w1Ww==", + "dev": true, + "peer": true, + "dependencies": { + "postcss-scss": "^4.0.9", + "stylelint-config-recommended": "^13.0.0", + "stylelint-scss": "^5.3.0" + }, + "peerDependencies": { + "postcss": "^8.3.3", + "stylelint": "^15.10.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + } + } + }, + "node_modules/stylelint-config-recommended-vue": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.5.0.tgz", + "integrity": "sha512-65TAK/clUqkNtkZLcuytoxU0URQYlml+30Nhop7sRkCZ/mtWdXt7T+spPSB3KMKlb+82aEVJ4OrcstyDBdbosg==", + "dev": true, + "peer": true, + "dependencies": { + "semver": "^7.3.5", + "stylelint-config-html": ">=1.0.0", + "stylelint-config-recommended": ">=6.0.0" + }, + "engines": { + "node": "^12 || >=14" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, + "peerDependencies": { + "postcss-html": "^1.0.0", + "stylelint": ">=14.0.0" + } + }, + "node_modules/stylelint-config-recommended-vue/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stylelint-scss": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-5.3.2.tgz", + "integrity": "sha512-4LzLaayFhFyneJwLo0IUa8knuIvj+zF0vBFueQs4e3tEaAMIQX8q5th8ziKkgOavr6y/y9yoBe+RXN/edwLzsQ==", + "dev": true, + "peer": true, + "dependencies": { + "known-css-properties": "^0.29.0", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-selector-parser": "^6.0.13", + "postcss-value-parser": "^4.2.0" + }, + "peerDependencies": { + "stylelint": "^14.5.1 || ^15.0.0" + } + }, + "node_modules/stylelint/node_modules/balanced-match": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", + "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", + "dev": true, + "peer": true + }, + "node_modules/stylelint/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "peer": true + }, + "node_modules/stylelint/node_modules/file-entry-cache": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.2.tgz", + "integrity": "sha512-TfW7/1iI4Cy7Y8L6iqNdZQVvdXn0f8B4QcIXmkIbtTIe/Okm/nSlHb4IwGzRVOd3WfSieCgvf5cMzEfySAIl0g==", + "dev": true, + "peer": true, + "dependencies": { + "flat-cache": "^3.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/stylelint/node_modules/meow": { + "version": "10.1.5", + "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", + "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/minimist": "^1.2.2", + "camelcase-keys": "^7.0.0", + "decamelize": "^5.0.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.2", + "read-pkg-up": "^8.0.0", + "redent": "^4.0.0", + "trim-newlines": "^4.0.2", + "type-fest": "^1.2.2", + "yargs-parser": "^20.2.9" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stylelint/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.1.0.tgz", + "integrity": "sha512-2rn0BZ+/f7puLOHZm1HOJfwBggfaHXUpPUSSG/SWM4TWp5KCfmNYwnC3hruy2rZlMnmWZ+QAGpZfchu3f3695A==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true, + "peer": true + }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, + "node_modules/table": { + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz", + "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "peer": true + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "peer": true + }, + "node_modules/table/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.31.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.6.tgz", + "integrity": "sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "peer": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true, + "peer": true + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dev": true, + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tinycolor2": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tributejs": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/tributejs/-/tributejs-5.1.3.tgz", + "integrity": "sha512-B5CXihaVzXw+1UHhNFyAwUTMDk1EfoLP5Tj1VhD9yybZ1I8DZJEv8tZ1l0RJo0t0tk9ZhR8eG5tEsaCvRigmdQ==" + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trim-newlines": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", + "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/trough": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", + "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-loader": { + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz", + "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==", + "dev": true, + "peer": true, + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4", + "source-map": "^0.7.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "typescript": "*", + "webpack": "^5.0.0" + } + }, + "node_modules/ts-loader/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ts-loader/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ts-loader/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ts-loader/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "peer": true + }, + "node_modules/ts-loader/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-loader/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-loader/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "peer": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", + "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "peer": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dev": true, + "peer": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedoc": { + "version": "0.26.6", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.26.6.tgz", + "integrity": "sha512-SfEU3SH3wHNaxhFPjaZE2kNl/NFtLNW5c1oHsg7mti7GjmUj1Roq6osBQeMd+F4kL0BoRBBr8gQAuqBlfFu8LA==", + "peer": true, + "dependencies": { + "lunr": "^2.3.9", + "markdown-it": "^14.1.0", + "minimatch": "^9.0.5", + "shiki": "^1.9.1", + "yaml": "^2.4.5" + }, + "bin": { + "typedoc": "bin/typedoc" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x" + } + }, + "node_modules/typedoc-plugin-missing-exports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/typedoc-plugin-missing-exports/-/typedoc-plugin-missing-exports-3.0.0.tgz", + "integrity": "sha512-R7D8fYrK34mBFZSlF1EqJxfqiUSlQSmyrCiQgTQD52nNm6+kUtqwiaqaNkuJ2rA2wBgWFecUA8JzHT7x2r7ePg==", + "peerDependencies": { + "typedoc": "0.26.x" + } + }, + "node_modules/typescript": { + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", + "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-event-target": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/typescript-event-target/-/typescript-event-target-1.1.1.tgz", + "integrity": "sha512-dFSOFBKV6uwaloBCCUhxlD3Pr/P1a/tJdcmPrTXCHlEFD3faj0mztjcGn6VBAhQ0/Bdy8K3VWrrqwbt/ffsYsg==" + }, + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "peer": true + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "peer": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unified": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-builder": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-4.0.0.tgz", + "integrity": "sha512-wmRFnH+BLpZnTKpc5L7O67Kac89s9HMrtELpnNaE6TAobq5DTZZs5YaTQfAZBA9bFPECx2uVAPO31c+GVug8mg==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.2", + "picocolors": "^1.0.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-check": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.4.tgz", + "integrity": "sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==", + "dependencies": { + "registry-auth-token": "3.3.2", + "registry-url": "3.1.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz", + "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==", + "dev": true, + "dependencies": { + "punycode": "^1.4.1", + "qs": "^6.12.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/url-join": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", + "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "dev": true + }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "peer": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-license/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "peer": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/validator": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vite": { + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.2.tgz", + "integrity": "sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==", + "dev": true, + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.41", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-css-injected-by-js": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/vite-plugin-css-injected-by-js/-/vite-plugin-css-injected-by-js-3.5.1.tgz", + "integrity": "sha512-9ioqwDuEBxW55gNoWFEDhfLTrVKXEEZgl5adhWmmqa88EQGKfTmexy4v1Rh0pAS6RhKQs2bUYQArprB32JpUZQ==", + "dev": true, + "peerDependencies": { + "vite": ">2.0.0-0" + } + }, + "node_modules/vite-plugin-dts": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-3.9.1.tgz", + "integrity": "sha512-rVp2KM9Ue22NGWB8dNtWEr+KekN3rIgz1tWD050QnRGlriUCmaDwa7qA5zDEjbXg5lAXhYMSBJtx3q3hQIJZSg==", + "dev": true, + "dependencies": { + "@microsoft/api-extractor": "7.43.0", + "@rollup/pluginutils": "^5.1.0", + "@vue/language-core": "^1.8.27", + "debug": "^4.3.4", + "kolorist": "^1.8.0", + "magic-string": "^0.30.8", + "vue-tsc": "^1.8.27" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "typescript": "*", + "vite": "*" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/vite-plugin-node-polyfills": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/vite-plugin-node-polyfills/-/vite-plugin-node-polyfills-0.22.0.tgz", + "integrity": "sha512-F+G3LjiGbG8QpbH9bZ//GSBr9i1InSTkaulfUHFa9jkLqVGORFBoqc2A/Yu5Mmh1kNAbiAeKeK+6aaQUf3x0JA==", + "dev": true, + "dependencies": { + "@rollup/plugin-inject": "^5.0.5", + "node-stdlib-browser": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/davidmyersdev" + }, + "peerDependencies": { + "vite": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0" + } + }, + "node_modules/vite/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "node_modules/vue": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.16.tgz", + "integrity": "sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw==", + "deprecated": "Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details.", + "dependencies": { + "@vue/compiler-sfc": "2.7.16", + "csstype": "^3.1.0" + } + }, + "node_modules/vue-color": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/vue-color/-/vue-color-2.8.1.tgz", + "integrity": "sha512-BoLCEHisXi2QgwlhZBg9UepvzZZmi4176vbr+31Shen5WWZwSLVgdScEPcB+yrAtuHAz42309C0A4+WiL9lNBw==", + "dependencies": { + "clamp": "^1.0.1", + "lodash.throttle": "^4.0.0", + "material-colors": "^1.0.0", + "tinycolor2": "^1.1.2" + } + }, + "node_modules/vue-eslint-parser": { + "version": "9.4.3", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.3.tgz", + "integrity": "sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^4.3.4", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.6" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/vue-eslint-parser/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/vue-eslint-parser/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue-frag": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/vue-frag/-/vue-frag-1.4.3.tgz", + "integrity": "sha512-pQZj03f/j9LRhzz9vKaXTCXUHVYHuAXicshFv76VFqwz4MG3bcb+sPZMAbd0wmw7THjkrTPuoM0EG9TbG8CgMQ==", + "funding": { + "url": "https://github.com/privatenumber/vue-frag?sponsor=1" + }, + "peerDependencies": { + "vue": "^2.6.0" + } + }, + "node_modules/vue-hot-reload-api": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", + "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", + "dev": true, + "peer": true + }, + "node_modules/vue-loader": { + "version": "15.11.1", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.11.1.tgz", + "integrity": "sha512-0iw4VchYLePqJfJu9s62ACWUXeSqM30SQqlIftbYWM3C+jpPcEHKSPUZBLjSF9au4HTHQ/naF6OGnO3Q/qGR3Q==", + "dev": true, + "peer": true, + "dependencies": { + "@vue/component-compiler-utils": "^3.1.0", + "hash-sum": "^1.0.2", + "loader-utils": "^1.1.0", + "vue-hot-reload-api": "^2.3.0", + "vue-style-loader": "^4.1.0" + }, + "peerDependencies": { + "css-loader": "*", + "webpack": "^3.0.0 || ^4.1.0 || ^5.0.0-0" + }, + "peerDependenciesMeta": { + "cache-loader": { + "optional": true + }, + "prettier": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } + } + }, + "node_modules/vue-resize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-1.0.1.tgz", + "integrity": "sha512-z5M7lJs0QluJnaoMFTIeGx6dIkYxOwHThlZDeQnWZBizKblb99GSejPnK37ZbNE/rVwDcYcHY+Io+AxdpY952w==", + "dependencies": { + "@babel/runtime": "^7.13.10" + }, + "peerDependencies": { + "vue": "^2.6.0" + } + }, + "node_modules/vue-router": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.6.5.tgz", + "integrity": "sha512-VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ==" + }, + "node_modules/vue-style-loader": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", + "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", + "dev": true, + "peer": true, + "dependencies": { + "hash-sum": "^1.0.2", + "loader-utils": "^1.0.2" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", + "dev": true, + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/vue-template-es2015-compiler": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz", + "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==", + "dev": true, + "peer": true + }, + "node_modules/vue-tsc": { + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", + "dev": true, + "dependencies": { + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", + "semver": "^7.5.4" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/vue-tsc/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue2-datepicker": { + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/vue2-datepicker/-/vue2-datepicker-3.11.1.tgz", + "integrity": "sha512-6PU/+pnp2mgZAfnSXmbdwj9516XsEvTiw61Q5SNrvvdy8W/FCxk1GAe9UZn/m9YfS5A47yK6XkcjMHbp7aFApA==", + "dependencies": { + "date-format-parse": "^0.2.7" + }, + "peerDependencies": { + "vue": "^2.5.0" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dev": true, + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "peer": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/webdav": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/webdav/-/webdav-5.7.1.tgz", + "integrity": "sha512-JVPn3nLxXJfHSRvennHsOrDYjFLkilZ1Qlw8Ff6hpqp6AvkgF7a//aOh5wA4rMp+sLZ1Km0V+iv0LyO1FIwtXg==", + "dependencies": { + "@buttercup/fetch": "^0.2.1", + "base-64": "^1.0.0", + "byte-length": "^1.0.2", + "entities": "^5.0.0", + "fast-xml-parser": "^4.4.1", + "hot-patcher": "^2.0.1", + "layerr": "^3.0.0", + "md5": "^2.3.0", + "minimatch": "^9.0.5", + "nested-property": "^4.0.0", + "node-fetch": "^3.3.2", + "path-posix": "^1.0.0", + "url-join": "^5.0.0", + "url-parse": "^1.5.10" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/webdav/node_modules/entities": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-5.0.0.tgz", + "integrity": "sha512-BeJFvFRJddxobhvEdm5GqHzRV/X+ACeuw0/BuuxsCh1EUZcAIz8+kYmBp/LrQuloy6K1f3a0M7+IhmZ7QnkISA==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/webpack": { + "version": "5.94.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz", + "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", + "acorn": "^8.7.1", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-cli": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", + "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", + "dev": true, + "peer": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^2.1.1", + "@webpack-cli/info": "^2.0.2", + "@webpack-cli/serve": "^2.0.5", + "colorette": "^2.0.14", + "commander": "^10.0.1", + "cross-spawn": "^7.0.3", + "envinfo": "^7.7.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", + "webpack-merge": "^5.7.3" + }, + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "optional": true + }, + "webpack-bundle-analyzer": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/webpack-cli/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "dev": true, + "peer": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.15.2", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz", + "integrity": "sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==", + "dev": true, + "peer": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.5", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.4", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-merge": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", + "dev": true, + "peer": true, + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "peer": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "peer": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/widest-line": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", + "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", + "dependencies": { + "string-width": "^5.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true, + "peer": true + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "peer": true + }, + "node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "dev": true, + "peer": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "peer": true + }, + "node_modules/yaml": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", + "integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", + "peer": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/z-schema": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.5.tgz", + "integrity": "sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==", + "dev": true, + "dependencies": { + "lodash.get": "^4.4.2", + "lodash.isequal": "^4.5.0", + "validator": "^13.7.0" + }, + "bin": { + "z-schema": "bin/z-schema" + }, + "engines": { + "node": ">=8.0.0" + }, + "optionalDependencies": { + "commander": "^9.4.1" + } + }, + "node_modules/z-schema/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "optional": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..5138cef --- /dev/null +++ b/package.json @@ -0,0 +1,51 @@ +{ + "name": "extract", + "description": "Allows to extract archive from the web interface.", + "version": "0.0.1", + "author": "Antoon Prins ", + "contributors": [], + "license": "agpl", + "private": true, + "type": "module", + "scripts": { + "vite": "vite", + "build": "vite build --mode production", + "dev": "vite build --mode development", + "watch": "vite build --mode development --watch", + "lint": "eslint --ext .js,.ts,.vue src", + "lint:fix": "eslint --ext .js,.ts,.vue src --fix", + "stylelint": "stylelint src", + "stylelint:fix": "stylelint src --fix", + "test": "jest", + "test:watch": "jest --watch", + "test:coverage": "jest --coverage", + "serve": "webpack --node-env development serve --progress" + }, + "dependencies": { + "@mdi/svg": "^7.4.47", + "@nextcloud/axios": "^2.4.0", + "@nextcloud/files": "^3.1.0", + "@nextcloud/l10n": "^2.1.0", + "@nextcloud/logger": "^3.0.1", + "@nextcloud/router": "^3.0.0", + "@nextcloud/vue": "^8.11.2", + "serve": "^14.2.3", + "vue": "^2.7.16" + }, + "browserslist": [ + "extends @nextcloud/browserslist-config" + ], + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + }, + "devDependencies": { + "@nextcloud/babel-config": "^1.0.0", + "@nextcloud/browserslist-config": "^2.2.0", + "@nextcloud/eslint-config": "^v8.3.0-beta.2", + "@nextcloud/stylelint-config": "^2.4.0", + "@nextcloud/vite-config": "^1.2.5", + "@nextcloud/webpack-vue-config": "^6.0.1", + "vite": "^5.4.2" + } +} diff --git a/src/actions/extract-action.ts b/src/actions/extract-action.ts new file mode 100644 index 0000000..388521a --- /dev/null +++ b/src/actions/extract-action.ts @@ -0,0 +1,79 @@ +import axios from '@nextcloud/axios' +import { emit } from '@nextcloud/event-bus' +import { Node, View, Permission, Folder, FileAction } from '@nextcloud/files' +import { generateUrl } from '@nextcloud/router' +import { translate as t } from '@nextcloud/l10n' +// import type VueRouter from 'vue-router' +import FolderZipSvg from '@mdi/svg/svg/folder-zip.svg?raw' + +export const action = new FileAction({ + id: 'extract', + displayName: () => t('extract', 'Extract here'), + iconSvgInline: () => FolderZipSvg, + // Only works on single files + enabled(nodes: Node[]) { + // Only works on single node + if (nodes.length !== 1) { + return false + } + + if (nodes[0].attributes.getcontenttype === 'application/zip' + || nodes[0].attributes.getcontenttype === 'application/x-tar' + || nodes[0].attributes.getcontenttype === 'application/gzip' + || nodes[0].attributes.getcontenttype === 'application/x-rar-compressed' + || nodes[0].attributes.getcontenttype === 'application/x-7z-compressed' + || nodes[0].attributes.getcontenttype === 'application/x-deb' + || nodes[0].attributes.getcontenttype === 'application/x-bzip2' + ) { + return (nodes[0].permissions & Permission.UPDATE) !== 0 + } + + return false + }, + async exec(node: Node, view: View, dir: string) { + var data = { + nameOfFile: node.attributes.basename, + directory: dir, + external: node.attributes["mount-type"].startsWith("external") ? 1 : 0, + mime: node.attributes.mime, + }; + const url = generateUrl('/apps/extract/ajax/extract.php') + axios.post(url, data) + .then(resp => resp.data) + .then(data => { + // We need the extracted folder so we can emit it in the next step. + // Just like it's done when a new folder is created. + const time = data['extracted']['mtime'] * 1000 + const folder = new Folder({ + id: data['extracted']['fileId'], + source: data['extracted']['source'], + root: data['extracted']['root'], + owner: data['extracted']['owner'], + permissions: data['extracted']['permissions'], + mtime: new Date(time), + // Include mount-type from parent folder as this is inherited + attributes: { + 'mount-type': data['extracted']['mount-type'], + 'owner-id': data['extracted']['owner'], + 'owner-display-name': data['extracted']['owner-display-name'], + }, + }) + + emit('files:node:created', folder) + + window.OCP.Files.Router.goToRoute( + null, // use default route + { view: 'files', fileid: data['fileId'] }, + { dir: dir }, + ) + return null + + }) + .catch(error => { + console.log('Could not send extract request.') + console.log(error) + }) + return null + }, + order: 25, +}) \ No newline at end of file diff --git a/src/init.ts b/src/init.ts new file mode 100644 index 0000000..afc1303 --- /dev/null +++ b/src/init.ts @@ -0,0 +1,5 @@ +import { registerFileAction } from '@nextcloud/files' + +import { action as extractAction } from './actions/extract-action' + +registerFileAction(extractAction) \ No newline at end of file diff --git a/vite.config.js b/vite.config.js new file mode 100644 index 0000000..90a9309 --- /dev/null +++ b/vite.config.js @@ -0,0 +1,14 @@ +/** + * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +import path from 'path' +import { createAppConfig } from '@nextcloud/vite-config' + +export default createAppConfig({ + 'init': path.join(__dirname, 'src', 'init.ts'), + 'extractAction': path.join(__dirname, 'src/actions', 'extract-action.ts'), +}, { + inlineCSS: false, +}) \ No newline at end of file