From 8046ad8b1b04df5ddf7b174d395cafa748b8e412 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 18:45:18 +0200 Subject: [PATCH 01/16] ci(PHP): Add CI tools for backend code Signed-off-by: Joas Schilling --- .gitignore | 3 + .php-cs-fixer.dist.php | 22 + composer.json | 30 +- composer.lock | 4185 +------------------- psalm.xml | 1 + tests/bootstrap.php | 24 +- tests/phpunit.xml | 13 +- tests/psalm-baseline.xml | 2 + vendor-bin/csfixer/composer.json | 12 + vendor-bin/csfixer/composer.lock | 171 + vendor-bin/nextcloud-ocp/composer.json | 5 + vendor-bin/nextcloud-ocp/composer.lock | 376 ++ vendor-bin/openapi-extractor/composer.json | 10 + vendor-bin/openapi-extractor/composer.lock | 246 ++ vendor-bin/phpunit/composer.json | 11 + vendor-bin/phpunit/composer.lock | 1786 +++++++++ vendor-bin/psalm/composer.json | 11 + vendor-bin/psalm/composer.lock | 3361 ++++++++++++++++ 18 files changed, 6091 insertions(+), 4178 deletions(-) create mode 100644 .php-cs-fixer.dist.php create mode 100644 tests/psalm-baseline.xml create mode 100644 vendor-bin/csfixer/composer.json create mode 100644 vendor-bin/csfixer/composer.lock create mode 100644 vendor-bin/nextcloud-ocp/composer.json create mode 100644 vendor-bin/nextcloud-ocp/composer.lock create mode 100644 vendor-bin/openapi-extractor/composer.json create mode 100644 vendor-bin/openapi-extractor/composer.lock create mode 100644 vendor-bin/phpunit/composer.json create mode 100644 vendor-bin/phpunit/composer.lock create mode 100644 vendor-bin/psalm/composer.json create mode 100644 vendor-bin/psalm/composer.lock diff --git a/.gitignore b/.gitignore index ec3df89..3bdcefc 100644 --- a/.gitignore +++ b/.gitignore @@ -2,5 +2,8 @@ # SPDX-License-Identifier: AGPL-3.0-or-later /node_modules/ /vendor/ +/vendor-bin/*/vendor +.php-cs-fixer.cache +tests/.phpunit.cache npm-debug.log* /build/ diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php new file mode 100644 index 0000000..f51434d --- /dev/null +++ b/.php-cs-fixer.dist.php @@ -0,0 +1,22 @@ +getFinder() + ->notPath('build') + ->notPath('l10n') + ->notPath('node_modules') + ->notPath('src') + ->notPath('vendor') + ->in(__DIR__); +return $config; diff --git a/composer.json b/composer.json index 8d641e5..68f5254 100644 --- a/composer.json +++ b/composer.json @@ -9,15 +9,6 @@ "email": "frank@nextcloud.com" } ], - "require": { - "php": ">=8.1" - }, - "require-dev": { - "nextcloud/coding-standard": "^1.3", - "nextcloud/ocp": "dev-master", - "phpunit/phpunit": "^9.6", - "vimeo/psalm": "^5.26" - }, "autoload": { "psr-4": { "OCA\\Absence\\": "lib/" @@ -29,15 +20,32 @@ } }, "scripts": { + "post-install-cmd": [ + "@composer bin all install --ansi", + "composer dump-autoload" + ], + "post-update-cmd": [ + "@composer bin all install --ansi", + "composer dump-autoload" + ], + "lint": "find . -name \\*.php -not -path './vendor/*' -not -path './vendor-bin/*' -not -path './tests/Integration/vendor/*' -not -path './build/*' -print0 | xargs -0 -n200 php -l", "cs:check": "php-cs-fixer fix --dry-run --diff", "cs:fix": "php-cs-fixer fix", - "psalm": "psalm --no-cache", - "test:unit": "phpunit --config tests/phpunit.xml" + "psalm": "psalm --no-cache --threads=$(nproc)", + "psalm:update-baseline": "psalm --threads=1 --update-baseline", + "test:unit": "phpunit -c tests/phpunit.xml --colors=always --fail-on-warning --fail-on-risky --display-deprecations --display-phpunit-deprecations" }, "config": { "allow-plugins": { + "bamarni/composer-bin-plugin": true, "php-http/discovery": true }, + "platform": { + "php": "8.2" + }, "sort-packages": true + }, + "require": { + "bamarni/composer-bin-plugin": "^1.9.1" } } diff --git a/composer.lock b/composer.lock index 9a7e9f9..b9b01cf 100644 --- a/composer.lock +++ b/composer.lock @@ -4,4187 +4,76 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "9c67dda6b0b246ba998448cd21e18060", - "packages": [], - "packages-dev": [ + "content-hash": "6a10d1d1e488321a40a1ed864238ba76", + "packages": [ { - "name": "amphp/amp", - "version": "v2.6.5", + "name": "bamarni/composer-bin-plugin", + "version": "1.9.1", "source": { "type": "git", - "url": "https://github.com/amphp/amp.git", - "reference": "d7dda98dae26e56f3f6fcfbf1c1f819c9a993207" + "url": "https://github.com/bamarni/composer-bin-plugin.git", + "reference": "641d0663f5ac270b1aeec4337b7856f76204df47" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/amp/zipball/d7dda98dae26e56f3f6fcfbf1c1f819c9a993207", - "reference": "d7dda98dae26e56f3f6fcfbf1c1f819c9a993207", + "url": "https://api.github.com/repos/bamarni/composer-bin-plugin/zipball/641d0663f5ac270b1aeec4337b7856f76204df47", + "reference": "641d0663f5ac270b1aeec4337b7856f76204df47", "shasum": "" }, "require": { - "php": ">=7.1" + "composer-plugin-api": "^2.0", + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "amphp/php-cs-fixer-config": "dev-master", - "amphp/phpunit-util": "^1", + "composer/composer": "^2.2.26", "ext-json": "*", - "jetbrains/phpstorm-stubs": "^2019.3", - "phpunit/phpunit": "^7 | ^8 | ^9", - "react/promise": "^2", - "vimeo/psalm": "^3.12" - }, - "type": "library", - "autoload": { - "files": [ - "lib/functions.php", - "lib/Internal/functions.php" - ], - "psr-4": { - "Amp\\": "lib" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Daniel Lowrey", - "email": "rdlowrey@php.net" - }, - { - "name": "Aaron Piotrowski", - "email": "aaron@trowski.com" - }, - { - "name": "Bob Weinand", - "email": "bobwei9@hotmail.com" - }, - { - "name": "Niklas Keller", - "email": "me@kelunik.com" - } - ], - "description": "A non-blocking concurrency framework for PHP applications.", - "homepage": "https://amphp.org/amp", - "keywords": [ - "async", - "asynchronous", - "awaitable", - "concurrency", - "event", - "event-loop", - "future", - "non-blocking", - "promise" - ], - "support": { - "irc": "irc://irc.freenode.org/amphp", - "issues": "https://github.com/amphp/amp/issues", - "source": "https://github.com/amphp/amp/tree/v2.6.5" - }, - "funding": [ - { - "url": "https://github.com/amphp", - "type": "github" - } - ], - "time": "2025-09-03T19:41:28+00:00" - }, - { - "name": "amphp/byte-stream", - "version": "v1.8.2", - "source": { - "type": "git", - "url": "https://github.com/amphp/byte-stream.git", - "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/amphp/byte-stream/zipball/4f0e968ba3798a423730f567b1b50d3441c16ddc", - "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc", - "shasum": "" - }, - "require": { - "amphp/amp": "^2", - "php": ">=7.1" - }, - "require-dev": { - "amphp/php-cs-fixer-config": "dev-master", - "amphp/phpunit-util": "^1.4", - "friendsofphp/php-cs-fixer": "^2.3", - "jetbrains/phpstorm-stubs": "^2019.3", - "phpunit/phpunit": "^6 || ^7 || ^8", - "psalm/phar": "^3.11.4" - }, - "type": "library", - "autoload": { - "files": [ - "lib/functions.php" - ], - "psr-4": { - "Amp\\ByteStream\\": "lib" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Aaron Piotrowski", - "email": "aaron@trowski.com" - }, - { - "name": "Niklas Keller", - "email": "me@kelunik.com" - } - ], - "description": "A stream abstraction to make working with non-blocking I/O simple.", - "homepage": "https://amphp.org/byte-stream", - "keywords": [ - "amp", - "amphp", - "async", - "io", - "non-blocking", - "stream" - ], - "support": { - "issues": "https://github.com/amphp/byte-stream/issues", - "source": "https://github.com/amphp/byte-stream/tree/v1.8.2" - }, - "funding": [ - { - "url": "https://github.com/amphp", - "type": "github" - } - ], - "time": "2024-04-13T18:00:56+00:00" - }, - { - "name": "composer/pcre", - "version": "3.4.0", - "source": { - "type": "git", - "url": "https://github.com/composer/pcre.git", - "reference": "d5a341b3fb61f3001970940afb1d332968a183ed" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/d5a341b3fb61f3001970940afb1d332968a183ed", - "reference": "d5a341b3fb61f3001970940afb1d332968a183ed", - "shasum": "" - }, - "require": { - "php": "^7.4 || ^8.0" - }, - "conflict": { - "phpstan/phpstan": "<2.2.2" - }, - "require-dev": { - "phpstan/phpstan": "^2", - "phpstan/phpstan-deprecation-rules": "^2", - "phpstan/phpstan-strict-rules": "^2", - "phpunit/phpunit": "^9" - }, - "type": "library", - "extra": { - "phpstan": { - "includes": [ - "extension.neon" - ] - }, - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\Pcre\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - } - ], - "description": "PCRE wrapping library that offers type-safe preg_* replacements.", - "keywords": [ - "PCRE", - "preg", - "regex", - "regular expression" - ], - "support": { - "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.4.0" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - } - ], - "time": "2026-06-07T11:47:49+00:00" - }, - { - "name": "composer/semver", - "version": "3.4.4", - "source": { - "type": "git", - "url": "https://github.com/composer/semver.git", - "reference": "198166618906cb2de69b95d7d47e5fa8aa1b2b95" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/198166618906cb2de69b95d7d47e5fa8aa1b2b95", - "reference": "198166618906cb2de69b95d7d47e5fa8aa1b2b95", - "shasum": "" - }, - "require": { - "php": "^5.3.2 || ^7.0 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^1.11", - "symfony/phpunit-bridge": "^3 || ^7" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\Semver\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nils Adermann", - "email": "naderman@naderman.de", - "homepage": "http://www.naderman.de" - }, - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - }, - { - "name": "Rob Bast", - "email": "rob.bast@gmail.com", - "homepage": "http://robbast.nl" - } - ], - "description": "Semver library that offers utilities, version constraint parsing and validation.", - "keywords": [ - "semantic", - "semver", - "validation", - "versioning" - ], - "support": { - "irc": "ircs://irc.libera.chat:6697/composer", - "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.4.4" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - } - ], - "time": "2025-08-20T19:15:30+00:00" - }, - { - "name": "composer/xdebug-handler", - "version": "3.0.5", - "source": { - "type": "git", - "url": "https://github.com/composer/xdebug-handler.git", - "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef", - "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef", - "shasum": "" - }, - "require": { - "composer/pcre": "^1 || ^2 || ^3", - "php": "^7.2.5 || ^8.0", - "psr/log": "^1 || ^2 || ^3" - }, - "require-dev": { - "phpstan/phpstan": "^1.0", - "phpstan/phpstan-strict-rules": "^1.1", - "phpunit/phpunit": "^8.5 || ^9.6 || ^10.5" - }, - "type": "library", - "autoload": { - "psr-4": { - "Composer\\XdebugHandler\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "John Stevenson", - "email": "john-stevenson@blueyonder.co.uk" - } - ], - "description": "Restarts a process without Xdebug.", - "keywords": [ - "Xdebug", - "performance" - ], - "support": { - "irc": "ircs://irc.libera.chat:6697/composer", - "issues": "https://github.com/composer/xdebug-handler/issues", - "source": "https://github.com/composer/xdebug-handler/tree/3.0.5" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2024-05-06T16:37:16+00:00" - }, - { - "name": "dnoegel/php-xdg-base-dir", - "version": "v0.1.1", - "source": { - "type": "git", - "url": "https://github.com/dnoegel/php-xdg-base-dir.git", - "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", - "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "require-dev": { - "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" - }, - "type": "library", - "autoload": { - "psr-4": { - "XdgBaseDir\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "implementation of xdg base directory specification for php", - "support": { - "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", - "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" - }, - "time": "2019-12-04T15:06:13+00:00" - }, - { - "name": "doctrine/deprecations", - "version": "1.1.6", - "source": { - "type": "git", - "url": "https://github.com/doctrine/deprecations.git", - "reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca", - "reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "conflict": { - "phpunit/phpunit": "<=7.5 || >=14" - }, - "require-dev": { - "doctrine/coding-standard": "^9 || ^12 || ^14", - "phpstan/phpstan": "1.4.10 || 2.1.30", - "phpstan/phpstan-phpunit": "^1.0 || ^2", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12.4 || ^13.0", - "psr/log": "^1 || ^2 || ^3" - }, - "suggest": { - "psr/log": "Allows logging deprecations via PSR-3 logger implementation" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Deprecations\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", - "homepage": "https://www.doctrine-project.org/", - "support": { - "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/1.1.6" - }, - "time": "2026-02-07T07:09:04+00:00" - }, - { - "name": "doctrine/instantiator", - "version": "2.1.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/23da848e1a2308728fe5fdddabf4be17ff9720c7", - "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7", - "shasum": "" - }, - "require": { - "php": "^8.4" - }, - "require-dev": { - "doctrine/coding-standard": "^14", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^1.2", - "phpstan/phpstan": "^2.1", - "phpstan/phpstan-phpunit": "^2.0", - "phpunit/phpunit": "^10.5.58" - }, - "type": "library", - "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": "https://ocramius.github.io/" - } - ], - "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" - ], - "support": { - "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/2.1.0" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", - "type": "tidelift" - } - ], - "time": "2026-01-05T06:47:08+00:00" - }, - { - "name": "felixfbecker/advanced-json-rpc", - "version": "v3.2.1", - "source": { - "type": "git", - "url": "https://github.com/felixfbecker/php-advanced-json-rpc.git", - "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/felixfbecker/php-advanced-json-rpc/zipball/b5f37dbff9a8ad360ca341f3240dc1c168b45447", - "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447", - "shasum": "" - }, - "require": { - "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0", - "php": "^7.1 || ^8.0", - "phpdocumentor/reflection-docblock": "^4.3.4 || ^5.0.0" - }, - "require-dev": { - "phpunit/phpunit": "^7.0 || ^8.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "AdvancedJsonRpc\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "ISC" - ], - "authors": [ - { - "name": "Felix Becker", - "email": "felix.b@outlook.com" - } - ], - "description": "A more advanced JSONRPC implementation", - "support": { - "issues": "https://github.com/felixfbecker/php-advanced-json-rpc/issues", - "source": "https://github.com/felixfbecker/php-advanced-json-rpc/tree/v3.2.1" - }, - "time": "2021-06-11T22:34:44+00:00" - }, - { - "name": "felixfbecker/language-server-protocol", - "version": "v1.5.3", - "source": { - "type": "git", - "url": "https://github.com/felixfbecker/php-language-server-protocol.git", - "reference": "a9e113dbc7d849e35b8776da39edaf4313b7b6c9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/a9e113dbc7d849e35b8776da39edaf4313b7b6c9", - "reference": "a9e113dbc7d849e35b8776da39edaf4313b7b6c9", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "require-dev": { - "phpstan/phpstan": "*", - "squizlabs/php_codesniffer": "^3.1", - "vimeo/psalm": "^4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "LanguageServerProtocol\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "ISC" - ], - "authors": [ - { - "name": "Felix Becker", - "email": "felix.b@outlook.com" - } - ], - "description": "PHP classes for the Language Server Protocol", - "keywords": [ - "language", - "microsoft", - "php", - "server" - ], - "support": { - "issues": "https://github.com/felixfbecker/php-language-server-protocol/issues", - "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/v1.5.3" - }, - "time": "2024-04-30T00:40:11+00:00" - }, - { - "name": "fidry/cpu-core-counter", - "version": "1.3.0", - "source": { - "type": "git", - "url": "https://github.com/theofidry/cpu-core-counter.git", - "reference": "db9508f7b1474469d9d3c53b86f817e344732678" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/db9508f7b1474469d9d3c53b86f817e344732678", - "reference": "db9508f7b1474469d9d3c53b86f817e344732678", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "fidry/makefile": "^0.2.0", - "fidry/php-cs-fixer-config": "^1.1.2", - "phpstan/extension-installer": "^1.2.0", - "phpstan/phpstan": "^2.0", - "phpstan/phpstan-deprecation-rules": "^2.0.0", - "phpstan/phpstan-phpunit": "^2.0", - "phpstan/phpstan-strict-rules": "^2.0", - "phpunit/phpunit": "^8.5.31 || ^9.5.26", - "webmozarts/strict-phpunit": "^7.5" - }, - "type": "library", - "autoload": { - "psr-4": { - "Fidry\\CpuCoreCounter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Théo FIDRY", - "email": "theo.fidry@gmail.com" - } - ], - "description": "Tiny utility to get the number of CPU cores.", - "keywords": [ - "CPU", - "core" - ], - "support": { - "issues": "https://github.com/theofidry/cpu-core-counter/issues", - "source": "https://github.com/theofidry/cpu-core-counter/tree/1.3.0" - }, - "funding": [ - { - "url": "https://github.com/theofidry", - "type": "github" - } - ], - "time": "2025-08-14T07:29:31+00:00" - }, - { - "name": "kubawerlos/php-cs-fixer-custom-fixers", - "version": "v3.37.2", - "source": { - "type": "git", - "url": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers.git", - "reference": "678df979ce743466b42ddb6eea46b3f4c9a7bade" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/kubawerlos/php-cs-fixer-custom-fixers/zipball/678df979ce743466b42ddb6eea46b3f4c9a7bade", - "reference": "678df979ce743466b42ddb6eea46b3f4c9a7bade", - "shasum": "" - }, - "require": { - "ext-filter": "*", - "ext-tokenizer": "*", - "friendsofphp/php-cs-fixer": "^3.87", - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.6.34 || ^10.5.63 || ^11.5.55" - }, - "type": "library", - "autoload": { - "psr-4": { - "PhpCsFixerCustomFixers\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Kuba Werłos", - "email": "werlos@gmail.com" - } - ], - "description": "A set of custom fixers for PHP CS Fixer", - "support": { - "issues": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/issues", - "source": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/tree/v3.37.2" - }, - "funding": [ - { - "url": "https://github.com/kubawerlos", - "type": "github" - } - ], - "time": "2026-05-12T16:22:19+00:00" - }, - { - "name": "myclabs/deep-copy", - "version": "1.13.4", - "source": { - "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/07d290f0c47959fd5eed98c95ee5602db07e0b6a", - "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "conflict": { - "doctrine/collections": "<1.6.8", - "doctrine/common": "<2.13.3 || >=3 <3.2.2" - }, - "require-dev": { - "doctrine/collections": "^1.6.8", - "doctrine/common": "^2.13.3 || ^3.2.2", - "phpspec/prophecy": "^1.10", - "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" - }, - "type": "library", - "autoload": { - "files": [ - "src/DeepCopy/deep_copy.php" - ], - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ], - "support": { - "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.13.4" - }, - "funding": [ - { - "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", - "type": "tidelift" - } - ], - "time": "2025-08-01T08:46:24+00:00" - }, - { - "name": "netresearch/jsonmapper", - "version": "v4.5.0", - "source": { - "type": "git", - "url": "https://github.com/cweiske/jsonmapper.git", - "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8e76efb98ee8b6afc54687045e1b8dba55ac76e5", - "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-pcre": "*", - "ext-reflection": "*", - "ext-spl": "*", - "php": ">=7.1" - }, - "require-dev": { - "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0 || ~10.0", - "squizlabs/php_codesniffer": "~3.5" - }, - "type": "library", - "autoload": { - "psr-0": { - "JsonMapper": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "OSL-3.0" - ], - "authors": [ - { - "name": "Christian Weiske", - "email": "cweiske@cweiske.de", - "homepage": "http://github.com/cweiske/jsonmapper/", - "role": "Developer" - } - ], - "description": "Map nested JSON structures onto PHP classes", - "support": { - "email": "cweiske@cweiske.de", - "issues": "https://github.com/cweiske/jsonmapper/issues", - "source": "https://github.com/cweiske/jsonmapper/tree/v4.5.0" - }, - "time": "2024-09-08T10:13:13+00:00" - }, - { - "name": "nextcloud/coding-standard", - "version": "v1.5.0", - "source": { - "type": "git", - "url": "https://github.com/nextcloud/coding-standard.git", - "reference": "80547a93236fbb9c783e05f0f0899043851b0dba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/80547a93236fbb9c783e05f0f0899043851b0dba", - "reference": "80547a93236fbb9c783e05f0f0899043851b0dba", - "shasum": "" - }, - "require": { - "kubawerlos/php-cs-fixer-custom-fixers": "^3.22", - "php": "^8.0", - "php-cs-fixer/shim": "^3.17" - }, - "type": "library", - "autoload": { - "psr-4": { - "Nextcloud\\CodingStandard\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Christoph Wurst", - "email": "christoph@winzerhof-wurst.at" - } - ], - "description": "Nextcloud coding standards for the php cs fixer", - "keywords": [ - "dev" - ], - "support": { - "issues": "https://github.com/nextcloud/coding-standard/issues", - "source": "https://github.com/nextcloud/coding-standard/tree/v1.5.0" - }, - "time": "2026-05-19T18:30:09+00:00" - }, - { - "name": "nextcloud/ocp", - "version": "dev-master", - "source": { - "type": "git", - "url": "https://github.com/nextcloud-deps/ocp.git", - "reference": "ace0c099d516b8f24b32ef085f3d310dfd59fe45" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nextcloud-deps/ocp/zipball/ace0c099d516b8f24b32ef085f3d310dfd59fe45", - "reference": "ace0c099d516b8f24b32ef085f3d310dfd59fe45", - "shasum": "" - }, - "require": { - "php": "~8.3 || ~8.4 || ~8.5", - "psr/clock": "^1.0", - "psr/container": "^2.0.2", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0.3", - "psr/log": "^3.0.2" - }, - "default-branch": true, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "35.0.0-dev" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "AGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Christoph Wurst", - "email": "christoph@winzerhof-wurst.at" - }, - { - "name": "Joas Schilling", - "email": "coding@schilljs.com" - } - ], - "description": "Composer package containing Nextcloud's public OCP API and the unstable NCU API", - "support": { - "issues": "https://github.com/nextcloud-deps/ocp/issues", - "source": "https://github.com/nextcloud-deps/ocp/tree/master" - }, - "time": "2026-07-10T01:50:45+00:00" - }, - { - "name": "nikic/php-parser", - "version": "v4.19.5", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "51bd93cc741b7fc3d63d20b6bdcd99fdaa359837" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/51bd93cc741b7fc3d63d20b6bdcd99fdaa359837", - "reference": "51bd93cc741b7fc3d63d20b6bdcd99fdaa359837", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": ">=7.1" - }, - "require-dev": { - "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" - }, - "bin": [ - "bin/php-parse" - ], - "type": "library", - "autoload": { - "psr-4": { - "PhpParser\\": "lib/PhpParser" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Nikita Popov" - } - ], - "description": "A PHP parser written in PHP", - "keywords": [ - "parser", - "php" - ], - "support": { - "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.5" - }, - "time": "2025-12-06T11:45:25+00:00" - }, - { - "name": "phar-io/manifest", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "54750ef60c58e43759730615a392c31c80e23176" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176", - "reference": "54750ef60c58e43759730615a392c31c80e23176", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "ext-phar": "*", - "ext-xmlwriter": "*", - "phar-io/version": "^3.0.1", - "php": "^7.2 || ^8.0" - }, - "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": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "support": { - "issues": "https://github.com/phar-io/manifest/issues", - "source": "https://github.com/phar-io/manifest/tree/2.0.4" - }, - "funding": [ - { - "url": "https://github.com/theseer", - "type": "github" - } - ], - "time": "2024-03-03T12:33:53+00:00" - }, - { - "name": "phar-io/version", - "version": "3.2.1", - "source": { - "type": "git", - "url": "https://github.com/phar-io/version.git", - "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", - "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Library for handling version information and constraints", - "support": { - "issues": "https://github.com/phar-io/version/issues", - "source": "https://github.com/phar-io/version/tree/3.2.1" - }, - "time": "2022-02-21T01:04:05+00:00" - }, - { - "name": "php-cs-fixer/shim", - "version": "v3.95.13", - "source": { - "type": "git", - "url": "https://github.com/PHP-CS-Fixer/shim.git", - "reference": "5041a7367194b6d67a1664d60b42af52dcc537ff" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/shim/zipball/5041a7367194b6d67a1664d60b42af52dcc537ff", - "reference": "5041a7367194b6d67a1664d60b42af52dcc537ff", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-tokenizer": "*", - "php": "^7.4 || ^8.0" - }, - "replace": { - "friendsofphp/php-cs-fixer": "self.version" - }, - "suggest": { - "ext-dom": "For handling output formats in XML", - "ext-mbstring": "For handling non-UTF8 characters." - }, - "bin": [ - "php-cs-fixer", - "php-cs-fixer.phar" - ], - "type": "application", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Dariusz Rumiński", - "email": "dariusz.ruminski@gmail.com" - } - ], - "description": "A tool to automatically fix PHP code style", - "support": { - "issues": "https://github.com/PHP-CS-Fixer/shim/issues", - "source": "https://github.com/PHP-CS-Fixer/shim/tree/v3.95.13" - }, - "time": "2026-07-10T09:23:51+00:00" - }, - { - "name": "phpdocumentor/reflection-common", - "version": "2.2.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-2.x": "2.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" - ], - "support": { - "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", - "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" - }, - "time": "2020-06-27T09:03:43+00:00" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "5.6.7", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "31a105931bc8ffa3a123383829772e832fd8d903" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/31a105931bc8ffa3a123383829772e832fd8d903", - "reference": "31a105931bc8ffa3a123383829772e832fd8d903", - "shasum": "" - }, - "require": { - "doctrine/deprecations": "^1.1", - "ext-filter": "*", - "php": "^7.4 || ^8.0", - "phpdocumentor/reflection-common": "^2.2", - "phpdocumentor/type-resolver": "^1.7", - "phpstan/phpdoc-parser": "^1.7|^2.0", - "webmozart/assert": "^1.9.1 || ^2" - }, - "require-dev": { - "mockery/mockery": "~1.3.5 || ~1.6.0", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^1.8", - "phpstan/phpstan-mockery": "^1.1", - "phpstan/phpstan-webmozart-assert": "^1.2", - "phpunit/phpunit": "^9.5", - "psalm/phar": "^5.26" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.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" - }, - { - "name": "Jaap van Otterdijk", - "email": "opensource@ijaap.nl" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "support": { - "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.6.7" - }, - "time": "2026-03-18T20:47:46+00:00" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "1.12.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "92a98ada2b93d9b201a613cb5a33584dde25f195" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/92a98ada2b93d9b201a613cb5a33584dde25f195", - "reference": "92a98ada2b93d9b201a613cb5a33584dde25f195", - "shasum": "" - }, - "require": { - "doctrine/deprecations": "^1.0", - "php": "^7.3 || ^8.0", - "phpdocumentor/reflection-common": "^2.0", - "phpstan/phpdoc-parser": "^1.18|^2.0" - }, - "require-dev": { - "ext-tokenizer": "*", - "phpbench/phpbench": "^1.2", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^1.8", - "phpstan/phpstan-phpunit": "^1.1", - "phpunit/phpunit": "^9.5", - "rector/rector": "^0.13.9", - "vimeo/psalm": "^4.25" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-1.x": "1.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": "A PSR-5 based resolver of Class names, Types and Structural Element Names", - "support": { - "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.12.0" - }, - "time": "2025-11-21T15:09:14+00:00" - }, - { - "name": "phpstan/phpdoc-parser", - "version": "2.3.3", - "source": { - "type": "git", - "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "fb19eedd2bb67ff8cf7a5502ad329e701d6398a3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/fb19eedd2bb67ff8cf7a5502ad329e701d6398a3", - "reference": "fb19eedd2bb67ff8cf7a5502ad329e701d6398a3", - "shasum": "" - }, - "require": { - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "doctrine/annotations": "^2.0", - "nikic/php-parser": "^5.3.0", - "php-parallel-lint/php-parallel-lint": "^1.2", - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^2.0", - "phpstan/phpstan-phpunit": "^2.0", - "phpstan/phpstan-strict-rules": "^2.0", - "phpunit/phpunit": "^9.6", - "symfony/process": "^5.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "PHPStan\\PhpDocParser\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "PHPDoc parser with support for nullable, intersection and generic types", - "support": { - "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.3" - }, - "time": "2026-07-08T07:01:06+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "9.2.32", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/85402a822d1ecf1db1096959413d35e1c37cf1a5", - "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "ext-xmlwriter": "*", - "nikic/php-parser": "^4.19.1 || ^5.1.0", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.6", - "phpunit/php-text-template": "^2.0.4", - "sebastian/code-unit-reverse-lookup": "^2.0.3", - "sebastian/complexity": "^2.0.3", - "sebastian/environment": "^5.1.5", - "sebastian/lines-of-code": "^1.0.4", - "sebastian/version": "^3.0.2", - "theseer/tokenizer": "^1.2.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.6" - }, - "suggest": { - "ext-pcov": "PHP extension that provides line coverage", - "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "9.2.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 provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.32" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2024-08-22T04:23:01+00:00" - }, - { - "name": "phpunit/php-file-iterator", - "version": "3.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-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": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-12-02T12:48:52+00:00" - }, - { - "name": "phpunit/php-invoker", - "version": "3.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcntl": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-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": "Invoke callables with a timeout", - "homepage": "https://github.com/sebastianbergmann/php-invoker/", - "keywords": [ - "process" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:58:55+00:00" - }, - { - "name": "phpunit/php-text-template", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "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", - "role": "lead" - } - ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", - "keywords": [ - "template" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T05:33:50+00:00" - }, - { - "name": "phpunit/php-timer", - "version": "5.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-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": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:16:10+00:00" - }, - { - "name": "phpunit/phpunit", - "version": "9.6.35", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "0edba2f3a0c48df3553cb9b640810b30df60302b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/0edba2f3a0c48df3553cb9b640810b30df60302b", - "reference": "0edba2f3a0c48df3553cb9b640810b30df60302b", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.5.0 || ^2", - "ext-dom": "*", - "ext-filter": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.13.4", - "phar-io/manifest": "^2.0.4", - "phar-io/version": "^3.2.1", - "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.32", - "phpunit/php-file-iterator": "^3.0.6", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.4", - "phpunit/php-timer": "^5.0.3", - "sebastian/cli-parser": "^1.0.2", - "sebastian/code-unit": "^1.0.8", - "sebastian/comparator": "^4.0.10", - "sebastian/diff": "^4.0.6", - "sebastian/environment": "^5.1.5", - "sebastian/exporter": "^4.0.8", - "sebastian/global-state": "^5.0.8", - "sebastian/object-enumerator": "^4.0.4", - "sebastian/resource-operations": "^3.0.4", - "sebastian/type": "^3.2.1", - "sebastian/version": "^3.0.2" - }, - "suggest": { - "ext-soap": "To be able to generate mocks based on WSDL files", - "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" - }, - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.6-dev" - } - }, - "autoload": { - "files": [ - "src/Framework/Assert/Functions.php" - ], - "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" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.35" - }, - "funding": [ - { - "url": "https://phpunit.de/sponsoring.html", - "type": "other" - } - ], - "time": "2026-07-06T14:48:07+00:00" - }, - { - "name": "psr/clock", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/clock.git", - "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", - "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", - "shasum": "" - }, - "require": { - "php": "^7.0 || ^8.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Psr\\Clock\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for reading the clock.", - "homepage": "https://github.com/php-fig/clock", - "keywords": [ - "clock", - "now", - "psr", - "psr-20", - "time" - ], - "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": "psr/container", - "version": "2.0.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", - "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", - "shasum": "" - }, - "require": { - "php": ">=7.4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", - "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" - ], - "support": { - "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/2.0.2" - }, - "time": "2021-11-05T16:47:00+00:00" - }, - { - "name": "psr/event-dispatcher", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/event-dispatcher.git", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", - "shasum": "" - }, - "require": { - "php": ">=7.2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\EventDispatcher\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Standard interfaces for event handling.", - "keywords": [ - "events", - "psr", - "psr-14" - ], - "support": { - "issues": "https://github.com/php-fig/event-dispatcher/issues", - "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" - }, - "time": "2019-01-08T18:20:26+00:00" - }, - { - "name": "psr/http-client", - "version": "1.0.3", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-client.git", - "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", - "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", - "shasum": "" - }, - "require": { - "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0 || ^2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Client\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for HTTP clients", - "homepage": "https://github.com/php-fig/http-client", - "keywords": [ - "http", - "http-client", - "psr", - "psr-18" - ], - "support": { - "source": "https://github.com/php-fig/http-client" - }, - "time": "2023-09-23T14:17:50+00:00" - }, - { - "name": "psr/http-message", - "version": "2.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-message.git", - "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", - "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Message\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for HTTP messages", - "homepage": "https://github.com/php-fig/http-message", - "keywords": [ - "http", - "http-message", - "psr", - "psr-7", - "request", - "response" - ], - "support": { - "source": "https://github.com/php-fig/http-message/tree/2.0" - }, - "time": "2023-04-04T09:54:51+00:00" - }, - { - "name": "psr/log", - "version": "3.0.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", - "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", - "shasum": "" - }, - "require": { - "php": ">=8.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Log\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ], - "support": { - "source": "https://github.com/php-fig/log/tree/3.0.2" - }, - "time": "2024-09-11T13:17:53+00:00" - }, - { - "name": "sebastian/cli-parser", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "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": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for parsing CLI options", - "homepage": "https://github.com/sebastianbergmann/cli-parser", - "support": { - "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2024-03-02T06:27:43+00:00" - }, - { - "name": "sebastian/code-unit", - "version": "1.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "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": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the PHP code units", - "homepage": "https://github.com/sebastianbergmann/code-unit", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:08:54+00:00" - }, - { - "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "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": "Looks up which function or method a line of code belongs to", - "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:30:19+00:00" - }, - { - "name": "sebastian/comparator", - "version": "4.0.10", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e4df00b9b3571187db2831ae9aada2c6efbd715d", - "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - } - ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "https://github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.10" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - }, - { - "url": "https://liberapay.com/sebastianbergmann", - "type": "liberapay" - }, - { - "url": "https://thanks.dev/u/gh/sebastianbergmann", - "type": "thanks_dev" - }, - { - "url": "https://tidelift.com/funding/github/packagist/sebastian/comparator", - "type": "tidelift" - } - ], - "time": "2026-01-24T09:22:56+00:00" - }, - { - "name": "sebastian/complexity", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "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", - "role": "lead" - } - ], - "description": "Library for calculating the complexity of PHP code units", - "homepage": "https://github.com/sebastianbergmann/complexity", - "support": { - "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-12-22T06:19:30+00:00" - }, - { - "name": "sebastian/diff", - "version": "4.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3", - "symfony/process": "^4.2 || ^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff", - "udiff", - "unidiff", - "unified diff" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2024-03-02T06:30:58+00:00" - }, - { - "name": "sebastian/environment", - "version": "5.1.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-posix": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:03:51+00:00" - }, - { - "name": "sebastian/exporter", - "version": "4.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/14c6ba52f95a36c3d27c835d65efc7123c446e8c", - "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "https://www.github.com/sebastianbergmann/exporter", - "keywords": [ - "export", - "exporter" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.8" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - }, - { - "url": "https://liberapay.com/sebastianbergmann", - "type": "liberapay" - }, - { - "url": "https://thanks.dev/u/gh/sebastianbergmann", - "type": "thanks_dev" - }, - { - "url": "https://tidelift.com/funding/github/packagist/sebastian/exporter", - "type": "tidelift" - } - ], - "time": "2025-09-24T06:03:27+00:00" - }, - { - "name": "sebastian/global-state", - "version": "5.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/b6781316bdcd28260904e7cc18ec983d0d2ef4f6", - "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-dom": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-uopz": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", - "keywords": [ - "global state" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.8" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - }, - { - "url": "https://liberapay.com/sebastianbergmann", - "type": "liberapay" - }, - { - "url": "https://thanks.dev/u/gh/sebastianbergmann", - "type": "thanks_dev" - }, - { - "url": "https://tidelift.com/funding/github/packagist/sebastian/global-state", - "type": "tidelift" - } - ], - "time": "2025-08-10T07:10:35+00:00" - }, - { - "name": "sebastian/lines-of-code", - "version": "1.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "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": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for counting the lines of code in PHP source code", - "homepage": "https://github.com/sebastianbergmann/lines-of-code", - "support": { - "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-12-22T06:20:34+00:00" - }, - { - "name": "sebastian/object-enumerator", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Traverses array structures and object graphs to enumerate all referenced objects", - "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:12:34+00:00" - }, - { - "name": "sebastian/object-reflector", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "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": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:14:26+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "4.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "539c6691e0623af6dc6f9c20384c120f963465a0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/539c6691e0623af6dc6f9c20384c120f963465a0", - "reference": "539c6691e0623af6dc6f9c20384c120f963465a0", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "https://github.com/sebastianbergmann/recursion-context", - "support": { - "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.6" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - }, - { - "url": "https://liberapay.com/sebastianbergmann", - "type": "liberapay" - }, - { - "url": "https://thanks.dev/u/gh/sebastianbergmann", - "type": "thanks_dev" - }, - { - "url": "https://tidelift.com/funding/github/packagist/sebastian/recursion-context", - "type": "tidelift" - } - ], - "time": "2025-08-10T06:57:39+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "3.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-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", - "support": { - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2024-03-14T16:00:52+00:00" - }, - { - "name": "sebastian/type", - "version": "3.2.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.2-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": "Collection of value objects that represent the types of the PHP type system", - "homepage": "https://github.com/sebastianbergmann/type", - "support": { - "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:13:03+00:00" - }, - { - "name": "sebastian/version", - "version": "3.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-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", - "support": { - "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:39:44+00:00" - }, - { - "name": "spatie/array-to-xml", - "version": "3.4.4", - "source": { - "type": "git", - "url": "https://github.com/spatie/array-to-xml.git", - "reference": "88b2f3852a922dd73177a68938f8eb2ec70c7224" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/88b2f3852a922dd73177a68938f8eb2ec70c7224", - "reference": "88b2f3852a922dd73177a68938f8eb2ec70c7224", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "php": "^8.0" - }, - "require-dev": { - "mockery/mockery": "^1.2", - "pestphp/pest": "^1.21", - "spatie/pest-plugin-snapshots": "^1.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Spatie\\ArrayToXml\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van der Herten", - "email": "freek@spatie.be", - "homepage": "https://freek.dev", - "role": "Developer" - } - ], - "description": "Convert an array to xml", - "homepage": "https://github.com/spatie/array-to-xml", - "keywords": [ - "array", - "convert", - "xml" - ], - "support": { - "source": "https://github.com/spatie/array-to-xml/tree/3.4.4" - }, - "funding": [ - { - "url": "https://spatie.be/open-source/support-us", - "type": "custom" - }, - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2025-12-15T09:00:41+00:00" - }, - { - "name": "symfony/console", - "version": "v7.4.14", - "source": { - "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "92f58bc4bf97a92ed1b9f367f0cd44f20bde0e87" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/92f58bc4bf97a92ed1b9f367f0cd44f20bde0e87", - "reference": "92f58bc4bf97a92ed1b9f367f0cd44f20bde0e87", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "symfony/deprecation-contracts": "^2.5|^3", - "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^2.5|^3", - "symfony/string": "^7.2|^8.0" - }, - "conflict": { - "symfony/dependency-injection": "<6.4", - "symfony/dotenv": "<6.4", - "symfony/event-dispatcher": "<6.4", - "symfony/lock": "<6.4", - "symfony/process": "<6.4" - }, - "provide": { - "psr/log-implementation": "1.0|2.0|3.0" - }, - "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^6.4|^7.0|^8.0", - "symfony/dependency-injection": "^6.4|^7.0|^8.0", - "symfony/event-dispatcher": "^6.4|^7.0|^8.0", - "symfony/http-foundation": "^6.4|^7.0|^8.0", - "symfony/http-kernel": "^6.4|^7.0|^8.0", - "symfony/lock": "^6.4|^7.0|^8.0", - "symfony/messenger": "^6.4|^7.0|^8.0", - "symfony/process": "^6.4|^7.0|^8.0", - "symfony/stopwatch": "^6.4|^7.0|^8.0", - "symfony/var-dumper": "^6.4|^7.0|^8.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Console\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "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": "Eases the creation of beautiful and testable command line interfaces", - "homepage": "https://symfony.com", - "keywords": [ - "cli", - "command-line", - "console", - "terminal" - ], - "support": { - "source": "https://github.com/symfony/console/tree/v7.4.14" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-06-16T11:50:14+00:00" - }, - { - "name": "symfony/deprecation-contracts", - "version": "v3.7.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "f3202fa1b5097b0af062dc978b32ecf63404e31d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/f3202fa1b5097b0af062dc978b32ecf63404e31d", - "reference": "f3202fa1b5097b0af062dc978b32ecf63404e31d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/contracts", - "name": "symfony/contracts" - }, - "branch-alias": { - "dev-main": "3.7-dev" - } - }, - "autoload": { - "files": [ - "function.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "A generic function and convention to trigger deprecation notices", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.7.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-06-05T06:23:12+00:00" - }, - { - "name": "symfony/filesystem", - "version": "v7.4.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/filesystem.git", - "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/d721ea61b4a5fba8c5b6e7c1feda19efea144b50", - "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.8" - }, - "require-dev": { - "symfony/process": "^6.4|^7.0|^8.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Filesystem\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "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": "Provides basic utilities for the filesystem", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/filesystem/tree/v7.4.11" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-05-11T16:38:44+00:00" - }, - { - "name": "symfony/polyfill-ctype", - "version": "v1.37.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "141046a8f9477948ff284fa65be2095baafb94f2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/141046a8f9477948ff284fa65be2095baafb94f2", - "reference": "141046a8f9477948ff284fa65be2095baafb94f2", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "provide": { - "ext-ctype": "*" - }, - "suggest": { - "ext-ctype": "For best performance" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/polyfill", - "name": "symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for ctype functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "ctype", - "polyfill", - "portable" - ], - "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.37.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-04-10T16:19:22+00:00" - }, - { - "name": "symfony/polyfill-intl-grapheme", - "version": "v1.38.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "e9247d281d694a5120554d9afaf54e070e88a603" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/e9247d281d694a5120554d9afaf54e070e88a603", - "reference": "e9247d281d694a5120554d9afaf54e070e88a603", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/polyfill", - "name": "symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Grapheme\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's grapheme_* functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "grapheme", - "intl", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.38.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-05-26T05:58:03+00:00" - }, - { - "name": "symfony/polyfill-intl-normalizer", - "version": "v1.38.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/2d446c214bdbe5b71bde5011b060a05fece3ae6b", - "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/polyfill", - "name": "symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Normalizer\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's Normalizer class and related functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "intl", - "normalizer", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.38.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-05-25T13:48:31+00:00" - }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.38.2", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", - "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", - "shasum": "" - }, - "require": { - "ext-iconv": "*", - "php": ">=7.2" - }, - "provide": { - "ext-mbstring": "*" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/polyfill", - "name": "symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for the Mbstring extension", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "mbstring", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.2" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-05-27T06:59:30+00:00" - }, - { - "name": "symfony/service-contracts", - "version": "v3.7.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/service-contracts.git", - "reference": "c0a284bab1ed8aa0417e3d69250ab437739563a0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/c0a284bab1ed8aa0417e3d69250ab437739563a0", - "reference": "c0a284bab1ed8aa0417e3d69250ab437739563a0", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "psr/container": "^1.1|^2.0", - "symfony/deprecation-contracts": "^2.5|^3" - }, - "conflict": { - "ext-psr": "<1.1|>=2" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/contracts", - "name": "symfony/contracts" - }, - "branch-alias": { - "dev-main": "3.7-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\Service\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to writing services", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.7.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-06-16T09:55:08+00:00" - }, - { - "name": "symfony/string", - "version": "v8.1.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/string.git", - "reference": "afd5944f4005862d961efb85c8bbd5c523c4e3c9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/afd5944f4005862d961efb85c8bbd5c523c4e3c9", - "reference": "afd5944f4005862d961efb85c8bbd5c523c4e3c9", - "shasum": "" - }, - "require": { - "php": ">=8.4.1", - "symfony/polyfill-ctype": "^1.8", - "symfony/polyfill-intl-grapheme": "^1.33", - "symfony/polyfill-intl-normalizer": "^1.0", - "symfony/polyfill-mbstring": "^1.0" - }, - "conflict": { - "symfony/translation-contracts": "<2.5" - }, - "require-dev": { - "symfony/emoji": "^7.4|^8.0", - "symfony/http-client": "^7.4|^8.0", - "symfony/intl": "^7.4|^8.0", - "symfony/translation-contracts": "^2.5|^3.0", - "symfony/var-exporter": "^7.4|^8.0" - }, - "type": "library", - "autoload": { - "files": [ - "Resources/functions.php" - ], - "psr-4": { - "Symfony\\Component\\String\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", - "homepage": "https://symfony.com", - "keywords": [ - "grapheme", - "i18n", - "string", - "unicode", - "utf-8", - "utf8" - ], - "support": { - "source": "https://github.com/symfony/string/tree/v8.1.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2026-05-29T05:06:50+00:00" - }, - { - "name": "theseer/tokenizer", - "version": "1.3.1", - "source": { - "type": "git", - "url": "https://github.com/theseer/tokenizer.git", - "reference": "b7489ce515e168639d17feec34b8847c326b0b3c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b7489ce515e168639d17feec34b8847c326b0b3c", - "reference": "b7489ce515e168639d17feec34b8847c326b0b3c", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-tokenizer": "*", - "ext-xmlwriter": "*", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - } - ], - "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", - "support": { - "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/1.3.1" - }, - "funding": [ - { - "url": "https://github.com/theseer", - "type": "github" - } - ], - "time": "2025-11-17T20:03:58+00:00" - }, - { - "name": "vimeo/psalm", - "version": "5.26.1", - "source": { - "type": "git", - "url": "https://github.com/vimeo/psalm.git", - "reference": "d747f6500b38ac4f7dfc5edbcae6e4b637d7add0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/vimeo/psalm/zipball/d747f6500b38ac4f7dfc5edbcae6e4b637d7add0", - "reference": "d747f6500b38ac4f7dfc5edbcae6e4b637d7add0", - "shasum": "" - }, - "require": { - "amphp/amp": "^2.4.2", - "amphp/byte-stream": "^1.5", - "composer-runtime-api": "^2", - "composer/semver": "^1.4 || ^2.0 || ^3.0", - "composer/xdebug-handler": "^2.0 || ^3.0", - "dnoegel/php-xdg-base-dir": "^0.1.1", - "ext-ctype": "*", - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-simplexml": "*", - "ext-tokenizer": "*", - "felixfbecker/advanced-json-rpc": "^3.1", - "felixfbecker/language-server-protocol": "^1.5.2", - "fidry/cpu-core-counter": "^0.4.1 || ^0.5.1 || ^1.0.0", - "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0", - "nikic/php-parser": "^4.17", - "php": "^7.4 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0", - "sebastian/diff": "^4.0 || ^5.0 || ^6.0", - "spatie/array-to-xml": "^2.17.0 || ^3.0", - "symfony/console": "^4.1.6 || ^5.0 || ^6.0 || ^7.0", - "symfony/filesystem": "^5.4 || ^6.0 || ^7.0" - }, - "conflict": { - "nikic/php-parser": "4.17.0" - }, - "provide": { - "psalm/psalm": "self.version" - }, - "require-dev": { - "amphp/phpunit-util": "^2.0", - "bamarni/composer-bin-plugin": "^1.4", - "brianium/paratest": "^6.9", - "ext-curl": "*", - "mockery/mockery": "^1.5", - "nunomaduro/mock-final-classes": "^1.1", - "php-parallel-lint/php-parallel-lint": "^1.2", - "phpstan/phpdoc-parser": "^1.6", - "phpunit/phpunit": "^9.6", - "psalm/plugin-mockery": "^1.1", - "psalm/plugin-phpunit": "^0.18", - "slevomat/coding-standard": "^8.4", - "squizlabs/php_codesniffer": "^3.6", - "symfony/process": "^4.4 || ^5.0 || ^6.0 || ^7.0" - }, - "suggest": { - "ext-curl": "In order to send data to shepherd", - "ext-igbinary": "^2.0.5 is required, used to serialize caching data" - }, - "bin": [ - "psalm", - "psalm-language-server", - "psalm-plugin", - "psalm-refactor", - "psalter" - ], - "type": "project", - "extra": { - "branch-alias": { - "dev-1.x": "1.x-dev", - "dev-2.x": "2.x-dev", - "dev-3.x": "3.x-dev", - "dev-4.x": "4.x-dev", - "dev-master": "5.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psalm\\": "src/Psalm/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Matthew Brown" - } - ], - "description": "A static analysis tool for finding errors in PHP applications", - "keywords": [ - "code", - "inspection", - "php", - "static analysis" - ], - "support": { - "docs": "https://psalm.dev/docs", - "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm" - }, - "time": "2024-09-08T18:53:08+00:00" - }, - { - "name": "webmozart/assert", - "version": "2.4.1", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "2ccb7c2e821038c03a3e6e1700c570c158c55f70" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/2ccb7c2e821038c03a3e6e1700c570c158c55f70", - "reference": "2ccb7c2e821038c03a3e6e1700c570c158c55f70", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "ext-date": "*", - "ext-filter": "*", - "php": "^8.2" - }, - "suggest": { - "ext-intl": "", - "ext-simplexml": "", - "ext-spl": "" + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8 || ^2.0", + "phpstan/phpstan-phpunit": "^1.1 || ^2.0", + "phpunit/phpunit": "^8.5 || ^9.6 || ^10.0", + "symfony/console": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", + "symfony/finder": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", + "symfony/process": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0" }, - "type": "library", + "type": "composer-plugin", "extra": { - "psalm": { - "pluginClass": "Webmozart\\Assert\\PsalmPlugin" - }, - "branch-alias": { - "dev-master": "2.0-dev", - "dev-feature/2-0": "2.0-dev" - } + "class": "Bamarni\\Composer\\Bin\\BamarniBinPlugin" }, "autoload": { "psr-4": { - "Webmozart\\Assert\\": "src/" + "Bamarni\\Composer\\Bin\\": "src" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - }, - { - "name": "Woody Gilk", - "email": "woody.gilk@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", + "description": "No conflicts for your bin dependencies", "keywords": [ - "assert", - "check", - "validate" + "composer", + "conflict", + "dependency", + "executable", + "isolation", + "tool" ], "support": { - "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/2.4.1" + "issues": "https://github.com/bamarni/composer-bin-plugin/issues", + "source": "https://github.com/bamarni/composer-bin-plugin/tree/1.9.1" }, - "time": "2026-06-15T15:31:57+00:00" + "time": "2026-02-04T10:18:12+00:00" } ], + "packages-dev": [], "aliases": [], "minimum-stability": "stable", - "stability-flags": { - "nextcloud/ocp": 20 - }, + "stability-flags": {}, "prefer-stable": false, "prefer-lowest": false, - "platform": { - "php": ">=8.1" - }, + "platform": {}, "platform-dev": {}, + "platform-overrides": { + "php": "8.2" + }, "plugin-api-version": "2.9.0" } diff --git a/psalm.xml b/psalm.xml index 779a52b..a6d132a 100644 --- a/psalm.xml +++ b/psalm.xml @@ -1,6 +1,7 @@ loadApp('absence'); diff --git a/tests/phpunit.xml b/tests/phpunit.xml index ba33ebe..674d946 100644 --- a/tests/phpunit.xml +++ b/tests/phpunit.xml @@ -4,18 +4,19 @@ - SPDX-License-Identifier: AGPL-3.0-or-later --> + xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/11.5/phpunit.xsd" + bootstrap="bootstrap.php" + cacheDirectory=".phpunit.cache" + colors="true" + cacheResult="false"> Unit - + ../lib - + diff --git a/tests/psalm-baseline.xml b/tests/psalm-baseline.xml new file mode 100644 index 0000000..c67b56a --- /dev/null +++ b/tests/psalm-baseline.xml @@ -0,0 +1,2 @@ + + diff --git a/vendor-bin/csfixer/composer.json b/vendor-bin/csfixer/composer.json new file mode 100644 index 0000000..ad83315 --- /dev/null +++ b/vendor-bin/csfixer/composer.json @@ -0,0 +1,12 @@ +{ + "config": { + "platform": { + "php": "8.2" + }, + "sort-packages": true + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.89.2", + "nextcloud/coding-standard": "^1.5.0" + } +} diff --git a/vendor-bin/csfixer/composer.lock b/vendor-bin/csfixer/composer.lock new file mode 100644 index 0000000..166b84c --- /dev/null +++ b/vendor-bin/csfixer/composer.lock @@ -0,0 +1,171 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "1e5846a9788727d51f204237b3b3c560", + "packages": [], + "packages-dev": [ + { + "name": "kubawerlos/php-cs-fixer-custom-fixers", + "version": "v3.37.2", + "source": { + "type": "git", + "url": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers.git", + "reference": "678df979ce743466b42ddb6eea46b3f4c9a7bade" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/kubawerlos/php-cs-fixer-custom-fixers/zipball/678df979ce743466b42ddb6eea46b3f4c9a7bade", + "reference": "678df979ce743466b42ddb6eea46b3f4c9a7bade", + "shasum": "" + }, + "require": { + "ext-filter": "*", + "ext-tokenizer": "*", + "friendsofphp/php-cs-fixer": "^3.87", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6.34 || ^10.5.63 || ^11.5.55" + }, + "type": "library", + "autoload": { + "psr-4": { + "PhpCsFixerCustomFixers\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kuba Werłos", + "email": "werlos@gmail.com" + } + ], + "description": "A set of custom fixers for PHP CS Fixer", + "support": { + "issues": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/issues", + "source": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/tree/v3.37.2" + }, + "funding": [ + { + "url": "https://github.com/kubawerlos", + "type": "github" + } + ], + "time": "2026-05-12T16:22:19+00:00" + }, + { + "name": "nextcloud/coding-standard", + "version": "v1.5.0", + "source": { + "type": "git", + "url": "https://github.com/nextcloud/coding-standard.git", + "reference": "80547a93236fbb9c783e05f0f0899043851b0dba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/80547a93236fbb9c783e05f0f0899043851b0dba", + "reference": "80547a93236fbb9c783e05f0f0899043851b0dba", + "shasum": "" + }, + "require": { + "kubawerlos/php-cs-fixer-custom-fixers": "^3.22", + "php": "^8.0", + "php-cs-fixer/shim": "^3.17" + }, + "type": "library", + "autoload": { + "psr-4": { + "Nextcloud\\CodingStandard\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christoph Wurst", + "email": "christoph@winzerhof-wurst.at" + } + ], + "description": "Nextcloud coding standards for the php cs fixer", + "keywords": [ + "dev" + ], + "support": { + "issues": "https://github.com/nextcloud/coding-standard/issues", + "source": "https://github.com/nextcloud/coding-standard/tree/v1.5.0" + }, + "time": "2026-05-19T18:30:09+00:00" + }, + { + "name": "php-cs-fixer/shim", + "version": "v3.95.17", + "source": { + "type": "git", + "url": "https://github.com/PHP-CS-Fixer/shim.git", + "reference": "fe9462e0b3e59b33ee076f6eda626b474b8cf363" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHP-CS-Fixer/shim/zipball/fe9462e0b3e59b33ee076f6eda626b474b8cf363", + "reference": "fe9462e0b3e59b33ee076f6eda626b474b8cf363", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "php": "^7.4 || ^8.0" + }, + "replace": { + "friendsofphp/php-cs-fixer": "self.version" + }, + "suggest": { + "ext-dom": "For handling output formats in XML", + "ext-mbstring": "For handling non-UTF8 characters." + }, + "bin": [ + "php-cs-fixer", + "php-cs-fixer.phar" + ], + "type": "application", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Dariusz Rumiński", + "email": "dariusz.ruminski@gmail.com" + } + ], + "description": "A tool to automatically fix PHP code style", + "support": { + "issues": "https://github.com/PHP-CS-Fixer/shim/issues", + "source": "https://github.com/PHP-CS-Fixer/shim/tree/v3.95.17" + }, + "time": "2026-07-24T13:55:04+00:00" + } + ], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": false, + "prefer-lowest": false, + "platform": {}, + "platform-dev": {}, + "platform-overrides": { + "php": "8.2" + }, + "plugin-api-version": "2.9.0" +} diff --git a/vendor-bin/nextcloud-ocp/composer.json b/vendor-bin/nextcloud-ocp/composer.json new file mode 100644 index 0000000..dfd8137 --- /dev/null +++ b/vendor-bin/nextcloud-ocp/composer.json @@ -0,0 +1,5 @@ +{ + "require-dev": { + "nextcloud/ocp": "dev-stable34" + } +} diff --git a/vendor-bin/nextcloud-ocp/composer.lock b/vendor-bin/nextcloud-ocp/composer.lock new file mode 100644 index 0000000..7b06d63 --- /dev/null +++ b/vendor-bin/nextcloud-ocp/composer.lock @@ -0,0 +1,376 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "6d8d2d5dafd09ef47b9d253d0014ed4f", + "packages": [], + "packages-dev": [ + { + "name": "nextcloud/ocp", + "version": "dev-stable34", + "source": { + "type": "git", + "url": "https://github.com/nextcloud-deps/ocp.git", + "reference": "81cbb2c594afe0fa978885bf7accd0440199520a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nextcloud-deps/ocp/zipball/81cbb2c594afe0fa978885bf7accd0440199520a", + "reference": "81cbb2c594afe0fa978885bf7accd0440199520a", + "shasum": "" + }, + "require": { + "php": "~8.2 || ~8.3 || ~8.4 || ~8.5", + "psr/clock": "^1.0", + "psr/container": "^2.0.2", + "psr/event-dispatcher": "^1.0", + "psr/http-client": "^1.0.3", + "psr/log": "^3.0.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-stable34": "34.0.0-dev" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "AGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Christoph Wurst", + "email": "christoph@winzerhof-wurst.at" + }, + { + "name": "Joas Schilling", + "email": "coding@schilljs.com" + } + ], + "description": "Composer package containing Nextcloud's public OCP API and the unstable NCU API", + "support": { + "issues": "https://github.com/nextcloud-deps/ocp/issues", + "source": "https://github.com/nextcloud-deps/ocp/tree/stable34" + }, + "time": "2026-07-16T01:28:13+00:00" + }, + { + "name": "psr/clock", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/clock.git", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Psr\\Clock\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for reading the clock.", + "homepage": "https://github.com/php-fig/clock", + "keywords": [ + "clock", + "now", + "psr", + "psr-20", + "time" + ], + "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": "psr/container", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "time": "2021-11-05T16:47:00+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client" + }, + "time": "2023-09-23T14:17:50+00:00" + }, + { + "name": "psr/http-message", + "version": "2.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/2.0" + }, + "time": "2023-04-04T09:54:51+00:00" + }, + { + "name": "psr/log", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/3.0.2" + }, + "time": "2024-09-11T13:17:53+00:00" + } + ], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": { + "nextcloud/ocp": 20 + }, + "prefer-stable": false, + "prefer-lowest": false, + "platform": {}, + "platform-dev": {}, + "plugin-api-version": "2.9.0" +} diff --git a/vendor-bin/openapi-extractor/composer.json b/vendor-bin/openapi-extractor/composer.json new file mode 100644 index 0000000..e7c66aa --- /dev/null +++ b/vendor-bin/openapi-extractor/composer.json @@ -0,0 +1,10 @@ +{ + "config": { + "platform": { + "php": "8.2" + } + }, + "require-dev": { + "nextcloud/openapi-extractor": "^1.8.7" + } +} diff --git a/vendor-bin/openapi-extractor/composer.lock b/vendor-bin/openapi-extractor/composer.lock new file mode 100644 index 0000000..8996bd1 --- /dev/null +++ b/vendor-bin/openapi-extractor/composer.lock @@ -0,0 +1,246 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "a015e4c10d900a2b93cc64dbb63af51c", + "packages": [], + "packages-dev": [ + { + "name": "adhocore/cli", + "version": "v1.9.4", + "source": { + "type": "git", + "url": "https://github.com/adhocore/php-cli.git", + "reference": "474dc3d7ab139796be98b104d891476e3916b6f4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/adhocore/php-cli/zipball/474dc3d7ab139796be98b104d891476e3916b6f4", + "reference": "474dc3d7ab139796be98b104d891476e3916b6f4", + "shasum": "" + }, + "require": { + "php": ">=8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Ahc\\Cli\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jitendra Adhikari", + "email": "jiten.adhikary@gmail.com" + } + ], + "description": "Command line interface library for PHP", + "keywords": [ + "argument-parser", + "argv-parser", + "cli", + "cli-action", + "cli-app", + "cli-color", + "cli-option", + "cli-writer", + "command", + "console", + "console-app", + "php-cli", + "php8", + "stream-input", + "stream-output" + ], + "support": { + "issues": "https://github.com/adhocore/php-cli/issues", + "source": "https://github.com/adhocore/php-cli/tree/v1.9.4" + }, + "funding": [ + { + "url": "https://paypal.me/ji10", + "type": "custom" + }, + { + "url": "https://github.com/adhocore", + "type": "github" + } + ], + "time": "2025-05-11T13:23:54+00:00" + }, + { + "name": "nextcloud/openapi-extractor", + "version": "v1.8.7", + "source": { + "type": "git", + "url": "https://github.com/nextcloud-releases/openapi-extractor.git", + "reference": "230f61925c362779652b0038a1314ce5f931e853" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nextcloud-releases/openapi-extractor/zipball/230f61925c362779652b0038a1314ce5f931e853", + "reference": "230f61925c362779652b0038a1314ce5f931e853", + "shasum": "" + }, + "require": { + "adhocore/cli": "^1.7", + "ext-simplexml": "*", + "nikic/php-parser": "^5.0", + "php": "^8.1", + "phpstan/phpdoc-parser": "^2.1" + }, + "require-dev": { + "nextcloud/coding-standard": "^1.4.0", + "nextcloud/ocp": "dev-master", + "rector/rector": "^2.2.8" + }, + "bin": [ + "bin/generate-spec", + "bin/merge-specs" + ], + "type": "library", + "autoload": { + "psr-4": { + "OpenAPIExtractor\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "AGPL-3.0-or-later" + ], + "description": "A tool for extracting OpenAPI specifications from Nextcloud source code", + "support": { + "issues": "https://github.com/nextcloud-releases/openapi-extractor/issues", + "source": "https://github.com/nextcloud-releases/openapi-extractor/tree/v1.8.7" + }, + "time": "2025-12-02T09:52:06+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v5.8.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/044a6a392ff8ad0d61f14370a5fbbd0a0107152f", + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "php": ">=7.4" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v5.8.0" + }, + "time": "2026-07-04T14:30:18+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "2.3.3", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "fb19eedd2bb67ff8cf7a5502ad329e701d6398a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/fb19eedd2bb67ff8cf7a5502ad329e701d6398a3", + "reference": "fb19eedd2bb67ff8cf7a5502ad329e701d6398a3", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "nikic/php-parser": "^5.3.0", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^9.6", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.3" + }, + "time": "2026-07-08T07:01:06+00:00" + } + ], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": false, + "prefer-lowest": false, + "platform": {}, + "platform-dev": {}, + "platform-overrides": { + "php": "8.2" + }, + "plugin-api-version": "2.9.0" +} diff --git a/vendor-bin/phpunit/composer.json b/vendor-bin/phpunit/composer.json new file mode 100644 index 0000000..9b92425 --- /dev/null +++ b/vendor-bin/phpunit/composer.json @@ -0,0 +1,11 @@ +{ + "config": { + "platform": { + "php": "8.2" + }, + "sort-packages": true + }, + "require-dev": { + "phpunit/phpunit": "^11.5.50" + } +} diff --git a/vendor-bin/phpunit/composer.lock b/vendor-bin/phpunit/composer.lock new file mode 100644 index 0000000..508929f --- /dev/null +++ b/vendor-bin/phpunit/composer.lock @@ -0,0 +1,1786 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "f2e6ba6072db01ef7533f9ebef5999e3", + "packages": [], + "packages-dev": [ + { + "name": "myclabs/deep-copy", + "version": "1.13.4", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", + "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/07d290f0c47959fd5eed98c95ee5602db07e0b6a", + "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "doctrine/collections": "<1.6.8", + "doctrine/common": "<2.13.3 || >=3 <3.2.2" + }, + "require-dev": { + "doctrine/collections": "^1.6.8", + "doctrine/common": "^2.13.3 || ^3.2.2", + "phpspec/prophecy": "^1.10", + "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" + }, + "type": "library", + "autoload": { + "files": [ + "src/DeepCopy/deep_copy.php" + ], + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Create deep copies (clones) of your objects", + "keywords": [ + "clone", + "copy", + "duplicate", + "object", + "object graph" + ], + "support": { + "issues": "https://github.com/myclabs/DeepCopy/issues", + "source": "https://github.com/myclabs/DeepCopy/tree/1.13.4" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", + "type": "tidelift" + } + ], + "time": "2025-08-01T08:46:24+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v5.8.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/044a6a392ff8ad0d61f14370a5fbbd0a0107152f", + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "php": ">=7.4" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v5.8.0" + }, + "time": "2026-07-04T14:30:18+00:00" + }, + { + "name": "phar-io/manifest", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "54750ef60c58e43759730615a392c31c80e23176" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176", + "reference": "54750ef60c58e43759730615a392c31c80e23176", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-phar": "*", + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" + }, + "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": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", + "support": { + "issues": "https://github.com/phar-io/manifest/issues", + "source": "https://github.com/phar-io/manifest/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2024-03-03T12:33:53+00:00" + }, + { + "name": "phar-io/version", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/version.git", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Library for handling version information and constraints", + "support": { + "issues": "https://github.com/phar-io/version/issues", + "source": "https://github.com/phar-io/version/tree/3.2.1" + }, + "time": "2022-02-21T01:04:05+00:00" + }, + { + "name": "phpunit/php-code-coverage", + "version": "11.0.12", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "2c1ed04922802c15e1de5d7447b4856de949cf56" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2c1ed04922802c15e1de5d7447b4856de949cf56", + "reference": "2c1ed04922802c15e1de5d7447b4856de949cf56", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-xmlwriter": "*", + "nikic/php-parser": "^5.7.0", + "php": ">=8.2", + "phpunit/php-file-iterator": "^5.1.0", + "phpunit/php-text-template": "^4.0.1", + "sebastian/code-unit-reverse-lookup": "^4.0.1", + "sebastian/complexity": "^4.0.1", + "sebastian/environment": "^7.2.1", + "sebastian/lines-of-code": "^3.0.1", + "sebastian/version": "^5.0.2", + "theseer/tokenizer": "^1.3.1" + }, + "require-dev": { + "phpunit/phpunit": "^11.5.46" + }, + "suggest": { + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "11.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 provides collection, processing, and rendering functionality for PHP code coverage information.", + "homepage": "https://github.com/sebastianbergmann/php-code-coverage", + "keywords": [ + "coverage", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", + "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/11.0.12" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/php-code-coverage", + "type": "tidelift" + } + ], + "time": "2025-12-24T07:01:01+00:00" + }, + { + "name": "phpunit/php-file-iterator", + "version": "5.1.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "2f3a64888c814fc235386b7387dd5b5ed92ad903" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/2f3a64888c814fc235386b7387dd5b5ed92ad903", + "reference": "2f3a64888c814fc235386b7387dd5b5ed92ad903", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "5.1-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": "FilterIterator implementation that filters files based on a list of suffixes.", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", + "keywords": [ + "filesystem", + "iterator" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", + "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/5.1.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/php-file-iterator", + "type": "tidelift" + } + ], + "time": "2026-02-02T13:52:54+00:00" + }, + { + "name": "phpunit/php-invoker", + "version": "5.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-invoker.git", + "reference": "c1ca3814734c07492b3d4c5f794f4b0995333da2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/c1ca3814734c07492b3d4c5f794f4b0995333da2", + "reference": "c1ca3814734c07492b3d4c5f794f4b0995333da2", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "ext-pcntl": "*", + "phpunit/phpunit": "^11.0" + }, + "suggest": { + "ext-pcntl": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "5.0-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": "Invoke callables with a timeout", + "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "keywords": [ + "process" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-invoker/issues", + "security": "https://github.com/sebastianbergmann/php-invoker/security/policy", + "source": "https://github.com/sebastianbergmann/php-invoker/tree/5.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T05:07:44+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "4.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "3e0404dc6b300e6bf56415467ebcb3fe4f33e964" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/3e0404dc6b300e6bf56415467ebcb3fe4f33e964", + "reference": "3e0404dc6b300e6bf56415467ebcb3fe4f33e964", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.0-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": "Simple template engine.", + "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "keywords": [ + "template" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "security": "https://github.com/sebastianbergmann/php-text-template/security/policy", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/4.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T05:08:43+00:00" + }, + { + "name": "phpunit/php-timer", + "version": "7.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "3b415def83fbcb41f991d9ebf16ae4ad8b7837b3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3b415def83fbcb41f991d9ebf16ae4ad8b7837b3", + "reference": "3b415def83fbcb41f991d9ebf16ae4ad8b7837b3", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "7.0-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": "Utility class for timing", + "homepage": "https://github.com/sebastianbergmann/php-timer/", + "keywords": [ + "timer" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "security": "https://github.com/sebastianbergmann/php-timer/security/policy", + "source": "https://github.com/sebastianbergmann/php-timer/tree/7.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T05:09:35+00:00" + }, + { + "name": "phpunit/phpunit", + "version": "11.5.56", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "5f83edffa6967c3db468d48a695ec7bcb02e9256" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/5f83edffa6967c3db468d48a695ec7bcb02e9256", + "reference": "5f83edffa6967c3db468d48a695ec7bcb02e9256", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-filter": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-xmlwriter": "*", + "myclabs/deep-copy": "^1.13.4", + "phar-io/manifest": "^2.0.4", + "phar-io/version": "^3.2.1", + "php": ">=8.2", + "phpunit/php-code-coverage": "^11.0.12", + "phpunit/php-file-iterator": "^5.1.1", + "phpunit/php-invoker": "^5.0.1", + "phpunit/php-text-template": "^4.0.1", + "phpunit/php-timer": "^7.0.1", + "sebastian/cli-parser": "^3.0.2", + "sebastian/code-unit": "^3.0.3", + "sebastian/comparator": "^6.3.3", + "sebastian/diff": "^6.0.2", + "sebastian/environment": "^7.2.1", + "sebastian/exporter": "^6.3.2", + "sebastian/global-state": "^7.0.2", + "sebastian/object-enumerator": "^6.0.1", + "sebastian/recursion-context": "^6.0.3", + "sebastian/type": "^5.1.3", + "sebastian/version": "^5.0.2", + "staabm/side-effects-detector": "^1.0.5" + }, + "suggest": { + "ext-soap": "To be able to generate mocks based on WSDL files" + }, + "bin": [ + "phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "11.5-dev" + } + }, + "autoload": { + "files": [ + "src/Framework/Assert/Functions.php" + ], + "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" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/11.5.56" + }, + "funding": [ + { + "url": "https://phpunit.de/sponsoring.html", + "type": "other" + } + ], + "time": "2026-07-06T14:52:39+00:00" + }, + { + "name": "sebastian/cli-parser", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "15c5dd40dc4f38794d383bb95465193f5e0ae180" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/15c5dd40dc4f38794d383bb95465193f5e0ae180", + "reference": "15c5dd40dc4f38794d383bb95465193f5e0ae180", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-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 for parsing CLI options", + "homepage": "https://github.com/sebastianbergmann/cli-parser", + "support": { + "issues": "https://github.com/sebastianbergmann/cli-parser/issues", + "security": "https://github.com/sebastianbergmann/cli-parser/security/policy", + "source": "https://github.com/sebastianbergmann/cli-parser/tree/3.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T04:41:36+00:00" + }, + { + "name": "sebastian/code-unit", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit.git", + "reference": "54391c61e4af8078e5b276ab082b6d3c54c9ad64" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/54391c61e4af8078e5b276ab082b6d3c54c9ad64", + "reference": "54391c61e4af8078e5b276ab082b6d3c54c9ad64", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-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": "Collection of value objects that represent the PHP code units", + "homepage": "https://github.com/sebastianbergmann/code-unit", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit/issues", + "security": "https://github.com/sebastianbergmann/code-unit/security/policy", + "source": "https://github.com/sebastianbergmann/code-unit/tree/3.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2025-03-19T07:56:08+00:00" + }, + { + "name": "sebastian/code-unit-reverse-lookup", + "version": "4.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", + "reference": "183a9b2632194febd219bb9246eee421dad8d45e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/183a9b2632194febd219bb9246eee421dad8d45e", + "reference": "183a9b2632194febd219bb9246eee421dad8d45e", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Looks up which function or method a line of code belongs to", + "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", + "security": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/security/policy", + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/4.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T04:45:54+00:00" + }, + { + "name": "sebastian/comparator", + "version": "6.3.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/comparator.git", + "reference": "2c95e1e86cb8dd41beb8d502057d1081ccc8eca9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2c95e1e86cb8dd41beb8d502057d1081ccc8eca9", + "reference": "2c95e1e86cb8dd41beb8d502057d1081ccc8eca9", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-mbstring": "*", + "php": ">=8.2", + "sebastian/diff": "^6.0", + "sebastian/exporter": "^6.0" + }, + "require-dev": { + "phpunit/phpunit": "^11.4" + }, + "suggest": { + "ext-bcmath": "For comparing BcMath\\Number objects" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "6.3-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@2bepublished.at" + } + ], + "description": "Provides the functionality to compare PHP values for equality", + "homepage": "https://github.com/sebastianbergmann/comparator", + "keywords": [ + "comparator", + "compare", + "equality" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/comparator/issues", + "security": "https://github.com/sebastianbergmann/comparator/security/policy", + "source": "https://github.com/sebastianbergmann/comparator/tree/6.3.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/comparator", + "type": "tidelift" + } + ], + "time": "2026-01-24T09:26:40+00:00" + }, + { + "name": "sebastian/complexity", + "version": "4.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/complexity.git", + "reference": "ee41d384ab1906c68852636b6de493846e13e5a0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/ee41d384ab1906c68852636b6de493846e13e5a0", + "reference": "ee41d384ab1906c68852636b6de493846e13e5a0", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^5.0", + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.0-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 for calculating the complexity of PHP code units", + "homepage": "https://github.com/sebastianbergmann/complexity", + "support": { + "issues": "https://github.com/sebastianbergmann/complexity/issues", + "security": "https://github.com/sebastianbergmann/complexity/security/policy", + "source": "https://github.com/sebastianbergmann/complexity/tree/4.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T04:49:50+00:00" + }, + { + "name": "sebastian/diff", + "version": "6.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "b4ccd857127db5d41a5b676f24b51371d76d8544" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/b4ccd857127db5d41a5b676f24b51371d76d8544", + "reference": "b4ccd857127db5d41a5b676f24b51371d76d8544", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "6.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "security": "https://github.com/sebastianbergmann/diff/security/policy", + "source": "https://github.com/sebastianbergmann/diff/tree/6.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T04:53:05+00:00" + }, + { + "name": "sebastian/environment", + "version": "7.2.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "a5c75038693ad2e8d4b6c15ba2403532647830c4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/a5c75038693ad2e8d4b6c15ba2403532647830c4", + "reference": "a5c75038693ad2e8d4b6c15ba2403532647830c4", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.3" + }, + "suggest": { + "ext-posix": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "7.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides functionality to handle HHVM/PHP environments", + "homepage": "https://github.com/sebastianbergmann/environment", + "keywords": [ + "Xdebug", + "environment", + "hhvm" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/environment/issues", + "security": "https://github.com/sebastianbergmann/environment/security/policy", + "source": "https://github.com/sebastianbergmann/environment/tree/7.2.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/environment", + "type": "tidelift" + } + ], + "time": "2025-05-21T11:55:47+00:00" + }, + { + "name": "sebastian/exporter", + "version": "6.3.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/exporter.git", + "reference": "70a298763b40b213ec087c51c739efcaa90bcd74" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/70a298763b40b213ec087c51c739efcaa90bcd74", + "reference": "70a298763b40b213ec087c51c739efcaa90bcd74", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": ">=8.2", + "sebastian/recursion-context": "^6.0" + }, + "require-dev": { + "phpunit/phpunit": "^11.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "6.3-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Provides the functionality to export PHP variables for visualization", + "homepage": "https://www.github.com/sebastianbergmann/exporter", + "keywords": [ + "export", + "exporter" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "security": "https://github.com/sebastianbergmann/exporter/security/policy", + "source": "https://github.com/sebastianbergmann/exporter/tree/6.3.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/exporter", + "type": "tidelift" + } + ], + "time": "2025-09-24T06:12:51+00:00" + }, + { + "name": "sebastian/global-state", + "version": "7.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/global-state.git", + "reference": "3be331570a721f9a4b5917f4209773de17f747d7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/3be331570a721f9a4b5917f4209773de17f747d7", + "reference": "3be331570a721f9a4b5917f4209773de17f747d7", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "sebastian/object-reflector": "^4.0", + "sebastian/recursion-context": "^6.0" + }, + "require-dev": { + "ext-dom": "*", + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "7.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Snapshotting of global state", + "homepage": "https://www.github.com/sebastianbergmann/global-state", + "keywords": [ + "global state" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/global-state/issues", + "security": "https://github.com/sebastianbergmann/global-state/security/policy", + "source": "https://github.com/sebastianbergmann/global-state/tree/7.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T04:57:36+00:00" + }, + { + "name": "sebastian/lines-of-code", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/lines-of-code.git", + "reference": "d36ad0d782e5756913e42ad87cb2890f4ffe467a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/d36ad0d782e5756913e42ad87cb2890f4ffe467a", + "reference": "d36ad0d782e5756913e42ad87cb2890f4ffe467a", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^5.0", + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-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 for counting the lines of code in PHP source code", + "homepage": "https://github.com/sebastianbergmann/lines-of-code", + "support": { + "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", + "security": "https://github.com/sebastianbergmann/lines-of-code/security/policy", + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/3.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T04:58:38+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "6.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "f5b498e631a74204185071eb41f33f38d64608aa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/f5b498e631a74204185071eb41f33f38d64608aa", + "reference": "f5b498e631a74204185071eb41f33f38d64608aa", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "sebastian/object-reflector": "^4.0", + "sebastian/recursion-context": "^6.0" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "6.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Traverses array structures and object graphs to enumerate all referenced objects", + "homepage": "https://github.com/sebastianbergmann/object-enumerator/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", + "security": "https://github.com/sebastianbergmann/object-enumerator/security/policy", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/6.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T05:00:13+00:00" + }, + { + "name": "sebastian/object-reflector", + "version": "4.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-reflector.git", + "reference": "6e1a43b411b2ad34146dee7524cb13a068bb35f9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/6e1a43b411b2ad34146dee7524cb13a068bb35f9", + "reference": "6e1a43b411b2ad34146dee7524cb13a068bb35f9", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-reflector/issues", + "security": "https://github.com/sebastianbergmann/object-reflector/security/policy", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/4.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T05:01:32+00:00" + }, + { + "name": "sebastian/recursion-context", + "version": "6.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "f6458abbf32a6c8174f8f26261475dc133b3d9dc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/f6458abbf32a6c8174f8f26261475dc133b3d9dc", + "reference": "f6458abbf32a6c8174f8f26261475dc133b3d9dc", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "6.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + } + ], + "description": "Provides functionality to recursively process PHP variables", + "homepage": "https://github.com/sebastianbergmann/recursion-context", + "support": { + "issues": "https://github.com/sebastianbergmann/recursion-context/issues", + "security": "https://github.com/sebastianbergmann/recursion-context/security/policy", + "source": "https://github.com/sebastianbergmann/recursion-context/tree/6.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/recursion-context", + "type": "tidelift" + } + ], + "time": "2025-08-13T04:42:22+00:00" + }, + { + "name": "sebastian/type", + "version": "5.1.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "f77d2d4e78738c98d9a68d2596fe5e8fa380f449" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/f77d2d4e78738c98d9a68d2596fe5e8fa380f449", + "reference": "f77d2d4e78738c98d9a68d2596fe5e8fa380f449", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "5.1-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": "Collection of value objects that represent the types of the PHP type system", + "homepage": "https://github.com/sebastianbergmann/type", + "support": { + "issues": "https://github.com/sebastianbergmann/type/issues", + "security": "https://github.com/sebastianbergmann/type/security/policy", + "source": "https://github.com/sebastianbergmann/type/tree/5.1.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/type", + "type": "tidelift" + } + ], + "time": "2025-08-09T06:55:48+00:00" + }, + { + "name": "sebastian/version", + "version": "5.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "c687e3387b99f5b03b6caa64c74b63e2936ff874" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c687e3387b99f5b03b6caa64c74b63e2936ff874", + "reference": "c687e3387b99f5b03b6caa64c74b63e2936ff874", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "5.0-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", + "support": { + "issues": "https://github.com/sebastianbergmann/version/issues", + "security": "https://github.com/sebastianbergmann/version/security/policy", + "source": "https://github.com/sebastianbergmann/version/tree/5.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-10-09T05:16:32+00:00" + }, + { + "name": "staabm/side-effects-detector", + "version": "1.0.5", + "source": { + "type": "git", + "url": "https://github.com/staabm/side-effects-detector.git", + "reference": "d8334211a140ce329c13726d4a715adbddd0a163" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/staabm/side-effects-detector/zipball/d8334211a140ce329c13726d4a715adbddd0a163", + "reference": "d8334211a140ce329c13726d4a715adbddd0a163", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^1.12.6", + "phpunit/phpunit": "^9.6.21", + "symfony/var-dumper": "^5.4.43", + "tomasvotruba/type-coverage": "1.0.0", + "tomasvotruba/unused-public": "1.0.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "lib/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A static analysis tool to detect side effects in PHP code", + "keywords": [ + "static analysis" + ], + "support": { + "issues": "https://github.com/staabm/side-effects-detector/issues", + "source": "https://github.com/staabm/side-effects-detector/tree/1.0.5" + }, + "funding": [ + { + "url": "https://github.com/staabm", + "type": "github" + } + ], + "time": "2024-10-20T05:08:20+00:00" + }, + { + "name": "theseer/tokenizer", + "version": "1.3.1", + "source": { + "type": "git", + "url": "https://github.com/theseer/tokenizer.git", + "reference": "b7489ce515e168639d17feec34b8847c326b0b3c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b7489ce515e168639d17feec34b8847c326b0b3c", + "reference": "b7489ce515e168639d17feec34b8847c326b0b3c", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-tokenizer": "*", + "ext-xmlwriter": "*", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + } + ], + "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", + "support": { + "issues": "https://github.com/theseer/tokenizer/issues", + "source": "https://github.com/theseer/tokenizer/tree/1.3.1" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2025-11-17T20:03:58+00:00" + } + ], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": false, + "prefer-lowest": false, + "platform": {}, + "platform-dev": {}, + "platform-overrides": { + "php": "8.2" + }, + "plugin-api-version": "2.9.0" +} diff --git a/vendor-bin/psalm/composer.json b/vendor-bin/psalm/composer.json new file mode 100644 index 0000000..33eabb2 --- /dev/null +++ b/vendor-bin/psalm/composer.json @@ -0,0 +1,11 @@ +{ + "config": { + "platform": { + "php": "8.2.27" + }, + "sort-packages": true + }, + "require-dev": { + "vimeo/psalm": "^6.16.1" + } +} diff --git a/vendor-bin/psalm/composer.lock b/vendor-bin/psalm/composer.lock new file mode 100644 index 0000000..cf543ba --- /dev/null +++ b/vendor-bin/psalm/composer.lock @@ -0,0 +1,3361 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "6c99aa883e997772eea58cad5a836605", + "packages": [], + "packages-dev": [ + { + "name": "amphp/amp", + "version": "v3.1.2", + "source": { + "type": "git", + "url": "https://github.com/amphp/amp.git", + "reference": "2f3ebed5a4f663968a0590dbb7654a8b32cb63cb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/amp/zipball/2f3ebed5a4f663968a0590dbb7654a8b32cb63cb", + "reference": "2f3ebed5a4f663968a0590dbb7654a8b32cb63cb", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "revolt/event-loop": "^1 || ^0.2" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "phpunit/phpunit": "^9", + "psalm/phar": "6.16.1" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php", + "src/Future/functions.php", + "src/Internal/functions.php" + ], + "psr-4": { + "Amp\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Bob Weinand", + "email": "bobwei9@hotmail.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + }, + { + "name": "Daniel Lowrey", + "email": "rdlowrey@php.net" + } + ], + "description": "A non-blocking concurrency framework for PHP applications.", + "homepage": "https://amphp.org/amp", + "keywords": [ + "async", + "asynchronous", + "awaitable", + "concurrency", + "event", + "event-loop", + "future", + "non-blocking", + "promise" + ], + "support": { + "issues": "https://github.com/amphp/amp/issues", + "source": "https://github.com/amphp/amp/tree/v3.1.2" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2026-06-21T13:59:44+00:00" + }, + { + "name": "amphp/byte-stream", + "version": "v2.1.2", + "source": { + "type": "git", + "url": "https://github.com/amphp/byte-stream.git", + "reference": "55a6bd071aec26fa2a3e002618c20c35e3df1b46" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/byte-stream/zipball/55a6bd071aec26fa2a3e002618c20c35e3df1b46", + "reference": "55a6bd071aec26fa2a3e002618c20c35e3df1b46", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/parser": "^1.1", + "amphp/pipeline": "^1", + "amphp/serialization": "^1", + "amphp/sync": "^2", + "php": ">=8.1", + "revolt/event-loop": "^1 || ^0.2.3" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "phpunit/phpunit": "^9", + "psalm/phar": "5.22.1" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php", + "src/Internal/functions.php" + ], + "psr-4": { + "Amp\\ByteStream\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "A stream abstraction to make working with non-blocking I/O simple.", + "homepage": "https://amphp.org/byte-stream", + "keywords": [ + "amp", + "amphp", + "async", + "io", + "non-blocking", + "stream" + ], + "support": { + "issues": "https://github.com/amphp/byte-stream/issues", + "source": "https://github.com/amphp/byte-stream/tree/v2.1.2" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2025-03-16T17:10:27+00:00" + }, + { + "name": "amphp/cache", + "version": "v2.0.1", + "source": { + "type": "git", + "url": "https://github.com/amphp/cache.git", + "reference": "46912e387e6aa94933b61ea1ead9cf7540b7797c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/cache/zipball/46912e387e6aa94933b61ea1ead9cf7540b7797c", + "reference": "46912e387e6aa94933b61ea1ead9cf7540b7797c", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/serialization": "^1", + "amphp/sync": "^2", + "php": ">=8.1", + "revolt/event-loop": "^1 || ^0.2" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "phpunit/phpunit": "^9", + "psalm/phar": "^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Amp\\Cache\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + }, + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Daniel Lowrey", + "email": "rdlowrey@php.net" + } + ], + "description": "A fiber-aware cache API based on Amp and Revolt.", + "homepage": "https://amphp.org/cache", + "support": { + "issues": "https://github.com/amphp/cache/issues", + "source": "https://github.com/amphp/cache/tree/v2.0.1" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2024-04-19T03:38:06+00:00" + }, + { + "name": "amphp/dns", + "version": "v2.4.0", + "source": { + "type": "git", + "url": "https://github.com/amphp/dns.git", + "reference": "78eb3db5fc69bf2fc0cb503c4fcba667bc223c71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/dns/zipball/78eb3db5fc69bf2fc0cb503c4fcba667bc223c71", + "reference": "78eb3db5fc69bf2fc0cb503c4fcba667bc223c71", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/byte-stream": "^2", + "amphp/cache": "^2", + "amphp/parser": "^1", + "amphp/process": "^2", + "daverandom/libdns": "^2.0.2", + "ext-filter": "*", + "ext-json": "*", + "php": ">=8.1", + "revolt/event-loop": "^1 || ^0.2" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "phpunit/phpunit": "^9", + "psalm/phar": "5.20" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Amp\\Dns\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Chris Wright", + "email": "addr@daverandom.com" + }, + { + "name": "Daniel Lowrey", + "email": "rdlowrey@php.net" + }, + { + "name": "Bob Weinand", + "email": "bobwei9@hotmail.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + }, + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + } + ], + "description": "Async DNS resolution for Amp.", + "homepage": "https://github.com/amphp/dns", + "keywords": [ + "amp", + "amphp", + "async", + "client", + "dns", + "resolve" + ], + "support": { + "issues": "https://github.com/amphp/dns/issues", + "source": "https://github.com/amphp/dns/tree/v2.4.0" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2025-01-19T15:43:40+00:00" + }, + { + "name": "amphp/parallel", + "version": "v2.4.0", + "source": { + "type": "git", + "url": "https://github.com/amphp/parallel.git", + "reference": "37f5b2754fadc229c00f9416bd68fb8d04529a81" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/parallel/zipball/37f5b2754fadc229c00f9416bd68fb8d04529a81", + "reference": "37f5b2754fadc229c00f9416bd68fb8d04529a81", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/byte-stream": "^2", + "amphp/cache": "^2", + "amphp/parser": "^1", + "amphp/pipeline": "^1", + "amphp/process": "^2", + "amphp/serialization": "^1", + "amphp/socket": "^2", + "amphp/sync": "^2", + "php": ">=8.1", + "revolt/event-loop": "^1" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "phpunit/phpunit": "^9", + "psalm/phar": "6.16.1" + }, + "type": "library", + "autoload": { + "files": [ + "src/Context/functions.php", + "src/Context/Internal/functions.php", + "src/Ipc/functions.php", + "src/Worker/functions.php" + ], + "psr-4": { + "Amp\\Parallel\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + }, + { + "name": "Stephen Coakley", + "email": "me@stephencoakley.com" + } + ], + "description": "Parallel processing component for Amp.", + "homepage": "https://github.com/amphp/parallel", + "keywords": [ + "async", + "asynchronous", + "concurrent", + "multi-processing", + "multi-threading" + ], + "support": { + "issues": "https://github.com/amphp/parallel/issues", + "source": "https://github.com/amphp/parallel/tree/v2.4.0" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2026-05-16T16:54:01+00:00" + }, + { + "name": "amphp/parser", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/amphp/parser.git", + "reference": "3cf1f8b32a0171d4b1bed93d25617637a77cded7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/parser/zipball/3cf1f8b32a0171d4b1bed93d25617637a77cded7", + "reference": "3cf1f8b32a0171d4b1bed93d25617637a77cded7", + "shasum": "" + }, + "require": { + "php": ">=7.4" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "phpunit/phpunit": "^9", + "psalm/phar": "^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Amp\\Parser\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "A generator parser to make streaming parsers simple.", + "homepage": "https://github.com/amphp/parser", + "keywords": [ + "async", + "non-blocking", + "parser", + "stream" + ], + "support": { + "issues": "https://github.com/amphp/parser/issues", + "source": "https://github.com/amphp/parser/tree/v1.1.1" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2024-03-21T19:16:53+00:00" + }, + { + "name": "amphp/pipeline", + "version": "v1.2.6", + "source": { + "type": "git", + "url": "https://github.com/amphp/pipeline.git", + "reference": "10941bf38de5c585aa2407b2ec4265d806d4eef2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/pipeline/zipball/10941bf38de5c585aa2407b2ec4265d806d4eef2", + "reference": "10941bf38de5c585aa2407b2ec4265d806d4eef2", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "php": ">=8.1", + "revolt/event-loop": "^1" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "phpunit/phpunit": "^9", + "psalm/phar": "6.16.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Amp\\Pipeline\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "Asynchronous iterators and operators.", + "homepage": "https://amphp.org/pipeline", + "keywords": [ + "amp", + "amphp", + "async", + "io", + "iterator", + "non-blocking" + ], + "support": { + "issues": "https://github.com/amphp/pipeline/issues", + "source": "https://github.com/amphp/pipeline/tree/v1.2.6" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2026-06-27T16:15:40+00:00" + }, + { + "name": "amphp/process", + "version": "v2.1.0", + "source": { + "type": "git", + "url": "https://github.com/amphp/process.git", + "reference": "583959df17d00304ad7b0b32285373f985935643" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/process/zipball/583959df17d00304ad7b0b32285373f985935643", + "reference": "583959df17d00304ad7b0b32285373f985935643", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/byte-stream": "^2", + "amphp/sync": "^2", + "php": ">=8.1", + "revolt/event-loop": "^1 || ^0.2" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "phpunit/phpunit": "^9", + "psalm/phar": "6.16.1" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Amp\\Process\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bob Weinand", + "email": "bobwei9@hotmail.com" + }, + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "A fiber-aware process manager based on Amp and Revolt.", + "homepage": "https://amphp.org/process", + "support": { + "issues": "https://github.com/amphp/process/issues", + "source": "https://github.com/amphp/process/tree/v2.1.0" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2026-05-31T15:11:55+00:00" + }, + { + "name": "amphp/serialization", + "version": "v1.1.0", + "source": { + "type": "git", + "url": "https://github.com/amphp/serialization.git", + "reference": "fdf2834d78cebb0205fb2672676c1b1eb84371f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/serialization/zipball/fdf2834d78cebb0205fb2672676c1b1eb84371f0", + "reference": "fdf2834d78cebb0205fb2672676c1b1eb84371f0", + "shasum": "" + }, + "require": { + "php": ">=7.4" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "ext-json": "*", + "ext-zlib": "*", + "phpunit/phpunit": "^9", + "psalm/phar": "6.16.1" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Amp\\Serialization\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "Serialization tools for IPC and data storage in PHP.", + "homepage": "https://github.com/amphp/serialization", + "keywords": [ + "async", + "asynchronous", + "serialization", + "serialize" + ], + "support": { + "issues": "https://github.com/amphp/serialization/issues", + "source": "https://github.com/amphp/serialization/tree/v1.1.0" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2026-04-05T15:59:53+00:00" + }, + { + "name": "amphp/socket", + "version": "v2.4.0", + "source": { + "type": "git", + "url": "https://github.com/amphp/socket.git", + "reference": "dadb63c5d3179fd83803e29dfeac27350e619314" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/socket/zipball/dadb63c5d3179fd83803e29dfeac27350e619314", + "reference": "dadb63c5d3179fd83803e29dfeac27350e619314", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/byte-stream": "^2", + "amphp/dns": "^2", + "ext-openssl": "*", + "kelunik/certificate": "^1.1", + "league/uri": "^7", + "league/uri-interfaces": "^7", + "php": ">=8.1", + "revolt/event-loop": "^1" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "amphp/process": "^2", + "phpunit/phpunit": "^9", + "psalm/phar": "6.16.1" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php", + "src/Internal/functions.php", + "src/SocketAddress/functions.php" + ], + "psr-4": { + "Amp\\Socket\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Daniel Lowrey", + "email": "rdlowrey@gmail.com" + }, + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "Non-blocking socket connection / server implementations based on Amp and Revolt.", + "homepage": "https://github.com/amphp/socket", + "keywords": [ + "amp", + "async", + "encryption", + "non-blocking", + "sockets", + "tcp", + "tls" + ], + "support": { + "issues": "https://github.com/amphp/socket/issues", + "source": "https://github.com/amphp/socket/tree/v2.4.0" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2026-04-19T15:09:56+00:00" + }, + { + "name": "amphp/sync", + "version": "v2.3.0", + "source": { + "type": "git", + "url": "https://github.com/amphp/sync.git", + "reference": "217097b785130d77cfcc58ff583cf26cd1770bf1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/sync/zipball/217097b785130d77cfcc58ff583cf26cd1770bf1", + "reference": "217097b785130d77cfcc58ff583cf26cd1770bf1", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/pipeline": "^1", + "amphp/serialization": "^1", + "php": ">=8.1", + "revolt/event-loop": "^1 || ^0.2" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "amphp/phpunit-util": "^3", + "phpunit/phpunit": "^9", + "psalm/phar": "5.23" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Amp\\Sync\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + }, + { + "name": "Stephen Coakley", + "email": "me@stephencoakley.com" + } + ], + "description": "Non-blocking synchronization primitives for PHP based on Amp and Revolt.", + "homepage": "https://github.com/amphp/sync", + "keywords": [ + "async", + "asynchronous", + "mutex", + "semaphore", + "synchronization" + ], + "support": { + "issues": "https://github.com/amphp/sync/issues", + "source": "https://github.com/amphp/sync/tree/v2.3.0" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2024-08-03T19:31:26+00:00" + }, + { + "name": "composer/pcre", + "version": "3.4.0", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "d5a341b3fb61f3001970940afb1d332968a183ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/d5a341b3fb61f3001970940afb1d332968a183ed", + "reference": "d5a341b3fb61f3001970940afb1d332968a183ed", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<2.2.2" + }, + "require-dev": { + "phpstan/phpstan": "^2", + "phpstan/phpstan-deprecation-rules": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "^9" + }, + "type": "library", + "extra": { + "phpstan": { + "includes": [ + "extension.neon" + ] + }, + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Pcre\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", + "keywords": [ + "PCRE", + "preg", + "regex", + "regular expression" + ], + "support": { + "issues": "https://github.com/composer/pcre/issues", + "source": "https://github.com/composer/pcre/tree/3.4.0" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + } + ], + "time": "2026-06-07T11:47:49+00:00" + }, + { + "name": "composer/semver", + "version": "3.4.4", + "source": { + "type": "git", + "url": "https://github.com/composer/semver.git", + "reference": "198166618906cb2de69b95d7d47e5fa8aa1b2b95" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/semver/zipball/198166618906cb2de69b95d7d47e5fa8aa1b2b95", + "reference": "198166618906cb2de69b95d7d47e5fa8aa1b2b95", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.11", + "symfony/phpunit-bridge": "^3 || ^7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Semver\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "http://www.naderman.de" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + }, + { + "name": "Rob Bast", + "email": "rob.bast@gmail.com", + "homepage": "http://robbast.nl" + } + ], + "description": "Semver library that offers utilities, version constraint parsing and validation.", + "keywords": [ + "semantic", + "semver", + "validation", + "versioning" + ], + "support": { + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/semver/issues", + "source": "https://github.com/composer/semver/tree/3.4.4" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + } + ], + "time": "2025-08-20T19:15:30+00:00" + }, + { + "name": "composer/xdebug-handler", + "version": "3.0.5", + "source": { + "type": "git", + "url": "https://github.com/composer/xdebug-handler.git", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef", + "shasum": "" + }, + "require": { + "composer/pcre": "^1 || ^2 || ^3", + "php": "^7.2.5 || ^8.0", + "psr/log": "^1 || ^2 || ^3" + }, + "require-dev": { + "phpstan/phpstan": "^1.0", + "phpstan/phpstan-strict-rules": "^1.1", + "phpunit/phpunit": "^8.5 || ^9.6 || ^10.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Composer\\XdebugHandler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "John Stevenson", + "email": "john-stevenson@blueyonder.co.uk" + } + ], + "description": "Restarts a process without Xdebug.", + "keywords": [ + "Xdebug", + "performance" + ], + "support": { + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/xdebug-handler/issues", + "source": "https://github.com/composer/xdebug-handler/tree/3.0.5" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2024-05-06T16:37:16+00:00" + }, + { + "name": "danog/advanced-json-rpc", + "version": "v3.2.3", + "source": { + "type": "git", + "url": "https://github.com/danog/php-advanced-json-rpc.git", + "reference": "ae703ea7b4811797a10590b6078de05b3b33dd91" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/danog/php-advanced-json-rpc/zipball/ae703ea7b4811797a10590b6078de05b3b33dd91", + "reference": "ae703ea7b4811797a10590b6078de05b3b33dd91", + "shasum": "" + }, + "require": { + "netresearch/jsonmapper": "^5", + "php": ">=8.1", + "phpdocumentor/reflection-docblock": "^4.3.4 || ^5.0.0 || ^6" + }, + "replace": { + "felixfbecker/php-advanced-json-rpc": "^3" + }, + "require-dev": { + "phpunit/phpunit": "^9" + }, + "type": "library", + "autoload": { + "psr-4": { + "AdvancedJsonRpc\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "ISC" + ], + "authors": [ + { + "name": "Felix Becker", + "email": "felix.b@outlook.com" + }, + { + "name": "Daniil Gentili", + "email": "daniil@daniil.it" + } + ], + "description": "A more advanced JSONRPC implementation", + "support": { + "issues": "https://github.com/danog/php-advanced-json-rpc/issues", + "source": "https://github.com/danog/php-advanced-json-rpc/tree/v3.2.3" + }, + "time": "2026-01-12T21:07:10+00:00" + }, + { + "name": "daverandom/libdns", + "version": "v2.1.0", + "source": { + "type": "git", + "url": "https://github.com/DaveRandom/LibDNS.git", + "reference": "b84c94e8fe6b7ee4aecfe121bfe3b6177d303c8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/DaveRandom/LibDNS/zipball/b84c94e8fe6b7ee4aecfe121bfe3b6177d303c8a", + "reference": "b84c94e8fe6b7ee4aecfe121bfe3b6177d303c8a", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "php": ">=7.1" + }, + "suggest": { + "ext-intl": "Required for IDN support" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "LibDNS\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "DNS protocol implementation written in pure PHP", + "keywords": [ + "dns" + ], + "support": { + "issues": "https://github.com/DaveRandom/LibDNS/issues", + "source": "https://github.com/DaveRandom/LibDNS/tree/v2.1.0" + }, + "time": "2024-04-12T12:12:48+00:00" + }, + { + "name": "dnoegel/php-xdg-base-dir", + "version": "v0.1.1", + "source": { + "type": "git", + "url": "https://github.com/dnoegel/php-xdg-base-dir.git", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "require-dev": { + "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" + }, + "type": "library", + "autoload": { + "psr-4": { + "XdgBaseDir\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "implementation of xdg base directory specification for php", + "support": { + "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", + "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" + }, + "time": "2019-12-04T15:06:13+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "1.1.6", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca", + "reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "phpunit/phpunit": "<=7.5 || >=14" + }, + "require-dev": { + "doctrine/coding-standard": "^9 || ^12 || ^14", + "phpstan/phpstan": "1.4.10 || 2.1.30", + "phpstan/phpstan-phpunit": "^1.0 || ^2", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12.4 || ^13.0", + "psr/log": "^1 || ^2 || ^3" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/1.1.6" + }, + "time": "2026-02-07T07:09:04+00:00" + }, + { + "name": "felixfbecker/language-server-protocol", + "version": "v1.5.3", + "source": { + "type": "git", + "url": "https://github.com/felixfbecker/php-language-server-protocol.git", + "reference": "a9e113dbc7d849e35b8776da39edaf4313b7b6c9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/a9e113dbc7d849e35b8776da39edaf4313b7b6c9", + "reference": "a9e113dbc7d849e35b8776da39edaf4313b7b6c9", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "phpstan/phpstan": "*", + "squizlabs/php_codesniffer": "^3.1", + "vimeo/psalm": "^4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "LanguageServerProtocol\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "ISC" + ], + "authors": [ + { + "name": "Felix Becker", + "email": "felix.b@outlook.com" + } + ], + "description": "PHP classes for the Language Server Protocol", + "keywords": [ + "language", + "microsoft", + "php", + "server" + ], + "support": { + "issues": "https://github.com/felixfbecker/php-language-server-protocol/issues", + "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/v1.5.3" + }, + "time": "2024-04-30T00:40:11+00:00" + }, + { + "name": "fidry/cpu-core-counter", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/theofidry/cpu-core-counter.git", + "reference": "db9508f7b1474469d9d3c53b86f817e344732678" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/db9508f7b1474469d9d3c53b86f817e344732678", + "reference": "db9508f7b1474469d9d3c53b86f817e344732678", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "fidry/makefile": "^0.2.0", + "fidry/php-cs-fixer-config": "^1.1.2", + "phpstan/extension-installer": "^1.2.0", + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-deprecation-rules": "^2.0.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^8.5.31 || ^9.5.26", + "webmozarts/strict-phpunit": "^7.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Fidry\\CpuCoreCounter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Théo FIDRY", + "email": "theo.fidry@gmail.com" + } + ], + "description": "Tiny utility to get the number of CPU cores.", + "keywords": [ + "CPU", + "core" + ], + "support": { + "issues": "https://github.com/theofidry/cpu-core-counter/issues", + "source": "https://github.com/theofidry/cpu-core-counter/tree/1.3.0" + }, + "funding": [ + { + "url": "https://github.com/theofidry", + "type": "github" + } + ], + "time": "2025-08-14T07:29:31+00:00" + }, + { + "name": "kelunik/certificate", + "version": "v1.1.3", + "source": { + "type": "git", + "url": "https://github.com/kelunik/certificate.git", + "reference": "7e00d498c264d5eb4f78c69f41c8bd6719c0199e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/kelunik/certificate/zipball/7e00d498c264d5eb4f78c69f41c8bd6719c0199e", + "reference": "7e00d498c264d5eb4f78c69f41c8bd6719c0199e", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "php": ">=7.0" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "^2", + "phpunit/phpunit": "^6 | 7 | ^8 | ^9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Kelunik\\Certificate\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "Access certificate details and transform between different formats.", + "keywords": [ + "DER", + "certificate", + "certificates", + "openssl", + "pem", + "x509" + ], + "support": { + "issues": "https://github.com/kelunik/certificate/issues", + "source": "https://github.com/kelunik/certificate/tree/v1.1.3" + }, + "time": "2023-02-03T21:26:53+00:00" + }, + { + "name": "league/uri", + "version": "7.8.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/uri.git", + "reference": "08cf38e3924d4f56238125547b5720496fac8fd4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/uri/zipball/08cf38e3924d4f56238125547b5720496fac8fd4", + "reference": "08cf38e3924d4f56238125547b5720496fac8fd4", + "shasum": "" + }, + "require": { + "league/uri-interfaces": "^7.8.1", + "php": "^8.1", + "psr/http-factory": "^1" + }, + "conflict": { + "league/uri-schemes": "^1.0" + }, + "suggest": { + "ext-bcmath": "to improve IPV4 host parsing", + "ext-dom": "to convert the URI into an HTML anchor tag", + "ext-fileinfo": "to create Data URI from file contennts", + "ext-gmp": "to improve IPV4 host parsing", + "ext-intl": "to handle IDN host with the best performance", + "ext-uri": "to use the PHP native URI class", + "jeremykendall/php-domain-parser": "to further parse the URI host and resolve its Public Suffix and Top Level Domain", + "league/uri-components": "to provide additional tools to manipulate URI objects components", + "league/uri-polyfill": "to backport the PHP URI extension for older versions of PHP", + "php-64bit": "to improve IPV4 host parsing", + "rowbot/url": "to handle URLs using the WHATWG URL Living Standard specification", + "symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.x-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Uri\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" + } + ], + "description": "URI manipulation library", + "homepage": "https://uri.thephpleague.com", + "keywords": [ + "URN", + "data-uri", + "file-uri", + "ftp", + "hostname", + "http", + "https", + "middleware", + "parse_str", + "parse_url", + "psr-7", + "query-string", + "querystring", + "rfc2141", + "rfc3986", + "rfc3987", + "rfc6570", + "rfc8141", + "uri", + "uri-template", + "url", + "ws" + ], + "support": { + "docs": "https://uri.thephpleague.com", + "forum": "https://thephpleague.slack.com", + "issues": "https://github.com/thephpleague/uri-src/issues", + "source": "https://github.com/thephpleague/uri/tree/7.8.1" + }, + "funding": [ + { + "url": "https://github.com/sponsors/nyamsprod", + "type": "github" + } + ], + "time": "2026-03-15T20:22:25+00:00" + }, + { + "name": "league/uri-interfaces", + "version": "7.8.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/uri-interfaces.git", + "reference": "85d5c77c5d6d3af6c54db4a78246364908f3c928" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/85d5c77c5d6d3af6c54db4a78246364908f3c928", + "reference": "85d5c77c5d6d3af6c54db4a78246364908f3c928", + "shasum": "" + }, + "require": { + "ext-filter": "*", + "php": "^8.1", + "psr/http-message": "^1.1 || ^2.0" + }, + "suggest": { + "ext-bcmath": "to improve IPV4 host parsing", + "ext-gmp": "to improve IPV4 host parsing", + "ext-intl": "to handle IDN host with the best performance", + "php-64bit": "to improve IPV4 host parsing", + "rowbot/url": "to handle URLs using the WHATWG URL Living Standard specification", + "symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.x-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Uri\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" + } + ], + "description": "Common tools for parsing and resolving RFC3987/RFC3986 URI", + "homepage": "https://uri.thephpleague.com", + "keywords": [ + "data-uri", + "file-uri", + "ftp", + "hostname", + "http", + "https", + "parse_str", + "parse_url", + "psr-7", + "query-string", + "querystring", + "rfc3986", + "rfc3987", + "rfc6570", + "uri", + "url", + "ws" + ], + "support": { + "docs": "https://uri.thephpleague.com", + "forum": "https://thephpleague.slack.com", + "issues": "https://github.com/thephpleague/uri-src/issues", + "source": "https://github.com/thephpleague/uri-interfaces/tree/7.8.1" + }, + "funding": [ + { + "url": "https://github.com/sponsors/nyamsprod", + "type": "github" + } + ], + "time": "2026-03-08T20:05:35+00:00" + }, + { + "name": "netresearch/jsonmapper", + "version": "v5.0.1", + "source": { + "type": "git", + "url": "https://github.com/cweiske/jsonmapper.git", + "reference": "980674efdda65913492d29a8fd51c82270dd37bb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/980674efdda65913492d29a8fd51c82270dd37bb", + "reference": "980674efdda65913492d29a8fd51c82270dd37bb", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-spl": "*", + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0 || ~10.0", + "squizlabs/php_codesniffer": "~3.5" + }, + "type": "library", + "autoload": { + "psr-0": { + "JsonMapper": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "OSL-3.0" + ], + "authors": [ + { + "name": "Christian Weiske", + "email": "cweiske@cweiske.de", + "homepage": "http://github.com/cweiske/jsonmapper/", + "role": "Developer" + } + ], + "description": "Map nested JSON structures onto PHP classes", + "support": { + "email": "cweiske@cweiske.de", + "issues": "https://github.com/cweiske/jsonmapper/issues", + "source": "https://github.com/cweiske/jsonmapper/tree/v5.0.1" + }, + "time": "2026-02-22T16:28:03+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v5.8.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/044a6a392ff8ad0d61f14370a5fbbd0a0107152f", + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "php": ">=7.4" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v5.8.0" + }, + "time": "2026-07-04T14:30:18+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-2.x": "2.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" + ], + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", + "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" + }, + "time": "2020-06-27T09:03:43+00:00" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "6.0.3", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "7bae67520aa9f5ecc506d646810bd40d9da54582" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/7bae67520aa9f5ecc506d646810bd40d9da54582", + "reference": "7bae67520aa9f5ecc506d646810bd40d9da54582", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.1", + "ext-filter": "*", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.2", + "phpdocumentor/type-resolver": "^2.0", + "phpstan/phpdoc-parser": "^2.0", + "webmozart/assert": "^1.9.1 || ^2" + }, + "require-dev": { + "mockery/mockery": "~1.3.5 || ~1.6.0", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-webmozart-assert": "^1.2", + "phpunit/phpunit": "^9.5", + "psalm/phar": "^5.26", + "shipmonk/dead-code-detector": "^0.5.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.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" + }, + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/6.0.3" + }, + "time": "2026-03-18T20:49:53+00:00" + }, + { + "name": "phpdocumentor/type-resolver", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "327a05bbee54120d4786a0dc67aad30226ad4cf9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/327a05bbee54120d4786a0dc67aad30226ad4cf9", + "reference": "327a05bbee54120d4786a0dc67aad30226ad4cf9", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.0", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^2.0" + }, + "require-dev": { + "ext-tokenizer": "*", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.4", + "phpstan/phpstan": "^2.1", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "psalm/phar": "^4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev", + "dev-2.x": "2.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": "A PSR-5 based resolver of Class names, Types and Structural Element Names", + "support": { + "issues": "https://github.com/phpDocumentor/TypeResolver/issues", + "source": "https://github.com/phpDocumentor/TypeResolver/tree/2.0.0" + }, + "time": "2026-01-06T21:53:42+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "2.3.3", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "fb19eedd2bb67ff8cf7a5502ad329e701d6398a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/fb19eedd2bb67ff8cf7a5502ad329e701d6398a3", + "reference": "fb19eedd2bb67ff8cf7a5502ad329e701d6398a3", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "nikic/php-parser": "^5.3.0", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^9.6", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.3" + }, + "time": "2026-07-08T07:01:06+00:00" + }, + { + "name": "psr/container", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "time": "2021-11-05T16:47:00+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory" + }, + "time": "2024-04-15T12:06:14+00:00" + }, + { + "name": "psr/http-message", + "version": "2.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/2.0" + }, + "time": "2023-04-04T09:54:51+00:00" + }, + { + "name": "psr/log", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/3.0.2" + }, + "time": "2024-09-11T13:17:53+00:00" + }, + { + "name": "revolt/event-loop", + "version": "v1.0.9", + "source": { + "type": "git", + "url": "https://github.com/revoltphp/event-loop.git", + "reference": "44061cf513e53c6200372fc935ac42271566295d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/revoltphp/event-loop/zipball/44061cf513e53c6200372fc935ac42271566295d", + "reference": "44061cf513e53c6200372fc935ac42271566295d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "ext-json": "*", + "jetbrains/phpstorm-stubs": "^2019.3", + "phpunit/phpunit": "^9", + "psalm/phar": "6.16.*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Revolt\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "ceesjank@gmail.com" + }, + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "Rock-solid event loop for concurrent PHP applications.", + "keywords": [ + "async", + "asynchronous", + "concurrency", + "event", + "event-loop", + "non-blocking", + "scheduler" + ], + "support": { + "issues": "https://github.com/revoltphp/event-loop/issues", + "source": "https://github.com/revoltphp/event-loop/tree/v1.0.9" + }, + "time": "2026-05-16T17:55:38+00:00" + }, + { + "name": "sebastian/diff", + "version": "6.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "b4ccd857127db5d41a5b676f24b51371d76d8544" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/b4ccd857127db5d41a5b676f24b51371d76d8544", + "reference": "b4ccd857127db5d41a5b676f24b51371d76d8544", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.0", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "6.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "security": "https://github.com/sebastianbergmann/diff/security/policy", + "source": "https://github.com/sebastianbergmann/diff/tree/6.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-07-03T04:53:05+00:00" + }, + { + "name": "spatie/array-to-xml", + "version": "3.4.4", + "source": { + "type": "git", + "url": "https://github.com/spatie/array-to-xml.git", + "reference": "88b2f3852a922dd73177a68938f8eb2ec70c7224" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/88b2f3852a922dd73177a68938f8eb2ec70c7224", + "reference": "88b2f3852a922dd73177a68938f8eb2ec70c7224", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "php": "^8.0" + }, + "require-dev": { + "mockery/mockery": "^1.2", + "pestphp/pest": "^1.21", + "spatie/pest-plugin-snapshots": "^1.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spatie\\ArrayToXml\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://freek.dev", + "role": "Developer" + } + ], + "description": "Convert an array to xml", + "homepage": "https://github.com/spatie/array-to-xml", + "keywords": [ + "array", + "convert", + "xml" + ], + "support": { + "source": "https://github.com/spatie/array-to-xml/tree/3.4.4" + }, + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + }, + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2025-12-15T09:00:41+00:00" + }, + { + "name": "symfony/console", + "version": "v7.4.14", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "92f58bc4bf97a92ed1b9f367f0cd44f20bde0e87" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/92f58bc4bf97a92ed1b9f367f0cd44f20bde0e87", + "reference": "92f58bc4bf97a92ed1b9f367f0cd44f20bde0e87", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^7.2|^8.0" + }, + "conflict": { + "symfony/dependency-injection": "<6.4", + "symfony/dotenv": "<6.4", + "symfony/event-dispatcher": "<6.4", + "symfony/lock": "<6.4", + "symfony/process": "<6.4" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/lock": "^6.4|^7.0|^8.0", + "symfony/messenger": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Console\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Eases the creation of beautiful and testable command line interfaces", + "homepage": "https://symfony.com", + "keywords": [ + "cli", + "command-line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v7.4.14" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-06-16T11:50:14+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.7.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "f3202fa1b5097b0af062dc978b32ecf63404e31d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/f3202fa1b5097b0af062dc978b32ecf63404e31d", + "reference": "f3202fa1b5097b0af062dc978b32ecf63404e31d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.7-dev" + } + }, + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.7.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-06-05T06:23:12+00:00" + }, + { + "name": "symfony/filesystem", + "version": "v7.4.11", + "source": { + "type": "git", + "url": "https://github.com/symfony/filesystem.git", + "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/d721ea61b4a5fba8c5b6e7c1feda19efea144b50", + "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.8" + }, + "require-dev": { + "symfony/process": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Provides basic utilities for the filesystem", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/filesystem/tree/v7.4.11" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-05-11T16:38:44+00:00" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.37.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "141046a8f9477948ff284fa65be2095baafb94f2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/141046a8f9477948ff284fa65be2095baafb94f2", + "reference": "141046a8f9477948ff284fa65be2095baafb94f2", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.37.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-04-10T16:19:22+00:00" + }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.38.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "e9247d281d694a5120554d9afaf54e070e88a603" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/e9247d281d694a5120554d9afaf54e070e88a603", + "reference": "e9247d281d694a5120554d9afaf54e070e88a603", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.38.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-05-26T05:58:03+00:00" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.38.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/2d446c214bdbe5b71bde5011b060a05fece3ae6b", + "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.38.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-05-25T13:48:31+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.38.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", + "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", + "shasum": "" + }, + "require": { + "ext-iconv": "*", + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-05-27T06:59:30+00:00" + }, + { + "name": "symfony/polyfill-php84", + "version": "v1.38.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php84.git", + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php84\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.4+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php84/tree/v1.38.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-05-26T12:51:13+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v3.7.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "c0a284bab1ed8aa0417e3d69250ab437739563a0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/c0a284bab1ed8aa0417e3d69250ab437739563a0", + "reference": "c0a284bab1ed8aa0417e3d69250ab437739563a0", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "ext-psr": "<1.1|>=2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/v3.7.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-06-16T09:55:08+00:00" + }, + { + "name": "symfony/string", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "961683010db3b27ec6ebcd7308e6e1ee8fa7ffde" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/961683010db3b27ec6ebcd7308e6e1ee8fa7ffde", + "reference": "961683010db3b27ec6ebcd7308e6e1ee8fa7ffde", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3.0", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.33", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/translation-contracts": "<2.5" + }, + "require-dev": { + "symfony/emoji": "^7.1|^8.0", + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/intl": "^6.4|^7.0|^8.0", + "symfony/translation-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-05-23T15:23:29+00:00" + }, + { + "name": "vimeo/psalm", + "version": "6.16.1", + "source": { + "type": "git", + "url": "https://github.com/vimeo/psalm.git", + "reference": "f1f5de594dc76faf8784e02d3dc4716c91c6f6ac" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vimeo/psalm/zipball/f1f5de594dc76faf8784e02d3dc4716c91c6f6ac", + "reference": "f1f5de594dc76faf8784e02d3dc4716c91c6f6ac", + "shasum": "" + }, + "require": { + "amphp/amp": "^3", + "amphp/byte-stream": "^2", + "amphp/parallel": "^2.3", + "composer-runtime-api": "^2", + "composer/semver": "^1.4 || ^2.0 || ^3.0", + "composer/xdebug-handler": "^2.0 || ^3.0", + "danog/advanced-json-rpc": "^3.1", + "dnoegel/php-xdg-base-dir": "^0.1.1", + "ext-ctype": "*", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-simplexml": "*", + "ext-tokenizer": "*", + "felixfbecker/language-server-protocol": "^1.5.3", + "fidry/cpu-core-counter": "^0.4.1 || ^0.5.1 || ^1.0.0", + "netresearch/jsonmapper": "^5.0", + "nikic/php-parser": "^5.0.0", + "php": "~8.1.31 || ~8.2.27 || ~8.3.16 || ~8.4.3 || ~8.5.0", + "sebastian/diff": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0", + "spatie/array-to-xml": "^2.17.0 || ^3.0", + "symfony/console": "^6.0 || ^7.0 || ^8.0", + "symfony/filesystem": "~6.3.12 || ~6.4.3 || ^7.0.3 || ^8.0", + "symfony/polyfill-php84": "^1.31.0" + }, + "provide": { + "psalm/psalm": "self.version" + }, + "require-dev": { + "amphp/phpunit-util": "^3", + "bamarni/composer-bin-plugin": "^1.4", + "brianium/paratest": "^6.9", + "danog/class-finder": "^0.4.8", + "dg/bypass-finals": "^1.5", + "ext-curl": "*", + "mockery/mockery": "^1.5", + "nunomaduro/mock-final-classes": "^1.1", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/phpdoc-parser": "^1.6", + "phpunit/phpunit": "^9.6", + "psalm/plugin-mockery": "^1.1", + "psalm/plugin-phpunit": "^0.19", + "slevomat/coding-standard": "^8.4", + "squizlabs/php_codesniffer": "^3.6", + "symfony/process": "^6.0 || ^7.0 || ^8.0" + }, + "suggest": { + "ext-curl": "In order to send data to shepherd", + "ext-igbinary": "^2.0.5 is required, used to serialize caching data" + }, + "bin": [ + "psalm", + "psalm-language-server", + "psalm-plugin", + "psalm-refactor", + "psalm-review", + "psalter" + ], + "type": "project", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev", + "dev-2.x": "2.x-dev", + "dev-3.x": "3.x-dev", + "dev-4.x": "4.x-dev", + "dev-5.x": "5.x-dev", + "dev-6.x": "6.x-dev", + "dev-master": "7.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psalm\\": "src/Psalm/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Matthew Brown" + }, + { + "name": "Daniil Gentili", + "email": "daniil@daniil.it" + } + ], + "description": "A static analysis tool for finding errors in PHP applications", + "keywords": [ + "code", + "inspection", + "php", + "static analysis" + ], + "support": { + "docs": "https://psalm.dev/docs", + "issues": "https://github.com/vimeo/psalm/issues", + "source": "https://github.com/vimeo/psalm" + }, + "time": "2026-03-19T10:56:09+00:00" + }, + { + "name": "webmozart/assert", + "version": "2.4.1", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "2ccb7c2e821038c03a3e6e1700c570c158c55f70" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/2ccb7c2e821038c03a3e6e1700c570c158c55f70", + "reference": "2ccb7c2e821038c03a3e6e1700c570c158c55f70", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-date": "*", + "ext-filter": "*", + "php": "^8.2" + }, + "suggest": { + "ext-intl": "", + "ext-simplexml": "", + "ext-spl": "" + }, + "type": "library", + "extra": { + "psalm": { + "pluginClass": "Webmozart\\Assert\\PsalmPlugin" + }, + "branch-alias": { + "dev-master": "2.0-dev", + "dev-feature/2-0": "2.0-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + }, + { + "name": "Woody Gilk", + "email": "woody.gilk@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/2.4.1" + }, + "time": "2026-06-15T15:31:57+00:00" + } + ], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": false, + "prefer-lowest": false, + "platform": {}, + "platform-dev": {}, + "platform-overrides": { + "php": "8.2.27" + }, + "plugin-api-version": "2.9.0" +} From 5738720a43e7c5f557909dcefe8b3a9b001129c8 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 19:14:36 +0200 Subject: [PATCH 02/16] ci(psalm): Satisfy psalm Signed-off-by: Joas Schilling --- lib/Activity/Provider.php | 1 + lib/Activity/Setting.php | 7 +++++++ lib/AppInfo/Application.php | 2 ++ lib/BackgroundJob/EscalationJob.php | 1 + lib/BackgroundJob/ReminderJob.php | 1 + lib/BackgroundJob/YearRolloverJob.php | 1 + lib/ConfigLexicon.php | 3 +++ lib/Dashboard/AbsenceWidget.php | 13 +++++++++++-- lib/Db/Entitlement.php | 1 + lib/Db/LeaveRequest.php | 1 + lib/Db/LeaveType.php | 1 + lib/Db/RequestComment.php | 1 + lib/Db/RequestEvent.php | 1 + lib/Exception/ConflictException.php | 1 + lib/Exception/ForbiddenException.php | 1 + lib/Exception/NotFoundException.php | 1 + lib/Exception/ValidationException.php | 1 + lib/Listener/UserDeletedListener.php | 1 + lib/Migration/ConvertConfigTypes.php | 2 ++ lib/Migration/DisableAuditLogging.php | 2 ++ lib/Migration/EnableAuditLogging.php | 2 ++ lib/Migration/SeedLeaveTypes.php | 2 ++ .../Version1000Date20260710000000.php | 1 + .../Version1001Date20260711000000.php | 1 + .../Version1002Date20260711120000.php | 2 ++ .../Version1003Date20260711140000.php | 2 ++ lib/Notification/Notifier.php | 3 +++ lib/Service/ActivityPublisher.php | 2 +- lib/Service/PersonalDefaultsService.php | 2 +- lib/Service/RequestService.php | 8 ++++---- lib/Settings/AdminDeclarativeSettings.php | 3 +++ lib/Settings/AdminSection.php | 4 ++++ lib/Settings/Personal.php | 3 +++ psalm.xml | 18 ++++++++++++++++-- 34 files changed, 86 insertions(+), 10 deletions(-) diff --git a/lib/Activity/Provider.php b/lib/Activity/Provider.php index 450c83e..a0ea968 100644 --- a/lib/Activity/Provider.php +++ b/lib/Activity/Provider.php @@ -24,6 +24,7 @@ public function __construct( ) { } + #[\Override] public function parse($language, IEvent $event, ?IEvent $previousEvent = null): IEvent { if ($event->getApp() !== ConfigService::APP_ID) { throw new \InvalidArgumentException('Not an Absence event'); diff --git a/lib/Activity/Setting.php b/lib/Activity/Setting.php index a2a3f2d..c661106 100644 --- a/lib/Activity/Setting.php +++ b/lib/Activity/Setting.php @@ -18,30 +18,37 @@ public function __construct( ) { } + #[\Override] public function getIdentifier(): string { return ConfigService::APP_ID; } + #[\Override] public function getName(): string { return $this->l->t('Leave requests and approvals'); } + #[\Override] public function getPriority(): int { return 60; } + #[\Override] public function canChangeStream(): bool { return true; } + #[\Override] public function isDefaultEnabledStream(): bool { return true; } + #[\Override] public function canChangeMail(): bool { return true; } + #[\Override] public function isDefaultEnabledMail(): bool { return false; } diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index bf5c1f0..dfe55fb 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -26,6 +26,7 @@ public function __construct(array $urlParams = []) { parent::__construct(self::APP_ID, $urlParams); } + #[\Override] public function register(IRegistrationContext $context): void { $context->registerConfigLexicon(ConfigLexicon::class); $context->registerDeclarativeSettings(AdminDeclarativeSettings::class); @@ -34,6 +35,7 @@ public function register(IRegistrationContext $context): void { $context->registerEventListener(UserDeletedEvent::class, UserDeletedListener::class); } + #[\Override] public function boot(IBootContext $context): void { } } diff --git a/lib/BackgroundJob/EscalationJob.php b/lib/BackgroundJob/EscalationJob.php index b578988..920ffb2 100644 --- a/lib/BackgroundJob/EscalationJob.php +++ b/lib/BackgroundJob/EscalationJob.php @@ -32,6 +32,7 @@ public function __construct( $this->setTimeSensitivity(self::TIME_INSENSITIVE); } + #[\Override] protected function run($argument): void { // The window counts working days (Mon–Fri, §5.4): a request filed on Friday // does not burn its manager's window over the weekend. With the midnight diff --git a/lib/BackgroundJob/ReminderJob.php b/lib/BackgroundJob/ReminderJob.php index 70d9aec..4d42b3a 100644 --- a/lib/BackgroundJob/ReminderJob.php +++ b/lib/BackgroundJob/ReminderJob.php @@ -32,6 +32,7 @@ public function __construct( $this->setTimeSensitivity(self::TIME_INSENSITIVE); } + #[\Override] protected function run($argument): void { $window = max(1, $this->config->getEscalationWindowDays()); $lead = max(0, $this->config->getReminderLeadDays()); diff --git a/lib/BackgroundJob/YearRolloverJob.php b/lib/BackgroundJob/YearRolloverJob.php index 5190689..06e17b8 100644 --- a/lib/BackgroundJob/YearRolloverJob.php +++ b/lib/BackgroundJob/YearRolloverJob.php @@ -30,6 +30,7 @@ public function __construct( $this->setTimeSensitivity(self::TIME_INSENSITIVE); } + #[\Override] protected function run($argument): void { $currentYear = (int)date('Y'); diff --git a/lib/ConfigLexicon.php b/lib/ConfigLexicon.php index 758e331..72af55f 100644 --- a/lib/ConfigLexicon.php +++ b/lib/ConfigLexicon.php @@ -44,10 +44,12 @@ class ConfigLexicon implements ILexicon { public const KEY_HOLIDAY_COUNTRY = 'holiday_country'; public const KEY_HOLIDAY_REGION = 'holiday_region'; + #[\Override] public function getStrictness(): Strictness { return Strictness::NOTICE; } + #[\Override] public function getAppConfigs(): array { return [ new Entry(self::KEY_HR_GROUP, ValueType::STRING, 'hr', @@ -77,6 +79,7 @@ public function getAppConfigs(): array { ]; } + #[\Override] public function getUserConfigs(): array { return [ new Entry(self::KEY_WORK_WEEKDAYS, ValueType::STRING, '', diff --git a/lib/Dashboard/AbsenceWidget.php b/lib/Dashboard/AbsenceWidget.php index 88cd2f8..30c5671 100644 --- a/lib/Dashboard/AbsenceWidget.php +++ b/lib/Dashboard/AbsenceWidget.php @@ -45,41 +45,50 @@ public function __construct( ) { } + #[\Override] public function getId(): string { return 'absence'; } + #[\Override] public function getTitle(): string { return $this->l->t('Absence'); } + #[\Override] public function getOrder(): int { return 20; } + #[\Override] public function getIconClass(): string { return 'icon-absence'; } + #[\Override] public function getIconUrl(): string { return $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('absence', 'app-dark.svg')); } + #[\Override] public function getUrl(): ?string { return $this->urlGenerator->linkToRouteAbsolute('absence.page.index'); } + #[\Override] public function load(): void { // Nothing to enqueue: the core Dashboard renders the API items. } /** - * @return WidgetItem[] + * @return list */ + #[\Override] public function getItems(string $userId, ?string $since = null, int $limit = 7): array { return $this->buildItems($userId, $limit); } + #[\Override] public function getItemsV2(string $userId, ?string $since = null, int $limit = 7): WidgetItems { $items = $this->buildItems($userId, $limit); return new WidgetItems( @@ -89,7 +98,7 @@ public function getItemsV2(string $userId, ?string $since = null, int $limit = 7 } /** - * @return WidgetItem[] + * @return list */ private function buildItems(string $userId, int $limit): array { $appIcon = $this->getIconUrl(); diff --git a/lib/Db/Entitlement.php b/lib/Db/Entitlement.php index 70f7792..854c4b9 100644 --- a/lib/Db/Entitlement.php +++ b/lib/Db/Entitlement.php @@ -56,6 +56,7 @@ public function getEntitlement(): float { return $this->baseDays + $this->carryOverDays + $this->manualAdjustment; } + #[\Override] public function jsonSerialize(): array { return [ 'id' => $this->id, diff --git a/lib/Db/LeaveRequest.php b/lib/Db/LeaveRequest.php index 4a8a413..ca79ec7 100644 --- a/lib/Db/LeaveRequest.php +++ b/lib/Db/LeaveRequest.php @@ -95,6 +95,7 @@ public function __construct() { $this->addType('updatedAt', 'datetime'); } + #[\Override] public function jsonSerialize(): array { return [ 'id' => $this->id, diff --git a/lib/Db/LeaveType.php b/lib/Db/LeaveType.php index ee40437..b6edf4f 100644 --- a/lib/Db/LeaveType.php +++ b/lib/Db/LeaveType.php @@ -59,6 +59,7 @@ public function __construct() { $this->addType('sortOrder', 'integer'); } + #[\Override] public function jsonSerialize(): array { return [ 'id' => $this->id, diff --git a/lib/Db/RequestComment.php b/lib/Db/RequestComment.php index 951f20b..1f36361 100644 --- a/lib/Db/RequestComment.php +++ b/lib/Db/RequestComment.php @@ -31,6 +31,7 @@ public function __construct() { $this->addType('createdAt', 'datetime'); } + #[\Override] public function jsonSerialize(): array { return [ 'id' => $this->id, diff --git a/lib/Db/RequestEvent.php b/lib/Db/RequestEvent.php index d2943df..da6511d 100644 --- a/lib/Db/RequestEvent.php +++ b/lib/Db/RequestEvent.php @@ -36,6 +36,7 @@ public function __construct() { $this->addType('createdAt', 'datetime'); } + #[\Override] public function jsonSerialize(): array { return [ 'id' => $this->id, diff --git a/lib/Exception/ConflictException.php b/lib/Exception/ConflictException.php index fcdcb8d..85a4374 100644 --- a/lib/Exception/ConflictException.php +++ b/lib/Exception/ConflictException.php @@ -11,6 +11,7 @@ use OCP\AppFramework\Http; class ConflictException extends AbsenceException { + #[\Override] public function getHttpStatus(): int { return Http::STATUS_CONFLICT; } diff --git a/lib/Exception/ForbiddenException.php b/lib/Exception/ForbiddenException.php index 1a51690..564495b 100644 --- a/lib/Exception/ForbiddenException.php +++ b/lib/Exception/ForbiddenException.php @@ -11,6 +11,7 @@ use OCP\AppFramework\Http; class ForbiddenException extends AbsenceException { + #[\Override] public function getHttpStatus(): int { return Http::STATUS_FORBIDDEN; } diff --git a/lib/Exception/NotFoundException.php b/lib/Exception/NotFoundException.php index c14cb04..3f3b955 100644 --- a/lib/Exception/NotFoundException.php +++ b/lib/Exception/NotFoundException.php @@ -11,6 +11,7 @@ use OCP\AppFramework\Http; class NotFoundException extends AbsenceException { + #[\Override] public function getHttpStatus(): int { return Http::STATUS_NOT_FOUND; } diff --git a/lib/Exception/ValidationException.php b/lib/Exception/ValidationException.php index 28159d3..a4debb7 100644 --- a/lib/Exception/ValidationException.php +++ b/lib/Exception/ValidationException.php @@ -11,6 +11,7 @@ use OCP\AppFramework\Http; class ValidationException extends AbsenceException { + #[\Override] public function getHttpStatus(): int { return Http::STATUS_UNPROCESSABLE_ENTITY; } diff --git a/lib/Listener/UserDeletedListener.php b/lib/Listener/UserDeletedListener.php index db55e81..82f8192 100644 --- a/lib/Listener/UserDeletedListener.php +++ b/lib/Listener/UserDeletedListener.php @@ -31,6 +31,7 @@ public function __construct( ) { } + #[\Override] public function handle(Event $event): void { if (!$event instanceof UserDeletedEvent) { return; diff --git a/lib/Migration/ConvertConfigTypes.php b/lib/Migration/ConvertConfigTypes.php index dae3dfa..34d5c40 100644 --- a/lib/Migration/ConvertConfigTypes.php +++ b/lib/Migration/ConvertConfigTypes.php @@ -42,10 +42,12 @@ public function __construct( ) { } + #[\Override] public function getName(): string { return 'Align stored absence config values with the config lexicon'; } + #[\Override] public function run(IOutput $output): void { $converted = 0; foreach (self::TYPES as $key => $type) { diff --git a/lib/Migration/DisableAuditLogging.php b/lib/Migration/DisableAuditLogging.php index 348f7ae..3432293 100644 --- a/lib/Migration/DisableAuditLogging.php +++ b/lib/Migration/DisableAuditLogging.php @@ -22,10 +22,12 @@ public function __construct( ) { } + #[\Override] public function getName(): string { return 'Remove Absence from the always-on log condition'; } + #[\Override] public function run(IOutput $output): void { $condition = $this->config->getSystemValue('log.condition', []); if (!is_array($condition) || !isset($condition['apps']) || !is_array($condition['apps'])) { diff --git a/lib/Migration/EnableAuditLogging.php b/lib/Migration/EnableAuditLogging.php index 204cb4f..e510058 100644 --- a/lib/Migration/EnableAuditLogging.php +++ b/lib/Migration/EnableAuditLogging.php @@ -30,10 +30,12 @@ public function __construct( ) { } + #[\Override] public function getName(): string { return 'Ensure Absence audit actions are always logged'; } + #[\Override] public function run(IOutput $output): void { $condition = $this->config->getSystemValue('log.condition', []); if (!is_array($condition)) { diff --git a/lib/Migration/SeedLeaveTypes.php b/lib/Migration/SeedLeaveTypes.php index 7d80938..ed1b8eb 100644 --- a/lib/Migration/SeedLeaveTypes.php +++ b/lib/Migration/SeedLeaveTypes.php @@ -32,10 +32,12 @@ public function __construct( ) { } + #[\Override] public function getName(): string { return 'Seed default absence leave types'; } + #[\Override] public function run(IOutput $output): void { if ($this->mapper->countAll() > 0) { return; diff --git a/lib/Migration/Version1000Date20260710000000.php b/lib/Migration/Version1000Date20260710000000.php index 80bc4c6..33fa811 100644 --- a/lib/Migration/Version1000Date20260710000000.php +++ b/lib/Migration/Version1000Date20260710000000.php @@ -19,6 +19,7 @@ * Initial schema for the Absence app (spec §3). */ class Version1000Date20260710000000 extends SimpleMigrationStep { + #[\Override] public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { /** @var ISchemaWrapper $schema */ $schema = $schemaClosure(); diff --git a/lib/Migration/Version1001Date20260711000000.php b/lib/Migration/Version1001Date20260711000000.php index f9fc1f3..3ea26e3 100644 --- a/lib/Migration/Version1001Date20260711000000.php +++ b/lib/Migration/Version1001Date20260711000000.php @@ -21,6 +21,7 @@ * {@see Version1000Date20260710000000} already created them. */ class Version1001Date20260711000000 extends SimpleMigrationStep { + #[\Override] public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { /** @var ISchemaWrapper $schema */ $schema = $schemaClosure(); diff --git a/lib/Migration/Version1002Date20260711120000.php b/lib/Migration/Version1002Date20260711120000.php index ac8ac61..733c857 100644 --- a/lib/Migration/Version1002Date20260711120000.php +++ b/lib/Migration/Version1002Date20260711120000.php @@ -25,6 +25,7 @@ public function __construct( ) { } + #[\Override] public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { /** @var ISchemaWrapper $schema */ $schema = $schemaClosure(); @@ -39,6 +40,7 @@ public function changeSchema(IOutput $output, Closure $schemaClosure, array $opt return $schema; } + #[\Override] public function postSchemaChange(IOutput $output, Closure $schemaClosure, array $options): void { // Sick leave is recorded by HR, not self-requested. Only touch the seeded row. $qb = $this->db->getQueryBuilder(); diff --git a/lib/Migration/Version1003Date20260711140000.php b/lib/Migration/Version1003Date20260711140000.php index 3f8f2d4..867f453 100644 --- a/lib/Migration/Version1003Date20260711140000.php +++ b/lib/Migration/Version1003Date20260711140000.php @@ -27,6 +27,7 @@ public function __construct( ) { } + #[\Override] public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { /** @var ISchemaWrapper $schema */ $schema = $schemaClosure(); @@ -50,6 +51,7 @@ public function changeSchema(IOutput $output, Closure $schemaClosure, array $opt return $changed ? $schema : null; } + #[\Override] public function postSchemaChange(IOutput $output, Closure $schemaClosure, array $options): void { // Self-requestable, approval-based types require a replacement by default. $qb = $this->db->getQueryBuilder(); diff --git a/lib/Notification/Notifier.php b/lib/Notification/Notifier.php index ba58209..db26d50 100644 --- a/lib/Notification/Notifier.php +++ b/lib/Notification/Notifier.php @@ -25,14 +25,17 @@ public function __construct( ) { } + #[\Override] public function getID(): string { return ConfigService::APP_ID; } + #[\Override] public function getName(): string { return $this->l10nFactory->get(ConfigService::APP_ID)->t('Absence'); } + #[\Override] public function prepare(INotification $notification, string $languageCode): INotification { if ($notification->getApp() !== ConfigService::APP_ID) { throw new UnknownNotificationException('Notification not from Absence'); diff --git a/lib/Service/ActivityPublisher.php b/lib/Service/ActivityPublisher.php index daf96d5..743cb77 100644 --- a/lib/Service/ActivityPublisher.php +++ b/lib/Service/ActivityPublisher.php @@ -47,7 +47,7 @@ public function publish(string $subject, array $params, array $affectedUsers, ?L $event->setApp(ConfigService::APP_ID) ->setType(self::TYPE) ->setAffectedUser($uid) - ->setAuthor($this->activityManager->getCurrentUserId() ?? '') + ->setAuthor($this->activityManager->getCurrentUserId()) ->setSubject($subject, $params); if ($request !== null) { $event->setObject('absence_request', (int)$request->getId()); diff --git a/lib/Service/PersonalDefaultsService.php b/lib/Service/PersonalDefaultsService.php index 9726700..099461f 100644 --- a/lib/Service/PersonalDefaultsService.php +++ b/lib/Service/PersonalDefaultsService.php @@ -159,7 +159,7 @@ private function countryFromPhone(string $uid): ?string { } catch (\Throwable $e) { return null; } - $digits = preg_replace('/\D/', '', (string)$phone); + $digits = preg_replace('/\D/', '', $phone); if ($phone === '' || !str_starts_with(trim($phone), '+') || $digits === '') { // Without a leading "+" the calling code is ambiguous — do not guess. return null; diff --git a/lib/Service/RequestService.php b/lib/Service/RequestService.php index 64d35f8..9e6f5a4 100644 --- a/lib/Service/RequestService.php +++ b/lib/Service/RequestService.php @@ -177,7 +177,7 @@ public function list(string $actorUid, array $filters, ?int $limit, ?int $offset /** * Apply for leave (§5.1). * - * @param array{typeId:int,startDate:string,endDate:string,reason?:?string,attachmentNote?:?string,employeeUid?:?string} $data + * @param array{typeId:int,startDate:string,endDate:string,reason?:?string,attachmentNote?:?string,employeeUid?:?string,workingDays?:?float,replacementUid?:?string} $data * @throws ValidationException|ConflictException|ForbiddenException */ public function create(string $actorUid, array $data): LeaveRequest { @@ -222,7 +222,7 @@ public function create(string $actorUid, array $data): LeaveRequest { // Non-requestable types, auto-approve types, and any HR-recorded leave are // booked straight to APPROVED with no approval workflow (§4.1, §5.6). - $recordedDirectly = !$type->getEmployeeRequestable() || !$type->getRequiresApproval() || ($onBehalf && $isHr); + $recordedDirectly = !$type->getEmployeeRequestable() || !$type->getRequiresApproval() || $onBehalf; if ($recordedDirectly) { $request->setStatus(LeaveRequest::STATUS_APPROVED); $request->setDecidedBy($actorUid); @@ -420,7 +420,7 @@ private function hrEdit(string $actorUid, LeaveRequest $request, array $data): L $this->applyCalendar($request); } $this->activity->publish(ActivityPublisher::SUBJECT_CREATED, $this->activityParams($request), [$request->getEmployeeUid()], $request); - $this->audit('request_hr_edited', $request, ['actor' => $actorUid, 'detail' => 'HR adjusted to ' . $request->getStartDate() . ' – ' . $request->getEndDate() . ' (' . $request->getWorkingDays() . ' days)']); + $this->audit('request_hr_edited', $request, ['actor' => $actorUid, 'detail' => 'HR adjusted to ' . $request->getStartDate() . ' – ' . $request->getEndDate() . ' (' . (string)$request->getWorkingDays() . ' days)']); return $request; } @@ -794,7 +794,7 @@ private function assertNoOverlap(string $employeeUid, string $start, string $end * and any pending edits that supersede it) — excluded from overlap checks so an * approved original and its in-flight edit don't flag each other (§5.3). * - * @return int[] + * @return list */ private function chainExcludeIds(LeaveRequest $request): array { $ids = [$request->getId()]; diff --git a/lib/Settings/AdminDeclarativeSettings.php b/lib/Settings/AdminDeclarativeSettings.php index c53daa4..1856a6d 100644 --- a/lib/Settings/AdminDeclarativeSettings.php +++ b/lib/Settings/AdminDeclarativeSettings.php @@ -34,6 +34,7 @@ public function __construct( ) { } + #[\Override] public function getSchema(): array { return [ 'id' => self::FORM_ID, @@ -132,6 +133,7 @@ public function getSchema(): array { ]; } + #[\Override] public function getValue(string $fieldId, IUser $user): mixed { $config = $this->config->getAdminConfig(); if (!array_key_exists($fieldId, $config)) { @@ -140,6 +142,7 @@ public function getValue(string $fieldId, IUser $user): mixed { return $config[$fieldId]; } + #[\Override] public function setValue(string $fieldId, mixed $value, IUser $user): void { $this->config->setAdminValue($fieldId, $value); $this->logger->info('Absence action: admin_config_updated', [ diff --git a/lib/Settings/AdminSection.php b/lib/Settings/AdminSection.php index 2c53c45..b02804d 100644 --- a/lib/Settings/AdminSection.php +++ b/lib/Settings/AdminSection.php @@ -20,18 +20,22 @@ public function __construct( ) { } + #[\Override] public function getID(): string { return ConfigService::APP_ID; } + #[\Override] public function getName(): string { return $this->l->t('Absence'); } + #[\Override] public function getPriority(): int { return 80; } + #[\Override] public function getIcon(): string { return $this->url->imagePath(ConfigService::APP_ID, 'app-dark.svg'); } diff --git a/lib/Settings/Personal.php b/lib/Settings/Personal.php index c3ed7e7..2e45357 100644 --- a/lib/Settings/Personal.php +++ b/lib/Settings/Personal.php @@ -24,6 +24,7 @@ public function __construct( ) { } + #[\Override] public function getForm(): TemplateResponse { $uid = $this->userSession->getUser()?->getUID() ?? ''; $this->initialState->provideInitialState('personalConfig', $this->personalDefaults->resolve($uid)); @@ -31,12 +32,14 @@ public function getForm(): TemplateResponse { return new TemplateResponse(ConfigService::APP_ID, 'personal-settings'); } + #[\Override] public function getSection(): string { // Append to the built-in Availability page (/settings/user/availability) // rather than a separate Absence section. return 'availability'; } + #[\Override] public function getPriority(): int { // Below the core Availability form (priority 10). return 50; diff --git a/psalm.xml b/psalm.xml index a6d132a..94948f7 100644 --- a/psalm.xml +++ b/psalm.xml @@ -5,23 +5,37 @@ resolveFromConfigFile="true" findUnusedBaselineEntry="true" findUnusedCode="false" + phpVersion="8.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://getpsalm.org/schema/config" - xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd"> + xsi:schemaLocation="https://getpsalm.org/schema/config vendor-bin/psalm/vendor/vimeo/psalm/config.xsd"> + + + + + - + + + + + + + + + From ba46642fc86619ab7bf173821604788b4846a7b3 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 19:18:27 +0200 Subject: [PATCH 03/16] ci(psalm): Fix remaining psalm errors Assisted-by: ClaudeCode:claude-opus-4-8 Signed-off-by: Joas Schilling --- lib/Service/PersonalDefaultsService.php | 3 ++- lib/Service/RequestService.php | 32 ++++++++++++++++++++----- 2 files changed, 28 insertions(+), 7 deletions(-) diff --git a/lib/Service/PersonalDefaultsService.php b/lib/Service/PersonalDefaultsService.php index 099461f..f0343d2 100644 --- a/lib/Service/PersonalDefaultsService.php +++ b/lib/Service/PersonalDefaultsService.php @@ -165,7 +165,8 @@ private function countryFromPhone(string $uid): ?string { return null; } for ($len = 3; $len >= 1; $len--) { - $prefix = substr($digits, 0, $len); + // Numeric-string array keys are stored as ints, so match with an int offset. + $prefix = (int)substr($digits, 0, $len); if (isset(self::CALLING_CODES[$prefix])) { return self::CALLING_CODES[$prefix]; } diff --git a/lib/Service/RequestService.php b/lib/Service/RequestService.php index 9e6f5a4..cbb462f 100644 --- a/lib/Service/RequestService.php +++ b/lib/Service/RequestService.php @@ -154,7 +154,19 @@ private function withReplacementName(array $data, LeaveRequest $request): array */ public function list(string $actorUid, array $filters, ?int $limit, ?int $offset): array { $scope = (string)($filters['scope'] ?? 'mine'); - $query = array_intersect_key($filters, array_flip(['status', 'typeId', 'from', 'to'])); + $query = []; + if (isset($filters['status'])) { + $query['status'] = (string)$filters['status']; + } + if (isset($filters['typeId'])) { + $query['typeId'] = (int)$filters['typeId']; + } + if (isset($filters['from'])) { + $query['from'] = (string)$filters['from']; + } + if (isset($filters['to'])) { + $query['to'] = (string)$filters['to']; + } if ($scope === 'reports' || $scope === 'approvals') { $query['managerUid'] = $actorUid; @@ -794,15 +806,23 @@ private function assertNoOverlap(string $employeeUid, string $start, string $end * and any pending edits that supersede it) — excluded from overlap checks so an * approved original and its in-flight edit don't flag each other (§5.3). * - * @return list + * @return list */ private function chainExcludeIds(LeaveRequest $request): array { - $ids = [$request->getId()]; - if ($request->getSupersedesId() !== null) { - $ids[] = $request->getSupersedesId(); + $ids = []; + $id = $request->getId(); + if ($id !== null) { + $ids[] = $id; + } + $supersedesId = $request->getSupersedesId(); + if ($supersedesId !== null) { + $ids[] = $supersedesId; } foreach ($this->requestMapper->findBySupersedesId($request->getId()) as $child) { - $ids[] = $child->getId(); + $childId = $child->getId(); + if ($childId !== null) { + $ids[] = $childId; + } } return $ids; } From 648e7cf48f00c7e63a7200de0dfd26815caa77f4 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 19:19:18 +0200 Subject: [PATCH 04/16] chore(cs): Apply autofixes Signed-off-by: Joas Schilling --- lib/Controller/PageController.php | 2 +- lib/Migration/Version1000Date20260710000000.php | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/Controller/PageController.php b/lib/Controller/PageController.php index 140c481..f6dedd7 100644 --- a/lib/Controller/PageController.php +++ b/lib/Controller/PageController.php @@ -8,8 +8,8 @@ namespace OCA\Absence\Controller; -use OCA\Absence\Service\SessionService; use OCA\Absence\Db\LeaveTypeMapper; +use OCA\Absence\Service\SessionService; use OCP\AppFramework\Controller; use OCP\AppFramework\Http\Attribute\NoAdminRequired; use OCP\AppFramework\Http\Attribute\NoCSRFRequired; diff --git a/lib/Migration/Version1000Date20260710000000.php b/lib/Migration/Version1000Date20260710000000.php index 33fa811..0afe91b 100644 --- a/lib/Migration/Version1000Date20260710000000.php +++ b/lib/Migration/Version1000Date20260710000000.php @@ -11,7 +11,6 @@ use Closure; use OCP\DB\ISchemaWrapper; use OCP\DB\Types; -use OCP\Migration\IMigrationStep; use OCP\Migration\IOutput; use OCP\Migration\SimpleMigrationStep; From 2bc0988a8fc4c1801f1954d14a1c84739b8b9c6b Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 19:23:14 +0200 Subject: [PATCH 05/16] ci(workflows): Add GitHub action files Signed-off-by: Joas Schilling --- .github/dependabot.yml | 42 ++++ .github/workflows/ai-policy.yml | 178 +++++++++++++++ .github/workflows/appstore-build-publish.yml | 202 +++++++++++++++++ .../workflows/dependabot-approve-merge.yml | 101 +++++++++ .github/workflows/fixup.yml | 36 +++ .github/workflows/lint-info-xml.yml | 40 ++++ .github/workflows/lint-php-cs.yml | 54 +++++ .github/workflows/lint-php.yml | 76 +++++++ .github/workflows/npm-audit-fix.yml | 85 ++++++++ .github/workflows/npm-build.yml | 113 ++++++++++ .github/workflows/phpunit-mysql.yml | 205 ++++++++++++++++++ .github/workflows/psalm-matrix.yml | 91 ++++++++ .github/workflows/reuse.yml | 27 +++ .github/workflows/sync-workflow-templates.yml | 141 ++++++++++++ .../update-nextcloud-ocp-approve-merge.yml | 59 +++++ .../workflows/update-nextcloud-ocp-matrix.yml | 112 ++++++++++ 16 files changed, 1562 insertions(+) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/ai-policy.yml create mode 100644 .github/workflows/appstore-build-publish.yml create mode 100644 .github/workflows/dependabot-approve-merge.yml create mode 100644 .github/workflows/fixup.yml create mode 100644 .github/workflows/lint-info-xml.yml create mode 100644 .github/workflows/lint-php-cs.yml create mode 100644 .github/workflows/lint-php.yml create mode 100644 .github/workflows/npm-audit-fix.yml create mode 100644 .github/workflows/npm-build.yml create mode 100644 .github/workflows/phpunit-mysql.yml create mode 100644 .github/workflows/psalm-matrix.yml create mode 100644 .github/workflows/reuse.yml create mode 100644 .github/workflows/sync-workflow-templates.yml create mode 100644 .github/workflows/update-nextcloud-ocp-approve-merge.yml create mode 100644 .github/workflows/update-nextcloud-ocp-matrix.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..484cbf2 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,42 @@ +# SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: CC0-1.0 +version: 2 +updates: +- package-ecosystem: composer + directories: + - "/" + - "/vendor-bin/csfixer" + - "/vendor-bin/openapi-extractor" + - "/vendor-bin/phpunit" + - "/vendor-bin/psalm" + schedule: + interval: weekly + day: saturday + time: "03:00" + timezone: Europe/Paris + cooldown: + default-days: 10 + commit-message: + prefix: "build" + include: "scope" + versioning-strategy: "increase" + labels: + - 3. to review + - dependencies +- package-ecosystem: npm + directory: "/" + schedule: + interval: weekly + day: saturday + time: "03:00" + timezone: Europe/Paris + cooldown: + default-days: 10 + commit-message: + prefix: "build" + include: "scope" + versioning-strategy: "increase" + open-pull-requests-limit: 10 + labels: + - 3. to review + - dependencies diff --git a/.github/workflows/ai-policy.yml b/.github/workflows/ai-policy.yml new file mode 100644 index 0000000..4b4653e --- /dev/null +++ b/.github/workflows/ai-policy.yml @@ -0,0 +1,178 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: AI Policy + +on: + pull_request: + types: [opened, synchronize, reopened] + branches: [master, main] + +permissions: + contents: read + # Required to add the "AI assisted" label via `gh pr edit --add-label` + pull-requests: write + # Required to create the "AI assisted" label via the REST labels endpoint + # (labels are an issues-scoped resource in the GitHub API) + issues: write + +concurrency: + group: ai-policy-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + check-ai-trailers: + runs-on: ubuntu-latest-low + steps: + - name: Collect PR commit messages + id: collect + env: + # Fall back to the default token when the PAT is unavailable + # (e.g. Dependabot- or fork-triggered runs don't receive Actions secrets) + GH_TOKEN: ${{ secrets.COMMAND_BOT_PAT || github.token }} + COMMITS_URL: ${{ github.event.pull_request.commits_url }} + run: | + set -euo pipefail + gh api ${COMMITS_URL} | jq -r '.[] | .commit.message' > /tmp/pr_commits.txt + echo "--- PR commit messages ---" + cat /tmp/pr_commits.txt + echo "--------------------------" + + - name: Define shared agent detection patterns + run: | + set -euo pipefail + + # Email addresses known to be used by coding agents. + # These should never appear in Signed-off-by because the DCO can only be attested by a human. + EMAIL_PATTERN="copilot@github\.com\ + |noreply@anthropic\.com\ + |devin@cognition\.ai\ + |devin@cognition-labs\.com\ + |aider@aider\.chat\ + |noreply@aider\.chat\ + |codex@openai\.com\ + |cursor@anysphere\.com\ + |windsurf@codeium\.com\ + |codeium@codeium\.com\ + |amazon-q@amazon\.com\ + |codewhisperer@amazon\.com\ + |gemini-code-assist@google\.com\ + |openhands@all-hands\.dev\ + |swe-agent@princeton\.edu" + + # Strip embedded whitespace (used above only for readability) + EMAIL_PATTERN=$(echo "$EMAIL_PATTERN" | tr -d ' \n') + echo "AGENT_EMAIL_PATTERN=${EMAIL_PATTERN}" >> "$GITHUB_ENV" + + # Display-name prefixes used by known coding agents (shared by Signed-off-by and Co-Authored-By checks) + # shellcheck disable=SC2016 + echo 'AGENT_NAMES=GitHub Copilot|Claude( [A-Za-z0-9. -]+)?|Devin( AI)?|aider( \(.*\))?|OpenAI Codex|Cursor( AI)?|Windsurf|Amazon Q|CodeWhisperer|Gemini Code Assist|OpenHands|SWE-agent|AutoCodeRover|Tabnine' >> "$GITHUB_ENV" + + - name: Check for AI-assistant / Assisted-by trailers + id: ai_trailers + run: | + set -euo pipefail + AI_ASSISTED=false + if grep -qiE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt; then + AI_ASSISTED=true + echo "Found AI-assistant/Assisted-by/AI-Assisted-By trailer(s):" + grep -iE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt + fi + echo "ai_assisted=${AI_ASSISTED}" >> "$GITHUB_OUTPUT" + + - name: Check for coding-agent Signed-off-by trailers + id: agent_signoff + run: | + set -euo pipefail + + EMAIL_HITS=$(grep -iE "^Signed-off-by:.*<(${AGENT_EMAIL_PATTERN})>" /tmp/pr_commits.txt 2>/dev/null || true) + NAME_HITS=$(grep -iE "^Signed-off-by: *(${AGENT_NAMES}) *[<(]" /tmp/pr_commits.txt 2>/dev/null || true) + + AGENT_LINES=$(printf '%s\n%s' "$EMAIL_HITS" "$NAME_HITS" | sort -u | sed '/^[[:space:]]*$/d') + + AGENT_SIGNOFF=false + if [ -n "$AGENT_LINES" ]; then + AGENT_SIGNOFF=true + fi + + echo "agent_signoff=${AGENT_SIGNOFF}" >> "$GITHUB_OUTPUT" + { + echo "agent_lines<> "$GITHUB_OUTPUT" + + - name: Check for coding-agent Co-Authored-By trailers + id: co_authored + run: | + set -euo pipefail + + EMAIL_HITS=$(grep -iE "^Co-Authored-By:.*<(${AGENT_EMAIL_PATTERN})>" /tmp/pr_commits.txt 2>/dev/null || true) + NAME_HITS=$(grep -iE "^Co-Authored-By: *(${AGENT_NAMES}) *[<(]" /tmp/pr_commits.txt 2>/dev/null || true) + + CO_AUTHORED=false + if [ -n "$EMAIL_HITS" ] || [ -n "$NAME_HITS" ]; then + CO_AUTHORED=true + echo "Found coding-agent Co-Authored-By trailer(s):" + printf '%s\n%s' "$EMAIL_HITS" "$NAME_HITS" | sort -u | sed '/^[[:space:]]*$/d' + fi + + echo "co_authored=${CO_AUTHORED}" >> "$GITHUB_OUTPUT" + + - name: Create 'AI assisted' label if absent + if: steps.ai_trailers.outputs.ai_assisted == 'true' || steps.agent_signoff.outputs.agent_signoff == 'true' || steps.co_authored.outputs.co_authored == 'true' + env: + # Fall back to the default token when the PAT is unavailable + # (e.g. Dependabot- or fork-triggered runs don't receive Actions secrets) + GH_TOKEN: ${{ secrets.COMMAND_BOT_PAT || github.token }} + run: | + gh api "repos/${{ github.repository }}/labels" \ + --method POST \ + -f name="AI assisted" \ + -f color="d93f0b" \ + -f description="This PR contains AI-assisted commits" \ + 2>/dev/null || true + + - name: Label PR as AI assisted + if: steps.ai_trailers.outputs.ai_assisted == 'true' || steps.agent_signoff.outputs.agent_signoff == 'true' || steps.co_authored.outputs.co_authored == 'true' + env: + # Fall back to the default token when the PAT is unavailable + # (e.g. Dependabot- or fork-triggered runs don't receive Actions secrets) + GH_TOKEN: ${{ secrets.COMMAND_BOT_PAT || github.token }} + run: | + gh api "repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/labels" \ + --method POST \ + -f "labels[]=AI assisted" + echo "Added 'AI assisted' label to PR #${{ github.event.pull_request.number }}" + + - name: Fail on coding-agent Signed-off-by + if: steps.agent_signoff.outputs.agent_signoff == 'true' + env: + AGENT_LINES: ${{ steps.agent_signoff.outputs.agent_lines }} + AGENTS_MD_URL: https://github.com/${{ github.repository }}/blob/${{ github.base_ref }}/AGENTS.md + run: | + echo "::error title=Coding-agent sign-off detected::A Signed-off-by trailer from a known coding agent was found in one or more commits." + echo "" + echo "Offending trailer(s):" + echo "${AGENT_LINES}" + echo "" + echo "The 'Signed-off-by' trailer represents the Developer Certificate of Origin (DCO)" + echo "and must only be attested by a human contributor." + echo "Please amend the affected commit(s) to remove the coding-agent sign-off" + echo "and replace it with an 'Assisted-by' trailer, for example:" + echo "" + echo " Assisted-by: Claude Code:claude-sonnet-4-6" + echo "" + echo "References:" + echo " • AGENTS.md (this repository)" + echo " ${AGENTS_MD_URL}" + echo " • AI Contribution Policy" + echo " https://github.com/nextcloud/.github/blob/master/AI_POLICY.md" + echo " • Contribution Guidelines" + echo " https://github.com/nextcloud/.github/blob/master/CONTRIBUTING.md" + exit 1 diff --git a/.github/workflows/appstore-build-publish.yml b/.github/workflows/appstore-build-publish.yml new file mode 100644 index 0000000..c0b6cde --- /dev/null +++ b/.github/workflows/appstore-build-publish.yml @@ -0,0 +1,202 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Build and publish app release + +on: + release: + types: [published] + +permissions: + contents: write + +jobs: + build_and_publish: + runs-on: ubuntu-latest + + # Only allowed to be run on nextcloud-releases repositories + if: ${{ github.repository_owner == 'nextcloud-releases' }} + + steps: + - name: Check actor permission + uses: skjnldsv/check-actor-permission@69e92a3c4711150929bca9fcf34448c5bf5526e7 # v3.0 + with: + require: write + + - name: Set app env + run: | + # Split and keep last + echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV + echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV + + - name: Checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + path: ${{ env.APP_NAME }} + + - name: Get app version number + id: app-version + uses: skjnldsv/xpath-action@f5b036e9d973f42c86324833fd00be90665fbf77 # v1.0.0 + with: + filename: ${{ env.APP_NAME }}/appinfo/info.xml + expression: "//info//version/text()" + + - name: Validate app version against tag + run: | + [ "${{ env.APP_VERSION }}" = "v${{ fromJSON(steps.app-version.outputs.result).version }}" ] + + - name: Get appinfo data + id: appinfo + uses: skjnldsv/xpath-action@f5b036e9d973f42c86324833fd00be90665fbf77 # v1.0.0 + with: + filename: ${{ env.APP_NAME }}/appinfo/info.xml + expression: "//info//dependencies//nextcloud/@min-version" + + - name: Read package.json node and npm engines version + uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3 + id: versions + # Continue if no package.json + continue-on-error: true + with: + path: ${{ env.APP_NAME }} + fallbackNode: '^24' + fallbackNpm: '^11.3' + + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + # Skip if no package.json + if: ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 + with: + node-version: ${{ steps.versions.outputs.nodeVersion }} + package-manager-cache: false + + - name: Set up npm ${{ steps.versions.outputs.npmVersion }} + # Skip if no package.json + if: ${{ steps.versions.outputs.npmVersion }} + run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}' + + - name: Get php version + id: php-versions + uses: icewind1991/nextcloud-version-matrix@8a7bac6300b2f0f3100088b297995a229558ddba # v1.3.2 + with: + filename: ${{ env.APP_NAME }}/appinfo/info.xml + + - name: Set up php ${{ steps.php-versions.outputs.php-min }} + uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2 + with: + php-version: ${{ steps.php-versions.outputs.php-min }} + coverage: none + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Check composer.json + id: check_composer + uses: andstor/file-existence-action@558493d6c74bf472d87c84eab196434afc2fa029 # v3.1.0 + with: + files: "${{ env.APP_NAME }}/composer.json" + + - name: Install composer dependencies + if: steps.check_composer.outputs.files_exists == 'true' + uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # 4.0.0 + with: + composer-options: '--no-dev' + working-directory: ${{ env.APP_NAME }} + ignore-cache: 'yes' + + - name: Build ${{ env.APP_NAME }} + # Skip if no package.json + if: ${{ steps.versions.outputs.nodeVersion }} + env: + CYPRESS_INSTALL_BINARY: 0 + run: | + cd ${{ env.APP_NAME }} + npm ci + npm run build --if-present + + - name: Check Krankerl config + id: krankerl + uses: andstor/file-existence-action@558493d6c74bf472d87c84eab196434afc2fa029 # v3.1.0 + with: + files: ${{ env.APP_NAME }}/krankerl.toml + + - name: Install Krankerl + if: steps.krankerl.outputs.files_exists == 'true' + run: | + wget https://github.com/ChristophWurst/krankerl/releases/download/v0.14.0/krankerl_0.14.0_amd64.deb + sudo dpkg -i krankerl_0.14.0_amd64.deb + + - name: Package ${{ env.APP_NAME }} ${{ env.APP_VERSION }} with krankerl + if: steps.krankerl.outputs.files_exists == 'true' + run: | + cd ${{ env.APP_NAME }} + krankerl package + + - name: Package ${{ env.APP_NAME }} ${{ env.APP_VERSION }} with makefile + if: steps.krankerl.outputs.files_exists != 'true' + run: | + cd ${{ env.APP_NAME }} + make appstore + + - name: Check server download link for ${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }} + run: | + NCVERSION='${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }}' + DOWNLOAD_URL=$(curl -s "https://updates.nextcloud.com/updater_server/latest?channel=beta&version=$NCVERSION" | jq -r '.downloads.zip[0]') + echo "DOWNLOAD_URL=$DOWNLOAD_URL" >> $GITHUB_ENV + + - name: Download server ${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }} + continue-on-error: true + id: server-download + if: ${{ env.DOWNLOAD_URL != 'null' }} + run: | + echo "Downloading release tarball from $DOWNLOAD_URL" + wget $DOWNLOAD_URL -O nextcloud.zip + unzip nextcloud.zip + + - name: Checkout server master fallback + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + if: ${{ steps.server-download.outcome != 'success' }} + with: + persist-credentials: false + submodules: true + repository: nextcloud/server + path: nextcloud + + + - name: Sign app + run: | + # Extracting release + cd ${{ env.APP_NAME }}/build/artifacts + tar -xvf ${{ env.APP_NAME }}.tar.gz + cd ../../../ + # Setting up keys + echo '${{ secrets.APP_PRIVATE_KEY }}' > ${{ env.APP_NAME }}.key + wget --quiet "https://github.com/nextcloud/app-certificate-requests/raw/master/${{ env.APP_NAME }}/${{ env.APP_NAME }}.crt" + # Signing + php nextcloud/occ integrity:sign-app --privateKey=../${{ env.APP_NAME }}.key --certificate=../${{ env.APP_NAME }}.crt --path=../${{ env.APP_NAME }}/build/artifacts/${{ env.APP_NAME }} + # Rebuilding archive + cd ${{ env.APP_NAME }}/build/artifacts + tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }} + + - name: Attach tarball to github release + uses: svenstaro/upload-release-action@29e53e917877a24fad85510ded594ab3c9ca12de # 2.11.5 + id: attach_to_release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ env.APP_NAME }}/build/artifacts/${{ env.APP_NAME }}.tar.gz + asset_name: ${{ env.APP_NAME }}-${{ env.APP_VERSION }}.tar.gz + tag: ${{ github.ref }} + overwrite: true + + - name: Upload app to Nextcloud appstore + uses: nextcloud-releases/nextcloud-appstore-push-action@a011fe619bcf6e77ddebc96f9908e1af4071b9c1 # v1.0.3 + with: + app_name: ${{ env.APP_NAME }} + appstore_token: ${{ secrets.APPSTORE_TOKEN }} + download_url: ${{ steps.attach_to_release.outputs.browser_download_url }} + app_private_key: ${{ secrets.APP_PRIVATE_KEY }} diff --git a/.github/workflows/dependabot-approve-merge.yml b/.github/workflows/dependabot-approve-merge.yml new file mode 100644 index 0000000..76340ac --- /dev/null +++ b/.github/workflows/dependabot-approve-merge.yml @@ -0,0 +1,101 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Auto approve Dependabot PRs + +on: + pull_request_target: # zizmor: ignore[dangerous-triggers] + branches: + - main + - master + - stable* + +permissions: + contents: read + +concurrency: + group: dependabot-approve-merge-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + auto-approve-merge: + if: github.event.pull_request.user.login == 'dependabot[bot]' + runs-on: ubuntu-latest-low + env: + # env variable for maintainers: 'true' allows to auto-merge 1.0.2 -> 2.0.0 + ALLOW_MAJOR: false + # env variable for maintainers: 'true' allows to auto-merge 1.0.2 -> 1.1.0 + ALLOW_MINOR: true + # env variable for maintainers: RegExp string to ignore some dependencies from auto-approve and auto-merge + IGNORE_PATTERN: '' + permissions: + # for auto-approve step to work + pull-requests: write + # for alexwilson/enable-github-automerge-action to approve PRs + contents: write + + steps: + - name: Disabled on forks + if: ${{ github.event.pull_request.head.repo.full_name != github.repository }} + run: | + echo 'Can not approve PRs from forks' + exit 1 + + - uses: mdecoleman/pr-branch-name@55795d86b4566d300d237883103f052125cc7508 # v3.0.0 + id: branchname + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + + - name: Dependabot metadata + id: metadata + if: startsWith(steps.branchname.outputs.branch, 'dependabot/') + uses: dependabot/fetch-metadata@25dd0e34f4fe68f24cc83900b1fe3fe149efef98 # v3.1.0 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + + - name: Check for ignored dependencies in the PR + id: validate + if: startsWith(steps.branchname.outputs.branch, 'dependabot/') + env: + IGNORE_PATTERN: ${{ env.IGNORE_PATTERN }} + DEPENDENCY_NAMES: ${{ steps.metadata.outputs.dependency-names }} + run: | + if [[ -z ${IGNORE_PATTERN} ]]; then + echo "ignore=false" >> "$GITHUB_OUTPUT" + elif [[ -z ${DEPENDENCY_NAMES} ]]; then + echo "ignore=false" >> "$GITHUB_OUTPUT" + elif [[ ${DEPENDENCY_NAMES} =~ ${IGNORE_PATTERN} ]]; then + echo "ignore=true" >> "$GITHUB_OUTPUT" + fi + + - name: GitHub actions bot approve + id: auto_approve + if: ${{ + startsWith(steps.branchname.outputs.branch, 'dependabot/') + && steps.validate.outputs.ignore != 'true' + }} + run: gh pr review --approve "$PR_URL" + env: + PR_URL: ${{ github.event.pull_request.html_url }} + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + # Enable GitHub auto merge + - name: Auto merge + uses: alexwilson/enable-github-automerge-action@2c32e18a76e0726ffe7a573bfff2d42a20885126 # 3.0.0 + if: ${{ + startsWith(steps.branchname.outputs.branch, 'dependabot/') + && steps.auto_approve.conclusion == 'success' + && (github.event.action == 'opened' || github.event.action == 'reopened') + && ( + steps.metadata.outputs.update-type == 'version-update:semver-patch' + || (fromJSON(env.ALLOW_MINOR) && steps.metadata.outputs.update-type == 'version-update:semver-minor') + || (fromJSON(env.ALLOW_MAJOR) && steps.metadata.outputs.update-type == 'version-update:semver-major') + ) + }} + with: + github-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/fixup.yml b/.github/workflows/fixup.yml new file mode 100644 index 0000000..69da2bb --- /dev/null +++ b/.github/workflows/fixup.yml @@ -0,0 +1,36 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Block fixup and squash commits + +on: + pull_request: + types: [opened, ready_for_review, reopened, synchronize] + +permissions: + contents: read + +concurrency: + group: fixup-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + commit-message-check: + if: github.event.pull_request.draft == false + + permissions: + pull-requests: write + name: Block fixup and squash commits + + runs-on: ubuntu-latest-low + + steps: + - name: Run check + uses: skjnldsv/block-fixup-merge-action@c138ea99e45e186567b64cf065ce90f7158c236a # v2 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/lint-info-xml.yml b/.github/workflows/lint-info-xml.yml new file mode 100644 index 0000000..8e6968c --- /dev/null +++ b/.github/workflows/lint-info-xml.yml @@ -0,0 +1,40 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint info.xml + +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-info-xml-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + xml-linters: + runs-on: ubuntu-latest-low + + name: info.xml lint + steps: + - name: Checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + sparse-checkout: | + appinfo/ + + - name: Download schema + run: wget https://raw.githubusercontent.com/nextcloud/appstore/master/nextcloudappstore/api/v1/release/info.xsd + + - name: Lint info.xml + uses: ChristophWurst/xmllint-action@36f2a302f84f8c83fceea0b9c59e1eb4a616d3c1 # v1.2 + with: + xml-file: ./appinfo/info.xml + xml-schema-file: ./info.xsd diff --git a/.github/workflows/lint-php-cs.yml b/.github/workflows/lint-php-cs.yml new file mode 100644 index 0000000..dba0956 --- /dev/null +++ b/.github/workflows/lint-php-cs.yml @@ -0,0 +1,54 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint php-cs + +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-php-cs-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + lint: + runs-on: ubuntu-latest + + name: php-cs + + steps: + - name: Checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: Get php version + id: versions + uses: icewind1991/nextcloud-version-matrix@8a7bac6300b2f0f3100088b297995a229558ddba # v1.3.2 + + - name: Set up php${{ steps.versions.outputs.php-min }} + uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2 + with: + php-version: ${{ steps.versions.outputs.php-min }} + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite + coverage: none + ini-file: development + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Remove nextcloud/ocp + run: | + composer remove nextcloud/ocp --dev --no-scripts + + - name: Install composer dependencies + uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # 4.0.0 + + - name: Lint + run: composer run cs:check || ( echo 'Please run `composer run cs:fix` to format your code' && exit 1 ) diff --git a/.github/workflows/lint-php.yml b/.github/workflows/lint-php.yml new file mode 100644 index 0000000..e73949e --- /dev/null +++ b/.github/workflows/lint-php.yml @@ -0,0 +1,76 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint php + +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-php-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + matrix: + runs-on: ubuntu-latest-low + outputs: + php-min: ${{ steps.versions.outputs.php-min }} + php-max: ${{ steps.versions.outputs.php-max }} + steps: + - name: Checkout app + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: Get version matrix + id: versions + uses: icewind1991/nextcloud-version-matrix@8a7bac6300b2f0f3100088b297995a229558ddba # v1.3.2 + + php-lint: + runs-on: ubuntu-latest-low + needs: matrix + strategy: + matrix: + php-versions: ['${{ needs.matrix.outputs.php-min }}', '${{ needs.matrix.outputs.php-max }}'] + + name: php-lint + + steps: + - name: Checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: Set up php ${{ matrix.php-versions }} + uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2 + with: + php-version: ${{ matrix.php-versions }} + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite + coverage: none + ini-file: development + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Lint + run: composer run lint + + summary: + permissions: + contents: none + runs-on: ubuntu-latest-low + needs: php-lint + + if: always() + + name: php-lint-summary + + steps: + - name: Summary status + run: if ${{ needs.php-lint.result != 'success' && needs.php-lint.result != 'skipped' }}; then exit 1; fi diff --git a/.github/workflows/npm-audit-fix.yml b/.github/workflows/npm-audit-fix.yml new file mode 100644 index 0000000..928fc93 --- /dev/null +++ b/.github/workflows/npm-audit-fix.yml @@ -0,0 +1,85 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Npm audit fix and compile + +on: + workflow_dispatch: + schedule: + # At 2:30 on Sundays + - cron: '30 2 * * 0' + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + branches: + - ${{ github.event.repository.default_branch }} + - 'stable34' + - 'stable33' + - 'stable32' + + name: npm-audit-fix-${{ matrix.branches }} + + steps: + - name: Checkout + id: checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + ref: ${{ matrix.branches }} + continue-on-error: true + + - name: Read package.json node and npm engines version + uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3 + id: versions + with: + fallbackNode: '^24' + fallbackNpm: '^11.3' + + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 + with: + node-version: ${{ steps.versions.outputs.nodeVersion }} + + - name: Set up npm ${{ steps.versions.outputs.npmVersion }} + run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}' + + - name: Fix npm audit + id: npm-audit + uses: nextcloud-libraries/npm-audit-action@1b1728b2b4a7a78d69de65608efcf4db0e3e42d0 # v0.2.0 + + - name: Run npm ci and npm run build + if: steps.checkout.outcome == 'success' + env: + CYPRESS_INSTALL_BINARY: 0 + run: | + npm ci + npm run build --if-present + + - name: Create Pull Request + if: steps.checkout.outcome == 'success' + uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1 + with: + token: ${{ secrets.COMMAND_BOT_PAT }} + commit-message: 'fix(deps): Fix npm audit' + committer: GitHub + author: nextcloud-command + signoff: true + branch: automated/noid/${{ matrix.branches }}-fix-npm-audit + title: '[${{ matrix.branches }}] Fix npm audit' + body: ${{ steps.npm-audit.outputs.markdown }} + labels: | + dependencies + 3. to review diff --git a/.github/workflows/npm-build.yml b/.github/workflows/npm-build.yml new file mode 100644 index 0000000..1b9e372 --- /dev/null +++ b/.github/workflows/npm-build.yml @@ -0,0 +1,113 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Build Javascript + +on: pull_request + +permissions: + contents: read + +concurrency: + group: node-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + changes: + runs-on: ubuntu-latest-low + permissions: + contents: read + pull-requests: read + + outputs: + src: ${{ steps.changes.outputs.src}} + + steps: + - uses: dorny/paths-filter@7b450fff21473bca461d4b92ce414b9d0420d706 # v4.0.2 + id: changes + continue-on-error: true + with: + filters: | + src: + - '.github/workflows/**' + - 'src/**' + - 'appinfo/info.xml' + - 'package.json' + - 'package-lock.json' + - 'tsconfig.json' + - '**.js' + - '**.ts' + - '**.vue' + + build: + runs-on: ubuntu-latest + + needs: changes + if: needs.changes.outputs.src != 'false' + + name: NPM build + steps: + - name: Checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: Read package.json node and npm engines version + uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3 + id: versions + with: + fallbackNode: '^24' + fallbackNpm: '^11.3' + + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 + with: + node-version: ${{ steps.versions.outputs.nodeVersion }} + + - name: Set up npm ${{ steps.versions.outputs.npmVersion }} + run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}' + + - name: Validate package-lock.json # See https://github.com/npm/cli/issues/4460 + run: | + npm i -g npm-package-lock-add-resolved@1.1.4 + npm-package-lock-add-resolved + git --no-pager diff --exit-code + + - name: Install dependencies & build + env: + CYPRESS_INSTALL_BINARY: 0 + PUPPETEER_SKIP_DOWNLOAD: true + run: | + npm ci + npm run build --if-present + + - name: Check build changes + run: | + bash -c "[[ ! \"`git status --porcelain `\" ]] || (echo 'Please recompile and commit the assets, see the section \"Show changes on failure\" for details' && exit 1)" + + - name: Show changes on failure + if: failure() + run: | + git status + git --no-pager diff + exit 1 # make it red to grab attention + + summary: + permissions: + contents: none + runs-on: ubuntu-latest-low + needs: [changes, build] + + if: always() + + # This is the summary, we just avoid to rename it so that branch protection rules still match + name: node + + steps: + - name: Summary status + run: if ${{ needs.changes.outputs.src != 'false' && needs.build.result != 'success' }}; then exit 1; fi diff --git a/.github/workflows/phpunit-mysql.yml b/.github/workflows/phpunit-mysql.yml new file mode 100644 index 0000000..40f41ae --- /dev/null +++ b/.github/workflows/phpunit-mysql.yml @@ -0,0 +1,205 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: PHPUnit MySQL + +on: pull_request + +permissions: + contents: read + +concurrency: + group: phpunit-mysql-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + matrix: + runs-on: ubuntu-latest-low + outputs: + matrix: ${{ steps.versions.outputs.sparse-matrix }} + steps: + - name: Checkout app + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: Get version matrix + id: versions + uses: icewind1991/nextcloud-version-matrix@8a7bac6300b2f0f3100088b297995a229558ddba # v1.3.2 + with: + matrix: '{"mysql-versions": ["8.4"]}' + + changes: + runs-on: ubuntu-latest-low + permissions: + contents: read + pull-requests: read + + outputs: + src: ${{ steps.changes.outputs.src}} + + steps: + - uses: dorny/paths-filter@7b450fff21473bca461d4b92ce414b9d0420d706 # v4.0.2 + id: changes + continue-on-error: true + with: + filters: | + src: + - '.github/workflows/**' + - 'appinfo/**' + - 'lib/**' + - 'templates/**' + - 'tests/**' + - 'vendor/**' + - 'vendor-bin/**' + - '.php-cs-fixer.dist.php' + - 'composer.json' + - 'composer.lock' + + phpunit-mysql: + runs-on: ubuntu-latest + + needs: [changes, matrix] + if: needs.changes.outputs.src != 'false' + + strategy: + fail-fast: false + matrix: ${{ fromJson(needs.matrix.outputs.matrix) }} + + name: MySQL ${{ matrix.mysql-versions }} PHP ${{ matrix.php-versions }} Nextcloud ${{ matrix.server-versions }} + + services: + mysql: + image: ghcr.io/nextcloud/continuous-integration-mysql-${{ matrix.mysql-versions }}:latest # zizmor: ignore[unpinned-images] + ports: + - 4444:3306/tcp + env: + MYSQL_ROOT_PASSWORD: rootpassword + options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 10 + + steps: + - name: Set app env + if: ${{ env.APP_NAME == '' }} + run: | + # Split and keep last + echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV + + - name: Checkout server + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + submodules: true + repository: nextcloud/server + ref: ${{ matrix.server-versions }} + + - name: Checkout app + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + path: apps/${{ env.APP_NAME }} + + - name: Set up php ${{ matrix.php-versions }} + uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2 + with: + php-version: ${{ matrix.php-versions }} + # https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, mysql, pdo_mysql + coverage: none + ini-file: development + # Temporary workaround for missing pcntl_* in PHP 8.3 + ini-values: disable_functions= + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Enable ONLY_FULL_GROUP_BY MySQL option + run: | + echo "SET GLOBAL sql_mode=(SELECT CONCAT(@@sql_mode,',ONLY_FULL_GROUP_BY'));" | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword + echo 'SELECT @@sql_mode;' | mysql -h 127.0.0.1 -P 4444 -u root -prootpassword + + - name: Check composer file existence + id: check_composer + uses: andstor/file-existence-action@558493d6c74bf472d87c84eab196434afc2fa029 # v3.1.0 + with: + files: apps/${{ env.APP_NAME }}/composer.json + + - name: Remove nextcloud/ocp + # Only run if phpunit config file exists + if: steps.check_composer.outputs.files_exists == 'true' + working-directory: apps/${{ env.APP_NAME }} + run: | + composer remove nextcloud/ocp --dev --no-scripts + + - name: Install composer dependencies + uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # 4.0.0 + with: + working-directory: apps/${{ env.APP_NAME }} + + - name: Set up Nextcloud + env: + DB_PORT: 4444 + run: | + mkdir data + ./occ maintenance:install --verbose --database=mysql --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin + ./occ app:enable --force ${{ env.APP_NAME }} + + - name: Check PHPUnit script is defined + id: check_phpunit + continue-on-error: true + working-directory: apps/${{ env.APP_NAME }} + run: | + composer run --list | grep '^ test:unit ' | wc -l | grep 1 + + - name: PHPUnit + # Only run if phpunit config file exists + if: steps.check_phpunit.outcome == 'success' + working-directory: apps/${{ env.APP_NAME }} + run: composer run test:unit + + - name: Check PHPUnit integration script is defined + id: check_integration + continue-on-error: true + working-directory: apps/${{ env.APP_NAME }} + run: | + composer run --list | grep '^ test:integration ' | wc -l | grep 1 + + - name: Run Nextcloud + # Only run if phpunit integration config file exists + if: steps.check_integration.outcome == 'success' + run: php -S localhost:8080 & + + - name: PHPUnit integration + # Only run if phpunit integration config file exists + if: steps.check_integration.outcome == 'success' + working-directory: apps/${{ env.APP_NAME }} + run: composer run test:integration + + - name: Print logs + if: always() + run: | + cat data/nextcloud.log + + - name: Skipped + # Fail the action when neither unit nor integration tests ran + if: steps.check_phpunit.outcome == 'failure' && steps.check_integration.outcome == 'failure' + run: | + echo 'Neither PHPUnit nor PHPUnit integration tests are specified in composer.json scripts' + exit 1 + + summary: + permissions: + contents: none + runs-on: ubuntu-latest-low + needs: [changes, phpunit-mysql] + + if: always() + + name: phpunit-mysql-summary + + steps: + - name: Summary status + run: if ${{ needs.changes.outputs.src != 'false' && needs.phpunit-mysql.result != 'success' }}; then exit 1; fi diff --git a/.github/workflows/psalm-matrix.yml b/.github/workflows/psalm-matrix.yml new file mode 100644 index 0000000..a2e09e8 --- /dev/null +++ b/.github/workflows/psalm-matrix.yml @@ -0,0 +1,91 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Static analysis + +on: pull_request + +concurrency: + group: psalm-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +permissions: + contents: read + +jobs: + matrix: + runs-on: ubuntu-latest-low + outputs: + ocp-matrix: ${{ steps.versions.outputs.ocp-matrix }} + php-min: ${{ steps.versions.outputs.php-min }} + steps: + - name: Checkout app + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: Get version matrix + id: versions + uses: icewind1991/nextcloud-version-matrix@8a7bac6300b2f0f3100088b297995a229558ddba # v1.3.2 + + - name: Check enforcement of minimum PHP version ${{ steps.versions.outputs.php-min }} in psalm.xml + run: grep 'phpVersion="${{ steps.versions.outputs.php-min }}' psalm.xml + + static-analysis: + runs-on: ubuntu-latest + needs: matrix + strategy: + # do not stop on another job's failure + fail-fast: false + matrix: ${{ fromJson(needs.matrix.outputs.ocp-matrix) }} + + name: static-psalm-analysis ${{ matrix.ocp-version }} + steps: + - name: Checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: Set up php${{ needs.matrix.outputs.php-min }} + uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2 + with: + php-version: ${{ needs.matrix.outputs.php-min }} + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite + coverage: none + ini-file: development + # Temporary workaround for missing pcntl_* in PHP 8.3 + ini-values: disable_functions= + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Remove nextcloud/ocp + run: | + composer remove nextcloud/ocp --dev --no-scripts + + - name: Install composer dependencies + uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # 4.0.0 + + - name: Install nextcloud/ocp:${{ matrix.ocp-version }} + env: + OCP_VERSION: ${{ matrix.ocp-version }} + run: composer require --dev "nextcloud/ocp:$OCP_VERSION" --ignore-platform-reqs --with-dependencies + + - name: Run coding standards check + run: composer run psalm -- --threads=1 --monochrome --no-progress --output-format=github + + summary: + runs-on: ubuntu-latest-low + needs: static-analysis + + if: always() + + name: static-psalm-analysis-summary + + steps: + - name: Summary status + run: if ${{ needs.static-analysis.result != 'success' }}; then exit 1; fi diff --git a/.github/workflows/reuse.yml b/.github/workflows/reuse.yml new file mode 100644 index 0000000..67fdafc --- /dev/null +++ b/.github/workflows/reuse.yml @@ -0,0 +1,27 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization + +# SPDX-FileCopyrightText: 2022 Free Software Foundation Europe e.V. +# +# SPDX-License-Identifier: CC0-1.0 + +name: REUSE Compliance Check + +on: [pull_request] + +permissions: + contents: read + +jobs: + reuse-compliance-check: + runs-on: ubuntu-latest-low + steps: + - name: Checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - name: REUSE Compliance Check + uses: fsfe/reuse-action@676e2d560c9a403aa252096d99fcab3e1132b0f5 # v6.0.0 diff --git a/.github/workflows/sync-workflow-templates.yml b/.github/workflows/sync-workflow-templates.yml new file mode 100644 index 0000000..0e925bb --- /dev/null +++ b/.github/workflows/sync-workflow-templates.yml @@ -0,0 +1,141 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +# This workflow will update all workflow templates +# Additionally it will reapply `workflow.yml.patch` files after syncing and only then commit the result +name: Update workflows +on: + workflow_dispatch: + schedule: + - cron: "5 2 * * 0" + +permissions: + contents: read + +jobs: + dispatch: + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + branches: + - ${{ github.event.repository.default_branch }} + - 'stable34' + - 'stable33' + - 'stable32' + + name: Update workflows in ${{ matrix.branches }} + + permissions: + contents: write + pull-requests: write + + steps: + - name: Check actor permission + uses: skjnldsv/check-actor-permission@69e92a3c4711150929bca9fcf34448c5bf5526e7 # v3.0 + with: + require: admin + + - name: Checkout workflow repository + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + path: source + repository: nextcloud/.github + + - name: Checkout app + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + path: target + ref: ${{ matrix.branches }} + + - name: Copy all workflow templates + run: | + echo 'SUMMARY<> $GITHUB_ENV + draft_only=0 + for workflow in ./source/workflow-templates/*.yml; do + echo "❓ Looking for $workflow" + if [ -f "$workflow" ]; then + filename=$(basename "$workflow") + target_file="./target/.github/workflows/$filename" + + # Only copy if the file exists in the target repository + if [ -f "$target_file" ]; then + if [ -f "./target/.github/actions-lock.txt" ]; then + locked_version=$(grep " $filename" ./target/.github/actions-lock.txt | cat) + else + echo "# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors" >> ./target/.github/actions-lock.txt + echo "# SPDX-License""-Identifier: MIT" >> ./target/.github/actions-lock.txt + locked_version="" + fi + locked_version=$(echo $locked_version | cut -f 1 -d " ") + new_version=$(md5sum $workflow | cut -f 1 -d " ") + + # Only update if the action changes + if [[ "$locked_version" != "$new_version" ]]; then + echo "ℹ️ Locked version: $locked_version" + echo "ℹ️ Current version: $new_version" + echo "🆙 Updating existing workflow: $filename" + echo "- 🆙 Updated [$filename](https://github.com/nextcloud/.github/commits/master/workflow-templates/$filename)" >> $GITHUB_ENV + + cp "$workflow" "$target_file" + + # Apply patch if one exists + if [ -f "$target_file.patch" ]; then + echo "🩹 Applying patch" + cd ./target + set +e + patch -p1 < ".github/workflows/$filename.patch" + patch_worked=$? + set -e + cd - + if [[ "$patch_worked" == "0" ]]; then + echo " - Patch applied" >> $GITHUB_ENV + else + echo " - [ ] ❌ Patch failed" >> $GITHUB_ENV + draft_only=1 + fi + fi + + if [[ "$locked_version" != "" ]]; then + sed -i "s/$locked_version $filename/$new_version $filename/" ./target/.github/actions-lock.txt + else + echo "$new_version $filename" >> ./target/.github/actions-lock.txt + fi + else + echo "✅ Skipping $filename: already up to date" + fi + else + echo "⏭️ Skipping $filename: does not exist in target repository" + fi + fi + done + echo 'EOF' >> $GITHUB_ENV + echo "DRAFT_ONLY=${draft_only}" >> $GITHUB_ENV + + - name: Create Pull Request + uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1 + with: + token: ${{ secrets.COMMAND_BOT_WORKFLOWS }} + commit-message: 'ci(actions): Update workflow templates from organization template repository' + committer: GitHub + author: nextcloud-command + path: target + signoff: true + branch: 'automated/noid/${{ matrix.branches }}-update-workflows' + title: '[${{ matrix.branches }}] ci(actions): Update workflow templates from organization template repository' + draft: ${{ env.DRAFT_ONLY == 1 }} + add-paths: .github/workflows/*.yml,.github/actions-lock.txt + body: | + Automated update of all workflow templates from [nextcloud/.github](https://github.com/nextcloud/.github) + ${{ env.SUMMARY }} + labels: | + dependencies + 3. to review diff --git a/.github/workflows/update-nextcloud-ocp-approve-merge.yml b/.github/workflows/update-nextcloud-ocp-approve-merge.yml new file mode 100644 index 0000000..88c54da --- /dev/null +++ b/.github/workflows/update-nextcloud-ocp-approve-merge.yml @@ -0,0 +1,59 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Auto approve nextcloud/ocp + +on: + pull_request_target: # zizmor: ignore[dangerous-triggers] + branches: + - main + - master + - stable* + +permissions: + contents: read + +concurrency: + group: update-nextcloud-ocp-approve-merge-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + auto-approve-merge: + if: github.actor == 'nextcloud-command' + runs-on: ubuntu-latest-low + permissions: + # for auto-approve-action to approve PRs + pull-requests: write + # for alexwilson/enable-github-automerge-action to approve PRs + contents: write + + steps: + - name: Disabled on forks + if: ${{ github.event.pull_request.head.repo.full_name != github.repository }} + run: | + echo 'Can not approve PRs from forks' + exit 1 + + - uses: mdecoleman/pr-branch-name@55795d86b4566d300d237883103f052125cc7508 # v3.0.0 + id: branchname + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + + - name: GitHub actions bot approve + if: startsWith(steps.branchname.outputs.branch, 'automated/noid/') && endsWith(steps.branchname.outputs.branch, 'update-nextcloud-ocp') + run: gh pr review --approve "$PR_URL" + env: + PR_URL: ${{ github.event.pull_request.html_url }} + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + # Enable GitHub auto merge + - name: Auto merge + uses: alexwilson/enable-github-automerge-action@2c32e18a76e0726ffe7a573bfff2d42a20885126 # 3.0.0 + if: startsWith(steps.branchname.outputs.branch, 'automated/noid/') && endsWith(steps.branchname.outputs.branch, 'update-nextcloud-ocp') + with: + github-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/update-nextcloud-ocp-matrix.yml b/.github/workflows/update-nextcloud-ocp-matrix.yml new file mode 100644 index 0000000..4972327 --- /dev/null +++ b/.github/workflows/update-nextcloud-ocp-matrix.yml @@ -0,0 +1,112 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Update nextcloud/ocp + +on: + workflow_dispatch: + schedule: + - cron: '5 2 * * 0' + +permissions: + contents: read + issues: write + +jobs: + update-nextcloud-ocp: + runs-on: ubuntu-latest + + # Only allowed to be run on nextcloud repositories + if: ${{ github.repository_owner == 'nextcloud' }} + + strategy: + fail-fast: false + matrix: + branches: + - ${{ github.event.repository.default_branch }} + + name: update-nextcloud-ocp-${{ matrix.branches }} + + steps: + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + ref: ${{ matrix.branches }} + submodules: true + + - name: Get version matrix + id: versions + uses: icewind1991/nextcloud-version-matrix@8a7bac6300b2f0f3100088b297995a229558ddba # v1.3.2 + + - name: Set up php8.3 + uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2 + with: + php-version: 8.3 + # https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite + coverage: none + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Read codeowners + id: codeowners + run: | + grep '/appinfo/info.xml' .github/CODEOWNERS | cut -f 2- -d ' ' | xargs | awk '{ print "codeowners="$0 }' >> $GITHUB_OUTPUT + continue-on-error: true + + - name: Install composer dependencies + uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # 4.0.0 + + - name: Check composer bin for nextcloud/ocp exists + id: check_composer_bin + uses: andstor/file-existence-action@558493d6c74bf472d87c84eab196434afc2fa029 # v3.1.0 + with: + files: vendor-bin/nextcloud-ocp/composer.json + + - name: Composer update nextcloud/ocp + id: update_branch + env: + USE_COMPOSER_BIN: ${{ steps.check_composer_bin.outputs.files_exists }} + BRANCH_NAME: ${{ steps.versions.outputs.branches-min }} + run: | + COMPOSER_CMD='composer' + if [[ "$USE_COMPOSER_BIN" == 'true' ]]; then + COMPOSER_CMD='composer bin nextcloud-ocp' + fi + + echo $COMPOSER_CMD require --dev nextcloud/ocp:dev-$BRANCH_NAME + $COMPOSER_CMD require --dev nextcloud/ocp:dev-$BRANCH_NAME + + - name: Raise on issue on failure + uses: dacbd/create-issue-action@cdb57ab6ff8862aa09fee2be6ba77a59581921c2 # v2.0.0 + if: ${{ failure() && steps.update_branch.conclusion == 'failure' }} + with: + token: ${{ secrets.GITHUB_TOKEN }} + title: 'Failed to update nextcloud/ocp package' + body: 'Please check the output of the GitHub action and manually resolve the issues
${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
${{ steps.codeowners.outputs.codeowners }}' + + - name: Create Pull Request + uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1 + with: + token: ${{ secrets.COMMAND_BOT_PAT }} + commit-message: 'chore(dev-deps): Bump nextcloud/ocp package' + committer: GitHub + author: nextcloud-command + signoff: true + branch: 'automated/noid/${{ matrix.branches }}-update-nextcloud-ocp' + title: '[${{ matrix.branches }}] Update nextcloud/ocp dependency' + add-path: | + composer.json + composer.lock + vendor-bin/nextcloud-ocp/composer.json + vendor-bin/nextcloud-ocp/composer.lock + body: | + Auto-generated update of [nextcloud/ocp](https://github.com/nextcloud-deps/ocp/) dependency + labels: | + dependencies + 3. to review From 5c4b0db89e97cc5e47d40e71780a23b334ac50a1 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 19:28:13 +0200 Subject: [PATCH 06/16] ci(reuse): Fix missing licenses Signed-off-by: Joas Schilling --- CHANGELOG.md | 4 + LICENSES/AGPL-3.0-or-later.txt | 235 +++++++++++++++++++++ LICENSES/Apache-2.0.txt | 73 +++++++ LICENSES/CC-BY-3.0.txt | 319 ++++++++++++++++++++++++++++ LICENSES/CC0-1.0.txt | 121 +++++++++++ LICENSES/GPL-3.0-or-later.txt | 232 ++++++++++++++++++++ LICENSES/ISC.txt | 8 + LICENSES/MIT.txt | 18 ++ LICENSES/MPL-2.0.txt | 373 +++++++++++++++++++++++++++++++++ REUSE.toml | 54 +++++ SPECIFICATION.md | 4 + 11 files changed, 1441 insertions(+) create mode 100644 LICENSES/AGPL-3.0-or-later.txt create mode 100644 LICENSES/Apache-2.0.txt create mode 100644 LICENSES/CC-BY-3.0.txt create mode 100644 LICENSES/CC0-1.0.txt create mode 100644 LICENSES/GPL-3.0-or-later.txt create mode 100644 LICENSES/ISC.txt create mode 100644 LICENSES/MIT.txt create mode 100644 LICENSES/MPL-2.0.txt create mode 100644 REUSE.toml diff --git a/CHANGELOG.md b/CHANGELOG.md index e9059c1..0a69cf9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ + # Changelog All notable changes to this project are documented in this file. diff --git a/LICENSES/AGPL-3.0-or-later.txt b/LICENSES/AGPL-3.0-or-later.txt new file mode 100644 index 0000000..0c97efd --- /dev/null +++ b/LICENSES/AGPL-3.0-or-later.txt @@ -0,0 +1,235 @@ +GNU AFFERO GENERAL PUBLIC LICENSE +Version 3, 19 November 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. + + Preamble + +The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, our General Public Licenses are intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. + +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License which gives you legal permission to copy, distribute and/or modify the software. + +A secondary benefit of defending all users' freedom is that improvements made in alternate versions of the program, if they receive widespread use, become available for other developers to incorporate. Many developers of free software are heartened and encouraged by the resulting cooperation. However, in the case of software used on network servers, this result may fail to come about. The GNU General Public License permits making a modified version and letting the public access it on a server without ever releasing its source code to the public. + +The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified source code becomes available to the community. It requires the operator of a network server to provide the source code of the modified version running there to the users of that server. Therefore, public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version. + +An older license, called the Affero General Public License and published by Affero, was designed to accomplish similar goals. This is a different license, not a version of the Affero GPL, but Affero has released a new version of the Affero GPL which permits relicensing under this license. + +The precise terms and conditions for copying, distribution and modification follow. + + TERMS AND CONDITIONS + +0. Definitions. + +"This License" refers to version 3 of the GNU Affero General Public License. + +"Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. + +"The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. + +To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. + +A "covered work" means either the unmodified Program or a work based on the Program. + +To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. + +To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. + +1. Source Code. +The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. + +A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. + +The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. + +The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same work. + +2. Basic Permissions. +All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. + +3. Protecting Users' Legal Rights From Anti-Circumvention Law. +No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. + +When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. + +4. Conveying Verbatim Copies. +You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. + +5. Conveying Modified Source Versions. +You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". + + c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. + +A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. + +6. Conveying Non-Source Forms. +You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: + + a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. + + d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. + +A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. + +"Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. + +If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). + +The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. + +7. Additional Terms. +"Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or authors of the material; or + + e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. + +All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. + +8. Termination. + +You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). + +However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. + +Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. + +9. Acceptance Not Required for Having Copies. + +You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. + +10. Automatic Licensing of Downstream Recipients. + +Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. + +An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. + +11. Patents. + +A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". + +A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. + +In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. + +If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. + +A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. + +12. No Surrender of Others' Freedom. + +If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. + +13. Remote Network Interaction; Use with the GNU General Public License. + +Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph. + +Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the work with which it is combined will remain governed by version 3 of the GNU General Public License. + +14. Revised Versions of this License. + +The Free Software Foundation may publish revised and/or new versions of the GNU Affero General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU Affero General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU Affero General Public License, you may choose any version ever published by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future versions of the GNU Affero General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. + +Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. + +15. Disclaimer of Warranty. + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. Limitation of Liability. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +17. Interpretation of Sections 15 and 16. + +If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. + +END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer network, you should also make sure that it provides a way for users to get its source. For example, if your program is a web application, its interface could display a "Source" link that leads users to an archive of the code. There are many ways you could offer source, and different solutions will be better for different programs; see section 13 for the specific requirements. + +You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU AGPL, see . diff --git a/LICENSES/Apache-2.0.txt b/LICENSES/Apache-2.0.txt new file mode 100644 index 0000000..137069b --- /dev/null +++ b/LICENSES/Apache-2.0.txt @@ -0,0 +1,73 @@ +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/LICENSES/CC-BY-3.0.txt b/LICENSES/CC-BY-3.0.txt new file mode 100644 index 0000000..1a16e05 --- /dev/null +++ b/LICENSES/CC-BY-3.0.txt @@ -0,0 +1,319 @@ +Creative Commons Legal Code + +Attribution 3.0 Unported + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR + DAMAGES RESULTING FROM ITS USE. + +License + +THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE +COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY +COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS +AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. + +BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE +TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY +BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS +CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND +CONDITIONS. + +1. Definitions + + a. "Adaptation" means a work based upon the Work, or upon the Work and + other pre-existing works, such as a translation, adaptation, + derivative work, arrangement of music or other alterations of a + literary or artistic work, or phonogram or performance and includes + cinematographic adaptations or any other form in which the Work may be + recast, transformed, or adapted including in any form recognizably + derived from the original, except that a work that constitutes a + Collection will not be considered an Adaptation for the purpose of + this License. For the avoidance of doubt, where the Work is a musical + work, performance or phonogram, the synchronization of the Work in + timed-relation with a moving image ("synching") will be considered an + Adaptation for the purpose of this License. + b. "Collection" means a collection of literary or artistic works, such as + encyclopedias and anthologies, or performances, phonograms or + broadcasts, or other works or subject matter other than works listed + in Section 1(f) below, which, by reason of the selection and + arrangement of their contents, constitute intellectual creations, in + which the Work is included in its entirety in unmodified form along + with one or more other contributions, each constituting separate and + independent works in themselves, which together are assembled into a + collective whole. A work that constitutes a Collection will not be + considered an Adaptation (as defined above) for the purposes of this + License. + c. "Distribute" means to make available to the public the original and + copies of the Work or Adaptation, as appropriate, through sale or + other transfer of ownership. + d. "Licensor" means the individual, individuals, entity or entities that + offer(s) the Work under the terms of this License. + e. "Original Author" means, in the case of a literary or artistic work, + the individual, individuals, entity or entities who created the Work + or if no individual or entity can be identified, the publisher; and in + addition (i) in the case of a performance the actors, singers, + musicians, dancers, and other persons who act, sing, deliver, declaim, + play in, interpret or otherwise perform literary or artistic works or + expressions of folklore; (ii) in the case of a phonogram the producer + being the person or legal entity who first fixes the sounds of a + performance or other sounds; and, (iii) in the case of broadcasts, the + organization that transmits the broadcast. + f. "Work" means the literary and/or artistic work offered under the terms + of this License including without limitation any production in the + literary, scientific and artistic domain, whatever may be the mode or + form of its expression including digital form, such as a book, + pamphlet and other writing; a lecture, address, sermon or other work + of the same nature; a dramatic or dramatico-musical work; a + choreographic work or entertainment in dumb show; a musical + composition with or without words; a cinematographic work to which are + assimilated works expressed by a process analogous to cinematography; + a work of drawing, painting, architecture, sculpture, engraving or + lithography; a photographic work to which are assimilated works + expressed by a process analogous to photography; a work of applied + art; an illustration, map, plan, sketch or three-dimensional work + relative to geography, topography, architecture or science; a + performance; a broadcast; a phonogram; a compilation of data to the + extent it is protected as a copyrightable work; or a work performed by + a variety or circus performer to the extent it is not otherwise + considered a literary or artistic work. + g. "You" means an individual or entity exercising rights under this + License who has not previously violated the terms of this License with + respect to the Work, or who has received express permission from the + Licensor to exercise rights under this License despite a previous + violation. + h. "Publicly Perform" means to perform public recitations of the Work and + to communicate to the public those public recitations, by any means or + process, including by wire or wireless means or public digital + performances; to make available to the public Works in such a way that + members of the public may access these Works from a place and at a + place individually chosen by them; to perform the Work to the public + by any means or process and the communication to the public of the + performances of the Work, including by public digital performance; to + broadcast and rebroadcast the Work by any means including signs, + sounds or images. + i. "Reproduce" means to make copies of the Work by any means including + without limitation by sound or visual recordings and the right of + fixation and reproducing fixations of the Work, including storage of a + protected performance or phonogram in digital form or other electronic + medium. + +2. Fair Dealing Rights. Nothing in this License is intended to reduce, +limit, or restrict any uses free from copyright or rights arising from +limitations or exceptions that are provided for in connection with the +copyright protection under copyright law or other applicable laws. + +3. License Grant. Subject to the terms and conditions of this License, +Licensor hereby grants You a worldwide, royalty-free, non-exclusive, +perpetual (for the duration of the applicable copyright) license to +exercise the rights in the Work as stated below: + + a. to Reproduce the Work, to incorporate the Work into one or more + Collections, and to Reproduce the Work as incorporated in the + Collections; + b. to create and Reproduce Adaptations provided that any such Adaptation, + including any translation in any medium, takes reasonable steps to + clearly label, demarcate or otherwise identify that changes were made + to the original Work. For example, a translation could be marked "The + original work was translated from English to Spanish," or a + modification could indicate "The original work has been modified."; + c. to Distribute and Publicly Perform the Work including as incorporated + in Collections; and, + d. to Distribute and Publicly Perform Adaptations. + e. For the avoidance of doubt: + + i. Non-waivable Compulsory License Schemes. In those jurisdictions in + which the right to collect royalties through any statutory or + compulsory licensing scheme cannot be waived, the Licensor + reserves the exclusive right to collect such royalties for any + exercise by You of the rights granted under this License; + ii. Waivable Compulsory License Schemes. In those jurisdictions in + which the right to collect royalties through any statutory or + compulsory licensing scheme can be waived, the Licensor waives the + exclusive right to collect such royalties for any exercise by You + of the rights granted under this License; and, + iii. Voluntary License Schemes. The Licensor waives the right to + collect royalties, whether individually or, in the event that the + Licensor is a member of a collecting society that administers + voluntary licensing schemes, via that society, from any exercise + by You of the rights granted under this License. + +The above rights may be exercised in all media and formats whether now +known or hereafter devised. The above rights include the right to make +such modifications as are technically necessary to exercise the rights in +other media and formats. Subject to Section 8(f), all rights not expressly +granted by Licensor are hereby reserved. + +4. Restrictions. The license granted in Section 3 above is expressly made +subject to and limited by the following restrictions: + + a. You may Distribute or Publicly Perform the Work only under the terms + of this License. You must include a copy of, or the Uniform Resource + Identifier (URI) for, this License with every copy of the Work You + Distribute or Publicly Perform. You may not offer or impose any terms + on the Work that restrict the terms of this License or the ability of + the recipient of the Work to exercise the rights granted to that + recipient under the terms of the License. You may not sublicense the + Work. You must keep intact all notices that refer to this License and + to the disclaimer of warranties with every copy of the Work You + Distribute or Publicly Perform. When You Distribute or Publicly + Perform the Work, You may not impose any effective technological + measures on the Work that restrict the ability of a recipient of the + Work from You to exercise the rights granted to that recipient under + the terms of the License. This Section 4(a) applies to the Work as + incorporated in a Collection, but this does not require the Collection + apart from the Work itself to be made subject to the terms of this + License. If You create a Collection, upon notice from any Licensor You + must, to the extent practicable, remove from the Collection any credit + as required by Section 4(b), as requested. If You create an + Adaptation, upon notice from any Licensor You must, to the extent + practicable, remove from the Adaptation any credit as required by + Section 4(b), as requested. + b. If You Distribute, or Publicly Perform the Work or any Adaptations or + Collections, You must, unless a request has been made pursuant to + Section 4(a), keep intact all copyright notices for the Work and + provide, reasonable to the medium or means You are utilizing: (i) the + name of the Original Author (or pseudonym, if applicable) if supplied, + and/or if the Original Author and/or Licensor designate another party + or parties (e.g., a sponsor institute, publishing entity, journal) for + attribution ("Attribution Parties") in Licensor's copyright notice, + terms of service or by other reasonable means, the name of such party + or parties; (ii) the title of the Work if supplied; (iii) to the + extent reasonably practicable, the URI, if any, that Licensor + specifies to be associated with the Work, unless such URI does not + refer to the copyright notice or licensing information for the Work; + and (iv) , consistent with Section 3(b), in the case of an Adaptation, + a credit identifying the use of the Work in the Adaptation (e.g., + "French translation of the Work by Original Author," or "Screenplay + based on original Work by Original Author"). The credit required by + this Section 4 (b) may be implemented in any reasonable manner; + provided, however, that in the case of a Adaptation or Collection, at + a minimum such credit will appear, if a credit for all contributing + authors of the Adaptation or Collection appears, then as part of these + credits and in a manner at least as prominent as the credits for the + other contributing authors. For the avoidance of doubt, You may only + use the credit required by this Section for the purpose of attribution + in the manner set out above and, by exercising Your rights under this + License, You may not implicitly or explicitly assert or imply any + connection with, sponsorship or endorsement by the Original Author, + Licensor and/or Attribution Parties, as appropriate, of You or Your + use of the Work, without the separate, express prior written + permission of the Original Author, Licensor and/or Attribution + Parties. + c. Except as otherwise agreed in writing by the Licensor or as may be + otherwise permitted by applicable law, if You Reproduce, Distribute or + Publicly Perform the Work either by itself or as part of any + Adaptations or Collections, You must not distort, mutilate, modify or + take other derogatory action in relation to the Work which would be + prejudicial to the Original Author's honor or reputation. Licensor + agrees that in those jurisdictions (e.g. Japan), in which any exercise + of the right granted in Section 3(b) of this License (the right to + make Adaptations) would be deemed to be a distortion, mutilation, + modification or other derogatory action prejudicial to the Original + Author's honor and reputation, the Licensor will waive or not assert, + as appropriate, this Section, to the fullest extent permitted by the + applicable national law, to enable You to reasonably exercise Your + right under Section 3(b) of this License (right to make Adaptations) + but not otherwise. + +5. Representations, Warranties and Disclaimer + +UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR +OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY +KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, +INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, +FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF +LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, +WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION +OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. + +6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE +LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR +ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES +ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS +BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. Termination + + a. This License and the rights granted hereunder will terminate + automatically upon any breach by You of the terms of this License. + Individuals or entities who have received Adaptations or Collections + from You under this License, however, will not have their licenses + terminated provided such individuals or entities remain in full + compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will + survive any termination of this License. + b. Subject to the above terms and conditions, the license granted here is + perpetual (for the duration of the applicable copyright in the Work). + Notwithstanding the above, Licensor reserves the right to release the + Work under different license terms or to stop distributing the Work at + any time; provided, however that any such election will not serve to + withdraw this License (or any other license that has been, or is + required to be, granted under the terms of this License), and this + License will continue in full force and effect unless terminated as + stated above. + +8. Miscellaneous + + a. Each time You Distribute or Publicly Perform the Work or a Collection, + the Licensor offers to the recipient a license to the Work on the same + terms and conditions as the license granted to You under this License. + b. Each time You Distribute or Publicly Perform an Adaptation, Licensor + offers to the recipient a license to the original Work on the same + terms and conditions as the license granted to You under this License. + c. If any provision of this License is invalid or unenforceable under + applicable law, it shall not affect the validity or enforceability of + the remainder of the terms of this License, and without further action + by the parties to this agreement, such provision shall be reformed to + the minimum extent necessary to make such provision valid and + enforceable. + d. No term or provision of this License shall be deemed waived and no + breach consented to unless such waiver or consent shall be in writing + and signed by the party to be charged with such waiver or consent. + e. This License constitutes the entire agreement between the parties with + respect to the Work licensed here. There are no understandings, + agreements or representations with respect to the Work not specified + here. Licensor shall not be bound by any additional provisions that + may appear in any communication from You. This License may not be + modified without the mutual written agreement of the Licensor and You. + f. The rights granted under, and the subject matter referenced, in this + License were drafted utilizing the terminology of the Berne Convention + for the Protection of Literary and Artistic Works (as amended on + September 28, 1979), the Rome Convention of 1961, the WIPO Copyright + Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 + and the Universal Copyright Convention (as revised on July 24, 1971). + These rights and subject matter take effect in the relevant + jurisdiction in which the License terms are sought to be enforced + according to the corresponding provisions of the implementation of + those treaty provisions in the applicable national law. If the + standard suite of rights granted under applicable copyright law + includes additional rights not granted under this License, such + additional rights are deemed to be included in the License; this + License is not intended to restrict the license of any rights under + applicable law. + + +Creative Commons Notice + + Creative Commons is not a party to this License, and makes no warranty + whatsoever in connection with the Work. Creative Commons will not be + liable to You or any party on any legal theory for any damages + whatsoever, including without limitation any general, special, + incidental or consequential damages arising in connection to this + license. Notwithstanding the foregoing two (2) sentences, if Creative + Commons has expressly identified itself as the Licensor hereunder, it + shall have all rights and obligations of Licensor. + + Except for the limited purpose of indicating to the public that the + Work is licensed under the CCPL, Creative Commons does not authorize + the use by either party of the trademark "Creative Commons" or any + related trademark or logo of Creative Commons without the prior + written consent of Creative Commons. Any permitted use will be in + compliance with Creative Commons' then-current trademark usage + guidelines, as may be published on its website or otherwise made + available upon request from time to time. For the avoidance of doubt, + this trademark restriction does not form part of this License. + + Creative Commons may be contacted at https://creativecommons.org/. diff --git a/LICENSES/CC0-1.0.txt b/LICENSES/CC0-1.0.txt new file mode 100644 index 0000000..0e259d4 --- /dev/null +++ b/LICENSES/CC0-1.0.txt @@ -0,0 +1,121 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/LICENSES/GPL-3.0-or-later.txt b/LICENSES/GPL-3.0-or-later.txt new file mode 100644 index 0000000..f6cdd22 --- /dev/null +++ b/LICENSES/GPL-3.0-or-later.txt @@ -0,0 +1,232 @@ +GNU GENERAL PUBLIC LICENSE +Version 3, 29 June 2007 + +Copyright © 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. + +Preamble + +The GNU General Public License is a free, copyleft license for software and other kinds of works. + +The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. + +To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. + +For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. + +Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. + +For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. + +Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. + +Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. + +The precise terms and conditions for copying, distribution and modification follow. + +TERMS AND CONDITIONS + +0. Definitions. + +“This License” refers to version 3 of the GNU General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based on the Program. + +To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. + +1. Source Code. +The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. + +A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same work. + +2. Basic Permissions. +All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. + +3. Protecting Users' Legal Rights From Anti-Circumvention Law. +No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. + +When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. + +4. Conveying Verbatim Copies. +You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. + +5. Conveying Modified Source Versions. +You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. + + c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. + +A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. + +6. Conveying Non-Source Forms. +You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: + + a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. + + d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. + +A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. + +If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). + +The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. + +7. Additional Terms. +“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or authors of the material; or + + e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. + +All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. + +8. Termination. +You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). + +However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. + +Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. + +9. Acceptance Not Required for Having Copies. +You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. + +10. Automatic Licensing of Downstream Recipients. +Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. + +11. Patents. +A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. + +If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. + +A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. + +12. No Surrender of Others' Freedom. +If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. + +13. Use with the GNU Affero General Public License. +Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. + +14. Revised Versions of this License. +The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. + +Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. + +15. Disclaimer of Warranty. +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. Limitation of Liability. +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +17. Interpretation of Sections 15 and 16. +If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. + +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. + +You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . + +The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . diff --git a/LICENSES/ISC.txt b/LICENSES/ISC.txt new file mode 100644 index 0000000..b9c199c --- /dev/null +++ b/LICENSES/ISC.txt @@ -0,0 +1,8 @@ +ISC License: + +Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC") +Copyright (c) 1995-2003 by Internet Software Consortium + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/LICENSES/MIT.txt b/LICENSES/MIT.txt new file mode 100644 index 0000000..d817195 --- /dev/null +++ b/LICENSES/MIT.txt @@ -0,0 +1,18 @@ +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and +associated documentation files (the "Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial +portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT +LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO +EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/LICENSES/MPL-2.0.txt b/LICENSES/MPL-2.0.txt new file mode 100644 index 0000000..ee6256c --- /dev/null +++ b/LICENSES/MPL-2.0.txt @@ -0,0 +1,373 @@ +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at https://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. diff --git a/REUSE.toml b/REUSE.toml new file mode 100644 index 0000000..3378b85 --- /dev/null +++ b/REUSE.toml @@ -0,0 +1,54 @@ +# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: AGPL-3.0-or-later +version = 1 +SPDX-PackageName = "absence" +SPDX-PackageSupplier = "Nextcloud " +SPDX-PackageDownloadLocation = "https://github.com/nextcloud/absence/" + +[[annotations]] +path = ["l10n/**.js", "l10n/**.json"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2016 Nextcloud GmbH and Nextcloud and ownCloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = ["css/**.css", "css/**.css.map"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2016 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = ["js/**.mjs", "js/**.mjs.map"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2016 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = [".github/CODEOWNERS", ".github/dependabot.yml", "tests/Integration/base-query-count.txt", "tests/Integration/base-query-list.txt", ".github/workflows/*.patch"] +precedence = "aggregate" +SPDX-FileCopyrightText = "none" +SPDX-License-Identifier = "CC0-1.0" + +[[annotations]] +path = [".github/issue_template.md", ".github/contributing.md"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2026 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "CC0-1.0" + +[[annotations]] +path = ["package.json", "package-lock.json", "**/package.json", "**/package-lock.json", "composer.json", "composer.lock", "**/composer.json", "**/composer.lock", "psalm.xml", "tests/psalm-baseline.xml", ".tx/config", "**/phpunit.xml", "js/vendor.LICENSE.txt"] +precedence = "aggregate" +SPDX-FileCopyrightText = "none" +SPDX-License-Identifier = "CC0-1.0" + +[[annotations]] +path = ["img/app-dark.svg", "img/app.svg"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2018-2024 Google LLC" +SPDX-License-Identifier = "Apache-2.0" + +[[annotations]] +path = ["screenshots/*.png"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2026 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "CC0-1.0" diff --git a/SPECIFICATION.md b/SPECIFICATION.md index 2d4dc9a..a597874 100644 --- a/SPECIFICATION.md +++ b/SPECIFICATION.md @@ -1,3 +1,7 @@ + # Absence — Vacation Approval Workflow for Nextcloud **App ID:** `absence` From 4ff6e1b7032e4cae0fa6fdbdcae0b447ed0edd03 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 19:29:54 +0200 Subject: [PATCH 07/16] ci(xmllint): Fix element order Signed-off-by: Joas Schilling --- appinfo/info.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/appinfo/info.xml b/appinfo/info.xml index 7a99351..efec2cd 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -42,14 +42,14 @@ exports. OCA\Absence\BackgroundJob\YearRolloverJob - - OCA\Absence\Migration\SeedLeaveTypes - OCA\Absence\Migration\EnableAuditLogging - OCA\Absence\Migration\EnableAuditLogging OCA\Absence\Migration\ConvertConfigTypes + + OCA\Absence\Migration\SeedLeaveTypes + OCA\Absence\Migration\EnableAuditLogging + OCA\Absence\Migration\DisableAuditLogging From 700a33e11c43b670b1026435e83fa2f88db56bf0 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 21:46:57 +0200 Subject: [PATCH 08/16] build(npm): Update environment to node24 Signed-off-by: Joas Schilling --- eslint.config.mjs | 20 + package-lock.json | 19775 ++++++++++++++++++++++++-------------------- package.json | 75 +- 3 files changed, 11046 insertions(+), 8824 deletions(-) create mode 100644 eslint.config.mjs diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..bf9a707 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,20 @@ +/** + * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +import { recommendedJavascript } from '@nextcloud/eslint-config' + +export default [ + ...recommendedJavascript, + + { + name: 'absence/disabled', + rules: { + // TODO: rename components to multi-word + 'vue/multi-word-component-names': 'off', + // TODO: migrate to @nextcloud/logger + 'no-console': 'off', + }, + }, +] diff --git a/package-lock.json b/package-lock.json index 20ebd2d..4aa1049 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8794 +1,10985 @@ { - "name": "absence", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "absence", - "version": "1.0.0", - "license": "AGPL-3.0-or-later", - "dependencies": { - "@mdi/svg": "^7.4.47", - "@nextcloud/axios": "^2.5.1", - "@nextcloud/dialogs": "^6.1.1", - "@nextcloud/initial-state": "^2.2.0", - "@nextcloud/l10n": "^3.1.0", - "@nextcloud/router": "^3.0.1", - "@nextcloud/vue": "^9.3.1", - "date-holidays": "^3.33.0", - "vue": "^3.5.32", - "vue-material-design-icons": "^5.3.1", - "vue-router": "^4.4.5" - }, - "devDependencies": { - "@nextcloud/vite-config": "^2.5.2", - "sass": "^1.80.0", - "vite": "^7.3.2" - }, - "engines": { - "node": "^20 || ^22" - } - }, - "node_modules/@babel/generator": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-8.0.0.tgz", - "integrity": "sha512-NT9NrVwJsbSV6Y2FSstWa71EETOnzrjkL5/wX3D2mYHtKM+qvqB1DvR4D0Setb/gDBsHzRICifwEWMO8CnTF6g==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^8.0.0", - "@babel/types": "^8.0.0", - "@jridgewell/gen-mapping": "^0.3.12", - "@jridgewell/trace-mapping": "^0.3.28", - "@types/jsesc": "^2.5.0", - "jsesc": "^3.0.2" - }, - "engines": { - "node": "^22.18.0 || >=24.11.0" - } - }, - "node_modules/@babel/generator/node_modules/@babel/helper-string-parser": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-8.0.0.tgz", - "integrity": "sha512-6mJgmFFFIIO82vvoLt9XtRC7/TkzXfts1t/SpRX4IHSzMgqoPYCWesVu1udUPUWioAE/2fcG6WuI8zrkE1gwrg==", - "license": "MIT", - "engines": { - "node": "^22.18.0 || >=24.11.0" - } - }, - "node_modules/@babel/generator/node_modules/@babel/helper-validator-identifier": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-8.0.4.tgz", - "integrity": "sha512-4wFaiLd0bVo4cIoTXI3zKI038NIWE/cr3jvBjejOVYVxV/m8Ltav1USiGzG1fmS5J2RhgEOgXNNK46cRPnRsrg==", - "license": "MIT", - "engines": { - "node": "^22.18.0 || >=24.11.0" - } - }, - "node_modules/@babel/generator/node_modules/@babel/parser": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-8.0.4.tgz", - "integrity": "sha512-srpptsAkEbbNIC/q8nT7o+m6CQe8CJUTV/t7MYc9NnWlgYVtHOb7JH6SorxMhN0kuRJjVqXbKClG6xSbPtzz+g==", - "license": "MIT", - "dependencies": { - "@babel/types": "^8.0.4" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": "^22.18.0 || >=24.11.0" - } - }, - "node_modules/@babel/generator/node_modules/@babel/types": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-8.0.4.tgz", - "integrity": "sha512-eY+Yn3dCqTGmyiq2QRU66lA5FL8lqqqvecHt0fF3uHONIa7ToYsaCiWV8lOKqAs0Rb2SjixiKFROngnulPtt2g==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^8.0.0", - "@babel/helper-validator-identifier": "^8.0.4" - }, - "engines": { - "node": "^22.18.0 || >=24.11.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", - "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", - "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.29.7" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz", - "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" - }, - "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==", - "license": "MIT", - "optionalDependencies": { - "node-fetch": "^3.3.0" - } - }, - "node_modules/@ckpack/vue-color": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@ckpack/vue-color/-/vue-color-1.6.0.tgz", - "integrity": "sha512-b9kFTKhYbNArfgP1lmnaVm0VNsWdZjqIbyHUYry7mZ+E7JeTQclbjq1+2xWn0SE3wzqRYlXmAVjECPOgteWmMQ==", - "license": "MIT", - "dependencies": { - "@ctrl/tinycolor": "^3.6.0", - "material-colors": "^1.2.6" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "vue": "^3.2.0" - } - }, - "node_modules/@ctrl/tinycolor": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz", - "integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", - "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", - "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", - "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", - "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", - "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", - "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", - "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", - "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", - "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", - "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", - "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", - "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", - "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", - "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", - "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", - "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", - "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", - "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", - "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", - "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", - "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openharmony-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", - "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", - "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", - "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", - "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", - "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@file-type/xml": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/@file-type/xml/-/xml-0.4.4.tgz", - "integrity": "sha512-NhCyXoHlVZ8TqM476hyzwGJ24+D5IPSaZhmrPj7qXnEVb3q6jrFzA3mM9TBpknKSI9EuQeGTKRg2DXGUwvBBoQ==", - "license": "MIT", - "dependencies": { - "sax": "^1.4.1", - "strtok3": "^10.3.4" - } - }, - "node_modules/@floating-ui/core": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.5.tgz", - "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==", - "license": "MIT", - "dependencies": { - "@floating-ui/utils": "^0.2.11" - } - }, - "node_modules/@floating-ui/dom": { - "version": "1.7.6", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", - "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", - "license": "MIT", - "dependencies": { - "@floating-ui/core": "^1.7.5", - "@floating-ui/utils": "^0.2.11" - } - }, - "node_modules/@floating-ui/utils": { - "version": "0.2.11", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.11.tgz", - "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==", - "license": "MIT" - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", - "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "node_modules/@jridgewell/remapping": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.31", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", - "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@mdi/js": { - "version": "7.4.47", - "resolved": "https://registry.npmjs.org/@mdi/js/-/js-7.4.47.tgz", - "integrity": "sha512-KPnNOtm5i2pMabqZxpUz7iQf+mfrYZyKCZ8QNz85czgEt7cuHcGorWfdzUMWYA0SD+a6Hn4FmJ+YhzzzjkTZrQ==", - "license": "Apache-2.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==", - "license": "Apache-2.0" - }, - "node_modules/@microsoft/api-extractor": { - "version": "7.58.9", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.58.9.tgz", - "integrity": "sha512-S2UF4yza5GoxCmf7hJQNxJNZN9ltOVuOQv8Dy+Z21aol5ERoBNMdWcQHm4MJMPPItW4H/4rZD906iaf4mUojJA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/api-extractor-model": "7.33.8", - "@microsoft/tsdoc": "~0.16.0", - "@microsoft/tsdoc-config": "~0.18.1", - "@rushstack/node-core-library": "5.23.1", - "@rushstack/rig-package": "0.7.3", - "@rushstack/terminal": "0.24.0", - "@rushstack/ts-command-line": "5.3.10", - "diff": "~8.0.2", - "minimatch": "10.2.3", - "resolve": "~1.22.1", - "semver": "~7.7.4", - "source-map": "~0.6.1", - "typescript": "5.9.3" - }, - "bin": { - "api-extractor": "bin/api-extractor" - } - }, - "node_modules/@microsoft/api-extractor-model": { - "version": "7.33.8", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.33.8.tgz", - "integrity": "sha512-aIcoQggPyer3B6Ze3usz0YWC/oBwUHfRH5ETUsr+oT2BRA6SfTJl7IKPcPZkX4UR+PohowzW4uMxsvjrn8vm+w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/tsdoc": "~0.16.0", - "@microsoft/tsdoc-config": "~0.18.1", - "@rushstack/node-core-library": "5.23.1" - } - }, - "node_modules/@microsoft/api-extractor/node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@microsoft/tsdoc": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.16.0.tgz", - "integrity": "sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@microsoft/tsdoc-config": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.18.1.tgz", - "integrity": "sha512-9brPoVdfN9k9g0dcWkFeA7IH9bbcttzDJlXvkf8b2OBzd5MueR1V2wkKBL0abn0otvmkHJC6aapBOTJDDeMCZg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/tsdoc": "0.16.0", - "ajv": "~8.18.0", - "jju": "~1.4.0", - "resolve": "~1.22.2" - } - }, - "node_modules/@nextcloud/auth": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@nextcloud/auth/-/auth-2.6.0.tgz", - "integrity": "sha512-VkT87+9UqpPi7O36bVEE4/MxWF8d90VQcuMlvKltsZyLSLkEGrPXgowtD75Y54k60/8SR6mXbeqBwapi8dDUbA==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/browser-storage": "^0.5.0", - "@nextcloud/event-bus": "^3.3.3", - "@nextcloud/router": "^3.1.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/axios": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-2.6.0.tgz", - "integrity": "sha512-ehcIgyora8DAJ+STG6iFI4e+ufPVFrIA6o0FgMKeKdfyaxRJ9UM7L+n7V+rc/qv8sDiWC/hWIKwFtLw2W5yE4Q==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/auth": "^2.6.0", - "axios": "^1.15.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/browser-storage": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.5.0.tgz", - "integrity": "sha512-usYr4GlJQlK3hgZURvklqWb9ivi7sgsSuFqXrs7s4hl1LTS4enzPrnkQumm6nRsQruf0ITS+OBsK+oELEbvYPA==", - "license": "GPL-3.0-or-later", - "engines": { - "node": "^24 || ^22 || ^20" - } - }, - "node_modules/@nextcloud/capabilities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@nextcloud/capabilities/-/capabilities-1.2.1.tgz", - "integrity": "sha512-snZ0/910zzwN6PDsIlx2Uvktr1S5x0ClhDUnfPlCj7ntNvECzuVHNY5wzby22LIkc+9ZjaDKtCwuCt2ye+9p/Q==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/initial-state": "^3.0.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/capabilities/node_modules/@nextcloud/initial-state": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-3.0.0.tgz", - "integrity": "sha512-cV+HBdkQJGm8FxkBI5rFT/FbMNWNBvpbj6OPrg4Ae4YOOsQ15CL8InPOAw1t4XkOkQK2NEdUGQLVUz/19wXbdQ==", - "license": "GPL-3.0-or-later", - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/dialogs": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-6.4.2.tgz", - "integrity": "sha512-xj6fyUdb56StWt1DWeDHYnqK0Ck7EWQLUEyWtXHnneknoOV3x/Y0HPRL5L2PTJaDuVQB8TcVW53JjR38JG9W6Q==", - "license": "AGPL-3.0-or-later", - "dependencies": { - "@mdi/js": "^7.4.47", - "@nextcloud/auth": "^2.5.3", - "@nextcloud/axios": "^2.5.2", - "@nextcloud/browser-storage": "^0.5.0", - "@nextcloud/event-bus": "^3.3.3", - "@nextcloud/files": "^3.12.2", - "@nextcloud/initial-state": "^3.0.0", - "@nextcloud/l10n": "^3.4.1", - "@nextcloud/paths": "^3.0.0", - "@nextcloud/router": "^3.1.0", - "@nextcloud/sharing": "^0.3.0", - "@types/toastify-js": "^1.12.4", - "@vueuse/core": "^11.3.0", - "cancelable-promise": "^4.3.1", - "p-queue": "^9.0.1", - "toastify-js": "^1.12.0", - "vue-frag": "^1.4.3", - "webdav": "^5.8.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - }, - "peerDependencies": { - "@nextcloud/vue": "^8.24.0", - "vue": "^2.7.16" - } - }, - "node_modules/@nextcloud/dialogs/node_modules/@nextcloud/initial-state": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-3.0.0.tgz", - "integrity": "sha512-cV+HBdkQJGm8FxkBI5rFT/FbMNWNBvpbj6OPrg4Ae4YOOsQ15CL8InPOAw1t4XkOkQK2NEdUGQLVUz/19wXbdQ==", - "license": "GPL-3.0-or-later", - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/event-bus": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-3.3.3.tgz", - "integrity": "sha512-zIfvKmUGkXpVzRKoXrcO9hkoiKDm65fqNxy/XIbIxrQhZByPq3gDkjBpnu3V5Gs8JdYwa73R8DjzV9oH8HYhIg==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@types/semver": "^7.7.0", - "semver": "^7.7.2" - }, - "engines": { - "node": "^20 || ^22 || ^24" - } - }, - "node_modules/@nextcloud/files": { - "version": "3.12.2", - "resolved": "https://registry.npmjs.org/@nextcloud/files/-/files-3.12.2.tgz", - "integrity": "sha512-vBo8tf3Xh6efiF8CrEo3pKj9AtvAF6RdDGO1XKL65IxV8+UUd9Uxl2lUExHlzoDRRczCqfGfaWfRRaFhYqce5Q==", - "license": "AGPL-3.0-or-later", - "dependencies": { - "@nextcloud/auth": "^2.5.3", - "@nextcloud/capabilities": "^1.2.1", - "@nextcloud/l10n": "^3.4.1", - "@nextcloud/logger": "^3.0.3", - "@nextcloud/paths": "^3.0.0", - "@nextcloud/router": "^3.1.0", - "@nextcloud/sharing": "^0.3.0", - "cancelable-promise": "^4.3.1", - "is-svg": "^6.1.0", - "typescript-event-target": "^1.1.1", - "webdav": "^5.8.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.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==", - "license": "GPL-3.0-or-later", - "engines": { - "node": "^20.0.0", - "npm": "^10.0.0" - } - }, - "node_modules/@nextcloud/l10n": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-3.4.1.tgz", - "integrity": "sha512-aTFinTcKiK2gEXwLgutXekpZZ8/v/4QiC8C3QCLH5m0o+WtxsBC+fqV142ebC/rfDnzCLhY4ZtswSu8bFbZocg==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/router": "^3.0.1", - "@nextcloud/typings": "^1.9.1", - "@types/escape-html": "^1.0.4", - "dompurify": "^3.2.6", - "escape-html": "^1.0.3" - }, - "engines": { - "node": "^20 || ^22 || ^24" - } - }, - "node_modules/@nextcloud/logger": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-3.0.3.tgz", - "integrity": "sha512-TcbVRL4/O5ffI1RXFmQAFD3gwwT15AAdr1770x+RNqVvfBdoGVyhzOwCIyA5Vfc3fA1iJXFa+rE6buJZSoqlcw==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/auth": "^2.5.3" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/paths": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@nextcloud/paths/-/paths-3.1.0.tgz", - "integrity": "sha512-vtFYA/kthaUDzu6KejTOL1OwnOy7/yynq5zdB/UBpYacAWjUX5Ddh4OMWx3rEavkBJ9/QGhrFryNJLjNfe8OQA==", - "license": "GPL-3.0-or-later", - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/router": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-3.1.0.tgz", - "integrity": "sha512-e4dkIaxRSwdZJlZFpn9x03QgBn/Sa2hN1hp/BA7+AbzykmSAlKuWfdmX8j/8ewrLpQwYmZR23IZO9XwpJXq2Uw==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/typings": "^1.10.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/sharing": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@nextcloud/sharing/-/sharing-0.3.0.tgz", - "integrity": "sha512-kV7qeUZvd1fTKeFyH+W5Qq5rNOqG9rLATZM3U9MBxWXHJs3OxMqYQb8UQ3NYONzsX3zDGJmdQECIGHm1ei2sCA==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/initial-state": "^3.0.0", - "is-svg": "^6.1.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - }, - "optionalDependencies": { - "@nextcloud/files": "^3.12.0" - } - }, - "node_modules/@nextcloud/sharing/node_modules/@nextcloud/initial-state": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-3.0.0.tgz", - "integrity": "sha512-cV+HBdkQJGm8FxkBI5rFT/FbMNWNBvpbj6OPrg4Ae4YOOsQ15CL8InPOAw1t4XkOkQK2NEdUGQLVUz/19wXbdQ==", - "license": "GPL-3.0-or-later", - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/typings": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.10.0.tgz", - "integrity": "sha512-SMC42rDjOH3SspPTLMZRv76ZliHpj2JJkF8pGLP8l1QrVTZxE47Qz5qeKmbj2VL+dRv2e/NgixlAFmzVnxkhqg==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@types/jquery": "3.5.16" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/vite-config": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/@nextcloud/vite-config/-/vite-config-2.5.4.tgz", - "integrity": "sha512-xRTRUsIyYmJEJq1zv+bbhPk81nZGlIsk+I9cVu5fhdK56IqHRPVyeMQY/EFOOf6R2yIqDhza6oG1WnJMV9+KsQ==", - "dev": true, - "license": "AGPL-3.0-or-later", - "dependencies": { - "@rollup/plugin-replace": "^6.0.3", - "@vitejs/plugin-vue": "^6.0.7", - "browserslist-to-esbuild": "^2.1.1", - "magic-string": "^0.30.21", - "rollup-plugin-corejs": "^1.0.2", - "rollup-plugin-esbuild-minify": "^1.3.0", - "rollup-plugin-license": "^3.7.1", - "rollup-plugin-node-externals": "^9.0.1", - "spdx-expression-parse": "^4.0.0", - "vite-plugin-css-injected-by-js": "^4.0.1", - "vite-plugin-dts": "^4.5.4", - "vite-plugin-node-polyfills": "^0.28.0" - }, - "engines": { - "node": "^20 || ^22 || ^24" - }, - "peerDependencies": { - "browserslist": ">=4.0", - "sass": ">=1.60", - "vite": "^7.3.6" - } - }, - "node_modules/@nextcloud/vue": { - "version": "9.8.2", - "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-9.8.2.tgz", - "integrity": "sha512-bkU6E/AyMXzNHk4BnUCL8QGfpT0BZkS7fooKhClHa9VK8wR6Mml/yO6/1Nd+E71dEiDKJP8B7TsvEXgytZsVQQ==", - "license": "AGPL-3.0-or-later", - "dependencies": { - "@ckpack/vue-color": "^1.6.0", - "@floating-ui/dom": "^1.7.6", - "@nextcloud/auth": "^2.6.0", - "@nextcloud/axios": "^2.6.0", - "@nextcloud/browser-storage": "^0.5.0", - "@nextcloud/capabilities": "^1.2.1", - "@nextcloud/event-bus": "^3.3.3", - "@nextcloud/initial-state": "^3.0.0", - "@nextcloud/l10n": "^3.4.1", - "@nextcloud/logger": "^3.0.3", - "@nextcloud/router": "^3.1.0", - "@nextcloud/sharing": "^0.4.0", - "@nextcloud/vue-select": "^4.1.0", - "@vuepic/vue-datepicker": "^11.0.3", - "@vueuse/components": "^14.3.0", - "@vueuse/core": "^14.3.0", - "blurhash": "^2.0.5", - "clone": "^2.1.2", - "debounce": "^3.0.0", - "dompurify": "^3.4.7", - "emoji-mart-vue-fast": "^15.0.5", - "escape-html": "^1.0.3", - "floating-vue": "^5.2.2", - "focus-trap": "^8.2.1", - "linkifyjs": "^4.3.3", - "mdast-util-to-string": "^4.0.0", - "p-queue": "^9.3.0", - "rehype-external-links": "^3.0.0", - "rehype-highlight": "^7.0.2", - "rehype-react": "^8.0.0", - "remark-breaks": "^4.0.0", - "remark-parse": "^11.0.0", - "remark-rehype": "^11.1.2", - "remark-unlink-protocols": "^1.0.0", - "splitpanes": "^4.0.4", - "striptags": "^3.2.0", - "tabbable": "^6.4.0", - "tributejs": "^5.1.3", - "ts-md5": "^2.0.1", - "unified": "^11.0.5", - "unist-builder": "^4.0.0", - "unist-util-visit-parents": "^6.0.2", - "vue": "^3.5.18", - "vue-router": "^5.0.7" - }, - "engines": { - "node": "^20.11.0 || ^22 || ^24" - } - }, - "node_modules/@nextcloud/vue-select": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-4.1.0.tgz", - "integrity": "sha512-jQIu4XuUAuJr6qL/IKa63h3Vv/4OrP9latl2E6kqtffwLBV+qMSU4Gm+vsOfyqBbBSY4i3eeMfdyJi14O1Yqbg==", - "license": "MIT", - "engines": { - "node": "^22 || ^24" - }, - "peerDependencies": { - "vue": "^3" - } - }, - "node_modules/@nextcloud/vue/node_modules/@nextcloud/initial-state": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-3.0.0.tgz", - "integrity": "sha512-cV+HBdkQJGm8FxkBI5rFT/FbMNWNBvpbj6OPrg4Ae4YOOsQ15CL8InPOAw1t4XkOkQK2NEdUGQLVUz/19wXbdQ==", - "license": "GPL-3.0-or-later", - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - } - }, - "node_modules/@nextcloud/vue/node_modules/@nextcloud/sharing": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@nextcloud/sharing/-/sharing-0.4.0.tgz", - "integrity": "sha512-1hUNyc7uJdBpnimOnEshJjEtAPAjzDYVl6qmWqF5ZxoN9wOvbExw0QjX3xFIbHbX2dmvbRNLBj0RzLzipmZyeg==", - "license": "GPL-3.0-or-later", - "dependencies": { - "@nextcloud/initial-state": "^3.0.0", - "is-svg": "^6.1.0" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || ^24.0.0" - }, - "optionalDependencies": { - "@nextcloud/files": "^3.12.2 || ^4.0.0" - } - }, - "node_modules/@nextcloud/vue/node_modules/@types/web-bluetooth": { - "version": "0.0.21", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.21.tgz", - "integrity": "sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==", - "license": "MIT" - }, - "node_modules/@nextcloud/vue/node_modules/@vue/devtools-api": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-8.1.5.tgz", - "integrity": "sha512-YJipMVAKe5wT5CWf5kTYCaNV7NMNjFVxJkIkJaJ4W/nCxEBzlZzrOsYKeCymdCrFZmBS/+wTWFoUs3Jf/Q6XSQ==", - "license": "MIT", - "dependencies": { - "@vue/devtools-kit": "^8.1.5" - } - }, - "node_modules/@nextcloud/vue/node_modules/@vueuse/core": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-14.3.0.tgz", - "integrity": "sha512-aHfz47g0ZhMtTVHmIzMVpJy8ePhhOy68GY5bv110+5DVtZ+W7BsOx+m61UNQqfrWyPztIHIanWa3E2tib3NFIw==", - "license": "MIT", - "dependencies": { - "@types/web-bluetooth": "^0.0.21", - "@vueuse/metadata": "14.3.0", - "@vueuse/shared": "14.3.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "vue": "^3.5.0" - } - }, - "node_modules/@nextcloud/vue/node_modules/@vueuse/metadata": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-14.3.0.tgz", - "integrity": "sha512-BwxmbAzwAVF50+MW57GXOUEV61nFBGnlBvrTqj49PqWJu3uw7hdu72ztXeZ33RdZtDY6kO+bfCAE1PCn88Tktw==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@nextcloud/vue/node_modules/vue-router": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-5.1.0.tgz", - "integrity": "sha512-HAbiLzLEHQwxPgvsbOJDAwtavszEgLwri6XfyrsPECIFez8+59xc9LofWVdc/HEaSRT822lJ8H9Ns38VVond5g==", - "license": "MIT", - "dependencies": { - "@babel/generator": "^8.0.0-rc.4", - "@vue-macros/common": "^3.1.1", - "@vue/devtools-api": "^8.1.2", - "ast-walker-scope": "^0.9.0", - "chokidar": "^5.0.0", - "json5": "^2.2.3", - "local-pkg": "^1.1.2", - "magic-string": "^0.30.21", - "mlly": "^1.8.2", - "muggle-string": "^0.4.1", - "pathe": "^2.0.3", - "picomatch": "^4.0.3", - "scule": "^1.3.0", - "tinyglobby": "^0.2.16", - "unplugin": "^3.0.0", - "unplugin-utils": "^0.3.1", - "yaml": "^2.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/posva" - }, - "peerDependencies": { - "@pinia/colada": ">=0.21.2", - "@vue/compiler-sfc": "^3.5.34", - "pinia": "^3.0.4", - "vite": "^7.0.0 || ^8.0.0", - "vue": "^3.5.34" - }, - "peerDependenciesMeta": { - "@pinia/colada": { - "optional": true - }, - "@vue/compiler-sfc": { - "optional": true - }, - "pinia": { - "optional": true - }, - "vite": { - "optional": true - } - } - }, - "node_modules/@nodable/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-9uGyhaQavEUMC8AIddIjau4NsnsXhou+j5sBAGojCM1oxmQpVKTWR/9JxABD6UAv12vpIms55fPZKFQEhG6uBg==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/nodable" - } - ], - "license": "MIT" - }, - "node_modules/@parcel/watcher": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.6.tgz", - "integrity": "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "dependencies": { - "detect-libc": "^2.0.3", - "is-glob": "^4.0.3", - "node-addon-api": "^7.0.0", - "picomatch": "^4.0.3" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.5.6", - "@parcel/watcher-darwin-arm64": "2.5.6", - "@parcel/watcher-darwin-x64": "2.5.6", - "@parcel/watcher-freebsd-x64": "2.5.6", - "@parcel/watcher-linux-arm-glibc": "2.5.6", - "@parcel/watcher-linux-arm-musl": "2.5.6", - "@parcel/watcher-linux-arm64-glibc": "2.5.6", - "@parcel/watcher-linux-arm64-musl": "2.5.6", - "@parcel/watcher-linux-x64-glibc": "2.5.6", - "@parcel/watcher-linux-x64-musl": "2.5.6", - "@parcel/watcher-win32-arm64": "2.5.6", - "@parcel/watcher-win32-ia32": "2.5.6", - "@parcel/watcher-win32-x64": "2.5.6" - } - }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.6.tgz", - "integrity": "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.6.tgz", - "integrity": "sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.6.tgz", - "integrity": "sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.6.tgz", - "integrity": "sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.6.tgz", - "integrity": "sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==", - "cpu": [ - "arm" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-musl": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.6.tgz", - "integrity": "sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==", - "cpu": [ - "arm" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.6.tgz", - "integrity": "sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==", - "cpu": [ - "arm64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.6.tgz", - "integrity": "sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==", - "cpu": [ - "arm64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.6.tgz", - "integrity": "sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==", - "cpu": [ - "x64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.6.tgz", - "integrity": "sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==", - "cpu": [ - "x64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.6.tgz", - "integrity": "sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.6.tgz", - "integrity": "sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.6.tgz", - "integrity": "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", - "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==", - "dev": true, - "license": "MIT" - }, - "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, - "license": "MIT", - "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": "6.0.3", - "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.3.tgz", - "integrity": "sha512-J4RZarRvQAm5IF0/LwUUg+obsm+xZhYnbMXmXROyoSE1ATJe3oXSb9L5MMppdxP2ylNSjv6zFBwKYjcKMucVfA==", - "dev": true, - "license": "MIT", - "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.4.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.4.0.tgz", - "integrity": "sha512-MfPp06CjRLfXQ3wY0R8vJDYBy/MvVcc9OulEfR0B8Iv9ko+GCNaRZ+EpJYFl27LhKsZK0o420sYCRHCjfCgeUg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^2.0.2", - "picomatch": "^4.0.2" - }, - "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.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.62.2.tgz", - "integrity": "sha512-6o7ZLZK+BeenkZCFNDXqpbjw9bD6nuWonvS/lwQJp7NoVVxm6p3qE7qQ5jGuBjiFsgvqjD8mZAU5oWxTmbOeOg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.62.2.tgz", - "integrity": "sha512-BaH7BllCACHoH1LguOU56UItGfUWjujlO65kS9LAodViaN4bwIKd7oeW/ZHJ/4ljr/7MIiENnNy3HJ0zXv8Zkw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.62.2.tgz", - "integrity": "sha512-v39RCCvj4He82I9sFmk+M1VZ0PLM9sfsLVikjfx2hYBNALhrrOR2D3JjQA6AhlaSOgcR+RzrKY7e1+bT6SUO/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.62.2.tgz", - "integrity": "sha512-yl0y2vq3S3lHeuXhEdss6TWfKW8vkujImO12tn4ZkG/4oghr09LvdYm2RElVjokTQiUvDUGXLGsYeLqUMCKpGA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.62.2.tgz", - "integrity": "sha512-tT4pvt4qXD+vEoezupCWi+a1F0vvDiksiHc+PxRlYTOH1I6/X4id9jPxTP+Fg+545euaFT1jJVs4CEdHZAU1vw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.62.2.tgz", - "integrity": "sha512-6nU5F2wCW+qvCBhTn1pdIU3bzsIoF7EUwsCDRxilWGprQR6yd508YnH9+OKFCwpfS8pjZqDUmnCAr7exax0XCg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.62.2.tgz", - "integrity": "sha512-n1GJHPOvpIfhi3TmrCeh6S6URt9BFCt0KQE3qvexyGCTAKpR4Lg+eWvNZEqu7epxwus/8ElT3hacYEucm49SZg==", - "cpu": [ - "arm" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.62.2.tgz", - "integrity": "sha512-JqgflS8wEB+UXV/vS1RpRbifGBeN4D5lz8D8oOFbFZw4vedvdOgCFAjfBmIMdW3yL10XpQQ0Ambepw6MXrhOnA==", - "cpu": [ - "arm" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.62.2.tgz", - "integrity": "sha512-wnFJkogWvN4jm/hQRF2UBaeUmk20j5+DmHvoyWii2b8HJDyvz1MF2OU/6ynXt2KR63rbZLWkFpoytpdc/yBuSA==", - "cpu": [ - "arm64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.62.2.tgz", - "integrity": "sha512-HVu2bp0zhvJ8xHEV9+UUs7S90VadmBSY3LcIMvozbPo4AuMGDWlz3ymHLHZPX4hR67TKTt8Qp5PJ5RBg/i+RMQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.62.2.tgz", - "integrity": "sha512-mQqqAV8QaoSgr9I2fKDLY2BAVvmKjWoGiu/cSYQonsLvtqwEn1E4QYfnCOcp5zoEqNhsDYin1s6jx/VJmrxlZg==", - "cpu": [ - "loong64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.62.2.tgz", - "integrity": "sha512-IxKLoxCQ2IWi6bT2akyDUBGsOImDKB+sPp4EsTmwFQ/fMwpCKm8uLSSgP/Kx/QYUgKis6SEZ5/Nlhup0DIA0PQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.62.2.tgz", - "integrity": "sha512-Mk5ha2RQSgyFfmYYLkBpPnUk8D8FriBxesO1u9O75X0mHgXL1UQcH5Itl2lurWL2tj0RxV9b9tJgipac0hRY9A==", - "cpu": [ - "ppc64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.62.2.tgz", - "integrity": "sha512-CjvEnqJL/0/TQ3TXX3OPIJ/kmBellrWd4heXUmHeJlTnmwjKpSJzoehLaL6Xk0ZnMHBu9dZuFADNOrtjF4v+2w==", - "cpu": [ - "ppc64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.62.2.tgz", - "integrity": "sha512-1SiZbzwdkaDURsew/tSOrooKiYy7EQGT6m8ufavAi9NEyQb/6VuIxFXAL1fqa4iZe3g4NbNk4P7J32z2tw5Mgg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.62.2.tgz", - "integrity": "sha512-nQts12zJ3NQRoE6uYljOH89v7szzLDvG2JD/vsX+vGXU8w/At1GowTZ5/7qeFQ8m7L55rpR8Okugnuo5bgjy2Q==", - "cpu": [ - "riscv64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.62.2.tgz", - "integrity": "sha512-E9/ll019jhPIJgpzfZoIkBGhcz+kKNgVWYRY0zr9srBdPPFVpvOKW8VaJKUbeK+eZXyQF9ltME+Kk6affeaPgg==", - "cpu": [ - "s390x" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.62.2.tgz", - "integrity": "sha512-5BqxR/pshjey51iliyzTD5Xi3EN0aLmQ2lZ3lvefVV9c82BvrLo2/6OT55iifpWBufs6kdwWbuOKS841DrmK9A==", - "cpu": [ - "x64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.62.2.tgz", - "integrity": "sha512-uNN83XxQrRAh/w0/pmAfibcwyb6YWt4gP+dpnQKPVJshAloQ785ii8CT8ZCIxkGg9opVsvAlGhFitSm6D1Jjpg==", - "cpu": [ - "x64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.62.2.tgz", - "integrity": "sha512-srjEIxSH3LRnJN6THczDHWQplqEMFiAJrTab0msUryh9kwNpkICf3Ea6q6MN/2cZwRFUNx5w+h6Hpi4QuHS6Zg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ] - }, - "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.62.2.tgz", - "integrity": "sha512-8hOJnxgbyObnCm5AlRA3A931xX19xq80RjVTKgJOvEKWqJruP/Uf12IbAOaDjjEXYRewwHLfmF0YRIdK3OwKWA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.62.2.tgz", - "integrity": "sha512-mmF4AY1i0hG/bLWUctUq59gtmgaSIRa3cu/A3JFRp/sCNEme2bgDEiDS22P9FbnJB8NJNF4jPJiSP5RHQpUTDg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.62.2.tgz", - "integrity": "sha512-DZgkknc6jhHrk46V25vbAM0zZkyP0nSDkJB8/dRkLTxv470dOmWDqGoEJl/9A0dFfS7yE3REOwNDxpHwSLSt0Q==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.62.2.tgz", - "integrity": "sha512-T6xr6ucWSFto+VGajA8YH26LdpHRuP4YLHEKAtCWvJDOlnmWcDZVCI2Jmjr+IFHDlt2zRaTAKE4tfjTaWLgJBg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.2.tgz", - "integrity": "sha512-BfzEnDJOt9T8M989/lA37EcJgat01wLRnoi5dQf3QzOH7jzpqTAzdDbVfRljVr5r+jzKqpbHeyOfAaXxAd0PAA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rushstack/node-core-library": { - "version": "5.23.1", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.23.1.tgz", - "integrity": "sha512-wlKmIKIYCKuCASbITvOxLZXepPbwXvrv7S6ig6XNWFchSyhL/E2txmVXspHY49Wu2dzf7nI27a2k/yV5BA3EiA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "~8.18.0", - "ajv-draft-04": "~1.0.0", - "ajv-formats": "~3.0.1", - "fs-extra": "~11.3.0", - "import-lazy": "~4.0.0", - "jju": "~1.4.0", - "resolve": "~1.22.1", - "semver": "~7.7.4" - }, - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/@rushstack/node-core-library/node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@rushstack/problem-matcher": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@rushstack/problem-matcher/-/problem-matcher-0.2.1.tgz", - "integrity": "sha512-gulfhBs6n+I5b7DvjKRfhMGyUejtSgOHTclF/eONr8hcgF1APEDjhxIsfdUYYMzC3rvLwGluqLjbwCFZ8nxrog==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/@rushstack/rig-package": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.7.3.tgz", - "integrity": "sha512-aAA518n6wxxjCfnTAOjQnm7ngNE0FVHxHAw2pxKlIhxrMn0XQjGcXKF0oKWpjBgJOmsaJpVob/v+zr3zxgPWuA==", - "dev": true, - "license": "MIT", - "dependencies": { - "jju": "~1.4.0", - "resolve": "~1.22.1" - } - }, - "node_modules/@rushstack/terminal": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.24.0.tgz", - "integrity": "sha512-8ZQS4MMaGsv27EXCBiH7WMPkRZrffeDoIevs6z9TM5dzqiY6+Hn4evfK/G+gvgBTjfvfkHIZPQQmalmI2sM4TQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rushstack/node-core-library": "5.23.1", - "@rushstack/problem-matcher": "0.2.1", - "supports-color": "~8.1.1" - }, - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/@rushstack/ts-command-line": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-5.3.10.tgz", - "integrity": "sha512-fwI076HYknC0IrMXdY6UmjDv+PH7NHhNJX3/pY2UblSE5XrXgndXZPiOe/6ZtuFpn6DvVDVNhtkIzQ+Qu/MhVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rushstack/terminal": "0.24.0", - "@types/argparse": "1.0.38", - "argparse": "~1.0.9", - "string-argv": "~0.3.1" - } - }, - "node_modules/@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", - "license": "MIT" - }, - "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, - "license": "MIT" - }, - "node_modules/@types/debug": { - "version": "4.1.13", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz", - "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", - "license": "MIT", - "dependencies": { - "@types/ms": "*" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/@types/estree": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", - "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/@types/hast": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.5.tgz", - "integrity": "sha512-rp/ezSWaD1m44dPKICGhiskI13nVr7qTloFwDa/IYkhhf5nzwP+zIQcIJh3WIFSBOy/H1PzB40jPjMDksN4F+g==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "@types/sizzle": "*" - } - }, - "node_modules/@types/jsesc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@types/jsesc/-/jsesc-2.5.1.tgz", - "integrity": "sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", - "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", - "license": "MIT" - }, - "node_modules/@types/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==", - "license": "MIT" - }, - "node_modules/@types/sizzle": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.10.tgz", - "integrity": "sha512-TC0dmN0K8YcWEAEfiPi5gJP14eJe30TTGjkvek3iM/1NdHHsdCA/Td6GvNndMOo/iSnIsZ4HuuhrYPDAmbxzww==", - "license": "MIT" - }, - "node_modules/@types/toastify-js": { - "version": "1.12.4", - "resolved": "https://registry.npmjs.org/@types/toastify-js/-/toastify-js-1.12.4.tgz", - "integrity": "sha512-zfZHU4tKffPCnZRe7pjv/eFKzTVHozKewFCKaCjZ4gFinKgJRz/t0bkZiMCXJxPhv/ZoeDGNOeRD09R0kQZ/nw==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "optional": true - }, - "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==", - "license": "MIT" - }, - "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==", - "license": "MIT" - }, - "node_modules/@ungap/structured-clone": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.3.tgz", - "integrity": "sha512-60YRaenCQcVjYEKOcG824+DRGGIQ3VKErcBoAEDJZz5bKIs2ZG+X/H9Nk+Q6EVkwJk5QNApxbrc5QtBSwtrXAg==", - "license": "ISC" - }, - "node_modules/@vitejs/plugin-vue": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-6.0.7.tgz", - "integrity": "sha512-km+p+XdSz9Sxm5rqUbqcSfZYaAniKxWBj1KURl+Jr7UaPvvX7BmaWMdP69I5rrFDeQGyxAG7NXdc57vz+snhWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rolldown/pluginutils": "^1.0.1" - }, - "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "peerDependencies": { - "vite": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", - "vue": "^3.2.25" - } - }, - "node_modules/@volar/language-core": { - "version": "2.4.28", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.28.tgz", - "integrity": "sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@volar/source-map": "2.4.28" - } - }, - "node_modules/@volar/source-map": { - "version": "2.4.28", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.28.tgz", - "integrity": "sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@volar/typescript": { - "version": "2.4.28", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.28.tgz", - "integrity": "sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@volar/language-core": "2.4.28", - "path-browserify": "^1.0.1", - "vscode-uri": "^3.0.8" - } - }, - "node_modules/@vue-macros/common": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-3.1.2.tgz", - "integrity": "sha512-h9t4ArDdniO9ekYHAD95t9AZcAbb19lEGK+26iAjUODOIJKmObDNBSe4+6ELQAA3vtYiFPPBtHh7+cQCKi3Dng==", - "license": "MIT", - "dependencies": { - "@vue/compiler-sfc": "^3.5.22", - "ast-kit": "^2.1.2", - "local-pkg": "^1.1.2", - "magic-string-ast": "^1.0.2", - "unplugin-utils": "^0.3.0" - }, - "engines": { - "node": ">=20.19.0" - }, - "funding": { - "url": "https://github.com/sponsors/vue-macros" - }, - "peerDependencies": { - "vue": "^2.7.0 || ^3.2.25" - }, - "peerDependenciesMeta": { - "vue": { - "optional": true - } - } - }, - "node_modules/@vue/compiler-core": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.39.tgz", - "integrity": "sha512-16KBTEXAJCpDr0mwlw+AZyhu8iyC7R3S2vBwsI7QnWJU6X3WKc9VKeNEZpiMdZ569qWhz9574L3vV55qRL0Vtw==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.29.7", - "@vue/shared": "3.5.39", - "entities": "^7.0.1", - "estree-walker": "^2.0.2", - "source-map-js": "^1.2.1" - } - }, - "node_modules/@vue/compiler-dom": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.39.tgz", - "integrity": "sha512-oQPigALqYbNxTNPvNgSOe+czwVExfbVF02lz8jP0S3AXJiu3jxYDygNUiqSep4ezzW8XgnubqH63My2A7JR/vg==", - "license": "MIT", - "dependencies": { - "@vue/compiler-core": "3.5.39", - "@vue/shared": "3.5.39" - } - }, - "node_modules/@vue/compiler-sfc": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.39.tgz", - "integrity": "sha512-d0ki86iOyN8LoZPBmk5SJWNwHP19CnDDCfuo//+2WJa2g5Ke0Jay983PIBIcSSzldC68I8DrD5GrHV3OSDfodg==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.29.7", - "@vue/compiler-core": "3.5.39", - "@vue/compiler-dom": "3.5.39", - "@vue/compiler-ssr": "3.5.39", - "@vue/shared": "3.5.39", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.21", - "postcss": "^8.5.15", - "source-map-js": "^1.2.1" - } - }, - "node_modules/@vue/compiler-ssr": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.39.tgz", - "integrity": "sha512-Ce7/wvwMHai74bdszfXExdazFigYnlF9zgCmEQUcM1j0fOymlouZ7XilTYNo8oUjhlnjYOZbGrcYKuqjz89Ucw==", - "license": "MIT", - "dependencies": { - "@vue/compiler-dom": "3.5.39", - "@vue/shared": "3.5.39" - } - }, - "node_modules/@vue/compiler-vue2": { - "version": "2.7.16", - "resolved": "https://registry.npmjs.org/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", - "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", - "dev": true, - "license": "MIT", - "dependencies": { - "de-indent": "^1.0.2", - "he": "^1.2.0" - } - }, - "node_modules/@vue/devtools-api": { - "version": "6.6.4", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", - "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", - "license": "MIT" - }, - "node_modules/@vue/devtools-kit": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-8.1.5.tgz", - "integrity": "sha512-FcSAxsi4eWuXLCB7Rv9lj0aIVHHPNVQ2BazGf4RJTc2JCqb4BQg0hk87ZFhminCfl+mD5OUI0rX2cgyu4kJOGA==", - "license": "MIT", - "dependencies": { - "@vue/devtools-shared": "^8.1.5", - "birpc": "^2.6.1", - "hookable": "^5.5.3", - "perfect-debounce": "^2.0.0" - } - }, - "node_modules/@vue/devtools-shared": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-8.1.5.tgz", - "integrity": "sha512-mhT4zcPFhF+Xk1O4BfhhrbXzpmfqY03fS6xGpcllbQG7lDjhQf8pQHcTIhqQIYx1hfwtHmk/6jM96ele0UxPqQ==", - "license": "MIT" - }, - "node_modules/@vue/language-core": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.0.tgz", - "integrity": "sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@volar/language-core": "~2.4.11", - "@vue/compiler-dom": "^3.5.0", - "@vue/compiler-vue2": "^2.7.16", - "@vue/shared": "^3.5.0", - "alien-signals": "^0.4.9", - "minimatch": "^9.0.3", - "muggle-string": "^0.4.1", - "path-browserify": "^1.0.1" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@vue/language-core/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==", - "dev": true, - "license": "MIT" - }, - "node_modules/@vue/language-core/node_modules/brace-expansion": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.2.tgz", - "integrity": "sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@vue/language-core/node_modules/minimatch": { - "version": "9.0.9", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", - "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.2" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@vue/reactivity": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.39.tgz", - "integrity": "sha512-TpsuBJ9gGlZa5d23XcM2y8EXanz9dZeVDQBXRwzy46ItgvM+rWpzs+UVM0wcRLxGvcav0HE5jz2gNL53xlRAog==", - "license": "MIT", - "dependencies": { - "@vue/shared": "3.5.39" - } - }, - "node_modules/@vue/runtime-core": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.39.tgz", - "integrity": "sha512-9GLtNyRvPAUMbX+7ono0RC2j0guo2LXVi8LvcmAooImACUKm0oFf0jjwbX8/H0AE/t1nxhAkn8RSl9PMCzzxZw==", - "license": "MIT", - "dependencies": { - "@vue/reactivity": "3.5.39", - "@vue/shared": "3.5.39" - } - }, - "node_modules/@vue/runtime-dom": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.39.tgz", - "integrity": "sha512-7Y6aAGboKcXAZ3ECuUy7RrS5yy2r47dhTp2SKaJmYxjopImaVFaNa5Ne66NwGovsrxVAl5S5rwc7m22UG7Lmww==", - "license": "MIT", - "dependencies": { - "@vue/reactivity": "3.5.39", - "@vue/runtime-core": "3.5.39", - "@vue/shared": "3.5.39", - "csstype": "^3.2.3" - } - }, - "node_modules/@vue/server-renderer": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.39.tgz", - "integrity": "sha512-yZSakiAGw85rZfG7UM8akMnIF+FmeiNk47uvHf2nVBBSe+dIKUhZuZq9+XgJhbV3nS5Z4ALH23/MpXofW+mbcw==", - "license": "MIT", - "dependencies": { - "@vue/compiler-ssr": "3.5.39", - "@vue/shared": "3.5.39" - }, - "peerDependencies": { - "vue": "3.5.39" - } - }, - "node_modules/@vue/shared": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.39.tgz", - "integrity": "sha512-l1rrBtBfTnmxvtsvdQDXltUUy8S1Y+ZaqdfUzmAnJkTd8Z8rv5v/ytW+TKiqEOWyHPoqtPlNFSs0lhRmYVSHVA==", - "license": "MIT" - }, - "node_modules/@vuepic/vue-datepicker": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@vuepic/vue-datepicker/-/vue-datepicker-11.0.3.tgz", - "integrity": "sha512-sb2adwqwK2PizLQOpxCYps2SwhVT6/ic2HMIOqHJXuYa6iAJZWGL5YVlS7O4aW+sk6ZyxlDURLO7kDZPL4HB/w==", - "license": "MIT", - "dependencies": { - "date-fns": "^4.1.0" - }, - "engines": { - "node": ">=18.12.0" - }, - "peerDependencies": { - "vue": ">=3.3.0" - } - }, - "node_modules/@vueuse/components": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-14.3.0.tgz", - "integrity": "sha512-jnrJrecSfa8H+G6wtAwsCnMtKbKZDSpu5JZDuulZikWrHb6uuS5SyXP6M2b79tofxipm78VWDSzW+58pu1yglA==", - "license": "MIT", - "dependencies": { - "@vueuse/core": "14.3.0", - "@vueuse/shared": "14.3.0" - }, - "peerDependencies": { - "vue": "^3.5.0" - } - }, - "node_modules/@vueuse/components/node_modules/@types/web-bluetooth": { - "version": "0.0.21", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.21.tgz", - "integrity": "sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==", - "license": "MIT" - }, - "node_modules/@vueuse/components/node_modules/@vueuse/core": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-14.3.0.tgz", - "integrity": "sha512-aHfz47g0ZhMtTVHmIzMVpJy8ePhhOy68GY5bv110+5DVtZ+W7BsOx+m61UNQqfrWyPztIHIanWa3E2tib3NFIw==", - "license": "MIT", - "dependencies": { - "@types/web-bluetooth": "^0.0.21", - "@vueuse/metadata": "14.3.0", - "@vueuse/shared": "14.3.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "vue": "^3.5.0" - } - }, - "node_modules/@vueuse/components/node_modules/@vueuse/metadata": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-14.3.0.tgz", - "integrity": "sha512-BwxmbAzwAVF50+MW57GXOUEV61nFBGnlBvrTqj49PqWJu3uw7hdu72ztXeZ33RdZtDY6kO+bfCAE1PCn88Tktw==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/core": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-11.3.0.tgz", - "integrity": "sha512-7OC4Rl1f9G8IT6rUfi9JrKiXy4bfmHhZ5x2Ceojy0jnd3mHNEvV4JaRygH362ror6/NZ+Nl+n13LPzGiPN8cKA==", - "license": "MIT", - "dependencies": { - "@types/web-bluetooth": "^0.0.20", - "@vueuse/metadata": "11.3.0", - "@vueuse/shared": "11.3.0", - "vue-demi": ">=0.14.10" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/core/node_modules/@vueuse/shared": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-11.3.0.tgz", - "integrity": "sha512-P8gSSWQeucH5821ek2mn/ciCk+MS/zoRKqdQIM3bHq6p7GXDAJLmnRRKmF5F65sAVJIfzQlwR3aDzwCn10s8hA==", - "license": "MIT", - "dependencies": { - "vue-demi": ">=0.14.10" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/metadata": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-11.3.0.tgz", - "integrity": "sha512-pwDnDspTqtTo2HwfLw4Rp6yywuuBdYnPYDq+mO38ZYKGebCUQC/nVj/PXSiK9HX5otxLz8Fn7ECPbjiRz2CC3g==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/shared": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-14.3.0.tgz", - "integrity": "sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "vue": "^3.5.0" - } - }, - "node_modules/acorn": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.17.0.tgz", - "integrity": "sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/ajv": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", - "dev": true, - "license": "MIT", - "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-draft-04": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz", - "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "ajv": "^8.5.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/alien-signals": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-0.4.14.tgz", - "integrity": "sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/anynum": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/anynum/-/anynum-1.0.1.tgz", - "integrity": "sha512-N6//FLET/tXYNM/F6ABca1oH6fWB+KlTt909Le28WMDBk8oaT4vY17DCrwg2MvmuqUKt3Ni4N5dGJ/EoBgcO6A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT" - }, - "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, - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "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.5", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.5.tgz", - "integrity": "sha512-3aRg6/JxfffFD+OlOjOFR3Vo79l39ooBTFucxx+MT3dhCtzn3EmiUPQo+6/OZuI2jbXi3YKgmiTFBgChQMwIRQ==", - "dev": true, - "license": "MIT" - }, - "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, - "license": "MIT", - "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/ast-kit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-2.2.0.tgz", - "integrity": "sha512-m1Q/RaVOnTp9JxPX+F+Zn7IcLYMzM8kZofDImfsKZd8MbR+ikdOzTeztStWqfrqIxZnYWryyI9ePm3NGjnZgGw==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.28.5", - "pathe": "^2.0.3" - }, - "engines": { - "node": ">=20.19.0" - }, - "funding": { - "url": "https://github.com/sponsors/sxzz" - } - }, - "node_modules/ast-walker-scope": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/ast-walker-scope/-/ast-walker-scope-0.9.0.tgz", - "integrity": "sha512-IJdzo2vLiElBxKzwS36VsCue/62d6IdWjnPB2v3nuPKeWGynp6FF/CYoLa5i/3jXH/z97ZDdsXz6abpgM6w07A==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.29.2", - "@babel/types": "^7.29.0", - "ast-kit": "^2.2.0" - }, - "engines": { - "node": ">=20.19.0" - }, - "funding": { - "url": "https://github.com/sponsors/sxzz" - } - }, - "node_modules/astronomia": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/astronomia/-/astronomia-4.2.0.tgz", - "integrity": "sha512-mTvpBGyXB80aSsDhAAiuwza5VqAyqmj5yzhjBrFhRy17DcWDzJrb8Vdl4Sm+g276S+mY7bk/5hi6akZ5RQFeHg==", - "license": "MIT", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "license": "MIT" - }, - "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, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axios": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.18.1.tgz", - "integrity": "sha512-3nTvFlvpn9Zu/RkHUqtc7/+al4UpRW5az71ap5zccp6e8RAYEzhMTecX8Dz1wWDYrPpUoB1HAQEGEAEvUr7S9g==", - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.16.0", - "form-data": "^4.0.5", - "https-proxy-agent": "^5.0.1", - "proxy-from-env": "^2.1.0" - } - }, - "node_modules/bail": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", - "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/balanced-match": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", - "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "18 || 20 || >=22" - } - }, - "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==", - "license": "MIT" - }, - "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" - } - ], - "license": "MIT" - }, - "node_modules/baseline-browser-mapping": { - "version": "2.10.42", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.42.tgz", - "integrity": "sha512-c/jurFrDLyui7o1J86yLkRu4LMsTYcBohveus7/I2Hzdn9KIP2bdJPTue/lR1KH46enoPbD77GKeSYNdyPoD3Q==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "baseline-browser-mapping": "dist/cli.cjs" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/birpc": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.9.0.tgz", - "integrity": "sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/blurhash": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/blurhash/-/blurhash-2.0.5.tgz", - "integrity": "sha512-cRygWd7kGBQO3VEhPiTgq4Wc43ctsM+o46urrmPOiuAe+07fzlSB9OJVdpgDL0jPqXUVQ9ht7aq7kxOeJHRK+w==", - "license": "MIT" - }, - "node_modules/bn.js": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.5.tgz", - "integrity": "sha512-Vq886eXykuP5E6HcKSSStP3bJgrE6In5WKxVUvJ8XGpWWYs2xZHWqUwzCtGgEtBcxyd57KBFDPFoUfNzdaHCNg==", - "dev": true, - "license": "MIT" - }, - "node_modules/brace-expansion": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.7.tgz", - "integrity": "sha512-7oFy703dxfY3/NLxC1fh2SUCQ0H9rmAY+5EpDVfXjUTTs+HEwR2nYaqLv+GWcTsumwxPfiz6CzCNkwXwBUwqCA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^4.0.2" - }, - "engines": { - "node": "18 || 20 || >=22" - } - }, - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "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, - "license": "MIT", - "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, - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.1.tgz", - "integrity": "sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^5.2.1", - "randombytes": "^2.1.0", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/browserify-sign": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.6.tgz", - "integrity": "sha512-sd+Q65fjlWCYWtZKXiKfrUc8d+4jtp/8f0W2NkwzLtoW4bI6UDnWusLWIurHnmurW0XShIRxpwiOX4EoPtXUAg==", - "dev": true, - "license": "ISC", - "dependencies": { - "bn.js": "^5.2.3", - "browserify-rsa": "^4.1.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.6.1", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.9", - "readable-stream": "^2.3.8", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "dependencies": { - "pako": "~1.0.5" - } - }, - "node_modules/browserslist": { - "version": "4.28.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.5.tgz", - "integrity": "sha512-Cu2E6QejHWzuDMTkuwgpABFgDfZrXLQq5V13YOACZx4mFAG4IwGTbTfHPMr4WtxlHoXSM8FIuRwYYCz5XiabaQ==", - "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" - } - ], - "license": "MIT", - "dependencies": { - "baseline-browser-mapping": "^2.10.42", - "caniuse-lite": "^1.0.30001800", - "electron-to-chromium": "^1.5.387", - "node-releases": "^2.0.50", - "update-browserslist-db": "^1.2.3" - }, - "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, - "license": "MIT", - "dependencies": { - "meow": "^13.0.0" - }, - "bin": { - "browserslist-to-esbuild": "cli/index.js" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "browserslist": "*" - } - }, - "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" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "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, - "license": "MIT" - }, - "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, - "license": "MIT" - }, - "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==", - "license": "MIT" - }, - "node_modules/caldate": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/caldate/-/caldate-2.0.5.tgz", - "integrity": "sha512-JndhrUuDuE975KUhFqJaVR1OQkCHZqpOrJur/CFXEIEhWhBMjxO85cRSK8q4FW+B+yyPq6GYua2u4KvNzTcq0w==", - "license": "ISC", - "dependencies": { - "moment-timezone": "^0.5.43" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", - "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "get-intrinsic": "^1.3.0", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001803", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001803.tgz", - "integrity": "sha512-g/uHREV2ZpK9qMalCsWaxmA6ol+DX8GYhuf3T40RKoP+oL7vhRJh8LNt73PCjpnR6l14FzfPrB5Yux4PKm2meg==", - "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" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-html4": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", - "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", - "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", - "license": "MIT", - "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==", - "license": "BSD-3-Clause", - "engines": { - "node": "*" - } - }, - "node_modules/chokidar": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", - "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", - "license": "MIT", - "dependencies": { - "readdirp": "^5.0.0" - }, - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/cipher-base": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.7.tgz", - "integrity": "sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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, - "license": "MIT" - }, - "node_modules/compare-versions": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.1.tgz", - "integrity": "sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg==", - "dev": true, - "license": "MIT" - }, - "node_modules/confbox": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.4.tgz", - "integrity": "sha512-ysOGlgTFbN2/Y6Cg3Iye8YKulHw+R2fNXHrgSmXISQdMnomY6eNDprVdW9R5xBguEqI954+S6709UyiO7B+6OQ==", - "license": "MIT" - }, - "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/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, - "license": "MIT" - }, - "node_modules/core-js": { - "version": "3.49.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.49.0.tgz", - "integrity": "sha512-es1U2+YTtzpwkxVLwAFdSpaIMyQaq0PBgm3YD1W3Qpsn1NAmO3KSgZfu+oGSWVu6NvLHoHCV/aYcsE5wiB7ALg==", - "hasInstallScript": true, - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat": { - "version": "3.49.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.49.0.tgz", - "integrity": "sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.28.1" - }, - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - } - }, - "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.12.5", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.5.tgz", - "integrity": "sha512-3aRg6/JxfffFD+OlOjOFR3Vo79l39ooBTFucxx+MT3dhCtzn3EmiUPQo+6/OZuI2jbXi3YKgmiTFBgChQMwIRQ==", - "dev": true, - "license": "MIT" - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "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, - "license": "MIT" - }, - "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==", - "license": "BSD-3-Clause", - "engines": { - "node": "*" - } - }, - "node_modules/crypto-browserify": { - "version": "3.12.1", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.1.tgz", - "integrity": "sha512-r4ESw/IlusD17lgQi1O20Fa3qNnsckR126TdUuBgAu7GBYSIPvdNyONd3Zrxh0xCwA4+6w/TDArBPsMvhur+KQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "browserify-cipher": "^1.0.1", - "browserify-sign": "^4.2.3", - "create-ecdh": "^4.0.4", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "diffie-hellman": "^5.0.3", - "hash-base": "~3.0.4", - "inherits": "^2.0.4", - "pbkdf2": "^3.1.2", - "public-encrypt": "^4.0.3", - "randombytes": "^2.1.0", - "randomfill": "^1.0.4" - }, - "engines": { - "node": ">= 0.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/csstype": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", - "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "engines": { - "node": ">= 12" - } - }, - "node_modules/date-bengali-revised": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/date-bengali-revised/-/date-bengali-revised-2.0.2.tgz", - "integrity": "sha512-q9iDru4+TSA9k4zfm0CFHJj6nBsxP7AYgWC/qodK/i7oOIlj5K2z5IcQDtESfs/Qwqt/xJYaP86tkazd/vRptg==", - "license": "MIT", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/date-chinese": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/date-chinese/-/date-chinese-2.1.4.tgz", - "integrity": "sha512-WY+6+Qw92ZGWFvGtStmNQHEYpNa87b8IAQ5T8VKt4wqrn24lBXyyBnWI5jAIyy7h/KVwJZ06bD8l/b7yss82Ww==", - "license": "MIT", - "dependencies": { - "astronomia": "^4.1.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/date-easter": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/date-easter/-/date-easter-1.0.3.tgz", - "integrity": "sha512-aOViyIgpM4W0OWUiLqivznwTtuMlD/rdUWhc5IatYnplhPiWrLv75cnifaKYhmQwUBLAMWLNG4/9mlLIbXoGBQ==", - "license": "MIT", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/date-fns": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", - "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/kossnocorp" - } - }, - "node_modules/date-holidays": { - "version": "3.33.0", - "resolved": "https://registry.npmjs.org/date-holidays/-/date-holidays-3.33.0.tgz", - "integrity": "sha512-1pqbC8hOYlWh6K1XxBvR7uZa+EqUauudJah2SIhPNet7wh8DJGvVY1AziUUpq0+pqhxLW04Jobj6sYer0/6oLw==", - "license": "(ISC AND CC-BY-3.0)", - "dependencies": { - "date-holidays-parser": "^3.4.7", - "js-yaml": "^5.2.1", - "lodash": "^4.18.1", - "prepin": "^1.0.3" - }, - "bin": { - "holidays2json": "scripts/holidays2json.cjs" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/date-holidays-parser": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/date-holidays-parser/-/date-holidays-parser-3.4.7.tgz", - "integrity": "sha512-h09ZEtM6u5cYM6m1bX+1Ny9f+nLO9KVZUKNPEnH7lhbXYTfqZogaGTnhONswGeIJFF91UImIftS3CdM9HLW5oQ==", - "license": "ISC", - "dependencies": { - "astronomia": "^4.1.1", - "caldate": "^2.0.5", - "date-bengali-revised": "^2.0.2", - "date-chinese": "^2.1.4", - "date-easter": "^1.0.3", - "deepmerge": "^4.3.1", - "jalaali-js": "^1.2.7", - "moment-timezone": "^0.5.47" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "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, - "license": "MIT" - }, - "node_modules/debounce": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-3.0.0.tgz", - "integrity": "sha512-64byRbF0/AirwbuHqB3/ZpMG9/nckDa6ZA0yd6UnaQNwbbemCOwvz2sL5sjXLHhZHADyiwLm0M5qMhltUUx+TA==", - "license": "MIT", - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decode-named-character-reference": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", - "integrity": "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==", - "license": "MIT", - "dependencies": { - "character-entities": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "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, - "license": "MIT", - "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-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, - "license": "MIT", - "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==", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/detect-libc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", - "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", - "dev": true, - "license": "Apache-2.0", - "optional": true, - "engines": { - "node": ">=8" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "dequal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/diff": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.4.tgz", - "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.3.1" - } - }, - "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, - "license": "MIT", - "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.5", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.5.tgz", - "integrity": "sha512-3aRg6/JxfffFD+OlOjOFR3Vo79l39ooBTFucxx+MT3dhCtzn3EmiUPQo+6/OZuI2jbXi3YKgmiTFBgChQMwIRQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/dompurify": { - "version": "3.4.11", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.4.11.tgz", - "integrity": "sha512-zhlUV12GsaRzMsf9q5M254YhA4+VuF0fG+QFqu6aYpoGlKtz+w8//jBcGVYBgQkR5GHjUomejY84AV+/uPbWdw==", - "license": "(MPL-2.0 OR Apache-2.0)", - "optionalDependencies": { - "@types/trusted-types": "^2.0.7" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.5.389", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.389.tgz", - "integrity": "sha512-cEto7aeOqBfU1D+c5py5pE+ooscKE75JifxLBdFUZsqAxRS6y7kebtxAZvICszSl05gPjYHDTjY+lXpyGvpJbg==", - "dev": true, - "license": "ISC" - }, - "node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", - "dev": true, - "license": "MIT", - "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.5", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.5.tgz", - "integrity": "sha512-3aRg6/JxfffFD+OlOjOFR3Vo79l39ooBTFucxx+MT3dhCtzn3EmiUPQo+6/OZuI2jbXi3YKgmiTFBgChQMwIRQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/emoji-mart-vue-fast": { - "version": "15.0.5", - "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-15.0.5.tgz", - "integrity": "sha512-wnxLor8ggpqshoOPwIc33MdOC3A1XFeDLgUwYLPtNPL8VeAtXJAVrnFq1CN5PeCYAFoLo4IufHQZ9CfHD4IZiw==", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/runtime": "^7.18.6", - "core-js": "^3.23.5" - }, - "peerDependencies": { - "vue": ">2.0.0" - } - }, - "node_modules/entities": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", - "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "license": "MIT", - "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==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-object-atoms": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz", - "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/esbuild": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", - "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.12", - "@esbuild/android-arm": "0.25.12", - "@esbuild/android-arm64": "0.25.12", - "@esbuild/android-x64": "0.25.12", - "@esbuild/darwin-arm64": "0.25.12", - "@esbuild/darwin-x64": "0.25.12", - "@esbuild/freebsd-arm64": "0.25.12", - "@esbuild/freebsd-x64": "0.25.12", - "@esbuild/linux-arm": "0.25.12", - "@esbuild/linux-arm64": "0.25.12", - "@esbuild/linux-ia32": "0.25.12", - "@esbuild/linux-loong64": "0.25.12", - "@esbuild/linux-mips64el": "0.25.12", - "@esbuild/linux-ppc64": "0.25.12", - "@esbuild/linux-riscv64": "0.25.12", - "@esbuild/linux-s390x": "0.25.12", - "@esbuild/linux-x64": "0.25.12", - "@esbuild/netbsd-arm64": "0.25.12", - "@esbuild/netbsd-x64": "0.25.12", - "@esbuild/openbsd-arm64": "0.25.12", - "@esbuild/openbsd-x64": "0.25.12", - "@esbuild/openharmony-arm64": "0.25.12", - "@esbuild/sunos-x64": "0.25.12", - "@esbuild/win32-arm64": "0.25.12", - "@esbuild/win32-ia32": "0.25.12", - "@esbuild/win32-x64": "0.25.12" - } - }, - "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, - "license": "MIT", - "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==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/estree-toolkit": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/estree-toolkit/-/estree-toolkit-1.7.14.tgz", - "integrity": "sha512-UD46XPj9xCQ+5r+JRv1qdaJuWLbQaconfnFHWOc20ugbHzZSOO6/A+vye46arVxbOSr/KnzRzKfnp9SJ0IqaUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": ">=1.0.8", - "@types/estree-jsx": ">=1.0.5" - } - }, - "node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/eventemitter3": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", - "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", - "license": "MIT" - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/exsolve": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.1.0.tgz", - "integrity": "sha512-D+42+T12DdIlJM3uepa55qGiL3sYdLBOxIl2ifQCzCHz4c7eiolaHsi3BIqEr7JxBzxv2pYZQX9kw16ziMcEmw==", - "license": "MIT" - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "license": "MIT" - }, - "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==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-uri": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.3.tgz", - "integrity": "sha512-i70LwGWUduXqzicKXWshooq+sWL1K3WUU5rKZNG/0i3a1OSoX3HqhH5WbWwTmqWfor4urUakGPiRQcleRZTwOg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fastify" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fastify" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/fast-xml-builder": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.2.1.tgz", - "integrity": "sha512-tPb5TTWfgfVx5BNSi2xV0eLr89POeXXn0dXIsCJ9m1narrWxeIyx6je9d7Rce/3NyXLbvuQmLkxq+RuxMWejvw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT", - "dependencies": { - "path-expression-matcher": "^1.5.0", - "xml-naming": "^0.1.0" - } - }, - "node_modules/fast-xml-parser": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.9.3.tgz", - "integrity": "sha512-brCNCeScma/kqa54J4PIDriSSSLssRkuYaUCpvHJulGc3HGI/xxKUCTDcYkAdqJsyb//ydpbxecjC3hB9+tb/g==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT", - "dependencies": { - "@nodable/entities": "^2.2.0", - "fast-xml-builder": "^1.2.0", - "is-unsafe": "^1.0.1", - "path-expression-matcher": "^1.5.0", - "strnum": "^2.4.1", - "xml-naming": "^0.1.0" - }, - "bin": { - "fxparser": "src/cli/cli.js" - } - }, - "node_modules/fdir": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", - "license": "MIT", - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "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" - } - ], - "license": "MIT", - "dependencies": { - "node-domexception": "^1.0.0", - "web-streams-polyfill": "^3.0.3" - }, - "engines": { - "node": "^12.20 || >= 14.13" - } - }, - "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, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/floating-vue": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/floating-vue/-/floating-vue-5.2.2.tgz", - "integrity": "sha512-afW+h2CFafo+7Y9Lvw/xsqjaQlKLdJV7h1fCHfcYQ1C4SVMlu7OAekqWgu5d4SgvkBVU0pVpLlVsrSTBURFRkg==", - "license": "MIT", - "dependencies": { - "@floating-ui/dom": "~1.1.1", - "vue-resize": "^2.0.0-alpha.1" - }, - "peerDependencies": { - "@nuxt/kit": "^3.2.0", - "vue": "^3.2.0" - }, - "peerDependenciesMeta": { - "@nuxt/kit": { - "optional": true - } - } - }, - "node_modules/floating-vue/node_modules/@floating-ui/dom": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.1.1.tgz", - "integrity": "sha512-TpIO93+DIujg3g7SykEAGZMDtbJRrmnYRCNYSjJlvIbGhBjRSNTLVbNeDQBrzy9qDgUbiWdc7KA0uZHZ2tJmiw==", - "license": "MIT", - "dependencies": { - "@floating-ui/core": "^1.1.0" - } - }, - "node_modules/focus-trap": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-8.2.2.tgz", - "integrity": "sha512-qV0g8hRYBqgACcFOH3f9wXc4zPKhr/0z9RI2a6ZijZ72EeBi4g8oBy8zAWuUR1TsMpOzwpUMFvjdasrC41Joug==", - "license": "MIT", - "dependencies": { - "tabbable": "^6.5.0" - } - }, - "node_modules/follow-redirects": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", - "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "license": "MIT", - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/form-data": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.6.tgz", - "integrity": "sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==", - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "es-set-tostringtag": "^2.1.0", - "hasown": "^2.0.4", - "mime-types": "^2.1.35" - }, - "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==", - "license": "MIT", - "dependencies": { - "fetch-blob": "^3.1.2" - }, - "engines": { - "node": ">=12.20.0" - } - }, - "node_modules/fs-extra": { - "version": "11.3.6", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.6.tgz", - "integrity": "sha512-w8ZNZr2mKIc7qeNaQ9AVPT1+iFaI+Avd4xudVOvdDJ8VytREi1Ft5Ih7hd9jjehod8vAM5GMsfQ/TpPf4EyoEA==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "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, - "license": "MIT", - "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==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/generator-function": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", - "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-intrinsic": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "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, - "license": "ISC" - }, - "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, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "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, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hash-base": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.5.tgz", - "integrity": "sha512-vXm0l45VbcHEVlTCzs8M+s0VeYsB2lnlAaThoLKGXr3bE/VWDOelNUnycUPEhKEaXARL2TEFjBOyUiM6+55KBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "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, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hasown": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz", - "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-jsx-runtime": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.6.tgz", - "integrity": "sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "hast-util-whitespace": "^3.0.0", - "mdast-util-mdx-expression": "^2.0.0", - "mdast-util-mdx-jsx": "^3.0.0", - "mdast-util-mdxjs-esm": "^2.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-js": "^1.0.0", - "unist-util-position": "^5.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-text": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", - "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "hast-util-is-element": "^3.0.0", - "unist-util-find-after": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-whitespace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", - "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "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, - "license": "MIT", - "bin": { - "he": "bin/he" - } - }, - "node_modules/highlight.js": { - "version": "11.11.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.11.1.tgz", - "integrity": "sha512-Xwwo44whKBVCYoliBQwaPvtd/2tYFkRQtXDWj1nackaV2JPXx3L0+Jvd8/qCJ2p+ML0/XVkJ2q+Mr+UVdpJK5w==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=12.0.0" - } - }, - "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, - "license": "MIT", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/hookable": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", - "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", - "license": "MIT" - }, - "node_modules/hot-patcher": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hot-patcher/-/hot-patcher-2.0.1.tgz", - "integrity": "sha512-ECg1JFG0YzehicQaogenlcs2qg6WsXQsxtnbr1i696u5tLUjtJdQAh0u2g0Q5YV45f263Ta1GnUJsc8WIfJf4Q==", - "license": "MIT" - }, - "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, - "license": "MIT" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "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" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/immutable": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.9.tgz", - "integrity": "sha512-m8nVez3rwrgmWxtLMt1ZYXB2Lv7OKYn/disyxAlSDYAlKSlFoPPfIAmAM/M5xqL4m4C/wAPw7S2/CNaUii1Hxg==", - "dev": true, - "license": "MIT" - }, - "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, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "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, - "license": "ISC" - }, - "node_modules/inline-style-parser": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.7.tgz", - "integrity": "sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-alphabetical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", - "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", - "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", - "license": "MIT", - "dependencies": { - "is-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-arguments": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz", - "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - }, - "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==", - "license": "MIT" - }, - "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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.16.2", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.2.tgz", - "integrity": "sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==", - "dev": true, - "license": "MIT", - "dependencies": { - "hasown": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-decimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", - "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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, - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-generator-function": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", - "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.4", - "generator-function": "^2.0.0", - "get-proto": "^1.0.1", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.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, - "license": "MIT", - "optional": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hexadecimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", - "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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, - "license": "MIT", - "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-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==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-svg": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-6.1.0.tgz", - "integrity": "sha512-i7YPdvYuSCYcaLQrKwt8cvKTlwHcdA6Hp8N9SO3Q5jIzo8x6kH3N47W0BvPP7NdxVBmIHx7X9DK36czYYW7lHg==", - "license": "MIT", - "dependencies": { - "@file-type/xml": "^0.4.3" - }, - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-unsafe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-unsafe/-/is-unsafe-1.0.1.tgz", - "integrity": "sha512-CLK2+VdgERgD96EYm5lUQssZYlRg2tkZnbsxZoacmSiRxiFJ4Nk4SzjCl+Ur+v3kXIY9dTIdb3IH22y1mZ56LA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT" - }, - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/jalaali-js": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/jalaali-js/-/jalaali-js-1.2.8.tgz", - "integrity": "sha512-Jl/EwY84JwjW2wsWqeU4pNd22VNQ7EkjI36bDuLw31wH98WQW4fPjD0+mG7cdCK+Y8D6s9R3zLiQ3LaKu6bD8A==", - "license": "MIT" - }, - "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, - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.2.1.tgz", - "integrity": "sha512-zfLtNfQqxVqq3uaTqSkh4x4hZw3KHobGUA0fJUj4wawW8bsQLTVqpHdXSIzidh7o+4lEW36tANuAGdaFx6Zgnw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/puzrin" - }, - { - "type": "github", - "url": "https://github.com/sponsors/nodeca" - } - ], - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.mjs" - } - }, - "node_modules/js-yaml/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==", - "license": "Python-2.0" - }, - "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, - "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, - "license": "MIT" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "license": "MIT", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonfile": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz", - "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "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, - "license": "MIT" - }, - "node_modules/layerr": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/layerr/-/layerr-3.0.0.tgz", - "integrity": "sha512-tv754Ki2dXpPVApOrjTyRo4/QegVb9eVFq4mjqp4+NM5NaX7syQvN5BBNfV/ZpAHCEHV24XdUVrBAoka4jt3pA==", - "license": "MIT" - }, - "node_modules/linkifyjs": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.3.3.tgz", - "integrity": "sha512-P8aEP5U/D1/IlTY2OeYsErdwh9bGuLE30NcXtKEjgdHcahveQoQwM2yZNsioQHsWFz0P7KKudisbrzCgR0sDHg==", - "license": "MIT" - }, - "node_modules/local-pkg": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.2.1.tgz", - "integrity": "sha512-++gUqRDEvcnN6Zhqrr+y/CkVEHhlrR96vZn3nZZPYzMcBUyBtTKzB9NadClFIsIVSsu+3i9tfk/erqy9kAmt7Q==", - "license": "MIT", - "dependencies": { - "mlly": "^1.7.4", - "pkg-types": "^2.3.0", - "quansync": "^0.2.11" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "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, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", - "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/lowlight": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-3.3.0.tgz", - "integrity": "sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "devlop": "^1.0.0", - "highlight.js": "~11.11.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/magic-string": { - "version": "0.30.21", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", - "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.5" - } - }, - "node_modules/magic-string-ast": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/magic-string-ast/-/magic-string-ast-1.0.3.tgz", - "integrity": "sha512-CvkkH1i81zl7mmb94DsRiFeG9V2fR2JeuK8yDgS8oiZSFa++wWLEgZ5ufEOyLHbvSbD1gTRKv9NdX69Rnvr9JA==", - "license": "MIT", - "dependencies": { - "magic-string": "^0.30.19" - }, - "engines": { - "node": ">=20.19.0" - }, - "funding": { - "url": "https://github.com/sponsors/sxzz" - } - }, - "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==", - "license": "ISC" - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/md5": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", - "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", - "license": "BSD-3-Clause", - "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, - "license": "MIT", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/mdast-squeeze-paragraphs": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-6.0.0.tgz", - "integrity": "sha512-6NDbJPTg0M0Ye+TlYwX1KJ1LFbp515P2immRJyJQhc9Na9cetHzSoHNYIQcXpANEAP1sm9yd/CTZU2uHqR5A+w==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-find-and-replace": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", - "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", - "license": "MIT", - "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-from-markdown": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", - "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", - "license": "MIT", - "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-mdx-expression": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", - "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@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-mdx-jsx": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.2.0.tgz", - "integrity": "sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "parse-entities": "^4.0.0", - "stringify-entities": "^4.0.0", - "unist-util-stringify-position": "^4.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdxjs-esm": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", - "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@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==", - "license": "MIT", - "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==", - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", - "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", - "license": "MIT", - "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.2", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", - "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", - "license": "MIT", - "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-classify-character": "^2.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==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/meow": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", - "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/micromark": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", - "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.3", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", - "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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-factory-destination": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", - "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", - "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", - "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-factory-title": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", - "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", - "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", - "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-chunked": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", - "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-classify-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", - "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", - "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-chunked": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", - "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-decode-string": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", - "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", - "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-html-tag-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", - "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-normalize-identifier": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", - "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-resolve-all": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", - "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", - "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", - "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "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.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", - "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-types": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", - "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "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, - "license": "MIT", - "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.5", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.5.tgz", - "integrity": "sha512-3aRg6/JxfffFD+OlOjOFR3Vo79l39ooBTFucxx+MT3dhCtzn3EmiUPQo+6/OZuI2jbXi3YKgmiTFBgChQMwIRQ==", - "dev": true, - "license": "MIT" - }, - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "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, - "license": "ISC" - }, - "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, - "license": "MIT" - }, - "node_modules/minimatch": { - "version": "10.2.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.3.tgz", - "integrity": "sha512-Rwi3pnapEqirPSbWbrZaa6N3nmqq4Xer/2XooiOKyV3q12ML06f7MOuc5DVH8ONZIFhwIYQ3yzPH4nt7iWHaTg==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "brace-expansion": "^5.0.2" - }, - "engines": { - "node": "18 || 20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/mlly": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.8.2.tgz", - "integrity": "sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==", - "license": "MIT", - "dependencies": { - "acorn": "^8.16.0", - "pathe": "^2.0.3", - "pkg-types": "^1.3.1", - "ufo": "^1.6.3" - } - }, - "node_modules/mlly/node_modules/confbox": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", - "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", - "license": "MIT" - }, - "node_modules/mlly/node_modules/pkg-types": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", - "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", - "license": "MIT", - "dependencies": { - "confbox": "^0.1.8", - "mlly": "^1.7.4", - "pathe": "^2.0.1" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/moment-timezone": { - "version": "0.5.48", - "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.48.tgz", - "integrity": "sha512-f22b8LV1gbTO2ms2j2z13MuPogNoh5UzxL3nzNAYKGraILnbGc9NEE6dyiiiLv46DGRb8A4kg8UKWLjPthxBHw==", - "license": "MIT", - "dependencies": { - "moment": "^2.29.4" - }, - "engines": { - "node": "*" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/muggle-string": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", - "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", - "license": "MIT" - }, - "node_modules/nanoid": { - "version": "3.3.15", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.15.tgz", - "integrity": "sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/node-addon-api": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", - "dev": true, - "license": "MIT", - "optional": true - }, - "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==", - "deprecated": "Use your platform's native DOMException instead", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "github", - "url": "https://paypal.me/jimmywarting" - } - ], - "license": "MIT", - "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==", - "license": "MIT", - "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-releases": { - "version": "2.0.51", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.51.tgz", - "integrity": "sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/node-stdlib-browser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-stdlib-browser/-/node-stdlib-browser-1.3.1.tgz", - "integrity": "sha512-X75ZN8DCLftGM5iKwoYLA3rjnrAEs97MkzvSd4q2746Tgpg8b8XWiBGiBG4ZpgcAqBgtgPHTiAc8ZMCvZuikDw==", - "dev": true, - "license": "MIT", - "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.12.1", - "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.4", - "util": "^0.12.4", - "vm-browserify": "^1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/object-inspect": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-queue": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-9.3.1.tgz", - "integrity": "sha512-POWdiIPmsUPGwb4FeQ4OBg46aqmcInSWe45CKDsGHiOBiVQM9chqfQTuqhuTzcg2Vz9faTI65at0KkVyVEiCHw==", - "license": "MIT", - "dependencies": { - "eventemitter3": "^5.0.4", - "p-timeout": "^7.0.0" - }, - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-timeout": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-7.0.1.tgz", - "integrity": "sha512-AxTM2wDGORHGEkPCt8yqxOTMgpfbEHqF51f/5fJCmwFC3C/zNcGT63SymH2ttOAaiIws2zVg4+izQCjrakcwHg==", - "license": "MIT", - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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, - "license": "MIT", - "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, - "license": "(MIT AND Zlib)" - }, - "node_modules/parse-asn1": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.9.tgz", - "integrity": "sha512-fIYNuZ/HastSb80baGOuPRo1O9cf4baWw5WsAp7dBuUzeTD/BoaG8sVTdlPFksBE2lF21dN+A1AnrpIjSWqHHg==", - "dev": true, - "license": "ISC", - "dependencies": { - "asn1.js": "^4.10.1", - "browserify-aes": "^1.2.0", - "evp_bytestokey": "^1.0.3", - "pbkdf2": "^3.1.5", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse-entities": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.2.tgz", - "integrity": "sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "character-entities-legacy": "^3.0.0", - "character-reference-invalid": "^2.0.0", - "decode-named-character-reference": "^1.0.0", - "is-alphanumerical": "^2.0.0", - "is-decimal": "^2.0.0", - "is-hexadecimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-entities/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==", - "license": "MIT" - }, - "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, - "license": "MIT" - }, - "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, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-expression-matcher": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.6.2.tgz", - "integrity": "sha512-enSlaiat05iasnzmgNxRj8reFdj3puY2QpNgP1aPIaVfT6nn9ICuPoFlKHk8EN22HcwewshO+mN2DGbkCEOtqQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "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, - "license": "MIT" - }, - "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==", - "license": "ISC" - }, - "node_modules/pathe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", - "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", - "license": "MIT" - }, - "node_modules/pbkdf2": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.6.tgz", - "integrity": "sha512-BT6eelPB1EyGHo8pC0o9Bl6k6SYVhKO1jEbd3lcTrtr7XHdjP8BW1YpfCV3G9Kwkxgattk+S5q2/RvuttCsS1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "ripemd160": "^2.0.3", - "safe-buffer": "^5.2.1", - "sha.js": "^2.4.12", - "to-buffer": "^1.2.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/perfect-debounce": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-2.1.0.tgz", - "integrity": "sha512-LjgdTytVFXeUgtHZr9WYViYSM/g8MkcTPYDlPa3cDqMirHjKiSZPYd6DoL7pK8AJQr+uWkQvCjHNdiMqsrJs+g==", - "license": "MIT" - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.5.tgz", - "integrity": "sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "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, - "license": "MIT", - "dependencies": { - "find-up": "^5.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/pkg-types": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.3.1.tgz", - "integrity": "sha512-y+ichcgc2LrADuhLNAx8DFjVfgz91pRxfZdI3UDhxHvcVEZsenLO+7XaU5vOp0u/7V/wZ+plyuQxtrDlZJ+yeg==", - "license": "MIT", - "dependencies": { - "confbox": "^0.2.4", - "exsolve": "^1.0.8", - "pathe": "^2.0.3" - } - }, - "node_modules/possible-typed-array-names": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", - "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/postcss": { - "version": "8.5.16", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.16.tgz", - "integrity": "sha512-vuwillviilfKZsg0VGj5R/YwwcHx4SLsIOI/7K6mQkWx+l5cUHTjj5g0AasTBcyXsbfTgrwsUNmVUb5xVwyPwg==", - "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" - } - ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.12", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/prepin": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/prepin/-/prepin-1.0.3.tgz", - "integrity": "sha512-0XL2hreherEEvUy0fiaGEfN/ioXFV+JpImqIzQjxk6iBg4jQ2ARKqvC4+BmRD8w/pnpD+lbxvh0Ub+z7yBEjvA==", - "license": "Unlicense", - "bin": { - "prepin": "bin/prepin.js" - } - }, - "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, - "license": "MIT", - "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, - "license": "MIT" - }, - "node_modules/property-information": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.2.0.tgz", - "integrity": "sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/proxy-from-env": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz", - "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "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, - "license": "MIT", - "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.5", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.5.tgz", - "integrity": "sha512-3aRg6/JxfffFD+OlOjOFR3Vo79l39ooBTFucxx+MT3dhCtzn3EmiUPQo+6/OZuI2jbXi3YKgmiTFBgChQMwIRQ==", - "dev": true, - "license": "MIT" - }, - "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, - "license": "MIT" - }, - "node_modules/qs": { - "version": "6.15.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz", - "integrity": "sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "es-define-property": "^1.0.1", - "side-channel": "^1.1.1" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/quansync": { - "version": "0.2.11", - "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.11.tgz", - "integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/antfu" - }, - { - "type": "individual", - "url": "https://github.com/sponsors/sxzz" - } - ], - "license": "MIT" - }, - "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==", - "license": "MIT" - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "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, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", - "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", - "license": "MIT", - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "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==", - "license": "MIT", - "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-highlight": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/rehype-highlight/-/rehype-highlight-7.0.2.tgz", - "integrity": "sha512-k158pK7wdC2qL3M5NcZROZ2tR/l7zOzjxXd5VGdcfIyoijjQqpHd3JKtYSBDpDZ38UI2WJWuFAtkMDxmx5kstA==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-to-text": "^4.0.0", - "lowlight": "^3.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-react": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/rehype-react/-/rehype-react-8.0.0.tgz", - "integrity": "sha512-vzo0YxYbB2HE+36+9HWXVdxNoNDubx63r5LBzpxBGVWM8s9mdnMdbmuJBAX6TTyuGdZjZix6qU3GcSuKCIWivw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-to-jsx-runtime": "^2.0.0", - "unified": "^11.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==", - "license": "MIT", - "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-parse": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", - "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", - "license": "MIT", - "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.2", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.2.tgz", - "integrity": "sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==", - "license": "MIT", - "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-unlink-protocols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/remark-unlink-protocols/-/remark-unlink-protocols-1.0.0.tgz", - "integrity": "sha512-5j/F28jhFmxeyz8nuJYYIWdR4nNpKWZ8A+tVwnK/0pq7Rjue33CINEYSckSq2PZvedhKUwbn08qyiuGoPLBung==", - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-squeeze-paragraphs": "^6.0.0", - "unist-util-visit": "^5.0.0" - } - }, - "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==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/resolve": { - "version": "1.22.12", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", - "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "is-core-module": "^2.16.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/ripemd160": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.3.tgz", - "integrity": "sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==", - "dev": true, - "license": "MIT", - "dependencies": { - "hash-base": "^3.1.2", - "inherits": "^2.0.4" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/ripemd160/node_modules/hash-base": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.2.tgz", - "integrity": "sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^2.3.8", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/ripemd160/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, - "license": "MIT" - }, - "node_modules/ripemd160/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, - "license": "MIT", - "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/ripemd160/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, - "license": "MIT" - }, - "node_modules/ripemd160/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, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/ripemd160/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, - "license": "MIT" - }, - "node_modules/rollup": { - "version": "4.62.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.62.2.tgz", - "integrity": "sha512-RFnrW4lhXA3s3eqHDZvN654g8OTjzRfqpIRJYczCGB6HzphckVAi/Qh4tbPUbRuDi7s1Llv8g/NspLkttY3gTA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.9" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.62.2", - "@rollup/rollup-android-arm64": "4.62.2", - "@rollup/rollup-darwin-arm64": "4.62.2", - "@rollup/rollup-darwin-x64": "4.62.2", - "@rollup/rollup-freebsd-arm64": "4.62.2", - "@rollup/rollup-freebsd-x64": "4.62.2", - "@rollup/rollup-linux-arm-gnueabihf": "4.62.2", - "@rollup/rollup-linux-arm-musleabihf": "4.62.2", - "@rollup/rollup-linux-arm64-gnu": "4.62.2", - "@rollup/rollup-linux-arm64-musl": "4.62.2", - "@rollup/rollup-linux-loong64-gnu": "4.62.2", - "@rollup/rollup-linux-loong64-musl": "4.62.2", - "@rollup/rollup-linux-ppc64-gnu": "4.62.2", - "@rollup/rollup-linux-ppc64-musl": "4.62.2", - "@rollup/rollup-linux-riscv64-gnu": "4.62.2", - "@rollup/rollup-linux-riscv64-musl": "4.62.2", - "@rollup/rollup-linux-s390x-gnu": "4.62.2", - "@rollup/rollup-linux-x64-gnu": "4.62.2", - "@rollup/rollup-linux-x64-musl": "4.62.2", - "@rollup/rollup-openbsd-x64": "4.62.2", - "@rollup/rollup-openharmony-arm64": "4.62.2", - "@rollup/rollup-win32-arm64-msvc": "4.62.2", - "@rollup/rollup-win32-ia32-msvc": "4.62.2", - "@rollup/rollup-win32-x64-gnu": "4.62.2", - "@rollup/rollup-win32-x64-msvc": "4.62.2", - "fsevents": "~2.3.2" - } - }, - "node_modules/rollup-plugin-corejs": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/rollup-plugin-corejs/-/rollup-plugin-corejs-1.0.2.tgz", - "integrity": "sha512-1IDoQa+EW2NraBc7xANejbQwx62jNikLnDBNrzguRhfVnatyjCcmiIJJ4ScG6PwMP6OIwS8osHMl43CcVJqvaQ==", - "dev": true, - "license": "EUPL-1.2", - "dependencies": { - "acorn": "^8.14.0", - "browserslist": "^4.26.3", - "core-js-compat": "^3.46.0", - "estree-toolkit": "^1.7.8", - "magic-string": "^0.30.19" - }, - "engines": { - "node": ">= 20.0.0" - }, - "peerDependencies": { - "rollup": "^3 || ^4" - } - }, - "node_modules/rollup-plugin-esbuild-minify": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-esbuild-minify/-/rollup-plugin-esbuild-minify-1.3.0.tgz", - "integrity": "sha512-y7BDyMMGYhq5901EijNABWgjEzC8myYhOXKmlnU8xIRvX7KQucSWABBR3IEyITuLJFyq/rXIlezDh9zvnR0k2w==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.25.3" - }, - "engines": { - "node": ">= 14.18" - }, - "peerDependencies": { - "rollup": "^2 || ^3 || ^4" - } - }, - "node_modules/rollup-plugin-license": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-license/-/rollup-plugin-license-3.7.1.tgz", - "integrity": "sha512-FcGXUbAmPvRSLxjVdjp/r/MUtKBlttVQd+ApUyvKfREnsoAfAZA6Ic2fE1Tz4RL0f9XqEQU9UIRNUMdtQtliDw==", - "dev": true, - "license": "MIT", - "dependencies": { - "commenting": "^1.1.0", - "fdir": "^6.4.3", - "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-node-externals": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-externals/-/rollup-plugin-node-externals-9.0.1.tgz", - "integrity": "sha512-Yp91CX1ebDA8s4+BY7bOOdhF8VRR1XAKnSsHeVhYg4DW4MRXPsF4F2FnSsN9ghJgFhHl3L1uyK7A9NA/SF4Zgw==", - "dev": true, - "funding": [ - { - "type": "patreon", - "url": "https://patreon.com/Septh" - }, - { - "type": "paypal", - "url": "https://paypal.me/septh07" - } - ], - "license": "MIT", - "engines": { - "node": ">= 24" - }, - "peerDependencies": { - "rollup": "^4.0.0", - "vite": ">=5.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - }, - "vite": { - "optional": true - } - } - }, - "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==", - "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" - } - ], - "license": "MIT" - }, - "node_modules/safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sass": { - "version": "1.101.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.101.0.tgz", - "integrity": "sha512-OL3GoQyoUdDt843DpVmDO6y2k1sc5IhUDSpu8XucEI+35neq5QivZ1iuegnpraEVTJXlQGK1gl27zKcTLEPbQw==", - "dev": true, - "license": "MIT", - "dependencies": { - "chokidar": "^5.0.0", - "immutable": "^5.1.5", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=20.19.0" - }, - "optionalDependencies": { - "@parcel/watcher": "^2.4.1" - } - }, - "node_modules/sax": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.6.0.tgz", - "integrity": "sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==", - "license": "BlueOak-1.0.0", - "engines": { - "node": ">=11.0.0" - } - }, - "node_modules/scule": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/scule/-/scule-1.3.0.tgz", - "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==", - "license": "MIT" - }, - "node_modules/semver": { - "version": "7.8.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", - "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "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, - "license": "MIT", - "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/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, - "license": "MIT" - }, - "node_modules/sha.js": { - "version": "2.4.12", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.12.tgz", - "integrity": "sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==", - "dev": true, - "license": "(MIT AND BSD-3-Clause)", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.0" - }, - "bin": { - "sha.js": "bin.js" - }, - "engines": { - "node": ">= 0.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz", - "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.4", - "side-channel-list": "^1.0.1", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-list": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", - "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "license": "BSD-3-Clause", - "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==", - "license": "MIT", - "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, - "license": "MIT", - "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, - "license": "MIT", - "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, - "license": "CC-BY-3.0" - }, - "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, - "license": "MIT", - "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, - "license": "(MIT AND CC-BY-3.0)", - "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, - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.23", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.23.tgz", - "integrity": "sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==", - "dev": true, - "license": "CC0-1.0" - }, - "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, - "license": "(MIT AND CC-BY-3.0)" - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/splitpanes": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/splitpanes/-/splitpanes-4.1.2.tgz", - "integrity": "sha512-frNchoCv7w0nMQEuaDGgMGMU6jv3NhN6bBGQVfCNgwJdVcYaRmi1dwYDjp7SifAoUFdiQjBRB254LJNidzo15Q==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/antoniandre" - }, - "peerDependencies": { - "vue": "^3.2.0" - } - }, - "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, - "license": "BSD-3-Clause" - }, - "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, - "license": "MIT", - "dependencies": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "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, - "license": "MIT", - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "engines": { - "node": ">=0.6.19" - } - }, - "node_modules/stringify-entities": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", - "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", - "license": "MIT", - "dependencies": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/striptags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/striptags/-/striptags-3.2.0.tgz", - "integrity": "sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw==", - "license": "MIT" - }, - "node_modules/strnum": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.4.1.tgz", - "integrity": "sha512-M9eUSMT2dCB2cTNPG7UYj6KuK7RJR2SN2+yCV/fTW3xzTCS6EaGZ5pSMgDIjB7r8zSfTGk+dvvn9rTjpVS9Mwg==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT", - "dependencies": { - "anynum": "^1.0.1" - } - }, - "node_modules/strtok3": { - "version": "10.3.5", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-10.3.5.tgz", - "integrity": "sha512-ki4hZQfh5rX0QDLLkOCj+h+CVNkqmp/CMf8v8kZpkNVK6jGQooMytqzLZYUVYIZcFZ6yDB70EfD8POcFXiF5oA==", - "license": "MIT", - "dependencies": { - "@tokenizer/token": "^0.3.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/style-to-js": { - "version": "1.1.21", - "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.21.tgz", - "integrity": "sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==", - "license": "MIT", - "dependencies": { - "style-to-object": "1.0.14" - } - }, - "node_modules/style-to-object": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.14.tgz", - "integrity": "sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==", - "license": "MIT", - "dependencies": { - "inline-style-parser": "0.2.7" - } - }, - "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, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/tabbable": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.5.0.tgz", - "integrity": "sha512-wieBHXygIm7OyQOu5hQlkk62/WyCFYGlWg7L6/ZCUZwx0o398Zkn4pVmMyfYhfMG8kGrj/Krt8eIk6UKC6VzwA==", - "license": "MIT" - }, - "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, - "license": "MIT", - "dependencies": { - "setimmediate": "^1.0.4" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/tinyglobby": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", - "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", - "license": "MIT", - "dependencies": { - "fdir": "^6.5.0", - "picomatch": "^4.0.4" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/SuperchupuDev" - } - }, - "node_modules/to-buffer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.2.tgz", - "integrity": "sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==", - "dev": true, - "license": "MIT", - "dependencies": { - "isarray": "^2.0.5", - "safe-buffer": "^5.2.1", - "typed-array-buffer": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/toastify-js": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/toastify-js/-/toastify-js-1.12.0.tgz", - "integrity": "sha512-HeMHCO9yLPvP9k0apGSdPUWrUbLnxUKNFzgUoZp1PHCLploIX/4DSQ7V8H25ef+h4iO9n0he7ImfcndnN6nDrQ==", - "license": "MIT" - }, - "node_modules/tributejs": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/tributejs/-/tributejs-5.1.3.tgz", - "integrity": "sha512-B5CXihaVzXw+1UHhNFyAwUTMDk1EfoLP5Tj1VhD9yybZ1I8DZJEv8tZ1l0RJo0t0tk9ZhR8eG5tEsaCvRigmdQ==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/ts-md5": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ts-md5/-/ts-md5-2.0.1.tgz", - "integrity": "sha512-yF35FCoEOFBzOclSkMNEUbFQZuv89KEQ+5Xz03HrMSGUGB1+r+El+JiGOFwsP4p9RFNzwlrydYoTLvPOuICl9w==", - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "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, - "license": "MIT" - }, - "node_modules/typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/typescript-event-target": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/typescript-event-target/-/typescript-event-target-1.1.2.tgz", - "integrity": "sha512-TvkrTUpv7gCPlcnSoEwUVUBwsdheKm+HF5u2tPAKubkIGMfovdSizCTaZRY/NhR8+Ijy8iZZUapbVQAsNrkFrw==", - "license": "MIT" - }, - "node_modules/ufo": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.4.tgz", - "integrity": "sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==", - "license": "MIT" - }, - "node_modules/unified": { - "version": "11.0.5", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", - "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-find-after": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", - "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-is": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.1.tgz", - "integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==", - "license": "MIT", - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz", - "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", - "license": "MIT", - "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.2", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz", - "integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/unplugin": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-3.3.0.tgz", - "integrity": "sha512-qa66K+crbfyE6JK10GjvbJeRrOsuC/JpbnHctfyp/i4oBTxWOzJfRZyDiOk1PtErMFRu8JhsU/wPvOdBNWe5Rg==", - "license": "MIT", - "dependencies": { - "@jridgewell/remapping": "^2.3.5", - "picomatch": "^4.0.4", - "webpack-virtual-modules": "^0.6.2" - }, - "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "peerDependencies": { - "@farmfe/core": "*", - "@rspack/core": "*", - "bun-types-no-globals": "*", - "esbuild": "*", - "rolldown": "*", - "rollup": "*", - "unloader": "*", - "vite": "*", - "webpack": "*" - }, - "peerDependenciesMeta": { - "@farmfe/core": { - "optional": true - }, - "@rspack/core": { - "optional": true - }, - "bun-types-no-globals": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "rolldown": { - "optional": true - }, - "rollup": { - "optional": true - }, - "unloader": { - "optional": true - }, - "vite": { - "optional": true - }, - "webpack": { - "optional": true - } - } - }, - "node_modules/unplugin-utils": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/unplugin-utils/-/unplugin-utils-0.3.2.tgz", - "integrity": "sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==", - "license": "MIT", - "dependencies": { - "pathe": "^2.0.3", - "picomatch": "^4.0.4" - }, - "engines": { - "node": ">=20.19.0" - }, - "funding": { - "url": "https://github.com/sponsors/sxzz" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", - "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" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.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, - "license": "MIT", - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "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, - "license": "MIT", - "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, - "license": "MIT" - }, - "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==", - "license": "MIT", - "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.3", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.3.tgz", - "integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==", - "license": "MIT", - "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": "7.3.6", - "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.6.tgz", - "integrity": "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.27.0 || ^0.28.0", - "fdir": "^6.5.0", - "picomatch": "^4.0.3", - "postcss": "^8.5.6", - "rollup": "^4.43.0", - "tinyglobby": "^0.2.15" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^20.19.0 || >=22.12.0", - "jiti": ">=1.21.0", - "less": "^4.0.0", - "lightningcss": "^1.21.0", - "sass": "^1.70.0", - "sass-embedded": "^1.70.0", - "stylus": ">=0.54.8", - "sugarss": "^5.0.0", - "terser": "^5.16.0", - "tsx": "^4.8.1", - "yaml": "^2.4.2" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "jiti": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - }, - "tsx": { - "optional": true - }, - "yaml": { - "optional": true - } - } - }, - "node_modules/vite-plugin-css-injected-by-js": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/vite-plugin-css-injected-by-js/-/vite-plugin-css-injected-by-js-4.0.1.tgz", - "integrity": "sha512-WfyRojojQyAO/KzWf+efcXpTPv6zJPXaRmr9EYq5a4v5I3PWCR7kR01hiri2lW6+rHm3a57kpwsf+iahIJi1Qw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "vite": ">2.0.0-0" - } - }, - "node_modules/vite-plugin-dts": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.5.4.tgz", - "integrity": "sha512-d4sOM8M/8z7vRXHHq/ebbblfaxENjogAAekcfcDCCwAyvGqnPrc7f4NZbvItS+g4WTgerW0xDwSz5qz11JT3vg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/api-extractor": "^7.50.1", - "@rollup/pluginutils": "^5.1.4", - "@volar/typescript": "^2.4.11", - "@vue/language-core": "2.2.0", - "compare-versions": "^6.1.1", - "debug": "^4.4.0", - "kolorist": "^1.8.0", - "local-pkg": "^1.0.0", - "magic-string": "^0.30.17" - }, - "peerDependencies": { - "typescript": "*", - "vite": "*" - }, - "peerDependenciesMeta": { - "vite": { - "optional": true - } - } - }, - "node_modules/vite-plugin-node-polyfills": { - "version": "0.28.0", - "resolved": "https://registry.npmjs.org/vite-plugin-node-polyfills/-/vite-plugin-node-polyfills-0.28.0.tgz", - "integrity": "sha512-NXct/ci2ef4fRyCfTb8fk2HmR80Rv7icLd+cRH41TnUugDzdKMFKqFPpZYCFUInZMMem9bkLv5pkq02+7Xu7+w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rollup/plugin-inject": "^5.0.5", - "node-stdlib-browser": "^1.3.1" - }, - "funding": { - "url": "https://github.com/sponsors/davidmyersdev" - }, - "peerDependencies": { - "vite": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/vite/node_modules/@esbuild/aix-ppc64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz", - "integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/android-arm": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz", - "integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/android-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz", - "integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/android-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz", - "integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/darwin-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz", - "integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/darwin-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz", - "integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz", - "integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/freebsd-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz", - "integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-arm": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz", - "integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz", - "integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-ia32": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz", - "integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-loong64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz", - "integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-mips64el": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz", - "integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-ppc64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz", - "integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-riscv64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz", - "integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-s390x": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz", - "integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.1.tgz", - "integrity": "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/netbsd-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz", - "integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/netbsd-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz", - "integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/openbsd-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz", - "integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/openbsd-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz", - "integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/openharmony-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz", - "integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/sunos-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz", - "integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/win32-arm64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz", - "integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/win32-ia32": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz", - "integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/@esbuild/win32-x64": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz", - "integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vite/node_modules/esbuild": { - "version": "0.28.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.1.tgz", - "integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.28.1", - "@esbuild/android-arm": "0.28.1", - "@esbuild/android-arm64": "0.28.1", - "@esbuild/android-x64": "0.28.1", - "@esbuild/darwin-arm64": "0.28.1", - "@esbuild/darwin-x64": "0.28.1", - "@esbuild/freebsd-arm64": "0.28.1", - "@esbuild/freebsd-x64": "0.28.1", - "@esbuild/linux-arm": "0.28.1", - "@esbuild/linux-arm64": "0.28.1", - "@esbuild/linux-ia32": "0.28.1", - "@esbuild/linux-loong64": "0.28.1", - "@esbuild/linux-mips64el": "0.28.1", - "@esbuild/linux-ppc64": "0.28.1", - "@esbuild/linux-riscv64": "0.28.1", - "@esbuild/linux-s390x": "0.28.1", - "@esbuild/linux-x64": "0.28.1", - "@esbuild/netbsd-arm64": "0.28.1", - "@esbuild/netbsd-x64": "0.28.1", - "@esbuild/openbsd-arm64": "0.28.1", - "@esbuild/openbsd-x64": "0.28.1", - "@esbuild/openharmony-arm64": "0.28.1", - "@esbuild/sunos-x64": "0.28.1", - "@esbuild/win32-arm64": "0.28.1", - "@esbuild/win32-ia32": "0.28.1", - "@esbuild/win32-x64": "0.28.1" - } - }, - "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, - "license": "MIT" - }, - "node_modules/vscode-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", - "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/vue": { - "version": "3.5.39", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.39.tgz", - "integrity": "sha512-xmZCYabFGcirU8r0fTuvl/LICc1OU620rnqepaJDL/a141ZigkG7AyaxQLdqJ02ZRYzWe6YPaDHeQx7MfknQfA==", - "license": "MIT", - "dependencies": { - "@vue/compiler-dom": "3.5.39", - "@vue/compiler-sfc": "3.5.39", - "@vue/runtime-dom": "3.5.39", - "@vue/server-renderer": "3.5.39", - "@vue/shared": "3.5.39" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "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, - "license": "MIT", - "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/vue-frag": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/vue-frag/-/vue-frag-1.4.3.tgz", - "integrity": "sha512-pQZj03f/j9LRhzz9vKaXTCXUHVYHuAXicshFv76VFqwz4MG3bcb+sPZMAbd0wmw7THjkrTPuoM0EG9TbG8CgMQ==", - "license": "MIT", - "funding": { - "url": "https://github.com/privatenumber/vue-frag?sponsor=1" - }, - "peerDependencies": { - "vue": "^2.6.0" - } - }, - "node_modules/vue-material-design-icons": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.3.1.tgz", - "integrity": "sha512-6UNEyhlTzlCeT8ZeX5WbpUGFTTPSbOoTQeoASTv7X4Ylh0pe8vltj+36VMK56KM0gG8EQVoMK/Qw/6evalg8lA==", - "license": "MIT" - }, - "node_modules/vue-resize": { - "version": "2.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-2.0.0-alpha.1.tgz", - "integrity": "sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg==", - "license": "MIT", - "peerDependencies": { - "vue": "^3.0.0" - } - }, - "node_modules/vue-router": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.6.4.tgz", - "integrity": "sha512-Hz9q5sa33Yhduglwz6g9skT8OBPii+4bFn88w6J+J4MfEo4KRRpmiNG/hHHkdbRFlLBOqxN8y8gf2Fb0MTUgVg==", - "license": "MIT", - "dependencies": { - "@vue/devtools-api": "^6.6.4" - }, - "funding": { - "url": "https://github.com/sponsors/posva" - }, - "peerDependencies": { - "vue": "^3.5.0" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/webdav": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/webdav/-/webdav-5.10.0.tgz", - "integrity": "sha512-fVPuRLtcduVGvSO7Tn/6TQCzIvI/g6BO/+xPRctCvi/GytYpjn4czxWbh4HsArsdom9qz9BI63k9/v2HBUui1A==", - "license": "MIT", - "dependencies": { - "@buttercup/fetch": "^0.2.1", - "base-64": "^1.0.0", - "byte-length": "^1.0.2", - "entities": "^6.0.1", - "fast-xml-parser": "^5.7.2", - "hot-patcher": "^2.0.1", - "layerr": "^3.0.0", - "md5": "^2.3.0", - "minimatch": "^9.0.9", - "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": ">=14" - } - }, - "node_modules/webdav/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==", - "license": "MIT" - }, - "node_modules/webdav/node_modules/brace-expansion": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.2.tgz", - "integrity": "sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/webdav/node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/webdav/node_modules/minimatch": { - "version": "9.0.9", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", - "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.2" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/webpack-virtual-modules": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", - "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", - "license": "MIT" - }, - "node_modules/which-typed-array": { - "version": "1.1.22", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.22.tgz", - "integrity": "sha512-fvO4ExWMFsqyhG3AiPAObMuY1lxaqgYcxbc49CNdWDDECOJNgQyvsOWVwbZc+qf3rzRtxojBK+CMEv0Ld5CYpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.9", - "call-bound": "^1.0.4", - "for-each": "^0.3.5", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/xml-naming": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/xml-naming/-/xml-naming-0.1.0.tgz", - "integrity": "sha512-k8KO9hrMyNk6tUWqUfkTEZbezRRpONVOzUTnc97VnCvyj6Tf9lyUR9EDAIeiVLv56jsMcoXEwjW8Kv5yPY52lw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], - "license": "MIT", - "engines": { - "node": ">=16.0.0" - } - }, - "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, - "license": "MIT", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/yaml": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz", - "integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==", - "license": "ISC", - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - }, - "funding": { - "url": "https://github.com/sponsors/eemeli" - } - }, - "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, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - } - } + "name": "absence", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "absence", + "version": "1.0.0", + "license": "AGPL-3.0-or-later", + "dependencies": { + "@mdi/svg": "^7.4.47", + "@nextcloud/axios": "^2.6.0", + "@nextcloud/dialogs": "^7.4.1", + "@nextcloud/initial-state": "^3.0.0", + "@nextcloud/l10n": "^3.4.1", + "@nextcloud/router": "^3.1.0", + "@nextcloud/vue": "^9.9.0", + "date-holidays": "^3.33.0", + "vue": "^3.5.40", + "vue-material-design-icons": "^5.3.1", + "vue-router": "^5.2.0" + }, + "devDependencies": { + "@nextcloud/browserslist-config": "^3.1.2", + "@nextcloud/eslint-config": "^9.0.1", + "@nextcloud/stylelint-config": "^3.2.2", + "@nextcloud/vite-config": "^2.5.2", + "sass": "^1.80.0", + "vite": "^7.3.2" + }, + "engines": { + "node": "^24.0.0", + "npm": "^11.3.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/code-frame/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, + "license": "MIT", + "peer": true + }, + "node_modules/@babel/generator": { + "version": "8.0.0", + "license": "MIT", + "dependencies": { + "@babel/parser": "^8.0.0", + "@babel/types": "^8.0.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "@types/jsesc": "^2.5.0", + "jsesc": "^3.0.2" + }, + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/helper-string-parser": { + "version": "8.0.0", + "license": "MIT", + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/helper-validator-identifier": { + "version": "8.0.4", + "license": "MIT", + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/parser": { + "version": "8.0.4", + "license": "MIT", + "dependencies": { + "@babel/types": "^8.0.4" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/types": { + "version": "8.0.4", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^8.0.0", + "@babel/helper-validator-identifier": "^8.0.4" + }, + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.7", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.7", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@buttercup/fetch": { + "version": "0.2.1", + "license": "MIT", + "optionalDependencies": { + "node-fetch": "^3.3.0" + } + }, + "node_modules/@cacheable/memory": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.2.0.tgz", + "integrity": "sha512-CTLKqLItRCEixEAewD3/j9DB3/o96gpTPD4eJ1v+DGOlxZRZncRQkGYqqnAGCscYd6RNeXfGeiuCphsPtqyIfQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@cacheable/utils": "^2.5.0", + "@keyv/bigmap": "^1.3.1", + "hookified": "^1.15.1", + "keyv": "^5.6.0" + } + }, + "node_modules/@cacheable/memory/node_modules/@keyv/bigmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz", + "integrity": "sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "hashery": "^1.4.0", + "hookified": "^1.15.0" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "keyv": "^5.6.0" + } + }, + "node_modules/@cacheable/memory/node_modules/keyv": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz", + "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@keyv/serialize": "^1.1.1" + } + }, + "node_modules/@cacheable/utils": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.5.0.tgz", + "integrity": "sha512-buipgOVDkkPXNR5+xBpDw7Zk2n1EvU7qBJCNUcL7rhQ//kfpOXPAvQ511Os0vpLYJ1pZnvudNytkQt2hst3wqA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "hashery": "^1.5.1", + "keyv": "^5.6.0" + } + }, + "node_modules/@cacheable/utils/node_modules/keyv": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz", + "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@keyv/serialize": "^1.1.1" + } + }, + "node_modules/@ckpack/vue-color": { + "version": "1.6.0", + "license": "MIT", + "dependencies": { + "@ctrl/tinycolor": "^3.6.0", + "material-colors": "^1.2.6" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@csstools/css-calc": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-3.3.0.tgz", + "integrity": "sha512-c5ihYsPkdG6JCkU2zTMm4+k6r7RXuGxtWYhu5DHMIiF1FHzrfmHL5so11AoFpUv/tu61xfcmT4AmKoFfMPoqdQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^4.0.0", + "@csstools/css-tokenizer": "^4.0.0" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-4.0.0.tgz", + "integrity": "sha512-+B87qS7fIG3L5h3qwJ/IFbjoVoOe/bpOdh9hAjXbvx0o8ImEmUsGXN0inFOnk2ChCFgqkkGFQ+TpM5rbhkKe4w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^4.0.0" + } + }, + "node_modules/@csstools/css-syntax-patches-for-csstree": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.1.7.tgz", + "integrity": "sha512-fQ+05118eQS1cofO3aJpB5efgpBZMvIzwr/sbC8kDLVA5XLG8q1kJV5yzrUAI1f7lvhPnm8fgIjzFB8/O/5Dig==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "peer": true, + "peerDependencies": { + "css-tree": "^3.2.1" + }, + "peerDependenciesMeta": { + "css-tree": { + "optional": true + } + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-4.0.0.tgz", + "integrity": "sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20.19.0" + } + }, + "node_modules/@csstools/media-query-list-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-5.0.0.tgz", + "integrity": "sha512-T9lXmZOfnam3eMERPsszjY5NK0jX8RmThmmm99FZ8b7z8yMaFZWKwLWGZuTwdO3ddRY5fy13GmmEYZXB4I98Eg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^4.0.0", + "@csstools/css-tokenizer": "^4.0.0" + } + }, + "node_modules/@csstools/selector-resolve-nested": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-4.0.1.tgz", + "integrity": "sha512-j3vdQu0XwLME5qOTWxm8cnmvsf423R2YL6DbKklCHZwkDm7UdKNu6RPlw4REIJhSlKBICY3B70/7QZdicLqZgg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "peer": true, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.1.1" + } + }, + "node_modules/@csstools/selector-specificity": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-6.0.0.tgz", + "integrity": "sha512-4sSgl78OtOXEX/2d++8A83zHNTgwCJMaR24FvsYL7Uf/VS8HZk9PTwR51elTbGqMuwH3szLvvOXEaVnqn0Z3zA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "peer": true, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.1.1" + } + }, + "node_modules/@ctrl/tinycolor": { + "version": "3.6.1", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.90.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.90.0.tgz", + "integrity": "sha512-51x9KxyTAN6guZOCd+lmcDdkhgdMdP/6iMMtg9dyhCWDc3+iSUyoB7f/9WAM/yGHmGFq25Vd6bXRR7CZcB+tog==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.9", + "@typescript-eslint/types": "^8.65.0", + "comment-parser": "1.4.7", + "esquery": "^1.7.0", + "jsdoc-type-pratt-parser": "~7.3.0" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@es-joy/resolve.exports": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@es-joy/resolve.exports/-/resolve.exports-1.2.0.tgz", + "integrity": "sha512-Q9hjxWI5xBM+qW2enxfe8wDKdFWMfd0Z29k5ZJnuBqD/CasY5Zryj09aCA6owbGATWz+39p5uIdaHXpopOcG8g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.12", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz", + "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "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, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/compat": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-2.1.0.tgz", + "integrity": "sha512-LgaSCymEpw7tF53xvDw9SNsraPb1IBHxpdABIOM0hW8UAlP8znrjYtuxfR58FSJ3L9BhwD+FaPRFQpZq84Nh6g==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^1.2.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "peerDependencies": { + "eslint": "^8.40 || 9 || 10" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/@eslint/config-array": { + "version": "0.23.5", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.23.5.tgz", + "integrity": "sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@eslint/object-schema": "^3.0.5", + "debug": "^4.3.1", + "minimatch": "^10.2.4" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/config-array/node_modules/minimatch": { + "version": "10.2.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", + "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", + "dev": true, + "license": "BlueOak-1.0.0", + "peer": true, + "dependencies": { + "brace-expansion": "^5.0.5" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.6.0.tgz", + "integrity": "sha512-ii6Bw9jJ2zi2cWA2Z+9/QZ/+3DX6kwaV5Q986D/CdP3Lap3w/pgQZ373FV7byY/i7L4IRH/G43I5dz1ClsCbpA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@eslint/core": "^1.2.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/core": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-1.2.1.tgz", + "integrity": "sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/js": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-10.0.1.tgz", + "integrity": "sha512-zeR9k5pd4gxjZ0abRoIaxdc7I3nDktoXZk2qOv9gCNWx3mVwEn32VRhyLaRsDiJjTs0xq/T8mfPtyuXu7GWBcA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "eslint": "^10.0.0" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/@eslint/json": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@eslint/json/-/json-2.0.1.tgz", + "integrity": "sha512-Thz2j92ceUF3Bq/0TuWb3MWn3Z+Cwc8k5ptF0fakl2D4Mp8mSx07Xr1aQM4R5NoihzarWUdxfOmQ8DesGy4jOg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^1.2.1", + "@eslint/plugin-kit": "^0.7.2", + "@humanwhocodes/momoa": "^3.3.10", + "natural-compare": "^1.4.0" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/object-schema": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-3.0.5.tgz", + "integrity": "sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.7.2.tgz", + "integrity": "sha512-+CNAzxglkrpNf/kKywqQfk74QjtceuOE7Qm+AF8miRvPF/wmmK5+OJOgVh3AVTT3RP2mH3+FOaxlE5v72owk0A==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^1.2.1", + "levn": "^0.4.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@file-type/xml": { + "version": "0.4.4", + "license": "MIT", + "dependencies": { + "sax": "^1.4.1", + "strtok3": "^10.3.4" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.8.0", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.12" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.8.0", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.8.0", + "@floating-ui/utils": "^0.2.12" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.12", + "license": "MIT" + }, + "node_modules/@humanfs/core": { + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz", + "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@humanfs/types": "^0.15.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz", + "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@humanfs/core": "^0.19.2", + "@humanfs/types": "^0.15.0", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/types": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz", + "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=18.18.0" + } + }, + "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, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/momoa": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/@humanwhocodes/momoa/-/momoa-3.3.10.tgz", + "integrity": "sha512-KWiFQpSAqEIyrTXko3hFNLeQvSK8zXlJQzhhxsyVn58WFRYXST99b3Nqnu+ttOtjds2Pl2grUHGpe2NzhPynuQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@keyv/serialize": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@keyv/serialize/-/serialize-1.1.1.tgz", + "integrity": "sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@mdi/js": { + "version": "7.4.47", + "license": "Apache-2.0" + }, + "node_modules/@mdi/svg": { + "version": "7.4.47", + "license": "Apache-2.0" + }, + "node_modules/@microsoft/api-extractor": { + "version": "7.58.9", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/api-extractor-model": "7.33.8", + "@microsoft/tsdoc": "~0.16.0", + "@microsoft/tsdoc-config": "~0.18.1", + "@rushstack/node-core-library": "5.23.1", + "@rushstack/rig-package": "0.7.3", + "@rushstack/terminal": "0.24.0", + "@rushstack/ts-command-line": "5.3.10", + "diff": "~8.0.2", + "minimatch": "10.2.3", + "resolve": "~1.22.1", + "semver": "~7.7.4", + "source-map": "~0.6.1", + "typescript": "5.9.3" + }, + "bin": { + "api-extractor": "bin/api-extractor" + } + }, + "node_modules/@microsoft/api-extractor-model": { + "version": "7.33.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/tsdoc": "~0.16.0", + "@microsoft/tsdoc-config": "~0.18.1", + "@rushstack/node-core-library": "5.23.1" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/semver": { + "version": "7.7.4", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@microsoft/tsdoc": { + "version": "0.16.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@microsoft/tsdoc-config": { + "version": "0.18.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/tsdoc": "0.16.0", + "ajv": "~8.18.0", + "jju": "~1.4.0", + "resolve": "~1.22.2" + } + }, + "node_modules/@nextcloud/auth": { + "version": "2.6.0", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/browser-storage": "^0.5.0", + "@nextcloud/event-bus": "^3.3.3", + "@nextcloud/router": "^3.1.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/axios": { + "version": "2.6.0", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/auth": "^2.6.0", + "axios": "^1.15.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/browser-storage": { + "version": "0.5.0", + "license": "GPL-3.0-or-later", + "engines": { + "node": "^24 || ^22 || ^20" + } + }, + "node_modules/@nextcloud/browserslist-config": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-3.1.2.tgz", + "integrity": "sha512-2iXl1rqQOHvggFIl/V3J5OpbodVazOsO38Gz/2sUAmtWXuOpGZG+7i6zQcVqGVaT1VzyPJ1gPiMpyyZi/XRWNA==", + "dev": true, + "license": "GPL-3.0-or-later", + "engines": { + "node": "^20 || ^22 || ^24", + "npm": ">=10.5.0" + }, + "peerDependencies": { + "browserslist": "^4.26.3" + } + }, + "node_modules/@nextcloud/capabilities": { + "version": "1.2.1", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/initial-state": "^3.0.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/dialogs": { + "version": "7.4.1", + "license": "AGPL-3.0-or-later", + "dependencies": { + "@mdi/js": "^7.4.47", + "@nextcloud/auth": "^2.6.0", + "@nextcloud/axios": "^2.6.0", + "@nextcloud/browser-storage": "^0.5.0", + "@nextcloud/event-bus": "^3.3.3", + "@nextcloud/files": "^4.0.0", + "@nextcloud/initial-state": "^3.0.0", + "@nextcloud/l10n": "^3.4.1", + "@nextcloud/paths": "^3.1.0", + "@nextcloud/router": "^3.1.0", + "@nextcloud/sharing": "^0.4.0", + "@nextcloud/vue": "^9.8.2", + "@types/toastify-js": "^1.12.4", + "@vueuse/core": "^14.3.0", + "p-queue": "^9.3.1", + "toastify-js": "^1.12.0", + "vue": "^3.5.39", + "webdav": "^5.10.0" + }, + "engines": { + "node": "^20 || ^22 || ^24" + } + }, + "node_modules/@nextcloud/dialogs/node_modules/@nextcloud/sharing": { + "version": "0.4.0", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/initial-state": "^3.0.0", + "is-svg": "^6.1.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + }, + "optionalDependencies": { + "@nextcloud/files": "^3.12.2 || ^4.0.0" + } + }, + "node_modules/@nextcloud/eslint-config": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-9.0.1.tgz", + "integrity": "sha512-TzJrZdrIJgnoW9V0U31sLuhot/i1kWB3A9VMFUiuMXEKYQUTwgL4LTA5DbJ6Dnlsx+6XuR3Bi6d4RWfaeLzlJw==", + "dev": true, + "license": "AGPL-3.0-or-later", + "dependencies": { + "@eslint/js": "^10.0.1", + "@eslint/json": "^2.0.0", + "@stylistic/eslint-plugin": "^5.10.0", + "eslint-config-flat-gitignore": "^2.3.0", + "eslint-plugin-antfu": "^3.2.3", + "eslint-plugin-jsdoc": "^63.0.10", + "eslint-plugin-perfectionist": "^5.9.1", + "eslint-plugin-vue": "^10.9.2", + "fast-xml-parser": "^5.9.3", + "globals": "^17.7.0", + "semver": "^7.8.5", + "sort-package-json": "^4.0.0", + "typescript-eslint": "^8.62.1" + }, + "engines": { + "node": "^22.14 || ^24 || >=26" + }, + "peerDependencies": { + "eslint": ">=10" + } + }, + "node_modules/@nextcloud/event-bus": { + "version": "3.3.3", + "license": "GPL-3.0-or-later", + "dependencies": { + "@types/semver": "^7.7.0", + "semver": "^7.7.2" + }, + "engines": { + "node": "^20 || ^22 || ^24" + } + }, + "node_modules/@nextcloud/files": { + "version": "4.0.0", + "license": "AGPL-3.0-or-later", + "dependencies": { + "@nextcloud/auth": "^2.5.3", + "@nextcloud/capabilities": "^1.2.1", + "@nextcloud/l10n": "^3.4.1", + "@nextcloud/logger": "^3.0.3", + "@nextcloud/paths": "^3.0.0", + "@nextcloud/router": "^3.1.0", + "@nextcloud/sharing": "^0.3.0", + "is-svg": "^6.1.0", + "typescript-event-target": "^1.1.2", + "webdav": "^5.9.0" + }, + "engines": { + "node": "^24.0.0" + } + }, + "node_modules/@nextcloud/initial-state": { + "version": "3.0.0", + "license": "GPL-3.0-or-later", + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/l10n": { + "version": "3.4.1", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/router": "^3.0.1", + "@nextcloud/typings": "^1.9.1", + "@types/escape-html": "^1.0.4", + "dompurify": "^3.2.6", + "escape-html": "^1.0.3" + }, + "engines": { + "node": "^20 || ^22 || ^24" + } + }, + "node_modules/@nextcloud/logger": { + "version": "3.0.3", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/auth": "^2.5.3" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/paths": { + "version": "3.1.0", + "license": "GPL-3.0-or-later", + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/router": { + "version": "3.1.0", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/typings": "^1.10.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/sharing": { + "version": "0.3.0", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/initial-state": "^3.0.0", + "is-svg": "^6.1.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + }, + "optionalDependencies": { + "@nextcloud/files": "^3.12.0" + } + }, + "node_modules/@nextcloud/sharing/node_modules/@nextcloud/files": { + "version": "3.12.2", + "license": "AGPL-3.0-or-later", + "optional": true, + "dependencies": { + "@nextcloud/auth": "^2.5.3", + "@nextcloud/capabilities": "^1.2.1", + "@nextcloud/l10n": "^3.4.1", + "@nextcloud/logger": "^3.0.3", + "@nextcloud/paths": "^3.0.0", + "@nextcloud/router": "^3.1.0", + "@nextcloud/sharing": "^0.3.0", + "cancelable-promise": "^4.3.1", + "is-svg": "^6.1.0", + "typescript-event-target": "^1.1.1", + "webdav": "^5.8.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/stylelint-config": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@nextcloud/stylelint-config/-/stylelint-config-3.2.2.tgz", + "integrity": "sha512-5rr77fGK+zoa8yN+8zR43XbqyuN/yB2wSAy4vKE2F+hgAeOhpUAyChV+pfySDbP20t4s22DHgn7BDiZKsbNE3Q==", + "dev": true, + "license": "AGPL-3.0-or-later", + "dependencies": { + "stylelint-use-logical": "^2.1.3" + }, + "engines": { + "node": "^20.19 || ^22 || ^24" + }, + "peerDependencies": { + "stylelint": "^17.9.1", + "stylelint-config-recommended-scss": "^17.0.1", + "stylelint-config-recommended-vue": "^1.6.1" + } + }, + "node_modules/@nextcloud/typings": { + "version": "1.10.0", + "license": "GPL-3.0-or-later", + "dependencies": { + "@types/jquery": "3.5.16" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + } + }, + "node_modules/@nextcloud/vite-config": { + "version": "2.5.4", + "dev": true, + "license": "AGPL-3.0-or-later", + "dependencies": { + "@rollup/plugin-replace": "^6.0.3", + "@vitejs/plugin-vue": "^6.0.7", + "browserslist-to-esbuild": "^2.1.1", + "magic-string": "^0.30.21", + "rollup-plugin-corejs": "^1.0.2", + "rollup-plugin-esbuild-minify": "^1.3.0", + "rollup-plugin-license": "^3.7.1", + "rollup-plugin-node-externals": "^9.0.1", + "spdx-expression-parse": "^4.0.0", + "vite-plugin-css-injected-by-js": "^4.0.1", + "vite-plugin-dts": "^4.5.4", + "vite-plugin-node-polyfills": "^0.28.0" + }, + "engines": { + "node": "^20 || ^22 || ^24" + }, + "peerDependencies": { + "browserslist": ">=4.0", + "sass": ">=1.60", + "vite": "^7.3.6" + } + }, + "node_modules/@nextcloud/vue": { + "version": "9.9.0", + "license": "AGPL-3.0-or-later", + "dependencies": { + "@ckpack/vue-color": "^1.6.0", + "@floating-ui/dom": "^1.8.0", + "@nextcloud/auth": "^2.6.0", + "@nextcloud/axios": "^2.6.0", + "@nextcloud/browser-storage": "^0.5.0", + "@nextcloud/capabilities": "^1.2.1", + "@nextcloud/event-bus": "^3.3.3", + "@nextcloud/initial-state": "^3.0.0", + "@nextcloud/l10n": "^3.4.1", + "@nextcloud/logger": "^3.0.3", + "@nextcloud/router": "^3.1.0", + "@nextcloud/sharing": "^0.4.0", + "@nextcloud/vue-select": "^4.1.0", + "@vuepic/vue-datepicker": "^11.0.3", + "@vueuse/components": "^14.3.0", + "@vueuse/core": "^14.3.0", + "blurhash": "^2.0.5", + "clone": "^2.1.2", + "debounce": "^3.0.0", + "dompurify": "^3.4.12", + "emoji-mart-vue-fast": "^15.0.5", + "escape-html": "^1.0.3", + "floating-vue": "^5.2.2", + "focus-trap": "^8.2.2", + "linkifyjs": "^4.3.3", + "mdast-util-to-string": "^4.0.0", + "p-queue": "^9.3.1", + "rehype-external-links": "^3.0.0", + "rehype-highlight": "^7.0.2", + "rehype-react": "^8.0.0", + "remark-breaks": "^4.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.1.2", + "remark-unlink-protocols": "^1.0.0", + "splitpanes": "^4.0.4", + "striptags": "^3.2.0", + "tabbable": "^6.4.0", + "tributejs": "^5.1.3", + "ts-md5": "^2.0.1", + "unified": "^11.0.5", + "unist-builder": "^4.0.0", + "unist-util-visit-parents": "^6.0.2", + "vue": "^3.5.18", + "vue-router": "^5.1.0" + }, + "engines": { + "node": "^20.11.0 || ^22 || ^24" + } + }, + "node_modules/@nextcloud/vue-select": { + "version": "4.1.0", + "license": "MIT", + "engines": { + "node": "^22 || ^24" + }, + "peerDependencies": { + "vue": "^3" + } + }, + "node_modules/@nextcloud/vue/node_modules/@nextcloud/sharing": { + "version": "0.4.0", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/initial-state": "^3.0.0", + "is-svg": "^6.1.0" + }, + "engines": { + "node": "^20.0.0 || ^22.0.0 || ^24.0.0" + }, + "optionalDependencies": { + "@nextcloud/files": "^3.12.2 || ^4.0.0" + } + }, + "node_modules/@nodable/entities": { + "version": "3.0.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/nodable" + } + ], + "license": "MIT" + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "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, + "license": "MIT", + "peer": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.5.6", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "node-addon-api": "^7.0.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.6", + "@parcel/watcher-darwin-arm64": "2.5.6", + "@parcel/watcher-darwin-x64": "2.5.6", + "@parcel/watcher-freebsd-x64": "2.5.6", + "@parcel/watcher-linux-arm-glibc": "2.5.6", + "@parcel/watcher-linux-arm-musl": "2.5.6", + "@parcel/watcher-linux-arm64-glibc": "2.5.6", + "@parcel/watcher-linux-arm64-musl": "2.5.6", + "@parcel/watcher-linux-x64-glibc": "2.5.6", + "@parcel/watcher-linux-x64-musl": "2.5.6", + "@parcel/watcher-win32-arm64": "2.5.6", + "@parcel/watcher-win32-ia32": "2.5.6", + "@parcel/watcher-win32-x64": "2.5.6" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.6.tgz", + "integrity": "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.6.tgz", + "integrity": "sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.6.tgz", + "integrity": "sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.6.tgz", + "integrity": "sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.6.tgz", + "integrity": "sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==", + "cpu": [ + "arm" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.6.tgz", + "integrity": "sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==", + "cpu": [ + "arm" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.6.tgz", + "integrity": "sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.6.tgz", + "integrity": "sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.6", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.6.tgz", + "integrity": "sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.6.tgz", + "integrity": "sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.6.tgz", + "integrity": "sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.6.tgz", + "integrity": "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/plugin-inject": { + "version": "5.0.5", + "dev": true, + "license": "MIT", + "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": "6.0.3", + "dev": true, + "license": "MIT", + "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.4.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "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.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.62.2.tgz", + "integrity": "sha512-6o7ZLZK+BeenkZCFNDXqpbjw9bD6nuWonvS/lwQJp7NoVVxm6p3qE7qQ5jGuBjiFsgvqjD8mZAU5oWxTmbOeOg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.62.2.tgz", + "integrity": "sha512-BaH7BllCACHoH1LguOU56UItGfUWjujlO65kS9LAodViaN4bwIKd7oeW/ZHJ/4ljr/7MIiENnNy3HJ0zXv8Zkw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.62.2.tgz", + "integrity": "sha512-v39RCCvj4He82I9sFmk+M1VZ0PLM9sfsLVikjfx2hYBNALhrrOR2D3JjQA6AhlaSOgcR+RzrKY7e1+bT6SUO/A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.62.2.tgz", + "integrity": "sha512-yl0y2vq3S3lHeuXhEdss6TWfKW8vkujImO12tn4ZkG/4oghr09LvdYm2RElVjokTQiUvDUGXLGsYeLqUMCKpGA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.62.2.tgz", + "integrity": "sha512-tT4pvt4qXD+vEoezupCWi+a1F0vvDiksiHc+PxRlYTOH1I6/X4id9jPxTP+Fg+545euaFT1jJVs4CEdHZAU1vw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.62.2.tgz", + "integrity": "sha512-6nU5F2wCW+qvCBhTn1pdIU3bzsIoF7EUwsCDRxilWGprQR6yd508YnH9+OKFCwpfS8pjZqDUmnCAr7exax0XCg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.62.2.tgz", + "integrity": "sha512-n1GJHPOvpIfhi3TmrCeh6S6URt9BFCt0KQE3qvexyGCTAKpR4Lg+eWvNZEqu7epxwus/8ElT3hacYEucm49SZg==", + "cpu": [ + "arm" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.62.2.tgz", + "integrity": "sha512-JqgflS8wEB+UXV/vS1RpRbifGBeN4D5lz8D8oOFbFZw4vedvdOgCFAjfBmIMdW3yL10XpQQ0Ambepw6MXrhOnA==", + "cpu": [ + "arm" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.62.2.tgz", + "integrity": "sha512-wnFJkogWvN4jm/hQRF2UBaeUmk20j5+DmHvoyWii2b8HJDyvz1MF2OU/6ynXt2KR63rbZLWkFpoytpdc/yBuSA==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.62.2.tgz", + "integrity": "sha512-HVu2bp0zhvJ8xHEV9+UUs7S90VadmBSY3LcIMvozbPo4AuMGDWlz3ymHLHZPX4hR67TKTt8Qp5PJ5RBg/i+RMQ==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.62.2.tgz", + "integrity": "sha512-mQqqAV8QaoSgr9I2fKDLY2BAVvmKjWoGiu/cSYQonsLvtqwEn1E4QYfnCOcp5zoEqNhsDYin1s6jx/VJmrxlZg==", + "cpu": [ + "loong64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.62.2.tgz", + "integrity": "sha512-IxKLoxCQ2IWi6bT2akyDUBGsOImDKB+sPp4EsTmwFQ/fMwpCKm8uLSSgP/Kx/QYUgKis6SEZ5/Nlhup0DIA0PQ==", + "cpu": [ + "loong64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.62.2.tgz", + "integrity": "sha512-Mk5ha2RQSgyFfmYYLkBpPnUk8D8FriBxesO1u9O75X0mHgXL1UQcH5Itl2lurWL2tj0RxV9b9tJgipac0hRY9A==", + "cpu": [ + "ppc64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.62.2.tgz", + "integrity": "sha512-CjvEnqJL/0/TQ3TXX3OPIJ/kmBellrWd4heXUmHeJlTnmwjKpSJzoehLaL6Xk0ZnMHBu9dZuFADNOrtjF4v+2w==", + "cpu": [ + "ppc64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.62.2.tgz", + "integrity": "sha512-1SiZbzwdkaDURsew/tSOrooKiYy7EQGT6m8ufavAi9NEyQb/6VuIxFXAL1fqa4iZe3g4NbNk4P7J32z2tw5Mgg==", + "cpu": [ + "riscv64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.62.2.tgz", + "integrity": "sha512-nQts12zJ3NQRoE6uYljOH89v7szzLDvG2JD/vsX+vGXU8w/At1GowTZ5/7qeFQ8m7L55rpR8Okugnuo5bgjy2Q==", + "cpu": [ + "riscv64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.62.2.tgz", + "integrity": "sha512-E9/ll019jhPIJgpzfZoIkBGhcz+kKNgVWYRY0zr9srBdPPFVpvOKW8VaJKUbeK+eZXyQF9ltME+Kk6affeaPgg==", + "cpu": [ + "s390x" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.62.2", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.62.2.tgz", + "integrity": "sha512-uNN83XxQrRAh/w0/pmAfibcwyb6YWt4gP+dpnQKPVJshAloQ785ii8CT8ZCIxkGg9opVsvAlGhFitSm6D1Jjpg==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.62.2.tgz", + "integrity": "sha512-srjEIxSH3LRnJN6THczDHWQplqEMFiAJrTab0msUryh9kwNpkICf3Ea6q6MN/2cZwRFUNx5w+h6Hpi4QuHS6Zg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.62.2.tgz", + "integrity": "sha512-8hOJnxgbyObnCm5AlRA3A931xX19xq80RjVTKgJOvEKWqJruP/Uf12IbAOaDjjEXYRewwHLfmF0YRIdK3OwKWA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.62.2.tgz", + "integrity": "sha512-mmF4AY1i0hG/bLWUctUq59gtmgaSIRa3cu/A3JFRp/sCNEme2bgDEiDS22P9FbnJB8NJNF4jPJiSP5RHQpUTDg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.62.2.tgz", + "integrity": "sha512-DZgkknc6jhHrk46V25vbAM0zZkyP0nSDkJB8/dRkLTxv470dOmWDqGoEJl/9A0dFfS7yE3REOwNDxpHwSLSt0Q==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.62.2.tgz", + "integrity": "sha512-T6xr6ucWSFto+VGajA8YH26LdpHRuP4YLHEKAtCWvJDOlnmWcDZVCI2Jmjr+IFHDlt2zRaTAKE4tfjTaWLgJBg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.62.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.2.tgz", + "integrity": "sha512-BfzEnDJOt9T8M989/lA37EcJgat01wLRnoi5dQf3QzOH7jzpqTAzdDbVfRljVr5r+jzKqpbHeyOfAaXxAd0PAA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rushstack/node-core-library": { + "version": "5.23.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "~8.18.0", + "ajv-draft-04": "~1.0.0", + "ajv-formats": "~3.0.1", + "fs-extra": "~11.3.0", + "import-lazy": "~4.0.0", + "jju": "~1.4.0", + "resolve": "~1.22.1", + "semver": "~7.7.4" + }, + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/node-core-library/node_modules/semver": { + "version": "7.7.4", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rushstack/problem-matcher": { + "version": "0.2.1", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/rig-package": { + "version": "0.7.3", + "dev": true, + "license": "MIT", + "dependencies": { + "jju": "~1.4.0", + "resolve": "~1.22.1" + } + }, + "node_modules/@rushstack/terminal": { + "version": "0.24.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@rushstack/node-core-library": "5.23.1", + "@rushstack/problem-matcher": "0.2.1", + "supports-color": "~8.1.1" + }, + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/ts-command-line": { + "version": "5.3.10", + "dev": true, + "license": "MIT", + "dependencies": { + "@rushstack/terminal": "0.24.0", + "@types/argparse": "1.0.38", + "argparse": "~1.0.9", + "string-argv": "~0.3.1" + } + }, + "node_modules/@sindresorhus/base62": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/base62/-/base62-1.0.0.tgz", + "integrity": "sha512-TeheYy0ILzBEI/CO55CP6zJCSdSWeRtGnHy8U8dWSUH4I68iqTsy7HkMktR4xakThc9jotkPQUXT4ITdbV7cHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@sindresorhus/merge-streams": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz", + "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@stylistic/eslint-plugin": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin/-/eslint-plugin-5.10.0.tgz", + "integrity": "sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/types": "^8.56.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "estraverse": "^5.3.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": "^9.0.0 || ^10.0.0" + } + }, + "node_modules/@tokenizer/token": { + "version": "0.3.0", + "license": "MIT" + }, + "node_modules/@types/argparse": { + "version": "1.0.38", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/debug": { + "version": "4.1.13", + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/escape-html": { + "version": "1.0.4", + "license": "MIT" + }, + "node_modules/@types/esrecurse": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@types/esrecurse/-/esrecurse-4.3.1.tgz", + "integrity": "sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "license": "MIT" + }, + "node_modules/@types/estree-jsx": { + "version": "1.0.5", + "license": "MIT", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/hast": { + "version": "3.0.5", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/jquery": { + "version": "3.5.16", + "license": "MIT", + "dependencies": { + "@types/sizzle": "*" + } + }, + "node_modules/@types/jsesc": { + "version": "2.5.1", + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "license": "MIT" + }, + "node_modules/@types/semver": { + "version": "7.7.1", + "license": "MIT" + }, + "node_modules/@types/sizzle": { + "version": "2.3.10", + "license": "MIT" + }, + "node_modules/@types/toastify-js": { + "version": "1.12.4", + "license": "MIT" + }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "license": "MIT", + "optional": true + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "license": "MIT" + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.21", + "license": "MIT" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.65.0.tgz", + "integrity": "sha512-IEgob78X12rHpUmtcwFsXhZdVGJtwTVP8FiCLZkR6GlYVrl2PcuB+KhCE5BlVC/eQpQnu8WXRtkHZuPar+gCRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.65.0", + "@typescript-eslint/type-utils": "8.65.0", + "@typescript-eslint/utils": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0", + "ignore": "^7.0.5", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.65.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.6.tgz", + "integrity": "sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.65.0.tgz", + "integrity": "sha512-CZ4nMxWwgu1HEEFNkeaCptra9QCtkmKdgf3sWh1rl1trIhmxLilgTV4cwcbQ4wemnT4sWQN8CaKOmdYx+g2gMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.65.0", + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.65.0.tgz", + "integrity": "sha512-SxnPhbTsGahizDgbu7oqFH/xVtzIqMd/s+WtnSxNxJZJpLbdT5IPdzg8EZxO3+PoKahXmwJLeNQOpKJb3/bi7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.65.0", + "@typescript-eslint/types": "^8.65.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.65.0.tgz", + "integrity": "sha512-Esbl8OSYiVxBokYgWPf7VVWg/BE798wXhimnn9ML9Pt5qoDf8bfQlgjlKXR/k98+AcNzlLKYrpCcrcuZ9DZLgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.65.0.tgz", + "integrity": "sha512-j6GzGqCiRdA7Qhur2VVmKZAkBLfnHFQfx4TaJGL9RMveZqCo48jSHHO0DTgizEnGhtWnqmbtCUSrqSkdiY/0Hg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.65.0.tgz", + "integrity": "sha512-YjaZ7PRI5qY7ax2L3PbvX0rRyGtipAReCWs0mhhDBHjH/vl0g0BonaGXrKdKpMbIIsMIwDgbk/xzkBTyAltS5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0", + "@typescript-eslint/utils": "8.65.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.65.0.tgz", + "integrity": "sha512-JSSwWNy+H0E/01jJEM+hrX6N0OFDzFzeIhHFSAS01tlVaevpG8cFyYRPhS5yjGOvBUx3sqQHVMjCL1CAZZMxBg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.65.0.tgz", + "integrity": "sha512-JboAE2swaYt4tb1fHhHTABE2K+OLy09XfcTbhnk4Pw96f9dd2e9iYsJ28gBggHlo5z5x1rkyWvcPoTuNTd4oGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.65.0", + "@typescript-eslint/tsconfig-utils": "8.65.0", + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.65.0.tgz", + "integrity": "sha512-gXiwIHsYreboxeJucHKPvgwl7dXt50mF8s1/c00cP/WoVTyWKFdtfhRWwZiXYFU5H2O8vVoSLNrexFZjYS/SGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.65.0", + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.65.0.tgz", + "integrity": "sha512-8C71BQkGjiMmXtop7pHVJu1l2NNShFdkCyD6a2ezzs5vU/L3LRtb69EtcteFwz0mYMPzIgOw0n6OV4VBUWZd7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.65.0", + "eslint-visitor-keys": "^5.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.3", + "license": "ISC" + }, + "node_modules/@vitejs/plugin-vue": { + "version": "6.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@rolldown/pluginutils": "^1.0.1" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.28", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "2.4.28" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.28", + "dev": true, + "license": "MIT" + }, + "node_modules/@volar/typescript": { + "version": "2.4.28", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vue-macros/common": { + "version": "3.1.4", + "license": "MIT", + "dependencies": { + "@vue/compiler-sfc": "^3.5.22", + "ast-kit": "^2.1.2", + "local-pkg": "^1.1.2", + "magic-string-ast": "^1.0.2", + "unplugin-utils": "^0.3.0" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/vue-macros" + }, + "peerDependencies": { + "vue": "^2.7.0 || ^3.2.25" + }, + "peerDependenciesMeta": { + "vue": { + "optional": true + } + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@vue/shared": "3.5.40", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.40", + "@vue/shared": "3.5.40" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@vue/compiler-core": "3.5.40", + "@vue/compiler-dom": "3.5.40", + "@vue/compiler-ssr": "3.5.40", + "@vue/shared": "3.5.40", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.19", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.40", + "@vue/shared": "3.5.40" + } + }, + "node_modules/@vue/compiler-vue2": { + "version": "2.7.16", + "dev": true, + "license": "MIT", + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/@vue/devtools-api": { + "version": "8.1.5", + "license": "MIT", + "dependencies": { + "@vue/devtools-kit": "^8.1.5" + } + }, + "node_modules/@vue/devtools-kit": { + "version": "8.1.5", + "license": "MIT", + "dependencies": { + "@vue/devtools-shared": "^8.1.5", + "birpc": "^2.6.1", + "hookable": "^5.5.3", + "perfect-debounce": "^2.0.0" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "8.1.5", + "license": "MIT" + }, + "node_modules/@vue/language-core": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "~2.4.11", + "@vue/compiler-dom": "^3.5.0", + "@vue/compiler-vue2": "^2.7.16", + "@vue/shared": "^3.5.0", + "alien-signals": "^0.4.9", + "minimatch": "^9.0.3", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core/node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@vue/language-core/node_modules/brace-expansion": { + "version": "2.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/minimatch": { + "version": "9.0.9", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.2" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.40" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.40", + "@vue/shared": "3.5.40" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.40", + "@vue/runtime-core": "3.5.40", + "@vue/shared": "3.5.40", + "csstype": "^3.2.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.5.40", + "@vue/runtime-dom": "3.5.40", + "@vue/shared": "3.5.40" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.40", + "license": "MIT" + }, + "node_modules/@vuepic/vue-datepicker": { + "version": "11.0.3", + "license": "MIT", + "dependencies": { + "date-fns": "^4.1.0" + }, + "engines": { + "node": ">=18.12.0" + }, + "peerDependencies": { + "vue": ">=3.3.0" + } + }, + "node_modules/@vueuse/components": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "@vueuse/core": "14.3.0", + "@vueuse/shared": "14.3.0" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/@vueuse/core": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "@types/web-bluetooth": "^0.0.21", + "@vueuse/metadata": "14.3.0", + "@vueuse/shared": "14.3.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/@vueuse/metadata": { + "version": "14.3.0", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "14.3.0", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/acorn": { + "version": "8.17.0", + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "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, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "8.18.0", + "dev": true, + "license": "MIT", + "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-draft-04": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^8.5.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/alien-signals": { + "version": "0.4.14", + "dev": true, + "license": "MIT" + }, + "node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "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, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anynum": { + "version": "1.0.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT" + }, + "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, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-find-index": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asn1.js": { + "version": "4.10.1", + "dev": true, + "license": "MIT", + "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.5", + "dev": true, + "license": "MIT" + }, + "node_modules/assert": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "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/ast-kit": { + "version": "2.2.0", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "pathe": "^2.0.3" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/ast-walker-scope": { + "version": "0.9.0", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.2", + "@babel/types": "^7.29.0", + "ast-kit": "^2.2.0" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/astronomia": { + "version": "4.2.0", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "license": "MIT" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.18.1", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.16.0", + "form-data": "^4.0.5", + "https-proxy-agent": "^5.0.1", + "proxy-from-env": "^2.1.0" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "4.0.4", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/base-64": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "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" + } + ], + "license": "MIT" + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.42", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/birpc": { + "version": "2.9.0", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/blurhash": { + "version": "2.0.5", + "license": "MIT" + }, + "node_modules/bn.js": { + "version": "5.2.5", + "dev": true, + "license": "MIT" + }, + "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, + "license": "ISC" + }, + "node_modules/brace-expansion": { + "version": "5.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" + } + }, + "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, + "license": "MIT", + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/browser-resolve": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve": "^1.17.0" + } + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "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.1", + "dev": true, + "license": "MIT", + "dependencies": { + "bn.js": "^5.2.1", + "randombytes": "^2.1.0", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.6", + "dev": true, + "license": "ISC", + "dependencies": { + "bn.js": "^5.2.3", + "browserify-rsa": "^4.1.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.6.1", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.9", + "readable-stream": "^2.3.8", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/browserify-sign/node_modules/isarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "2.3.8", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT" + }, + "node_modules/browserify-sign/node_modules/string_decoder": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.28.5", + "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" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.10.42", + "caniuse-lite": "^1.0.30001800", + "electron-to-chromium": "^1.5.387", + "node-releases": "^2.0.50", + "update-browserslist-db": "^1.2.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/browserslist-to-esbuild": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "meow": "^13.0.0" + }, + "bin": { + "browserslist-to-esbuild": "cli/index.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "browserslist": "*" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "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" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/byte-length": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/cacheable": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-2.5.0.tgz", + "integrity": "sha512-60cyAOytib/OzBw1JNSoSV/boK1AtHryDIjvVBk7XbN4ugfkM3+Sry7fEjNgPMGgOjuaZPAp8ruZ0Cxafwyq9g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@cacheable/memory": "^2.2.0", + "@cacheable/utils": "^2.5.0", + "hookified": "^1.15.0", + "keyv": "^5.6.0", + "qified": "^0.10.1" + } + }, + "node_modules/cacheable/node_modules/keyv": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz", + "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@keyv/serialize": "^1.1.1" + } + }, + "node_modules/caldate": { + "version": "2.0.5", + "license": "ISC", + "dependencies": { + "moment-timezone": "^0.5.43" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.9", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "get-intrinsic": "^1.3.0", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cancelable-promise": { + "version": "4.3.1", + "license": "MIT", + "optional": true + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001803", + "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" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/ccount": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/charenc": { + "version": "0.0.2", + "license": "BSD-3-Clause", + "engines": { + "node": "*" + } + }, + "node_modules/chokidar": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/cipher-base": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "safe-buffer": "^5.2.1", + "to-buffer": "^1.2.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "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, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "peer": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/comment-parser": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.7.tgz", + "integrity": "sha512-0h+uSNtQGW3D98eQt3jJ8L06Fves8hncB4V/PKdw/Qb8Hnk19VaKuTr55UNRYiSoVa7WwrFls+rh3ux9agmkeQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/commenting": { + "version": "1.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/compare-versions": { + "version": "6.1.1", + "dev": true, + "license": "MIT" + }, + "node_modules/confbox": { + "version": "0.2.4", + "license": "MIT" + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "dev": true + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/core-js": { + "version": "3.49.0", + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.49.0", + "dev": true, + "license": "MIT", + "dependencies": { + "browserslist": "^4.28.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.2.tgz", + "integrity": "sha512-gtTZxTDau1wL7Y7zifc2dd8jHSK/k6BTx/2Xp/BpdlAdnlYWFVt7qhJqgwi7637yRwRQ3qL4ZidbB4I8tA5VOg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/cosmiconfig/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==", + "dev": true, + "license": "Python-2.0", + "peer": true + }, + "node_modules/cosmiconfig/node_modules/js-yaml": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.5", + "dev": true, + "license": "MIT" + }, + "node_modules/create-hash": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "peer": true, + "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", + "license": "BSD-3-Clause", + "engines": { + "node": "*" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.1", + "dev": true, + "license": "MIT", + "dependencies": { + "browserify-cipher": "^1.0.1", + "browserify-sign": "^4.2.3", + "create-ecdh": "^4.0.4", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "diffie-hellman": "^5.0.3", + "hash-base": "~3.0.4", + "inherits": "^2.0.4", + "pbkdf2": "^3.1.2", + "public-encrypt": "^4.0.3", + "randombytes": "^2.1.0", + "randomfill": "^1.0.4" + }, + "engines": { + "node": ">= 0.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/css-functions-list": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.3.3.tgz", + "integrity": "sha512-8HFEBPKhOpJPEPu70wJJetjKta86Gw9+CCyCnB3sui2qQfOvRyqBy4IKLKKAwdMpWb2lHXWk9Wb4Z6AmaUT1Pg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/css-tree": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.2.1.tgz", + "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "mdn-data": "2.27.1", + "source-map-js": "^1.2.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, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "license": "MIT" + }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/date-bengali-revised": { + "version": "2.0.2", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/date-chinese": { + "version": "2.1.4", + "license": "MIT", + "dependencies": { + "astronomia": "^4.1.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/date-easter": { + "version": "1.0.3", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/date-fns": { + "version": "4.4.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/date-holidays": { + "version": "3.33.0", + "license": "(ISC AND CC-BY-3.0)", + "dependencies": { + "date-holidays-parser": "^3.4.7", + "js-yaml": "^5.2.1", + "lodash": "^4.18.1", + "prepin": "^1.0.3" + }, + "bin": { + "holidays2json": "scripts/holidays2json.cjs" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/date-holidays-parser": { + "version": "3.4.7", + "license": "ISC", + "dependencies": { + "astronomia": "^4.1.1", + "caldate": "^2.0.5", + "date-bengali-revised": "^2.0.2", + "date-chinese": "^2.1.4", + "date-easter": "^1.0.3", + "deepmerge": "^4.3.1", + "jalaali-js": "^1.2.7", + "moment-timezone": "^0.5.47" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/de-indent": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/debounce": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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, + "license": "MIT", + "peer": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "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-properties": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "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", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/des.js": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/detect-indent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.2.tgz", + "integrity": "sha512-y+8xyqdGLL+6sh0tVeHcfP/QDd8gUgbasolJJpY7NgeQGSZ739bDtSiaiDgtoicy+mtYB81dKLxO9xRhCyIB3A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "license": "Apache-2.0", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-newline": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-4.0.1.tgz", + "integrity": "sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/diff": { + "version": "8.0.4", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "dev": true, + "license": "MIT", + "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.5", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT", + "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/dom-serializer/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/domain-browser": { + "version": "4.22.0", + "dev": true, + "license": "MIT", + "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" + } + ], + "license": "BSD-2-Clause", + "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, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/dompurify": { + "version": "3.4.12", + "license": "(MPL-2.0 OR Apache-2.0)", + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } + }, + "node_modules/domutils": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", + "dev": true, + "license": "BSD-2-Clause", + "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/dunder-proto": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.389", + "dev": true, + "license": "ISC" + }, + "node_modules/elliptic": { + "version": "6.6.1", + "dev": true, + "license": "MIT", + "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.5", + "dev": true, + "license": "MIT" + }, + "node_modules/emoji-mart-vue-fast": { + "version": "15.0.5", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/runtime": "^7.18.6", + "core-js": "^3.23.5" + }, + "peerDependencies": { + "vue": ">2.0.0" + } + }, + "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, + "license": "MIT", + "peer": true + }, + "node_modules/entities": { + "version": "7.0.1", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/error-ex": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.2", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/esbuild": { + "version": "0.25.12", + "devOptional": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.12", + "@esbuild/android-arm": "0.25.12", + "@esbuild/android-arm64": "0.25.12", + "@esbuild/android-x64": "0.25.12", + "@esbuild/darwin-arm64": "0.25.12", + "@esbuild/darwin-x64": "0.25.12", + "@esbuild/freebsd-arm64": "0.25.12", + "@esbuild/freebsd-x64": "0.25.12", + "@esbuild/linux-arm": "0.25.12", + "@esbuild/linux-arm64": "0.25.12", + "@esbuild/linux-ia32": "0.25.12", + "@esbuild/linux-loong64": "0.25.12", + "@esbuild/linux-mips64el": "0.25.12", + "@esbuild/linux-ppc64": "0.25.12", + "@esbuild/linux-riscv64": "0.25.12", + "@esbuild/linux-s390x": "0.25.12", + "@esbuild/linux-x64": "0.25.12", + "@esbuild/netbsd-arm64": "0.25.12", + "@esbuild/netbsd-x64": "0.25.12", + "@esbuild/openbsd-arm64": "0.25.12", + "@esbuild/openbsd-x64": "0.25.12", + "@esbuild/openharmony-arm64": "0.25.12", + "@esbuild/sunos-x64": "0.25.12", + "@esbuild/win32-arm64": "0.25.12", + "@esbuild/win32-ia32": "0.25.12", + "@esbuild/win32-x64": "0.25.12" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "5.0.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.7.0.tgz", + "integrity": "sha512-GVTD7s1vdIl6UYvAfriOPeY1Df8LIZjfofLvHwde+erDHGGuHyuM6xoxRxmHiebhYuD2p1vN4wWh0XzPARSGDQ==", + "dev": true, + "license": "MIT", + "peer": true, + "workspaces": [ + "packages/*" + ], + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.2", + "@eslint/config-array": "^0.23.5", + "@eslint/config-helpers": "^0.6.0", + "@eslint/core": "^1.2.1", + "@eslint/plugin-kit": "^0.7.2", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.14.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^9.1.2", + "eslint-visitor-keys": "^5.0.1", + "espree": "^11.2.0", + "esquery": "^1.7.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "minimatch": "^10.2.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-config-flat-gitignore": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/eslint-config-flat-gitignore/-/eslint-config-flat-gitignore-2.3.0.tgz", + "integrity": "sha512-bg4ZLGgoARg1naWfsINUUb/52Ksw/K22K+T16D38Y8v+/sGwwIYrGvH/JBjOin+RQtxxC9tzNNiy4shnGtGyyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint/compat": "^2.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "eslint": "^9.5.0 || ^10.0.0" + } + }, + "node_modules/eslint-plugin-antfu": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-antfu/-/eslint-plugin-antfu-3.2.3.tgz", + "integrity": "sha512-U2fnz/H0gFPxpuC7QpaHa0Jv2AgCZ5hunp36SOP/yWo8yFzgvMh8X4pZ4uN4IKoqtBhk7G3HuVa93Urf51+sZg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/eslint-plugin-jsdoc": { + "version": "63.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-63.2.2.tgz", + "integrity": "sha512-xCoHKeaRwAhZ+i2ZUY11few2Lmy9qpJLDsY139c4KNJLMSZYoFJ5UMYkDjdTkO9PfkFOKmVO+7i4Yjx+x7VQWQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@es-joy/jsdoccomment": "~0.90.0", + "@es-joy/resolve.exports": "1.2.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.7", + "debug": "^4.4.3", + "escape-string-regexp": "^4.0.0", + "espree": "^11.2.0", + "esquery": "^1.7.0", + "html-entities": "^2.6.0", + "object-deep-merge": "^2.0.1", + "parse-imports-exports": "^0.2.4", + "semver": "^7.8.5", + "spdx-expression-parse": "^5.0.0", + "to-valid-identifier": "^1.0.0" + }, + "engines": { + "node": "^22.13.0 || >=24" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.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, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/espree": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-11.2.0.tgz", + "integrity": "sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.16.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^5.0.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/spdx-expression-parse": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-5.0.0.tgz", + "integrity": "sha512-vngmw3Rgn+o2arXNbnZaj5UtOEBuWBfvaI+Wc8GFfykIhA5/vdK9/Sp/XkLv63dykz2rxKDvKEHupF5P0FORcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/eslint-plugin-perfectionist": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-perfectionist/-/eslint-plugin-perfectionist-5.10.0.tgz", + "integrity": "sha512-HiqpDrUDbGrMC6iHQbemgDyHJ0366Vyz/qRWmxQcSAkmG25cXr8BdRgx8yAhOKhEfBXn8Rnf/mTCsV4EqUJSxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/utils": "^8.62.1", + "natural-orderby": "^5.0.0" + }, + "engines": { + "node": "^20.0.0 || >=22.0.0" + }, + "peerDependencies": { + "eslint": "^8.45.0 || ^9.0.0 || ^10.0.0" + } + }, + "node_modules/eslint-plugin-vue": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-10.10.0.tgz", + "integrity": "sha512-dL9x9rBHqqNcByWiLOHK6L0SB97V82/NC0cZRn9cXPjM7pCuWlpQQP9bFH4vjBv80ej1ZpzAkuD8zWH1o9bZbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "natural-compare": "^1.4.0", + "nth-check": "^2.1.1", + "postcss-selector-parser": "^7.1.4", + "semver": "^7.8.5", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "@stylistic/eslint-plugin": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0", + "@typescript-eslint/parser": "^7.0.0 || ^8.0.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "vue-eslint-parser": "^10.3.0" + }, + "peerDependenciesMeta": { + "@stylistic/eslint-plugin": { + "optional": true + }, + "@typescript-eslint/parser": { + "optional": true + } + } + }, + "node_modules/eslint-scope": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-9.1.2.tgz", + "integrity": "sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "@types/esrecurse": "^4.3.1", + "@types/estree": "^1.0.8", + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "license": "MIT", + "peer": 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/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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/espree": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-11.2.0.tgz", + "integrity": "sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "acorn": "^8.16.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^5.0.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/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, + "license": "MIT", + "peer": true + }, + "node_modules/eslint/node_modules/minimatch": { + "version": "10.2.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", + "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", + "dev": true, + "license": "BlueOak-1.0.0", + "peer": true, + "dependencies": { + "brace-expansion": "^5.0.5" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "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, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "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, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-toolkit": { + "version": "1.7.14", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": ">=1.0.8", + "@types/estree-jsx": ">=1.0.5" + } + }, + "node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "license": "MIT" + }, + "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, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eventemitter3": { + "version": "5.0.4", + "license": "MIT" + }, + "node_modules/events": { + "version": "3.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/exsolve": { + "version": "1.1.0", + "license": "MIT" + }, + "node_modules/extend": { + "version": "3.0.2", + "license": "MIT" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "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.8" + }, + "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, + "license": "ISC", + "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, + "license": "MIT", + "peer": 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, + "license": "MIT", + "peer": true + }, + "node_modules/fast-uri": { + "version": "3.1.4", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fast-xml-builder": { + "version": "1.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "dependencies": { + "path-expression-matcher": "^1.5.0", + "xml-naming": "^0.1.0" + } + }, + "node_modules/fast-xml-parser": { + "version": "5.10.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "dependencies": { + "@nodable/entities": "^3.0.0", + "fast-xml-builder": "^1.2.0", + "is-unsafe": "^2.0.0", + "path-expression-matcher": "^1.6.2", + "strnum": "^2.4.1", + "xml-naming": "^0.3.0" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/fast-xml-parser/node_modules/xml-naming": { + "version": "0.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fastq": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.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, + "license": "MIT", + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.3.tgz", + "integrity": "sha512-/zipXxyO6rGvuNGDiULY9MvEGSkb2gaG4GGH4ygMi0ZZzyMHdUZBmntJmx5x1G2VuPytCwGN4xsJP6cw+sK+vQ==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/floating-vue": { + "version": "5.2.2", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "~1.1.1", + "vue-resize": "^2.0.0-alpha.1" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.0", + "vue": "^3.2.0" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + } + } + }, + "node_modules/floating-vue/node_modules/@floating-ui/dom": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.1.0" + } + }, + "node_modules/focus-trap": { + "version": "8.2.2", + "license": "MIT", + "dependencies": { + "tabbable": "^6.5.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.16.0", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/form-data": { + "version": "4.0.6", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.4", + "mime-types": "^2.1.35" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "license": "MIT", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/fs-extra": { + "version": "11.3.6", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generator-function": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-east-asian-width": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz", + "integrity": "sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/git-hooks-list": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-4.2.1.tgz", + "integrity": "sha512-WNvqJjOxxs/8ZP9+DWdwWJ7cDsd60NHf39XnD82pDVrKO5q7xfPqpkK6hwEAmBa/ZSEE4IOoR75EzbbIuwGlMw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/fisker/git-hooks-list?sponsor=1" + } + }, + "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, + "license": "ISC", + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "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, + "license": "ISC", + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/globals": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-17.7.0.tgz", + "integrity": "sha512-Czmyns5dUsq4seFBR/Kdydhmo8y9kC79hiSkPn0YcGtNnYWnrgt0vjrSjx9tspoDGWm2CMarffRuLjM4xUz8xg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-16.2.2.tgz", + "integrity": "sha512-NLvV9ubZ6NDsJaOpKPy3cQeJpKi9DcWiyCiFUpJPA0YihRqiE6RWaLUmgNNPr8MgPpLZjnBjSmou7uZBRJv9wA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@sindresorhus/merge-streams": "^4.0.0", + "fast-glob": "^3.3.3", + "ignore": "^7.0.5", + "is-path-inside": "^4.0.0", + "slash": "^5.1.0", + "unicorn-magic": "^0.4.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby/node_modules/ignore": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.6.tgz", + "integrity": "sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/gopd": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "dev": true, + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash-base": { + "version": "3.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hashery": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/hashery/-/hashery-1.5.1.tgz", + "integrity": "sha512-iZyKG96/JwPz1N55vj2Ie2vXbhu440zfUfJvSwEqEbeLluk7NnapfGqa7LH0mOsnDxTF85Mx8/dyR6HfqcbmbQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "hookified": "^1.15.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/hasown": { + "version": "2.0.4", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-util-is-element": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-jsx-runtime": { + "version": "2.3.6", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-js": "^1.0.0", + "unist-util-position": "^5.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-text": { + "version": "4.0.2", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unist-util-find-after": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/highlight.js": { + "version": "11.11.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hookable": { + "version": "5.5.3", + "license": "MIT" + }, + "node_modules/hookified": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz", + "integrity": "sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/hot-patcher": { + "version": "2.0.1", + "license": "MIT" + }, + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "license": "MIT" + }, + "node_modules/html-tags": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-5.1.0.tgz", + "integrity": "sha512-n6l5uca7/y5joxZ3LUePhzmBFUJ+U2YWzhMa8XUTecSeSlQiZdF5XAd/Q3/WUl0VsXgUwWi8I7CNIwdI5WN1SQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20.10" + }, + "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" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/htmlparser2/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "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" + } + ], + "license": "BSD-3-Clause" + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immutable": { + "version": "5.1.9", + "devOptional": true, + "license": "MIT" + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/import-meta-resolve": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz", + "integrity": "sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==", + "dev": true, + "license": "MIT", + "peer": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/inline-style-parser": { + "version": "0.2.7", + "license": "MIT" + }, + "node_modules/is-absolute-url": { + "version": "4.0.1", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-alphabetical": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "is-alphabetical": "^2.0.0", + "is-decimal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arguments": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "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, + "license": "MIT", + "peer": true + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "license": "MIT" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.2", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "devOptional": true, + "license": "MIT", + "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==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4", + "generator-function": "^2.0.0", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "devOptional": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-nan": { + "version": "1.3.2", + "dev": true, + "license": "MIT", + "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-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "license": "MIT", + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-svg": { + "version": "6.1.0", + "license": "MIT", + "dependencies": { + "@file-type/xml": "^0.4.3" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-unsafe": { + "version": "2.0.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT" + }, + "node_modules/isarray": { + "version": "2.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/isomorphic-timers-promises": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/jalaali-js": { + "version": "1.2.8", + "license": "MIT" + }, + "node_modules/jju": { + "version": "1.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/js-yaml": { + "version": "5.2.2", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.mjs" + } + }, + "node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "license": "Python-2.0" + }, + "node_modules/jsdoc-type-pratt-parser": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-7.3.0.tgz", + "integrity": "sha512-DoyJXo7x/n48M3NsGOs9QnEws0ft0tV3YsSgvWMNxz2hZtz+Q6fpqUD96lVYX4a+jcEkzHeFNDJOn68TzXfbdA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT", + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/known-css-properties": { + "version": "0.37.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.37.0.tgz", + "integrity": "sha512-JCDrsP4Z1Sb9JwG0aJ8Eo2r7k4Ou5MwmThS/6lcIe1ICyb7UBJKGRIUUdqc2ASdE/42lgz6zFUnzAIhtXnBVrQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/kolorist": { + "version": "1.8.0", + "dev": true, + "license": "MIT" + }, + "node_modules/layerr": { + "version": "3.0.0", + "license": "MIT" + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "peer": true + }, + "node_modules/linkifyjs": { + "version": "4.3.3", + "license": "MIT" + }, + "node_modules/local-pkg": { + "version": "1.2.1", + "license": "MIT", + "dependencies": { + "mlly": "^1.7.4", + "pkg-types": "^2.3.0", + "quansync": "^0.2.11" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.18.1", + "license": "MIT" + }, + "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, + "license": "MIT", + "peer": true + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/lowlight": { + "version": "3.3.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "devlop": "^1.0.0", + "highlight.js": "~11.11.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/magic-string-ast": { + "version": "1.0.3", + "license": "MIT", + "dependencies": { + "magic-string": "^0.30.19" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/material-colors": { + "version": "1.2.6", + "license": "ISC" + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mathml-tag-names": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-4.0.0.tgz", + "integrity": "sha512-aa6AU2Pcx0VP/XWnh8IGL0SYSgQHDT6Ucror2j2mXeFAlN3ahaNs8EZtG1YiticMkSLj3Gt6VPFfZogt7G5iFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/md5": { + "version": "2.3.0", + "license": "BSD-3-Clause", + "dependencies": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "dev": true, + "license": "MIT", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdast-squeeze-paragraphs": { + "version": "6.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.2", + "license": "MIT", + "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-from-markdown": { + "version": "2.0.3", + "license": "MIT", + "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-mdx-expression": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@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-mdx-jsx": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdxjs-esm": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@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", + "license": "MIT", + "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", + "license": "MIT", + "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.1", + "license": "MIT", + "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.2", + "license": "MIT", + "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-classify-character": "^2.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", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.27.1", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz", + "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==", + "dev": true, + "license": "CC0-1.0", + "peer": true + }, + "node_modules/meow": { + "version": "13.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromark": { + "version": "4.0.2", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.3", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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-factory-destination": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.2", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "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.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "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, + "license": "MIT", + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "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.5", + "dev": true, + "license": "MIT" + }, + "node_modules/mime-db": { + "version": "1.52.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/minimatch": { + "version": "10.2.3", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "brace-expansion": "^5.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/mlly": { + "version": "1.8.2", + "license": "MIT", + "dependencies": { + "acorn": "^8.16.0", + "pathe": "^2.0.3", + "pkg-types": "^1.3.1", + "ufo": "^1.6.3" + } + }, + "node_modules/mlly/node_modules/confbox": { + "version": "0.1.8", + "license": "MIT" + }, + "node_modules/mlly/node_modules/pkg-types": { + "version": "1.3.1", + "license": "MIT", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/moment": { + "version": "2.30.1", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/moment-timezone": { + "version": "0.5.48", + "license": "MIT", + "dependencies": { + "moment": "^2.29.4" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "license": "MIT" + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.16", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "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, + "license": "MIT" + }, + "node_modules/natural-orderby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/natural-orderby/-/natural-orderby-5.0.0.tgz", + "integrity": "sha512-kKHJhxwpR/Okycz4HhQKKlhWe4ASEfPgkSWNmKFHd7+ezuQlxkA5cM3+XkBPvm1gmHen3w53qsYAv+8GwRrBlg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/nested-property": { + "version": "4.0.0", + "license": "MIT" + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "license": "MIT", + "optional": true + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.2", + "license": "MIT", + "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-releases": { + "version": "2.0.51", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/node-stdlib-browser": { + "version": "1.3.1", + "dev": true, + "license": "MIT", + "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.12.1", + "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.4", + "util": "^0.12.4", + "vm-browserify": "^1.0.1" + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nostics": { + "version": "1.2.0", + "license": "MIT" + }, + "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, + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-deep-merge": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-2.0.1.tgz", + "integrity": "sha512-aKttDKcU3pyZqKcCkDhsMn70WmZFG2JGDQLP9EcLyTSIFQRCPWLAmBZRLJnrVUrhPG1jETEEbfdgbNtJf1LyMg==", + "dev": true, + "license": "MIT" + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.6", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT" + }, + "node_modules/p-limit": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-queue": { + "version": "9.3.1", + "license": "MIT", + "dependencies": { + "eventemitter3": "^5.0.4", + "p-timeout": "^7.0.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-timeout": { + "version": "7.0.1", + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-name-regex": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/dword-design" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "dev": true, + "license": "(MIT AND Zlib)" + }, + "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, + "license": "MIT", + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.9", + "dev": true, + "license": "ISC", + "dependencies": { + "asn1.js": "^4.10.1", + "browserify-aes": "^1.2.0", + "evp_bytestokey": "^1.0.3", + "pbkdf2": "^3.1.5", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse-entities": { + "version": "4.0.2", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "character-entities-legacy": "^3.0.0", + "character-reference-invalid": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "is-alphanumerical": "^2.0.0", + "is-decimal": "^2.0.0", + "is-hexadecimal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-entities/node_modules/@types/unist": { + "version": "2.0.11", + "license": "MIT" + }, + "node_modules/parse-imports-exports": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/parse-imports-exports/-/parse-imports-exports-0.2.4.tgz", + "integrity": "sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parse-statements": "1.0.11" + } + }, + "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, + "license": "MIT", + "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/parse-statements": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/parse-statements/-/parse-statements-1.0.11.tgz", + "integrity": "sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-expression-matcher": { + "version": "1.6.2", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "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==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "dev": true, + "license": "MIT" + }, + "node_modules/path-posix": { + "version": "1.0.0", + "license": "ISC" + }, + "node_modules/pathe": { + "version": "2.0.3", + "license": "MIT" + }, + "node_modules/pbkdf2": { + "version": "3.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "ripemd160": "^2.0.3", + "safe-buffer": "^5.2.1", + "sha.js": "^2.4.12", + "to-buffer": "^1.2.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/perfect-debounce": { + "version": "2.1.0", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.5", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-dir": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/pkg-types": { + "version": "2.3.1", + "license": "MIT", + "dependencies": { + "confbox": "^0.2.4", + "exsolve": "^1.0.8", + "pathe": "^2.0.3" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.5.23", + "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" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.16", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-html": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.8.1.tgz", + "integrity": "sha512-OLF6P7qctfAWayOhLpcVnTGqVeJzu2W3WpIYelfz2+JV5oGxfkcEvweN9U4XpeqE0P98dcD9ssusGwlF0TK0uQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "htmlparser2": "^8.0.0", + "js-tokens": "^9.0.0", + "postcss": "^8.5.0", + "postcss-safe-parser": "^6.0.0" + }, + "engines": { + "node": "^12 || >=14" + } + }, + "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, + "license": "MIT", + "peer": true + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "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" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.4.29" + } + }, + "node_modules/postcss-selector-parser": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz", + "integrity": "sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==", + "dev": true, + "license": "MIT", + "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, + "license": "MIT", + "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, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepin": { + "version": "1.0.3", + "license": "Unlicense", + "bin": { + "prepin": "bin/prepin.js" + } + }, + "node_modules/process": { + "version": "0.11.10", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/property-information": { + "version": "7.2.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proxy-from-env": { + "version": "2.1.0", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "dev": true, + "license": "MIT", + "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.5", + "dev": true, + "license": "MIT" + }, + "node_modules/punycode": { + "version": "1.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/qified": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/qified/-/qified-0.10.1.tgz", + "integrity": "sha512-+Owyggi9IxT1ePKGafcI87ubSmxol6smwJ+RAHDQlx9+9cPwFWDiKFFCPuWhr9ignlGpZ9vDQLw67N4dcTVFEA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "hookified": "^2.1.1" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/qified/node_modules/hookified": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/hookified/-/hookified-2.2.0.tgz", + "integrity": "sha512-p/LgFzRN5FeoD3DLS6bkUapeye6E4SI6yJs6KetENd18S+FBthqYq2amJUWpt5z0EQwwHemidjY5OqJGEKm5uA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/qs": { + "version": "6.15.3", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "es-define-property": "^1.0.1", + "side-channel": "^1.1.1" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/quansync": { + "version": "0.2.11", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "license": "MIT" + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "license": "MIT" + }, + "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" + } + ], + "license": "MIT", + "peer": true + }, + "node_modules/randombytes": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "5.0.0", + "license": "MIT", + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/rehype-external-links": { + "version": "3.0.0", + "license": "MIT", + "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-highlight": { + "version": "7.0.2", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "hast-util-to-text": "^4.0.0", + "lowlight": "^3.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-react": { + "version": "8.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "hast-util-to-jsx-runtime": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-breaks": { + "version": "4.0.0", + "license": "MIT", + "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-parse": { + "version": "11.0.0", + "license": "MIT", + "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.2", + "license": "MIT", + "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-unlink-protocols": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-squeeze-paragraphs": "^6.0.0", + "unist-util-visit": "^5.0.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/reserved-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/reserved-identifiers/-/reserved-identifiers-1.2.0.tgz", + "integrity": "sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/resolve": { + "version": "1.22.12", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/ripemd160": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "hash-base": "^3.1.2", + "inherits": "^2.0.4" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ripemd160/node_modules/hash-base": { + "version": "3.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^2.3.8", + "safe-buffer": "^5.2.1", + "to-buffer": "^1.2.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ripemd160/node_modules/isarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/ripemd160/node_modules/readable-stream": { + "version": "2.3.8", + "dev": true, + "license": "MIT", + "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/ripemd160/node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/ripemd160/node_modules/string_decoder": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/ripemd160/node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/rollup": { + "version": "4.62.2", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.62.2", + "@rollup/rollup-android-arm64": "4.62.2", + "@rollup/rollup-darwin-arm64": "4.62.2", + "@rollup/rollup-darwin-x64": "4.62.2", + "@rollup/rollup-freebsd-arm64": "4.62.2", + "@rollup/rollup-freebsd-x64": "4.62.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.62.2", + "@rollup/rollup-linux-arm-musleabihf": "4.62.2", + "@rollup/rollup-linux-arm64-gnu": "4.62.2", + "@rollup/rollup-linux-arm64-musl": "4.62.2", + "@rollup/rollup-linux-loong64-gnu": "4.62.2", + "@rollup/rollup-linux-loong64-musl": "4.62.2", + "@rollup/rollup-linux-ppc64-gnu": "4.62.2", + "@rollup/rollup-linux-ppc64-musl": "4.62.2", + "@rollup/rollup-linux-riscv64-gnu": "4.62.2", + "@rollup/rollup-linux-riscv64-musl": "4.62.2", + "@rollup/rollup-linux-s390x-gnu": "4.62.2", + "@rollup/rollup-linux-x64-gnu": "4.62.2", + "@rollup/rollup-linux-x64-musl": "4.62.2", + "@rollup/rollup-openbsd-x64": "4.62.2", + "@rollup/rollup-openharmony-arm64": "4.62.2", + "@rollup/rollup-win32-arm64-msvc": "4.62.2", + "@rollup/rollup-win32-ia32-msvc": "4.62.2", + "@rollup/rollup-win32-x64-gnu": "4.62.2", + "@rollup/rollup-win32-x64-msvc": "4.62.2", + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-corejs": { + "version": "1.0.2", + "dev": true, + "license": "EUPL-1.2", + "dependencies": { + "acorn": "^8.14.0", + "browserslist": "^4.26.3", + "core-js-compat": "^3.46.0", + "estree-toolkit": "^1.7.8", + "magic-string": "^0.30.19" + }, + "engines": { + "node": ">= 20.0.0" + }, + "peerDependencies": { + "rollup": "^3 || ^4" + } + }, + "node_modules/rollup-plugin-esbuild-minify": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.3" + }, + "engines": { + "node": ">= 14.18" + }, + "peerDependencies": { + "rollup": "^2 || ^3 || ^4" + } + }, + "node_modules/rollup-plugin-license": { + "version": "3.7.1", + "dev": true, + "license": "MIT", + "dependencies": { + "commenting": "^1.1.0", + "fdir": "^6.4.3", + "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-node-externals": { + "version": "9.0.1", + "dev": true, + "funding": [ + { + "type": "patreon", + "url": "https://patreon.com/Septh" + }, + { + "type": "paypal", + "url": "https://paypal.me/septh07" + } + ], + "license": "MIT", + "engines": { + "node": ">= 24" + }, + "peerDependencies": { + "rollup": "^4.0.0", + "vite": ">=5.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "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" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "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" + } + ], + "license": "MIT" + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sass": { + "version": "1.101.0", + "devOptional": true, + "license": "MIT", + "dependencies": { + "chokidar": "^5.0.0", + "immutable": "^5.1.5", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=20.19.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, + "node_modules/sax": { + "version": "1.6.0", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=11.0.0" + } + }, + "node_modules/scule": { + "version": "1.3.0", + "license": "MIT" + }, + "node_modules/semver": { + "version": "7.8.5", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "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/setimmediate": { + "version": "1.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/sha.js": { + "version": "2.4.12", + "dev": true, + "license": "(MIT AND BSD-3-Clause)", + "dependencies": { + "inherits": "^2.0.4", + "safe-buffer": "^5.2.1", + "to-buffer": "^1.2.0" + }, + "bin": { + "sha.js": "bin.js" + }, + "engines": { + "node": ">= 0.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dev": true, + "license": "MIT", + "peer": true, + "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==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4", + "side-channel-list": "^1.0.1", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "license": "ISC", + "peer": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/slash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT", + "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/sort-object-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-2.1.0.tgz", + "integrity": "sha512-SOiEnthkJKPv2L6ec6HMwhUcN0/lppkeYuN1x63PbyPRrgSPIuBJCiYxYyvWRTtjMlOi14vQUCGUJqS6PLVm8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/sort-package-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-4.0.0.tgz", + "integrity": "sha512-6aYOlYI9AWioZ+rzu+4zKLmoFqJP0/fHDxrd7X04yqEibikY+5YVF0EYlyGn4v6X2PJY7yAUWV7oeP+i5rOm/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-indent": "^7.0.2", + "detect-newline": "^4.0.1", + "git-hooks-list": "^4.1.1", + "is-plain-obj": "^4.1.0", + "semver": "^7.7.3", + "sort-object-keys": "^2.0.1", + "tinyglobby": "^0.2.15" + }, + "bin": { + "sort-package-json": "cli.js" + }, + "engines": { + "node": ">=22" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdx-compare": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "dev": true, + "license": "CC-BY-3.0" + }, + "node_modules/spdx-expression-parse": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-expression-validate": { + "version": "2.0.0", + "dev": true, + "license": "(MIT AND CC-BY-3.0)", + "dependencies": { + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/spdx-expression-validate/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.23", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/spdx-ranges": { + "version": "2.1.1", + "dev": true, + "license": "(MIT AND CC-BY-3.0)" + }, + "node_modules/spdx-satisfies": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/splitpanes": { + "version": "4.1.2", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antoniandre" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-http": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-width": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.2.tgz", + "integrity": "sha512-GaPUh5gfdrYzqeVNZvUfT23vYYxXzKYidUcnMtJg/3rxRV63EFZy3k6xfKlmfeJD0176lnUV/Usr3XcwSvFzpg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "get-east-asian-width": "^1.5.0", + "strip-ansi": "^7.1.2" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "license": "MIT", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/strip-ansi": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^6.2.2" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/striptags": { + "version": "3.2.0", + "license": "MIT" + }, + "node_modules/strnum": { + "version": "2.4.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "dependencies": { + "anynum": "^1.0.1" + } + }, + "node_modules/strtok3": { + "version": "10.3.5", + "license": "MIT", + "dependencies": { + "@tokenizer/token": "^0.3.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/style-to-js": { + "version": "1.1.21", + "license": "MIT", + "dependencies": { + "style-to-object": "1.0.14" + } + }, + "node_modules/style-to-object": { + "version": "1.0.14", + "license": "MIT", + "dependencies": { + "inline-style-parser": "0.2.7" + } + }, + "node_modules/stylelint": { + "version": "17.14.1", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-17.14.1.tgz", + "integrity": "sha512-xVQwyiuxALUBNB2fBe0tmNemg9KqLtdj3T64mioFDar79B2cU8LIyz+3KL6LdiHs9NkeNfwxpKSaIVOY8f112g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" + }, + { + "type": "github", + "url": "https://github.com/sponsors/stylelint" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "@csstools/css-calc": "^3.2.1", + "@csstools/css-parser-algorithms": "^4.0.0", + "@csstools/css-syntax-patches-for-csstree": "^1.1.6", + "@csstools/css-tokenizer": "^4.0.0", + "@csstools/media-query-list-parser": "^5.0.0", + "@csstools/selector-resolve-nested": "^4.0.0", + "@csstools/selector-specificity": "^6.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^9.0.2", + "css-functions-list": "^3.3.3", + "css-tree": "^3.2.1", + "debug": "^4.4.3", + "fast-glob": "^3.3.3", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^11.1.5", + "global-modules": "^2.0.0", + "globby": "^16.2.1", + "globjoin": "^0.1.4", + "html-tags": "^5.1.0", + "ignore": "^7.0.5", + "import-meta-resolve": "^4.2.0", + "mathml-tag-names": "^4.0.0", + "meow": "^14.1.0", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.5.16", + "postcss-safe-parser": "^7.0.1", + "postcss-selector-parser": "^7.1.4", + "postcss-value-parser": "^4.2.0", + "string-width": "^8.2.1", + "supports-hyperlinks": "^4.5.0", + "svg-tags": "^1.0.0", + "table": "^6.9.0", + "write-file-atomic": "^7.0.1" + }, + "bin": { + "stylelint": "bin/stylelint.mjs" + }, + "engines": { + "node": ">=20.19.0" + } + }, + "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, + "license": "MIT", + "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": "18.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-18.0.0.tgz", + "integrity": "sha512-mxgT2XY6YZ3HWWe3Di8umG6aBmWmHTblTgu/f10rqFXnyWxjKWwNdjSWkgkwCtxIKnqjSJzvFmPT5yabVIRxZg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" + }, + { + "type": "github", + "url": "https://github.com/sponsors/stylelint" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "stylelint": "^17.0.0" + } + }, + "node_modules/stylelint-config-recommended-scss": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-17.0.1.tgz", + "integrity": "sha512-x5DVehzJudcwF0od3sGpgkln2PLLranFE7twwbp7dqDINCyZvwzFkMc6TLhNOvazRiVBJYATQLouJY0xPGB8WA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "postcss-scss": "^4.0.9", + "stylelint-config-recommended": "^18.0.0", + "stylelint-scss": "^7.0.0" + }, + "engines": { + "node": ">=20" + }, + "peerDependencies": { + "postcss": "^8.3.3", + "stylelint": "^17.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + } + } + }, + "node_modules/stylelint-config-recommended-vue": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.6.1.tgz", + "integrity": "sha512-lLW7hTIMBiTfjenGuDq2kyHA6fBWd/+Df7MO4/AWOxiFeXP9clbpKgg27kHfwA3H7UNMGC7aeP3mNlZB5LMmEQ==", + "dev": true, + "license": "MIT", + "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-scss": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-7.2.0.tgz", + "integrity": "sha512-6E79Bachv0Iz0gqRUZgdqdXCsiq26DWBWIBNHYtjTmAp3wJu6cp/I37VfW7BPntmh2puF3bY09XWl4HZGrLhzw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@csstools/css-calc": "^3.2.1", + "@csstools/css-parser-algorithms": "^4.0.0", + "@csstools/css-syntax-patches-for-csstree": "^1.1.4", + "@csstools/css-tokenizer": "^4.0.0", + "css-tree": "^3.2.1", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.37.0", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.6", + "postcss-selector-parser": "^7.1.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "stylelint": "^16.8.2 || ^17.0.0" + } + }, + "node_modules/stylelint-use-logical": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/stylelint-use-logical/-/stylelint-use-logical-2.1.3.tgz", + "integrity": "sha512-haPkgxKre+eSqr4IZJnHwNT/9/wICykeFZIaz7rZbe4SohTHkw7vBahMOrZJZpdny/EBVHAcPH2IBeoiUcZWWw==", + "dev": true, + "license": "CC0-1.0", + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "stylelint": ">= 11 < 18" + } + }, + "node_modules/stylelint/node_modules/file-entry-cache": { + "version": "11.1.5", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.5.tgz", + "integrity": "sha512-+PFTHITI08JIGhnNpGNI8T8inUpgZfk3GNEqfT9R2zZV2iFXg3CvqzSl/uEhs7TSGujYRELEANyDvS8Fj7+S7Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "flat-cache": "^6.1.23" + } + }, + "node_modules/stylelint/node_modules/flat-cache": { + "version": "6.1.23", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.23.tgz", + "integrity": "sha512-f++BY9pTk+983xK1FLzlLpmM0i0z+jHmx3QESGkURMXujQZz1k5wzwX6hjnQ8goaD0B+sYnDK1yZ6MTyZfUaqA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cacheable": "^2.5.0", + "flatted": "^3.4.2", + "hookified": "^1.15.0" + } + }, + "node_modules/stylelint/node_modules/ignore": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.6.tgz", + "integrity": "sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/stylelint/node_modules/meow": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-14.1.0.tgz", + "integrity": "sha512-EDYo6VlmtnumlcBCbh1gLJ//9jvM/ndXHfVXIFrZVr6fGcwTUyCTFNTLCKuY3ffbK8L/+3Mzqnd58RojiZqHVw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stylelint/node_modules/postcss-safe-parser": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz", + "integrity": "sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-safe-parser" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/supports-color": { + "version": "8.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-hyperlinks": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-4.5.0.tgz", + "integrity": "sha512-ZW2OvfeCXrNTbLakPUzjQG922EeGCOteFSVoek5DKStTh898wf7zgtuFlzQN8HfZCxC3Eh02yJVrRW51hADf+w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^5.0.1", + "supports-color": "^10.2.2" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/chalk/supports-hyperlinks?sponsor=1" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-5.0.1.tgz", + "integrity": "sha512-CsNUt5x9LUdx6hnk/E2SZLsDyvfqANZSUq4+D3D8RzDJ2M+HDTIkF60ibS1vHaK55vzgiZw1bEPFG9yH7l33wA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz", + "integrity": "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "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.5.0", + "license": "MIT" + }, + "node_modules/table": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", + "integrity": "sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==", + "dev": true, + "license": "BSD-3-Clause", + "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/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "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/table/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==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "dev": true, + "license": "MIT", + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/to-buffer": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "isarray": "^2.0.5", + "safe-buffer": "^5.2.1", + "typed-array-buffer": "^1.0.3" + }, + "engines": { + "node": ">= 0.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, + "license": "MIT", + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/to-valid-identifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-valid-identifier/-/to-valid-identifier-1.0.0.tgz", + "integrity": "sha512-41wJyvKep3yT2tyPqX/4blcfybknGB4D+oETKLs7Q76UiPqRpUJK3hr1nxelyYO0PHKVzJwlu0aCeEAsGI6rpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sindresorhus/base62": "^1.0.0", + "reserved-identifiers": "^1.0.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/toastify-js": { + "version": "1.12.0", + "license": "MIT" + }, + "node_modules/tributejs": { + "version": "5.1.3", + "license": "MIT" + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "2.2.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-api-utils": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/ts-md5": { + "version": "2.0.1", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/tty-browserify": { + "version": "0.0.1", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-eslint": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.65.0.tgz", + "integrity": "sha512-/ggrHAwyjENDusvyxbuqxAC2dTnZg/Z8F+fgQtYIz+L6n/9HfSlEZcFGV/NsMNa6CkGk0xUjUAFwC0vHOflvIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.65.0", + "@typescript-eslint/parser": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0", + "@typescript-eslint/utils": "8.65.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/typescript-event-target": { + "version": "1.1.2", + "license": "MIT" + }, + "node_modules/ufo": { + "version": "1.6.4", + "license": "MIT" + }, + "node_modules/unicorn-magic": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.0.tgz", + "integrity": "sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unified": { + "version": "11.0.5", + "license": "MIT", + "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", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-find-after": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.1.0", + "license": "MIT", + "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.2", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unplugin": { + "version": "3.3.0", + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "picomatch": "^4.0.4", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "@farmfe/core": "*", + "@rspack/core": "*", + "bun-types-no-globals": "*", + "esbuild": "*", + "rolldown": "*", + "rollup": "*", + "unloader": "*", + "vite": "*", + "webpack": "*" + }, + "peerDependenciesMeta": { + "@farmfe/core": { + "optional": true + }, + "@rspack/core": { + "optional": true + }, + "bun-types-no-globals": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "rolldown": { + "optional": true + }, + "rollup": { + "optional": true + }, + "unloader": { + "optional": true + }, + "vite": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/unplugin-utils": { + "version": "0.3.2", + "license": "MIT", + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "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" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.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==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uri-js/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/url": { + "version": "0.11.4", + "dev": true, + "license": "MIT", + "dependencies": { + "punycode": "^1.4.1", + "qs": "^6.12.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/url-join": { + "version": "5.0.0", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "license": "MIT", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/util": { + "version": "0.12.5", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT" + }, + "node_modules/vfile": { + "version": "6.0.3", + "license": "MIT", + "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.3", + "license": "MIT", + "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": "7.3.6", + "devOptional": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.27.0 || ^0.28.0", + "fdir": "^6.5.0", + "picomatch": "^4.0.3", + "postcss": "^8.5.6", + "rollup": "^4.43.0", + "tinyglobby": "^0.2.15" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "lightningcss": "^1.21.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vite-plugin-css-injected-by-js": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "peerDependencies": { + "vite": ">2.0.0-0" + } + }, + "node_modules/vite-plugin-dts": { + "version": "4.5.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/api-extractor": "^7.50.1", + "@rollup/pluginutils": "^5.1.4", + "@volar/typescript": "^2.4.11", + "@vue/language-core": "2.2.0", + "compare-versions": "^6.1.1", + "debug": "^4.4.0", + "kolorist": "^1.8.0", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17" + }, + "peerDependencies": { + "typescript": "*", + "vite": "*" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/vite-plugin-node-polyfills": { + "version": "0.28.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/plugin-inject": "^5.0.5", + "node-stdlib-browser": "^1.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/davidmyersdev" + }, + "peerDependencies": { + "vite": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/vite/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz", + "integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz", + "integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz", + "integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz", + "integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz", + "integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz", + "integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz", + "integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz", + "integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz", + "integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz", + "integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz", + "integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz", + "integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz", + "integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz", + "integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz", + "integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz", + "integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.28.1", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz", + "integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz", + "integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz", + "integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz", + "integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz", + "integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz", + "integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz", + "integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz", + "integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz", + "integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.28.1", + "devOptional": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.1", + "@esbuild/android-arm": "0.28.1", + "@esbuild/android-arm64": "0.28.1", + "@esbuild/android-x64": "0.28.1", + "@esbuild/darwin-arm64": "0.28.1", + "@esbuild/darwin-x64": "0.28.1", + "@esbuild/freebsd-arm64": "0.28.1", + "@esbuild/freebsd-x64": "0.28.1", + "@esbuild/linux-arm": "0.28.1", + "@esbuild/linux-arm64": "0.28.1", + "@esbuild/linux-ia32": "0.28.1", + "@esbuild/linux-loong64": "0.28.1", + "@esbuild/linux-mips64el": "0.28.1", + "@esbuild/linux-ppc64": "0.28.1", + "@esbuild/linux-riscv64": "0.28.1", + "@esbuild/linux-s390x": "0.28.1", + "@esbuild/linux-x64": "0.28.1", + "@esbuild/netbsd-arm64": "0.28.1", + "@esbuild/netbsd-x64": "0.28.1", + "@esbuild/openbsd-arm64": "0.28.1", + "@esbuild/openbsd-x64": "0.28.1", + "@esbuild/openharmony-arm64": "0.28.1", + "@esbuild/sunos-x64": "0.28.1", + "@esbuild/win32-arm64": "0.28.1", + "@esbuild/win32-ia32": "0.28.1", + "@esbuild/win32-x64": "0.28.1" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/vscode-uri": { + "version": "3.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/vue": { + "version": "3.5.40", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.40", + "@vue/compiler-sfc": "3.5.40", + "@vue/runtime-dom": "3.5.40", + "@vue/server-renderer": "3.5.40", + "@vue/shared": "3.5.40" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-eslint-parser": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-10.4.1.tgz", + "integrity": "sha512-Gk6gRDj0n/fkRa3C3l0bBheoBckUq/Rs0F/TvMWIS6nzzx67amAViMe9CkNgsP2tXyQONvGiHQESHwFtZ3aYDA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "^4.4.0", + "eslint-scope": "^8.2.0 || ^9.0.0", + "eslint-visitor-keys": "^4.2.0 || ^5.0.0", + "espree": "^10.3.0 || ^11.0.0", + "esquery": "^1.6.0", + "semver": "^7.6.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0" + } + }, + "node_modules/vue-material-design-icons": { + "version": "5.3.1", + "license": "MIT" + }, + "node_modules/vue-resize": { + "version": "2.0.0-alpha.1", + "license": "MIT", + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/vue-router": { + "version": "5.2.0", + "license": "MIT", + "dependencies": { + "@babel/generator": "^8.0.0", + "@vue-macros/common": "^3.1.3", + "@vue/devtools-api": "^8.1.5", + "ast-walker-scope": "^0.9.0", + "chokidar": "^5.0.0", + "json5": "^2.2.3", + "local-pkg": "^1.2.1", + "magic-string": "^0.30.21", + "mlly": "^1.8.2", + "muggle-string": "^0.4.1", + "nostics": "^1.1.4", + "pathe": "^2.0.3", + "picomatch": "^4.0.5", + "scule": "^1.3.0", + "tinyglobby": "^0.2.17", + "unplugin": "^3.3.0", + "unplugin-utils": "^0.3.2", + "yaml": "^2.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "@pinia/colada": ">=0.21.2", + "@vue/compiler-sfc": "^3.5.34 || ^4.0.0", + "pinia": "^3.0.4 || ^4.0.2", + "vite": "^7.3.0 || ^8.0.0", + "vue": "^3.5.34 || ^4.0.0" + }, + "peerDependenciesMeta": { + "@pinia/colada": { + "optional": true + }, + "@vue/compiler-sfc": { + "optional": true + }, + "pinia": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/webdav": { + "version": "5.10.0", + "license": "MIT", + "dependencies": { + "@buttercup/fetch": "^0.2.1", + "base-64": "^1.0.0", + "byte-length": "^1.0.2", + "entities": "^6.0.1", + "fast-xml-parser": "^5.7.2", + "hot-patcher": "^2.0.1", + "layerr": "^3.0.0", + "md5": "^2.3.0", + "minimatch": "^9.0.9", + "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": ">=14" + } + }, + "node_modules/webdav/node_modules/balanced-match": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/webdav/node_modules/brace-expansion": { + "version": "2.1.2", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/webdav/node_modules/entities": { + "version": "6.0.1", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/webdav/node_modules/minimatch": { + "version": "9.0.9", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.2" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.2", + "license": "MIT" + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.22", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/write-file-atomic": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-7.0.1.tgz", + "integrity": "sha512-OTIk8iR8/aCRWBqvxrzxR0hgxWpnYBblY1S5hDWBQfk/VFmJwzmJgQFN3WsoUKHISv2eAwe+PpbUzyL1CKTLXg==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "signal-exit": "^4.0.1" + }, + "engines": { + "node": "^20.17.0 || >=22.9.0" + } + }, + "node_modules/xml-name-validator": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/xml-naming": { + "version": "0.1.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yaml": { + "version": "2.9.0", + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } } diff --git a/package.json b/package.json index c17cb3c..b30fc43 100644 --- a/package.json +++ b/package.json @@ -1,34 +1,45 @@ { - "name": "absence", - "version": "1.0.0", - "description": "Vacation approval workflow for Nextcloud", - "license": "AGPL-3.0-or-later", - "private": true, - "type": "module", - "scripts": { - "build": "vite --mode production build", - "dev": "vite --mode development build", - "watch": "vite --mode development build --watch" - }, - "dependencies": { - "@mdi/svg": "^7.4.47", - "@nextcloud/axios": "^2.5.1", - "@nextcloud/dialogs": "^6.1.1", - "@nextcloud/initial-state": "^2.2.0", - "@nextcloud/l10n": "^3.1.0", - "@nextcloud/router": "^3.0.1", - "@nextcloud/vue": "^9.3.1", - "date-holidays": "^3.33.0", - "vue": "^3.5.32", - "vue-material-design-icons": "^5.3.1", - "vue-router": "^4.4.5" - }, - "devDependencies": { - "@nextcloud/vite-config": "^2.5.2", - "sass": "^1.80.0", - "vite": "^7.3.2" - }, - "engines": { - "node": "^20 || ^22" - } + "name": "absence", + "version": "1.0.0", + "private": true, + "description": "Vacation approval workflow for Nextcloud", + "license": "AGPL-3.0-or-later", + "type": "module", + "scripts": { + "build": "vite --mode production build", + "dev": "vite --mode development build", + "lint": "eslint", + "lint:fix": "eslint --fix", + "stylelint": "stylelint src/**/*.scss src/**/*.vue", + "stylelint:fix": "stylelint src/**/*.scss src/**/*.vue --fix", + "watch": "vite --mode development build --watch" + }, + "browserslist": [ + "extends @nextcloud/browserslist-config" + ], + "dependencies": { + "@mdi/svg": "^7.4.47", + "@nextcloud/axios": "^2.6.0", + "@nextcloud/dialogs": "^7.4.1", + "@nextcloud/initial-state": "^3.0.0", + "@nextcloud/l10n": "^3.4.1", + "@nextcloud/router": "^3.1.0", + "@nextcloud/vue": "^9.9.0", + "date-holidays": "^3.33.0", + "vue": "^3.5.40", + "vue-material-design-icons": "^5.3.1", + "vue-router": "^5.2.0" + }, + "devDependencies": { + "@nextcloud/browserslist-config": "^3.1.2", + "@nextcloud/eslint-config": "^9.0.1", + "@nextcloud/stylelint-config": "^3.2.2", + "@nextcloud/vite-config": "^2.5.2", + "sass": "^1.80.0", + "vite": "^7.3.2" + }, + "engines": { + "node": "^24.0.0", + "npm": "^11.3.0" + } } From 1def39804ed6b1465941eed481a3e06957469ca6 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 24 Jul 2026 21:48:29 +0200 Subject: [PATCH 09/16] chore(eslint): Apply autofixes Signed-off-by: Joas Schilling --- src/App.vue | 38 ++++--- src/components/BalanceCard.vue | 2 + src/components/BalanceRing.vue | 18 +++- src/components/BarChart.vue | 30 +++++- src/components/CoveragePanel.vue | 17 ++- src/components/DonutChart.vue | 25 ++++- src/components/LeaveTypeChip.vue | 1 + src/components/LineChart.vue | 33 +++++- src/components/PalmIllustration.vue | 33 +++++- src/components/RequestDialog.vue | 77 +++++++++++--- src/components/RequestListItem.vue | 15 ++- src/components/RequestSidebar.vue | 133 +++++++++++++++++------- src/components/RequestStepper.vue | 33 +++--- src/components/SkeletonList.vue | 1 + src/components/StatusChip.vue | 1 + src/components/TeamTimeline.vue | 65 +++++++++--- src/main.js | 4 +- src/personal-settings.js | 2 +- src/router.js | 6 +- src/store.js | 50 +++++---- src/utils/dates.js | 31 +++++- src/views/Approvals.vue | 37 +++++-- src/views/MyLeave.vue | 56 +++++++--- src/views/Team.vue | 4 +- src/views/hr/HrBalances.vue | 102 +++++++++++++----- src/views/hr/HrExports.vue | 19 +++- src/views/hr/HrStatistics.vue | 23 ++-- src/views/hr/HrWhosOff.vue | 4 +- src/views/settings/PersonalSettings.vue | 52 ++++++--- 29 files changed, 679 insertions(+), 233 deletions(-) diff --git a/src/App.vue b/src/App.vue index 708171f..f9c0dbd 100644 --- a/src/App.vue +++ b/src/App.vue @@ -3,7 +3,7 @@ - SPDX-License-Identifier: AGPL-3.0-or-later --> - - - @@ -99,15 +103,15 @@ import NcAppNavigationItem from '@nextcloud/vue/components/NcAppNavigationItem' import NcAppNavigationNew from '@nextcloud/vue/components/NcAppNavigationNew' import NcContent from '@nextcloud/vue/components/NcContent' import NcCounterBubble from '@nextcloud/vue/components/NcCounterBubble' -import Plus from 'vue-material-design-icons/Plus.vue' -import CalendarAccountOutline from 'vue-material-design-icons/CalendarAccountOutline.vue' -import ClipboardCheck from 'vue-material-design-icons/ClipboardCheck.vue' import AccountGroup from 'vue-material-design-icons/AccountGroup.vue' -import ScaleBalance from 'vue-material-design-icons/ScaleBalance.vue' -import ChartBar from 'vue-material-design-icons/ChartBar.vue' +import CalendarAccountOutline from 'vue-material-design-icons/CalendarAccountOutline.vue' import CalendarMonth from 'vue-material-design-icons/CalendarMonth.vue' -import Download from 'vue-material-design-icons/Download.vue' +import ChartBar from 'vue-material-design-icons/ChartBar.vue' +import ClipboardCheck from 'vue-material-design-icons/ClipboardCheck.vue' import ClipboardPlusOutline from 'vue-material-design-icons/ClipboardPlusOutline.vue' +import Download from 'vue-material-design-icons/Download.vue' +import Plus from 'vue-material-design-icons/Plus.vue' +import ScaleBalance from 'vue-material-design-icons/ScaleBalance.vue' import RequestDialog from './components/RequestDialog.vue' import RequestSidebar from './components/RequestSidebar.vue' import { store } from './store.js' @@ -154,6 +158,7 @@ export default { session() { return store.session }, + pendingCount() { return store.session.pendingApprovals || 0 }, @@ -179,25 +184,30 @@ export default { this.recordMode = false this.showDialog = true }, + openRecord() { this.editRequest = null this.recordMode = true this.showDialog = true }, + onOpenEditEvent(e) { this.openEditRequest(e.detail) }, + openEditRequest(request) { this.editRequest = request this.recordMode = false this.showDialog = true store.select(null) }, + closeDialog() { this.showDialog = false this.editRequest = null this.recordMode = false }, + onChanged() { this.closeDialog() // Close the detail sidebar so it can't show a stale (pre-decision) state. diff --git a/src/components/BalanceCard.vue b/src/components/BalanceCard.vue index 4d4b960..ee0d3f1 100644 --- a/src/components/BalanceCard.vue +++ b/src/components/BalanceCard.vue @@ -51,11 +51,13 @@ export default { props: { row: { type: Object, required: true }, }, + methods: { t, format(v) { return Number(v).toLocaleString(undefined, { maximumFractionDigits: 1 }) }, + signed(v) { const n = Number(v) return (n >= 0 ? '+' : '−') + this.format(Math.abs(n)) diff --git a/src/components/BalanceRing.vue b/src/components/BalanceRing.vue index 396acde..4eb81ae 100644 --- a/src/components/BalanceRing.vue +++ b/src/components/BalanceRing.vue @@ -7,8 +7,13 @@ diff --git a/src/components/DonutChart.vue b/src/components/DonutChart.vue index 8ec9f7c..0ece713 100644 --- a/src/components/DonutChart.vue +++ b/src/components/DonutChart.vue @@ -6,11 +6,22 @@ --> diff --git a/src/components/SkeletonList.vue b/src/components/SkeletonList.vue index 23065dd..fa9f644 100644 --- a/src/components/SkeletonList.vue +++ b/src/components/SkeletonList.vue @@ -25,6 +25,7 @@ export default { props: { rows: { type: Number, default: 4 }, }, + methods: { t }, } diff --git a/src/components/StatusChip.vue b/src/components/StatusChip.vue index e9fd315..022afc1 100644 --- a/src/components/StatusChip.vue +++ b/src/components/StatusChip.vue @@ -17,6 +17,7 @@ export default { props: { status: { type: String, required: true }, }, + computed: { meta() { return statusMeta(this.status) diff --git a/src/components/TeamTimeline.vue b/src/components/TeamTimeline.vue index 9f3abb6..20d7b18 100644 --- a/src/components/TeamTimeline.vue +++ b/src/components/TeamTimeline.vue @@ -8,14 +8,20 @@ diff --git a/src/views/hr/HrStatistics.vue b/src/views/hr/HrStatistics.vue index e80cf05..946d854 100644 --- a/src/views/hr/HrStatistics.vue +++ b/src/views/hr/HrStatistics.vue @@ -5,7 +5,9 @@ \n\n","\n\n","\n\n","\n\n","\n\n","\n\n","import '../assets/NcTextArea-BxGe3Lqn.css';\nimport { defineComponent, useModel, useAttrs, useTemplateRef, computed, watch, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, mergeProps, toDisplayString, createCommentVNode, createBlock, createTextVNode, mergeModels } from \"vue\";\nimport { d as mdiCheck, j as mdiAlertCircleOutline } from \"./mdi-CpchYUUV.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { a as isLegacy } from \"./legacy-BoqDmOCa.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _hoisted_1 = { class: \"textarea__main-wrapper\" };\nconst _hoisted_2 = [\"id\", \"aria-describedby\", \"disabled\", \"placeholder\", \"value\"];\nconst _hoisted_3 = [\"for\"];\nconst _hoisted_4 = [\"id\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...{ inheritAttrs: false },\n __name: \"NcTextArea\",\n props: /* @__PURE__ */ mergeModels({\n disabled: { type: Boolean },\n error: { type: Boolean },\n helperText: { default: void 0 },\n id: { default: () => createElementId() },\n inputClass: { default: \"\" },\n label: { default: void 0 },\n labelOutside: { type: Boolean },\n placeholder: { default: void 0 },\n resize: { default: \"both\" },\n success: { type: Boolean }\n }, {\n \"modelValue\": { required: true },\n \"modelModifiers\": {}\n }),\n emits: [\"update:modelValue\"],\n setup(__props, { expose: __expose }) {\n const modelValue = useModel(__props, \"modelValue\");\n const props = __props;\n __expose({\n focus,\n select\n });\n const attrs = useAttrs();\n const textAreaElement = useTemplateRef(\"input\");\n const internalPlaceholder = computed(() => props.placeholder || (isLegacy ? props.label : void 0));\n watch(() => props.labelOutside, () => {\n if (!props.labelOutside && !props.label) {\n logger.warn(\"[NcTextArea] You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.\");\n }\n });\n const ariaDescribedby = computed(() => {\n const ariaDescribedby2 = [];\n if (props.helperText) {\n ariaDescribedby2.push(`${props.id}-helper-text`);\n }\n if (typeof attrs[\"aria-describedby\"] === \"string\") {\n ariaDescribedby2.push(attrs[\"aria-describedby\"]);\n }\n return ariaDescribedby2.join(\" \") || void 0;\n });\n function handleInput(event) {\n const { value } = event.target;\n modelValue.value = value;\n }\n function focus(options) {\n textAreaElement.value.focus(options);\n }\n function select() {\n textAreaElement.value.select();\n }\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n class: normalizeClass([\"textarea\", [\n _ctx.$attrs.class,\n {\n \"textarea--disabled\": __props.disabled,\n \"textarea--legacy\": unref(isLegacy)\n }\n ]])\n }, [\n createElementVNode(\"div\", _hoisted_1, [\n createElementVNode(\"textarea\", mergeProps({ ..._ctx.$attrs, class: void 0 }, {\n id: __props.id,\n ref: \"input\",\n \"aria-describedby\": ariaDescribedby.value,\n \"aria-live\": \"polite\",\n class: [\"textarea__input\", [\n __props.inputClass,\n {\n \"textarea__input--label-outside\": __props.labelOutside,\n \"textarea__input--legacy\": unref(isLegacy),\n \"textarea__input--success\": __props.success,\n \"textarea__input--error\": __props.error\n }\n ]],\n disabled: __props.disabled,\n placeholder: internalPlaceholder.value,\n style: { resize: __props.resize },\n value: modelValue.value,\n onInput: handleInput\n }), null, 16, _hoisted_2),\n !__props.labelOutside ? (openBlock(), createElementBlock(\"label\", {\n key: 0,\n class: \"textarea__label\",\n for: __props.id\n }, toDisplayString(__props.label), 9, _hoisted_3)) : createCommentVNode(\"\", true)\n ]),\n __props.helperText ? (openBlock(), createElementBlock(\"p\", {\n key: 0,\n id: `${__props.id}-helper-text`,\n class: normalizeClass([\"textarea__helper-text-message\", {\n \"textarea__helper-text-message--error\": __props.error,\n \"textarea__helper-text-message--success\": __props.success\n }])\n }, [\n __props.success ? (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 0,\n class: \"textarea__helper-text-message__icon\",\n path: unref(mdiCheck),\n inline: \"\"\n }, null, 8, [\"path\"])) : __props.error ? (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 1,\n class: \"textarea__helper-text-message__icon\",\n path: unref(mdiAlertCircleOutline),\n inline: \"\"\n }, null, 8, [\"path\"])) : createCommentVNode(\"\", true),\n createTextVNode(\" \" + toDisplayString(__props.helperText), 1)\n ], 10, _hoisted_4)) : createCommentVNode(\"\", true)\n ], 2);\n };\n }\n});\nconst NcTextArea = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-d327fb49\"]]);\nexport {\n NcTextArea as N\n};\n//# sourceMappingURL=NcTextArea-Dxzj4zdb.mjs.map\n","\n\n","\n\n\n\n\n\n","const directive = {\n mounted(el) {\n el.focus();\n }\n};\nexport {\n directive as default\n};\n//# sourceMappingURL=index.mjs.map\n","// THIS FILE IS AUTOMATICALLY GENERATED DO NOT EDIT DIRECTLY\n// See update-tlds.js for encoding/decoding format\n// https://data.iana.org/TLD/tlds-alpha-by-domain.txt\nconst encodedTlds = 'aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2odyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3nd0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rck0msd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0axi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2oodside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2';\n// Internationalized domain names containing non-ASCII\nconst encodedUtlds = 'ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2';\n\n/**\n * Finite State Machine generation utilities\n */\n\n/**\n * @template T\n * @typedef {{ [group: string]: T[] }} Collections\n */\n\n/**\n * @typedef {{ [group: string]: true }} Flags\n */\n\n// Keys in scanner Collections instances\nconst numeric = 'numeric';\nconst ascii = 'ascii';\nconst alpha = 'alpha';\nconst asciinumeric = 'asciinumeric';\nconst alphanumeric = 'alphanumeric';\nconst domain = 'domain';\nconst emoji = 'emoji';\nconst scheme = 'scheme';\nconst slashscheme = 'slashscheme';\nconst whitespace = 'whitespace';\n\n/**\n * @template T\n * @param {string} name\n * @param {Collections} groups to register in\n * @returns {T[]} Current list of tokens in the given collection\n */\nfunction registerGroup(name, groups) {\n if (!(name in groups)) {\n groups[name] = [];\n }\n return groups[name];\n}\n\n/**\n * @template T\n * @param {T} t token to add\n * @param {Collections} groups\n * @param {Flags} flags\n */\nfunction addToGroups(t, flags, groups) {\n if (flags[numeric]) {\n flags[asciinumeric] = true;\n flags[alphanumeric] = true;\n }\n if (flags[ascii]) {\n flags[asciinumeric] = true;\n flags[alpha] = true;\n }\n if (flags[asciinumeric]) {\n flags[alphanumeric] = true;\n }\n if (flags[alpha]) {\n flags[alphanumeric] = true;\n }\n if (flags[alphanumeric]) {\n flags[domain] = true;\n }\n if (flags[emoji]) {\n flags[domain] = true;\n }\n for (const k in flags) {\n const group = registerGroup(k, groups);\n if (group.indexOf(t) < 0) {\n group.push(t);\n }\n }\n}\n\n/**\n * @template T\n * @param {T} t token to check\n * @param {Collections} groups\n * @returns {Flags} group flags that contain this token\n */\nfunction flagsForToken(t, groups) {\n const result = {};\n for (const c in groups) {\n if (groups[c].indexOf(t) >= 0) {\n result[c] = true;\n }\n }\n return result;\n}\n\n/**\n * @template T\n * @typedef {null | T } Transition\n */\n\n/**\n * Define a basic state machine state. j is the list of character transitions,\n * jr is the list of regex-match transitions, jd is the default state to\n * transition to t is the accepting token type, if any. If this is the terminal\n * state, then it does not emit a token.\n *\n * The template type T represents the type of the token this state accepts. This\n * should be a string (such as of the token exports in `text.js`) or a\n * MultiToken subclass (from `multi.js`)\n *\n * @template T\n * @param {T} [token] Token that this state emits\n */\nfunction State(token = null) {\n // this.n = null; // DEBUG: State name\n /** @type {{ [input: string]: State }} j */\n this.j = {}; // IMPLEMENTATION 1\n // this.j = []; // IMPLEMENTATION 2\n /** @type {[RegExp, State][]} jr */\n this.jr = [];\n /** @type {?State} jd */\n this.jd = null;\n /** @type {?T} t */\n this.t = token;\n}\n\n/**\n * Scanner token groups\n * @type Collections\n */\nState.groups = {};\nState.prototype = {\n accepts() {\n return !!this.t;\n },\n /**\n * Follow an existing transition from the given input to the next state.\n * Does not mutate.\n * @param {string} input character or token type to transition on\n * @returns {?State} the next state, if any\n */\n go(input) {\n const state = this;\n const nextState = state.j[input];\n if (nextState) {\n return nextState;\n }\n for (let i = 0; i < state.jr.length; i++) {\n const regex = state.jr[i][0];\n const nextState = state.jr[i][1]; // note: might be empty to prevent default jump\n if (nextState && regex.test(input)) {\n return nextState;\n }\n }\n // Nowhere left to jump! Return default, if any\n return state.jd;\n },\n /**\n * Whether the state has a transition for the given input. Set the second\n * argument to true to only look for an exact match (and not a default or\n * regular-expression-based transition)\n * @param {string} input\n * @param {boolean} exactOnly\n */\n has(input, exactOnly = false) {\n return exactOnly ? input in this.j : !!this.go(input);\n },\n /**\n * Short for \"transition all\"; create a transition from the array of items\n * in the given list to the same final resulting state.\n * @param {string | string[]} inputs Group of inputs to transition on\n * @param {Transition | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of token groups\n */\n ta(inputs, next, flags, groups) {\n for (let i = 0; i < inputs.length; i++) {\n this.tt(inputs[i], next, flags, groups);\n }\n },\n /**\n * Short for \"take regexp transition\"; defines a transition for this state\n * when it encounters a token which matches the given regular expression\n * @param {RegExp} regexp Regular expression transition (populate first)\n * @param {T | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of token groups\n * @returns {State} taken after the given input\n */\n tr(regexp, next, flags, groups) {\n groups = groups || State.groups;\n let nextState;\n if (next && next.j) {\n nextState = next;\n } else {\n // Token with maybe token groups\n nextState = new State(next);\n if (flags && groups) {\n addToGroups(next, flags, groups);\n }\n }\n this.jr.push([regexp, nextState]);\n return nextState;\n },\n /**\n * Short for \"take transitions\", will take as many sequential transitions as\n * the length of the given input and returns the\n * resulting final state.\n * @param {string | string[]} input\n * @param {T | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of token groups\n * @returns {State} taken after the given input\n */\n ts(input, next, flags, groups) {\n let state = this;\n const len = input.length;\n if (!len) {\n return state;\n }\n for (let i = 0; i < len - 1; i++) {\n state = state.tt(input[i]);\n }\n return state.tt(input[len - 1], next, flags, groups);\n },\n /**\n * Short for \"take transition\", this is a method for building/working with\n * state machines.\n *\n * If a state already exists for the given input, returns it.\n *\n * If a token is specified, that state will emit that token when reached by\n * the linkify engine.\n *\n * If no state exists, it will be initialized with some default transitions\n * that resemble existing default transitions.\n *\n * If a state is given for the second argument, that state will be\n * transitioned to on the given input regardless of what that input\n * previously did.\n *\n * Specify a token group flags to define groups that this token belongs to.\n * The token will be added to corresponding entires in the given groups\n * object.\n *\n * @param {string} input character, token type to transition on\n * @param {T | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of groups\n * @returns {State} taken after the given input\n */\n tt(input, next, flags, groups) {\n groups = groups || State.groups;\n const state = this;\n\n // Check if existing state given, just a basic transition\n if (next && next.j) {\n state.j[input] = next;\n return next;\n }\n const t = next;\n\n // Take the transition with the usual default mechanisms and use that as\n // a template for creating the next state\n let nextState,\n templateState = state.go(input);\n if (templateState) {\n nextState = new State();\n Object.assign(nextState.j, templateState.j);\n nextState.jr.push.apply(nextState.jr, templateState.jr);\n nextState.jd = templateState.jd;\n nextState.t = templateState.t;\n } else {\n nextState = new State();\n }\n if (t) {\n // Ensure newly token is in the same groups as the old token\n if (groups) {\n if (nextState.t && typeof nextState.t === 'string') {\n const allFlags = Object.assign(flagsForToken(nextState.t, groups), flags);\n addToGroups(t, allFlags, groups);\n } else if (flags) {\n addToGroups(t, flags, groups);\n }\n }\n nextState.t = t; // overwrite anything that was previously there\n }\n state.j[input] = nextState;\n return nextState;\n }\n};\n\n// Helper functions to improve minification (not exported outside linkifyjs module)\n\n/**\n * @template T\n * @param {State} state\n * @param {string | string[]} input\n * @param {Flags} [flags]\n * @param {Collections} [groups]\n */\nconst ta = (state, input, next, flags, groups) => state.ta(input, next, flags, groups);\n\n/**\n * @template T\n * @param {State} state\n * @param {RegExp} regexp\n * @param {T | State} [next]\n * @param {Flags} [flags]\n * @param {Collections} [groups]\n */\nconst tr = (state, regexp, next, flags, groups) => state.tr(regexp, next, flags, groups);\n\n/**\n * @template T\n * @param {State} state\n * @param {string | string[]} input\n * @param {T | State} [next]\n * @param {Flags} [flags]\n * @param {Collections} [groups]\n */\nconst ts = (state, input, next, flags, groups) => state.ts(input, next, flags, groups);\n\n/**\n * @template T\n * @param {State} state\n * @param {string} input\n * @param {T | State} [next]\n * @param {Collections} [groups]\n * @param {Flags} [flags]\n */\nconst tt = (state, input, next, flags, groups) => state.tt(input, next, flags, groups);\n\n/******************************************************************************\nText Tokens\nIdentifiers for token outputs from the regexp scanner\n******************************************************************************/\n\n// A valid web domain token\nconst WORD = 'WORD'; // only contains a-z\nconst UWORD = 'UWORD'; // contains letters other than a-z, used for IDN\nconst ASCIINUMERICAL = 'ASCIINUMERICAL'; // contains a-z, 0-9\nconst ALPHANUMERICAL = 'ALPHANUMERICAL'; // contains numbers and letters other than a-z, used for IDN\n\n// Special case of word\nconst LOCALHOST = 'LOCALHOST';\n\n// Valid top-level domain, special case of WORD (see tlds.js)\nconst TLD = 'TLD';\n\n// Valid IDN TLD, special case of UWORD (see tlds.js)\nconst UTLD = 'UTLD';\n\n// The scheme portion of a web URI protocol. Supported types include: `mailto`,\n// `file`, and user-defined custom protocols. Limited to schemes that contain\n// only letters\nconst SCHEME = 'SCHEME';\n\n// Similar to SCHEME, except makes distinction for schemes that must always be\n// followed by `://`, not just `:`. Supported types include `http`, `https`,\n// `ftp`, `ftps`\nconst SLASH_SCHEME = 'SLASH_SCHEME';\n\n// Any sequence of digits 0-9\nconst NUM = 'NUM';\n\n// Any number of consecutive whitespace characters that are not newline\nconst WS = 'WS';\n\n// New line (unix style)\nconst NL = 'NL'; // \\n\n\n// Opening/closing bracket classes\n// TODO: Rename OPEN -> LEFT and CLOSE -> RIGHT in v5 to fit with Unicode names\n// Also rename angle brackes to LESSTHAN and GREATER THAN\nconst OPENBRACE = 'OPENBRACE'; // {\nconst CLOSEBRACE = 'CLOSEBRACE'; // }\nconst OPENBRACKET = 'OPENBRACKET'; // [\nconst CLOSEBRACKET = 'CLOSEBRACKET'; // ]\nconst OPENPAREN = 'OPENPAREN'; // (\nconst CLOSEPAREN = 'CLOSEPAREN'; // )\nconst OPENANGLEBRACKET = 'OPENANGLEBRACKET'; // <\nconst CLOSEANGLEBRACKET = 'CLOSEANGLEBRACKET'; // >\nconst FULLWIDTHLEFTPAREN = 'FULLWIDTHLEFTPAREN'; // (\nconst FULLWIDTHRIGHTPAREN = 'FULLWIDTHRIGHTPAREN'; // )\nconst LEFTCORNERBRACKET = 'LEFTCORNERBRACKET'; // 「\nconst RIGHTCORNERBRACKET = 'RIGHTCORNERBRACKET'; // 」\nconst LEFTWHITECORNERBRACKET = 'LEFTWHITECORNERBRACKET'; // 『\nconst RIGHTWHITECORNERBRACKET = 'RIGHTWHITECORNERBRACKET'; // 』\nconst FULLWIDTHLESSTHAN = 'FULLWIDTHLESSTHAN'; // <\nconst FULLWIDTHGREATERTHAN = 'FULLWIDTHGREATERTHAN'; // >\n\n// Various symbols\nconst AMPERSAND = 'AMPERSAND'; // &\nconst APOSTROPHE = 'APOSTROPHE'; // '\nconst ASTERISK = 'ASTERISK'; // *\nconst AT = 'AT'; // @\nconst BACKSLASH = 'BACKSLASH'; // \\\nconst BACKTICK = 'BACKTICK'; // `\nconst CARET = 'CARET'; // ^\nconst COLON = 'COLON'; // :\nconst COMMA = 'COMMA'; // ,\nconst DOLLAR = 'DOLLAR'; // $\nconst DOT = 'DOT'; // .\nconst EQUALS = 'EQUALS'; // =\nconst EXCLAMATION = 'EXCLAMATION'; // !\nconst HYPHEN = 'HYPHEN'; // -\nconst PERCENT = 'PERCENT'; // %\nconst PIPE = 'PIPE'; // |\nconst PLUS = 'PLUS'; // +\nconst POUND = 'POUND'; // #\nconst QUERY = 'QUERY'; // ?\nconst QUOTE = 'QUOTE'; // \"\nconst FULLWIDTHMIDDLEDOT = 'FULLWIDTHMIDDLEDOT'; // ・\n\nconst SEMI = 'SEMI'; // ;\nconst SLASH = 'SLASH'; // /\nconst TILDE = 'TILDE'; // ~\nconst UNDERSCORE = 'UNDERSCORE'; // _\n\n// Emoji symbol\nconst EMOJI$1 = 'EMOJI';\n\n// Default token - anything that is not one of the above\nconst SYM = 'SYM';\n\nvar tk = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tALPHANUMERICAL: ALPHANUMERICAL,\n\tAMPERSAND: AMPERSAND,\n\tAPOSTROPHE: APOSTROPHE,\n\tASCIINUMERICAL: ASCIINUMERICAL,\n\tASTERISK: ASTERISK,\n\tAT: AT,\n\tBACKSLASH: BACKSLASH,\n\tBACKTICK: BACKTICK,\n\tCARET: CARET,\n\tCLOSEANGLEBRACKET: CLOSEANGLEBRACKET,\n\tCLOSEBRACE: CLOSEBRACE,\n\tCLOSEBRACKET: CLOSEBRACKET,\n\tCLOSEPAREN: CLOSEPAREN,\n\tCOLON: COLON,\n\tCOMMA: COMMA,\n\tDOLLAR: DOLLAR,\n\tDOT: DOT,\n\tEMOJI: EMOJI$1,\n\tEQUALS: EQUALS,\n\tEXCLAMATION: EXCLAMATION,\n\tFULLWIDTHGREATERTHAN: FULLWIDTHGREATERTHAN,\n\tFULLWIDTHLEFTPAREN: FULLWIDTHLEFTPAREN,\n\tFULLWIDTHLESSTHAN: FULLWIDTHLESSTHAN,\n\tFULLWIDTHMIDDLEDOT: FULLWIDTHMIDDLEDOT,\n\tFULLWIDTHRIGHTPAREN: FULLWIDTHRIGHTPAREN,\n\tHYPHEN: HYPHEN,\n\tLEFTCORNERBRACKET: LEFTCORNERBRACKET,\n\tLEFTWHITECORNERBRACKET: LEFTWHITECORNERBRACKET,\n\tLOCALHOST: LOCALHOST,\n\tNL: NL,\n\tNUM: NUM,\n\tOPENANGLEBRACKET: OPENANGLEBRACKET,\n\tOPENBRACE: OPENBRACE,\n\tOPENBRACKET: OPENBRACKET,\n\tOPENPAREN: OPENPAREN,\n\tPERCENT: PERCENT,\n\tPIPE: PIPE,\n\tPLUS: PLUS,\n\tPOUND: POUND,\n\tQUERY: QUERY,\n\tQUOTE: QUOTE,\n\tRIGHTCORNERBRACKET: RIGHTCORNERBRACKET,\n\tRIGHTWHITECORNERBRACKET: RIGHTWHITECORNERBRACKET,\n\tSCHEME: SCHEME,\n\tSEMI: SEMI,\n\tSLASH: SLASH,\n\tSLASH_SCHEME: SLASH_SCHEME,\n\tSYM: SYM,\n\tTILDE: TILDE,\n\tTLD: TLD,\n\tUNDERSCORE: UNDERSCORE,\n\tUTLD: UTLD,\n\tUWORD: UWORD,\n\tWORD: WORD,\n\tWS: WS\n});\n\n// Note that these two Unicode ones expand into a really big one with Babel\nconst ASCII_LETTER = /[a-z]/;\nconst LETTER = /\\p{L}/u; // Any Unicode character with letter data type\nconst EMOJI = /\\p{Emoji}/u; // Any Unicode emoji character\nconst EMOJI_VARIATION$1 = /\\ufe0f/;\nconst DIGIT = /\\d/;\nconst SPACE = /\\s/;\n\nvar regexp = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tASCII_LETTER: ASCII_LETTER,\n\tDIGIT: DIGIT,\n\tEMOJI: EMOJI,\n\tEMOJI_VARIATION: EMOJI_VARIATION$1,\n\tLETTER: LETTER,\n\tSPACE: SPACE\n});\n\n/**\n\tThe scanner provides an interface that takes a string of text as input, and\n\toutputs an array of tokens instances that can be used for easy URL parsing.\n*/\n\nconst CR = '\\r'; // carriage-return character\nconst LF = '\\n'; // line-feed character\nconst EMOJI_VARIATION = '\\ufe0f'; // Variation selector, follows heart and others\nconst EMOJI_JOINER = '\\u200d'; // zero-width joiner\nconst OBJECT_REPLACEMENT = '\\ufffc'; // whitespace placeholder that sometimes appears in rich text editors\n\nlet tlds = null,\n utlds = null; // don't change so only have to be computed once\n\n/**\n * Scanner output token:\n * - `t` is the token name (e.g., 'NUM', 'EMOJI', 'TLD')\n * - `v` is the value of the token (e.g., '123', '❤️', 'com')\n * - `s` is the start index of the token in the original string\n * - `e` is the end index of the token in the original string\n * @typedef {{t: string, v: string, s: number, e: number}} Token\n */\n\n/**\n * @template T\n * @typedef {{ [collection: string]: T[] }} Collections\n */\n\n/**\n * Initialize the scanner character-based state machine for the given start\n * state\n * @param {[string, boolean][]} customSchemes List of custom schemes, where each\n * item is a length-2 tuple with the first element set to the string scheme, and\n * the second element set to `true` if the `://` after the scheme is optional\n */\nfunction init$2(customSchemes = []) {\n // Frequently used states (name argument removed during minification)\n /** @type Collections */\n const groups = {}; // of tokens\n State.groups = groups;\n /** @type State */\n const Start = new State();\n if (tlds == null) {\n tlds = decodeTlds(encodedTlds);\n }\n if (utlds == null) {\n utlds = decodeTlds(encodedUtlds);\n }\n\n // States for special URL symbols that accept immediately after start\n tt(Start, \"'\", APOSTROPHE);\n tt(Start, '{', OPENBRACE);\n tt(Start, '}', CLOSEBRACE);\n tt(Start, '[', OPENBRACKET);\n tt(Start, ']', CLOSEBRACKET);\n tt(Start, '(', OPENPAREN);\n tt(Start, ')', CLOSEPAREN);\n tt(Start, '<', OPENANGLEBRACKET);\n tt(Start, '>', CLOSEANGLEBRACKET);\n tt(Start, '(', FULLWIDTHLEFTPAREN);\n tt(Start, ')', FULLWIDTHRIGHTPAREN);\n tt(Start, '「', LEFTCORNERBRACKET);\n tt(Start, '」', RIGHTCORNERBRACKET);\n tt(Start, '『', LEFTWHITECORNERBRACKET);\n tt(Start, '』', RIGHTWHITECORNERBRACKET);\n tt(Start, '<', FULLWIDTHLESSTHAN);\n tt(Start, '>', FULLWIDTHGREATERTHAN);\n tt(Start, '&', AMPERSAND);\n tt(Start, '*', ASTERISK);\n tt(Start, '@', AT);\n tt(Start, '`', BACKTICK);\n tt(Start, '^', CARET);\n tt(Start, ':', COLON);\n tt(Start, ',', COMMA);\n tt(Start, '$', DOLLAR);\n tt(Start, '.', DOT);\n tt(Start, '=', EQUALS);\n tt(Start, '!', EXCLAMATION);\n tt(Start, '-', HYPHEN);\n tt(Start, '%', PERCENT);\n tt(Start, '|', PIPE);\n tt(Start, '+', PLUS);\n tt(Start, '#', POUND);\n tt(Start, '?', QUERY);\n tt(Start, '\"', QUOTE);\n tt(Start, '/', SLASH);\n tt(Start, ';', SEMI);\n tt(Start, '~', TILDE);\n tt(Start, '_', UNDERSCORE);\n tt(Start, '\\\\', BACKSLASH);\n tt(Start, '・', FULLWIDTHMIDDLEDOT);\n const Num = tr(Start, DIGIT, NUM, {\n [numeric]: true\n });\n tr(Num, DIGIT, Num);\n const Asciinumeric = tr(Num, ASCII_LETTER, ASCIINUMERICAL, {\n [asciinumeric]: true\n });\n const Alphanumeric = tr(Num, LETTER, ALPHANUMERICAL, {\n [alphanumeric]: true\n });\n\n // State which emits a word token\n const Word = tr(Start, ASCII_LETTER, WORD, {\n [ascii]: true\n });\n tr(Word, DIGIT, Asciinumeric);\n tr(Word, ASCII_LETTER, Word);\n tr(Asciinumeric, DIGIT, Asciinumeric);\n tr(Asciinumeric, ASCII_LETTER, Asciinumeric);\n\n // Same as previous, but specific to non-fsm.ascii alphabet words\n const UWord = tr(Start, LETTER, UWORD, {\n [alpha]: true\n });\n tr(UWord, ASCII_LETTER); // Non-accepting\n tr(UWord, DIGIT, Alphanumeric);\n tr(UWord, LETTER, UWord);\n tr(Alphanumeric, DIGIT, Alphanumeric);\n tr(Alphanumeric, ASCII_LETTER); // Non-accepting\n tr(Alphanumeric, LETTER, Alphanumeric); // Non-accepting\n\n // Whitespace jumps\n // Tokens of only non-newline whitespace are arbitrarily long\n // If any whitespace except newline, more whitespace!\n const Nl = tt(Start, LF, NL, {\n [whitespace]: true\n });\n const Cr = tt(Start, CR, WS, {\n [whitespace]: true\n });\n const Ws = tr(Start, SPACE, WS, {\n [whitespace]: true\n });\n tt(Start, OBJECT_REPLACEMENT, Ws);\n tt(Cr, LF, Nl); // \\r\\n\n tt(Cr, OBJECT_REPLACEMENT, Ws);\n tr(Cr, SPACE, Ws);\n tt(Ws, CR); // non-accepting state to avoid mixing whitespaces\n tt(Ws, LF); // non-accepting state to avoid mixing whitespaces\n tr(Ws, SPACE, Ws);\n tt(Ws, OBJECT_REPLACEMENT, Ws);\n\n // Emoji tokens. They are not grouped by the scanner except in cases where a\n // zero-width joiner is present\n const Emoji = tr(Start, EMOJI, EMOJI$1, {\n [emoji]: true\n });\n tt(Emoji, '#'); // no transition, emoji regex seems to match #\n tr(Emoji, EMOJI, Emoji);\n tt(Emoji, EMOJI_VARIATION, Emoji);\n // tt(Start, EMOJI_VARIATION, Emoji); // This one is sketchy\n\n const EmojiJoiner = tt(Emoji, EMOJI_JOINER);\n tt(EmojiJoiner, '#');\n tr(EmojiJoiner, EMOJI, Emoji);\n // tt(EmojiJoiner, EMOJI_VARIATION, Emoji); // also sketchy\n\n // Generates states for top-level domains\n // Note that this is most accurate when tlds are in alphabetical order\n const wordjr = [[ASCII_LETTER, Word], [DIGIT, Asciinumeric]];\n const uwordjr = [[ASCII_LETTER, null], [LETTER, UWord], [DIGIT, Alphanumeric]];\n for (let i = 0; i < tlds.length; i++) {\n fastts(Start, tlds[i], TLD, WORD, wordjr);\n }\n for (let i = 0; i < utlds.length; i++) {\n fastts(Start, utlds[i], UTLD, UWORD, uwordjr);\n }\n addToGroups(TLD, {\n tld: true,\n ascii: true\n }, groups);\n addToGroups(UTLD, {\n utld: true,\n alpha: true\n }, groups);\n\n // Collect the states generated by different protocols. NOTE: If any new TLDs\n // get added that are also protocols, set the token to be the same as the\n // protocol to ensure parsing works as expected.\n fastts(Start, 'file', SCHEME, WORD, wordjr);\n fastts(Start, 'mailto', SCHEME, WORD, wordjr);\n fastts(Start, 'http', SLASH_SCHEME, WORD, wordjr);\n fastts(Start, 'https', SLASH_SCHEME, WORD, wordjr);\n fastts(Start, 'ftp', SLASH_SCHEME, WORD, wordjr);\n fastts(Start, 'ftps', SLASH_SCHEME, WORD, wordjr);\n addToGroups(SCHEME, {\n scheme: true,\n ascii: true\n }, groups);\n addToGroups(SLASH_SCHEME, {\n slashscheme: true,\n ascii: true\n }, groups);\n\n // Register custom schemes. Assumes each scheme is asciinumeric with hyphens\n customSchemes = customSchemes.sort((a, b) => a[0] > b[0] ? 1 : -1);\n for (let i = 0; i < customSchemes.length; i++) {\n const sch = customSchemes[i][0];\n const optionalSlashSlash = customSchemes[i][1];\n const flags = optionalSlashSlash ? {\n [scheme]: true\n } : {\n [slashscheme]: true\n };\n if (sch.indexOf('-') >= 0) {\n flags[domain] = true;\n } else if (!ASCII_LETTER.test(sch)) {\n flags[numeric] = true; // numbers only\n } else if (DIGIT.test(sch)) {\n flags[asciinumeric] = true;\n } else {\n flags[ascii] = true;\n }\n ts(Start, sch, sch, flags);\n }\n\n // Localhost token\n ts(Start, 'localhost', LOCALHOST, {\n ascii: true\n });\n\n // Set default transition for start state (some symbol)\n Start.jd = new State(SYM);\n return {\n start: Start,\n tokens: Object.assign({\n groups\n }, tk)\n };\n}\n\n/**\n\tGiven a string, returns an array of TOKEN instances representing the\n\tcomposition of that string.\n\n\t@method run\n\t@param {State} start scanner starting state\n\t@param {string} str input string to scan\n\t@return {Token[]} list of tokens, each with a type and value\n*/\nfunction run$1(start, str) {\n // State machine is not case sensitive, so input is tokenized in lowercased\n // form (still returns regular case). Uses selective `toLowerCase` because\n // lowercasing the entire string causes the length and character position to\n // vary in some non-English strings with V8-based runtimes.\n const iterable = stringToArray(str.replace(/[A-Z]/g, c => c.toLowerCase()));\n const charCount = iterable.length; // <= len if there are emojis, etc\n const tokens = []; // return value\n\n // cursor through the string itself, accounting for characters that have\n // width with length 2 such as emojis\n let cursor = 0;\n\n // Cursor through the array-representation of the string\n let charCursor = 0;\n\n // Tokenize the string\n while (charCursor < charCount) {\n let state = start;\n let nextState = null;\n let tokenLength = 0;\n let latestAccepting = null;\n let sinceAccepts = -1;\n let charsSinceAccepts = -1;\n while (charCursor < charCount && (nextState = state.go(iterable[charCursor]))) {\n state = nextState;\n\n // Keep track of the latest accepting state\n if (state.accepts()) {\n sinceAccepts = 0;\n charsSinceAccepts = 0;\n latestAccepting = state;\n } else if (sinceAccepts >= 0) {\n sinceAccepts += iterable[charCursor].length;\n charsSinceAccepts++;\n }\n tokenLength += iterable[charCursor].length;\n cursor += iterable[charCursor].length;\n charCursor++;\n }\n\n // Roll back to the latest accepting state\n cursor -= sinceAccepts;\n charCursor -= charsSinceAccepts;\n tokenLength -= sinceAccepts;\n\n // No more jumps, just make a new token from the last accepting one\n tokens.push({\n t: latestAccepting.t,\n // token type/name\n v: str.slice(cursor - tokenLength, cursor),\n // string value\n s: cursor - tokenLength,\n // start index\n e: cursor // end index (excluding)\n });\n }\n return tokens;\n}\n\n/**\n * Convert a String to an Array of characters, taking into account that some\n * characters like emojis take up two string indexes.\n *\n * Adapted from core-js (MIT license)\n * https://github.com/zloirock/core-js/blob/2d69cf5f99ab3ea3463c395df81e5a15b68f49d9/packages/core-js/internals/string-multibyte.js\n *\n * @function stringToArray\n * @param {string} str\n * @returns {string[]}\n */\nfunction stringToArray(str) {\n const result = [];\n const len = str.length;\n let index = 0;\n while (index < len) {\n let first = str.charCodeAt(index);\n let second;\n let char = first < 0xd800 || first > 0xdbff || index + 1 === len || (second = str.charCodeAt(index + 1)) < 0xdc00 || second > 0xdfff ? str[index] // single character\n : str.slice(index, index + 2); // two-index characters\n result.push(char);\n index += char.length;\n }\n return result;\n}\n\n/**\n * Fast version of ts function for when transition defaults are well known\n * @param {State} state\n * @param {string} input\n * @param {string} t\n * @param {string} defaultt\n * @param {[RegExp, State][]} jr\n * @returns {State}\n */\nfunction fastts(state, input, t, defaultt, jr) {\n let next;\n const len = input.length;\n for (let i = 0; i < len - 1; i++) {\n const char = input[i];\n if (state.j[char]) {\n next = state.j[char];\n } else {\n next = new State(defaultt);\n next.jr = jr.slice();\n state.j[char] = next;\n }\n state = next;\n }\n next = new State(t);\n next.jr = jr.slice();\n state.j[input[len - 1]] = next;\n return next;\n}\n\n/**\n * Converts a string of Top-Level Domain names encoded in update-tlds.js back\n * into a list of strings.\n * @param {str} encoded encoded TLDs string\n * @returns {str[]} original TLDs list\n */\nfunction decodeTlds(encoded) {\n const words = [];\n const stack = [];\n let i = 0;\n let digits = '0123456789';\n while (i < encoded.length) {\n let popDigitCount = 0;\n while (digits.indexOf(encoded[i + popDigitCount]) >= 0) {\n popDigitCount++; // encountered some digits, have to pop to go one level up trie\n }\n if (popDigitCount > 0) {\n words.push(stack.join('')); // whatever preceded the pop digits must be a word\n for (let popCount = parseInt(encoded.substring(i, i + popDigitCount), 10); popCount > 0; popCount--) {\n stack.pop();\n }\n i += popDigitCount;\n } else {\n stack.push(encoded[i]); // drop down a level into the trie\n i++;\n }\n }\n return words;\n}\n\n/**\n * An object where each key is a valid DOM Event Name such as `click` or `focus`\n * and each value is an event handler function.\n *\n * https://developer.mozilla.org/en-US/docs/Web/API/Element#events\n * @typedef {?{ [event: string]: Function }} EventListeners\n */\n\n/**\n * All formatted properties required to render a link, including `tagName`,\n * `attributes`, `content` and `eventListeners`.\n * @typedef {{ tagName: any, attributes: {[attr: string]: any}, content: string,\n * eventListeners: EventListeners }} IntermediateRepresentation\n */\n\n/**\n * Specify either an object described by the template type `O` or a function.\n *\n * The function takes a string value (usually the link's href attribute), the\n * link type (`'url'`, `'hashtag`', etc.) and an internal token representation\n * of the link. It should return an object of the template type `O`\n * @template O\n * @typedef {O | ((value: string, type: string, token: MultiToken) => O)} OptObj\n */\n\n/**\n * Specify either a function described by template type `F` or an object.\n *\n * Each key in the object should be a link type (`'url'`, `'hashtag`', etc.). Each\n * value should be a function with template type `F` that is called when the\n * corresponding link type is encountered.\n * @template F\n * @typedef {F | { [type: string]: F}} OptFn\n */\n\n/**\n * Specify either a value with template type `V`, a function that returns `V` or\n * an object where each value resolves to `V`.\n *\n * The function takes a string value (usually the link's href attribute), the\n * link type (`'url'`, `'hashtag`', etc.) and an internal token representation\n * of the link. It should return an object of the template type `V`\n *\n * For the object, each key should be a link type (`'url'`, `'hashtag`', etc.).\n * Each value should either have type `V` or a function that returns V. This\n * function similarly takes a string value and a token.\n *\n * Example valid types for `Opt`:\n *\n * ```js\n * 'hello'\n * (value, type, token) => 'world'\n * { url: 'hello', email: (value, token) => 'world'}\n * ```\n * @template V\n * @typedef {V | ((value: string, type: string, token: MultiToken) => V) | { [type: string]: V | ((value: string, token: MultiToken) => V) }} Opt\n */\n\n/**\n * See available options: https://linkify.js.org/docs/options.html\n * @typedef {{\n * \tdefaultProtocol?: string,\n * events?: OptObj,\n * \tformat?: Opt,\n * \tformatHref?: Opt,\n * \tnl2br?: boolean,\n * \ttagName?: Opt,\n * \ttarget?: Opt,\n * \trel?: Opt,\n * \tvalidate?: Opt,\n * \ttruncate?: Opt,\n * \tclassName?: Opt,\n * \tattributes?: OptObj<({ [attr: string]: any })>,\n * ignoreTags?: string[],\n * \trender?: OptFn<((ir: IntermediateRepresentation) => any)>\n * }} Opts\n */\n\n/**\n * @type Required\n */\nconst defaults = {\n defaultProtocol: 'http',\n events: null,\n format: noop,\n formatHref: noop,\n nl2br: false,\n tagName: 'a',\n target: null,\n rel: null,\n validate: true,\n truncate: Infinity,\n className: null,\n attributes: null,\n ignoreTags: [],\n render: null\n};\n\n/**\n * Utility class for linkify interfaces to apply specified\n * {@link Opts formatting and rendering options}.\n *\n * @param {Opts | Options} [opts] Option value overrides.\n * @param {(ir: IntermediateRepresentation) => any} [defaultRender] (For\n * internal use) default render function that determines how to generate an\n * HTML element based on a link token's derived tagName, attributes and HTML.\n * Similar to render option\n */\nfunction Options(opts, defaultRender = null) {\n let o = Object.assign({}, defaults);\n if (opts) {\n o = Object.assign(o, opts instanceof Options ? opts.o : opts);\n }\n\n // Ensure all ignored tags are uppercase\n const ignoredTags = o.ignoreTags;\n const uppercaseIgnoredTags = [];\n for (let i = 0; i < ignoredTags.length; i++) {\n uppercaseIgnoredTags.push(ignoredTags[i].toUpperCase());\n }\n /** @protected */\n this.o = o;\n if (defaultRender) {\n this.defaultRender = defaultRender;\n }\n this.ignoreTags = uppercaseIgnoredTags;\n}\nOptions.prototype = {\n o: defaults,\n /**\n * @type string[]\n */\n ignoreTags: [],\n /**\n * @param {IntermediateRepresentation} ir\n * @returns {any}\n */\n defaultRender(ir) {\n return ir;\n },\n /**\n * Returns true or false based on whether a token should be displayed as a\n * link based on the user options.\n * @param {MultiToken} token\n * @returns {boolean}\n */\n check(token) {\n return this.get('validate', token.toString(), token);\n },\n // Private methods\n\n /**\n * Resolve an option's value based on the value of the option and the given\n * params. If operator and token are specified and the target option is\n * callable, automatically calls the function with the given argument.\n * @template {keyof Opts} K\n * @param {K} key Name of option to use\n * @param {string} [operator] will be passed to the target option if it's a\n * function. If not specified, RAW function value gets returned\n * @param {MultiToken} [token] The token from linkify.tokenize\n * @returns {Opts[K] | any}\n */\n get(key, operator, token) {\n const isCallable = operator != null;\n let option = this.o[key];\n if (!option) {\n return option;\n }\n if (typeof option === 'object') {\n option = token.t in option ? option[token.t] : defaults[key];\n if (typeof option === 'function' && isCallable) {\n option = option(operator, token);\n }\n } else if (typeof option === 'function' && isCallable) {\n option = option(operator, token.t, token);\n }\n return option;\n },\n /**\n * @template {keyof Opts} L\n * @param {L} key Name of options object to use\n * @param {string} [operator]\n * @param {MultiToken} [token]\n * @returns {Opts[L] | any}\n */\n getObj(key, operator, token) {\n let obj = this.o[key];\n if (typeof obj === 'function' && operator != null) {\n obj = obj(operator, token.t, token);\n }\n return obj;\n },\n /**\n * Convert the given token to a rendered element that may be added to the\n * calling-interface's DOM\n * @param {MultiToken} token Token to render to an HTML element\n * @returns {any} Render result; e.g., HTML string, DOM element, React\n * Component, etc.\n */\n render(token) {\n const ir = token.render(this); // intermediate representation\n const renderFn = this.get('render', null, token) || this.defaultRender;\n return renderFn(ir, token.t, token);\n }\n};\nfunction noop(val) {\n return val;\n}\n\nvar options = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tOptions: Options,\n\tdefaults: defaults\n});\n\n/******************************************************************************\n\tMulti-Tokens\n\tTokens composed of arrays of TextTokens\n******************************************************************************/\n\n/**\n * @param {string} value\n * @param {Token[]} tokens\n */\nfunction MultiToken(value, tokens) {\n this.t = 'token';\n this.v = value;\n this.tk = tokens;\n}\n\n/**\n * Abstract class used for manufacturing tokens of text tokens. That is rather\n * than the value for a token being a small string of text, it's value an array\n * of text tokens.\n *\n * Used for grouping together URLs, emails, hashtags, and other potential\n * creations.\n * @class MultiToken\n * @property {string} t\n * @property {string} v\n * @property {Token[]} tk\n * @abstract\n */\nMultiToken.prototype = {\n isLink: false,\n /**\n * Return the string this token represents.\n * @return {string}\n */\n toString() {\n return this.v;\n },\n /**\n * What should the value for this token be in the `href` HTML attribute?\n * Returns the `.toString` value by default.\n * @param {string} [scheme]\n * @return {string}\n */\n toHref(scheme) {\n return this.toString();\n },\n /**\n * @param {Options} options Formatting options\n * @returns {string}\n */\n toFormattedString(options) {\n const val = this.toString();\n const truncate = options.get('truncate', val, this);\n const formatted = options.get('format', val, this);\n return truncate && formatted.length > truncate ? formatted.substring(0, truncate) + '…' : formatted;\n },\n /**\n *\n * @param {Options} options\n * @returns {string}\n */\n toFormattedHref(options) {\n return options.get('formatHref', this.toHref(options.get('defaultProtocol')), this);\n },\n /**\n * The start index of this token in the original input string\n * @returns {number}\n */\n startIndex() {\n return this.tk[0].s;\n },\n /**\n * The end index of this token in the original input string (up to this\n * index but not including it)\n * @returns {number}\n */\n endIndex() {\n return this.tk[this.tk.length - 1].e;\n },\n /**\n \tReturns an object of relevant values for this token, which includes keys\n \t* type - Kind of token ('url', 'email', etc.)\n \t* value - Original text\n \t* href - The value that should be added to the anchor tag's href\n \t\tattribute\n \t\t@method toObject\n \t@param {string} [protocol] `'http'` by default\n */\n toObject(protocol = defaults.defaultProtocol) {\n return {\n type: this.t,\n value: this.toString(),\n isLink: this.isLink,\n href: this.toHref(protocol),\n start: this.startIndex(),\n end: this.endIndex()\n };\n },\n /**\n *\n * @param {Options} options Formatting option\n */\n toFormattedObject(options) {\n return {\n type: this.t,\n value: this.toFormattedString(options),\n isLink: this.isLink,\n href: this.toFormattedHref(options),\n start: this.startIndex(),\n end: this.endIndex()\n };\n },\n /**\n * Whether this token should be rendered as a link according to the given options\n * @param {Options} options\n * @returns {boolean}\n */\n validate(options) {\n return options.get('validate', this.toString(), this);\n },\n /**\n * Return an object that represents how this link should be rendered.\n * @param {Options} options Formattinng options\n */\n render(options) {\n const token = this;\n const href = this.toHref(options.get('defaultProtocol'));\n const formattedHref = options.get('formatHref', href, this);\n const tagName = options.get('tagName', href, token);\n const content = this.toFormattedString(options);\n const attributes = {};\n const className = options.get('className', href, token);\n const target = options.get('target', href, token);\n const rel = options.get('rel', href, token);\n const attrs = options.getObj('attributes', href, token);\n const eventListeners = options.getObj('events', href, token);\n attributes.href = formattedHref;\n if (className) {\n attributes.class = className;\n }\n if (target) {\n attributes.target = target;\n }\n if (rel) {\n attributes.rel = rel;\n }\n if (attrs) {\n Object.assign(attributes, attrs);\n }\n return {\n tagName,\n attributes,\n content,\n eventListeners\n };\n }\n};\n\n/**\n * Create a new token that can be emitted by the parser state machine\n * @param {string} type readable type of the token\n * @param {object} props properties to assign or override, including isLink = true or false\n * @returns {new (value: string, tokens: Token[]) => MultiToken} new token class\n */\nfunction createTokenClass(type, props) {\n class Token extends MultiToken {\n constructor(value, tokens) {\n super(value, tokens);\n this.t = type;\n }\n }\n for (const p in props) {\n Token.prototype[p] = props[p];\n }\n Token.t = type;\n return Token;\n}\n\n/**\n\tRepresents a list of tokens making up a valid email address\n*/\nconst Email = createTokenClass('email', {\n isLink: true,\n toHref() {\n return 'mailto:' + this.toString();\n }\n});\n\n/**\n\tRepresents some plain text\n*/\nconst Text = createTokenClass('text');\n\n/**\n\tMulti-linebreak token - represents a line break\n\t@class Nl\n*/\nconst Nl = createTokenClass('nl');\n\n/**\n\tRepresents a list of text tokens making up a valid URL\n\t@class Url\n*/\nconst Url = createTokenClass('url', {\n isLink: true,\n /**\n \tLowercases relevant parts of the domain and adds the protocol if\n \trequired. Note that this will not escape unsafe HTML characters in the\n \tURL.\n \t\t@param {string} [scheme] default scheme (e.g., 'https')\n \t@return {string} the full href\n */\n toHref(scheme = defaults.defaultProtocol) {\n // Check if already has a prefix scheme\n return this.hasProtocol() ? this.v : `${scheme}://${this.v}`;\n },\n /**\n * Check whether this URL token has a protocol\n * @return {boolean}\n */\n hasProtocol() {\n const tokens = this.tk;\n return tokens.length >= 2 && tokens[0].t !== LOCALHOST && tokens[1].t === COLON;\n }\n});\n\nvar multi = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tBase: MultiToken,\n\tEmail: Email,\n\tMultiToken: MultiToken,\n\tNl: Nl,\n\tText: Text,\n\tUrl: Url,\n\tcreateTokenClass: createTokenClass\n});\n\n/**\n\tNot exactly parser, more like the second-stage scanner (although we can\n\ttheoretically hotswap the code here with a real parser in the future... but\n\tfor a little URL-finding utility abstract syntax trees may be a little\n\toverkill).\n\n\tURL format: http://en.wikipedia.org/wiki/URI_scheme\n\tEmail format: http://en.wikipedia.org/wiki/EmailAddress (links to RFC in\n\treference)\n\n\t@module linkify\n\t@submodule parser\n\t@main run\n*/\n\nconst makeState = arg => new State(arg);\n\n/**\n * Generate the parser multi token-based state machine\n * @param {{ groups: Collections }} tokens\n */\nfunction init$1({\n groups\n}) {\n // Types of characters the URL can definitely end in\n const qsAccepting = groups.domain.concat([AMPERSAND, ASTERISK, AT, BACKSLASH, BACKTICK, CARET, DOLLAR, EQUALS, HYPHEN, NUM, PERCENT, PIPE, PLUS, POUND, SLASH, SYM, TILDE, UNDERSCORE]);\n\n // Types of tokens that can follow a URL and be part of the query string\n // but cannot be the very last characters\n // Characters that cannot appear in the URL at all should be excluded\n const qsNonAccepting = [APOSTROPHE, COLON, COMMA, DOT, EXCLAMATION, PERCENT, QUERY, QUOTE, SEMI, OPENANGLEBRACKET, CLOSEANGLEBRACKET, OPENBRACE, CLOSEBRACE, CLOSEBRACKET, OPENBRACKET, OPENPAREN, CLOSEPAREN, FULLWIDTHLEFTPAREN, FULLWIDTHRIGHTPAREN, LEFTCORNERBRACKET, RIGHTCORNERBRACKET, LEFTWHITECORNERBRACKET, RIGHTWHITECORNERBRACKET, FULLWIDTHLESSTHAN, FULLWIDTHGREATERTHAN];\n\n // For addresses without the mailto prefix\n // Tokens allowed in the localpart of the email\n const localpartAccepting = [AMPERSAND, APOSTROPHE, ASTERISK, BACKSLASH, BACKTICK, CARET, DOLLAR, EQUALS, HYPHEN, OPENBRACE, CLOSEBRACE, PERCENT, PIPE, PLUS, POUND, QUERY, SLASH, SYM, TILDE, UNDERSCORE];\n\n // The universal starting state.\n /**\n * @type State\n */\n const Start = makeState();\n const Localpart = tt(Start, TILDE); // Local part of the email address\n ta(Localpart, localpartAccepting, Localpart);\n ta(Localpart, groups.domain, Localpart);\n const Domain = makeState(),\n Scheme = makeState(),\n SlashScheme = makeState();\n ta(Start, groups.domain, Domain); // parsed string ends with a potential domain name (A)\n ta(Start, groups.scheme, Scheme); // e.g., 'mailto'\n ta(Start, groups.slashscheme, SlashScheme); // e.g., 'http'\n\n ta(Domain, localpartAccepting, Localpart);\n ta(Domain, groups.domain, Domain);\n const LocalpartAt = tt(Domain, AT); // Local part of the email address plus @\n\n tt(Localpart, AT, LocalpartAt); // close to an email address now\n\n // Local part of an email address can be e.g. 'http' or 'mailto'\n tt(Scheme, AT, LocalpartAt);\n tt(SlashScheme, AT, LocalpartAt);\n const LocalpartDot = tt(Localpart, DOT); // Local part of the email address plus '.' (localpart cannot end in .)\n ta(LocalpartDot, localpartAccepting, Localpart);\n ta(LocalpartDot, groups.domain, Localpart);\n const EmailDomain = makeState();\n ta(LocalpartAt, groups.domain, EmailDomain); // parsed string starts with local email info + @ with a potential domain name\n ta(EmailDomain, groups.domain, EmailDomain);\n const EmailDomainDot = tt(EmailDomain, DOT); // domain followed by DOT\n ta(EmailDomainDot, groups.domain, EmailDomain);\n const Email$1 = makeState(Email); // Possible email address (could have more tlds)\n ta(EmailDomainDot, groups.tld, Email$1);\n ta(EmailDomainDot, groups.utld, Email$1);\n tt(LocalpartAt, LOCALHOST, Email$1);\n\n // Hyphen can jump back to a domain name\n const EmailDomainHyphen = tt(EmailDomain, HYPHEN); // parsed string starts with local email info + @ with a potential domain name\n tt(EmailDomainHyphen, HYPHEN, EmailDomainHyphen);\n ta(EmailDomainHyphen, groups.domain, EmailDomain);\n ta(Email$1, groups.domain, EmailDomain);\n tt(Email$1, DOT, EmailDomainDot);\n tt(Email$1, HYPHEN, EmailDomainHyphen);\n\n // Account for dots and hyphens. Hyphens are usually parts of domain names\n // (but not TLDs)\n const DomainHyphen = tt(Domain, HYPHEN); // domain followed by hyphen\n const DomainDot = tt(Domain, DOT); // domain followed by DOT\n tt(DomainHyphen, HYPHEN, DomainHyphen);\n ta(DomainHyphen, groups.domain, Domain);\n ta(DomainDot, localpartAccepting, Localpart);\n ta(DomainDot, groups.domain, Domain);\n const DomainDotTld = makeState(Url); // Simplest possible URL with no query string\n ta(DomainDot, groups.tld, DomainDotTld);\n ta(DomainDot, groups.utld, DomainDotTld);\n ta(DomainDotTld, groups.domain, Domain);\n ta(DomainDotTld, localpartAccepting, Localpart);\n tt(DomainDotTld, DOT, DomainDot);\n tt(DomainDotTld, HYPHEN, DomainHyphen);\n tt(DomainDotTld, AT, LocalpartAt);\n const DomainDotTldColon = tt(DomainDotTld, COLON); // URL followed by colon (potential port number here)\n const DomainDotTldColonPort = makeState(Url); // TLD followed by a port number\n ta(DomainDotTldColon, groups.numeric, DomainDotTldColonPort);\n\n // Long URL with optional port and maybe query string\n const Url$1 = makeState(Url);\n\n // URL with extra symbols at the end, followed by an opening bracket\n const UrlNonaccept = makeState(); // URL followed by some symbols (will not be part of the final URL)\n\n // Query strings\n ta(Url$1, qsAccepting, Url$1);\n ta(Url$1, qsNonAccepting, UrlNonaccept);\n ta(UrlNonaccept, qsAccepting, Url$1);\n ta(UrlNonaccept, qsNonAccepting, UrlNonaccept);\n\n // Become real URLs after `SLASH` or `COLON NUM SLASH`\n // Here works with or without scheme:// prefix\n tt(DomainDotTld, SLASH, Url$1);\n tt(DomainDotTldColonPort, SLASH, Url$1);\n\n // Note that domains that begin with schemes are treated slighly differently\n const SchemeColon = tt(Scheme, COLON); // e.g., 'mailto:'\n const SlashSchemeColon = tt(SlashScheme, COLON); // e.g., 'http:'\n const SlashSchemeColonSlash = tt(SlashSchemeColon, SLASH); // e.g., 'http:/'\n\n const UriPrefix = tt(SlashSchemeColonSlash, SLASH); // e.g., 'http://'\n\n // Scheme states can transition to domain states\n ta(Scheme, groups.domain, Domain);\n tt(Scheme, DOT, DomainDot);\n tt(Scheme, HYPHEN, DomainHyphen);\n ta(SlashScheme, groups.domain, Domain);\n tt(SlashScheme, DOT, DomainDot);\n tt(SlashScheme, HYPHEN, DomainHyphen);\n\n // Force URL with scheme prefix followed by anything sane\n ta(SchemeColon, groups.domain, Url$1);\n tt(SchemeColon, SLASH, Url$1);\n tt(SchemeColon, QUERY, Url$1);\n ta(UriPrefix, groups.domain, Url$1);\n ta(UriPrefix, qsAccepting, Url$1);\n tt(UriPrefix, SLASH, Url$1);\n const bracketPairs = [[OPENBRACE, CLOSEBRACE],\n // {}\n [OPENBRACKET, CLOSEBRACKET],\n // []\n [OPENPAREN, CLOSEPAREN],\n // ()\n [OPENANGLEBRACKET, CLOSEANGLEBRACKET],\n // <>\n [FULLWIDTHLEFTPAREN, FULLWIDTHRIGHTPAREN],\n // ()\n [LEFTCORNERBRACKET, RIGHTCORNERBRACKET],\n // 「」\n [LEFTWHITECORNERBRACKET, RIGHTWHITECORNERBRACKET],\n // 『』\n [FULLWIDTHLESSTHAN, FULLWIDTHGREATERTHAN] // <>\n ];\n for (let i = 0; i < bracketPairs.length; i++) {\n const [OPEN, CLOSE] = bracketPairs[i];\n const UrlOpen = tt(Url$1, OPEN); // URL followed by open bracket\n\n // Continue not accepting for open brackets\n tt(UrlNonaccept, OPEN, UrlOpen);\n\n // URL that begins with an opening bracket, followed by a symbols.\n // Note that the final state can still be `UrlOpen` (if the URL has a\n // single opening bracket for some reason).\n const UrlOpenQ = makeState(Url);\n ta(UrlOpen, qsAccepting, UrlOpenQ);\n const UrlOpenSyms = makeState(); // UrlOpen followed by some symbols it cannot end it\n ta(UrlOpen, qsNonAccepting, UrlOpenSyms);\n\n // Closing bracket component. This character WILL be included in the URL.\n // Must come after qsNonAccepting (which includes all close-bracket tokens)\n // so that CLOSE -> Url wins over CLOSE -> UrlOpenSyms.\n tt(UrlOpen, CLOSE, Url$1);\n\n // URL that begins with an opening bracket, followed by some symbols\n ta(UrlOpenQ, qsAccepting, UrlOpenQ);\n ta(UrlOpenQ, qsNonAccepting, UrlOpenSyms);\n ta(UrlOpenSyms, qsAccepting, UrlOpenQ);\n ta(UrlOpenSyms, qsNonAccepting, UrlOpenSyms);\n\n // Close brace/bracket to become regular URL\n tt(UrlOpenQ, CLOSE, Url$1);\n tt(UrlOpenSyms, CLOSE, Url$1);\n }\n tt(Start, LOCALHOST, DomainDotTld); // localhost is a valid URL state\n tt(Start, NL, Nl); // single new line\n\n return {\n start: Start,\n tokens: tk\n };\n}\n\n/**\n * Run the parser state machine on a list of scanned string-based tokens to\n * create a list of multi tokens, each of which represents a URL, email address,\n * plain text, etc.\n *\n * @param {State} start parser start state\n * @param {string} input the original input used to generate the given tokens\n * @param {Token[]} tokens list of scanned tokens\n * @returns {MultiToken[]}\n */\nfunction run(start, input, tokens) {\n let len = tokens.length;\n let cursor = 0;\n let multis = [];\n let textTokens = [];\n while (cursor < len) {\n let state = start;\n let secondState = null;\n let nextState = null;\n let multiLength = 0;\n let latestAccepting = null;\n let sinceAccepts = -1;\n while (cursor < len && !(secondState = state.go(tokens[cursor].t))) {\n // Starting tokens with nowhere to jump to.\n // Consider these to be just plain text\n textTokens.push(tokens[cursor++]);\n }\n while (cursor < len && (nextState = secondState || state.go(tokens[cursor].t))) {\n // Get the next state\n secondState = null;\n state = nextState;\n\n // Keep track of the latest accepting state\n if (state.accepts()) {\n sinceAccepts = 0;\n latestAccepting = state;\n } else if (sinceAccepts >= 0) {\n sinceAccepts++;\n }\n cursor++;\n multiLength++;\n }\n if (sinceAccepts < 0) {\n // No accepting state was found, part of a regular text token add\n // the first text token to the text tokens array and try again from\n // the next\n cursor -= multiLength;\n if (cursor < len) {\n textTokens.push(tokens[cursor]);\n cursor++;\n }\n } else {\n // Accepting state!\n // First close off the textTokens (if available)\n if (textTokens.length > 0) {\n multis.push(initMultiToken(Text, input, textTokens));\n textTokens = [];\n }\n\n // Roll back to the latest accepting state\n cursor -= sinceAccepts;\n multiLength -= sinceAccepts;\n\n // Create a new multitoken\n const Multi = latestAccepting.t;\n const subtokens = tokens.slice(cursor - multiLength, cursor);\n multis.push(initMultiToken(Multi, input, subtokens));\n }\n }\n\n // Finally close off the textTokens (if available)\n if (textTokens.length > 0) {\n multis.push(initMultiToken(Text, input, textTokens));\n }\n return multis;\n}\n\n/**\n * Utility function for instantiating a new multitoken with all the relevant\n * fields during parsing.\n * @param {new (value: string, tokens: Token[]) => MultiToken} Multi class to instantiate\n * @param {string} input original input string\n * @param {Token[]} tokens consecutive tokens scanned from input string\n * @returns {MultiToken}\n */\nfunction initMultiToken(Multi, input, tokens) {\n const startIdx = tokens[0].s;\n const endIdx = tokens[tokens.length - 1].e;\n const value = input.slice(startIdx, endIdx);\n return new Multi(value, tokens);\n}\n\nconst warn = typeof console !== 'undefined' && console && console.warn || (() => {});\nconst warnAdvice = 'until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.';\n\n// Side-effect initialization state\nconst INIT = {\n scanner: null,\n parser: null,\n tokenQueue: [],\n pluginQueue: [],\n customSchemes: [],\n initialized: false\n};\n\n/**\n * @typedef {{\n * \tstart: State,\n * \ttokens: { groups: Collections } & typeof tk\n * }} ScannerInit\n */\n\n/**\n * @typedef {{\n * \tstart: State,\n * \ttokens: typeof multi\n * }} ParserInit\n */\n\n/**\n * @typedef {(arg: { scanner: ScannerInit }) => void} TokenPlugin\n */\n\n/**\n * @typedef {(arg: { scanner: ScannerInit, parser: ParserInit }) => void} Plugin\n */\n\n/**\n * De-register all plugins and reset the internal state-machine. Used for\n * testing; not required in practice.\n * @private\n */\nfunction reset() {\n State.groups = {};\n INIT.scanner = null;\n INIT.parser = null;\n INIT.tokenQueue = [];\n INIT.pluginQueue = [];\n INIT.customSchemes = [];\n INIT.initialized = false;\n return INIT;\n}\n\n/**\n * Register a token plugin to allow the scanner to recognize additional token\n * types before the parser state machine is constructed from the results.\n * @param {string} name of plugin to register\n * @param {TokenPlugin} plugin function that accepts the scanner state machine\n * and available scanner tokens and collections and extends the state machine to\n * recognize additional tokens or groups.\n */\nfunction registerTokenPlugin(name, plugin) {\n if (typeof plugin !== 'function') {\n throw new Error(`linkifyjs: Invalid token plugin ${plugin} (expects function)`);\n }\n for (let i = 0; i < INIT.tokenQueue.length; i++) {\n if (name === INIT.tokenQueue[i][0]) {\n warn(`linkifyjs: token plugin \"${name}\" already registered - will be overwritten`);\n INIT.tokenQueue[i] = [name, plugin];\n return;\n }\n }\n INIT.tokenQueue.push([name, plugin]);\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register token plugin \"${name}\" ${warnAdvice}`);\n }\n}\n\n/**\n * Register a linkify plugin\n * @param {string} name of plugin to register\n * @param {Plugin} plugin function that accepts the parser state machine and\n * extends the parser to recognize additional link types\n */\nfunction registerPlugin(name, plugin) {\n if (typeof plugin !== 'function') {\n throw new Error(`linkifyjs: Invalid plugin ${plugin} (expects function)`);\n }\n for (let i = 0; i < INIT.pluginQueue.length; i++) {\n if (name === INIT.pluginQueue[i][0]) {\n warn(`linkifyjs: plugin \"${name}\" already registered - will be overwritten`);\n INIT.pluginQueue[i] = [name, plugin];\n return;\n }\n }\n INIT.pluginQueue.push([name, plugin]);\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register plugin \"${name}\" ${warnAdvice}`);\n }\n}\n\n/**\n * Detect URLs with the following additional protocol. Anything with format\n * \"protocol://...\" will be considered a link. If `optionalSlashSlash` is set to\n * `true`, anything with format \"protocol:...\" will be considered a link.\n * @param {string} scheme\n * @param {boolean} [optionalSlashSlash]\n */\nfunction registerCustomProtocol(scheme, optionalSlashSlash = false) {\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register custom scheme \"${scheme}\" ${warnAdvice}`);\n }\n if (!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(scheme)) {\n throw new Error(`linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or \"-\"\n2. Cannot start or end with \"-\"\n3. \"-\" cannot repeat`);\n }\n INIT.customSchemes.push([scheme, optionalSlashSlash]);\n}\n\n/**\n * Initialize the linkify state machine. Called automatically the first time\n * linkify is called on a string, but may be called manually as well.\n */\nfunction init() {\n // Initialize scanner state machine and plugins\n INIT.scanner = init$2(INIT.customSchemes);\n for (let i = 0; i < INIT.tokenQueue.length; i++) {\n INIT.tokenQueue[i][1]({\n scanner: INIT.scanner\n });\n }\n\n // Initialize parser state machine and plugins\n INIT.parser = init$1(INIT.scanner.tokens);\n for (let i = 0; i < INIT.pluginQueue.length; i++) {\n INIT.pluginQueue[i][1]({\n scanner: INIT.scanner,\n parser: INIT.parser\n });\n }\n INIT.initialized = true;\n return INIT;\n}\n\n/**\n * Parse a string into tokens that represent linkable and non-linkable sub-components\n * @param {string} str\n * @return {MultiToken[]} tokens\n */\nfunction tokenize(str) {\n if (!INIT.initialized) {\n init();\n }\n return run(INIT.parser.start, str, run$1(INIT.scanner.start, str));\n}\ntokenize.scan = run$1; // for testing\n\n/**\n * Find a list of linkable items in the given string.\n * @param {string} str string to find links in\n * @param {string | Opts} [type] either formatting options or specific type of\n * links to find, e.g., 'url' or 'email'\n * @param {Opts} [opts] formatting options for final output. Cannot be specified\n * if opts already provided in `type` argument\n */\nfunction find(str, type = null, opts = null) {\n if (type && typeof type === 'object') {\n if (opts) {\n throw Error(`linkifyjs: Invalid link type ${type}; must be a string`);\n }\n opts = type;\n type = null;\n }\n const options = new Options(opts);\n const tokens = tokenize(str);\n const filtered = [];\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n if (token.isLink && (!type || token.t === type) && options.check(token)) {\n filtered.push(token.toFormattedObject(options));\n }\n }\n return filtered;\n}\n\n/**\n * Is the given string valid linkable text of some sort. Note that this does not\n * trim the text for you.\n *\n * Optionally pass in a second `type` param, which is the type of link to test\n * for.\n *\n * For example,\n *\n * linkify.test(str, 'email');\n *\n * Returns `true` if str is a valid email.\n * @param {string} str string to test for links\n * @param {string} [type] optional specific link type to look for\n * @returns boolean true/false\n */\nfunction test(str, type = null) {\n const tokens = tokenize(str);\n return tokens.length === 1 && tokens[0].isLink && (!type || tokens[0].t === type);\n}\n\nexport { MultiToken, Options, State, createTokenClass, find, init, multi, options, regexp, registerCustomProtocol, registerPlugin, registerTokenPlugin, reset, stringToArray, test, multi as text, tokenize };\n","import escapeHTML from \"escape-html\";\nimport { Options, tokenize } from \"linkifyjs\";\nfunction linkifyString(str) {\n const options = new Options({\n defaultProtocol: \"https\",\n target: \"_blank\",\n className: \"external linkified\",\n attributes: {\n rel: \"nofollow noopener noreferrer\"\n }\n }, defaultRender);\n const tokens = tokenize(str);\n const result = [];\n for (const token of tokens) {\n if (token.t === \"nl\" && options.get(\"nl2br\")) {\n result.push(\"
\\n\");\n } else if (!token.isLink || !options.check(token)) {\n result.push(escapeHTML(token.toString()));\n } else {\n result.push(options.render(token));\n }\n }\n return result.join(\"\");\n}\nfunction escapeAttr(href) {\n return href.replace(/\"/g, \""\");\n}\nfunction attributesToString(attributes) {\n const result = [];\n for (const attr in attributes) {\n const val = attributes[attr] + \"\";\n result.push(`${attr}=\"${escapeAttr(val)}\"`);\n }\n return result.join(\" \");\n}\nfunction defaultRender({ tagName, attributes, content }) {\n return `<${tagName} ${attributesToString(attributes)}>${escapeHTML(content)}`;\n}\nconst directive = function(el, { value }) {\n if (value?.linkify === true) {\n el.innerHTML = linkifyString(value.text);\n }\n};\nexport {\n directive as default\n};\n//# sourceMappingURL=index.mjs.map\n","import { defineComponent, inject, withDirectives, openBlock, createElementBlock, createTextVNode, toDisplayString, unref } from \"vue\";\nimport directive from \"../directives/Linkify/index.mjs\";\nconst _hoisted_1 = [\"title\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcAppSidebarHeader\",\n props: {\n name: {},\n title: {},\n linkify: { type: Boolean }\n },\n setup(__props) {\n const headerRef = inject(\"NcAppSidebar:header:ref\");\n return (_ctx, _cache) => {\n return withDirectives((openBlock(), createElementBlock(\"h2\", {\n ref_key: \"headerRef\",\n ref: headerRef,\n tabindex: \"-1\",\n title: __props.title\n }, [\n createTextVNode(toDisplayString(__props.name), 1)\n ], 8, _hoisted_1)), [\n [unref(directive), { text: __props.name, linkify: __props.linkify }]\n ]);\n };\n }\n});\nexport {\n _sfc_main as _\n};\n//# sourceMappingURL=NcAppSidebarHeader.vue_vue_type_script_setup_true_lang-C-QhdyiN.mjs.map\n","import '../assets/NcAppSidebar-TcyGhk0L.css';\nimport { vOnClickOutside } from \"@vueuse/components\";\nimport { createFocusTrap } from \"focus-trap\";\nimport { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode, defineComponent, useModel, normalizeClass, unref, createVNode, withCtx, mergeModels, resolveComponent, withKeys, withModifiers, Fragment, renderList, createBlock, renderSlot, resolveDirective, Transition, withDirectives, Teleport, normalizeStyle, vShow, createTextVNode, warn, ref, provide } from \"vue\";\nimport { I as IconArrowRight } from \"./ArrowRight-B1ncAhus.mjs\";\nimport { I as IconClose } from \"./Close-CuhcJnX2.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { getCanonicalLocale } from \"@nextcloud/l10n\";\nimport { _ as _sfc_main$6 } from \"./NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs\";\nimport { i as isLegacy34 } from \"./legacy-BoqDmOCa.mjs\";\nimport { useIsSmallMobile } from \"../composables/useIsMobile/index.mjs\";\nimport directive from \"../directives/Focus/index.mjs\";\nimport { r as register, V as t15, a as t } from \"./_l10n-CG4CuN3H.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { g as getTrapStack } from \"./focusTrap-HJQ4pqHV.mjs\";\nimport { i as isSlotPopulated, N as NcActions } from \"./NcActions-DY4GGONi.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { _ as _sfc_main$7 } from \"./NcAppSidebarHeader.vue_vue_type_script_setup_true_lang-C-QhdyiN.mjs\";\nimport { N as NcButton } from \"./NcButton-QbPBynlU.mjs\";\nimport { C as CONTENT_SELECTOR_KEY } from \"./constants-Ciwvl5xb.mjs\";\nimport { N as NcEmptyContent } from \"./NcEmptyContent-CGAPqk4S.mjs\";\nimport { N as NcLoadingIcon } from \"./NcLoadingIcon-BOVpFVQz.mjs\";\nconst _sfc_main$5 = {\n name: \"DockRightIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$5 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$3 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$3 = { d: \"M20 4H4A2 2 0 0 0 2 6V18A2 2 0 0 0 4 20H20A2 2 0 0 0 22 18V6A2 2 0 0 0 20 4M15 18H4V6H15Z\" };\nconst _hoisted_4$3 = { key: 0 };\nfunction _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon dock-right-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$3, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$3, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$3))\n ], 16, _hoisted_1$5);\n}\nconst IconDockRight = /* @__PURE__ */ _export_sfc(_sfc_main$5, [[\"render\", _sfc_render$4]]);\nconst _sfc_main$4 = {\n name: \"StarIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$4 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$2 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$2 = { d: \"M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z\" };\nconst _hoisted_4$2 = { key: 0 };\nfunction _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon star-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$2, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$2, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$2))\n ], 16, _hoisted_1$4);\n}\nconst IconStar = /* @__PURE__ */ _export_sfc(_sfc_main$4, [[\"render\", _sfc_render$3]]);\nconst _sfc_main$3 = {\n name: \"StarOutlineIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$3 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$1 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$1 = { d: \"M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z\" };\nconst _hoisted_4$1 = { key: 0 };\nfunction _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon star-outline-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$1, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$1, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$1))\n ], 16, _hoisted_1$3);\n}\nconst IconStarOutline = /* @__PURE__ */ _export_sfc(_sfc_main$3, [[\"render\", _sfc_render$2]]);\nconst _hoisted_1$2 = [\"aria-selected\", \"tabindex\"];\nconst _sfc_main$2 = /* @__PURE__ */ defineComponent({\n __name: \"NcAppSidebarTabsButton\",\n props: /* @__PURE__ */ mergeModels({\n tab: {}\n }, {\n \"selected\": { type: Boolean, ...{ required: true } },\n \"selectedModifiers\": {}\n }),\n emits: [\"update:selected\"],\n setup(__props) {\n const selected = useModel(__props, \"selected\");\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"button\", {\n class: normalizeClass([\"button-vue\", [_ctx.$style.sidebarTabsButton, {\n [_ctx.$style.sidebarTabsButton_selected]: selected.value,\n [_ctx.$style.sidebarTabsButton_legacy]: unref(isLegacy34)\n }]]),\n role: \"tab\",\n \"aria-selected\": selected.value,\n tabindex: selected.value ? 0 : -1,\n onClick: _cache[0] || (_cache[0] = ($event) => selected.value = true)\n }, [\n createElementVNode(\"span\", {\n class: normalizeClass(_ctx.$style.sidebarTabsButton__icon)\n }, [\n createVNode(_sfc_main$6, {\n vnodes: __props.tab.renderIcon()\n }, {\n default: withCtx(() => [\n createElementVNode(\"span\", {\n class: normalizeClass([_ctx.$style.sidebarTabsButton__legacyIcon, __props.tab.icon])\n }, null, 2)\n ]),\n _: 1\n }, 8, [\"vnodes\"])\n ], 2),\n createElementVNode(\"span\", {\n class: normalizeClass(_ctx.$style.sidebarTabsButton__name)\n }, toDisplayString(__props.tab.name), 3)\n ], 10, _hoisted_1$2);\n };\n }\n});\nconst sidebarTabsButton = \"_sidebarTabsButton_Uw0-N\";\nconst sidebarTabsButton_legacy = \"_sidebarTabsButton_legacy_FsjhV\";\nconst sidebarTabsButton_selected = \"_sidebarTabsButton_selected_MiFwn\";\nconst sidebarTabsButton__name = \"_sidebarTabsButton__name_Uzc5r\";\nconst sidebarTabsButton__icon = \"_sidebarTabsButton__icon_-Zy-g\";\nconst sidebarTabsButton__legacyIcon = \"_sidebarTabsButton__legacyIcon_svLe8\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_fPSY2\",\n sidebarTabsButton,\n sidebarTabsButton_legacy,\n sidebarTabsButton_selected,\n sidebarTabsButton__name,\n sidebarTabsButton__icon,\n sidebarTabsButton__legacyIcon\n};\nconst cssModules = {\n \"$style\": style0\n};\nconst NcAppSidebarTabsButton = /* @__PURE__ */ _export_sfc(_sfc_main$2, [[\"__cssModules\", cssModules]]);\nconst _sfc_main$1 = {\n name: \"NcAppSidebarTabs\",\n components: {\n NcAppSidebarTabsButton\n },\n provide() {\n return {\n registerTab: this.registerTab,\n unregisterTab: this.unregisterTab,\n // Getter as an alternative to Vue 2.7 computed(() => this.activeTab)\n getActiveTab: () => this.activeTab,\n // Used to check whether the tab header is shown so the tabs can reference the tab header for `aria-labelledby` or not\n isTablistShown: () => this.hasMultipleTabs\n };\n },\n props: {\n /**\n * Id of the tab to activate\n */\n active: {\n type: String,\n default: \"\"\n },\n /**\n * Force the tab navigation to display even if there is only one tab\n */\n forceTabs: {\n type: Boolean,\n default: false\n }\n },\n emits: [\"update:active\"],\n data(props) {\n return {\n /**\n * Tab descriptions from the passed NcSidebarTab components' props to build the tab navbar from.\n */\n tabs: [],\n /**\n * Local active (open) tab's ID. It allows to use component without v-model:active\n */\n activeTab: props.active,\n isLegacy34\n };\n },\n computed: {\n /**\n * Has multiple tabs. If only one tab - its content is shown without navigation\n *\n * @return {boolean}\n */\n hasMultipleTabs() {\n return this.tabs.length > 1;\n },\n showForSingleTab() {\n return this.forceTabs && this.tabs.length === 1;\n },\n currentTabIndex() {\n return this.tabs.findIndex((tab) => tab.id === this.activeTab);\n }\n },\n watch: {\n tabs() {\n if (this.active) {\n this.updateActive();\n }\n },\n active(active) {\n if (active !== this.activeTab) {\n this.updateActive();\n }\n }\n },\n methods: {\n /**\n * Set the current active tab\n *\n * @param {string} id the id of the tab\n */\n setActive(id) {\n this.activeTab = id;\n this.$emit(\"update:active\", this.activeTab);\n },\n /**\n * Focus the previous tab\n * and emit to the parent component\n */\n focusPreviousTab() {\n if (this.currentTabIndex > 0) {\n this.setActive(this.tabs[this.currentTabIndex - 1].id);\n }\n this.focusActiveTab();\n },\n /**\n * Focus the next tab\n * and emit to the parent component\n */\n focusNextTab() {\n if (this.currentTabIndex < this.tabs.length - 1) {\n this.setActive(this.tabs[this.currentTabIndex + 1].id);\n }\n this.focusActiveTab();\n },\n /**\n * Focus the first tab\n * and emit to the parent component\n */\n focusFirstTab() {\n this.setActive(this.tabs[0].id);\n this.focusActiveTab();\n },\n /**\n * Focus the last tab\n * and emit to the parent component\n */\n focusLastTab() {\n this.setActive(this.tabs[this.tabs.length - 1].id);\n this.focusActiveTab();\n },\n /**\n * Focus the current active tab\n */\n focusActiveTab() {\n this.$el.querySelector(`#tab-button-${this.activeTab}`).focus();\n },\n /**\n * Focus the content on tab\n * see aria accessibility guidelines\n */\n focusActiveTabContent() {\n this.$el.querySelector(\"#tab-\" + this.activeTab).focus();\n },\n /**\n * Update the current active tab\n */\n updateActive() {\n this.activeTab = this.active && this.tabs.some(({ id }) => id === this.active) ? this.active : this.tabs[0]?.id ?? \"\";\n },\n /**\n * Register child tab in the tabs\n *\n * @param {object} tab child tab passed to slot\n */\n registerTab(tab) {\n this.tabs.push(tab);\n this.tabs.sort((a, b) => {\n if (a.order === b.order) {\n return a.name.localeCompare(b.name, [getCanonicalLocale()]);\n }\n return a.order - b.order;\n });\n this.updateActive();\n },\n /**\n * Unregister child tab from the tabs\n *\n * @param {string} id tab's id\n */\n unregisterTab(id) {\n const tabIndex = this.tabs.findIndex((tab) => tab.id === id);\n if (tabIndex !== -1) {\n this.tabs.splice(tabIndex, 1);\n }\n if (this.activeTab === id) {\n this.updateActive();\n }\n }\n }\n};\nconst _hoisted_1$1 = { class: \"app-sidebar-tabs\" };\nfunction _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcAppSidebarTabsButton = resolveComponent(\"NcAppSidebarTabsButton\");\n return openBlock(), createElementBlock(\"div\", _hoisted_1$1, [\n $options.hasMultipleTabs || $options.showForSingleTab ? (openBlock(), createElementBlock(\"div\", {\n key: 0,\n role: \"tablist\",\n class: normalizeClass([\"app-sidebar-tabs__nav\", { \"app-sidebar-tabs__nav--legacy\": $data.isLegacy34 }]),\n onKeydown: [\n _cache[0] || (_cache[0] = withKeys(withModifiers((...args) => $options.focusPreviousTab && $options.focusPreviousTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"left\"])),\n _cache[1] || (_cache[1] = withKeys(withModifiers((...args) => $options.focusNextTab && $options.focusNextTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"right\"])),\n _cache[2] || (_cache[2] = withKeys(withModifiers((...args) => $options.focusActiveTabContent && $options.focusActiveTabContent(...args), [\"exact\", \"prevent\", \"stop\"]), [\"tab\"])),\n _cache[3] || (_cache[3] = withKeys(withModifiers((...args) => $options.focusFirstTab && $options.focusFirstTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"home\"])),\n _cache[4] || (_cache[4] = withKeys(withModifiers((...args) => $options.focusLastTab && $options.focusLastTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"end\"])),\n _cache[5] || (_cache[5] = withKeys(withModifiers((...args) => $options.focusFirstTab && $options.focusFirstTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"page-up\"])),\n _cache[6] || (_cache[6] = withKeys(withModifiers((...args) => $options.focusLastTab && $options.focusLastTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"page-down\"]))\n ]\n }, [\n (openBlock(true), createElementBlock(Fragment, null, renderList($data.tabs, (tab) => {\n return openBlock(), createBlock(_component_NcAppSidebarTabsButton, {\n id: `tab-button-${tab.id}`,\n key: tab.id,\n class: \"app-sidebar-tabs__tab\",\n \"aria-controls\": `tab-${tab.id}`,\n selected: $data.activeTab === tab.id,\n tab,\n \"onUpdate:selected\": ($event) => $options.setActive(tab.id)\n }, null, 8, [\"id\", \"aria-controls\", \"selected\", \"tab\", \"onUpdate:selected\"]);\n }), 128))\n ], 34)) : createCommentVNode(\"\", true),\n createElementVNode(\"div\", {\n class: normalizeClass([\"app-sidebar-tabs__content\", { \"app-sidebar-tabs__content--multiple\": $options.hasMultipleTabs }])\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 2)\n ]);\n}\nconst NcAppSidebarTabs = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"render\", _sfc_render$1], [\"__scopeId\", \"data-v-e74d1502\"]]);\nregister(t15);\nconst _sfc_main = {\n name: \"NcAppSidebar\",\n components: {\n NcActions,\n NcAppSidebarHeader: _sfc_main$7,\n NcAppSidebarTabs,\n NcButton,\n NcLoadingIcon,\n NcEmptyContent,\n IconArrowRight,\n IconClose,\n IconDockRight,\n IconStar,\n IconStarOutline\n },\n directives: {\n Focus: directive,\n /** @type {import('vue').ObjectDirective} */\n ClickOutside: vOnClickOutside\n },\n inject: {\n ncContentSelector: {\n from: CONTENT_SELECTOR_KEY,\n default: void 0\n }\n },\n props: {\n /**\n * The active tab\n */\n active: {\n type: String,\n default: \"\"\n },\n /**\n * Main text of the sidebar\n */\n name: {\n type: String,\n required: true\n },\n /**\n * Allow to edit the sidebar name.\n */\n nameEditable: {\n type: Boolean,\n default: false\n },\n /**\n * Placeholder in the edit field if the name is editable.\n */\n namePlaceholder: {\n type: String,\n default: \"\"\n },\n /**\n * Secondary name of the sidebar (subline)\n */\n subname: {\n type: String,\n default: \"\"\n },\n /**\n * Title to display for the subname.\n */\n subtitle: {\n type: String,\n default: \"\"\n },\n /**\n * Url to the top header background image\n * Applied with css\n */\n background: {\n type: String,\n default: \"\"\n },\n /**\n * Enable the favourite icon if not null\n * See fired events\n */\n starred: {\n type: Boolean,\n default: null\n },\n /**\n * Show loading spinner instead of the star icon\n */\n starLoading: {\n type: Boolean,\n default: false\n },\n /**\n * Show loading spinner instead of tabs\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Display the sidebar in compact mode\n */\n compact: {\n type: Boolean,\n default: false\n },\n /**\n * Only display close button and default slot content.\n * Don't display other header content and primary and secondary actions.\n * Useful when showing the EmptyContent component as content.\n */\n empty: {\n type: Boolean,\n default: false\n },\n /**\n * Force the actions to display in a three dot menu\n */\n forceMenu: {\n type: Boolean,\n default: false\n },\n /**\n * Force the tab navigation to display even if there is only one tab\n */\n forceTabs: {\n type: Boolean,\n default: false\n },\n /**\n * Linkify the name\n */\n linkifyName: {\n type: Boolean,\n default: false\n },\n /**\n * Title to display for the name.\n * Can be set to the same text in case it's too long.\n */\n title: {\n type: String,\n default: \"\"\n },\n /**\n * Allow to conditionally show the sidebar\n * You can also use `v-if` on the sidebar, but using the open prop allow to keep\n * the sidebar inside the DOM for performance if it is opened and closed multiple times.\n *\n * When using the `open` property to close the sidebar a built-in toggle button will be shown to reopen it,\n * similar to the app navigation. You can remove this button with the `no-toggle` prop.\n */\n open: {\n type: Boolean,\n default: true\n },\n /**\n * Custom classes to assign to the sidebar toggle button.\n * If needed this can be used to assign styles to the button using `:deep()` selector.\n */\n toggleClasses: {\n type: [String, Array, Object],\n default: \"\"\n },\n /**\n * Custom attrs to assign to the sidebar toggle button.\n */\n toggleAttrs: {\n type: Object,\n default: void 0\n },\n /**\n * Do not add the built-in toggle button with `open` prop.\n */\n noToggle: {\n type: Boolean,\n default: false\n }\n },\n emits: [\n \"close\",\n \"closed\",\n \"opened\",\n // 'figureClick', not emitted on purpose to make \"hasFigureClickListener\" work\n \"update:active\",\n \"update:name\",\n \"update:nameEditable\",\n \"update:open\",\n \"update:starred\",\n \"submitName\",\n \"dismissEditing\"\n ],\n setup() {\n const headerRef = ref(null);\n provide(\"NcAppSidebar:header:ref\", headerRef);\n return {\n uid: createElementId(),\n isMobile: useIsSmallMobile(),\n headerRef\n };\n },\n data() {\n return {\n changeNameTranslated: t(\"Change name\"),\n closeTranslated: t(\"Close sidebar\"),\n favoriteTranslated: t(\"Favorite\"),\n isStarred: this.starred,\n focusTrap: null,\n elementToReturnFocus: null\n };\n },\n computed: {\n canStar() {\n return this.isStarred !== null;\n },\n hasFigureClickListener() {\n return !!this.$attrs.onFigureClick;\n }\n },\n watch: {\n starred() {\n this.isStarred = this.starred;\n },\n isMobile() {\n this.toggleFocusTrap();\n },\n open() {\n this.checkToggleButtonContainerAvailability();\n }\n },\n created() {\n this.preserveElementToReturnFocus();\n this.checkToggleButtonContainerAvailability();\n },\n beforeUnmount() {\n this.$emit(\"closed\");\n this.focusTrap?.deactivate();\n },\n methods: {\n isSlotPopulated,\n t,\n preserveElementToReturnFocus() {\n if (document.activeElement && document.activeElement !== document.body) {\n this.elementToReturnFocus = document.activeElement;\n if (this.elementToReturnFocus.getAttribute(\"role\") === \"menuitem\") {\n const menu = this.elementToReturnFocus.closest('[role=\"menu\"]');\n if (menu) {\n const menuTrigger = document.querySelector(`[aria-controls=\"${menu.id}\"]`);\n this.elementToReturnFocus = menuTrigger;\n }\n }\n }\n },\n initFocusTrap() {\n if (this.focusTrap) {\n return;\n }\n this.focusTrap = createFocusTrap([\n // The sidebar itself\n this.$refs.sidebar,\n // Nextcloud Server header navigation\n document.querySelector(\"#header\")\n ], {\n allowOutsideClick: true,\n fallbackFocus: this.$refs.closeButton.$el,\n trapStack: getTrapStack(),\n escapeDeactivates: false\n });\n },\n /**\n * Activate focus trap if it is currently needed, otherwise deactivate\n */\n toggleFocusTrap() {\n if (this.open && this.isMobile) {\n this.initFocusTrap();\n this.focusTrap.activate();\n } else {\n this.focusTrap?.deactivate();\n }\n },\n /**\n * Close the sidebar on pressing the escape key on mobile\n *\n * @param {KeyboardEvent} event key down event\n */\n onKeydownEsc(event) {\n if (this.isMobile) {\n event.stopPropagation();\n this.closeSidebar();\n }\n },\n onAfterEnter(element) {\n if (this.elementToReturnFocus) {\n this.focus();\n }\n this.toggleFocusTrap();\n this.$emit(\"opened\", element);\n },\n onAfterLeave(element) {\n this.$emit(\"closed\", element);\n this.toggleFocusTrap();\n this.elementToReturnFocus?.focus({ focusVisible: true });\n this.elementToReturnFocus = null;\n },\n /**\n * Used to tell parent component the user asked to close the sidebar\n *\n * @param {Event} e close icon click event\n */\n closeSidebar(e) {\n this.$emit(\"close\", e);\n this.$emit(\"update:open\", false);\n },\n /**\n * Emit figure click event to parent component\n *\n * @param {Event} e click event\n */\n onFigureClick(e) {\n this.$emit(\"figureClick\", e);\n },\n /**\n * Toggle the favourite state\n * and emit to the parent component\n */\n toggleStarred() {\n this.isStarred = !this.isStarred;\n this.$emit(\"update:starred\", this.isStarred);\n },\n async editName() {\n this.$emit(\"update:nameEditable\", true);\n if (this.nameEditable) {\n await this.$nextTick();\n this.$refs.nameInput.focus();\n }\n },\n /**\n * Focus the sidebar\n *\n * @public\n */\n focus() {\n if (!this.open && !this.noToggle) {\n this.$refs.toggle.$el.focus();\n return;\n }\n try {\n this.headerRef.focus();\n } catch {\n warn(\"NcAppSidebar should have focusable header for accessibility reasons. Use NcAppSidebarHeader component.\");\n }\n },\n /**\n * Focus the active tab\n *\n * @public\n */\n focusActiveTabContent() {\n this.preserveElementToReturnFocus();\n this.$refs.tabs.focusActiveTabContent();\n },\n /**\n * Check if the toggle button container is available\n */\n checkToggleButtonContainerAvailability() {\n if (this.open === false && !this.noToggle && !this.ncContentSelector) {\n logger.warn(\"[NcAppSidebar] It looks like you want to use NcAppSidebar with the built-in toggle button. This feature is only available when NcAppSidebar is used in NcContent.\");\n }\n },\n /**\n * Emit name change event to parent component\n *\n * @param {Event} event input event\n */\n onNameInput(event) {\n this.$emit(\"update:name\", event.target.value);\n },\n /**\n * Emit when the name form edit confirm button is pressed in order\n * to change the name.\n *\n * @param {Event} event submit event\n */\n onSubmitName(event) {\n this.$emit(\"update:nameEditable\", false);\n this.$emit(\"submitName\", event);\n },\n onDismissEditing() {\n this.$emit(\"update:nameEditable\", false);\n this.$emit(\"dismissEditing\");\n },\n onUpdateActive(activeTab) {\n this.$emit(\"update:active\", activeTab);\n }\n }\n};\nconst _hoisted_1 = [\"aria-labelledby\"];\nconst _hoisted_2 = { class: \"app-sidebar-header__info\" };\nconst _hoisted_3 = {\n key: 0,\n class: \"app-sidebar-header__tertiary-actions\"\n};\nconst _hoisted_4 = { class: \"app-sidebar-header__name-container\" };\nconst _hoisted_5 = { class: \"app-sidebar-header__mainname-container\" };\nconst _hoisted_6 = [\"placeholder\", \"value\"];\nconst _hoisted_7 = [\"title\"];\nconst _hoisted_8 = {\n key: 2,\n class: \"app-sidebar-header__description\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_IconDockRight = resolveComponent(\"IconDockRight\");\n const _component_NcButton = resolveComponent(\"NcButton\");\n const _component_NcLoadingIcon = resolveComponent(\"NcLoadingIcon\");\n const _component_IconStar = resolveComponent(\"IconStar\");\n const _component_IconStarOutline = resolveComponent(\"IconStarOutline\");\n const _component_NcAppSidebarHeader = resolveComponent(\"NcAppSidebarHeader\");\n const _component_IconArrowRight = resolveComponent(\"IconArrowRight\");\n const _component_NcActions = resolveComponent(\"NcActions\");\n const _component_IconClose = resolveComponent(\"IconClose\");\n const _component_NcAppSidebarTabs = resolveComponent(\"NcAppSidebarTabs\");\n const _component_NcEmptyContent = resolveComponent(\"NcEmptyContent\");\n const _directive_focus = resolveDirective(\"focus\");\n const _directive_click_outside = resolveDirective(\"click-outside\");\n return openBlock(), createBlock(Transition, {\n appear: \"\",\n name: \"slide-right\",\n onAfterEnter: $options.onAfterEnter,\n onAfterLeave: $options.onAfterLeave\n }, {\n default: withCtx(() => [\n withDirectives(createElementVNode(\"aside\", {\n id: \"app-sidebar-vue\",\n ref: \"sidebar\",\n class: \"app-sidebar\",\n \"aria-labelledby\": `app-sidebar-vue-${$setup.uid}__header`,\n onKeydown: _cache[6] || (_cache[6] = withKeys((...args) => $options.onKeydownEsc && $options.onKeydownEsc(...args), [\"esc\"]))\n }, [\n $options.ncContentSelector && !$props.open && !$props.noToggle ? (openBlock(), createBlock(Teleport, {\n key: 0,\n to: $options.ncContentSelector\n }, [\n createVNode(_component_NcButton, mergeProps({\n ref: \"toggle\",\n \"aria-label\": $options.t(\"Open sidebar\"),\n class: [\"app-sidebar__toggle\", $props.toggleClasses],\n variant: \"tertiary\"\n }, $props.toggleAttrs, {\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"update:open\", true))\n }), {\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"toggle-icon\", {}, () => [\n createVNode(_component_IconDockRight, { size: 20 })\n ], true)\n ]),\n _: 3\n }, 16, [\"aria-label\", \"class\"])\n ], 8, [\"to\"])) : createCommentVNode(\"\", true),\n createElementVNode(\"header\", {\n class: normalizeClass([\"app-sidebar-header\", {\n \"app-sidebar-header--with-figure\": $options.isSlotPopulated(_ctx.$slots.header?.()) || $props.background,\n \"app-sidebar-header--compact\": $props.compact\n }])\n }, [\n !$props.empty ? renderSlot(_ctx.$slots, \"info\", { key: 0 }, () => [\n createElementVNode(\"div\", _hoisted_2, [\n $options.isSlotPopulated(_ctx.$slots.header?.()) || $props.background ? (openBlock(), createElementBlock(\"div\", {\n key: 0,\n class: normalizeClass([\"app-sidebar-header__figure\", {\n \"app-sidebar-header__figure--with-action\": $options.hasFigureClickListener\n }]),\n style: normalizeStyle({\n backgroundImage: `url(${$props.background})`\n }),\n tabindex: \"0\",\n onClick: _cache[1] || (_cache[1] = (...args) => $options.onFigureClick && $options.onFigureClick(...args)),\n onKeydown: _cache[2] || (_cache[2] = withKeys((...args) => $options.onFigureClick && $options.onFigureClick(...args), [\"enter\"]))\n }, [\n renderSlot(_ctx.$slots, \"header\", { class: \"app-sidebar-header__background\" }, void 0, true)\n ], 38)) : createCommentVNode(\"\", true),\n createElementVNode(\"div\", {\n class: normalizeClass([\"app-sidebar-header__desc\", {\n \"app-sidebar-header__desc--with-tertiary-action\": $options.canStar || $options.isSlotPopulated(_ctx.$slots[\"tertiary-actions\"]?.()),\n \"app-sidebar-header__desc--editable\": $props.nameEditable && !$props.subname,\n \"app-sidebar-header__desc--with-subname--editable\": $props.nameEditable && $props.subname,\n \"app-sidebar-header__desc--without-actions\": !$options.isSlotPopulated(_ctx.$slots[\"secondary-actions\"]?.())\n }])\n }, [\n $options.canStar || $options.isSlotPopulated(_ctx.$slots[\"tertiary-actions\"]?.()) ? (openBlock(), createElementBlock(\"div\", _hoisted_3, [\n renderSlot(_ctx.$slots, \"tertiary-actions\", {}, () => [\n $options.canStar ? (openBlock(), createBlock(_component_NcButton, {\n key: 0,\n \"aria-label\": $data.favoriteTranslated,\n pressed: $data.isStarred,\n class: \"app-sidebar-header__star\",\n variant: \"secondary\",\n onClick: withModifiers($options.toggleStarred, [\"prevent\"])\n }, {\n icon: withCtx(() => [\n $props.starLoading ? (openBlock(), createBlock(_component_NcLoadingIcon, { key: 0 })) : $data.isStarred ? (openBlock(), createBlock(_component_IconStar, {\n key: 1,\n size: 20\n })) : (openBlock(), createBlock(_component_IconStarOutline, {\n key: 2,\n size: 20\n }))\n ]),\n _: 1\n }, 8, [\"aria-label\", \"pressed\", \"onClick\"])) : createCommentVNode(\"\", true)\n ], true)\n ])) : createCommentVNode(\"\", true),\n createElementVNode(\"div\", _hoisted_4, [\n createElementVNode(\"div\", _hoisted_5, [\n withDirectives(createVNode(_component_NcAppSidebarHeader, {\n class: \"app-sidebar-header__mainname\",\n name: $props.name,\n linkify: $props.linkifyName,\n title: $props.title,\n tabindex: $props.nameEditable ? 0 : -1,\n onClick: withModifiers($options.editName, [\"self\"])\n }, null, 8, [\"name\", \"linkify\", \"title\", \"tabindex\", \"onClick\"]), [\n [vShow, !$props.nameEditable]\n ]),\n $props.nameEditable ? withDirectives((openBlock(), createElementBlock(\"form\", {\n key: 0,\n class: \"app-sidebar-header__mainname-form\",\n onSubmit: _cache[5] || (_cache[5] = withModifiers((...args) => $options.onSubmitName && $options.onSubmitName(...args), [\"prevent\"]))\n }, [\n withDirectives(createElementVNode(\"input\", {\n ref: \"nameInput\",\n class: \"app-sidebar-header__mainname-input\",\n type: \"text\",\n placeholder: $props.namePlaceholder,\n value: $props.name,\n onKeydown: _cache[3] || (_cache[3] = withKeys(withModifiers((...args) => $options.onDismissEditing && $options.onDismissEditing(...args), [\"stop\"]), [\"esc\"])),\n onInput: _cache[4] || (_cache[4] = (...args) => $options.onNameInput && $options.onNameInput(...args))\n }, null, 40, _hoisted_6), [\n [_directive_focus]\n ]),\n createVNode(_component_NcButton, {\n \"aria-label\": $data.changeNameTranslated,\n type: \"submit\",\n variant: \"tertiary-no-background\"\n }, {\n icon: withCtx(() => [\n createVNode(_component_IconArrowRight, { size: 20 })\n ]),\n _: 1\n }, 8, [\"aria-label\"])\n ], 32)), [\n [_directive_click_outside, () => $options.onSubmitName()]\n ]) : createCommentVNode(\"\", true),\n $options.isSlotPopulated(_ctx.$slots[\"secondary-actions\"]?.()) ? (openBlock(), createBlock(_component_NcActions, {\n key: 1,\n class: \"app-sidebar-header__menu\",\n forceMenu: $props.forceMenu\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"secondary-actions\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"forceMenu\"])) : createCommentVNode(\"\", true)\n ]),\n $props.subname.trim() !== \"\" || _ctx.$slots[\"subname\"] ? (openBlock(), createElementBlock(\"p\", {\n key: 0,\n title: $props.subtitle || void 0,\n class: \"app-sidebar-header__subname\"\n }, [\n renderSlot(_ctx.$slots, \"subname\", {}, () => [\n createTextVNode(toDisplayString($props.subname), 1)\n ], true)\n ], 8, _hoisted_7)) : createCommentVNode(\"\", true)\n ])\n ], 2)\n ])\n ], true) : (openBlock(), createBlock(_component_NcAppSidebarHeader, {\n key: 1,\n class: \"app-sidebar-header__mainname--hidden\",\n name: $props.name,\n tabindex: \"-1\"\n }, null, 8, [\"name\"])),\n createVNode(_component_NcButton, {\n ref: \"closeButton\",\n \"aria-label\": $data.closeTranslated,\n title: $data.closeTranslated,\n class: \"app-sidebar__close\",\n variant: \"tertiary\",\n onClick: withModifiers($options.closeSidebar, [\"prevent\"])\n }, {\n icon: withCtx(() => [\n createVNode(_component_IconClose, { size: 20 })\n ]),\n _: 1\n }, 8, [\"aria-label\", \"title\", \"onClick\"]),\n $options.isSlotPopulated(_ctx.$slots.description?.()) && !$props.empty ? (openBlock(), createElementBlock(\"div\", _hoisted_8, [\n renderSlot(_ctx.$slots, \"description\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true)\n ], 2),\n withDirectives(createVNode(_component_NcAppSidebarTabs, {\n ref: \"tabs\",\n active: $props.active,\n forceTabs: $props.forceTabs,\n \"onUpdate:active\": $options.onUpdateActive\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"active\", \"forceTabs\", \"onUpdate:active\"]), [\n [vShow, !$props.loading]\n ]),\n $props.loading ? (openBlock(), createBlock(_component_NcEmptyContent, { key: 1 }, {\n icon: withCtx(() => [\n createVNode(_component_NcLoadingIcon, { size: 64 })\n ]),\n _: 1\n })) : createCommentVNode(\"\", true)\n ], 40, _hoisted_1), [\n [vShow, $props.open]\n ])\n ]),\n _: 3\n }, 8, [\"onAfterEnter\", \"onAfterLeave\"]);\n}\nconst NcAppSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-e8979b7f\"]]);\nexport {\n NcAppSidebar as N\n};\n//# sourceMappingURL=NcAppSidebar-DX26aRNB.mjs.map\n","import '../assets/NcAppSidebarTab-Xd3HTDbw.css';\nimport { openBlock, createElementBlock, normalizeClass, createElementVNode, toDisplayString, renderSlot } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcAppSidebarTab\",\n inject: [\"registerTab\", \"unregisterTab\", \"getActiveTab\", \"isTablistShown\"],\n props: {\n /**\n * Unique id of the sidebar tab\n */\n id: {\n type: String,\n required: true\n },\n /**\n * Tab name in navigation\n */\n name: {\n type: String,\n required: true\n },\n /**\n * Tab icon's html class in navigation. Used if #icon slot is not provided\n */\n icon: {\n type: String,\n default: \"\"\n },\n /**\n * Tab order in navigation. If not provided, name is used.\n */\n order: {\n type: Number,\n default: 0\n }\n },\n emits: [\n \"bottomReached\",\n \"scroll\"\n ],\n expose: [\"id\", \"name\", \"icon\", \"order\", \"renderIcon\"],\n computed: {\n /**\n * Is the current tab an active tab, that should be shown?\n *\n * @return {boolean}\n */\n isActive() {\n return this.getActiveTab() === this.id;\n }\n },\n created() {\n this.registerTab(this);\n },\n beforeUnmount() {\n this.unregisterTab(this.id);\n },\n methods: {\n onScroll(event) {\n if (this.$el.scrollHeight - this.$el.scrollTop === this.$el.clientHeight) {\n this.$emit(\"bottomReached\", event);\n }\n this.$emit(\"scroll\", event);\n },\n /**\n * Render tab's icon slot if any\n *\n * @return {import('vue').VNode[]}\n */\n renderIcon() {\n return this.$slots.icon?.();\n }\n }\n};\nconst _hoisted_1 = [\"id\", \"aria-hidden\", \"aria-label\", \"aria-labelledby\", \"role\", \"tabindex\"];\nconst _hoisted_2 = { class: \"hidden-visually\" };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"section\", {\n id: `tab-${$props.id}`,\n \"aria-hidden\": !$options.isActive,\n \"aria-label\": $options.isTablistShown() ? void 0 : $props.name,\n \"aria-labelledby\": $options.isTablistShown() ? `tab-button-${$props.id}` : void 0,\n class: normalizeClass([\"app-sidebar__tab\", { \"app-sidebar__tab--active\": $options.isActive }]),\n role: $options.isTablistShown() ? \"tabpanel\" : void 0,\n tabindex: $options.isTablistShown() ? 0 : -1,\n onScroll: _cache[0] || (_cache[0] = (...args) => $options.onScroll && $options.onScroll(...args))\n }, [\n createElementVNode(\"h3\", _hoisted_2, toDisplayString($props.name), 1),\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 42, _hoisted_1);\n}\nconst NcAppSidebarTab = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-dba10798\"]]);\nexport {\n NcAppSidebarTab as N\n};\n//# sourceMappingURL=NcAppSidebarTab-DOSDDbGA.mjs.map\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createApp } from 'vue'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\nimport router from './router.js'\nimport App from './App.vue'\n\nconst app = createApp(App)\napp.config.globalProperties.t = t\napp.config.globalProperties.n = n\napp.use(router)\napp.mount('#absence-app')\n"],"names":["isBrowser","isRouteComponent","component","isESModule","obj","assign","applyToParams","fn","params","newParams","key","value","isArray","noop","mergeOptions","defaults","partialOptions","options","HASH_RE","AMPERSAND_RE","SLASH_RE","EQUAL_RE","IM_RE","PLUS_RE","ENC_BRACKET_OPEN_RE","ENC_BRACKET_CLOSE_RE","ENC_CARET_RE","ENC_BACKTICK_RE","ENC_CURLY_OPEN_RE","ENC_PIPE_RE","ENC_CURLY_CLOSE_RE","ENC_SPACE_RE","commonEncode","text","encodeHash","encodeQueryValue","encodeQueryKey","encodePath","encodeParam","decode","TRAILING_SLASH_RE","removeTrailingSlash","path","parseURL","parseQuery$1","location","currentLocation","query","searchString","hash","hashPos","searchPos","resolveRelativePath","stringifyURL","stringifyQuery$1","stripBase","pathname","base","isSameRouteLocation","a","b","aLastIndex","bLastIndex","isSameRouteRecord","isSameRouteLocationParams","isSameRouteLocationParamsValue","isEquivalentArray","i","to","from","fromSegments","toSegments","lastToSegment","position","toPosition","segment","START_LOCATION_NORMALIZED","NavigationType","NavigationType$1","NavigationDirection","NavigationDirection$1","normalizeBase","baseEl","BEFORE_HASH_RE","createHref","getElementPosition","el","offset","docRect","elRect","computeScrollPosition","scrollToPosition","scrollToOptions","positionEl","isIdSelector","getScrollKey","delta","scrollPositions","saveScrollPosition","scrollPosition","getSavedScrollPosition","scroll","isRouteLocation","route","isRouteName","name","ErrorTypes","ErrorTypes$1","NavigationFailureSymbol","createRouterError","type","isNavigationFailure","error","parseQuery","search","searchParams","searchParam","eqPos","currentValue","stringifyQuery","v","value$1","normalizeQuery","normalizedQuery","matchedRouteKey","viewDepthKey","routerKey","routeLocationKey","routerViewLocationKey","useCallbacks","handlers","add","handler","reset","guardToPromiseFn","guard","record","runWithContext","enterCallbackArray","resolve","reject","next","valid","guardReturn","guardCall","err","extractComponentsGuards","matched","guardType","guards","rawComponent","componentPromise","resolved","resolvedComponent","extractChangingRecords","leavingRecords","updatingRecords","enteringRecords","len","recordFrom","recordTo","createBaseLocation","createCurrentLocation","location$1","slicePos","pathFromHash","useHistoryListeners","historyState","replace","listeners","teardowns","pauseState","popStateHandler","state","fromState","listener","pauseListeners","listen","callback","teardown","index","beforeUnloadListener","history$1","destroy","buildState","back","current","forward","replaced","computeScroll","useHistoryStateNavigation","changeLocation","replace$1","hashIndex","url","data","push","currentState","createWebHistory","historyNavigation","historyListeners","go","triggerListeners","routerHistory","createWebHashHistory","TokenType","TokenType$1","TokenizerState","TokenizerState$1","ROOT_TOKEN","VALID_PARAM_RE","tokenizePath","crash","message","buffer","previousState","tokens","finalizeSegment","char","customRe","consumeBuffer","addCharToBuffer","BASE_PARAM_PATTERN","BASE_PATH_PARSER_OPTIONS","PathScore","PathScore$1","REGEX_CHARS_RE","tokensToParser","segments","extraOptions","score","pattern","keys","segmentScores","tokenIndex","token","subSegmentScore","repeatable","optional","regexp","re$1","subPattern","re","parse","match","stringify","avoidDuplicatedSlash","param","compareScoreArray","diff","comparePathParserScore","aScore","bScore","comp","isLastScoreNegative","last","PATH_PARSER_OPTIONS_DEFAULTS","createRouteRecordMatcher","parent","parser","matcher","createRouterMatcher","routes","globalOptions","matchers","matcherMap","getRecordMatcher","addRoute","originalRecord","isRootAdd","mainNormalizedRecord","normalizeRouteRecord","normalizedRecords","aliases","alias","originalMatcher","normalizedRecord","parentPath","connectingSlash","isAliasRecord","removeRoute","isMatchable","insertMatcher","children","matcherRef","getRoutes","findInsertionIndex","pickParams","k","m","parentMatcher","mergeMetaFields","clearRoutes","normalized","normalizeRecordProps","propsObject","props","meta","lower","upper","mid","insertionAncestor","getInsertionAncestor","ancestor","useLink","router","inject","currentRoute","computed","unref","activeRecordIndex","length","routeMatched","currentMatched","parentRecordPath","getOriginalPath","isActive","includesParams","isExactActive","navigate","e","guardEvent","p","preferSingleVNode","vnodes","RouterLinkImpl","defineComponent","slots","link","reactive","elClass","getLinkClass","h","RouterLink","target","outer","inner","innerValue","outerValue","propClass","globalClass","defaultClass","RouterViewImpl","attrs","injectedRoute","routeToDisplay","injectedDepth","depth","initialDepth","matchedRoute","matchedRouteRef","provide","viewRef","ref","watch","instance","oldInstance","oldName","currentName","ViewComponent","normalizeSlot","routePropsOption","routeProps","vnode","slot","slotContent","RouterView","createRouter","beforeGuards","beforeResolveGuards","afterGuards","shallowRef","pendingLocation","normalizeParams","paramValue","encodeParams","decodeParams","parentOrRoute","recordMatcher","routeMatcher","hasRoute","rawLocation","locationNormalized","matchedRoute$1","href$1","matcherLocation","targetParams","fullPath","href","locationAsObject","checkCanceledNavigation","pushWithRedirect","handleRedirectRecord","lastMatched","redirect","newTargetLocation","redirectedFrom","targetLocation","force","shouldRedirect","toLocation","failure","handleScroll","markAsReady","triggerError","failure$1","finalizeNavigation","triggerAfterEach","checkCanceledNavigationAndReject","app","installedApps","canceledNavigationCheck","runGuardQueue","beforeEnter","isPush","isFirstNavigation","removeHistoryListener","setupListeners","_from","info","readyHandlers","errorListeners","ready","list","isReady","resolve$1","scrollBehavior","nextTick","started","reactiveRoute","shallowReactive","unmountApp","promise","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","__props","nameId","createElementId","_ctx","_cache","openBlock","createElementBlock","renderSlot","createCommentVNode","createTextVNode","toDisplayString","NcEmptyContent","_export_sfc","_createElementBlock","_mergeProps","$props","$event","_createElementVNode","_openBlock","duration","start","step","now","eased","_hoisted_7","_hoisted_9","_hoisted_10","$options","$data","_toDisplayString","_hoisted_6","_hoisted_8","_Fragment","_createTextVNode","_hoisted_11","BalanceRing","t","n","_createVNode","_component_BalanceRing","_normalizeStyle","d","x","_renderList","bar","humanizedCount","getCanonicalLocale","originalCountAsTitleIfNeeded","countAsString","normalizeClass","NcCounterBubble","NcActions","_sfc_main$1","isLegacy34","newValue","event","routerLinkHref","_sfc_render","$setup","_component_NcCounterBubble","resolveComponent","_component_NcActions","createBlock","resolveDynamicComponent","normalizeProps","guardReactiveProps","withCtx","createElementVNode","mergeProps","args","withKeys","withDirectives","vShow","createVNode","createSlots","NcListItem","INJECTION_KEY_THEME","useIsDarkThemeElement","element","toValue","isDarkTheme","checkIfDarkTheme","isDarkSystemTheme","usePreferredDark","updateIsDarkTheme","useMutationObserver","readonly","useInternalIsDarkTheme","createSharedComposable","useIsDarkTheme","enforcedTheme","initialSession","loadState","initialLeaveTypes","store","id","request","api","showError","year","created","showSuccess","updated","res","comment","statusMeta","status","StatusChip","LeaveTypeChip","range","formatRange","days","_normalizeClass","_component_NcListItem","_component_StatusChip","NcButton","Plus","BalanceCard","BarChart","RequestListItem","SkeletonList","PalmIllustration","sickType","today","toIso","approved","r","typeMatches","color","buckets","addWorkingDaysByMonth","month","_hoisted_13","_hoisted_14","_component_NcButton","_component_Plus","row","_createBlock","_component_BalanceCard","_component_BarChart","_hoisted_12","_component_SkeletonList","_TransitionGroup","_component_RequestListItem","_component_NcEmptyContent","_component_PalmIllustration","ACTIONABLE","CheckAll","reports","_component_CheckAll","defaultWindow","isClient","unrefElement","elRef","_$el","plain","useEventListener","register","firstParamTargets","test","toArray","watchImmediate","_firstParamTargets$va","_firstParamTargets$va2","raw_targets","raw_events","raw_listeners","raw_options","_","onCleanup","optionsClone","isObject","cleanups","onClickOutside","window","ignore","capture","detectIframe","controls","shouldListen","shouldIgnore","hasMultipleRoots","vm","checkMultipleRoots","child","isProcessingClick","cleanup","activeEl","stop","stopClickOutsideMap","vOnClickOutside","binding","getRoute","removePrefix","str","prefix","removePrefixes","prefixes","acc","isAbsoluteURL","isNonHttpLink","getBaseUrl","relativeUrl","relativeRouterBase","getRootUrl","potentialRouterPath","getEnabledContactsMenuActions","entry","action","c","s","o","t3","Color","g","toHex","int","calculateStepIncrement","steps","color1","color2","mixPalette","palette","increment","COLOR_RED","COLOR_YELLOW","COLOR_BLUE","generatePalette","palette1","palette2","palette3","hashCode","Md5","finalInt","usernameToColor","username","finalPalette","global","Symbol","STATE_PLAINTEXT","STATE_HTML","STATE_COMMENT","ALLOWED_TAGS_REGEX","NORMALIZE_TAG_REGEX","striptags","html","allowable_tags","tag_replacement","context","init_context","striptags_internal","init_striptags_stream","parse_allowable_tags","tag_buffer","in_quote_char","output","idx","normalize_tag","tag_set","module","this","getAvatarUrl","user","size","guestUrl","themeUrl","generateUrl","fallback","selector","elem","parsedValue","getCapabilities","awaySvg","busySvg","dndSvg","invisibleSvg","onlineSvg","t52","t11","getUserStatusText","mergeModels","useModel","isInvisible","ariaLabel","axios","generateOcsUrl","logger","matchSvg","activeSvg","NcUserStatusIcon","ActionGlobalMixin","ActionTextMixin","NC_ACTIONS_CLOSE_MENU","NcIconSvgWrapper","NC_ACTIONS_IS_SEMANTIC_MENU","behavior","mdiCheck","mdiChevronRight","attributes","_component_NcIconSvgWrapper","normalizeStyle","NcActionButton","NcActionLink","_component_RouterLink","NcActionRouter","NcActionText","t10","userStatus","userId","capabilities","getCurrentUser","icon","browserStorage","getBuilder","getUserHasAvatar","flag","setUserHasAvatar","IconDotsHorizontal","NcLoadingIcon","initials","filteredChars","filtered","actions","item","escape","emojiIcon","subscribe","unsubscribe","avatarUrl","srcset","userHasAvatar","img","_component_NcLoadingIcon","_component_IconDotsHorizontal","_component_NcUserStatusIcon","_directive_click_outside","resolveDirective","Fragment","renderList","NcAvatar","DAY_MS","ChevronLeft","ChevronRight","CalendarBlank","arr","dt","dow","byUid","monthStart","lastIndex","ev","startIdx","endIdx","ids","lt","y","_component_ChevronLeft","_component_ChevronRight","_component_NcAvatar","seg","_component_CalendarBlank","TeamTimeline","_component_TeamTimeline","__expose","__emit","modelValue","emit","focus","select","useAttrs","inputElement","useTemplateRef","hasTrailingIcon","internalPlaceholder","isLegacy","isValidLabel","ariaDescribedby","ariaDescribedby2","handleInput","mdiAlertCircleOutline","NcInputField","t18","t51","inputFieldInstance","defaultTrailingButtonLabels","NcInputFieldPropNames","propsToForward","sharedProps","mdiArrowRight","mdiUndo","mdiClose","NcModal","NcSelect","NcTextField","Magnify","Pencil","ScaleBalance","q","ent","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_component_NcTextField","_component_Magnify","_component_NcSelect","_component_Pencil","_component_ScaleBalance","_component_NcModal","t40","formattedValue","formatValue","formattedMax","formattedMin","getReadableDate","yyyy","MM","dd","hh","mm","startDate","daysSinceBeginningOfYear","weekNumber","onInput","input","time","timezoneOffsetSeconds","inputDateWithTimezone","NcDateTimePickerNative","usableW","usableH","first","f","total","pct","ChartLine","LineChart","DonutChart","tt","months","_component_NcDateTimePickerNative","_component_ChartLine","_component_LineChart","_component_DonutChart","Download","_component_Download","MyLeave","Approvals","Team","HrBalances","HrStatistics","HrWhosOff","HrExports","S","C","w","T","E","ee","A","D","O","L","F","$","j","M","N","z","R","P","I","B","l","u","te","V","H","U","W","G","K","J","Y","Z","X","ie","ne","Q","ae","once","func","wasCalled","result","realAppName","appName","APP_NAME","realAppVersion","appVersion","useAppName","useLocalizedAppName","apps","realAppName2","t27","isMobile","useIsMobile","toggleAppNavigationButton","onMounted","onBeforeUnmount","hide","appNavigationToggle","NcAppContentDetailsToggle","instanceName","Pane","Splitpanes","isRtl","entries","part","useSwipe","direction","listPaneSize","_component_NcAppContentDetailsToggle","_component_Pane","_component_Splitpanes","withModifiers","NcAppContent","NcAppNavigationList","HAS_APP_NAVIGATION_KEY","CONTENT_SELECTOR_KEY","t20","_hoisted_1$1","open","title","mdiMenuOpen","mdiMenu","NcAppNavigationToggle","focusTrap","setHasAppNavigation","warn","appNavigationContainerElement","watchEffect","toggleFocusTrap","toggleNavigationByEventBus","createFocusTrap","toggleNavigation","getTrapStack","onUnmounted","bodyStyles","animationLength","open2","handleEsc","NcAppNavigation","actionProps","_value","headingLevel","NcAppNavigationCaption","ChevronUp","IconArrowRight","t14","IconClose","_component_IconArrowRight","_component_IconClose","vModelText","NcInputConfirmCancel","_sfc_main$3","_hoisted_1$2","_hoisted_2$2","_hoisted_3$2","_hoisted_4$2","_sfc_render$3","_sfc_main$2","_hoisted_2$1","_hoisted_3$1","_hoisted_4$1","_sfc_render$2","Undo","t21","ChevronDown","_sfc_render$1","_component_ChevronUp","_component_ChevronDown","NcAppNavigationIconCollapsible","t23","_sfc_main$4","newVal","_component_NcInputConfirmCancel","_component_NcActionButton","_component_Undo","_component_NcAppNavigationIconCollapsible","NcAppNavigationItem","NcAppNavigationNew","t30","contentSvg","navigationSvg","setAppNavigation","hasAppNavigation","currentFocus","currentImage","onBeforeMount","container","openAppNavigation","Teleport","NcContent","textAreaElement","NcTextArea","NcNoteCard","Send","makeHolidayChecker","weekdays","parseWeekdays","countWorkingDays","types","seen","own","users","payload","_hoisted_21","_hoisted_23","_hoisted_25","_hoisted_26","_hoisted_29","_component_NcNoteCard","_withCtx","label","_hoisted_22","_hoisted_24","_hoisted_27","_hoisted_28","_component_NcTextArea","_component_Send","directive","encodedTlds","encodedUtlds","numeric","ascii","alpha","asciinumeric","alphanumeric","domain","emoji","scheme","slashscheme","whitespace","registerGroup","groups","addToGroups","flags","group","flagsForToken","State","nextState","regex","exactOnly","inputs","templateState","allFlags","ta","tr","ts","WORD","UWORD","ASCIINUMERICAL","ALPHANUMERICAL","LOCALHOST","TLD","UTLD","SCHEME","SLASH_SCHEME","NUM","WS","NL","OPENBRACE","CLOSEBRACE","OPENBRACKET","CLOSEBRACKET","OPENPAREN","CLOSEPAREN","OPENANGLEBRACKET","CLOSEANGLEBRACKET","FULLWIDTHLEFTPAREN","FULLWIDTHRIGHTPAREN","LEFTCORNERBRACKET","RIGHTCORNERBRACKET","LEFTWHITECORNERBRACKET","RIGHTWHITECORNERBRACKET","FULLWIDTHLESSTHAN","FULLWIDTHGREATERTHAN","AMPERSAND","APOSTROPHE","ASTERISK","AT","BACKSLASH","BACKTICK","CARET","COLON","COMMA","DOLLAR","DOT","EQUALS","EXCLAMATION","HYPHEN","PERCENT","PIPE","PLUS","POUND","QUERY","QUOTE","FULLWIDTHMIDDLEDOT","SEMI","SLASH","TILDE","UNDERSCORE","EMOJI$1","SYM","tk","ASCII_LETTER","LETTER","EMOJI","DIGIT","SPACE","CR","LF","EMOJI_VARIATION","EMOJI_JOINER","OBJECT_REPLACEMENT","tlds","utlds","init$2","customSchemes","Start","decodeTlds","Num","Asciinumeric","Alphanumeric","Word","UWord","Nl","Cr","Ws","Emoji","EmojiJoiner","wordjr","uwordjr","fastts","sch","run$1","iterable","stringToArray","charCount","cursor","charCursor","tokenLength","latestAccepting","sinceAccepts","charsSinceAccepts","second","defaultt","jr","encoded","words","stack","digits","popDigitCount","popCount","Options","opts","defaultRender","ignoredTags","uppercaseIgnoredTags","ir","operator","isCallable","option","val","MultiToken","truncate","formatted","protocol","formattedHref","tagName","content","className","rel","eventListeners","createTokenClass","Token","Email","Text","Url","makeState","arg","init$1","qsAccepting","qsNonAccepting","localpartAccepting","Localpart","Domain","Scheme","SlashScheme","LocalpartAt","LocalpartDot","EmailDomain","EmailDomainDot","Email$1","EmailDomainHyphen","DomainHyphen","DomainDot","DomainDotTld","DomainDotTldColon","DomainDotTldColonPort","Url$1","UrlNonaccept","SchemeColon","SlashSchemeColon","SlashSchemeColonSlash","UriPrefix","bracketPairs","OPEN","CLOSE","UrlOpen","UrlOpenQ","UrlOpenSyms","run","multis","textTokens","secondState","multiLength","initMultiToken","Multi","subtokens","INIT","init","tokenize","linkifyString","escapeHTML","escapeAttr","attributesToString","attr","headerRef","_sfc_main$5","_hoisted_1$5","_hoisted_2$3","_hoisted_3$3","_hoisted_4$3","_sfc_render$4","IconDockRight","_hoisted_1$4","IconStar","_hoisted_1$3","IconStarOutline","selected","_sfc_main$6","sidebarTabsButton","sidebarTabsButton_legacy","sidebarTabsButton_selected","sidebarTabsButton__name","sidebarTabsButton__icon","sidebarTabsButton__legacyIcon","style0","cssModules","NcAppSidebarTabsButton","tab","active","tabIndex","_component_NcAppSidebarTabsButton","NcAppSidebarTabs","t15","_sfc_main$7","useIsSmallMobile","isSlotPopulated","menu","menuTrigger","activeTab","_component_IconDockRight","_component_IconStar","_component_IconStarOutline","_component_NcAppSidebarHeader","_component_NcAppSidebarTabs","_directive_focus","Transition","NcAppSidebar","NcAppSidebarTab","AccountGroup","_component_AccountGroup","requested","review","outcome","CoveragePanel","RequestStepper","InformationOutline","CommentOutline","History","Check","Close","CancelIcon","iso","_component_NcAppSidebar","_component_NcAppSidebarTab","_component_InformationOutline","_component_RequestStepper","_component_LeaveTypeChip","_component_Check","_component_Close","_component_CancelIcon","_component_CoveragePanel","_component_CommentOutline","_component_History","RequestDialog","RequestSidebar","CalendarAccountOutline","ClipboardCheck","ChartBar","CalendarMonth","ClipboardPlusOutline","_component_NcContent","_component_NcAppNavigation","_component_NcAppNavigationNew","_component_NcAppNavigationItem","_component_CalendarAccountOutline","_component_ClipboardCheck","_component_NcAppNavigationCaption","_component_ClipboardPlusOutline","_component_ChartBar","_component_CalendarMonth","_component_NcAppContent","_component_router_view","_component_RequestSidebar","_component_RequestDialog","createApp","App"],"mappings":"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","x_google_ignoreList":[0,1,2,3,7,8,9,10,11,19,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,45,46,47,48,49,51,52,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,83,84,85,86,87,88,89,90,91,92,93,94]} \ No newline at end of file +{"version":3,"file":"absence-main.mjs","sources":["../node_modules/@nextcloud/capabilities/dist/index.mjs","../node_modules/splitpanes/dist/splitpanes.esm.js","../node_modules/vue-router/dist/devtools-Bpr7ZAVB.js","../node_modules/vue-router/dist/vue-router.js","../node_modules/@nextcloud/vue/dist/chunks/appName-DyNMVZpX.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppContent-DavgjaFX.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationList-CGSWabRB.mjs","../node_modules/@nextcloud/vue/dist/chunks/constants-Ciwvl5xb.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigation-g57j16pB.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationCaption-VjSWJ8R4.mjs","../node_modules/@nextcloud/vue/dist/chunks/ChevronUp-ChH8oB7p.mjs","../node_modules/@nextcloud/vue/dist/chunks/ArrowRight-B1ncAhus.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcInputConfirmCancel-CGTllrXj.mjs","../node_modules/@nextcloud/vue/dist/chunks/actionGlobal-BZFdtdJL.mjs","../node_modules/@nextcloud/vue/dist/chunks/actionText-BXR0sWNu.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcActionButton-BO5T5ePT.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationItem-CDeYtA3E.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationNew-CBNppM7Q.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcContent-BYh5hWDN.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcCounterBubble-CV0YMrXW.mjs","../node_modules/vue-material-design-icons/AccountGroup.vue","../node_modules/vue-material-design-icons/CalendarAccountOutline.vue","../node_modules/vue-material-design-icons/CalendarMonth.vue","../node_modules/vue-material-design-icons/ChartBar.vue","../node_modules/vue-material-design-icons/ClipboardCheck.vue","../node_modules/vue-material-design-icons/ClipboardPlusOutline.vue","../node_modules/vue-material-design-icons/Download.vue","../node_modules/vue-material-design-icons/Plus.vue","../node_modules/vue-material-design-icons/ScaleBalance.vue","../node_modules/@nextcloud/vue/dist/chunks/constants-wIEKSp2G.mjs","../node_modules/@nextcloud/vue/dist/composables/useIsDarkTheme/index.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcDateTimePickerNative-B8CMOUnH.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcTextArea-Dxzj4zdb.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcInputField-5Sg6EUP6.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcTextField.vue_vue_type_script_setup_true_lang-Bx2esFU2.mjs","../node_modules/vue-material-design-icons/Send.vue","../src/store.js","../src/components/RequestDialog.vue","../node_modules/@vueuse/components/dist/index.js","../node_modules/@nextcloud/vue/dist/directives/Focus/index.mjs","../node_modules/linkifyjs/dist/linkify.mjs","../node_modules/@nextcloud/vue/dist/directives/Linkify/index.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppSidebarHeader.vue_vue_type_script_setup_true_lang-C-QhdyiN.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcEmptyContent-CGAPqk4S.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppSidebar-C8YzAzrZ.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppSidebarTab-DOSDDbGA.mjs","../node_modules/@nextcloud/vue/dist/chunks/autolink-DrIurosL.mjs","../node_modules/@nextcloud/vue/dist/functions/contactsMenu/index.mjs","../node_modules/ts-md5/dist/index.es.js","../node_modules/@nextcloud/vue/dist/chunks/colors-Cv9F-jWS.mjs","../node_modules/@nextcloud/vue/dist/functions/usernameToColor/index.mjs","../node_modules/striptags/src/striptags.js","../node_modules/@nextcloud/vue/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_3c4a673d_lang-DyqakLm5.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcUserStatusIcon-BF5OEQFU.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcActionLink-BFiaYt9A.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcActionRouter-vYFtIOzD.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcActionText-CQ9qwJ0p.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAvatar-1KxMUN7V.mjs","../node_modules/vue-material-design-icons/Cancel.vue","../node_modules/vue-material-design-icons/Check.vue","../node_modules/vue-material-design-icons/Close.vue","../node_modules/vue-material-design-icons/CommentOutline.vue","../node_modules/vue-material-design-icons/History.vue","../node_modules/vue-material-design-icons/InformationOutline.vue","../node_modules/vue-material-design-icons/Pencil.vue","../src/components/StatusChip.vue","../src/components/CoveragePanel.vue","../src/components/LeaveTypeChip.vue","../src/components/RequestStepper.vue","../src/components/RequestSidebar.vue","../src/App.vue","../node_modules/vue-material-design-icons/CheckAll.vue","../node_modules/@nextcloud/vue/dist/chunks/NcListItem-BliLJpvU.mjs","../src/components/RequestListItem.vue","../src/components/SkeletonList.vue","../src/views/Approvals.vue","../node_modules/vue-material-design-icons/Magnify.vue","../src/views/hr/HrBalances.vue","../src/views/hr/HrExports.vue","../node_modules/vue-material-design-icons/ChartLine.vue","../src/components/DonutChart.vue","../src/components/LineChart.vue","../src/views/hr/HrStatistics.vue","../node_modules/vue-material-design-icons/CalendarBlank.vue","../node_modules/vue-material-design-icons/ChevronLeft.vue","../node_modules/vue-material-design-icons/ChevronRight.vue","../src/components/TeamTimeline.vue","../src/views/hr/HrWhosOff.vue","../src/components/BalanceRing.vue","../src/components/BalanceCard.vue","../src/components/BarChart.vue","../src/components/PalmIllustration.vue","../src/views/MyLeave.vue","../src/views/Team.vue","../src/router.js","../src/main.js"],"sourcesContent":["import { loadState } from \"@nextcloud/initial-state\";\nfunction getCapabilities() {\n try {\n return loadState(\"core\", \"capabilities\");\n } catch (error) {\n console.debug(\"Could not find capabilities initial state fall back to _oc_capabilities\");\n if (!(\"_oc_capabilities\" in window)) {\n return {};\n }\n return window[\"_oc_capabilities\"];\n }\n}\nexport {\n getCapabilities\n};\n//# sourceMappingURL=index.mjs.map\n","import { computed as e, createBlock as t, createElementBlock as n, getCurrentInstance as r, h as i, inject as a, nextTick as o, normalizeStyle as s, onBeforeUnmount as c, onMounted as l, openBlock as u, provide as d, ref as f, renderSlot as p, resolveDynamicComponent as m, unref as h, useAttrs as g, useSlots as _, watch as v } from \"vue\";\n//#region src/components/splitpanes/splitpanes.vue\nvar y = /* @__PURE__ */ Object.assign({ inheritAttrs: !1 }, {\n\t__name: \"splitpanes\",\n\tprops: {\n\t\thorizontal: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: !1\n\t\t},\n\t\tpushOtherPanes: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: !0\n\t\t},\n\t\tmaximizePanes: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: !0\n\t\t},\n\t\trtl: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: !1\n\t\t},\n\t\tfirstSplitter: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: !1\n\t\t},\n\t\tkeyboardStep: {\n\t\t\ttype: Number,\n\t\t\tdefault: 5\n\t\t}\n\t},\n\temits: [\n\t\t\"ready\",\n\t\t\"resize\",\n\t\t\"resized\",\n\t\t\"pane-click\",\n\t\t\"pane-maximize\",\n\t\t\"pane-add\",\n\t\t\"pane-remove\",\n\t\t\"splitter-click\",\n\t\t\"splitter-dblclick\",\n\t\t\"direction-changed\"\n\t],\n\tsetup(n, { emit: r }) {\n\t\tlet a = r, s = n, p = g(), h = _(), y = f([]), b = e(() => y.value.reduce((e, t) => (e[~~t.id] = t) && e, {})), x = e(() => y.value.length), S = f(null), C = f(!1), w = f({\n\t\t\tmouseDown: !1,\n\t\t\tdragging: !1,\n\t\t\tactiveSplitter: null,\n\t\t\tcursorOffset: 0\n\t\t}), T = f({\n\t\t\tsplitter: null,\n\t\t\ttimeoutId: null\n\t\t}), E = e(() => ({\n\t\t\t[`splitpanes splitpanes--${s.horizontal ? \"horizontal\" : \"vertical\"}`]: !0,\n\t\t\t\"splitpanes--dragging\": w.value.dragging,\n\t\t\t\"splitpanes--ready\": C.value\n\t\t})), ee = () => {\n\t\t\tdocument.addEventListener(\"mousemove\", k, { passive: !1 }), document.addEventListener(\"mouseup\", A), \"ontouchstart\" in window && (document.addEventListener(\"touchmove\", k, { passive: !1 }), document.addEventListener(\"touchend\", A));\n\t\t}, D = () => {\n\t\t\tdocument.removeEventListener(\"mousemove\", k, { passive: !1 }), document.removeEventListener(\"mouseup\", A), \"ontouchstart\" in window && (document.removeEventListener(\"touchmove\", k, { passive: !1 }), document.removeEventListener(\"touchend\", A));\n\t\t}, O = (e, t) => {\n\t\t\tlet n = e.target.closest(\".splitpanes__splitter\");\n\t\t\tif (n) {\n\t\t\t\tlet { left: t, top: r } = n.getBoundingClientRect(), { clientX: i, clientY: a } = \"ontouchstart\" in window && e.touches ? e.touches[0] : e;\n\t\t\t\tw.value.cursorOffset = s.horizontal ? a - r : i - t;\n\t\t\t}\n\t\t\tee(), w.value.mouseDown = !0, w.value.activeSplitter = t, document.documentElement.style.cursor = s.horizontal ? \"row-resize\" : \"col-resize\";\n\t\t}, k = (e) => {\n\t\t\tw.value.mouseDown && (e.preventDefault(), w.value.dragging || (window.getSelection()?.removeAllRanges(), w.value.dragging = !0), requestAnimationFrame(() => {\n\t\t\t\tL(F(e)), $(\"resize\", { event: e }, !0);\n\t\t\t}));\n\t\t}, A = (e) => {\n\t\t\tw.value.dragging && (window.getSelection()?.removeAllRanges(), $(\"resized\", { event: e }, !0)), w.value.mouseDown = !1, w.value.activeSplitter = null, setTimeout(() => {\n\t\t\t\tw.value.dragging = !1, D(), document.documentElement.style.cursor = \"\";\n\t\t\t}, 100);\n\t\t}, j = (e, t) => {\n\t\t\t\"ontouchstart\" in window && (e.preventDefault(), T.value.splitter === t ? (clearTimeout(T.value.timeoutId), T.value.timeoutId = null, M(e, t), T.value.splitter = null) : (T.value.splitter = t, T.value.timeoutId = setTimeout(() => T.value.splitter = null, 500))), w.value.dragging || $(\"splitter-click\", {\n\t\t\t\tevent: e,\n\t\t\t\tindex: t\n\t\t\t}, !0);\n\t\t}, M = (e, t) => {\n\t\t\tif ($(\"splitter-dblclick\", {\n\t\t\t\tevent: e,\n\t\t\t\tindex: t\n\t\t\t}, !0), s.maximizePanes) {\n\t\t\t\tlet n = 0;\n\t\t\t\ty.value = y.value.map((e, r) => (e.size = r === t ? e.max : e.min, r !== t && (n += e.min), e)), y.value[t].size -= n, $(\"pane-maximize\", {\n\t\t\t\t\tevent: e,\n\t\t\t\t\tindex: t,\n\t\t\t\t\tpane: y.value[t]\n\t\t\t\t}), $(\"resized\", {\n\t\t\t\t\tevent: e,\n\t\t\t\t\tindex: t\n\t\t\t\t}, !0);\n\t\t\t}\n\t\t}, N = (e, t) => {\n\t\t\tif (!s.keyboardStep) return;\n\t\t\tlet n = s.horizontal ? e.key === \"ArrowDown\" : e.key === \"ArrowRight\", r = s.horizontal ? e.key === \"ArrowUp\" : e.key === \"ArrowLeft\";\n\t\t\tif (!n && !r) return;\n\t\t\te.preventDefault(), w.value.activeSplitter = t;\n\t\t\tlet i = (n ? 1 : -1) * (s.rtl && !s.horizontal ? -1 : 1), a = z(t) + y.value[t].size;\n\t\t\tR(Math.min(Math.max(a + i * s.keyboardStep, 0), 100)), $(\"resize\", { event: e }, !0), $(\"resized\", { event: e }, !0), w.value.activeSplitter = null;\n\t\t}, P = (e, t) => {\n\t\t\tlet n = b.value[t];\n\t\t\tn && $(\"pane-click\", {\n\t\t\t\tevent: e,\n\t\t\t\tindex: n.index,\n\t\t\t\tpane: n\n\t\t\t});\n\t\t}, F = (e) => {\n\t\t\tlet t = S.value.getBoundingClientRect(), { clientX: n, clientY: r } = \"ontouchstart\" in window && e.touches ? e.touches[0] : e;\n\t\t\treturn {\n\t\t\t\tx: n - (s.horizontal ? 0 : w.value.cursorOffset) - t.left,\n\t\t\t\ty: r - (s.horizontal ? w.value.cursorOffset : 0) - t.top\n\t\t\t};\n\t\t}, I = (e) => {\n\t\t\te = e[s.horizontal ? \"y\" : \"x\"];\n\t\t\tlet t = S.value[s.horizontal ? \"clientHeight\" : \"clientWidth\"];\n\t\t\treturn s.rtl && !s.horizontal && (e = t - e), e * 100 / t;\n\t\t}, L = (e) => {\n\t\t\tR(I(e));\n\t\t}, R = (e) => {\n\t\t\tlet t = w.value.activeSplitter;\n\t\t\tif (t === null || t >= y.value.length - 1) return;\n\t\t\tlet n = {\n\t\t\t\tprevPanesSize: z(t),\n\t\t\t\tnextPanesSize: B(t),\n\t\t\t\tprevReachedMinPanes: 0,\n\t\t\t\tnextReachedMinPanes: 0\n\t\t\t}, r = 0 + (s.pushOtherPanes ? 0 : n.prevPanesSize), i = 100 - (s.pushOtherPanes ? 0 : n.nextPanesSize);\n\t\t\te = Math.max(Math.min(e, i), r);\n\t\t\tlet a = [t, t + 1], o = y.value[a[0]] || null, c = y.value[a[1]] || null, l = o !== null && o.max < 100 && e >= o.max + n.prevPanesSize, u = c !== null && c.max < 100 && e <= 100 - (c.max + B(t + 1));\n\t\t\tif (l || u) {\n\t\t\t\tl ? (o.size = o.max, c.size = Math.min(Math.max(100 - o.max - n.prevPanesSize - n.nextPanesSize, c.min), c.max)) : (o.size = Math.min(Math.max(100 - c.max - n.prevPanesSize - B(t + 1), o.min), o.max), c.size = c.max);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (s.pushOtherPanes) {\n\t\t\t\tlet t = te(n, e);\n\t\t\t\tif (!t) return;\n\t\t\t\t({sums: n, panesToResize: a} = t), o = y.value[a[0]] || null, c = y.value[a[1]] || null;\n\t\t\t}\n\t\t\to !== null && (o.size = Math.min(Math.max(e - n.prevPanesSize - n.prevReachedMinPanes, o.min), o.max)), c !== null && (c.size = Math.min(Math.max(100 - e - n.nextPanesSize - n.nextReachedMinPanes, c.min), c.max));\n\t\t}, te = (e, t) => {\n\t\t\tlet n = w.value.activeSplitter, r = [n, n + 1];\n\t\t\tif (t < e.prevPanesSize + y.value[r[0]].min) {\n\t\t\t\tif (r[0] = V(n).index, e.prevReachedMinPanes = 0, r[0] < n && y.value.forEach((t, i) => {\n\t\t\t\t\ti > r[0] && i <= n && (t.size = t.min, e.prevReachedMinPanes += t.min);\n\t\t\t\t}), r[0] === void 0) return e.prevReachedMinPanes = 0, y.value[0].size = y.value[0].min, y.value.forEach((t, r) => {\n\t\t\t\t\tr > 0 && r <= n && (t.size = t.min, e.prevReachedMinPanes += t.min);\n\t\t\t\t}), y.value[r[1]].size = 100 - e.prevReachedMinPanes - y.value[0].min - e.prevPanesSize - e.nextPanesSize, null;\n\t\t\t\te.prevPanesSize = z(r[0]);\n\t\t\t}\n\t\t\treturn t > 100 - e.nextPanesSize - y.value[r[1]].min && (r[1] = H(n).index, e.nextReachedMinPanes = 0, r[1] > n + 1 && y.value.forEach((t, i) => {\n\t\t\t\ti > n && i < r[1] && (t.size = t.min, e.nextReachedMinPanes += t.min);\n\t\t\t}), e.nextPanesSize = r[1] === void 0 ? 0 : B(r[1] - 1), r[1] === void 0) ? (e.nextReachedMinPanes = 0, y.value.forEach((t, r) => {\n\t\t\t\tr >= n + 1 && (t.size = t.min, e.nextReachedMinPanes += t.min);\n\t\t\t}), r[0] !== void 0 && (y.value[r[0]].size = 100 - e.prevPanesSize - B(r[0] - 1)), null) : {\n\t\t\t\tsums: e,\n\t\t\t\tpanesToResize: r\n\t\t\t};\n\t\t}, z = (e) => y.value.reduce((t, n, r) => t + (r < e ? n.size : 0), 0), B = (e) => y.value.reduce((t, n, r) => t + (r > e + 1 ? n.size : 0), 0), V = (e) => [...y.value].reverse().find((t) => t.index < e && t.size > t.min) || {}, H = (e) => y.value.find((t) => t.index > e + 1 && t.size > t.min) || {}, U = () => {\n\t\t\tlet e = Array.from(S.value?.children || []);\n\t\t\tfor (let t of e) {\n\t\t\t\tlet e = t.classList.contains(\"splitpanes__pane\"), n = t.classList.contains(\"splitpanes__splitter\");\n\t\t\t\t!e && !n && (t.remove(), console.warn(\"Splitpanes: Only elements are allowed at the root of . One of your DOM nodes was removed.\"));\n\t\t\t}\n\t\t}, W = (e, t, n = !1) => {\n\t\t\tlet r = e - 1, i = document.createElement(\"div\");\n\t\t\ti.classList.add(\"splitpanes__splitter\"), n || (i.onmousedown = (e) => O(e, r), typeof window < \"u\" && \"ontouchstart\" in window && (i.ontouchstart = (e) => O(e, r)), i.onclick = (e) => j(e, r + 1), s.keyboardStep && (i.setAttribute(\"tabindex\", \"0\"), i.setAttribute(\"role\", \"separator\"), i.setAttribute(\"aria-orientation\", s.horizontal ? \"horizontal\" : \"vertical\"), i.onkeydown = (e) => N(e, r))), i.ondblclick = (e) => M(e, r + 1), t.parentNode.insertBefore(i, t);\n\t\t}, G = (e) => {\n\t\t\te.onmousedown = null, e.onclick = null, e.ondblclick = null, e.onkeydown = null, e.remove();\n\t\t}, K = () => {\n\t\t\tlet e = Array.from(S.value?.children || []);\n\t\t\tfor (let t of e) t.className.includes(\"splitpanes__splitter\") && G(t);\n\t\t\tlet t = 0;\n\t\t\tfor (let n of e) n.className.includes(\"splitpanes__pane\") && (!t && s.firstSplitter ? W(t, n, !0) : t && W(t, n), t++);\n\t\t}, q = ({ uid: e, ...t }) => {\n\t\t\tlet n = b.value[e];\n\t\t\tfor (let [e, r] of Object.entries(t)) n[e] = r;\n\t\t}, J = !1, Y = (e) => {\n\t\t\tlet t = -1;\n\t\t\tArray.from(S.value?.children || []).some((n) => (n.className.includes(\"splitpanes__pane\") && t++, n.isSameNode(e.el))), y.value.splice(t, 0, {\n\t\t\t\t...e,\n\t\t\t\tindex: t\n\t\t\t}), y.value.forEach((e, t) => e.index = t), C.value && !J && (J = !0, o(() => {\n\t\t\t\tK(), Z({ addedPane: y.value[t] }), $(\"pane-add\", { pane: y.value[t] }), J = !1;\n\t\t\t}));\n\t\t}, X = (e) => {\n\t\t\tlet t = y.value.findIndex((t) => t.id === e);\n\t\t\ty.value[t].el = null;\n\t\t\tlet n = y.value.splice(t, 1)[0];\n\t\t\ty.value.forEach((e, t) => e.index = t), o(() => {\n\t\t\t\tK(), $(\"pane-remove\", { pane: n }), Z({ removedPane: {\n\t\t\t\t\t...n,\n\t\t\t\t\tindex: t\n\t\t\t\t} });\n\t\t\t});\n\t\t}, Z = (e = {}) => {\n\t\t\t!e.addedPane && !e.removedPane ? re() : y.value.some((e) => e.givenSize !== null || e.min || e.max < 100) ? ie(e) : ne(), C.value && $(\"resized\");\n\t\t}, ne = () => {\n\t\t\tlet e = 100 / x.value, t = 100, n = [], r = [];\n\t\t\tfor (let i of y.value) i.size = Math.max(Math.min(e, i.max), i.min), t -= i.size, i.size >= i.max && n.push(i.id), i.size <= i.min && r.push(i.id);\n\t\t\tMath.abs(t) > .1 && Q(t, n, r);\n\t\t}, re = () => {\n\t\t\tlet e = 100, t = [], n = [], r = 0;\n\t\t\tfor (let i of y.value) e -= i.size, i.givenSize !== null && r++, i.size >= i.max && t.push(i.id), i.size <= i.min && n.push(i.id);\n\t\t\tlet i = 100;\n\t\t\tif (e > .1) {\n\t\t\t\tfor (let t of y.value) t.givenSize === null && (t.size = Math.max(Math.min(e / (x.value - r), t.max), t.min)), i -= t.size;\n\t\t\t\ti > .1 && Q(i, t, n);\n\t\t\t}\n\t\t}, ie = ({ addedPane: e, removedPane: t } = {}) => {\n\t\t\tlet n = y.value.reduce((e, t) => e + (t.givenSize === null ? 0 : t.givenSize), 0), r = y.value.filter((e) => e.givenSize === null).length, i = r > 0 ? (100 - n) / r : 0, a = 0, o = [], s = [];\n\t\t\tfor (let e of y.value) a -= e.size, e.size >= e.max && o.push(e.id), e.size <= e.min && s.push(e.id);\n\t\t\tif (!(Math.abs(a) < .1)) {\n\t\t\t\ta = 100;\n\t\t\t\tfor (let e of y.value) e.givenSize === null && (e.size = Math.max(Math.min(i, e.max), e.min)), a -= e.size, e.size >= e.max && o.push(e.id), e.size <= e.min && s.push(e.id);\n\t\t\t\tMath.abs(a) > .1 && Q(a, o, s);\n\t\t\t}\n\t\t}, Q = (e, t, n) => {\n\t\t\tlet r;\n\t\t\tr = e > 0 ? e / (x.value - t.length) : e / (x.value - n.length), y.value.forEach((i, a) => {\n\t\t\t\tif (e > 0 && !t.includes(i.id)) {\n\t\t\t\t\tlet t = Math.max(Math.min(i.size + r, i.max), i.min), n = t - i.size;\n\t\t\t\t\te -= n, i.size = t;\n\t\t\t\t} else if (!n.includes(i.id)) {\n\t\t\t\t\tlet t = Math.max(Math.min(i.size + r, i.max), i.min), n = t - i.size;\n\t\t\t\t\te -= n, i.size = t;\n\t\t\t\t}\n\t\t\t}), Math.abs(e) > .1 && C.value && console.warn(\"Splitpanes: Could not resize panes correctly due to their constraints.\");\n\t\t}, $ = (e, t = void 0, n = !1) => {\n\t\t\tlet r = t?.index ?? w.value.activeSplitter ?? null;\n\t\t\ta(e, {\n\t\t\t\t...t,\n\t\t\t\t...r !== null && { index: r },\n\t\t\t\t...n && r !== null && {\n\t\t\t\t\tprevPane: y.value[r - +!!s.firstSplitter],\n\t\t\t\t\tnextPane: y.value[r + +!s.firstSplitter]\n\t\t\t\t},\n\t\t\t\tpanes: y.value.map((e) => ({\n\t\t\t\t\tmin: e.min,\n\t\t\t\t\tmax: e.max,\n\t\t\t\t\tsize: e.size\n\t\t\t\t}))\n\t\t\t});\n\t\t};\n\t\tv(() => s.firstSplitter, () => K()), v(() => s.horizontal, (e) => o(() => {\n\t\t\ta(\"direction-changed\", {\n\t\t\t\thorizontal: e,\n\t\t\t\tpanes: y.value.map((e) => ({\n\t\t\t\t\tmin: e.min,\n\t\t\t\t\tmax: e.max,\n\t\t\t\t\tsize: e.size\n\t\t\t\t}))\n\t\t\t});\n\t\t})), l(() => {\n\t\t\tU(), K(), Z(), $(\"ready\"), C.value = !0;\n\t\t}), c(() => C.value = !1);\n\t\tlet ae = () => {\n\t\t\tlet { class: e, ...t } = p;\n\t\t\treturn i(\"div\", {\n\t\t\t\tref: S,\n\t\t\t\tclass: [E.value, e],\n\t\t\t\t...t\n\t\t\t}, h.default?.());\n\t\t};\n\t\treturn d(\"panes\", y), d(\"indexedPanes\", b), d(\"horizontal\", e(() => s.horizontal)), d(\"requestUpdate\", q), d(\"onPaneAdd\", Y), d(\"onPaneRemove\", X), d(\"onPaneClick\", P), (e, n) => (u(), t(m(ae)));\n\t}\n}), b = {\n\t__name: \"pane\",\n\tprops: {\n\t\tsize: { type: [Number, String] },\n\t\tminSize: {\n\t\t\ttype: [Number, String],\n\t\t\tdefault: 0\n\t\t},\n\t\tmaxSize: {\n\t\t\ttype: [Number, String],\n\t\t\tdefault: 100\n\t\t}\n\t},\n\tsetup(t) {\n\t\tlet i = t, o = a(\"requestUpdate\"), d = a(\"onPaneAdd\"), m = a(\"horizontal\"), g = a(\"onPaneRemove\"), _ = a(\"onPaneClick\"), y = r()?.uid, b = a(\"indexedPanes\"), x = e(() => b.value[y]), S = f(null), C = e(() => {\n\t\t\tlet e = isNaN(i.size) || i.size === void 0 ? 0 : parseFloat(i.size);\n\t\t\treturn Math.max(Math.min(e, T.value), w.value);\n\t\t}), w = e(() => {\n\t\t\tlet e = parseFloat(i.minSize);\n\t\t\treturn isNaN(e) ? 0 : e;\n\t\t}), T = e(() => {\n\t\t\tlet e = parseFloat(i.maxSize);\n\t\t\treturn isNaN(e) ? 100 : e;\n\t\t}), E = e(() => {\n\t\t\tlet e = x.value?.size ?? (i.size === void 0 ? void 0 : C.value);\n\t\t\treturn e === void 0 ? \"\" : `${m.value ? \"height\" : \"width\"}: ${e}%`;\n\t\t});\n\t\treturn v(() => C.value, (e) => o({\n\t\t\tuid: y,\n\t\t\tsize: e\n\t\t})), v(() => w.value, (e) => o({\n\t\t\tuid: y,\n\t\t\tmin: e\n\t\t})), v(() => T.value, (e) => o({\n\t\t\tuid: y,\n\t\t\tmax: e\n\t\t})), l(() => {\n\t\t\td({\n\t\t\t\tid: y,\n\t\t\t\tel: S.value,\n\t\t\t\tmin: w.value,\n\t\t\t\tmax: T.value,\n\t\t\t\tgivenSize: i.size === void 0 ? null : C.value,\n\t\t\t\tsize: C.value\n\t\t\t});\n\t\t}), c(() => g(y)), (e, t) => (u(), n(\"div\", {\n\t\t\tref_key: \"paneEl\",\n\t\t\tref: S,\n\t\t\tclass: \"splitpanes__pane\",\n\t\t\tonClick: t[0] ||= (t) => h(_)(t, e._.uid),\n\t\t\tstyle: s(E.value)\n\t\t}, [p(e.$slots, \"default\")], 4));\n\t}\n};\n//#endregion\nexport { b as Pane, y as Splitpanes };\n","/*!\n* vue-router v5.2.0\n* (c) 2026 Eduardo San Martin Morote\n* @license MIT\n*/\nimport { _ as isRouteComponent, c as diagnostics, g as isESModule, h as isArray, p as assign, r as matchedRouteKey, u as createRouterError } from \"./useApi-CROJJdhE.js\";\nimport { getCurrentInstance, inject, onActivated, onDeactivated, onUnmounted, watch } from \"vue\";\nimport { setupDevtoolsPlugin } from \"@vue/devtools-api\";\n//#region src/utils/env.ts\nconst isBrowser = typeof document !== \"undefined\";\n//#endregion\n//#region src/encoding.ts\n/**\n* Encoding Rules (␣ = Space)\n* - Path: ␣ \" < > # ? { }\n* - Query: ␣ \" < > # & =\n* - Hash: ␣ \" < > `\n*\n* On top of that, the RFC3986 (https://tools.ietf.org/html/rfc3986#section-2.2)\n* defines some extra characters to be encoded. Most browsers do not encode them\n* in encodeURI https://github.com/whatwg/url/issues/369, so it may be safer to\n* also encode `!'()*`. Leaving un-encoded only ASCII alphanumeric(`a-zA-Z0-9`)\n* plus `-._~`. This extra safety should be applied to query by patching the\n* string returned by encodeURIComponent encodeURI also encodes `[\\]^`. `\\`\n* should be encoded to avoid ambiguity. Browsers (IE, FF, C) transform a `\\`\n* into a `/` if directly typed in. The _backtick_ (`````) should also be\n* encoded everywhere because some browsers like FF encode it when directly\n* written while others don't. Safari and IE don't encode ``\"<>{}``` in hash.\n*/\nconst HASH_RE = /#/g;\nconst AMPERSAND_RE = /&/g;\nconst SLASH_RE = /\\//g;\nconst EQUAL_RE = /=/g;\nconst IM_RE = /\\?/g;\nconst PLUS_RE = /\\+/g;\n/**\n* NOTE: It's not clear to me if we should encode the + symbol in queries, it\n* seems to be less flexible than not doing so and I can't find out the legacy\n* systems requiring this for regular requests like text/html. In the standard,\n* the encoding of the plus character is only mentioned for\n* application/x-www-form-urlencoded\n* (https://url.spec.whatwg.org/#urlencoded-parsing) and most browsers seems lo\n* leave the plus character as is in queries. To be more flexible, we allow the\n* plus character on the query, but it can also be manually encoded by the user.\n*\n* Resources:\n* - https://url.spec.whatwg.org/#urlencoded-parsing\n* - https://stackoverflow.com/questions/1634271/url-encoding-the-space-character-or-20\n*/\nconst ENC_BRACKET_OPEN_RE = /%5B/g;\nconst ENC_BRACKET_CLOSE_RE = /%5D/g;\nconst ENC_CARET_RE = /%5E/g;\nconst ENC_BACKTICK_RE = /%60/g;\nconst ENC_CURLY_OPEN_RE = /%7B/g;\nconst ENC_PIPE_RE = /%7C/g;\nconst ENC_CURLY_CLOSE_RE = /%7D/g;\nconst ENC_SPACE_RE = /%20/g;\n/**\n* Encode characters that need to be encoded on the path, search and hash\n* sections of the URL.\n*\n* @internal\n* @param text - string to encode\n* @returns encoded string\n*/\nfunction commonEncode(text) {\n\treturn text == null ? \"\" : encodeURI(\"\" + text).replace(ENC_PIPE_RE, \"|\").replace(ENC_BRACKET_OPEN_RE, \"[\").replace(ENC_BRACKET_CLOSE_RE, \"]\");\n}\n/**\n* Encode characters that need to be encoded on the hash section of the URL.\n*\n* @param text - string to encode\n* @returns encoded string\n*/\nfunction encodeHash(text) {\n\treturn commonEncode(text).replace(ENC_CURLY_OPEN_RE, \"{\").replace(ENC_CURLY_CLOSE_RE, \"}\").replace(ENC_CARET_RE, \"^\");\n}\n/**\n* Encode characters that need to be encoded query values on the query\n* section of the URL.\n*\n* @param text - string to encode\n* @returns encoded string\n*/\nfunction encodeQueryValue(text) {\n\treturn commonEncode(text).replace(PLUS_RE, \"%2B\").replace(ENC_SPACE_RE, \"+\").replace(HASH_RE, \"%23\").replace(AMPERSAND_RE, \"%26\").replace(ENC_BACKTICK_RE, \"`\").replace(ENC_CURLY_OPEN_RE, \"{\").replace(ENC_CURLY_CLOSE_RE, \"}\").replace(ENC_CARET_RE, \"^\");\n}\n/**\n* Like `encodeQueryValue` but also encodes the `=` character.\n*\n* @param text - string to encode\n*/\nfunction encodeQueryKey(text) {\n\treturn encodeQueryValue(text).replace(EQUAL_RE, \"%3D\");\n}\n/**\n* Encode characters that need to be encoded on the path section of the URL.\n*\n* @param text - string to encode\n* @returns encoded string\n*/\nfunction encodePath(text) {\n\treturn commonEncode(text).replace(HASH_RE, \"%23\").replace(IM_RE, \"%3F\");\n}\n/**\n* Encode characters that need to be encoded on the path section of the URL as a\n* param. This function encodes everything {@link encodePath} does plus the\n* slash (`/`) character. If `text` is `null` or `undefined`, returns an empty\n* string instead.\n*\n* @param text - string to encode\n* @returns encoded string\n*/\nfunction encodeParam(text) {\n\treturn encodePath(text).replace(SLASH_RE, \"%2F\");\n}\nfunction decode(text) {\n\tif (text == null) return null;\n\ttry {\n\t\treturn decodeURIComponent(\"\" + text);\n\t} catch {\n\t\tprocess.env.NODE_ENV !== \"production\" && diagnostics.VUE_ROUTER_R0080({ text: \"\" + text });\n\t}\n\treturn \"\" + text;\n}\n//#endregion\n//#region src/location.ts\nconst TRAILING_SLASH_RE = /\\/$/;\nconst removeTrailingSlash = (path) => path.replace(TRAILING_SLASH_RE, \"\");\n/**\n* Transforms a URI into a normalized history location\n*\n* @param parseQuery\n* @param location - URI to normalize\n* @param currentLocation - current absolute location. Allows resolving relative\n* paths. Must start with `/`. Defaults to `/`\n* @returns a normalized history location\n*/\nfunction parseURL(parseQuery, location, currentLocation = \"/\") {\n\tlet path, query = {}, searchString = \"\", hash = \"\";\n\tconst hashPos = location.indexOf(\"#\");\n\tlet searchPos = location.indexOf(\"?\");\n\tsearchPos = hashPos >= 0 && searchPos > hashPos ? -1 : searchPos;\n\tif (searchPos >= 0) {\n\t\tpath = location.slice(0, searchPos);\n\t\tsearchString = location.slice(searchPos, hashPos > 0 ? hashPos : location.length);\n\t\tquery = parseQuery(searchString.slice(1));\n\t}\n\tif (hashPos >= 0) {\n\t\tpath = path || location.slice(0, hashPos);\n\t\thash = location.slice(hashPos, location.length);\n\t}\n\tpath = resolveRelativePath(path != null ? path : location, currentLocation);\n\treturn {\n\t\tfullPath: path + searchString + hash,\n\t\tpath,\n\t\tquery,\n\t\thash: decode(hash)\n\t};\n}\nfunction NEW_stringifyURL(stringifyQuery, path, query, hash = \"\") {\n\tconst searchText = stringifyQuery(query);\n\treturn path + (searchText && \"?\") + searchText + encodeHash(hash);\n}\n/**\n* Stringifies a URL object\n*\n* @param stringifyQuery\n* @param location\n*/\nfunction stringifyURL(stringifyQuery, location) {\n\tconst query = location.query ? stringifyQuery(location.query) : \"\";\n\treturn location.path + (query && \"?\") + query + (location.hash || \"\");\n}\n/**\n* Strips off the base from the beginning of a location.pathname in a non-case-sensitive way.\n*\n* @param pathname - location.pathname\n* @param base - base to strip off\n*/\nfunction stripBase(pathname, base) {\n\tif (!base || !pathname.toLowerCase().startsWith(base.toLowerCase())) return pathname;\n\treturn pathname.slice(base.length) || \"/\";\n}\n/**\n* Checks if two RouteLocation are equal. This means that both locations are\n* pointing towards the same {@link RouteRecord} and that all `params`, `query`\n* parameters and `hash` are the same\n*\n* @param stringifyQuery - A function that takes a query object of type LocationQueryRaw and returns a string representation of it.\n* @param a - first {@link RouteLocation}\n* @param b - second {@link RouteLocation}\n*/\nfunction isSameRouteLocation(stringifyQuery, a, b) {\n\tconst aLastIndex = a.matched.length - 1;\n\tconst bLastIndex = b.matched.length - 1;\n\treturn aLastIndex > -1 && aLastIndex === bLastIndex && isSameRouteRecord(a.matched[aLastIndex], b.matched[bLastIndex]) && isSameRouteLocationParams(a.params, b.params) && stringifyQuery(a.query) === stringifyQuery(b.query) && a.hash === b.hash;\n}\n/**\n* Check if two `RouteRecords` are equal. Takes into account aliases: they are\n* considered equal to the `RouteRecord` they are aliasing.\n*\n* @param a - first {@link RouteRecord}\n* @param b - second {@link RouteRecord}\n*/\nfunction isSameRouteRecord(a, b) {\n\treturn (a.aliasOf || a) === (b.aliasOf || b);\n}\nfunction isSameRouteLocationParams(a, b) {\n\tif (Object.keys(a).length !== Object.keys(b).length) return false;\n\tfor (var key in a) if (!isSameRouteLocationParamsValue(a[key], b[key])) return false;\n\treturn true;\n}\nfunction isSameRouteLocationParamsValue(a, b) {\n\treturn isArray(a) ? isEquivalentArray(a, b) : isArray(b) ? isEquivalentArray(b, a) : (a && a.valueOf()) === (b && b.valueOf());\n}\n/**\n* Check if two arrays are the same or if an array with one single entry is the\n* same as another primitive value. Used to check query and parameters\n*\n* @param a - array of values\n* @param b - array of values or a single value\n*/\nfunction isEquivalentArray(a, b) {\n\treturn isArray(b) ? a.length === b.length && a.every((value, i) => value === b[i]) : a.length === 1 && a[0] === b;\n}\n/**\n* Resolves a relative path that starts with `.`.\n*\n* @param to - path location we are resolving\n* @param from - currentLocation.path, should start with `/`\n*/\nfunction resolveRelativePath(to, from) {\n\tif (to.startsWith(\"/\")) return to;\n\tif (process.env.NODE_ENV !== \"production\" && !from.startsWith(\"/\")) {\n\t\tdiagnostics.VUE_ROUTER_R0070({\n\t\t\tto,\n\t\t\tfrom\n\t\t});\n\t\treturn to;\n\t}\n\tif (!to) return from;\n\tconst fromSegments = from.split(\"/\");\n\tconst toSegments = to.split(\"/\");\n\tconst lastToSegment = toSegments[toSegments.length - 1];\n\tif (lastToSegment === \"..\" || lastToSegment === \".\") toSegments.push(\"\");\n\tlet position = fromSegments.length - 1;\n\tlet toPosition;\n\tlet segment;\n\tfor (toPosition = 0; toPosition < toSegments.length; toPosition++) {\n\t\tsegment = toSegments[toPosition];\n\t\tif (segment === \".\") continue;\n\t\tif (segment === \"..\") {\n\t\t\tif (position > 1) position--;\n\t\t} else break;\n\t}\n\treturn fromSegments.slice(0, position).join(\"/\") + \"/\" + toSegments.slice(toPosition).join(\"/\");\n}\n/**\n* Initial route location where the router is. Can be used in navigation guards\n* to differentiate the initial navigation.\n*\n* @example\n* ```js\n* import { START_LOCATION } from 'vue-router'\n*\n* router.beforeEach((to, from) => {\n* if (from === START_LOCATION) {\n* // initial navigation\n* }\n* })\n* ```\n*/\nconst START_LOCATION_NORMALIZED = {\n\tpath: \"/\",\n\tname: void 0,\n\tparams: {},\n\tquery: {},\n\thash: \"\",\n\tfullPath: \"/\",\n\tmatched: [],\n\tmeta: {},\n\tredirectedFrom: void 0\n};\n//#endregion\n//#region src/history/common.ts\n/**\n* Normalizes a base by removing any trailing slash and reading the base tag if\n* present.\n*\n* @param base - base to normalize\n*/\nfunction normalizeBase(base) {\n\tif (!base) if (isBrowser) {\n\t\tconst baseEl = document.querySelector(\"base\");\n\t\tbase = baseEl && baseEl.getAttribute(\"href\") || \"/\";\n\t\tbase = base.replace(/^\\w+:\\/\\/[^/]+/, \"\");\n\t} else base = \"/\";\n\tif (base[0] !== \"/\" && base[0] !== \"#\") base = \"/\" + base;\n\treturn removeTrailingSlash(base);\n}\nconst BEFORE_HASH_RE = /^[^#]+#/;\nfunction createHref(base, location) {\n\treturn base.replace(BEFORE_HASH_RE, \"#\") + location;\n}\n//#endregion\n//#region src/scrollBehavior.ts\nfunction getElementPosition(el, offset) {\n\tconst docRect = document.documentElement.getBoundingClientRect();\n\tconst elRect = el.getBoundingClientRect();\n\treturn {\n\t\tbehavior: offset.behavior,\n\t\tleft: elRect.left - docRect.left - (offset.left || 0),\n\t\ttop: elRect.top - docRect.top - (offset.top || 0)\n\t};\n}\nconst computeScrollPosition = () => ({\n\tleft: window.scrollX,\n\ttop: window.scrollY\n});\nfunction scrollToPosition(position) {\n\tlet scrollToOptions;\n\tif (\"el\" in position) {\n\t\tconst positionEl = position.el;\n\t\tconst isIdSelector = typeof positionEl === \"string\" && positionEl.startsWith(\"#\");\n\t\t/**\n\t\t* `id`s can accept pretty much any characters, including CSS combinators\n\t\t* like `>` or `~`. It's still possible to retrieve elements using\n\t\t* `document.getElementById('~')` but it needs to be escaped when using\n\t\t* `document.querySelector('#\\\\~')` for it to be valid. The only\n\t\t* requirements for `id`s are them to be unique on the page and to not be\n\t\t* empty (`id=\"\"`). Because of that, when passing an id selector, it should\n\t\t* be properly escaped for it to work with `querySelector`. We could check\n\t\t* for the id selector to be simple (no CSS combinators `+ >~`) but that\n\t\t* would make things inconsistent since they are valid characters for an\n\t\t* `id` but would need to be escaped when using `querySelector`, breaking\n\t\t* their usage and ending up in no selector returned. Selectors need to be\n\t\t* escaped:\n\t\t*\n\t\t* - `#1-thing` becomes `#\\31 -thing`\n\t\t* - `#with~symbols` becomes `#with\\\\~symbols`\n\t\t*\n\t\t* - More information about the topic can be found at\n\t\t* https://mathiasbynens.be/notes/html5-id-class.\n\t\t* - Practical example: https://mathiasbynens.be/demo/html5-id\n\t\t*/\n\t\tif (process.env.NODE_ENV !== \"production\" && typeof position.el === \"string\") {\n\t\t\tif (!isIdSelector || !document.getElementById(position.el.slice(1))) try {\n\t\t\t\tconst foundEl = document.querySelector(position.el);\n\t\t\t\tif (isIdSelector && foundEl) {\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0040({ el: position.el });\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\tdiagnostics.VUE_ROUTER_R0041({ el: position.el });\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tconst el = typeof positionEl === \"string\" ? isIdSelector ? document.getElementById(positionEl.slice(1)) : document.querySelector(positionEl) : positionEl;\n\t\tif (!el) {\n\t\t\tprocess.env.NODE_ENV !== \"production\" && diagnostics.VUE_ROUTER_R0042({ el: position.el });\n\t\t\treturn;\n\t\t}\n\t\tscrollToOptions = getElementPosition(el, position);\n\t} else scrollToOptions = position;\n\tif (\"scrollBehavior\" in document.documentElement.style) window.scrollTo(scrollToOptions);\n\telse window.scrollTo(scrollToOptions.left != null ? scrollToOptions.left : window.scrollX, scrollToOptions.top != null ? scrollToOptions.top : window.scrollY);\n}\nfunction getScrollKey(path, delta) {\n\treturn (history.state ? history.state.position - delta : -1) + path;\n}\nconst scrollPositions = /* @__PURE__ */ new Map();\nfunction saveScrollPosition(key, scrollPosition) {\n\tscrollPositions.set(key, scrollPosition);\n}\nfunction getSavedScrollPosition(key) {\n\tconst scroll = scrollPositions.get(key);\n\tscrollPositions.delete(key);\n\treturn scroll;\n}\n/**\n* ScrollBehavior instance used by the router to compute and restore the scroll\n* position when navigating.\n*/\n//#endregion\n//#region src/types/typeGuards.ts\nfunction isRouteLocation(route) {\n\treturn typeof route === \"string\" || route && typeof route === \"object\";\n}\nfunction isRouteName(name) {\n\treturn typeof name === \"string\" || typeof name === \"symbol\";\n}\n//#endregion\n//#region src/query.ts\n/**\n* Transforms a queryString into a {@link LocationQuery} object. Accept both, a\n* version with the leading `?` and without Should work as URLSearchParams\n\n* @internal\n*\n* @param search - search string to parse\n* @returns a query object\n*/\nfunction parseQuery(search) {\n\tconst query = {};\n\tif (search === \"\" || search === \"?\") return query;\n\tconst searchParams = (search[0] === \"?\" ? search.slice(1) : search).split(\"&\");\n\tfor (let i = 0; i < searchParams.length; ++i) {\n\t\tconst searchParam = searchParams[i].replace(PLUS_RE, \" \");\n\t\tconst eqPos = searchParam.indexOf(\"=\");\n\t\tconst key = decode(eqPos < 0 ? searchParam : searchParam.slice(0, eqPos));\n\t\tconst value = eqPos < 0 ? null : decode(searchParam.slice(eqPos + 1));\n\t\tif (key in query) {\n\t\t\tlet currentValue = query[key];\n\t\t\tif (!isArray(currentValue)) currentValue = query[key] = [currentValue];\n\t\t\tcurrentValue.push(value);\n\t\t} else query[key] = value;\n\t}\n\treturn query;\n}\n/**\n* Stringifies a {@link LocationQueryRaw} object. Like `URLSearchParams`, it\n* doesn't prepend a `?`\n*\n* @internal\n*\n* @param query - query object to stringify\n* @returns string version of the query without the leading `?`\n*/\nfunction stringifyQuery(query) {\n\tlet search = \"\";\n\tfor (let key in query) {\n\t\tconst value = query[key];\n\t\tkey = encodeQueryKey(key);\n\t\tif (value == null) {\n\t\t\tif (value !== void 0) search += (search.length ? \"&\" : \"\") + key;\n\t\t\tcontinue;\n\t\t}\n\t\t(isArray(value) ? value.map((v) => v && encodeQueryValue(v)) : [value && encodeQueryValue(value)]).forEach((value) => {\n\t\t\tif (value !== void 0) {\n\t\t\t\tsearch += (search.length ? \"&\" : \"\") + key;\n\t\t\t\tif (value != null) search += \"=\" + value;\n\t\t\t}\n\t\t});\n\t}\n\treturn search;\n}\n/**\n* Transforms a {@link LocationQueryRaw} into a {@link LocationQuery} by casting\n* numbers into strings, removing keys with an undefined value and replacing\n* undefined with null in arrays\n*\n* @param query - query object to normalize\n* @returns a normalized query object\n*/\nfunction normalizeQuery(query) {\n\tconst normalizedQuery = {};\n\tfor (const key in query) {\n\t\tconst value = query[key];\n\t\tif (value !== void 0) normalizedQuery[key] = isArray(value) ? value.map((v) => v == null ? null : \"\" + v) : value == null ? value : \"\" + value;\n\t}\n\treturn normalizedQuery;\n}\n//#endregion\n//#region src/utils/callbacks.ts\n/**\n* Create a list of callbacks that can be reset. Used to create before and after navigation guards list\n*/\nfunction useCallbacks() {\n\tlet handlers = [];\n\tfunction add(handler) {\n\t\thandlers.push(handler);\n\t\treturn () => {\n\t\t\tconst i = handlers.indexOf(handler);\n\t\t\tif (i > -1) handlers.splice(i, 1);\n\t\t};\n\t}\n\tfunction reset() {\n\t\thandlers = [];\n\t}\n\treturn {\n\t\tadd,\n\t\tlist: () => handlers.slice(),\n\t\treset\n\t};\n}\n//#endregion\n//#region src/navigationGuards.ts\nfunction registerGuard(activeRecordRef, name, guard) {\n\tconst record = activeRecordRef.value;\n\tif (!record) {\n\t\tif (process.env.NODE_ENV !== \"production\") {\n\t\t\tconst fnName = name === \"updateGuards\" ? \"onBeforeRouteUpdate\" : \"onBeforeRouteLeave\";\n\t\t\tdiagnostics.VUE_ROUTER_R0020({ fn: fnName });\n\t\t}\n\t\treturn;\n\t}\n\tlet currentRecord = record;\n\tconst removeFromList = () => {\n\t\tcurrentRecord[name].delete(guard);\n\t};\n\tonUnmounted(removeFromList);\n\tonDeactivated(removeFromList);\n\tonActivated(() => {\n\t\tconst newRecord = activeRecordRef.value;\n\t\tif (process.env.NODE_ENV !== \"production\" && !newRecord) diagnostics.VUE_ROUTER_R0021();\n\t\tif (newRecord) currentRecord = newRecord;\n\t\tcurrentRecord[name].add(guard);\n\t});\n\tcurrentRecord[name].add(guard);\n}\n/**\n* Add a navigation guard that triggers whenever the component for the current\n* location is about to be left. Similar to {@link beforeRouteLeave} but can be\n* used in any component. The guard is removed when the component is unmounted.\n*\n* @param leaveGuard - {@link NavigationGuard}\n*/\nfunction onBeforeRouteLeave(leaveGuard) {\n\tif (process.env.NODE_ENV !== \"production\" && !getCurrentInstance()) {\n\t\tdiagnostics.VUE_ROUTER_R0022({ fn: \"onBeforeRouteLeave\" });\n\t\treturn;\n\t}\n\tregisterGuard(inject(matchedRouteKey, {}), \"leaveGuards\", leaveGuard);\n}\n/**\n* Add a navigation guard that triggers whenever the current location is about\n* to be updated. Similar to {@link beforeRouteUpdate} but can be used in any\n* component. The guard is removed when the component is unmounted.\n*\n* @param updateGuard - {@link NavigationGuard}\n*/\nfunction onBeforeRouteUpdate(updateGuard) {\n\tif (process.env.NODE_ENV !== \"production\" && !getCurrentInstance()) {\n\t\tdiagnostics.VUE_ROUTER_R0022({ fn: \"onBeforeRouteUpdate\" });\n\t\treturn;\n\t}\n\tregisterGuard(inject(matchedRouteKey, {}), \"updateGuards\", updateGuard);\n}\nfunction guardToPromiseFn(guard, to, from, record, name, runWithContext = (fn) => fn()) {\n\tconst enterCallbackArray = record && (record.enterCallbacks[name] = record.enterCallbacks[name] || []);\n\treturn () => new Promise((resolve, reject) => {\n\t\tconst next = (valid) => {\n\t\t\tif (valid === false) reject(createRouterError(4, {\n\t\t\t\tfrom,\n\t\t\t\tto\n\t\t\t}));\n\t\t\telse if (valid instanceof Error) reject(valid);\n\t\t\telse if (isRouteLocation(valid)) reject(createRouterError(2, {\n\t\t\t\tfrom: to,\n\t\t\t\tto: valid\n\t\t\t}));\n\t\t\telse {\n\t\t\t\tif (enterCallbackArray && record.enterCallbacks[name] === enterCallbackArray && typeof valid === \"function\") enterCallbackArray.push(valid);\n\t\t\t\tresolve();\n\t\t\t}\n\t\t};\n\t\tconst guardReturn = runWithContext(() => guard.call(record && record.instances[name], to, from, process.env.NODE_ENV !== \"production\" ? withDeprecationWarning(canOnlyBeCalledOnce(next, to, from)) : next));\n\t\tlet guardCall = Promise.resolve(guardReturn);\n\t\tif (guard.length < 3) guardCall = guardCall.then(next);\n\t\tif (process.env.NODE_ENV !== \"production\" && guard.length > 2) {\n\t\t\tconst guardInfo = {\n\t\t\t\tname: guard.name,\n\t\t\t\tguard: guard.toString()\n\t\t\t};\n\t\t\tif (typeof guardReturn === \"object\" && \"then\" in guardReturn) guardCall = guardCall.then((resolvedValue) => {\n\t\t\t\tif (!next._called) {\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0023(guardInfo);\n\t\t\t\t\treturn Promise.reject(/* @__PURE__ */ new Error(\"Invalid navigation guard\"));\n\t\t\t\t}\n\t\t\t\treturn resolvedValue;\n\t\t\t});\n\t\t\telse if (guardReturn !== void 0) {\n\t\t\t\tif (!next._called) {\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0023(guardInfo);\n\t\t\t\t\treject(/* @__PURE__ */ new Error(\"Invalid navigation guard\"));\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tguardCall.catch((err) => reject(err));\n\t});\n}\n/**\n* Wraps the next callback to warn when it is used. Dev-only: when __DEV__ is\n* false (production builds), this branch is dead code and is stripped from the\n* bundle.\n*\n* @internal\n*/\nfunction withDeprecationWarning(next) {\n\tlet warned = false;\n\treturn function() {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tdiagnostics.VUE_ROUTER_R0025();\n\t\t}\n\t\treturn next.apply(this, arguments);\n\t};\n}\nfunction canOnlyBeCalledOnce(next, to, from) {\n\tlet called = 0;\n\treturn function() {\n\t\tif (called++ === 1) diagnostics.VUE_ROUTER_R0024({\n\t\t\tfrom: from.fullPath,\n\t\t\tto: to.fullPath\n\t\t});\n\t\tnext._called = true;\n\t\tif (called === 1) next.apply(null, arguments);\n\t};\n}\nfunction extractComponentsGuards(matched, guardType, to, from, runWithContext = (fn) => fn()) {\n\tconst guards = [];\n\tfor (const record of matched) {\n\t\tif (process.env.NODE_ENV !== \"production\" && !record.components && record.children && !record.children.length) diagnostics.VUE_ROUTER_R0026({ path: record.path });\n\t\tfor (const name in record.components) {\n\t\t\tlet rawComponent = record.components[name];\n\t\t\tif (process.env.NODE_ENV !== \"production\") {\n\t\t\t\tif (!rawComponent || typeof rawComponent !== \"object\" && typeof rawComponent !== \"function\") {\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0027({\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tpath: record.path,\n\t\t\t\t\t\treceived: String(rawComponent)\n\t\t\t\t\t});\n\t\t\t\t\tthrow new Error(\"Invalid route component\");\n\t\t\t\t} else if (\"then\" in rawComponent) {\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0028({\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tpath: record.path\n\t\t\t\t\t});\n\t\t\t\t\tconst promise = rawComponent;\n\t\t\t\t\trawComponent = () => promise;\n\t\t\t\t} else if (rawComponent.__asyncLoader && !rawComponent.__warnedDefineAsync) {\n\t\t\t\t\trawComponent.__warnedDefineAsync = true;\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0029({\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tpath: record.path\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (guardType !== \"beforeRouteEnter\" && !record.instances[name]) continue;\n\t\t\tif (isRouteComponent(rawComponent)) {\n\t\t\t\tconst guard = (rawComponent.__vccOpts || rawComponent)[guardType];\n\t\t\t\tguard && guards.push(guardToPromiseFn(guard, to, from, record, name, runWithContext));\n\t\t\t} else {\n\t\t\t\tlet componentPromise = rawComponent();\n\t\t\t\tif (process.env.NODE_ENV !== \"production\" && !(\"catch\" in componentPromise)) {\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0030({\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tpath: record.path\n\t\t\t\t\t});\n\t\t\t\t\tcomponentPromise = Promise.resolve(componentPromise);\n\t\t\t\t}\n\t\t\t\tguards.push(() => componentPromise.then((resolved) => {\n\t\t\t\t\tif (!resolved) throw new Error(`Couldn't resolve component \"${name}\" at \"${record.path}\"`);\n\t\t\t\t\tconst resolvedComponent = isESModule(resolved) ? resolved.default : resolved;\n\t\t\t\t\trecord.mods[name] = resolved;\n\t\t\t\t\trecord.components[name] = resolvedComponent;\n\t\t\t\t\tconst guard = (resolvedComponent.__vccOpts || resolvedComponent)[guardType];\n\t\t\t\t\treturn guard && guardToPromiseFn(guard, to, from, record, name, runWithContext)();\n\t\t\t\t}));\n\t\t\t}\n\t\t}\n\t}\n\treturn guards;\n}\n/**\n* Ensures a route is loaded, so it can be passed as o prop to ``.\n*\n* @param route - resolved route to load\n*/\nfunction loadRouteLocation(route) {\n\treturn route.matched.every((record) => record.redirect) ? Promise.reject(/* @__PURE__ */ new Error(\"Cannot load a route that redirects.\")) : Promise.all(route.matched.map((record) => record.components && Promise.all(Object.keys(record.components).reduce((promises, name) => {\n\t\tconst rawComponent = record.components[name];\n\t\tif (typeof rawComponent === \"function\" && !(\"displayName\" in rawComponent)) promises.push(rawComponent().then((resolved) => {\n\t\t\tif (!resolved) return Promise.reject(/* @__PURE__ */ new Error(`Couldn't resolve component \"${name}\" at \"${record.path}\". Ensure you passed a function that returns a promise.`));\n\t\t\tconst resolvedComponent = isESModule(resolved) ? resolved.default : resolved;\n\t\t\trecord.mods[name] = resolved;\n\t\t\trecord.components[name] = resolvedComponent;\n\t\t}));\n\t\treturn promises;\n\t}, [])))).then(() => route);\n}\n/**\n* Split the leaving, updating, and entering records.\n* @internal\n*\n* @param to - Location we are navigating to\n* @param from - Location we are navigating from\n*/\nfunction extractChangingRecords(to, from) {\n\tconst leavingRecords = [];\n\tconst updatingRecords = [];\n\tconst enteringRecords = [];\n\tconst len = Math.max(from.matched.length, to.matched.length);\n\tfor (let i = 0; i < len; i++) {\n\t\tconst recordFrom = from.matched[i];\n\t\tif (recordFrom) if (to.matched.find((record) => isSameRouteRecord(record, recordFrom))) updatingRecords.push(recordFrom);\n\t\telse leavingRecords.push(recordFrom);\n\t\tconst recordTo = to.matched[i];\n\t\tif (recordTo) {\n\t\t\tif (!from.matched.find((record) => isSameRouteRecord(record, recordTo))) enteringRecords.push(recordTo);\n\t\t}\n\t}\n\treturn [\n\t\tleavingRecords,\n\t\tupdatingRecords,\n\t\tenteringRecords\n\t];\n}\n//#endregion\n//#region src/devtools.ts\n/**\n* Copies a route location and removes any problematic properties that cannot be shown in devtools (e.g. Vue instances).\n*\n* @param routeLocation - routeLocation to format\n* @param tooltip - optional tooltip\n* @returns a copy of the routeLocation\n*/\nfunction formatRouteLocation(routeLocation, tooltip) {\n\tconst copy = assign({}, routeLocation, { matched: routeLocation.matched.map((matched) => omit(matched, [\n\t\t\"instances\",\n\t\t\"children\",\n\t\t\"aliasOf\"\n\t])) });\n\treturn { _custom: {\n\t\ttype: null,\n\t\treadOnly: true,\n\t\tdisplay: routeLocation.fullPath,\n\t\ttooltip,\n\t\tvalue: copy\n\t} };\n}\nfunction formatDisplay(display) {\n\treturn { _custom: { display } };\n}\nlet routerId = 0;\nfunction addDevtools(app, router, matcher) {\n\tif (router.__hasDevtools) return;\n\trouter.__hasDevtools = true;\n\tconst id = routerId++;\n\tsetupDevtoolsPlugin({\n\t\tid: \"org.vuejs.router\" + (id ? \".\" + id : \"\"),\n\t\tlabel: \"Vue Router\",\n\t\tpackageName: \"vue-router\",\n\t\thomepage: \"https://router.vuejs.org\",\n\t\tlogo: \"https://router.vuejs.org/logo.png\",\n\t\tcomponentStateTypes: [\"Routing\"],\n\t\tapp\n\t}, (api) => {\n\t\tapi.on.inspectComponent((payload) => {\n\t\t\tif (payload.instanceData) payload.instanceData.state.push({\n\t\t\t\ttype: \"Routing\",\n\t\t\t\tkey: \"$route\",\n\t\t\t\teditable: false,\n\t\t\t\tvalue: formatRouteLocation(router.currentRoute.value, \"Current Route\")\n\t\t\t});\n\t\t});\n\t\tapi.on.visitComponentTree(({ treeNode: node, componentInstance }) => {\n\t\t\tif (componentInstance.__vrv_devtools) {\n\t\t\t\tconst info = componentInstance.__vrv_devtools;\n\t\t\t\tnode.tags.push({\n\t\t\t\t\tlabel: (info.name ? `${info.name.toString()}: ` : \"\") + info.path,\n\t\t\t\t\ttextColor: 0,\n\t\t\t\t\ttooltip: \"This component is rendered by <router-view>\",\n\t\t\t\t\tbackgroundColor: PINK_500\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (isArray(componentInstance.__vrl_devtools)) {\n\t\t\t\tcomponentInstance.__devtoolsApi = api;\n\t\t\t\tcomponentInstance.__vrl_devtools.forEach((devtoolsData) => {\n\t\t\t\t\tlet label = devtoolsData.route.path;\n\t\t\t\t\tlet backgroundColor = ORANGE_400;\n\t\t\t\t\tlet tooltip = \"\";\n\t\t\t\t\tlet textColor = 0;\n\t\t\t\t\tif (devtoolsData.error) {\n\t\t\t\t\t\tlabel = devtoolsData.error;\n\t\t\t\t\t\tbackgroundColor = RED_100;\n\t\t\t\t\t\ttextColor = RED_700;\n\t\t\t\t\t} else if (devtoolsData.isExactActive) {\n\t\t\t\t\t\tbackgroundColor = LIME_500;\n\t\t\t\t\t\ttooltip = \"This is exactly active\";\n\t\t\t\t\t} else if (devtoolsData.isActive) {\n\t\t\t\t\t\tbackgroundColor = BLUE_600;\n\t\t\t\t\t\ttooltip = \"This link is active\";\n\t\t\t\t\t}\n\t\t\t\t\tnode.tags.push({\n\t\t\t\t\t\tlabel,\n\t\t\t\t\t\ttextColor,\n\t\t\t\t\t\ttooltip,\n\t\t\t\t\t\tbackgroundColor\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\twatch(router.currentRoute, () => {\n\t\t\trefreshRoutesView();\n\t\t\tapi.notifyComponentUpdate();\n\t\t\tapi.sendInspectorTree(routerInspectorId);\n\t\t\tapi.sendInspectorState(routerInspectorId);\n\t\t});\n\t\tconst navigationsLayerId = \"router:navigations:\" + id;\n\t\tapi.addTimelineLayer({\n\t\t\tid: navigationsLayerId,\n\t\t\tlabel: `Router${id ? \" \" + id : \"\"} Navigations`,\n\t\t\tcolor: 4237508\n\t\t});\n\t\trouter.onError((error, to) => {\n\t\t\tapi.addTimelineEvent({\n\t\t\t\tlayerId: navigationsLayerId,\n\t\t\t\tevent: {\n\t\t\t\t\ttitle: \"Error during Navigation\",\n\t\t\t\t\tsubtitle: to.fullPath,\n\t\t\t\t\tlogType: \"error\",\n\t\t\t\t\ttime: api.now(),\n\t\t\t\t\tdata: { error },\n\t\t\t\t\tgroupId: to.meta.__navigationId\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\tlet navigationId = 0;\n\t\trouter.beforeEach((to, from) => {\n\t\t\tconst data = {\n\t\t\t\tguard: formatDisplay(\"beforeEach\"),\n\t\t\t\tfrom: formatRouteLocation(from, \"Current Location during this navigation\"),\n\t\t\t\tto: formatRouteLocation(to, \"Target location\")\n\t\t\t};\n\t\t\tObject.defineProperty(to.meta, \"__navigationId\", { value: navigationId++ });\n\t\t\tapi.addTimelineEvent({\n\t\t\t\tlayerId: navigationsLayerId,\n\t\t\t\tevent: {\n\t\t\t\t\ttime: api.now(),\n\t\t\t\t\ttitle: \"Start of navigation\",\n\t\t\t\t\tsubtitle: to.fullPath,\n\t\t\t\t\tdata,\n\t\t\t\t\tgroupId: to.meta.__navigationId\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\trouter.afterEach((to, from, failure) => {\n\t\t\tconst data = { guard: formatDisplay(\"afterEach\") };\n\t\t\tif (failure) {\n\t\t\t\tdata.failure = { _custom: {\n\t\t\t\t\ttype: Error,\n\t\t\t\t\treadOnly: true,\n\t\t\t\t\tdisplay: failure ? failure.message : \"\",\n\t\t\t\t\ttooltip: \"Navigation Failure\",\n\t\t\t\t\tvalue: failure\n\t\t\t\t} };\n\t\t\t\tdata.status = formatDisplay(\"❌\");\n\t\t\t} else data.status = formatDisplay(\"✅\");\n\t\t\tdata.from = formatRouteLocation(from, \"Current Location during this navigation\");\n\t\t\tdata.to = formatRouteLocation(to, \"Target location\");\n\t\t\tapi.addTimelineEvent({\n\t\t\t\tlayerId: navigationsLayerId,\n\t\t\t\tevent: {\n\t\t\t\t\ttitle: \"End of navigation\",\n\t\t\t\t\tsubtitle: to.fullPath,\n\t\t\t\t\ttime: api.now(),\n\t\t\t\t\tdata,\n\t\t\t\t\tlogType: failure ? \"warning\" : \"default\",\n\t\t\t\t\tgroupId: to.meta.__navigationId\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\t/**\n\t\t* Inspector of Existing routes\n\t\t*/\n\t\tconst routerInspectorId = \"router-inspector:\" + id;\n\t\tapi.addInspector({\n\t\t\tid: routerInspectorId,\n\t\t\tlabel: \"Routes\" + (id ? \" \" + id : \"\"),\n\t\t\ticon: \"book\",\n\t\t\ttreeFilterPlaceholder: \"Search routes\"\n\t\t});\n\t\tfunction refreshRoutesView() {\n\t\t\tif (!activeRoutesPayload) return;\n\t\t\tconst payload = activeRoutesPayload;\n\t\t\tlet routes = matcher.getRoutes().filter((route) => !route.parent || !route.parent.record.components);\n\t\t\troutes.forEach(resetMatchStateOnRouteRecord);\n\t\t\tif (payload.filter) routes = routes.filter((route) => isRouteMatching(route, payload.filter.toLowerCase()));\n\t\t\troutes.forEach((route) => markRouteRecordActive(route, router.currentRoute.value));\n\t\t\tpayload.rootNodes = routes.map(formatRouteRecordForInspector);\n\t\t}\n\t\tlet activeRoutesPayload;\n\t\tapi.on.getInspectorTree((payload) => {\n\t\t\tactiveRoutesPayload = payload;\n\t\t\tif (payload.app === app && payload.inspectorId === routerInspectorId) refreshRoutesView();\n\t\t});\n\t\t/**\n\t\t* Display information about the currently selected route record\n\t\t*/\n\t\tapi.on.getInspectorState((payload) => {\n\t\t\tif (payload.app === app && payload.inspectorId === routerInspectorId) {\n\t\t\t\tconst route = matcher.getRoutes().find((route) => route.record.__vd_id === payload.nodeId);\n\t\t\t\tif (route) payload.state = { options: formatRouteRecordMatcherForStateInspector(route) };\n\t\t\t}\n\t\t});\n\t\tapi.sendInspectorTree(routerInspectorId);\n\t\tapi.sendInspectorState(routerInspectorId);\n\t});\n}\nfunction modifierForKey(key) {\n\tif (key.optional) return key.repeatable ? \"*\" : \"?\";\n\telse return key.repeatable ? \"+\" : \"\";\n}\nfunction formatRouteRecordMatcherForStateInspector(route) {\n\tconst { record } = route;\n\tconst fields = [{\n\t\teditable: false,\n\t\tkey: \"path\",\n\t\tvalue: record.path\n\t}];\n\tif (record.name != null) fields.push({\n\t\teditable: false,\n\t\tkey: \"name\",\n\t\tvalue: record.name\n\t});\n\tfields.push({\n\t\teditable: false,\n\t\tkey: \"regexp\",\n\t\tvalue: route.re\n\t});\n\tif (route.keys.length) fields.push({\n\t\teditable: false,\n\t\tkey: \"keys\",\n\t\tvalue: { _custom: {\n\t\t\ttype: null,\n\t\t\treadOnly: true,\n\t\t\tdisplay: route.keys.map((key) => `${key.name}${modifierForKey(key)}`).join(\" \"),\n\t\t\ttooltip: \"Param keys\",\n\t\t\tvalue: route.keys\n\t\t} }\n\t});\n\tif (record.redirect != null) fields.push({\n\t\teditable: false,\n\t\tkey: \"redirect\",\n\t\tvalue: record.redirect\n\t});\n\tif (route.alias.length) fields.push({\n\t\teditable: false,\n\t\tkey: \"aliases\",\n\t\tvalue: route.alias.map((alias) => alias.record.path)\n\t});\n\tif (Object.keys(route.record.meta).length) fields.push({\n\t\teditable: false,\n\t\tkey: \"meta\",\n\t\tvalue: route.record.meta\n\t});\n\tfields.push({\n\t\tkey: \"score\",\n\t\teditable: false,\n\t\tvalue: { _custom: {\n\t\t\ttype: null,\n\t\t\treadOnly: true,\n\t\t\tdisplay: route.score.map((score) => score.join(\", \")).join(\" | \"),\n\t\t\ttooltip: \"Score used to sort routes\",\n\t\t\tvalue: route.score\n\t\t} }\n\t});\n\treturn fields;\n}\n/**\n* Extracted from tailwind palette\n*/\nconst PINK_500 = 15485081;\nconst BLUE_600 = 2450411;\nconst LIME_500 = 8702998;\nconst CYAN_400 = 2282478;\nconst ORANGE_400 = 16486972;\nconst DARK = 6710886;\nconst RED_100 = 16704226;\nconst RED_700 = 12131356;\nfunction formatRouteRecordForInspector(route) {\n\tconst tags = [];\n\tconst { record } = route;\n\tif (record.name != null) tags.push({\n\t\tlabel: String(record.name),\n\t\ttextColor: 0,\n\t\tbackgroundColor: CYAN_400\n\t});\n\tif (record.aliasOf) tags.push({\n\t\tlabel: \"alias\",\n\t\ttextColor: 0,\n\t\tbackgroundColor: ORANGE_400\n\t});\n\tif (route.__vd_match) tags.push({\n\t\tlabel: \"matches\",\n\t\ttextColor: 0,\n\t\tbackgroundColor: PINK_500\n\t});\n\tif (route.__vd_exactActive) tags.push({\n\t\tlabel: \"exact\",\n\t\ttextColor: 0,\n\t\tbackgroundColor: LIME_500\n\t});\n\tif (route.__vd_active) tags.push({\n\t\tlabel: \"active\",\n\t\ttextColor: 0,\n\t\tbackgroundColor: BLUE_600\n\t});\n\tif (record.redirect) tags.push({\n\t\tlabel: typeof record.redirect === \"string\" ? `redirect: ${record.redirect}` : \"redirects\",\n\t\ttextColor: 16777215,\n\t\tbackgroundColor: DARK\n\t});\n\tlet id = record.__vd_id;\n\tif (id == null) {\n\t\tid = String(routeRecordId++);\n\t\trecord.__vd_id = id;\n\t}\n\treturn {\n\t\tid,\n\t\tlabel: record.path,\n\t\ttags,\n\t\tchildren: route.children.map(formatRouteRecordForInspector)\n\t};\n}\nlet routeRecordId = 0;\nconst EXTRACT_REGEXP_RE = /^\\/(.*)\\/([a-z]*)$/;\nfunction markRouteRecordActive(route, currentRoute) {\n\tconst isExactActive = currentRoute.matched.length && isSameRouteRecord(currentRoute.matched[currentRoute.matched.length - 1], route.record);\n\troute.__vd_exactActive = route.__vd_active = isExactActive;\n\tif (!isExactActive) route.__vd_active = currentRoute.matched.some((match) => isSameRouteRecord(match, route.record));\n\troute.children.forEach((childRoute) => markRouteRecordActive(childRoute, currentRoute));\n}\nfunction resetMatchStateOnRouteRecord(route) {\n\troute.__vd_match = false;\n\troute.children.forEach(resetMatchStateOnRouteRecord);\n}\nfunction isRouteMatching(route, filter) {\n\tconst found = String(route.re).match(EXTRACT_REGEXP_RE);\n\troute.__vd_match = false;\n\tif (!found || found.length < 3) return false;\n\tif (new RegExp(found[1].replace(/\\$$/, \"\"), found[2]).test(filter)) {\n\t\troute.children.forEach((child) => isRouteMatching(child, filter));\n\t\tif (route.record.path !== \"/\" || filter === \"/\") {\n\t\t\troute.__vd_match = route.re.test(filter);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\tconst path = route.record.path.toLowerCase();\n\tconst decodedPath = decode(path);\n\tif (!filter.startsWith(\"/\") && (decodedPath.includes(filter) || path.includes(filter))) return true;\n\tif (decodedPath.startsWith(filter) || path.startsWith(filter)) return true;\n\tif (route.record.name && String(route.record.name).includes(filter)) return true;\n\treturn route.children.some((child) => isRouteMatching(child, filter));\n}\nfunction omit(obj, keys) {\n\tconst ret = {};\n\tfor (const key in obj) if (!keys.includes(key)) ret[key] = obj[key];\n\treturn ret;\n}\n//#endregion\nexport { PLUS_RE as A, isSameRouteLocation as C, resolveRelativePath as D, parseURL as E, isBrowser as F, encodeHash as M, encodeParam as N, stringifyURL as O, encodePath as P, START_LOCATION_NORMALIZED as S, isSameRouteRecord as T, saveScrollPosition as _, loadRouteLocation as a, normalizeBase as b, useCallbacks as c, stringifyQuery as d, isRouteLocation as f, getScrollKey as g, getSavedScrollPosition as h, guardToPromiseFn as i, decode as j, stripBase as k, normalizeQuery as l, computeScrollPosition as m, extractChangingRecords as n, onBeforeRouteLeave as o, isRouteName as p, extractComponentsGuards as r, onBeforeRouteUpdate as s, addDevtools as t, parseQuery as u, scrollToPosition as v, isSameRouteLocationParams as w, NEW_stringifyURL as x, createHref as y };\n","/*!\n* vue-router v5.2.0\n* (c) 2026 Eduardo San Martin Morote\n* @license MIT\n*/\nimport { C as isSameRouteLocation, E as parseURL, F as isBrowser, M as encodeHash, N as encodeParam, O as stringifyURL, S as START_LOCATION_NORMALIZED, T as isSameRouteRecord, _ as saveScrollPosition, a as loadRouteLocation, b as normalizeBase, c as useCallbacks, d as stringifyQuery, f as isRouteLocation, g as getScrollKey, h as getSavedScrollPosition, i as guardToPromiseFn, j as decode, k as stripBase, l as normalizeQuery, m as computeScrollPosition, n as extractChangingRecords, o as onBeforeRouteLeave, p as isRouteName, r as extractComponentsGuards, s as onBeforeRouteUpdate, t as addDevtools, u as parseQuery, v as scrollToPosition, w as isSameRouteLocationParams, y as createHref } from \"./devtools-Bpr7ZAVB.js\";\nimport { a as routerKey, c as diagnostics, d as isNavigationFailure, f as applyToParams, h as isArray, i as routeLocationKey, l as NavigationFailureType, n as useRouter, o as routerViewLocationKey, p as assign, r as matchedRouteKey, s as viewDepthKey, t as useRoute, u as createRouterError, v as mergeOptions, y as noop } from \"./useApi-CROJJdhE.js\";\nimport { computed, defineComponent, getCurrentInstance, h, inject, nextTick, provide, reactive, ref, shallowReactive, shallowRef, unref, watch, watchEffect } from \"vue\";\n//#region src/history/html5.ts\nlet createBaseLocation = () => location.protocol + \"//\" + location.host;\n/**\n* Creates a normalized history location from a window.location object\n* @param base - The base path\n* @param location - The window.location object\n*/\nfunction createCurrentLocation(base, location) {\n\tconst { pathname, search, hash } = location;\n\tconst hashPos = base.indexOf(\"#\");\n\tif (hashPos > -1) {\n\t\tlet slicePos = hash.includes(base.slice(hashPos)) ? base.slice(hashPos).length : 1;\n\t\tlet pathFromHash = hash.slice(slicePos);\n\t\tif (pathFromHash[0] !== \"/\") pathFromHash = \"/\" + pathFromHash;\n\t\treturn stripBase(pathFromHash, \"\");\n\t}\n\treturn stripBase(pathname, base) + search + hash;\n}\nfunction useHistoryListeners(base, historyState, currentLocation, replace) {\n\tlet listeners = [];\n\tlet teardowns = [];\n\tlet pauseState = null;\n\tconst popStateHandler = ({ state }) => {\n\t\tconst to = createCurrentLocation(base, location);\n\t\tconst from = currentLocation.value;\n\t\tconst fromState = historyState.value;\n\t\tlet delta = 0;\n\t\tif (state) {\n\t\t\tcurrentLocation.value = to;\n\t\t\thistoryState.value = state;\n\t\t\tif (pauseState && pauseState === from) {\n\t\t\t\tpauseState = null;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tdelta = fromState ? state.position - fromState.position : 0;\n\t\t} else replace(to);\n\t\tlisteners.forEach((listener) => {\n\t\t\tlistener(currentLocation.value, from, {\n\t\t\t\tdelta,\n\t\t\t\ttype: \"pop\",\n\t\t\t\tdirection: delta ? delta > 0 ? \"forward\" : \"back\" : \"\"\n\t\t\t});\n\t\t});\n\t};\n\tfunction pauseListeners() {\n\t\tpauseState = currentLocation.value;\n\t}\n\tfunction listen(callback) {\n\t\tlisteners.push(callback);\n\t\tconst teardown = () => {\n\t\t\tconst index = listeners.indexOf(callback);\n\t\t\tif (index > -1) listeners.splice(index, 1);\n\t\t};\n\t\tteardowns.push(teardown);\n\t\treturn teardown;\n\t}\n\tfunction beforeUnloadListener() {\n\t\tif (document.visibilityState === \"hidden\") {\n\t\t\tconst { history } = window;\n\t\t\tif (!history.state) return;\n\t\t\thistory.replaceState(assign({}, history.state, { scroll: computeScrollPosition() }), \"\");\n\t\t}\n\t}\n\tfunction destroy() {\n\t\tfor (const teardown of teardowns) teardown();\n\t\tteardowns = [];\n\t\twindow.removeEventListener(\"popstate\", popStateHandler);\n\t\twindow.removeEventListener(\"pagehide\", beforeUnloadListener);\n\t\tdocument.removeEventListener(\"visibilitychange\", beforeUnloadListener);\n\t}\n\twindow.addEventListener(\"popstate\", popStateHandler);\n\twindow.addEventListener(\"pagehide\", beforeUnloadListener);\n\tdocument.addEventListener(\"visibilitychange\", beforeUnloadListener);\n\treturn {\n\t\tpauseListeners,\n\t\tlisten,\n\t\tdestroy\n\t};\n}\n/**\n* Creates a state object\n*/\nfunction buildState(back, current, forward, replaced = false, computeScroll = false) {\n\treturn {\n\t\tback,\n\t\tcurrent,\n\t\tforward,\n\t\treplaced,\n\t\tposition: window.history.length,\n\t\tscroll: computeScroll ? computeScrollPosition() : null\n\t};\n}\nfunction useHistoryStateNavigation(base) {\n\tconst { history, location } = window;\n\tconst currentLocation = { value: createCurrentLocation(base, location) };\n\tconst historyState = { value: history.state };\n\tif (!historyState.value) changeLocation(currentLocation.value, {\n\t\tback: null,\n\t\tcurrent: currentLocation.value,\n\t\tforward: null,\n\t\tposition: history.length - 1,\n\t\treplaced: true,\n\t\tscroll: null\n\t}, true);\n\tfunction changeLocation(to, state, replace) {\n\t\t/**\n\t\t* if a base tag is provided, and we are on a normal domain, we have to\n\t\t* respect the provided `base` attribute because pushState() will use it and\n\t\t* potentially erase anything before the `#` like at\n\t\t* https://github.com/vuejs/router/issues/685 where a base of\n\t\t* `/folder/#` but a base of `/` would erase the `/folder/` section. If\n\t\t* there is no host, the `` tag makes no sense and if there isn't a\n\t\t* base tag we can just use everything after the `#`.\n\t\t*/\n\t\tconst hashIndex = base.indexOf(\"#\");\n\t\tconst url = hashIndex > -1 ? (location.host && document.querySelector(\"base\") ? base : base.slice(hashIndex)) + to : createBaseLocation() + base + to;\n\t\ttry {\n\t\t\thistory[replace ? \"replaceState\" : \"pushState\"](state, \"\", url);\n\t\t\thistoryState.value = state;\n\t\t} catch (err) {\n\t\t\tif (process.env.NODE_ENV !== \"production\") diagnostics.VUE_ROUTER_R0120({ cause: err });\n\t\t\telse console.error(err);\n\t\t\tlocation[replace ? \"replace\" : \"assign\"](url);\n\t\t}\n\t}\n\tfunction replace(to, data) {\n\t\tchangeLocation(to, assign({}, history.state, buildState(historyState.value.back, to, historyState.value.forward, true), data, { position: historyState.value.position }), true);\n\t\tcurrentLocation.value = to;\n\t}\n\tfunction push(to, data) {\n\t\tconst currentState = assign({}, historyState.value, history.state, {\n\t\t\tforward: to,\n\t\t\tscroll: computeScrollPosition()\n\t\t});\n\t\tif (process.env.NODE_ENV !== \"production\" && !history.state) diagnostics.VUE_ROUTER_R0121();\n\t\tchangeLocation(currentState.current, currentState, true);\n\t\tchangeLocation(to, assign({}, buildState(currentLocation.value, to, null), { position: currentState.position + 1 }, data), false);\n\t\tcurrentLocation.value = to;\n\t}\n\treturn {\n\t\tlocation: currentLocation,\n\t\tstate: historyState,\n\t\tpush,\n\t\treplace\n\t};\n}\n/**\n* Creates an HTML5 history. Most common history for single page applications.\n*\n* @param base -\n*/\nfunction createWebHistory(base) {\n\tbase = normalizeBase(base);\n\tconst historyNavigation = useHistoryStateNavigation(base);\n\tconst historyListeners = useHistoryListeners(base, historyNavigation.state, historyNavigation.location, historyNavigation.replace);\n\tfunction go(delta, triggerListeners = true) {\n\t\tif (!triggerListeners) historyListeners.pauseListeners();\n\t\thistory.go(delta);\n\t}\n\tconst routerHistory = assign({\n\t\tlocation: \"\",\n\t\tbase,\n\t\tgo,\n\t\tcreateHref: createHref.bind(null, base)\n\t}, historyNavigation, historyListeners);\n\tObject.defineProperty(routerHistory, \"location\", {\n\t\tenumerable: true,\n\t\tget: () => historyNavigation.location.value\n\t});\n\tObject.defineProperty(routerHistory, \"state\", {\n\t\tenumerable: true,\n\t\tget: () => historyNavigation.state.value\n\t});\n\treturn routerHistory;\n}\n//#endregion\n//#region src/history/hash.ts\n/**\n* Creates a hash history. Useful for web applications with no host (e.g. `file://`) or when configuring a server to\n* handle any URL is not possible.\n*\n* @param base - optional base to provide. Defaults to `location.pathname + location.search` If there is a `` tag\n* in the `head`, its value will be ignored in favor of this parameter **but note it affects all the history.pushState()\n* calls**, meaning that if you use a `` tag, it's `href` value **has to match this parameter** (ignoring anything\n* after the `#`).\n*\n* @example\n* ```js\n* // at https://example.com/folder\n* createWebHashHistory() // gives a url of `https://example.com/folder#`\n* createWebHashHistory('/folder/') // gives a url of `https://example.com/folder/#`\n* // if the `#` is provided in the base, it won't be added by `createWebHashHistory`\n* createWebHashHistory('/folder/#/app/') // gives a url of `https://example.com/folder/#/app/`\n* // you should avoid doing this because it changes the original url and breaks copying urls\n* createWebHashHistory('/other-folder/') // gives a url of `https://example.com/other-folder/#`\n*\n* // at file:///usr/etc/folder/index.html\n* // for locations with no `host`, the base is ignored\n* createWebHashHistory('/iAmIgnored') // gives a url of `file:///usr/etc/folder/index.html#`\n* ```\n*/\nfunction createWebHashHistory(base) {\n\tbase = location.host ? base || location.pathname + location.search : \"\";\n\tif (!base.includes(\"#\")) base += \"#\";\n\tif (process.env.NODE_ENV !== \"production\" && !base.endsWith(\"#/\") && !base.endsWith(\"#\")) diagnostics.VUE_ROUTER_R0110({\n\t\tbase,\n\t\tsuggestion: base.replace(/#.*$/, \"#\")\n\t});\n\treturn createWebHistory(base);\n}\n//#endregion\n//#region src/history/memory.ts\n/**\n* Creates an in-memory based history. The main purpose of this history is to handle SSR. It starts in a special location that is nowhere.\n* It's up to the user to replace that location with the starter location by either calling `router.push` or `router.replace`.\n*\n* @param base - Base applied to all urls, defaults to '/'\n* @returns a history object that can be passed to the router constructor\n*/\nfunction createMemoryHistory(base = \"\") {\n\tlet listeners = [];\n\tlet queue = [[\"\", {}]];\n\tlet position = 0;\n\tbase = normalizeBase(base);\n\tfunction setLocation(location, state = {}) {\n\t\tposition++;\n\t\tif (position !== queue.length) queue.splice(position);\n\t\tqueue.push([location, state]);\n\t}\n\tfunction triggerListeners(to, from, { direction, delta }) {\n\t\tconst info = {\n\t\t\tdirection,\n\t\t\tdelta,\n\t\t\ttype: \"pop\"\n\t\t};\n\t\tfor (const callback of listeners) callback(to, from, info);\n\t}\n\tconst routerHistory = {\n\t\tlocation: \"\",\n\t\tstate: {},\n\t\tbase,\n\t\tcreateHref: createHref.bind(null, base),\n\t\treplace(to, state) {\n\t\t\tqueue.splice(position--, 1);\n\t\t\tsetLocation(to, state);\n\t\t},\n\t\tpush(to, state) {\n\t\t\tsetLocation(to, state);\n\t\t},\n\t\tlisten(callback) {\n\t\t\tlisteners.push(callback);\n\t\t\treturn () => {\n\t\t\t\tconst index = listeners.indexOf(callback);\n\t\t\t\tif (index > -1) listeners.splice(index, 1);\n\t\t\t};\n\t\t},\n\t\tdestroy() {\n\t\t\tlisteners = [];\n\t\t\tqueue = [[\"\", {}]];\n\t\t\tposition = 0;\n\t\t},\n\t\tgo(delta, shouldTrigger = true) {\n\t\t\tconst from = this.location;\n\t\t\tconst direction = delta < 0 ? \"back\" : \"forward\";\n\t\t\tposition = Math.max(0, Math.min(position + delta, queue.length - 1));\n\t\t\tif (shouldTrigger) triggerListeners(this.location, from, {\n\t\t\t\tdirection,\n\t\t\t\tdelta\n\t\t\t});\n\t\t}\n\t};\n\tObject.defineProperty(routerHistory, \"location\", {\n\t\tenumerable: true,\n\t\tget: () => queue[position][0]\n\t});\n\tObject.defineProperty(routerHistory, \"state\", {\n\t\tenumerable: true,\n\t\tget: () => queue[position][1]\n\t});\n\treturn routerHistory;\n}\n//#endregion\n//#region src/matcher/pathTokenizer.ts\nconst ROOT_TOKEN = {\n\ttype: 0,\n\tvalue: \"\"\n};\nconst VALID_PARAM_RE = /[a-zA-Z0-9_]/;\nfunction tokenizePath(path) {\n\tif (!path) return [[]];\n\tif (path === \"/\") return [[ROOT_TOKEN]];\n\tif (!path.startsWith(\"/\")) throw new Error(process.env.NODE_ENV !== \"production\" ? `Route paths should start with a \"/\": \"${path}\" should be \"/${path}\".` : `Invalid path \"${path}\"`);\n\tfunction crash(message) {\n\t\tthrow new Error(`ERR (${state})/\"${buffer}\": ${message}`);\n\t}\n\tlet state = 0;\n\tlet previousState = state;\n\tconst tokens = [];\n\tlet segment;\n\tfunction finalizeSegment() {\n\t\tif (segment) tokens.push(segment);\n\t\tsegment = [];\n\t}\n\tlet i = 0;\n\tlet char;\n\tlet buffer = \"\";\n\tlet customRe = \"\";\n\tfunction consumeBuffer() {\n\t\tif (!buffer) return;\n\t\tif (state === 0) segment.push({\n\t\t\ttype: 0,\n\t\t\tvalue: buffer\n\t\t});\n\t\telse if (state === 1 || state === 2 || state === 3) {\n\t\t\tif (segment.length > 1 && (char === \"*\" || char === \"+\")) crash(`A repeatable param (${buffer}) must be alone in its segment. eg: '/:ids+.`);\n\t\t\tsegment.push({\n\t\t\t\ttype: 1,\n\t\t\t\tvalue: buffer,\n\t\t\t\tregexp: customRe,\n\t\t\t\trepeatable: char === \"*\" || char === \"+\",\n\t\t\t\toptional: char === \"*\" || char === \"?\"\n\t\t\t});\n\t\t} else crash(\"Invalid state to consume buffer\");\n\t\tbuffer = \"\";\n\t}\n\tfunction addCharToBuffer() {\n\t\tbuffer += char;\n\t}\n\twhile (i < path.length) {\n\t\tchar = path[i++];\n\t\tswitch (state) {\n\t\t\tcase 0:\n\t\t\t\tif (char === \"\\\\\") {\n\t\t\t\t\tpreviousState = state;\n\t\t\t\t\tstate = 4;\n\t\t\t\t} else if (char === \"/\") {\n\t\t\t\t\tif (buffer) consumeBuffer();\n\t\t\t\t\tfinalizeSegment();\n\t\t\t\t} else if (char === \":\") {\n\t\t\t\t\tconsumeBuffer();\n\t\t\t\t\tstate = 1;\n\t\t\t\t} else addCharToBuffer();\n\t\t\t\tbreak;\n\t\t\tcase 4:\n\t\t\t\taddCharToBuffer();\n\t\t\t\tstate = previousState;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tif (char === \"(\") state = 2;\n\t\t\t\telse if (VALID_PARAM_RE.test(char)) addCharToBuffer();\n\t\t\t\telse {\n\t\t\t\t\tconsumeBuffer();\n\t\t\t\t\tstate = 0;\n\t\t\t\t\tif (char !== \"*\" && char !== \"?\" && char !== \"+\") i--;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tif (char === \")\") if (customRe[customRe.length - 1] == \"\\\\\") customRe = customRe.slice(0, -1) + char;\n\t\t\t\telse state = 3;\n\t\t\t\telse customRe += char;\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tconsumeBuffer();\n\t\t\t\tstate = 0;\n\t\t\t\tif (char !== \"*\" && char !== \"?\" && char !== \"+\") i--;\n\t\t\t\tcustomRe = \"\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcrash(\"Unknown state\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n\tif (state === 2) crash(`Unfinished custom RegExp for param \"${buffer}\"`);\n\tconsumeBuffer();\n\tfinalizeSegment();\n\treturn tokens;\n}\n//#endregion\n//#region src/matcher/pathParserRanker.ts\nconst BASE_PARAM_PATTERN = \"[^/]+?\";\nconst BASE_PATH_PARSER_OPTIONS = {\n\tsensitive: false,\n\tstrict: false,\n\tstart: true,\n\tend: true\n};\nconst REGEX_CHARS_RE = /[.+*?^${}()[\\]/\\\\]/g;\n/**\n* Creates a path parser from an array of Segments (a segment is an array of Tokens)\n*\n* @param segments - array of segments returned by tokenizePath\n* @param extraOptions - optional options for the regexp\n* @returns a PathParser\n*/\nfunction tokensToParser(segments, extraOptions) {\n\tconst options = assign({}, BASE_PATH_PARSER_OPTIONS, extraOptions);\n\tconst score = [];\n\tlet pattern = options.start ? \"^\" : \"\";\n\tconst keys = [];\n\tfor (const segment of segments) {\n\t\tconst segmentScores = segment.length ? [] : [90];\n\t\tif (options.strict && !segment.length) pattern += \"/\";\n\t\tfor (let tokenIndex = 0; tokenIndex < segment.length; tokenIndex++) {\n\t\t\tconst token = segment[tokenIndex];\n\t\t\tlet subSegmentScore = 40 + (options.sensitive ? .25 : 0);\n\t\t\tif (token.type === 0) {\n\t\t\t\tif (!tokenIndex) pattern += \"/\";\n\t\t\t\tpattern += token.value.replace(REGEX_CHARS_RE, \"\\\\$&\");\n\t\t\t\tsubSegmentScore += 40;\n\t\t\t} else if (token.type === 1) {\n\t\t\t\tconst { value, repeatable, optional, regexp } = token;\n\t\t\t\tkeys.push({\n\t\t\t\t\tname: value,\n\t\t\t\t\trepeatable,\n\t\t\t\t\toptional\n\t\t\t\t});\n\t\t\t\tconst re = regexp ? regexp : BASE_PARAM_PATTERN;\n\t\t\t\tif (re !== BASE_PARAM_PATTERN) {\n\t\t\t\t\tsubSegmentScore += 10;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tnew RegExp(`(${re})`);\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\tthrow new Error(`Invalid custom RegExp for param \"${value}\" (${re}): ` + err.message);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tlet subPattern = repeatable ? `((?:${re})(?:/(?:${re}))*)` : `(${re})`;\n\t\t\t\tif (!tokenIndex) subPattern = optional && segment.length < 2 ? `(?:/${subPattern})` : \"/\" + subPattern;\n\t\t\t\tif (optional) subPattern += \"?\";\n\t\t\t\tpattern += subPattern;\n\t\t\t\tsubSegmentScore += 20;\n\t\t\t\tif (optional) subSegmentScore += -8;\n\t\t\t\tif (repeatable) subSegmentScore += -20;\n\t\t\t\tif (re === \".*\") subSegmentScore += -50;\n\t\t\t}\n\t\t\tsegmentScores.push(subSegmentScore);\n\t\t}\n\t\tscore.push(segmentScores);\n\t}\n\tif (options.strict && options.end) {\n\t\tconst i = score.length - 1;\n\t\tscore[i][score[i].length - 1] += .7000000000000001;\n\t}\n\tif (!options.strict) pattern += \"/?\";\n\tif (options.end) pattern += \"$\";\n\telse if (options.strict && !pattern.endsWith(\"/\")) pattern += \"(?:/|$)\";\n\tconst re = new RegExp(pattern, options.sensitive ? \"\" : \"i\");\n\tfunction parse(path) {\n\t\tconst match = path.match(re);\n\t\tconst params = {};\n\t\tif (!match) return null;\n\t\tfor (let i = 1; i < match.length; i++) {\n\t\t\tconst value = match[i] || \"\";\n\t\t\tconst key = keys[i - 1];\n\t\t\tparams[key.name] = value && key.repeatable ? value.split(\"/\") : value;\n\t\t}\n\t\treturn params;\n\t}\n\tfunction stringify(params) {\n\t\tlet path = \"\";\n\t\tlet avoidDuplicatedSlash = false;\n\t\tfor (const segment of segments) {\n\t\t\tif (!avoidDuplicatedSlash || !path.endsWith(\"/\")) path += \"/\";\n\t\t\tavoidDuplicatedSlash = false;\n\t\t\tfor (const token of segment) if (token.type === 0) path += token.value;\n\t\t\telse if (token.type === 1) {\n\t\t\t\tconst { value, repeatable, optional } = token;\n\t\t\t\tconst param = value in params ? params[value] : \"\";\n\t\t\t\tif (isArray(param) && !repeatable) throw new Error(`Provided param \"${value}\" is an array but it is not repeatable (* or + modifiers)`);\n\t\t\t\tconst text = isArray(param) ? param.join(\"/\") : param;\n\t\t\t\tif (!text) if (optional) {\n\t\t\t\t\tif (segment.length < 2) if (path.endsWith(\"/\")) path = path.slice(0, -1);\n\t\t\t\t\telse avoidDuplicatedSlash = true;\n\t\t\t\t} else throw new Error(`Missing required param \"${value}\"`);\n\t\t\t\tpath += text;\n\t\t\t}\n\t\t}\n\t\treturn path || \"/\";\n\t}\n\treturn {\n\t\tre,\n\t\tscore,\n\t\tkeys,\n\t\tparse,\n\t\tstringify\n\t};\n}\n/**\n* Compares an array of numbers as used in PathParser.score and returns a\n* number. This function can be used to `sort` an array\n*\n* @param a - first array of numbers\n* @param b - second array of numbers\n* @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b\n* should be sorted first\n*/\nfunction compareScoreArray(a, b) {\n\tlet i = 0;\n\twhile (i < a.length && i < b.length) {\n\t\tconst diff = b[i] - a[i];\n\t\tif (diff) return diff;\n\t\ti++;\n\t}\n\tif (a.length < b.length) return a.length === 1 && a[0] === 80 ? -1 : 1;\n\telse if (a.length > b.length) return b.length === 1 && b[0] === 80 ? 1 : -1;\n\treturn 0;\n}\n/**\n* Compare function that can be used with `sort` to sort an array of PathParser\n*\n* @param a - first PathParser\n* @param b - second PathParser\n* @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b\n*/\nfunction comparePathParserScore(a, b) {\n\tlet i = 0;\n\tconst aScore = a.score;\n\tconst bScore = b.score;\n\twhile (i < aScore.length && i < bScore.length) {\n\t\tconst comp = compareScoreArray(aScore[i], bScore[i]);\n\t\tif (comp) return comp;\n\t\ti++;\n\t}\n\tif (Math.abs(bScore.length - aScore.length) === 1) {\n\t\tif (isLastScoreNegative(aScore)) return 1;\n\t\tif (isLastScoreNegative(bScore)) return -1;\n\t}\n\treturn bScore.length - aScore.length;\n}\n/**\n* This allows detecting splats at the end of a path: /home/:id(.*)*\n*\n* @param score - score to check\n* @returns true if the last entry is negative\n*/\nfunction isLastScoreNegative(score) {\n\tconst last = score[score.length - 1];\n\treturn score.length > 0 && last[last.length - 1] < 0;\n}\nconst PATH_PARSER_OPTIONS_DEFAULTS = {\n\tstrict: false,\n\tend: true,\n\tsensitive: false\n};\n//#endregion\n//#region src/matcher/pathMatcher.ts\nfunction createRouteRecordMatcher(record, parent, options) {\n\tconst parser = tokensToParser(tokenizePath(record.path), options);\n\tif (process.env.NODE_ENV !== \"production\") {\n\t\tconst existingKeys = /* @__PURE__ */ new Set();\n\t\tfor (const key of parser.keys) {\n\t\t\tif (existingKeys.has(key.name)) diagnostics.VUE_ROUTER_R0090({\n\t\t\t\tname: key.name,\n\t\t\t\tpath: record.path\n\t\t\t});\n\t\t\texistingKeys.add(key.name);\n\t\t}\n\t}\n\tconst matcher = assign(parser, {\n\t\trecord,\n\t\tparent,\n\t\tchildren: [],\n\t\talias: []\n\t});\n\tif (parent) {\n\t\tif (!matcher.record.aliasOf === !parent.record.aliasOf) parent.children.push(matcher);\n\t}\n\treturn matcher;\n}\n//#endregion\n//#region src/matcher/index.ts\n/**\n* Creates a Router Matcher.\n*\n* @internal\n* @param routes - array of initial routes\n* @param globalOptions - global route options\n*/\nfunction createRouterMatcher(routes, globalOptions) {\n\tconst matchers = [];\n\tconst matcherMap = /* @__PURE__ */ new Map();\n\tglobalOptions = mergeOptions(PATH_PARSER_OPTIONS_DEFAULTS, globalOptions);\n\tfunction getRecordMatcher(name) {\n\t\treturn matcherMap.get(name);\n\t}\n\tfunction addRoute(record, parent, originalRecord) {\n\t\tconst isRootAdd = !originalRecord;\n\t\tconst mainNormalizedRecord = normalizeRouteRecord(record);\n\t\tif (process.env.NODE_ENV !== \"production\") checkChildMissingNameWithEmptyPath(mainNormalizedRecord, parent);\n\t\tmainNormalizedRecord.aliasOf = originalRecord && originalRecord.record;\n\t\tconst options = mergeOptions(globalOptions, record);\n\t\tconst normalizedRecords = [mainNormalizedRecord];\n\t\tif (\"alias\" in record) {\n\t\t\tconst aliases = typeof record.alias === \"string\" ? [record.alias] : record.alias;\n\t\t\tfor (const alias of aliases) normalizedRecords.push(normalizeRouteRecord(assign({}, mainNormalizedRecord, {\n\t\t\t\tcomponents: originalRecord ? originalRecord.record.components : mainNormalizedRecord.components,\n\t\t\t\tpath: alias,\n\t\t\t\taliasOf: originalRecord ? originalRecord.record : mainNormalizedRecord\n\t\t\t})));\n\t\t}\n\t\tlet matcher;\n\t\tlet originalMatcher;\n\t\tfor (const normalizedRecord of normalizedRecords) {\n\t\t\tconst { path } = normalizedRecord;\n\t\t\tif (parent && path[0] !== \"/\") {\n\t\t\t\tconst parentPath = parent.record.path;\n\t\t\t\tconst connectingSlash = parentPath[parentPath.length - 1] === \"/\" ? \"\" : \"/\";\n\t\t\t\tnormalizedRecord.path = parent.record.path + (path && connectingSlash + path);\n\t\t\t}\n\t\t\tif (process.env.NODE_ENV !== \"production\" && normalizedRecord.path === \"*\") throw new Error(\"Catch all routes (\\\"*\\\") must now be defined using a param with a custom regexp.\\nSee more at https://router.vuejs.org/guide/migration/#Removed-star-or-catch-all-routes.\");\n\t\t\tmatcher = createRouteRecordMatcher(normalizedRecord, parent, options);\n\t\t\tif (process.env.NODE_ENV !== \"production\" && parent && path[0] === \"/\") checkMissingParamsInAbsolutePath(matcher, parent);\n\t\t\tif (originalRecord) {\n\t\t\t\toriginalRecord.alias.push(matcher);\n\t\t\t\tif (process.env.NODE_ENV !== \"production\") checkSameParams(originalRecord, matcher);\n\t\t\t} else {\n\t\t\t\toriginalMatcher = originalMatcher || matcher;\n\t\t\t\tif (originalMatcher !== matcher) originalMatcher.alias.push(matcher);\n\t\t\t\tif (isRootAdd && record.name && !isAliasRecord(matcher)) {\n\t\t\t\t\tif (process.env.NODE_ENV !== \"production\") checkSameNameAsAncestor(record, parent);\n\t\t\t\t\tremoveRoute(record.name);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isMatchable(matcher)) insertMatcher(matcher);\n\t\t\tif (mainNormalizedRecord.children) {\n\t\t\t\tconst children = mainNormalizedRecord.children;\n\t\t\t\tfor (let i = 0; i < children.length; i++) addRoute(children[i], matcher, originalRecord && originalRecord.children[i]);\n\t\t\t}\n\t\t\toriginalRecord = originalRecord || matcher;\n\t\t}\n\t\treturn originalMatcher ? () => {\n\t\t\tremoveRoute(originalMatcher);\n\t\t} : noop;\n\t}\n\tfunction removeRoute(matcherRef) {\n\t\tif (isRouteName(matcherRef)) {\n\t\t\tconst matcher = matcherMap.get(matcherRef);\n\t\t\tif (matcher) {\n\t\t\t\tmatcherMap.delete(matcherRef);\n\t\t\t\tmatchers.splice(matchers.indexOf(matcher), 1);\n\t\t\t\tmatcher.children.forEach(removeRoute);\n\t\t\t\tmatcher.alias.forEach(removeRoute);\n\t\t\t}\n\t\t} else {\n\t\t\tconst index = matchers.indexOf(matcherRef);\n\t\t\tif (index > -1) {\n\t\t\t\tmatchers.splice(index, 1);\n\t\t\t\tif (matcherRef.record.name) matcherMap.delete(matcherRef.record.name);\n\t\t\t\tmatcherRef.children.forEach(removeRoute);\n\t\t\t\tmatcherRef.alias.forEach(removeRoute);\n\t\t\t}\n\t\t}\n\t}\n\tfunction getRoutes() {\n\t\treturn matchers;\n\t}\n\tfunction insertMatcher(matcher) {\n\t\tconst index = findInsertionIndex(matcher, matchers);\n\t\tmatchers.splice(index, 0, matcher);\n\t\tif (matcher.record.name && !isAliasRecord(matcher)) matcherMap.set(matcher.record.name, matcher);\n\t}\n\tfunction resolve(location, currentLocation) {\n\t\tlet matcher;\n\t\tlet params = {};\n\t\tlet path;\n\t\tlet name;\n\t\tif (\"name\" in location && location.name) {\n\t\t\tmatcher = matcherMap.get(location.name);\n\t\t\tif (!matcher) throw createRouterError(1, { location });\n\t\t\tif (process.env.NODE_ENV !== \"production\") {\n\t\t\t\tconst invalidParams = Object.keys(location.params || {}).filter((paramName) => !matcher.keys.find((k) => k.name === paramName));\n\t\t\t\tif (invalidParams.length) {\n\t\t\t\t\tconst isInherited = !matcher.keys.length && invalidParams.some((name) => name in currentLocation.params);\n\t\t\t\t\tdiagnostics.VUE_ROUTER_R0100({\n\t\t\t\t\t\tparams: invalidParams.join(\"\\\", \\\"\"),\n\t\t\t\t\t\tinherited: isInherited ? ` If you are using a catch-all route with a named redirect, pass an empty \\`params\\` object: \\`redirect: { name: '...', params: {} }\\`.` : \"\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tname = matcher.record.name;\n\t\t\tparams = assign(pickParams(currentLocation.params, matcher.keys.filter((k) => !k.optional).concat(matcher.parent ? matcher.parent.keys.filter((k) => k.optional) : []).map((k) => k.name)), location.params && pickParams(location.params, matcher.keys.map((k) => k.name)));\n\t\t\tpath = matcher.stringify(params);\n\t\t} else if (location.path != null) {\n\t\t\tpath = location.path;\n\t\t\tif (process.env.NODE_ENV !== \"production\" && !path.startsWith(\"/\")) diagnostics.VUE_ROUTER_R0101({ path });\n\t\t\tmatcher = matchers.find((m) => m.re.test(path));\n\t\t\tif (matcher) {\n\t\t\t\tparams = matcher.parse(path);\n\t\t\t\tname = matcher.record.name;\n\t\t\t\tmatcher.keys.forEach((key) => {\n\t\t\t\t\tif (key.optional && !params[key.name]) delete params[key.name];\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tmatcher = currentLocation.name ? matcherMap.get(currentLocation.name) : matchers.find((m) => m.re.test(currentLocation.path));\n\t\t\tif (!matcher) throw createRouterError(1, {\n\t\t\t\tlocation,\n\t\t\t\tcurrentLocation\n\t\t\t});\n\t\t\tname = matcher.record.name;\n\t\t\tparams = assign({}, currentLocation.params, location.params);\n\t\t\tpath = matcher.stringify(params);\n\t\t}\n\t\tconst matched = [];\n\t\tlet parentMatcher = matcher;\n\t\twhile (parentMatcher) {\n\t\t\tmatched.unshift(parentMatcher.record);\n\t\t\tparentMatcher = parentMatcher.parent;\n\t\t}\n\t\treturn {\n\t\t\tname,\n\t\t\tpath,\n\t\t\tparams,\n\t\t\tmatched,\n\t\t\tmeta: mergeMetaFields(matched)\n\t\t};\n\t}\n\troutes.forEach((route) => addRoute(route));\n\tfunction clearRoutes() {\n\t\tmatchers.length = 0;\n\t\tmatcherMap.clear();\n\t}\n\treturn {\n\t\taddRoute,\n\t\tresolve,\n\t\tremoveRoute,\n\t\tclearRoutes,\n\t\tgetRoutes,\n\t\tgetRecordMatcher\n\t};\n}\n/**\n* Picks an object param to contain only specified keys.\n*\n* @param params - params object to pick from\n* @param keys - keys to pick\n*/\nfunction pickParams(params, keys) {\n\tconst newParams = {};\n\tfor (const key of keys) if (key in params) newParams[key] = params[key];\n\treturn newParams;\n}\n/**\n* Normalizes a RouteRecordRaw. Creates a copy\n*\n* @param record\n* @returns the normalized version\n*/\nfunction normalizeRouteRecord(record) {\n\tconst normalized = {\n\t\tpath: record.path,\n\t\tredirect: record.redirect,\n\t\tname: record.name,\n\t\tmeta: record.meta || {},\n\t\taliasOf: record.aliasOf,\n\t\tbeforeEnter: record.beforeEnter,\n\t\tprops: normalizeRecordProps(record),\n\t\tchildren: record.children || [],\n\t\tinstances: {},\n\t\tleaveGuards: /* @__PURE__ */ new Set(),\n\t\tupdateGuards: /* @__PURE__ */ new Set(),\n\t\tenterCallbacks: {},\n\t\tcomponents: \"components\" in record ? record.components || null : record.component && { default: record.component }\n\t};\n\tObject.defineProperty(normalized, \"mods\", { value: {} });\n\treturn normalized;\n}\n/**\n* Normalize the optional `props` in a record to always be an object similar to\n* components. Also accept a boolean for components.\n* @param record\n*/\nfunction normalizeRecordProps(record) {\n\tconst propsObject = {};\n\tconst props = record.props || false;\n\tif (\"component\" in record) propsObject.default = props;\n\telse for (const name in record.components) propsObject[name] = typeof props === \"object\" ? props[name] : props;\n\treturn propsObject;\n}\n/**\n* Checks if a record or any of its parent is an alias\n* @param record\n*/\nfunction isAliasRecord(record) {\n\twhile (record) {\n\t\tif (record.record.aliasOf) return true;\n\t\trecord = record.parent;\n\t}\n\treturn false;\n}\n/**\n* Merge meta fields of an array of records\n*\n* @param matched - array of matched records\n*/\nfunction mergeMetaFields(matched) {\n\treturn matched.reduce((meta, record) => assign(meta, record.meta), {});\n}\nfunction isSameParam(a, b) {\n\treturn a.name === b.name && a.optional === b.optional && a.repeatable === b.repeatable;\n}\n/**\n* Check if a path and its alias have the same required params\n*\n* @param a - original record\n* @param b - alias record\n*/\nfunction checkSameParams(a, b) {\n\tfor (const key of a.keys) if (!key.optional && !b.keys.find(isSameParam.bind(null, key))) {\n\t\tdiagnostics.VUE_ROUTER_R0102({\n\t\t\talias: b.record.path,\n\t\t\toriginal: a.record.path,\n\t\t\tname: key.name\n\t\t});\n\t\treturn;\n\t}\n\tfor (const key of b.keys) if (!key.optional && !a.keys.find(isSameParam.bind(null, key))) {\n\t\tdiagnostics.VUE_ROUTER_R0102({\n\t\t\talias: b.record.path,\n\t\t\toriginal: a.record.path,\n\t\t\tname: key.name\n\t\t});\n\t\treturn;\n\t}\n}\n/**\n* A route with a name and a child with an empty path without a name should warn when adding the route\n*\n* @param mainNormalizedRecord - RouteRecordNormalized\n* @param parent - RouteRecordMatcher\n*/\nfunction checkChildMissingNameWithEmptyPath(mainNormalizedRecord, parent) {\n\tif (parent && parent.record.name && !mainNormalizedRecord.name && !mainNormalizedRecord.path && mainNormalizedRecord.children.length === 0) diagnostics.VUE_ROUTER_R0103({ name: String(parent.record.name) });\n}\nfunction checkSameNameAsAncestor(record, parent) {\n\tfor (let ancestor = parent; ancestor; ancestor = ancestor.parent) if (ancestor.record.name === record.name) throw new Error(`A route named \"${String(record.name)}\" has been added as a ${parent === ancestor ? \"child\" : \"descendant\"} of a route with the same name. Route names must be unique and a nested route cannot use the same name as an ancestor.`);\n}\nfunction checkMissingParamsInAbsolutePath(record, parent) {\n\tfor (const key of parent.keys) if (!record.keys.find(isSameParam.bind(null, key))) {\n\t\tdiagnostics.VUE_ROUTER_R0104({\n\t\t\tpath: record.record.path,\n\t\t\tname: key.name,\n\t\t\tparent: parent.record.path\n\t\t});\n\t\treturn;\n\t}\n}\n/**\n* Performs a binary search to find the correct insertion index for a new matcher.\n*\n* Matchers are primarily sorted by their score. If scores are tied then we also consider parent/child relationships,\n* with descendants coming before ancestors. If there's still a tie, new routes are inserted after existing routes.\n*\n* @param matcher - new matcher to be inserted\n* @param matchers - existing matchers\n*/\nfunction findInsertionIndex(matcher, matchers) {\n\tlet lower = 0;\n\tlet upper = matchers.length;\n\twhile (lower !== upper) {\n\t\tconst mid = lower + upper >> 1;\n\t\tif (comparePathParserScore(matcher, matchers[mid]) < 0) upper = mid;\n\t\telse lower = mid + 1;\n\t}\n\tconst insertionAncestor = getInsertionAncestor(matcher);\n\tif (insertionAncestor) {\n\t\tupper = matchers.lastIndexOf(insertionAncestor, upper - 1);\n\t\tif (process.env.NODE_ENV !== \"production\" && upper < 0) diagnostics.VUE_ROUTER_R0105({\n\t\t\tancestor: insertionAncestor.record.path,\n\t\t\trecord: matcher.record.path\n\t\t});\n\t}\n\treturn upper;\n}\nfunction getInsertionAncestor(matcher) {\n\tlet ancestor = matcher;\n\twhile (ancestor = ancestor.parent) if (isMatchable(ancestor) && comparePathParserScore(matcher, ancestor) === 0) return ancestor;\n}\n/**\n* Checks if a matcher can be reachable. This means if it's possible to reach it as a route. For example, routes without\n* a component, or name, or redirect, are just used to group other routes.\n* @param matcher\n* @param matcher.record record of the matcher\n* @returns\n*/\nfunction isMatchable({ record }) {\n\treturn !!(record.name || record.components && Object.keys(record.components).length || record.redirect);\n}\n//#endregion\n//#region src/RouterLink.ts\n/**\n* Returns the internal behavior of a {@link RouterLink} without the rendering part.\n*\n* @param props - a `to` location and an optional `replace` flag\n*/\nfunction useLink(props) {\n\tconst router = inject(routerKey);\n\tconst currentRoute = inject(routeLocationKey);\n\tlet hasPrevious = false;\n\tlet previousTo = null;\n\tconst route = computed(() => {\n\t\tconst to = unref(props.to);\n\t\tif (process.env.NODE_ENV !== \"production\" && (!hasPrevious || to !== previousTo)) {\n\t\t\tif (!isRouteLocation(to)) diagnostics.VUE_ROUTER_R0050({ to });\n\t\t\tpreviousTo = to;\n\t\t\thasPrevious = true;\n\t\t}\n\t\treturn router.resolve(to);\n\t});\n\tconst activeRecordIndex = computed(() => {\n\t\tconst { matched } = route.value;\n\t\tconst { length } = matched;\n\t\tconst routeMatched = matched[length - 1];\n\t\tconst currentMatched = currentRoute.matched;\n\t\tif (!routeMatched || !currentMatched.length) return -1;\n\t\tconst index = currentMatched.findIndex(isSameRouteRecord.bind(null, routeMatched));\n\t\tif (index > -1) return index;\n\t\tconst parentRecordPath = getOriginalPath(matched[length - 2]);\n\t\treturn length > 1 && getOriginalPath(routeMatched) === parentRecordPath && currentMatched[currentMatched.length - 1].path !== parentRecordPath ? currentMatched.findIndex(isSameRouteRecord.bind(null, matched[length - 2])) : index;\n\t});\n\tconst isActive = computed(() => activeRecordIndex.value > -1 && includesParams(currentRoute.params, route.value.params));\n\tconst isExactActive = computed(() => activeRecordIndex.value > -1 && activeRecordIndex.value === currentRoute.matched.length - 1 && isSameRouteLocationParams(currentRoute.params, route.value.params));\n\tfunction navigate(e = {}) {\n\t\tif (guardEvent(e)) {\n\t\t\tconst p = router[unref(props.replace) ? \"replace\" : \"push\"](unref(props.to)).catch(noop);\n\t\t\tif (props.viewTransition && typeof document !== \"undefined\" && \"startViewTransition\" in document) document.startViewTransition(() => p);\n\t\t\treturn p;\n\t\t}\n\t\treturn Promise.resolve();\n\t}\n\tif ((process.env.NODE_ENV !== \"production\" || __VUE_PROD_DEVTOOLS__) && isBrowser) {\n\t\tconst instance = getCurrentInstance();\n\t\tif (instance) {\n\t\t\tconst linkContextDevtools = {\n\t\t\t\troute: route.value,\n\t\t\t\tisActive: isActive.value,\n\t\t\t\tisExactActive: isExactActive.value,\n\t\t\t\terror: null\n\t\t\t};\n\t\t\tinstance.__vrl_devtools = instance.__vrl_devtools || [];\n\t\t\tinstance.__vrl_devtools.push(linkContextDevtools);\n\t\t\twatchEffect(() => {\n\t\t\t\tlinkContextDevtools.route = route.value;\n\t\t\t\tlinkContextDevtools.isActive = isActive.value;\n\t\t\t\tlinkContextDevtools.isExactActive = isExactActive.value;\n\t\t\t\tlinkContextDevtools.error = isRouteLocation(unref(props.to)) ? null : \"Invalid \\\"to\\\" value\";\n\t\t\t}, { flush: \"post\" });\n\t\t}\n\t}\n\t/**\n\t* NOTE: update {@link _RouterLinkI}'s `$slots` type when updating this\n\t*/\n\treturn {\n\t\troute,\n\t\thref: computed(() => route.value.href),\n\t\tisActive,\n\t\tisExactActive,\n\t\tnavigate\n\t};\n}\nfunction preferSingleVNode(vnodes) {\n\treturn vnodes.length === 1 ? vnodes[0] : vnodes;\n}\n/**\n* Component to render a link that triggers a navigation on click.\n*/\nconst RouterLink = /* @__PURE__ */ defineComponent({\n\tname: \"RouterLink\",\n\tcompatConfig: { MODE: 3 },\n\tprops: {\n\t\tto: {\n\t\t\ttype: [String, Object],\n\t\t\trequired: true\n\t\t},\n\t\treplace: Boolean,\n\t\tactiveClass: String,\n\t\texactActiveClass: String,\n\t\tcustom: Boolean,\n\t\tariaCurrentValue: {\n\t\t\ttype: String,\n\t\t\tdefault: \"page\"\n\t\t},\n\t\tviewTransition: Boolean\n\t},\n\tuseLink,\n\tsetup(props, { slots }) {\n\t\tconst link = reactive(useLink(props));\n\t\tconst { options } = inject(routerKey);\n\t\tconst elClass = computed(() => ({\n\t\t\t[getLinkClass(props.activeClass, options.linkActiveClass, \"router-link-active\")]: link.isActive,\n\t\t\t[getLinkClass(props.exactActiveClass, options.linkExactActiveClass, \"router-link-exact-active\")]: link.isExactActive\n\t\t}));\n\t\treturn () => {\n\t\t\tconst children = slots.default && preferSingleVNode(slots.default(link));\n\t\t\treturn props.custom ? children : h(\"a\", {\n\t\t\t\t\"aria-current\": link.isExactActive ? props.ariaCurrentValue : null,\n\t\t\t\thref: link.href,\n\t\t\t\tonClick: link.navigate,\n\t\t\t\tclass: elClass.value\n\t\t\t}, children);\n\t\t};\n\t}\n});\nfunction guardEvent(e) {\n\tif (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) return;\n\tif (e.defaultPrevented) return;\n\tif (e.button !== void 0 && e.button !== 0) return;\n\tif (e.currentTarget && e.currentTarget.getAttribute) {\n\t\tconst target = e.currentTarget.getAttribute(\"target\");\n\t\tif (/\\b_blank\\b/i.test(target)) return;\n\t}\n\tif (e.preventDefault) e.preventDefault();\n\treturn true;\n}\nfunction includesParams(outer, inner) {\n\tfor (const key in inner) {\n\t\tconst innerValue = inner[key];\n\t\tconst outerValue = outer[key];\n\t\tif (typeof innerValue === \"string\") {\n\t\t\tif (innerValue !== outerValue) return false;\n\t\t} else if (!isArray(outerValue) || outerValue.length !== innerValue.length || innerValue.some((value, i) => value.valueOf() !== outerValue[i].valueOf())) return false;\n\t}\n\treturn true;\n}\n/**\n* Get the original path value of a record by following its aliasOf\n* @param record\n*/\nfunction getOriginalPath(record) {\n\treturn record ? record.aliasOf ? record.aliasOf.path : record.path : \"\";\n}\n/**\n* Utility class to get the active class based on defaults.\n* @param propClass\n* @param globalClass\n* @param defaultClass\n*/\nconst getLinkClass = (propClass, globalClass, defaultClass) => propClass != null ? propClass : globalClass != null ? globalClass : defaultClass;\n//#endregion\n//#region src/RouterView.ts\nconst RouterViewImpl = /*#__PURE__*/ defineComponent({\n\tname: \"RouterView\",\n\tinheritAttrs: false,\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: \"default\"\n\t\t},\n\t\troute: Object\n\t},\n\tcompatConfig: { MODE: 3 },\n\tsetup(props, { attrs, slots }) {\n\t\tprocess.env.NODE_ENV !== \"production\" && warnDeprecatedUsage();\n\t\tconst injectedRoute = inject(routerViewLocationKey);\n\t\tconst routeToDisplay = computed(() => props.route || injectedRoute.value);\n\t\tconst injectedDepth = inject(viewDepthKey, 0);\n\t\tconst depth = computed(() => {\n\t\t\tlet initialDepth = unref(injectedDepth);\n\t\t\tconst { matched } = routeToDisplay.value;\n\t\t\tlet matchedRoute;\n\t\t\twhile ((matchedRoute = matched[initialDepth]) && !matchedRoute.components) initialDepth++;\n\t\t\treturn initialDepth;\n\t\t});\n\t\tconst matchedRouteRef = computed(() => routeToDisplay.value.matched[depth.value]);\n\t\tprovide(viewDepthKey, computed(() => depth.value + 1));\n\t\tprovide(matchedRouteKey, matchedRouteRef);\n\t\tprovide(routerViewLocationKey, routeToDisplay);\n\t\tconst viewRef = ref();\n\t\twatch(() => [\n\t\t\tviewRef.value,\n\t\t\tmatchedRouteRef.value,\n\t\t\tprops.name\n\t\t], ([instance, to, name], [oldInstance, from, _oldName]) => {\n\t\t\tif (to) {\n\t\t\t\tto.instances[name] = instance;\n\t\t\t\tif (from && from !== to && instance && instance === oldInstance) {\n\t\t\t\t\tif (!to.leaveGuards.size) to.leaveGuards = from.leaveGuards;\n\t\t\t\t\tif (!to.updateGuards.size) to.updateGuards = from.updateGuards;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (instance && to && (!from || !isSameRouteRecord(to, from) || !oldInstance)) (to.enterCallbacks[name] || []).forEach((callback) => callback(instance));\n\t\t}, { flush: \"post\" });\n\t\treturn () => {\n\t\t\tconst route = routeToDisplay.value;\n\t\t\tconst currentName = props.name;\n\t\t\tconst matchedRoute = matchedRouteRef.value;\n\t\t\tconst ViewComponent = matchedRoute && matchedRoute.components[currentName];\n\t\t\tif (!ViewComponent) return normalizeSlot(slots.default, {\n\t\t\t\tComponent: ViewComponent,\n\t\t\t\troute\n\t\t\t});\n\t\t\tconst routePropsOption = matchedRoute.props[currentName];\n\t\t\tconst routeProps = routePropsOption ? routePropsOption === true ? route.params : typeof routePropsOption === \"function\" ? routePropsOption(route) : routePropsOption : null;\n\t\t\tconst onVnodeUnmounted = (vnode) => {\n\t\t\t\tif (vnode.component.isUnmounted) matchedRoute.instances[currentName] = null;\n\t\t\t};\n\t\t\tconst component = h(ViewComponent, assign({}, routeProps, attrs, {\n\t\t\t\tonVnodeUnmounted,\n\t\t\t\tref: viewRef\n\t\t\t}));\n\t\t\tif ((process.env.NODE_ENV !== \"production\" || __VUE_PROD_DEVTOOLS__) && isBrowser && component.ref) {\n\t\t\t\tconst info = {\n\t\t\t\t\tdepth: depth.value,\n\t\t\t\t\tname: matchedRoute.name,\n\t\t\t\t\tpath: matchedRoute.path,\n\t\t\t\t\tmeta: matchedRoute.meta\n\t\t\t\t};\n\t\t\t\t(isArray(component.ref) ? component.ref.map((r) => r.i) : [component.ref.i]).forEach((instance) => {\n\t\t\t\t\tinstance.__vrv_devtools = info;\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn normalizeSlot(slots.default, {\n\t\t\t\tComponent: component,\n\t\t\t\troute\n\t\t\t}) || component;\n\t\t};\n\t}\n});\nfunction normalizeSlot(slot, data) {\n\tif (!slot) return null;\n\tconst slotContent = slot(data);\n\treturn slotContent.length === 1 ? slotContent[0] : slotContent;\n}\n/**\n* Component to display the current route the user is at.\n*/\nconst RouterView = RouterViewImpl;\nfunction warnDeprecatedUsage() {\n\tconst instance = getCurrentInstance();\n\tconst parentName = instance.parent && instance.parent.type.name;\n\tconst parentSubTreeType = instance.parent && instance.parent.subTree && instance.parent.subTree.type;\n\tif (parentName && (parentName === \"KeepAlive\" || parentName.includes(\"Transition\")) && typeof parentSubTreeType === \"object\" && parentSubTreeType.name === \"RouterView\") {\n\t\tconst comp = parentName === \"KeepAlive\" ? \"keep-alive\" : \"transition\";\n\t\tdiagnostics.VUE_ROUTER_R0060({ comp });\n\t}\n}\n//#endregion\n//#region src/router.ts\n/**\n* Creates a Router instance that can be used by a Vue app.\n*\n* @param options - {@link RouterOptions}\n*/\nfunction createRouter(options) {\n\tconst matcher = createRouterMatcher(options.routes, options);\n\tconst parseQuery$1 = options.parseQuery || parseQuery;\n\tconst stringifyQuery$1 = options.stringifyQuery || stringifyQuery;\n\tconst routerHistory = options.history;\n\tif (process.env.NODE_ENV !== \"production\" && !routerHistory) throw new Error(\"Provide the \\\"history\\\" option when calling \\\"createRouter()\\\": https://router.vuejs.org/api/interfaces/RouterOptions.html#history\");\n\tconst beforeGuards = useCallbacks();\n\tconst beforeResolveGuards = useCallbacks();\n\tconst afterGuards = useCallbacks();\n\tconst currentRoute = shallowRef(START_LOCATION_NORMALIZED);\n\tlet pendingLocation = START_LOCATION_NORMALIZED;\n\tif (isBrowser && options.scrollBehavior && \"scrollRestoration\" in history) history.scrollRestoration = \"manual\";\n\tconst normalizeParams = applyToParams.bind(null, (paramValue) => \"\" + paramValue);\n\tconst encodeParams = applyToParams.bind(null, encodeParam);\n\tconst decodeParams = applyToParams.bind(null, decode);\n\tfunction addRoute(parentOrRoute, route) {\n\t\tlet parent;\n\t\tlet record;\n\t\tif (isRouteName(parentOrRoute)) {\n\t\t\tparent = matcher.getRecordMatcher(parentOrRoute);\n\t\t\tif (process.env.NODE_ENV !== \"production\" && !parent) diagnostics.VUE_ROUTER_R0001({ name: String(parentOrRoute) });\n\t\t\trecord = route;\n\t\t} else record = parentOrRoute;\n\t\treturn matcher.addRoute(record, parent);\n\t}\n\tfunction removeRoute(name) {\n\t\tconst recordMatcher = matcher.getRecordMatcher(name);\n\t\tif (recordMatcher) matcher.removeRoute(recordMatcher);\n\t\telse if (process.env.NODE_ENV !== \"production\") diagnostics.VUE_ROUTER_R0002({ name: String(name) });\n\t}\n\tfunction getRoutes() {\n\t\treturn matcher.getRoutes().map((routeMatcher) => routeMatcher.record);\n\t}\n\tfunction hasRoute(name) {\n\t\treturn !!matcher.getRecordMatcher(name);\n\t}\n\tfunction resolve(rawLocation, currentLocation) {\n\t\tcurrentLocation = assign({}, currentLocation || currentRoute.value);\n\t\tif (typeof rawLocation === \"string\") {\n\t\t\tconst locationNormalized = parseURL(parseQuery$1, rawLocation, currentLocation.path);\n\t\t\tconst matchedRoute = matcher.resolve({ path: locationNormalized.path }, currentLocation);\n\t\t\tconst href = routerHistory.createHref(locationNormalized.fullPath);\n\t\t\tif (process.env.NODE_ENV !== \"production\") {\n\t\t\t\tif (href.startsWith(\"//\")) diagnostics.VUE_ROUTER_R0003({\n\t\t\t\t\tlocation: rawLocation,\n\t\t\t\t\thref\n\t\t\t\t});\n\t\t\t\telse if (!matchedRoute.matched.length) diagnostics.VUE_ROUTER_R0004({ path: rawLocation });\n\t\t\t}\n\t\t\treturn assign(locationNormalized, matchedRoute, {\n\t\t\t\tparams: decodeParams(matchedRoute.params),\n\t\t\t\tredirectedFrom: void 0,\n\t\t\t\thref\n\t\t\t});\n\t\t}\n\t\tif (process.env.NODE_ENV !== \"production\" && !isRouteLocation(rawLocation)) {\n\t\t\tdiagnostics.VUE_ROUTER_R0005({ rawLocation });\n\t\t\treturn resolve({});\n\t\t}\n\t\tlet matcherLocation;\n\t\tif (rawLocation.path != null) {\n\t\t\tif (process.env.NODE_ENV !== \"production\" && \"params\" in rawLocation && !(\"name\" in rawLocation) && Object.keys(rawLocation.params).length) diagnostics.VUE_ROUTER_R0006({ path: rawLocation.path });\n\t\t\tmatcherLocation = assign({}, rawLocation, { path: parseURL(parseQuery$1, rawLocation.path, currentLocation.path).path });\n\t\t} else {\n\t\t\tconst targetParams = assign({}, rawLocation.params);\n\t\t\tfor (const key in targetParams) if (targetParams[key] == null) delete targetParams[key];\n\t\t\tmatcherLocation = assign({}, rawLocation, { params: encodeParams(targetParams) });\n\t\t\tcurrentLocation.params = encodeParams(currentLocation.params);\n\t\t}\n\t\tconst matchedRoute = matcher.resolve(matcherLocation, currentLocation);\n\t\tconst hash = rawLocation.hash || \"\";\n\t\tif (process.env.NODE_ENV !== \"production\" && hash && !hash.startsWith(\"#\")) diagnostics.VUE_ROUTER_R0007({ hash });\n\t\tmatchedRoute.params = normalizeParams(decodeParams(matchedRoute.params));\n\t\tconst fullPath = stringifyURL(stringifyQuery$1, assign({}, rawLocation, {\n\t\t\thash: encodeHash(hash),\n\t\t\tpath: matchedRoute.path\n\t\t}));\n\t\tconst href = routerHistory.createHref(fullPath);\n\t\tif (process.env.NODE_ENV !== \"production\") {\n\t\t\tif (href.startsWith(\"//\")) diagnostics.VUE_ROUTER_R0003({\n\t\t\t\tlocation: rawLocation,\n\t\t\t\thref\n\t\t\t});\n\t\t\telse if (!matchedRoute.matched.length) diagnostics.VUE_ROUTER_R0004({ path: rawLocation.path != null ? rawLocation.path : rawLocation });\n\t\t}\n\t\treturn assign({\n\t\t\tfullPath,\n\t\t\thash,\n\t\t\tquery: stringifyQuery$1 === stringifyQuery ? normalizeQuery(rawLocation.query) : rawLocation.query || {}\n\t\t}, matchedRoute, {\n\t\t\tredirectedFrom: void 0,\n\t\t\thref\n\t\t});\n\t}\n\tfunction locationAsObject(to) {\n\t\treturn typeof to === \"string\" ? parseURL(parseQuery$1, to, currentRoute.value.path) : assign({}, to);\n\t}\n\tfunction checkCanceledNavigation(to, from) {\n\t\tif (pendingLocation !== to) return createRouterError(8, {\n\t\t\tfrom,\n\t\t\tto\n\t\t});\n\t}\n\tfunction push(to) {\n\t\treturn pushWithRedirect(to);\n\t}\n\tfunction replace(to) {\n\t\treturn push(assign(locationAsObject(to), { replace: true }));\n\t}\n\tfunction handleRedirectRecord(to, from) {\n\t\tconst lastMatched = to.matched[to.matched.length - 1];\n\t\tif (lastMatched && lastMatched.redirect) {\n\t\t\tconst { redirect } = lastMatched;\n\t\t\tlet newTargetLocation = typeof redirect === \"function\" ? redirect(to, from) : redirect;\n\t\t\tif (typeof newTargetLocation === \"string\") {\n\t\t\t\tnewTargetLocation = newTargetLocation.includes(\"?\") || newTargetLocation.includes(\"#\") ? newTargetLocation = locationAsObject(newTargetLocation) : { path: newTargetLocation };\n\t\t\t\tnewTargetLocation.params = {};\n\t\t\t}\n\t\t\tif (process.env.NODE_ENV !== \"production\" && newTargetLocation.path == null && !(\"name\" in newTargetLocation)) {\n\t\t\t\tdiagnostics.VUE_ROUTER_R0008({\n\t\t\t\t\ttarget: JSON.stringify(newTargetLocation, null, 2),\n\t\t\t\t\tto: to.fullPath\n\t\t\t\t});\n\t\t\t\tthrow new Error(\"Invalid redirect\");\n\t\t\t}\n\t\t\treturn assign({\n\t\t\t\tquery: to.query,\n\t\t\t\thash: to.hash,\n\t\t\t\tparams: newTargetLocation.path != null ? {} : to.params\n\t\t\t}, newTargetLocation);\n\t\t}\n\t}\n\tfunction pushWithRedirect(to, redirectedFrom) {\n\t\tconst targetLocation = pendingLocation = resolve(to);\n\t\tconst from = currentRoute.value;\n\t\tconst data = to.state;\n\t\tconst force = to.force;\n\t\tconst replace = to.replace === true;\n\t\tconst shouldRedirect = handleRedirectRecord(targetLocation, from);\n\t\tif (shouldRedirect) return pushWithRedirect(assign(locationAsObject(shouldRedirect), {\n\t\t\tstate: typeof shouldRedirect === \"object\" ? assign({}, data, shouldRedirect.state) : data,\n\t\t\tforce,\n\t\t\treplace\n\t\t}), redirectedFrom || targetLocation);\n\t\tconst toLocation = targetLocation;\n\t\ttoLocation.redirectedFrom = redirectedFrom;\n\t\tlet failure;\n\t\tif (!force && isSameRouteLocation(stringifyQuery$1, from, targetLocation)) {\n\t\t\tfailure = createRouterError(16, {\n\t\t\t\tto: toLocation,\n\t\t\t\tfrom\n\t\t\t});\n\t\t\thandleScroll(from, from, true, false);\n\t\t}\n\t\treturn (failure ? Promise.resolve(failure) : navigate(toLocation, from)).catch((error) => isNavigationFailure(error) ? isNavigationFailure(error, 2) ? error : markAsReady(error) : triggerError(error, toLocation, from)).then((failure) => {\n\t\t\tif (failure) {\n\t\t\t\tif (isNavigationFailure(failure, 2)) {\n\t\t\t\t\tif (process.env.NODE_ENV !== \"production\" && isSameRouteLocation(stringifyQuery$1, resolve(failure.to), toLocation) && redirectedFrom && (redirectedFrom._count = redirectedFrom._count ? redirectedFrom._count + 1 : 1) > 30) {\n\t\t\t\t\t\tdiagnostics.VUE_ROUTER_R0009({\n\t\t\t\t\t\t\tfrom: from.fullPath,\n\t\t\t\t\t\t\tto: toLocation.fullPath\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn Promise.reject(/* @__PURE__ */ new Error(\"Infinite redirect in navigation guard\"));\n\t\t\t\t\t}\n\t\t\t\t\treturn pushWithRedirect(assign({ replace }, locationAsObject(failure.to), {\n\t\t\t\t\t\tstate: typeof failure.to === \"object\" ? assign({}, data, failure.to.state) : data,\n\t\t\t\t\t\tforce\n\t\t\t\t\t}), redirectedFrom || toLocation);\n\t\t\t\t}\n\t\t\t} else failure = finalizeNavigation(toLocation, from, true, replace, data);\n\t\t\ttriggerAfterEach(toLocation, from, failure);\n\t\t\treturn failure;\n\t\t});\n\t}\n\t/**\n\t* Helper to reject and skip all navigation guards if a new navigation happened\n\t* @param to\n\t* @param from\n\t*/\n\tfunction checkCanceledNavigationAndReject(to, from) {\n\t\tconst error = checkCanceledNavigation(to, from);\n\t\treturn error ? Promise.reject(error) : Promise.resolve();\n\t}\n\tfunction runWithContext(fn) {\n\t\tconst app = installedApps.values().next().value;\n\t\treturn app && typeof app.runWithContext === \"function\" ? app.runWithContext(fn) : fn();\n\t}\n\tfunction navigate(to, from) {\n\t\tlet guards;\n\t\tconst [leavingRecords, updatingRecords, enteringRecords] = extractChangingRecords(to, from);\n\t\tguards = extractComponentsGuards(leavingRecords.reverse(), \"beforeRouteLeave\", to, from);\n\t\tfor (const record of leavingRecords) record.leaveGuards.forEach((guard) => {\n\t\t\tguards.push(guardToPromiseFn(guard, to, from));\n\t\t});\n\t\tconst canceledNavigationCheck = checkCanceledNavigationAndReject.bind(null, to, from);\n\t\tguards.push(canceledNavigationCheck);\n\t\treturn runGuardQueue(guards).then(() => {\n\t\t\tguards = [];\n\t\t\tfor (const guard of beforeGuards.list()) guards.push(guardToPromiseFn(guard, to, from));\n\t\t\tguards.push(canceledNavigationCheck);\n\t\t\treturn runGuardQueue(guards);\n\t\t}).then(() => {\n\t\t\tguards = extractComponentsGuards(updatingRecords, \"beforeRouteUpdate\", to, from);\n\t\t\tfor (const record of updatingRecords) record.updateGuards.forEach((guard) => {\n\t\t\t\tguards.push(guardToPromiseFn(guard, to, from));\n\t\t\t});\n\t\t\tguards.push(canceledNavigationCheck);\n\t\t\treturn runGuardQueue(guards);\n\t\t}).then(() => {\n\t\t\tguards = [];\n\t\t\tfor (const record of enteringRecords) if (record.beforeEnter) if (isArray(record.beforeEnter)) for (const beforeEnter of record.beforeEnter) guards.push(guardToPromiseFn(beforeEnter, to, from));\n\t\t\telse guards.push(guardToPromiseFn(record.beforeEnter, to, from));\n\t\t\tguards.push(canceledNavigationCheck);\n\t\t\treturn runGuardQueue(guards);\n\t\t}).then(() => {\n\t\t\tto.matched.forEach((record) => record.enterCallbacks = {});\n\t\t\tguards = extractComponentsGuards(enteringRecords, \"beforeRouteEnter\", to, from, runWithContext);\n\t\t\tguards.push(canceledNavigationCheck);\n\t\t\treturn runGuardQueue(guards);\n\t\t}).then(() => {\n\t\t\tguards = [];\n\t\t\tfor (const guard of beforeResolveGuards.list()) guards.push(guardToPromiseFn(guard, to, from));\n\t\t\tguards.push(canceledNavigationCheck);\n\t\t\treturn runGuardQueue(guards);\n\t\t}).catch((err) => isNavigationFailure(err, 8) ? err : Promise.reject(err));\n\t}\n\tfunction triggerAfterEach(to, from, failure) {\n\t\tafterGuards.list().forEach((guard) => runWithContext(() => guard(to, from, failure)));\n\t}\n\t/**\n\t* - Cleans up any navigation guards\n\t* - Changes the url if necessary\n\t* - Calls the scrollBehavior\n\t*/\n\tfunction finalizeNavigation(toLocation, from, isPush, replace, data) {\n\t\tconst error = checkCanceledNavigation(toLocation, from);\n\t\tif (error) return error;\n\t\tconst isFirstNavigation = from === START_LOCATION_NORMALIZED;\n\t\tconst state = !isBrowser ? {} : history.state;\n\t\tif (isPush) if (replace || isFirstNavigation) routerHistory.replace(toLocation.fullPath, assign({ scroll: isFirstNavigation && state && state.scroll }, data));\n\t\telse routerHistory.push(toLocation.fullPath, data);\n\t\tcurrentRoute.value = toLocation;\n\t\thandleScroll(toLocation, from, isPush, isFirstNavigation);\n\t\tmarkAsReady();\n\t}\n\tlet removeHistoryListener;\n\tfunction setupListeners() {\n\t\tif (removeHistoryListener) return;\n\t\tremoveHistoryListener = routerHistory.listen((to, _from, info) => {\n\t\t\tif (!router.listening) return;\n\t\t\tconst toLocation = resolve(to);\n\t\t\tconst shouldRedirect = handleRedirectRecord(toLocation, router.currentRoute.value);\n\t\t\tif (shouldRedirect) {\n\t\t\t\tpushWithRedirect(assign(shouldRedirect, {\n\t\t\t\t\treplace: true,\n\t\t\t\t\tforce: true\n\t\t\t\t}), toLocation).catch(noop);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tpendingLocation = toLocation;\n\t\t\tconst from = currentRoute.value;\n\t\t\tif (isBrowser) saveScrollPosition(getScrollKey(from.fullPath, info.delta), computeScrollPosition());\n\t\t\tnavigate(toLocation, from).catch((error) => {\n\t\t\t\tif (isNavigationFailure(error, 12)) return error;\n\t\t\t\tif (isNavigationFailure(error, 2)) {\n\t\t\t\t\tpushWithRedirect(assign(locationAsObject(error.to), { force: true }), toLocation).then((failure) => {\n\t\t\t\t\t\tif (isNavigationFailure(failure, 20) && !info.delta && info.type === \"pop\") routerHistory.go(-1, false);\n\t\t\t\t\t}).catch(noop);\n\t\t\t\t\treturn Promise.reject();\n\t\t\t\t}\n\t\t\t\tif (info.delta) routerHistory.go(-info.delta, false);\n\t\t\t\treturn triggerError(error, toLocation, from);\n\t\t\t}).then((failure) => {\n\t\t\t\tfailure = failure || finalizeNavigation(toLocation, from, false);\n\t\t\t\tif (failure) {\n\t\t\t\t\tif (info.delta && !isNavigationFailure(failure, 8)) routerHistory.go(-info.delta, false);\n\t\t\t\t\telse if (info.type === \"pop\" && isNavigationFailure(failure, 20)) routerHistory.go(-1, false);\n\t\t\t\t}\n\t\t\t\ttriggerAfterEach(toLocation, from, failure);\n\t\t\t}).catch(noop);\n\t\t});\n\t}\n\tlet readyHandlers = useCallbacks();\n\tlet errorListeners = useCallbacks();\n\tlet ready;\n\t/**\n\t* Trigger errorListeners added via onError and throws the error as well\n\t*\n\t* @param error - error to throw\n\t* @param to - location we were navigating to when the error happened\n\t* @param from - location we were navigating from when the error happened\n\t* @returns the error as a rejected promise\n\t*/\n\tfunction triggerError(error, to, from) {\n\t\tmarkAsReady(error);\n\t\tconst list = errorListeners.list();\n\t\tif (list.length) list.forEach((handler) => handler(error, to, from));\n\t\telse {\n\t\t\tif (process.env.NODE_ENV !== \"production\") diagnostics.VUE_ROUTER_R0010();\n\t\t\tconsole.error(error);\n\t\t}\n\t\treturn Promise.reject(error);\n\t}\n\tfunction isReady() {\n\t\tif (ready && currentRoute.value !== START_LOCATION_NORMALIZED) return Promise.resolve();\n\t\treturn new Promise((resolve, reject) => {\n\t\t\treadyHandlers.add([resolve, reject]);\n\t\t});\n\t}\n\tfunction markAsReady(err) {\n\t\tif (!ready) {\n\t\t\tready = !err;\n\t\t\tsetupListeners();\n\t\t\treadyHandlers.list().forEach(([resolve, reject]) => err ? reject(err) : resolve());\n\t\t\treadyHandlers.reset();\n\t\t}\n\t\treturn err;\n\t}\n\tfunction handleScroll(to, from, isPush, isFirstNavigation) {\n\t\tconst { scrollBehavior } = options;\n\t\tif (!isBrowser || !scrollBehavior) return Promise.resolve();\n\t\tconst scrollPosition = !isPush && getSavedScrollPosition(getScrollKey(to.fullPath, 0)) || (isFirstNavigation || !isPush) && history.state && history.state.scroll || null;\n\t\treturn nextTick().then(() => scrollBehavior(to, from, scrollPosition)).then((position) => to === currentRoute.value && position && scrollToPosition(position)).catch((err) => to === currentRoute.value && triggerError(err, to, from));\n\t}\n\tconst go = (delta) => routerHistory.go(delta);\n\tlet started;\n\tconst installedApps = /* @__PURE__ */ new Set();\n\tconst router = {\n\t\tcurrentRoute,\n\t\tlistening: true,\n\t\taddRoute,\n\t\tremoveRoute,\n\t\tclearRoutes: matcher.clearRoutes,\n\t\thasRoute,\n\t\tgetRoutes,\n\t\tresolve,\n\t\toptions,\n\t\tpush,\n\t\treplace,\n\t\tgo,\n\t\tback: () => go(-1),\n\t\tforward: () => go(1),\n\t\tbeforeEach: beforeGuards.add,\n\t\tbeforeResolve: beforeResolveGuards.add,\n\t\tafterEach: afterGuards.add,\n\t\tonError: errorListeners.add,\n\t\tisReady,\n\t\tinstall(app) {\n\t\t\tapp.component(\"RouterLink\", RouterLink);\n\t\t\tapp.component(\"RouterView\", RouterView);\n\t\t\tapp.config.globalProperties.$router = router;\n\t\t\tObject.defineProperty(app.config.globalProperties, \"$route\", {\n\t\t\t\tenumerable: true,\n\t\t\t\tget: () => unref(currentRoute)\n\t\t\t});\n\t\t\tif (isBrowser && !started && currentRoute.value === START_LOCATION_NORMALIZED) {\n\t\t\t\tstarted = true;\n\t\t\t\tpush(routerHistory.location).catch((err) => {\n\t\t\t\t\tif (process.env.NODE_ENV !== \"production\") diagnostics.VUE_ROUTER_R0011({ cause: err });\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst reactiveRoute = {};\n\t\t\tfor (const key in START_LOCATION_NORMALIZED) Object.defineProperty(reactiveRoute, key, {\n\t\t\t\tget: () => currentRoute.value[key],\n\t\t\t\tenumerable: true\n\t\t\t});\n\t\t\tapp.provide(routerKey, router);\n\t\t\tapp.provide(routeLocationKey, shallowReactive(reactiveRoute));\n\t\t\tapp.provide(routerViewLocationKey, currentRoute);\n\t\t\tconst unmountApp = app.unmount;\n\t\t\tinstalledApps.add(app);\n\t\t\tapp.unmount = function() {\n\t\t\t\tinstalledApps.delete(app);\n\t\t\t\tif (installedApps.size < 1) {\n\t\t\t\t\tpendingLocation = START_LOCATION_NORMALIZED;\n\t\t\t\t\tremoveHistoryListener && removeHistoryListener();\n\t\t\t\t\tremoveHistoryListener = null;\n\t\t\t\t\tcurrentRoute.value = START_LOCATION_NORMALIZED;\n\t\t\t\t\tstarted = false;\n\t\t\t\t\tready = false;\n\t\t\t\t}\n\t\t\t\tunmountApp();\n\t\t\t};\n\t\t\tif ((process.env.NODE_ENV !== \"production\" || __VUE_PROD_DEVTOOLS__) && isBrowser && true) addDevtools(app, router, matcher);\n\t\t}\n\t};\n\tfunction runGuardQueue(guards) {\n\t\treturn guards.reduce((promise, guard) => promise.then(() => runWithContext(guard)), Promise.resolve());\n\t}\n\treturn router;\n}\n//#endregion\nexport { NavigationFailureType, RouterLink, RouterView, START_LOCATION_NORMALIZED as START_LOCATION, createMemoryHistory, createRouter, createRouterMatcher, createWebHashHistory, createWebHistory, isNavigationFailure, loadRouteLocation, matchedRouteKey, onBeforeRouteLeave, onBeforeRouteUpdate, parseQuery, routeLocationKey, routerKey, routerViewLocationKey, stringifyQuery, useLink, useRoute, useRouter, viewDepthKey };\n","import { loadState } from \"@nextcloud/initial-state\";\nimport { inject } from \"vue\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction once(func) {\n let wasCalled = false;\n let result;\n return (...args) => {\n if (!wasCalled) {\n wasCalled = true;\n result = func(...args);\n }\n return result;\n };\n}\nlet realAppName = \"missing-app-name\";\ntry {\n realAppName = appName;\n} catch {\n logger.error(\"The `@nextcloud/vue` library was used without setting / replacing the `appName`.\");\n}\nconst APP_NAME = realAppName;\nlet realAppVersion = \"\";\ntry {\n realAppVersion = appVersion;\n} catch {\n logger.error(\"The `@nextcloud/vue` library was used without setting / replacing the `appVersion`.\");\n}\nconst APP_VERSION = realAppVersion;\nfunction useAppName() {\n return inject(\"appName\", APP_NAME);\n}\nconst useLocalizedAppName = once(() => {\n const apps = loadState(\"core\", \"apps\", []);\n const realAppName2 = useAppName();\n return apps.find(({ id }) => id === realAppName2)?.name ?? realAppName2;\n});\nexport {\n APP_VERSION as A,\n useAppName as a,\n useLocalizedAppName as u\n};\n//# sourceMappingURL=appName-DyNMVZpX.mjs.map\n","import '../assets/NcAppContent-TgcZd4AI.css';\nimport { getBuilder } from \"@nextcloud/browser-storage\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport { emit } from \"@nextcloud/event-bus\";\nimport { useSwipe } from \"@vueuse/core\";\nimport { Splitpanes, Pane } from \"splitpanes\";\nimport { defineComponent, watch, onMounted, onBeforeUnmount, openBlock, createBlock, unref, normalizeClass, withCtx, createVNode, resolveComponent, createElementBlock, toDisplayString, createCommentVNode, Fragment, withModifiers, withDirectives, createElementVNode, renderSlot, vShow } from \"vue\";\nimport { m as mdiArrowRight } from \"./mdi-CpchYUUV.mjs\";\nimport { useIsMobile } from \"../composables/useIsMobile/index.mjs\";\nimport { r as register, G as t27, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { u as useLocalizedAppName, a as useAppName } from \"./appName-DyNMVZpX.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { i as isRtl } from \"./rtl-v0UOPAM7.mjs\";\nimport \"splitpanes/dist/splitpanes.css\";\nregister(t27);\nconst _sfc_main$1 = /* @__PURE__ */ defineComponent({\n __name: \"NcAppContentDetailsToggle\",\n setup(__props) {\n const isMobile = useIsMobile();\n watch(isMobile, toggleAppNavigationButton);\n onMounted(() => {\n toggleAppNavigationButton(isMobile.value);\n });\n onBeforeUnmount(() => {\n if (isMobile.value) {\n toggleAppNavigationButton(false);\n }\n });\n function toggleAppNavigationButton(hide = true) {\n const appNavigationToggle = document.querySelector(\".app-navigation .app-navigation-toggle\");\n if (appNavigationToggle) {\n appNavigationToggle.style.display = hide ? \"none\" : \"\";\n if (hide === true) {\n emit(\"toggle-navigation\", { open: false });\n }\n }\n }\n return (_ctx, _cache) => {\n return openBlock(), createBlock(unref(NcButton), {\n \"aria-label\": unref(t)(\"Go back to the list\"),\n class: normalizeClass([\"app-details-toggle\", { \"app-details-toggle--mobile\": unref(isMobile) }]),\n title: unref(t)(\"Go back to the list\"),\n variant: \"tertiary\"\n }, {\n icon: withCtx(() => [\n createVNode(unref(NcIconSvgWrapper), {\n directional: \"\",\n path: unref(mdiArrowRight)\n }, null, 8, [\"path\"])\n ]),\n _: 1\n }, 8, [\"aria-label\", \"class\", \"title\"]);\n };\n }\n});\nconst NcAppContentDetailsToggle = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"__scopeId\", \"data-v-a28923a1\"]]);\nconst browserStorage = getBuilder(\"nextcloud\").persist().build();\nconst instanceName = getCapabilities().theming?.name ?? \"Nextcloud\";\nconst _sfc_main = {\n name: \"NcAppContent\",\n components: {\n NcAppContentDetailsToggle,\n Pane,\n Splitpanes\n },\n props: {\n /**\n * Allows to disable the control by swipe of the app navigation open state.\n */\n disableSwipe: {\n type: Boolean,\n default: false\n },\n /**\n * Allows you to set the default width of the resizable list in % on vertical-split\n * or respectively the default height on horizontal-split.\n *\n * Must be between `listMinWidth` and `listMaxWidth`.\n */\n listSize: {\n type: Number,\n default: 20\n },\n /**\n * Allows you to set the minimum width of the list column in % on vertical-split\n * or respectively the minimum height on horizontal-split.\n */\n listMinWidth: {\n type: Number,\n default: 15\n },\n /**\n * Allows you to set the maximum width of the list column in % on vertical-split\n * or respectively the maximum height on horizontal-split.\n */\n listMaxWidth: {\n type: Number,\n default: 40\n },\n /**\n * Specify the config key for the pane config sizes\n * Default is the global var appName if you use the webpack-vue-config\n */\n paneConfigKey: {\n type: String,\n default: \"\"\n },\n /**\n * When in mobile view, only the list or the details are shown.\n *\n * If you provide a list, you need to provide a variable\n * that will be set to true by the user when an element of\n * the list gets selected. The details will then show a back\n * arrow to return to the list that will update this prop to false.\n */\n showDetails: {\n type: Boolean,\n default: true\n },\n /**\n * Content layout used when there is a list together with content:\n * - `vertical-split` - a 2-column layout with list and default content separated vertically\n * - `no-split` - a single column layout; List is shown when `showDetails` is `false`, otherwise the default slot content is shown with a back button to return to the list.\n * - 'horizontal-split' - a 2-column layout with list and default content separated horizontally\n * On mobile screen `no-split` layout is forced.\n */\n layout: {\n type: String,\n default: \"vertical-split\",\n validator(value) {\n return [\"no-split\", \"vertical-split\", \"horizontal-split\"].includes(value);\n }\n },\n /**\n * Specify the `

` page heading\n */\n pageHeading: {\n type: String,\n default: null\n },\n /**\n * Allow setting the page's ``\n *\n * If a page heading is set it defaults to `{pageHeading} - {appName} - {instanceName}` e.g. `Favorites - Files - MyPersonalCloud`.\n * When the page heading and the app name is the same only one is used, e.g. `Files - Files - MyPersonalCloud` is shown as `Files - MyPersonalCloud`.\n * When setting the prop then the following format will be used: `{pageTitle} - {instanceName}`\n */\n pageTitle: {\n type: String,\n default: null\n }\n },\n emits: [\n \"update:showDetails\",\n \"resizeList\"\n ],\n setup() {\n return {\n appName: useAppName(),\n localizedAppName: useLocalizedAppName(),\n isMobile: useIsMobile(),\n isRtl\n };\n },\n data() {\n return {\n contentHeight: 0,\n swiping: {},\n listPaneSize: this.restorePaneConfig()\n };\n },\n computed: {\n paneConfigID() {\n if (this.paneConfigKey !== \"\") {\n return `pane-list-size-${this.paneConfigKey}`;\n }\n try {\n return `pane-list-size-${this.appName}`;\n } catch {\n logger.info(\"[NcAppContent]: falling back to global nextcloud pane config\");\n return \"pane-list-size-nextcloud\";\n }\n },\n detailsPaneSize() {\n if (this.listPaneSize) {\n return 100 - this.listPaneSize;\n }\n return this.paneDefaults.details.size;\n },\n paneDefaults() {\n return {\n list: {\n size: this.listSize,\n min: this.listMinWidth,\n max: this.listMaxWidth\n },\n // set the inverse values of the details column\n // based on the provided (or default) values of the list column\n details: {\n size: 100 - this.listSize,\n min: 100 - this.listMaxWidth,\n max: 100 - this.listMinWidth\n }\n };\n },\n realPageTitle() {\n const entries = /* @__PURE__ */ new Set();\n if (this.pageTitle) {\n for (const part of this.pageTitle.split(\" - \")) {\n entries.add(part);\n }\n } else if (this.pageHeading) {\n for (const part of this.pageHeading.split(\" - \")) {\n entries.add(part);\n }\n if (entries.size > 0) {\n entries.add(this.localizedAppName);\n }\n } else {\n return null;\n }\n entries.add(instanceName);\n return [...entries.values()].join(\" - \");\n }\n },\n watch: {\n realPageTitle: {\n immediate: true,\n handler() {\n if (this.realPageTitle !== null) {\n document.title = this.realPageTitle;\n }\n }\n },\n paneConfigKey: {\n immediate: true,\n handler() {\n this.restorePaneConfig();\n }\n }\n },\n mounted() {\n if (!this.disableSwipe) {\n this.swiping = useSwipe(this.$el, {\n onSwipeEnd: this.handleSwipe\n });\n }\n this.restorePaneConfig();\n },\n methods: {\n /**\n * handle the swipe event\n *\n * @param {TouchEvent} e The touch event\n * @param {import('@vueuse/core').SwipeDirection} direction The swipe direction of the event\n */\n handleSwipe(e, direction) {\n const minSwipeX = 70;\n const touchZone = 300;\n if (Math.abs(this.swiping.lengthX) > minSwipeX) {\n if (this.swiping.coordsStart.x < touchZone / 2 && direction === \"right\") {\n emit(\"toggle-navigation\", {\n open: true\n });\n } else if (this.swiping.coordsStart.x < touchZone * 1.5 && direction === \"left\") {\n emit(\"toggle-navigation\", {\n open: false\n });\n }\n }\n },\n handlePaneResize(event) {\n const listPaneSize = parseInt(event.panes[0].size, 10);\n browserStorage.setItem(this.paneConfigID, JSON.stringify(listPaneSize));\n this.listPaneSize = listPaneSize;\n this.$emit(\"resizeList\", { size: listPaneSize });\n logger.debug(\"[NcAppContent] pane config\", { listPaneSize });\n },\n // browserStorage is not reactive, we need to update this manually\n restorePaneConfig() {\n const listPaneSize = parseInt(browserStorage.getItem(this.paneConfigID), 10);\n if (!isNaN(listPaneSize) && listPaneSize !== this.listPaneSize) {\n logger.debug(\"[NcAppContent] pane config\", { listPaneSize });\n this.listPaneSize = listPaneSize;\n return listPaneSize;\n }\n },\n /**\n * The user clicked the back arrow from the details view\n */\n hideDetails() {\n this.$emit(\"update:showDetails\", false);\n }\n }\n};\nconst _hoisted_1 = {\n key: 0,\n class: \"hidden-visually\"\n};\nconst _hoisted_2 = { class: \"app-content-wrapper__list\" };\nconst _hoisted_3 = {\n key: 1,\n class: \"app-content-wrapper\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcAppContentDetailsToggle = resolveComponent(\"NcAppContentDetailsToggle\");\n const _component_Pane = resolveComponent(\"Pane\");\n const _component_Splitpanes = resolveComponent(\"Splitpanes\");\n return openBlock(), createElementBlock(\"main\", {\n id: \"app-content-vue\",\n class: normalizeClass([\"app-content no-snapper\", { \"app-content--has-list\": !!_ctx.$slots.list }])\n }, [\n $props.pageHeading ? (openBlock(), createElementBlock(\"h1\", _hoisted_1, toDisplayString($props.pageHeading), 1)) : createCommentVNode(\"\", true),\n !!_ctx.$slots.list ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [\n $setup.isMobile || $props.layout === \"no-split\" ? (openBlock(), createElementBlock(\"div\", {\n key: 0,\n class: normalizeClass([\"app-content-wrapper app-content-wrapper--no-split\", {\n \"app-content-wrapper--show-details\": $props.showDetails,\n \"app-content-wrapper--show-list\": !$props.showDetails,\n \"app-content-wrapper--mobile\": $setup.isMobile\n }])\n }, [\n $props.showDetails ? (openBlock(), createBlock(_component_NcAppContentDetailsToggle, {\n key: 0,\n onClick: withModifiers($options.hideDetails, [\"stop\", \"prevent\"])\n }, null, 8, [\"onClick\"])) : createCommentVNode(\"\", true),\n withDirectives(createElementVNode(\"div\", _hoisted_2, [\n renderSlot(_ctx.$slots, \"list\", {}, void 0, true)\n ], 512), [\n [vShow, !$props.showDetails]\n ]),\n $props.showDetails ? renderSlot(_ctx.$slots, \"default\", { key: 1 }, void 0, true) : createCommentVNode(\"\", true)\n ], 2)) : $props.layout === \"vertical-split\" || $props.layout === \"horizontal-split\" ? (openBlock(), createElementBlock(\"div\", _hoisted_3, [\n createVNode(_component_Splitpanes, {\n horizontal: $props.layout === \"horizontal-split\",\n class: normalizeClass([\"default-theme\", {\n \"splitpanes--horizontal\": $props.layout === \"horizontal-split\",\n \"splitpanes--vertical\": $props.layout === \"vertical-split\"\n }]),\n rtl: $setup.isRtl,\n onResized: $options.handlePaneResize\n }, {\n default: withCtx(() => [\n createVNode(_component_Pane, {\n class: \"splitpanes__pane-list\",\n size: $data.listPaneSize || $options.paneDefaults.list.size,\n minSize: $options.paneDefaults.list.min,\n maxSize: $options.paneDefaults.list.max\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"list\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"size\", \"minSize\", \"maxSize\"]),\n createVNode(_component_Pane, {\n class: \"splitpanes__pane-details\",\n size: $options.detailsPaneSize,\n minSize: $options.paneDefaults.details.min,\n maxSize: $options.paneDefaults.details.max\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"size\", \"minSize\", \"maxSize\"])\n ]),\n _: 3\n }, 8, [\"horizontal\", \"class\", \"rtl\", \"onResized\"])\n ])) : createCommentVNode(\"\", true)\n ], 64)) : createCommentVNode(\"\", true),\n !_ctx.$slots.list ? renderSlot(_ctx.$slots, \"default\", { key: 2 }, void 0, true) : createCommentVNode(\"\", true)\n ], 2);\n}\nconst NcAppContent = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-51427d61\"]]);\nexport {\n NcAppContent as N\n};\n//# sourceMappingURL=NcAppContent-DavgjaFX.mjs.map\n","import '../assets/NcAppNavigationList--36j6Acm.css';\nimport { openBlock, createElementBlock, renderSlot } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigationList\"\n};\nconst _hoisted_1 = { class: \"app-navigation-list\" };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"ul\", _hoisted_1, [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]);\n}\nconst NcAppNavigationList = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-d72957ed\"]]);\nexport {\n NcAppNavigationList as N\n};\n//# sourceMappingURL=NcAppNavigationList-CGSWabRB.mjs.map\n","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nconst HAS_APP_NAVIGATION_KEY = /* @__PURE__ */ Symbol.for(\"NcContent:setHasAppNavigation\");\nconst CONTENT_SELECTOR_KEY = /* @__PURE__ */ Symbol.for(\"NcContent:selector\");\nexport {\n CONTENT_SELECTOR_KEY as C,\n HAS_APP_NAVIGATION_KEY as H\n};\n//# sourceMappingURL=constants-Ciwvl5xb.mjs.map\n","import '../assets/NcAppNavigation-OHw55TTZ.css';\nimport { defineComponent, useModel, computed, openBlock, createElementBlock, createVNode, unref, withCtx, inject, warn, useTemplateRef, ref, watchEffect, watch, onMounted, onUnmounted, normalizeClass, createElementVNode, withKeys, renderSlot, createBlock, createCommentVNode } from \"vue\";\nimport { subscribe, emit, unsubscribe } from \"@nextcloud/event-bus\";\nimport { createFocusTrap } from \"focus-trap\";\nimport { N as NcAppNavigationList } from \"./NcAppNavigationList-CGSWabRB.mjs\";\nimport { G as mdiMenuOpen, H as mdiMenu } from \"./mdi-CpchYUUV.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { r as register, P as t20, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { useIsMobile } from \"../composables/useIsMobile/index.mjs\";\nimport { g as getTrapStack } from \"./focusTrap-HJQ4pqHV.mjs\";\nimport { i as isLegacy34 } from \"./legacy-BoqDmOCa.mjs\";\nimport { H as HAS_APP_NAVIGATION_KEY } from \"./constants-Ciwvl5xb.mjs\";\nregister(t20);\nconst _hoisted_1$1 = { class: \"app-navigation-toggle-wrapper\" };\nconst _sfc_main$1 = /* @__PURE__ */ defineComponent({\n __name: \"NcAppNavigationToggle\",\n props: {\n \"open\": { type: Boolean, ...{ required: true } },\n \"openModifiers\": {}\n },\n emits: [\"update:open\"],\n setup(__props) {\n const open = useModel(__props, \"open\");\n const title = computed(() => open.value ? t(\"Close navigation\") : t(\"Open navigation\"));\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", _hoisted_1$1, [\n createVNode(unref(NcButton), {\n class: \"app-navigation-toggle\",\n \"aria-controls\": \"app-navigation-vue\",\n \"aria-expanded\": open.value ? \"true\" : \"false\",\n \"aria-label\": title.value,\n title: title.value,\n variant: \"tertiary\",\n onClick: _cache[0] || (_cache[0] = ($event) => open.value = !open.value)\n }, {\n icon: withCtx(() => [\n createVNode(NcIconSvgWrapper, {\n path: open.value ? unref(mdiMenuOpen) : unref(mdiMenu)\n }, null, 8, [\"path\"])\n ]),\n _: 1\n }, 8, [\"aria-expanded\", \"aria-label\", \"title\"])\n ]);\n };\n }\n});\nconst NcAppNavigationToggle = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"__scopeId\", \"data-v-5a15295d\"]]);\nconst _hoisted_1 = [\"aria-hidden\", \"aria-label\", \"aria-labelledby\", \"inert\"];\nconst _hoisted_2 = { class: \"app-navigation__search\" };\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcAppNavigation\",\n props: {\n ariaLabel: {},\n ariaLabelledby: {}\n },\n setup(__props) {\n const props = __props;\n let focusTrap;\n const setHasAppNavigation = inject(\n HAS_APP_NAVIGATION_KEY,\n () => warn(\"NcAppNavigation is not mounted inside NcContent, this is probably an error.\"),\n false\n );\n const appNavigationContainerElement = useTemplateRef(\"appNavigationContainer\");\n const isMobile = useIsMobile();\n const open = ref(!isMobile.value);\n const shouldActivateFocusTrap = computed(() => isMobile.value && open.value);\n watchEffect(() => {\n if (!props.ariaLabel && !props.ariaLabelledby) {\n warn(\"NcAppNavigation requires either `ariaLabel` or `ariaLabelledby` to be set for accessibility.\");\n }\n });\n watch(isMobile, () => {\n open.value = !isMobile.value;\n });\n watch(shouldActivateFocusTrap, () => {\n toggleFocusTrap();\n });\n onMounted(() => {\n setHasAppNavigation(true);\n subscribe(\"toggle-navigation\", toggleNavigationByEventBus);\n emit(\"navigation-toggled\", {\n open: open.value\n });\n focusTrap = createFocusTrap(appNavigationContainerElement.value, {\n allowOutsideClick: true,\n clickOutsideDeactivates: () => {\n if (isMobile.value) {\n focusTrap.deactivate({ returnFocus: false });\n toggleNavigation(false);\n }\n return false;\n },\n fallbackFocus: appNavigationContainerElement.value,\n trapStack: getTrapStack(),\n escapeDeactivates: false\n });\n toggleFocusTrap();\n });\n onUnmounted(() => {\n setHasAppNavigation(false);\n unsubscribe(\"toggle-navigation\", toggleNavigationByEventBus);\n focusTrap.deactivate();\n });\n function toggleNavigation(state) {\n if (open.value === state) {\n emit(\"navigation-toggled\", {\n open: open.value\n });\n return;\n }\n open.value = state === void 0 ? !open.value : state;\n const bodyStyles = getComputedStyle(document.body);\n const animationLength = parseInt(bodyStyles.getPropertyValue(\"--animation-quick\")) || 100;\n setTimeout(() => {\n emit(\"navigation-toggled\", {\n open: open.value\n });\n }, 1.5 * animationLength);\n }\n function toggleNavigationByEventBus({ open: open2 }) {\n return toggleNavigation(open2);\n }\n function toggleFocusTrap() {\n if (shouldActivateFocusTrap.value) {\n focusTrap.activate();\n } else {\n focusTrap.deactivate();\n }\n }\n function handleEsc() {\n if (isMobile.value) {\n toggleNavigation(false);\n }\n }\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n ref: \"appNavigationContainer\",\n class: normalizeClass([\"app-navigation\", {\n \"app-navigation--closed\": !open.value,\n \"app-navigation--legacy\": unref(isLegacy34)\n }])\n }, [\n createElementVNode(\"nav\", {\n id: \"app-navigation-vue\",\n \"aria-hidden\": open.value ? \"false\" : \"true\",\n \"aria-label\": __props.ariaLabel || void 0,\n \"aria-labelledby\": __props.ariaLabelledby || void 0,\n class: \"app-navigation__content\",\n inert: !open.value || void 0,\n onKeydown: withKeys(handleEsc, [\"esc\"])\n }, [\n createElementVNode(\"div\", _hoisted_2, [\n renderSlot(_ctx.$slots, \"search\", {}, void 0, true)\n ]),\n createElementVNode(\"div\", {\n class: normalizeClass([\"app-navigation__body\", { \"app-navigation__body--no-list\": !_ctx.$slots.list }])\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 2),\n _ctx.$slots.list ? (openBlock(), createBlock(NcAppNavigationList, {\n key: 0,\n class: \"app-navigation__list\"\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"list\", {}, void 0, true)\n ]),\n _: 3\n })) : createCommentVNode(\"\", true),\n renderSlot(_ctx.$slots, \"footer\", {}, void 0, true)\n ], 40, _hoisted_1),\n createVNode(NcAppNavigationToggle, {\n open: open.value,\n \"onUpdate:open\": toggleNavigation\n }, null, 8, [\"open\"])\n ], 2);\n };\n }\n});\nconst NcAppNavigation = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-1344f70d\"]]);\nexport {\n NcAppNavigation as N\n};\n//# sourceMappingURL=NcAppNavigation-g57j16pB.mjs.map\n","import '../assets/NcAppNavigationCaption-ggcWspH2.css';\nimport { N as NcActions } from \"./NcActions-C-wDqSrv.mjs\";\nimport { resolveComponent, openBlock, createBlock, resolveDynamicComponent, normalizeClass, withCtx, createTextVNode, toDisplayString, createElementBlock, createVNode, normalizeProps, guardReactiveProps, renderSlot, createCommentVNode } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigationCaption\",\n components: {\n NcActions\n },\n props: {\n /**\n * The text of the caption\n */\n name: {\n type: String,\n required: true\n },\n /**\n * `id` to set on the inner caption\n * Can be used for connecting the `NcActionCaption` with `NcActionList` using `aria-labelledby`.\n */\n headingId: {\n type: String,\n default: null\n },\n /**\n * Enable when used as a heading\n * e.g. Before NcAppNavigationList\n */\n isHeading: {\n type: Boolean,\n default: false\n },\n /**\n * If `isHeading` is set, this defines the heading level that should be used\n */\n headingLevel: {\n type: Number,\n default: 2\n },\n /**\n * Any [NcActions](#/Components/NcActions?id=ncactions-1) prop\n */\n // Not an actual prop but needed to show in vue-styleguidist docs\n ...NcActions.props\n },\n computed: {\n actionsProps() {\n const actionProps = Object.keys(NcActions.props);\n const props = Object.entries(this.$props).filter(([key, _value]) => actionProps.includes(key));\n return Object.fromEntries(props);\n },\n wrapperTag() {\n return this.isHeading ? \"div\" : \"li\";\n },\n captionTag() {\n const headingLevel = Math.max(2, this.headingLevel);\n return this.isHeading ? `h${headingLevel}` : \"span\";\n }\n }\n};\nconst _hoisted_1 = {\n key: 0,\n class: \"app-navigation-caption__actions\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcActions = resolveComponent(\"NcActions\");\n return openBlock(), createBlock(resolveDynamicComponent($options.wrapperTag), {\n class: normalizeClass([\"app-navigation-caption\", { \"app-navigation-caption--heading\": $props.isHeading }])\n }, {\n default: withCtx(() => [\n (openBlock(), createBlock(resolveDynamicComponent($options.captionTag), {\n id: $props.headingId,\n class: \"app-navigation-caption__name\"\n }, {\n default: withCtx(() => [\n createTextVNode(toDisplayString($props.name), 1)\n ]),\n _: 1\n }, 8, [\"id\"])),\n !!_ctx.$slots.actions ? (openBlock(), createElementBlock(\"div\", _hoisted_1, [\n createVNode(_component_NcActions, normalizeProps(guardReactiveProps($options.actionsProps)), {\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"actionsTriggerIcon\", {}, void 0, true)\n ]),\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"actions\", {}, void 0, true)\n ]),\n _: 3\n }, 16)\n ])) : createCommentVNode(\"\", true)\n ]),\n _: 3\n }, 8, [\"class\"]);\n}\nconst NcAppNavigationCaption = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-f0e411c2\"]]);\nexport {\n NcAppNavigationCaption as N\n};\n//# sourceMappingURL=NcAppNavigationCaption-VjSWJ8R4.mjs.map\n","import { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"ChevronUpIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3 = { d: \"M7.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z\" };\nconst _hoisted_4 = { key: 0 };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon chevron-up-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2))\n ], 16, _hoisted_1);\n}\nconst ChevronUp = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render]]);\nexport {\n ChevronUp as C\n};\n//# sourceMappingURL=ChevronUp-ChH8oB7p.mjs.map\n","import { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"ArrowRightIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3 = { d: \"M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z\" };\nconst _hoisted_4 = { key: 0 };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon arrow-right-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2))\n ], 16, _hoisted_1);\n}\nconst IconArrowRight = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render]]);\nexport {\n IconArrowRight as I\n};\n//# sourceMappingURL=ArrowRight-B1ncAhus.mjs.map\n","import '../assets/NcInputConfirmCancel-DZEDRf0t.css';\nimport { I as IconArrowRight } from \"./ArrowRight-B1ncAhus.mjs\";\nimport { I as IconClose } from \"./Close-CuhcJnX2.mjs\";\nimport { r as register, k as t14, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { i as isLegacy34 } from \"./legacy-BoqDmOCa.mjs\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, withModifiers, withKeys, withDirectives, vModelText, createVNode, withCtx } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nregister(t14);\nconst _sfc_main = {\n name: \"NcInputConfirmCancel\",\n components: {\n IconArrowRight,\n IconClose,\n NcButton\n },\n props: {\n /**\n * If this element is used on a primary element set to true for primary styling.\n */\n primary: {\n default: false,\n type: Boolean\n },\n /**\n * Placeholder of the edit field\n */\n placeholder: {\n default: \"\",\n type: String\n },\n /**\n * The current name (model value)\n */\n modelValue: {\n default: \"\",\n type: String\n }\n },\n emits: [\n \"cancel\",\n \"confirm\",\n \"update:modelValue\"\n ],\n setup() {\n return { isLegacy34 };\n },\n data() {\n return {\n labelConfirm: t(\"Confirm changes\"),\n labelCancel: t(\"Cancel changes\")\n };\n },\n computed: {\n valueModel: {\n get() {\n return this.modelValue;\n },\n set(newValue) {\n this.$emit(\"update:modelValue\", newValue);\n }\n }\n },\n methods: {\n confirm() {\n this.$emit(\"confirm\");\n },\n cancel() {\n this.$emit(\"cancel\");\n },\n focusInput() {\n this.$refs.input.focus();\n }\n }\n};\nconst _hoisted_1 = [\"placeholder\"];\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_IconArrowRight = resolveComponent(\"IconArrowRight\");\n const _component_NcButton = resolveComponent(\"NcButton\");\n const _component_IconClose = resolveComponent(\"IconClose\");\n return openBlock(), createElementBlock(\"div\", {\n class: normalizeClass([\"app-navigation-input-confirm\", { \"app-navigation-input-confirm--legacy\": $setup.isLegacy34 }])\n }, [\n createElementVNode(\"form\", {\n onSubmit: _cache[1] || (_cache[1] = withModifiers((...args) => $options.confirm && $options.confirm(...args), [\"prevent\"])),\n onKeydown: _cache[2] || (_cache[2] = withKeys(withModifiers((...args) => $options.cancel && $options.cancel(...args), [\"exact\", \"stop\", \"prevent\"]), [\"esc\"])),\n onClick: _cache[3] || (_cache[3] = withModifiers(() => {\n }, [\"stop\", \"prevent\"]))\n }, [\n withDirectives(createElementVNode(\"input\", {\n ref: \"input\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => $options.valueModel = $event),\n type: \"text\",\n class: \"app-navigation-input-confirm__input\",\n placeholder: $props.placeholder\n }, null, 8, _hoisted_1), [\n [vModelText, $options.valueModel]\n ]),\n createVNode(_component_NcButton, {\n \"aria-label\": $data.labelConfirm,\n type: \"submit\",\n variant: \"primary\",\n onClick: withModifiers($options.confirm, [\"stop\", \"prevent\"])\n }, {\n icon: withCtx(() => [\n createVNode(_component_IconArrowRight, { size: 20 })\n ]),\n _: 1\n }, 8, [\"aria-label\", \"onClick\"]),\n createVNode(_component_NcButton, {\n \"aria-label\": $data.labelCancel,\n type: \"reset\",\n variant: $props.primary ? \"primary\" : \"tertiary\",\n onClick: withModifiers($options.cancel, [\"stop\", \"prevent\"])\n }, {\n icon: withCtx(() => [\n createVNode(_component_IconClose, { size: 20 })\n ]),\n _: 1\n }, 8, [\"aria-label\", \"variant\", \"onClick\"])\n ], 32)\n ], 2);\n}\nconst NcInputConfirmCancel = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-6926a0b8\"]]);\nexport {\n NcInputConfirmCancel as N\n};\n//# sourceMappingURL=NcInputConfirmCancel-CGTllrXj.mjs.map\n","const ActionGlobalMixin = {\n beforeUpdate() {\n this.text = this.getText();\n },\n data() {\n return {\n // $slots are not reactive.\n // We need to update the content manually\n text: this.getText()\n };\n },\n computed: {\n isLongText() {\n return this.text && this.text.trim().length > 20;\n }\n },\n methods: {\n getText() {\n return this.$slots.default?.()[0].children?.trim?.() || \"\";\n }\n }\n};\nexport {\n ActionGlobalMixin as A\n};\n//# sourceMappingURL=actionGlobal-BZFdtdJL.mjs.map\n","import { warn } from \"vue\";\nimport { N as NC_ACTIONS_CLOSE_MENU } from \"./useNcActions-BzPO2c4h.mjs\";\nimport { A as ActionGlobalMixin } from \"./actionGlobal-BZFdtdJL.mjs\";\nconst ActionTextMixin = {\n mixins: [ActionGlobalMixin],\n props: {\n /**\n * Icon to show with the action, can be either a CSS class or an URL\n */\n icon: {\n type: String,\n default: \"\"\n },\n /**\n * The main text content of the entry.\n */\n name: {\n type: String,\n default: \"\"\n },\n /**\n * The title attribute of the element.\n */\n title: {\n type: String,\n default: \"\"\n },\n /**\n * Whether we close the Actions menu after the click\n */\n closeAfterClick: {\n type: Boolean,\n default: false\n },\n /**\n * Aria label for the button. Not needed if the button has text.\n */\n ariaLabel: {\n type: String,\n default: null\n }\n },\n inject: {\n closeMenu: {\n from: NC_ACTIONS_CLOSE_MENU\n }\n },\n emits: [\n \"click\"\n ],\n created() {\n if (\"ariaHidden\" in this.$attrs) {\n warn(\"[NcAction*]: Do not set the ariaHidden attribute as the root element will inherit the incorrect aria-hidden.\");\n }\n },\n computed: {\n /**\n * Check if icon prop is an URL\n *\n * @return {boolean} Whether the icon prop is an URL\n */\n isIconUrl() {\n try {\n return !!new URL(this.icon, this.icon.startsWith(\"/\") ? window.location.origin : void 0);\n } catch {\n return false;\n }\n }\n },\n methods: {\n onClick(event) {\n this.$emit(\"click\", event);\n if (this.closeAfterClick) {\n this.closeMenu(false);\n }\n }\n }\n};\nexport {\n ActionTextMixin as A\n};\n//# sourceMappingURL=actionText-BXR0sWNu.mjs.map\n","import '../assets/NcActionButton-DLer-aUY.css';\nimport { c as mdiChevronRight, d as mdiCheck } from \"./mdi-CpchYUUV.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { A as ActionTextMixin } from \"./actionText-BXR0sWNu.mjs\";\nimport { a as NC_ACTIONS_IS_SEMANTIC_MENU } from \"./useNcActions-BzPO2c4h.mjs\";\nimport { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, mergeProps, renderSlot, normalizeStyle, toDisplayString, createCommentVNode, createBlock } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcActionButton\",\n components: {\n NcIconSvgWrapper\n },\n mixins: [ActionTextMixin],\n inject: {\n isInSemanticMenu: {\n from: NC_ACTIONS_IS_SEMANTIC_MENU,\n default: false\n }\n },\n props: {\n /**\n * disabled state of the action button\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * If this is a menu, a chevron icon will\n * be added at the end of the line\n */\n isMenu: {\n type: Boolean,\n default: false\n },\n /**\n * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n * This extends the native HTML button type attribute.\n */\n type: {\n type: String,\n default: \"button\",\n validator: (behavior) => [\"button\", \"checkbox\", \"radio\", \"reset\", \"submit\"].includes(behavior)\n },\n /**\n * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n * For checkbox and toggle button behavior - boolean value.\n * For radio button behavior - could be a boolean checked or a string with the value of the button.\n * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n *\n * **This is not availabe for `type='submit'` or `type='reset'`**\n *\n * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n * For `type='radio'` `null` is equal to `false`\n */\n modelValue: {\n type: [Boolean, String],\n default: null\n },\n /**\n * The value used for the `modelValue` when this component is used with radio behavior\n * Similar to the `value` attribute of `<input type=\"radio\">`\n */\n value: {\n type: String,\n default: null\n },\n /**\n * Small underlying text content of the entry\n */\n description: {\n type: String,\n default: \"\"\n }\n },\n emits: [\"update:modelValue\"],\n setup() {\n return {\n mdiCheck,\n mdiChevronRight\n };\n },\n computed: {\n /**\n * determines if the action is focusable\n *\n * @return {boolean} is the action focusable ?\n */\n isFocusable() {\n return !this.disabled;\n },\n /**\n * The current \"checked\" or \"pressed\" state for the model behavior\n */\n isChecked() {\n if (this.type === \"radio\" && typeof this.modelValue !== \"boolean\") {\n return this.modelValue === this.value;\n }\n return this.modelValue;\n },\n /**\n * The native HTML type to set on the button\n */\n nativeType() {\n if (this.type === \"submit\" || this.type === \"reset\") {\n return this.type;\n }\n return \"button\";\n },\n /**\n * HTML attributes to bind to the <button>\n */\n buttonAttributes() {\n const attributes = {};\n if (this.isInSemanticMenu) {\n attributes.role = \"menuitem\";\n if (this.type === \"radio\") {\n attributes.role = \"menuitemradio\";\n attributes[\"aria-checked\"] = this.isChecked ? \"true\" : \"false\";\n } else if (this.type === \"checkbox\" || this.nativeType === \"button\" && this.modelValue !== null) {\n attributes.role = \"menuitemcheckbox\";\n attributes[\"aria-checked\"] = this.modelValue === null ? \"mixed\" : this.modelValue ? \"true\" : \"false\";\n }\n } else if (this.modelValue !== null && this.nativeType === \"button\") {\n attributes[\"aria-pressed\"] = this.modelValue ? \"true\" : \"false\";\n }\n return attributes;\n }\n },\n methods: {\n /**\n * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n *\n * @param {MouseEvent} event - The click event\n */\n handleClick(event) {\n this.onClick(event);\n if (this.modelValue !== null || this.type !== \"button\") {\n if (this.type === \"radio\") {\n if (typeof this.modelValue !== \"boolean\") {\n if (!this.isChecked) {\n this.$emit(\"update:modelValue\", this.value);\n }\n } else {\n this.$emit(\"update:modelValue\", !this.isChecked);\n }\n } else {\n this.$emit(\"update:modelValue\", !this.isChecked);\n }\n }\n }\n }\n};\nconst _hoisted_1 = [\"role\"];\nconst _hoisted_2 = [\"aria-label\", \"disabled\", \"title\", \"type\"];\nconst _hoisted_3 = { class: \"action-button__longtext-wrapper\" };\nconst _hoisted_4 = {\n key: 0,\n class: \"action-button__name\"\n};\nconst _hoisted_5 = [\"textContent\"];\nconst _hoisted_6 = {\n key: 2,\n class: \"action-button__text\"\n};\nconst _hoisted_7 = [\"textContent\"];\nconst _hoisted_8 = {\n key: 2,\n class: \"action-button__pressed-icon material-design-icon\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcIconSvgWrapper = resolveComponent(\"NcIconSvgWrapper\");\n return openBlock(), createElementBlock(\"li\", {\n class: normalizeClass([\"action\", { \"action--disabled\": $props.disabled }]),\n role: $options.isInSemanticMenu && \"presentation\"\n }, [\n createElementVNode(\"button\", mergeProps({\n \"aria-label\": _ctx.ariaLabel,\n class: [\"action-button button-vue\", {\n \"action-button--active\": $options.isChecked,\n focusable: $options.isFocusable\n }],\n disabled: $props.disabled,\n title: _ctx.title,\n type: $options.nativeType\n }, $options.buttonAttributes, {\n onClick: _cache[0] || (_cache[0] = (...args) => $options.handleClick && $options.handleClick(...args))\n }), [\n renderSlot(_ctx.$slots, \"icon\", {}, () => [\n createElementVNode(\"span\", {\n class: normalizeClass([[_ctx.isIconUrl ? \"action-button__icon--url\" : _ctx.icon], \"action-button__icon\"]),\n style: normalizeStyle({ backgroundImage: _ctx.isIconUrl ? `url(${_ctx.icon})` : null }),\n \"aria-hidden\": \"true\"\n }, null, 6)\n ], true),\n createElementVNode(\"span\", _hoisted_3, [\n _ctx.name ? (openBlock(), createElementBlock(\"strong\", _hoisted_4, toDisplayString(_ctx.name), 1)) : createCommentVNode(\"\", true),\n _ctx.isLongText ? (openBlock(), createElementBlock(\"span\", {\n key: 1,\n class: \"action-button__longtext\",\n textContent: toDisplayString(_ctx.text)\n }, null, 8, _hoisted_5)) : (openBlock(), createElementBlock(\"span\", _hoisted_6, toDisplayString(_ctx.text), 1)),\n $props.description ? (openBlock(), createElementBlock(\"span\", {\n key: 3,\n class: \"action-button__description\",\n textContent: toDisplayString($props.description)\n }, null, 8, _hoisted_7)) : createCommentVNode(\"\", true)\n ]),\n $props.isMenu ? (openBlock(), createBlock(_component_NcIconSvgWrapper, {\n key: 0,\n class: \"action-button__menu-icon\",\n directional: \"\",\n path: $setup.mdiChevronRight\n }, null, 8, [\"path\"])) : $options.isChecked ? (openBlock(), createBlock(_component_NcIconSvgWrapper, {\n key: 1,\n path: $setup.mdiCheck,\n class: \"action-button__pressed-icon\"\n }, null, 8, [\"path\"])) : $options.isChecked === false ? (openBlock(), createElementBlock(\"span\", _hoisted_8)) : createCommentVNode(\"\", true),\n createCommentVNode(\"\", true)\n ], 16, _hoisted_2)\n ], 10, _hoisted_1);\n}\nconst NcActionButton = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-6c2daf4e\"]]);\nexport {\n NcActionButton as N\n};\n//# sourceMappingURL=NcActionButton-BO5T5ePT.mjs.map\n","import { defineComponent } from \"vue\";\nconst _sfc_main = defineComponent({\n name: \"NcVNodes\",\n props: {\n /**\n * The vnodes to render\n */\n vnodes: {\n type: [Array, Object],\n default: null\n }\n },\n /**\n * The render function to display the component\n */\n render() {\n return this.vnodes || this.$slots?.default?.({});\n }\n});\nexport {\n _sfc_main as _\n};\n//# sourceMappingURL=NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs.map\n","import '../assets/NcAppNavigationItem-BZ1xj6Xi.css';\nimport { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode, resolveComponent, createBlock, normalizeClass, withCtx, resolveDynamicComponent, normalizeProps, guardReactiveProps, withKeys, withModifiers, renderSlot, createVNode, createTextVNode } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { C as ChevronDown } from \"./ChevronDown-C6gc637b.mjs\";\nimport { C as ChevronUp } from \"./ChevronUp-ChH8oB7p.mjs\";\nimport { r as register, N as t21, a as t, b as t51, O as t23 } from \"./_l10n-wdIzZwir.mjs\";\nimport { i as isLegacy34 } from \"./legacy-BoqDmOCa.mjs\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { N as NcInputConfirmCancel } from \"./NcInputConfirmCancel-CGTllrXj.mjs\";\nimport { useIsMobile } from \"../composables/useIsMobile/index.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { N as NcActionButton } from \"./NcActionButton-BO5T5ePT.mjs\";\nimport { N as NcActions } from \"./NcActions-C-wDqSrv.mjs\";\nimport { N as NcLoadingIcon } from \"./NcLoadingIcon-BOVpFVQz.mjs\";\nimport { _ as _sfc_main$4 } from \"./NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs\";\nconst _sfc_main$3 = {\n name: \"PencilIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$2 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$2 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$2 = { d: \"M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z\" };\nconst _hoisted_4$2 = { key: 0 };\nfunction _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon pencil-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$2, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$2, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$2))\n ], 16, _hoisted_1$2);\n}\nconst Pencil = /* @__PURE__ */ _export_sfc(_sfc_main$3, [[\"render\", _sfc_render$3]]);\nconst _sfc_main$2 = {\n name: \"UndoIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$1 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$1 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$1 = { d: \"M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z\" };\nconst _hoisted_4$1 = { key: 0 };\nfunction _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon undo-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$1, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$1, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$1))\n ], 16, _hoisted_1$1);\n}\nconst Undo = /* @__PURE__ */ _export_sfc(_sfc_main$2, [[\"render\", _sfc_render$2]]);\nregister(t21);\nconst _sfc_main$1 = {\n name: \"NcAppNavigationIconCollapsible\",\n components: {\n NcButton,\n ChevronDown,\n ChevronUp\n },\n props: {\n /**\n * Is the list currently open (or collapsed)\n */\n open: {\n type: Boolean,\n required: true\n },\n /**\n * Is the navigation item currently active.\n */\n active: {\n type: Boolean,\n required: true\n }\n },\n emits: [\"click\"],\n setup() {\n return { isLegacy34 };\n },\n computed: {\n labelButton() {\n return this.open ? t(\"Collapse menu\") : t(\"Open menu\");\n }\n },\n methods: {\n onClick(e) {\n this.$emit(\"click\", e);\n }\n }\n};\nfunction _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_ChevronUp = resolveComponent(\"ChevronUp\");\n const _component_ChevronDown = resolveComponent(\"ChevronDown\");\n const _component_NcButton = resolveComponent(\"NcButton\");\n return openBlock(), createBlock(_component_NcButton, {\n class: normalizeClass([\"icon-collapse\", {\n \"icon-collapse--active\": $props.active,\n \"icon-collapse--open\": $props.open\n }]),\n \"aria-label\": $options.labelButton,\n variant: $props.active && $setup.isLegacy34 ? \"tertiary-on-primary\" : \"tertiary\",\n onClick: $options.onClick\n }, {\n icon: withCtx(() => [\n $props.open ? (openBlock(), createBlock(_component_ChevronUp, {\n key: 0,\n size: 20\n })) : (openBlock(), createBlock(_component_ChevronDown, {\n key: 1,\n size: 20\n }))\n ]),\n _: 1\n }, 8, [\"class\", \"aria-label\", \"variant\", \"onClick\"]);\n}\nconst NcAppNavigationIconCollapsible = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"render\", _sfc_render$1], [\"__scopeId\", \"data-v-cfbd3794\"]]);\nregister(t23, t51);\nconst _sfc_main = {\n name: \"NcAppNavigationItem\",\n components: {\n NcActions,\n NcActionButton,\n NcAppNavigationIconCollapsible,\n NcInputConfirmCancel,\n NcLoadingIcon,\n NcVNodes: _sfc_main$4,\n Pencil,\n Undo\n },\n props: {\n /**\n * If you are not using vue-router you can use the property to set this item as the active navigation entry.\n * When using vue-router and the `to` property this is set automatically.\n */\n active: {\n type: Boolean,\n default: false\n },\n /**\n * The main text content of the entry.\n */\n name: {\n type: String,\n required: true\n },\n /**\n * The title attribute of the element.\n */\n title: {\n type: String,\n default: null\n },\n /**\n * id attribute of the list item element\n */\n id: {\n type: String,\n default: () => createElementId(),\n validator: (id) => id.trim() !== \"\"\n },\n /**\n * Refers to the icon on the left, this prop accepts a class\n * like 'icon-category-enabled'.\n */\n icon: {\n type: String,\n default: \"\"\n },\n /**\n * Displays a loading animated icon on the left of the element\n * instead of the icon.\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Passing in a route will make the root element of this\n * component a `<router-link />` that points to that route.\n * By leaving this blank, the root element will be a `<li>`.\n */\n to: {\n type: [String, Object],\n default: null\n },\n /**\n * A direct link. This will be used as the `href` attribute.\n * This will ignore any `to` prop being defined.\n */\n href: {\n type: String,\n default: null\n },\n /**\n * Gives the possibility to collapse the children elements into the\n * parent element (true) or expands the children elements (false).\n */\n allowCollapse: {\n type: Boolean,\n default: false\n },\n /**\n * Makes the name of the item editable by providing an `ActionButton`\n * component that toggles a form\n */\n editable: {\n type: Boolean,\n default: false\n },\n /**\n * Only for 'editable' items, sets label for the edit action button.\n */\n editLabel: {\n type: String,\n default: \"\"\n },\n /**\n * Only for items in 'editable' mode, sets the placeholder text for the editing form.\n */\n editPlaceholder: {\n type: String,\n default: \"\"\n },\n /**\n * Pins the item to the bottom left area, above the settings. Do not\n * place 'non-pinned' `AppnavigationItem` components below `pinned`\n * ones.\n */\n pinned: {\n type: Boolean,\n default: false\n },\n /**\n * Puts the item in the 'undo' state.\n */\n undo: {\n type: Boolean,\n default: false\n },\n /**\n * The navigation collapsible state (synced)\n */\n open: {\n type: Boolean,\n default: false\n },\n /**\n * The actions menu open state (synced)\n */\n menuOpen: {\n type: Boolean,\n default: false\n },\n /**\n * Force the actions to display in a three dot menu\n */\n forceMenu: {\n type: Boolean,\n default: false\n },\n /**\n * The action's menu default icon\n */\n menuIcon: {\n type: String,\n default: void 0\n },\n /**\n * The action's menu direction\n */\n menuPlacement: {\n type: String,\n default: \"bottom\"\n },\n /**\n * Entry aria details\n */\n ariaDescription: {\n type: String,\n default: null\n },\n /**\n * To be used only when the elements in the actions menu are very important\n */\n forceDisplayActions: {\n type: Boolean,\n default: false\n },\n /**\n * Number of action items outside the menu\n */\n inlineActions: {\n type: Number,\n default: 0\n }\n },\n emits: [\n \"update:menuOpen\",\n \"update:open\",\n \"update:name\",\n \"click\",\n \"undo\"\n ],\n setup() {\n return {\n isMobile: useIsMobile(),\n isLegacy34\n };\n },\n data() {\n return {\n actionsBoundariesElement: void 0,\n editingValue: \"\",\n opened: this.open,\n // Collapsible state\n editingActive: false,\n /**\n * Tracks the open state of the actions menu\n */\n menuOpenLocalValue: false,\n focused: false\n };\n },\n computed: {\n isRouterLink() {\n return this.to && !this.href;\n },\n // Checks if the component is already a children of another\n // instance of AppNavigationItem\n canHaveChildren() {\n if (this.$parent.$options._componentTag === \"AppNavigationItem\") {\n return false;\n } else {\n return true;\n }\n },\n editButtonAriaLabel() {\n return this.editLabel ? this.editLabel : t(\"Edit item\");\n },\n undoButtonAriaLabel() {\n return t(\"Undo changes\");\n }\n },\n watch: {\n open(newVal) {\n this.opened = newVal;\n }\n },\n mounted() {\n this.actionsBoundariesElement = document.querySelector(\"#content-vue\") || void 0;\n },\n methods: {\n // sync opened menu state with prop\n onMenuToggle(state) {\n this.$emit(\"update:menuOpen\", state);\n this.menuOpenLocalValue = state;\n },\n // toggle the collapsible state\n toggleCollapse() {\n this.opened = !this.opened;\n this.$emit(\"update:open\", this.opened);\n },\n /**\n * Handle link click\n *\n * @param {PointerEvent} event - Native click event\n * @param {(event: PointerEvent) => void} [navigate] - VueRouter link's navigate if any\n * @param {string} [routerLinkHref] - VueRouter link's href\n */\n onClick(event, navigate, routerLinkHref) {\n this.$emit(\"click\", event);\n if (event.metaKey || event.altKey || event.ctrlKey || event.shiftKey) {\n return;\n }\n if (routerLinkHref) {\n navigate?.(event);\n event.preventDefault();\n }\n },\n // Edition methods\n handleEdit() {\n this.editingValue = this.name;\n this.editingActive = true;\n this.onMenuToggle(false);\n this.$nextTick(() => {\n this.$refs.editingInput.focusInput();\n });\n },\n cancelEditing() {\n this.editingActive = false;\n },\n handleEditingDone() {\n this.$emit(\"update:name\", this.editingValue);\n this.editingValue = \"\";\n this.editingActive = false;\n },\n // Undo methods\n handleUndo() {\n this.$emit(\"undo\");\n },\n /**\n * Show actions upon focus\n */\n handleFocus() {\n this.focused = true;\n },\n handleBlur() {\n this.focused = false;\n },\n /**\n * This method checks if the root element of the component is focused and\n * if that's the case it focuses the actions button if available\n *\n * @param {Event} e the keydown event\n */\n handleTab(e) {\n if (!this.$refs.actions) {\n return;\n }\n if (this.focused) {\n e.preventDefault();\n this.$refs.actions.$refs.triggerButton.$el.focus();\n this.focused = false;\n } else {\n this.$refs.actions.$refs.triggerButton.$el.blur();\n }\n },\n /**\n * Is this an external link\n *\n * @param {string} href The link to check\n * @return {boolean} Whether it is external or not\n */\n isExternal(href) {\n return href && href.match(/[a-z]+:\\/\\//i);\n }\n }\n};\nconst _hoisted_1 = [\"id\"];\nconst _hoisted_2 = [\"aria-current\", \"aria-description\", \"aria-expanded\", \"href\", \"target\", \"title\", \"onClick\"];\nconst _hoisted_3 = {\n key: 0,\n class: \"editingContainer\"\n};\nconst _hoisted_4 = {\n key: 1,\n class: \"app-navigation-entry__deleted\"\n};\nconst _hoisted_5 = { class: \"app-navigation-entry__deleted-description\" };\nconst _hoisted_6 = {\n key: 0,\n class: \"app-navigation-entry__counter-wrapper\"\n};\nconst _hoisted_7 = {\n key: 0,\n class: \"app-navigation-entry__children\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcLoadingIcon = resolveComponent(\"NcLoadingIcon\");\n const _component_NcInputConfirmCancel = resolveComponent(\"NcInputConfirmCancel\");\n const _component_Pencil = resolveComponent(\"Pencil\");\n const _component_NcActionButton = resolveComponent(\"NcActionButton\");\n const _component_Undo = resolveComponent(\"Undo\");\n const _component_NcActions = resolveComponent(\"NcActions\");\n const _component_NcAppNavigationIconCollapsible = resolveComponent(\"NcAppNavigationIconCollapsible\");\n return openBlock(), createElementBlock(\"li\", {\n id: $props.id,\n class: normalizeClass([{\n \"app-navigation-entry--opened\": $data.opened,\n \"app-navigation-entry--pinned\": $props.pinned,\n \"app-navigation-entry--collapsible\": $props.allowCollapse && !!_ctx.$slots.default\n }, \"app-navigation-entry-wrapper\"])\n }, [\n (openBlock(), createBlock(resolveDynamicComponent($options.isRouterLink ? \"router-link\" : \"NcVNodes\"), normalizeProps(guardReactiveProps({ ...$options.isRouterLink && { custom: true, to: $props.to } })), {\n default: withCtx(({ href: routerLinkHref, navigate, isActive }) => [\n createElementVNode(\"div\", {\n class: normalizeClass([\"app-navigation-entry\", {\n \"app-navigation-entry--editing\": $data.editingActive,\n \"app-navigation-entry--deleted\": $props.undo,\n \"app-navigation-entry--legacy\": $setup.isLegacy34,\n active: $props.to && isActive || $props.active\n }])\n }, [\n !$props.undo ? (openBlock(), createElementBlock(\"a\", {\n key: 0,\n class: \"app-navigation-entry-link\",\n \"aria-current\": $props.active || $props.to && isActive ? \"page\" : void 0,\n \"aria-description\": $props.ariaDescription,\n \"aria-expanded\": !!_ctx.$slots.default ? $data.opened.toString() : void 0,\n href: $props.href || routerLinkHref || \"#\",\n target: $options.isExternal($props.href) ? \"_blank\" : void 0,\n title: $props.title || $props.name,\n onBlur: _cache[1] || (_cache[1] = (...args) => $options.handleBlur && $options.handleBlur(...args)),\n onClick: ($event) => $options.onClick($event, navigate, routerLinkHref),\n onFocus: _cache[2] || (_cache[2] = (...args) => $options.handleFocus && $options.handleFocus(...args)),\n onKeydown: _cache[3] || (_cache[3] = withKeys(withModifiers((...args) => $options.handleTab && $options.handleTab(...args), [\"exact\"]), [\"tab\"]))\n }, [\n createElementVNode(\"div\", {\n class: normalizeClass([\"app-navigation-entry-icon\", { [$props.icon]: $props.icon }])\n }, [\n $props.loading ? (openBlock(), createBlock(_component_NcLoadingIcon, { key: 0 })) : renderSlot(_ctx.$slots, \"icon\", {\n key: 1,\n active: $props.active || $props.to && isActive\n }, void 0, true)\n ], 2),\n createElementVNode(\"span\", {\n class: normalizeClass([\"app-navigation-entry__name\", { \"hidden-visually\": $data.editingActive }])\n }, toDisplayString($props.name), 3),\n $data.editingActive ? (openBlock(), createElementBlock(\"div\", _hoisted_3, [\n createVNode(_component_NcInputConfirmCancel, {\n ref: \"editingInput\",\n modelValue: $data.editingValue,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => $data.editingValue = $event),\n placeholder: $props.editPlaceholder !== \"\" ? $props.editPlaceholder : $props.name,\n primary: $props.to && isActive || $props.active,\n onCancel: $options.cancelEditing,\n onConfirm: $options.handleEditingDone\n }, null, 8, [\"modelValue\", \"placeholder\", \"primary\", \"onCancel\", \"onConfirm\"])\n ])) : createCommentVNode(\"\", true)\n ], 40, _hoisted_2)) : createCommentVNode(\"\", true),\n $props.undo ? (openBlock(), createElementBlock(\"div\", _hoisted_4, [\n createElementVNode(\"div\", _hoisted_5, toDisplayString($props.name), 1)\n ])) : createCommentVNode(\"\", true),\n (!!_ctx.$slots.actions || !!_ctx.$slots.counter || $props.editable || $props.undo) && !$data.editingActive ? (openBlock(), createElementBlock(\"div\", {\n key: 2,\n class: normalizeClass([\"app-navigation-entry__utils\", { \"app-navigation-entry__utils--display-actions\": $props.forceDisplayActions || $data.menuOpenLocalValue || $props.menuOpen }])\n }, [\n !!_ctx.$slots.counter ? (openBlock(), createElementBlock(\"div\", _hoisted_6, [\n renderSlot(_ctx.$slots, \"counter\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true),\n !!_ctx.$slots.actions || $props.editable && !$data.editingActive || $props.undo ? (openBlock(), createBlock(_component_NcActions, {\n key: 1,\n ref: \"actions\",\n class: \"app-navigation-entry__actions\",\n container: \"#app-navigation-vue\",\n boundariesElement: $data.actionsBoundariesElement,\n inline: $props.inlineActions,\n placement: $props.menuPlacement,\n open: $props.menuOpen,\n forceMenu: $props.forceMenu,\n defaultIcon: $props.menuIcon,\n variant: \"tertiary\",\n \"onUpdate:open\": $options.onMenuToggle\n }, {\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"menu-icon\", {}, void 0, true)\n ]),\n default: withCtx(() => [\n $props.editable && !$data.editingActive ? (openBlock(), createBlock(_component_NcActionButton, {\n key: 0,\n \"aria-label\": $options.editButtonAriaLabel,\n onClick: $options.handleEdit\n }, {\n icon: withCtx(() => [\n createVNode(_component_Pencil, { size: 20 })\n ]),\n default: withCtx(() => [\n createTextVNode(\" \" + toDisplayString($props.editLabel), 1)\n ]),\n _: 1\n }, 8, [\"aria-label\", \"onClick\"])) : createCommentVNode(\"\", true),\n $props.undo ? (openBlock(), createBlock(_component_NcActionButton, {\n key: 1,\n \"aria-label\": $options.undoButtonAriaLabel,\n onClick: $options.handleUndo\n }, {\n icon: withCtx(() => [\n createVNode(_component_Undo, { size: 20 })\n ]),\n _: 1\n }, 8, [\"aria-label\", \"onClick\"])) : createCommentVNode(\"\", true),\n renderSlot(_ctx.$slots, \"actions\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"boundariesElement\", \"inline\", \"placement\", \"open\", \"forceMenu\", \"defaultIcon\", \"onUpdate:open\"])) : createCommentVNode(\"\", true)\n ], 2)) : createCommentVNode(\"\", true),\n $props.allowCollapse && !!_ctx.$slots.default ? (openBlock(), createBlock(_component_NcAppNavigationIconCollapsible, {\n key: 3,\n active: $props.to && isActive || $props.active,\n open: $data.opened,\n onClick: withModifiers($options.toggleCollapse, [\"prevent\", \"stop\"])\n }, null, 8, [\"active\", \"open\", \"onClick\"])) : createCommentVNode(\"\", true),\n renderSlot(_ctx.$slots, \"extra\", {}, void 0, true)\n ], 2)\n ]),\n _: 3\n }, 16)),\n $options.canHaveChildren && !!_ctx.$slots.default ? (openBlock(), createElementBlock(\"ul\", _hoisted_7, [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true)\n ], 10, _hoisted_1);\n}\nconst NcAppNavigationItem = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-fcab058b\"]]);\nexport {\n NcAppNavigationItem as N\n};\n//# sourceMappingURL=NcAppNavigationItem-CDeYtA3E.mjs.map\n","import '../assets/NcAppNavigationNew-Bn8zj5lM.css';\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { resolveComponent, openBlock, createElementBlock, createVNode, withCtx, createTextVNode, toDisplayString, renderSlot } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n components: {\n NcButton\n },\n props: {\n /**\n * Id of the button\n */\n buttonId: {\n type: String,\n required: false,\n default: \"\"\n },\n /**\n * Disabled state of the button\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Main text of the button\n */\n text: {\n type: String,\n required: true\n },\n /**\n * The color variant to use.\n *\n * @default 'primary'\n */\n variant: {\n type: String,\n default: \"primary\",\n validator(value) {\n return [\"primary\", \"secondary\", \"tertiary\"].indexOf(value) !== -1;\n }\n }\n },\n emits: [\"click\"]\n};\nconst _hoisted_1 = { class: \"app-navigation-new\" };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcButton = resolveComponent(\"NcButton\");\n return openBlock(), createElementBlock(\"div\", _hoisted_1, [\n createVNode(_component_NcButton, {\n id: $props.buttonId,\n disabled: $props.disabled,\n variant: $props.variant,\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\"))\n }, {\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"icon\", {}, void 0, true)\n ]),\n default: withCtx(() => [\n createTextVNode(\" \" + toDisplayString($props.text), 1)\n ]),\n _: 3\n }, 8, [\"id\", \"disabled\", \"variant\"])\n ]);\n}\nconst NcAppNavigationNew = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-0ba6c9df\"]]);\nexport {\n NcAppNavigationNew as N\n};\n//# sourceMappingURL=NcAppNavigationNew-CBNppM7Q.mjs.map\n","import '../assets/NcContent-DX4Rs6Pc.css';\nimport { defineComponent, provide, computed, ref, onBeforeMount, openBlock, createElementBlock, normalizeClass, unref, createBlock, Teleport, createElementVNode, toDisplayString, withDirectives, createVNode, withModifiers, withCtx, createTextVNode, vShow, renderSlot, nextTick } from \"vue\";\nimport { emit } from \"@nextcloud/event-bus\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { useIsMobile } from \"../composables/useIsMobile/index.mjs\";\nimport { r as register, H as t30, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { i as isLegacy34 } from \"./legacy-BoqDmOCa.mjs\";\nimport { H as HAS_APP_NAVIGATION_KEY, C as CONTENT_SELECTOR_KEY } from \"./constants-Ciwvl5xb.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nregister(t30);\nconst contentSvg = '<!--\\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n - SPDX-License-Identifier: AGPL-3.0-or-later\\n-->\\n<svg width=\"395\" height=\"314\" viewBox=\"0 0 395 314\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<rect width=\"395\" height=\"314\" rx=\"11\" fill=\"#439DCD\"/>\\n<rect x=\"13\" y=\"51\" width=\"366\" height=\"248\" rx=\"8\" fill=\"white\"/>\\n<rect x=\"22\" y=\"111\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"127\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"63\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"191\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"143\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"79\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"159\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"95\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"175\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<path d=\"M288 145C277.56 147.8 265.32 149 254 149C242.68 149 230.44 147.8 220 145L218 153C225.44 155 234 156.32 242 157V209H250V185H258V209H266V157C274 156.32 282.56 155 290 153L288 145ZM254 145C258.4 145 262 141.4 262 137C262 132.6 258.4 129 254 129C249.6 129 246 132.6 246 137C246 141.4 249.6 145 254 145Z\" fill=\"#DEDEDE\"/>\\n<path d=\"M43.5358 13C38.6641 13 34.535 16.2415 33.2552 20.6333C32.143 18.3038 29.7327 16.6718 26.9564 16.6718C23.1385 16.6718 20 19.7521 20 23.4993C20 27.2465 23.1385 30.3282 26.9564 30.3282C29.7327 30.3282 32.1429 28.6952 33.2552 26.3653C34.535 30.7575 38.6641 34 43.5358 34C48.3715 34 52.4796 30.8064 53.7921 26.4637C54.9249 28.7407 57.3053 30.3282 60.0421 30.3282C63.8601 30.3282 67 27.2465 67 23.4993C67 19.7521 63.8601 16.6718 60.0421 16.6718C57.3053 16.6718 54.9249 18.2583 53.7921 20.5349C52.4796 16.1926 48.3715 13 43.5358 13ZM43.5358 17.0079C47.2134 17.0079 50.1512 19.8899 50.1512 23.4993C50.1512 27.1087 47.2134 29.9921 43.5358 29.9921C39.8583 29.9921 36.9218 27.1087 36.9218 23.4993C36.9218 19.8899 39.8583 17.0079 43.5358 17.0079ZM26.9564 20.6797C28.5677 20.6797 29.8307 21.9179 29.8307 23.4993C29.8307 25.0807 28.5677 26.3203 26.9564 26.3203C25.3452 26.3203 24.0836 25.0807 24.0836 23.4993C24.0836 21.9179 25.3452 20.6797 26.9564 20.6797ZM60.0421 20.6797C61.6534 20.6797 62.9164 21.9179 62.9164 23.4993C62.9164 25.0807 61.6534 26.3203 60.0421 26.3203C58.4309 26.3203 57.1693 25.0807 57.1693 23.4993C57.1693 21.9179 58.4309 20.6797 60.0421 20.6797Z\" fill=\"white\"/>\\n<rect x=\"79\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"99\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"119\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"139\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"159\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"179\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 0C5.37258 0 0 5.37259 0 12V302C0 308.627 5.37259 314 12 314H383C389.627 314 395 308.627 395 302V12C395 5.37258 389.627 0 383 0H12ZM140 44C132.268 44 126 50.268 126 58V292C126 299.732 132.268 306 140 306H372C379.732 306 386 299.732 386 292V58C386 50.268 379.732 44 372 44H140Z\" fill=\"black\" fill-opacity=\"0.35\"/>\\n</svg>\\n';\nconst navigationSvg = '<!--\\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n - SPDX-License-Identifier: AGPL-3.0-or-later\\n-->\\n<svg width=\"395\" height=\"314\" viewBox=\"0 0 395 314\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<rect width=\"395\" height=\"314\" rx=\"11\" fill=\"#439DCD\"/>\\n<rect x=\"13\" y=\"51\" width=\"366\" height=\"248\" rx=\"8\" fill=\"white\"/>\\n<rect x=\"22\" y=\"111\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"127\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"63\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"191\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"143\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"79\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"159\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"95\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<rect x=\"22\" y=\"175\" width=\"92\" height=\"12\" rx=\"6\" fill=\"#DEDEDE\"/>\\n<path d=\"M288 145C277.56 147.8 265.32 149 254 149C242.68 149 230.44 147.8 220 145L218 153C225.44 155 234 156.32 242 157V209H250V185H258V209H266V157C274 156.32 282.56 155 290 153L288 145ZM254 145C258.4 145 262 141.4 262 137C262 132.6 258.4 129 254 129C249.6 129 246 132.6 246 137C246 141.4 249.6 145 254 145Z\" fill=\"#DEDEDE\"/>\\n<path d=\"M43.5358 13C38.6641 13 34.535 16.2415 33.2552 20.6333C32.143 18.3038 29.7327 16.6718 26.9564 16.6718C23.1385 16.6718 20 19.7521 20 23.4993C20 27.2465 23.1385 30.3282 26.9564 30.3282C29.7327 30.3282 32.1429 28.6952 33.2552 26.3653C34.535 30.7575 38.6641 34 43.5358 34C48.3715 34 52.4796 30.8064 53.7921 26.4637C54.9249 28.7407 57.3053 30.3282 60.0421 30.3282C63.8601 30.3282 67 27.2465 67 23.4993C67 19.7521 63.8601 16.6718 60.0421 16.6718C57.3053 16.6718 54.9249 18.2583 53.7921 20.5349C52.4796 16.1926 48.3715 13 43.5358 13ZM43.5358 17.0079C47.2134 17.0079 50.1512 19.8899 50.1512 23.4993C50.1512 27.1087 47.2134 29.9921 43.5358 29.9921C39.8583 29.9921 36.9218 27.1087 36.9218 23.4993C36.9218 19.8899 39.8583 17.0079 43.5358 17.0079ZM26.9564 20.6797C28.5677 20.6797 29.8307 21.9179 29.8307 23.4993C29.8307 25.0807 28.5677 26.3203 26.9564 26.3203C25.3452 26.3203 24.0836 25.0807 24.0836 23.4993C24.0836 21.9179 25.3452 20.6797 26.9564 20.6797ZM60.0421 20.6797C61.6534 20.6797 62.9164 21.9179 62.9164 23.4993C62.9164 25.0807 61.6534 26.3203 60.0421 26.3203C58.4309 26.3203 57.1693 25.0807 57.1693 23.4993C57.1693 21.9179 58.4309 20.6797 60.0421 20.6797Z\" fill=\"white\"/>\\n<rect x=\"79\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"99\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"119\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"139\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"159\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<rect x=\"179\" y=\"20\" width=\"8\" height=\"8\" rx=\"4\" fill=\"white\"/>\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 0C5.37258 0 0 5.37259 0 12V302C0 308.627 5.37259 314 12 314H383C389.627 314 395 308.627 395 302V12C395 5.37258 389.627 0 383 0H12ZM112 44C119.732 44 126 50.268 126 58V292C126 299.732 119.732 306 112 306H20C12.268 306 6 299.732 6 292V58C6 50.268 12.268 44 20 44H112Z\" fill=\"black\" fill-opacity=\"0.35\"/>\\n</svg>\\n';\nconst _hoisted_1 = { class: \"vue-skip-actions__container\" };\nconst _hoisted_2 = { class: \"vue-skip-actions__headline\" };\nconst _hoisted_3 = { class: \"vue-skip-actions__buttons\" };\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcContent\",\n props: {\n appName: {}\n },\n setup(__props) {\n const props = __props;\n provide(HAS_APP_NAVIGATION_KEY, setAppNavigation);\n provide(CONTENT_SELECTOR_KEY, \"#content-vue\");\n provide(\"appName\", computed(() => props.appName));\n const isMobile = useIsMobile();\n const hasAppNavigation = ref(false);\n const currentFocus = ref();\n const currentImage = computed(() => currentFocus.value === \"navigation\" ? navigationSvg : contentSvg);\n onBeforeMount(() => {\n const container = document.getElementById(\"skip-actions\");\n if (container) {\n container.innerHTML = \"\";\n container.classList.add(\"vue-skip-actions\");\n }\n });\n function openAppNavigation() {\n emit(\"toggle-navigation\", { open: true });\n nextTick(() => {\n window.location.hash = \"app-navigation-vue\";\n document.getElementById(\"app-navigation-vue\").focus();\n });\n }\n function setAppNavigation(value) {\n hasAppNavigation.value = value;\n if (!currentFocus.value) {\n currentFocus.value = \"navigation\";\n }\n }\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n id: \"content-vue\",\n class: normalizeClass([\"content\", [`app-${__props.appName.toLowerCase()}`, { \"content--legacy\": unref(isLegacy34) }]])\n }, [\n (openBlock(), createBlock(Teleport, { to: \"#skip-actions\" }, [\n createElementVNode(\"div\", _hoisted_1, [\n createElementVNode(\"div\", _hoisted_2, toDisplayString(unref(t)(\"Keyboard navigation help\")), 1),\n createElementVNode(\"div\", _hoisted_3, [\n withDirectives(createVNode(NcButton, {\n href: \"#app-navigation-vue\",\n variant: \"tertiary\",\n onClick: withModifiers(openAppNavigation, [\"prevent\"]),\n onFocusin: _cache[0] || (_cache[0] = ($event) => currentFocus.value = \"navigation\"),\n onMouseover: _cache[1] || (_cache[1] = ($event) => currentFocus.value = \"navigation\")\n }, {\n default: withCtx(() => [\n createTextVNode(toDisplayString(unref(t)(\"Skip to app navigation\")), 1)\n ]),\n _: 1\n }, 512), [\n [vShow, hasAppNavigation.value]\n ]),\n createVNode(NcButton, {\n href: \"#app-content-vue\",\n variant: \"tertiary\",\n onFocusin: _cache[2] || (_cache[2] = ($event) => currentFocus.value = \"content\"),\n onMouseover: _cache[3] || (_cache[3] = ($event) => currentFocus.value = \"content\")\n }, {\n default: withCtx(() => [\n createTextVNode(toDisplayString(unref(t)(\"Skip to main content\")), 1)\n ]),\n _: 1\n })\n ]),\n withDirectives(createVNode(NcIconSvgWrapper, {\n class: \"vue-skip-actions__image\",\n svg: currentImage.value,\n size: \"auto\"\n }, null, 8, [\"svg\"]), [\n [vShow, !unref(isMobile)]\n ])\n ])\n ])),\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 2);\n };\n }\n});\nconst NcContent = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-d13dcb98\"]]);\nexport {\n NcContent as N\n};\n//# sourceMappingURL=NcContent-BYh5hWDN.mjs.map\n","import '../assets/NcCounterBubble-ZnteskDR.css';\nimport { defineComponent, computed, openBlock, createElementBlock, normalizeClass, toDisplayString } from \"vue\";\nimport { getCanonicalLocale } from \"@nextcloud/l10n\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _hoisted_1 = [\"title\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcCounterBubble\",\n props: {\n count: {},\n active: { type: Boolean },\n type: { default: \"\" },\n raw: { type: Boolean }\n },\n setup(__props) {\n const props = __props;\n const humanizedCount = computed(() => {\n if (props.raw) {\n return props.count.toString();\n }\n const formatter = new Intl.NumberFormat(getCanonicalLocale(), {\n notation: \"compact\",\n compactDisplay: \"short\"\n });\n return formatter.format(props.count);\n });\n const originalCountAsTitleIfNeeded = computed(() => {\n if (props.raw) {\n return;\n }\n const countAsString = props.count.toString();\n if (countAsString === humanizedCount.value) {\n return;\n }\n return countAsString;\n });\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n class: normalizeClass([\"counter-bubble__counter\", {\n active: __props.active,\n \"counter-bubble__counter--highlighted\": __props.type === \"highlighted\",\n \"counter-bubble__counter--outlined\": __props.type === \"outlined\"\n }]),\n title: originalCountAsTitleIfNeeded.value\n }, toDisplayString(humanizedCount.value), 11, _hoisted_1);\n };\n }\n});\nconst NcCounterBubble = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-36ffc13f\"]]);\nexport {\n NcCounterBubble as N\n};\n//# sourceMappingURL=NcCounterBubble-CV0YMrXW.mjs.map\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon account-group-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z\">\n <title v-if=\"title\">{{ title }}\n \n \n \n\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nconst INJECTION_KEY_THEME = /* @__PURE__ */ Symbol.for(\"nc:theme:enforced\");\nexport {\n INJECTION_KEY_THEME as I\n};\n//# sourceMappingURL=constants-wIEKSp2G.mjs.map\n","import { createSharedComposable, usePreferredDark, useMutationObserver } from \"@vueuse/core\";\nimport { computed, toValue, ref, watch, readonly, inject } from \"vue\";\nimport { checkIfDarkTheme } from \"../../functions/isDarkTheme/index.mjs\";\nimport { I as INJECTION_KEY_THEME } from \"../../chunks/constants-wIEKSp2G.mjs\";\n/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction useIsDarkThemeElement(el) {\n const element = computed(() => toValue(el) ?? document.body);\n const isDarkTheme = ref(checkIfDarkTheme(element.value));\n const isDarkSystemTheme = usePreferredDark();\n function updateIsDarkTheme() {\n isDarkTheme.value = checkIfDarkTheme(element.value);\n }\n useMutationObserver(element, updateIsDarkTheme, { attributes: true });\n watch(element, updateIsDarkTheme);\n watch(isDarkSystemTheme, updateIsDarkTheme, { immediate: true });\n return readonly(isDarkTheme);\n}\nconst useInternalIsDarkTheme = createSharedComposable(() => useIsDarkThemeElement());\nfunction useIsDarkTheme() {\n const isDarkTheme = useInternalIsDarkTheme();\n const enforcedTheme = inject(INJECTION_KEY_THEME, void 0);\n return computed(() => {\n if (enforcedTheme?.value) {\n return enforcedTheme.value === \"dark\";\n }\n return isDarkTheme.value;\n });\n}\nexport {\n useIsDarkTheme,\n useIsDarkThemeElement\n};\n//# sourceMappingURL=index.mjs.map\n","import '../assets/NcDateTimePickerNative-BP6eg8aU.css';\nimport { defineComponent, useModel, computed, openBlock, createElementBlock, normalizeClass, createElementVNode, toDisplayString, mergeProps, mergeModels } from \"vue\";\nimport { r as register, x as t40, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nregister(t40);\nconst _hoisted_1 = [\"for\"];\nconst _hoisted_2 = [\"id\", \"type\", \"value\", \"min\", \"max\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...{ inheritAttrs: false },\n __name: \"NcDateTimePickerNative\",\n props: /* @__PURE__ */ mergeModels({\n class: { default: void 0 },\n id: { default: () => createElementId() },\n inputClass: { default: \"\" },\n type: { default: \"date\" },\n label: { default: () => t(\"Please choose a date\") },\n min: { default: null },\n max: { default: null },\n hideLabel: { type: Boolean }\n }, {\n \"modelValue\": { default: null },\n \"modelModifiers\": {}\n }),\n emits: [\"update:modelValue\"],\n setup(__props) {\n const modelValue = useModel(__props, \"modelValue\");\n const props = __props;\n const formattedValue = computed(() => modelValue.value ? formatValue(modelValue.value) : \"\");\n const formattedMax = computed(() => props.max ? formatValue(props.max) : void 0);\n const formattedMin = computed(() => props.min ? formatValue(props.min) : void 0);\n function getReadableDate(value) {\n const yyyy = value.getFullYear().toString().padStart(4, \"0\");\n const MM = (value.getMonth() + 1).toString().padStart(2, \"0\");\n const dd = value.getDate().toString().padStart(2, \"0\");\n const hh = value.getHours().toString().padStart(2, \"0\");\n const mm = value.getMinutes().toString().padStart(2, \"0\");\n return { yyyy, MM, dd, hh, mm };\n }\n function formatValue(value) {\n const { yyyy, MM, dd, hh, mm } = getReadableDate(value);\n if (props.type === \"datetime-local\") {\n return `${yyyy}-${MM}-${dd}T${hh}:${mm}`;\n } else if (props.type === \"date\") {\n return `${yyyy}-${MM}-${dd}`;\n } else if (props.type === \"month\") {\n return `${yyyy}-${MM}`;\n } else if (props.type === \"time\") {\n return `${hh}:${mm}`;\n } else if (props.type === \"week\") {\n const startDate = new Date(Number.parseInt(yyyy), 0, 1);\n const daysSinceBeginningOfYear = Math.floor((value.getTime() - startDate.getTime()) / (24 * 60 * 60 * 1e3));\n const weekNumber = Math.ceil(daysSinceBeginningOfYear / 7);\n return `${yyyy}-W${weekNumber}`;\n }\n return \"\";\n }\n function onInput(event) {\n const input = event.target;\n if (!input || isNaN(input.valueAsNumber)) {\n modelValue.value = null;\n } else if (props.type === \"time\") {\n const time = input.value;\n const { yyyy, MM, dd } = getReadableDate(modelValue.value || /* @__PURE__ */ new Date());\n modelValue.value = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${time}`);\n } else if (props.type === \"month\") {\n const MM = (new Date(input.value).getMonth() + 1).toString().padStart(2, \"0\");\n const { yyyy, dd, hh, mm } = getReadableDate(modelValue.value || /* @__PURE__ */ new Date());\n modelValue.value = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`);\n } else {\n const timezoneOffsetSeconds = new Date(input.valueAsNumber).getTimezoneOffset() * 1e3 * 60;\n const inputDateWithTimezone = input.valueAsNumber + timezoneOffsetSeconds;\n modelValue.value = new Date(inputDateWithTimezone);\n }\n }\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n class: normalizeClass([\"native-datetime-picker\", _ctx.$props.class])\n }, [\n createElementVNode(\"label\", {\n class: normalizeClass([\"native-datetime-picker__label\", { \"hidden-visually\": __props.hideLabel }]),\n for: __props.id\n }, toDisplayString(__props.label), 11, _hoisted_1),\n createElementVNode(\"input\", mergeProps({\n id: __props.id,\n class: [\"native-datetime-picker__input\", __props.inputClass],\n type: __props.type,\n value: formattedValue.value,\n min: formattedMin.value,\n max: formattedMax.value\n }, _ctx.$attrs, { onInput }), null, 16, _hoisted_2)\n ], 2);\n };\n }\n});\nconst NcDateTimePickerNative = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-b97e1f7a\"]]);\nexport {\n NcDateTimePickerNative as N\n};\n//# sourceMappingURL=NcDateTimePickerNative-B8CMOUnH.mjs.map\n","import '../assets/NcTextArea-BxGe3Lqn.css';\nimport { defineComponent, useModel, useAttrs, useTemplateRef, computed, watch, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, mergeProps, toDisplayString, createCommentVNode, createBlock, createTextVNode, mergeModels } from \"vue\";\nimport { d as mdiCheck, j as mdiAlertCircleOutline } from \"./mdi-CpchYUUV.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { a as isLegacy } from \"./legacy-BoqDmOCa.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _hoisted_1 = { class: \"textarea__main-wrapper\" };\nconst _hoisted_2 = [\"id\", \"aria-describedby\", \"disabled\", \"placeholder\", \"value\"];\nconst _hoisted_3 = [\"for\"];\nconst _hoisted_4 = [\"id\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...{ inheritAttrs: false },\n __name: \"NcTextArea\",\n props: /* @__PURE__ */ mergeModels({\n disabled: { type: Boolean },\n error: { type: Boolean },\n helperText: { default: void 0 },\n id: { default: () => createElementId() },\n inputClass: { default: \"\" },\n label: { default: void 0 },\n labelOutside: { type: Boolean },\n placeholder: { default: void 0 },\n resize: { default: \"both\" },\n success: { type: Boolean }\n }, {\n \"modelValue\": { required: true },\n \"modelModifiers\": {}\n }),\n emits: [\"update:modelValue\"],\n setup(__props, { expose: __expose }) {\n const modelValue = useModel(__props, \"modelValue\");\n const props = __props;\n __expose({\n focus,\n select\n });\n const attrs = useAttrs();\n const textAreaElement = useTemplateRef(\"input\");\n const internalPlaceholder = computed(() => props.placeholder || (isLegacy ? props.label : void 0));\n watch(() => props.labelOutside, () => {\n if (!props.labelOutside && !props.label) {\n logger.warn(\"[NcTextArea] You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.\");\n }\n });\n const ariaDescribedby = computed(() => {\n const ariaDescribedby2 = [];\n if (props.helperText) {\n ariaDescribedby2.push(`${props.id}-helper-text`);\n }\n if (typeof attrs[\"aria-describedby\"] === \"string\") {\n ariaDescribedby2.push(attrs[\"aria-describedby\"]);\n }\n return ariaDescribedby2.join(\" \") || void 0;\n });\n function handleInput(event) {\n const { value } = event.target;\n modelValue.value = value;\n }\n function focus(options) {\n textAreaElement.value.focus(options);\n }\n function select() {\n textAreaElement.value.select();\n }\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n class: normalizeClass([\"textarea\", [\n _ctx.$attrs.class,\n {\n \"textarea--disabled\": __props.disabled,\n \"textarea--legacy\": unref(isLegacy)\n }\n ]])\n }, [\n createElementVNode(\"div\", _hoisted_1, [\n createElementVNode(\"textarea\", mergeProps({ ..._ctx.$attrs, class: void 0 }, {\n id: __props.id,\n ref: \"input\",\n \"aria-describedby\": ariaDescribedby.value,\n \"aria-live\": \"polite\",\n class: [\"textarea__input\", [\n __props.inputClass,\n {\n \"textarea__input--label-outside\": __props.labelOutside,\n \"textarea__input--legacy\": unref(isLegacy),\n \"textarea__input--success\": __props.success,\n \"textarea__input--error\": __props.error\n }\n ]],\n disabled: __props.disabled,\n placeholder: internalPlaceholder.value,\n style: { resize: __props.resize },\n value: modelValue.value,\n onInput: handleInput\n }), null, 16, _hoisted_2),\n !__props.labelOutside ? (openBlock(), createElementBlock(\"label\", {\n key: 0,\n class: \"textarea__label\",\n for: __props.id\n }, toDisplayString(__props.label), 9, _hoisted_3)) : createCommentVNode(\"\", true)\n ]),\n __props.helperText ? (openBlock(), createElementBlock(\"p\", {\n key: 0,\n id: `${__props.id}-helper-text`,\n class: normalizeClass([\"textarea__helper-text-message\", {\n \"textarea__helper-text-message--error\": __props.error,\n \"textarea__helper-text-message--success\": __props.success\n }])\n }, [\n __props.success ? (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 0,\n class: \"textarea__helper-text-message__icon\",\n path: unref(mdiCheck),\n inline: \"\"\n }, null, 8, [\"path\"])) : __props.error ? (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 1,\n class: \"textarea__helper-text-message__icon\",\n path: unref(mdiAlertCircleOutline),\n inline: \"\"\n }, null, 8, [\"path\"])) : createCommentVNode(\"\", true),\n createTextVNode(\" \" + toDisplayString(__props.helperText), 1)\n ], 10, _hoisted_4)) : createCommentVNode(\"\", true)\n ], 2);\n };\n }\n});\nconst NcTextArea = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-d327fb49\"]]);\nexport {\n NcTextArea as N\n};\n//# sourceMappingURL=NcTextArea-Dxzj4zdb.mjs.map\n","import '../assets/NcInputField-DpyFJ1xw.css';\nimport { defineComponent, useModel, useAttrs, useTemplateRef, computed, warn, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, mergeProps, toDisplayString, createCommentVNode, withDirectives, renderSlot, vShow, createBlock, withCtx, createTextVNode, mergeModels } from \"vue\";\nimport { d as mdiCheck, j as mdiAlertCircleOutline } from \"./mdi-CpchYUUV.mjs\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { a as isLegacy } from \"./legacy-BoqDmOCa.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _hoisted_1 = { class: \"input-field__main-wrapper\" };\nconst _hoisted_2 = [\"id\", \"aria-describedby\", \"disabled\", \"placeholder\", \"type\", \"value\"];\nconst _hoisted_3 = [\"for\"];\nconst _hoisted_4 = { class: \"input-field__icon input-field__icon--leading\" };\nconst _hoisted_5 = {\n key: 2,\n class: \"input-field__icon input-field__icon--trailing\"\n};\nconst _hoisted_6 = [\"id\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...{\n inheritAttrs: false\n },\n __name: \"NcInputField\",\n props: /* @__PURE__ */ mergeModels({\n class: { default: \"\" },\n inputClass: { default: \"\" },\n id: { default: () => createElementId() },\n label: { default: void 0 },\n labelOutside: { type: Boolean },\n type: { default: \"text\" },\n placeholder: { default: void 0 },\n showTrailingButton: { type: Boolean },\n trailingButtonLabel: { default: void 0 },\n success: { type: Boolean },\n error: { type: Boolean },\n helperText: { default: \"\" },\n disabled: { type: Boolean },\n pill: { type: Boolean }\n }, {\n \"modelValue\": { required: true },\n \"modelModifiers\": {}\n }),\n emits: /* @__PURE__ */ mergeModels([\"trailingButtonClick\"], [\"update:modelValue\"]),\n setup(__props, { expose: __expose, emit: __emit }) {\n const modelValue = useModel(__props, \"modelValue\");\n const props = __props;\n const emit = __emit;\n __expose({\n focus,\n select\n });\n const attrs = useAttrs();\n const inputElement = useTemplateRef(\"input\");\n const hasTrailingIcon = computed(() => props.showTrailingButton || props.success);\n const internalPlaceholder = computed(() => {\n if (props.placeholder) {\n return props.placeholder;\n }\n if (props.label) {\n return isLegacy ? props.label : \"\";\n }\n return void 0;\n });\n const isValidLabel = computed(() => {\n const isValidLabel2 = props.label || props.labelOutside;\n if (!isValidLabel2) {\n warn(\"You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.\");\n }\n return isValidLabel2;\n });\n const ariaDescribedby = computed(() => {\n const ariaDescribedby2 = [];\n if (props.helperText) {\n ariaDescribedby2.push(`${props.id}-helper-text`);\n }\n if (attrs[\"aria-describedby\"]) {\n ariaDescribedby2.push(String(attrs[\"aria-describedby\"]));\n }\n return ariaDescribedby2.join(\" \") || void 0;\n });\n function focus(options) {\n inputElement.value.focus(options);\n }\n function select() {\n inputElement.value.select();\n }\n function handleInput(event) {\n const target = event.target;\n modelValue.value = props.type === \"number\" && typeof modelValue.value === \"number\" ? parseFloat(target.value) : target.value;\n }\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n class: normalizeClass([\"input-field\", [{\n \"input-field--disabled\": __props.disabled,\n \"input-field--error\": __props.error,\n \"input-field--label-outside\": __props.labelOutside || !isValidLabel.value,\n \"input-field--leading-icon\": !!_ctx.$slots.icon,\n \"input-field--trailing-icon\": hasTrailingIcon.value,\n \"input-field--pill\": __props.pill,\n \"input-field--success\": __props.success,\n \"input-field--legacy\": unref(isLegacy)\n }, _ctx.$props.class]])\n }, [\n createElementVNode(\"div\", _hoisted_1, [\n createElementVNode(\"input\", mergeProps(_ctx.$attrs, {\n id: __props.id,\n ref: \"input\",\n \"aria-describedby\": ariaDescribedby.value,\n \"aria-live\": \"polite\",\n class: [\"input-field__input\", __props.inputClass],\n disabled: __props.disabled,\n placeholder: internalPlaceholder.value,\n type: __props.type,\n value: modelValue.value.toString(),\n onInput: handleInput\n }), null, 16, _hoisted_2),\n !__props.labelOutside && isValidLabel.value ? (openBlock(), createElementBlock(\"label\", {\n key: 0,\n class: \"input-field__label\",\n for: __props.id\n }, toDisplayString(__props.label), 9, _hoisted_3)) : createCommentVNode(\"\", true),\n withDirectives(createElementVNode(\"div\", _hoisted_4, [\n renderSlot(_ctx.$slots, \"icon\", {}, void 0, true)\n ], 512), [\n [vShow, !!_ctx.$slots.icon]\n ]),\n __props.showTrailingButton ? (openBlock(), createBlock(NcButton, {\n key: 1,\n class: \"input-field__trailing-button\",\n \"aria-label\": __props.trailingButtonLabel,\n disabled: __props.disabled,\n variant: \"tertiary-no-background\",\n onClick: _cache[0] || (_cache[0] = ($event) => emit(\"trailingButtonClick\", $event))\n }, {\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"trailing-button-icon\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"aria-label\", \"disabled\"])) : __props.success || __props.error ? (openBlock(), createElementBlock(\"div\", _hoisted_5, [\n __props.success ? (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 0,\n path: unref(mdiCheck)\n }, null, 8, [\"path\"])) : (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 1,\n path: unref(mdiAlertCircleOutline)\n }, null, 8, [\"path\"]))\n ])) : createCommentVNode(\"\", true)\n ]),\n __props.helperText ? (openBlock(), createElementBlock(\"p\", {\n key: 0,\n id: `${__props.id}-helper-text`,\n class: \"input-field__helper-text-message\"\n }, [\n __props.success ? (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 0,\n class: \"input-field__helper-text-message__icon\",\n path: unref(mdiCheck),\n inline: \"\"\n }, null, 8, [\"path\"])) : __props.error ? (openBlock(), createBlock(NcIconSvgWrapper, {\n key: 1,\n class: \"input-field__helper-text-message__icon\",\n path: unref(mdiAlertCircleOutline),\n inline: \"\"\n }, null, 8, [\"path\"])) : createCommentVNode(\"\", true),\n createTextVNode(\" \" + toDisplayString(__props.helperText), 1)\n ], 8, _hoisted_6)) : createCommentVNode(\"\", true)\n ], 2);\n };\n }\n});\nconst NcInputField = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-8e16cbb5\"]]);\nexport {\n NcInputField as N\n};\n//# sourceMappingURL=NcInputField-5Sg6EUP6.mjs.map\n","import { defineComponent, useModel, useTemplateRef, computed, openBlock, createBlock, unref, mergeProps, createSlots, withCtx, renderSlot, mergeModels } from \"vue\";\nimport { m as mdiArrowRight, a as mdiUndo, b as mdiClose } from \"./mdi-CpchYUUV.mjs\";\nimport { r as register, b as t51, c as t18, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { N as NcInputField } from \"./NcInputField-5Sg6EUP6.mjs\";\nregister(t18, t51);\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcTextField\",\n props: /* @__PURE__ */ mergeModels({\n class: {},\n inputClass: {},\n id: {},\n label: {},\n labelOutside: { type: Boolean },\n type: {},\n placeholder: {},\n showTrailingButton: { type: Boolean },\n trailingButtonLabel: { default: void 0 },\n success: { type: Boolean },\n error: { type: Boolean },\n helperText: {},\n disabled: { type: Boolean },\n pill: { type: Boolean },\n trailingButtonIcon: { default: \"close\" }\n }, {\n \"modelValue\": { default: \"\" },\n \"modelModifiers\": {}\n }),\n emits: [\"update:modelValue\"],\n setup(__props, { expose: __expose }) {\n const modelValue = useModel(__props, \"modelValue\");\n const props = __props;\n __expose({\n focus,\n select\n });\n const inputFieldInstance = useTemplateRef(\"inputField\");\n const defaultTrailingButtonLabels = {\n arrowEnd: t(\"Save changes\"),\n close: t(\"Clear text\"),\n undo: t(\"Undo changes\")\n };\n const NcInputFieldPropNames = new Set(Object.keys(NcInputField.props));\n const propsToForward = computed(() => {\n const sharedProps = Object.fromEntries(Object.entries(props).filter(([key]) => NcInputFieldPropNames.has(key)));\n sharedProps.trailingButtonLabel ??= defaultTrailingButtonLabels[props.trailingButtonIcon];\n return sharedProps;\n });\n function focus(options) {\n inputFieldInstance.value.focus(options);\n }\n function select() {\n inputFieldInstance.value.select();\n }\n return (_ctx, _cache) => {\n return openBlock(), createBlock(unref(NcInputField), mergeProps(propsToForward.value, {\n ref: \"inputField\",\n modelValue: modelValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event)\n }), createSlots({ _: 2 }, [\n !!_ctx.$slots.icon ? {\n name: \"icon\",\n fn: withCtx(() => [\n renderSlot(_ctx.$slots, \"icon\")\n ]),\n key: \"0\"\n } : void 0,\n __props.type !== \"search\" ? {\n name: \"trailing-button-icon\",\n fn: withCtx(() => [\n __props.trailingButtonIcon === \"arrowEnd\" ? (openBlock(), createBlock(unref(NcIconSvgWrapper), {\n key: 0,\n directional: \"\",\n path: unref(mdiArrowRight)\n }, null, 8, [\"path\"])) : (openBlock(), createBlock(unref(NcIconSvgWrapper), {\n key: 1,\n path: __props.trailingButtonIcon === \"undo\" ? unref(mdiUndo) : unref(mdiClose)\n }, null, 8, [\"path\"]))\n ]),\n key: \"1\"\n } : void 0\n ]), 1040, [\"modelValue\"]);\n };\n }\n});\nexport {\n _sfc_main as _\n};\n//# sourceMappingURL=NcTextField.vue_vue_type_script_setup_true_lang-Bx2esFU2.mjs.map\n","\n\n","import { showError, showSuccess } from '@nextcloud/dialogs'\nimport { loadState } from '@nextcloud/initial-state'\nimport { t } from '@nextcloud/l10n'\n/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n *\n * Lightweight reactive store shared across views (no Vuex/Pinia dependency).\n */\nimport { reactive } from 'vue'\nimport api from './api.js'\n\n/**\n *\n */\nfunction initialSession() {\n\ttry {\n\t\treturn loadState('absence', 'session')\n\t} catch {\n\t\treturn { uid: null }\n\t}\n}\n\n/**\n *\n */\nfunction initialLeaveTypes() {\n\ttry {\n\t\treturn loadState('absence', 'leaveTypes') || []\n\t} catch {\n\t\treturn []\n\t}\n}\n\nexport const store = reactive({\n\tsession: initialSession(),\n\tleaveTypes: initialLeaveTypes(),\n\trequests: [],\n\tbalance: { balances: [] },\n\tloading: false,\n\tselectedId: null,\n\n\t// ---- getters ----\n\tleaveType(id) {\n\t\t// A null/undefined id means the server withheld the leave type (neutral\n\t\t// shared-calendar visibility): show a generic \"Absent\" marker, not \"Unknown\".\n\t\tif (id === null || id === undefined) {\n\t\t\treturn { label: t('absence', 'Absent'), color: '#888', icon: '🌴' }\n\t\t}\n\t\treturn this.leaveTypes.find((t) => t.id === id) || { label: t('absence', 'Unknown'), color: '#888', icon: '❔' }\n\t},\n\t/**\n\t * True when the type is recorded by HR (e.g. sick leave), not self-requested.\n\t *\n\t * @param request\n\t */\n\tisHrRecorded(request) {\n\t\tconst type = this.leaveType(request.typeId)\n\t\treturn type && type.employeeRequestable === false\n\t},\n\t/**\n\t * Whether to show a status chip. HR-recorded leave (sick) that is approved has no\n\t * approval concept, so the \"Approved\" label is hidden as noise.\n\t *\n\t * @param request\n\t */\n\tstatusVisible(request) {\n\t\treturn !(this.isHrRecorded(request) && request.status === 'APPROVED')\n\t},\n\tget enabledLeaveTypes() {\n\t\treturn this.leaveTypes.filter((t) => t.enabled)\n\t},\n\t/** Types an employee may self-request (excludes HR-recorded types like sick leave). */\n\tget requestableLeaveTypes() {\n\t\treturn this.leaveTypes.filter((t) => t.enabled && t.employeeRequestable)\n\t},\n\n\t// ---- actions ----\n\tasync refreshSession() {\n\t\ttry {\n\t\t\tthis.session = await api.getSession()\n\t\t} catch (e) {\n\t\t\tconsole.error('Absence: failed to refresh session', e)\n\t\t}\n\t},\n\n\tasync loadLeaveTypes() {\n\t\tthis.leaveTypes = await api.listLeaveTypes(false)\n\t},\n\n\tasync loadRequests(params) {\n\t\tthis.loading = true\n\t\ttry {\n\t\t\tthis.requests = await api.listRequests(params)\n\t\t} catch {\n\t\t\tshowError(t('absence', 'Could not load requests'))\n\t\t} finally {\n\t\t\tthis.loading = false\n\t\t}\n\t},\n\n\tasync loadMyBalance(year) {\n\t\tthis.balance = await api.getMyBalance(year)\n\t},\n\n\tasync createRequest(data) {\n\t\tconst created = await api.createRequest(data)\n\t\tshowSuccess(t('absence', 'On its way ✈️'))\n\t\tawait this.refreshSession()\n\t\treturn created\n\t},\n\n\tasync updateRequest(id, data) {\n\t\tconst updated = await api.updateRequest(id, data)\n\t\tshowSuccess(t('absence', 'Request updated'))\n\t\treturn updated\n\t},\n\n\tasync cancelRequest(id) {\n\t\tconst res = await api.cancelRequest(id)\n\t\tshowSuccess(t('absence', 'Request cancelled'))\n\t\tawait this.refreshSession()\n\t\treturn res\n\t},\n\n\tasync approveRequest(id, comment) {\n\t\tconst res = await api.approveRequest(id, comment)\n\t\tawait this.refreshSession()\n\t\treturn res\n\t},\n\n\tasync rejectRequest(id, comment) {\n\t\tconst res = await api.rejectRequest(id, comment)\n\t\tshowSuccess(t('absence', 'Request declined'))\n\t\tawait this.refreshSession()\n\t\treturn res\n\t},\n\n\tselect(id) {\n\t\tthis.selectedId = id\n\t},\n})\n\n/**\n * Visual metadata for a request status (spec §15.4).\n * `text` uses Nextcloud's contrast-optimised *-text variables so labels stay\n * readable; `tint` is the base semantic colour used for the chip background.\n *\n * @param status\n */\nexport function statusMeta(status) {\n\tswitch (status) {\n\t\tcase 'PENDING':\n\t\t\treturn { label: t('absence', 'Pending'), text: 'var(--color-warning-text)', tint: 'var(--color-warning)', icon: '⏳' }\n\t\tcase 'ESCALATED':\n\t\t\treturn { label: t('absence', 'With HR'), text: 'var(--color-warning-text)', tint: 'var(--color-warning)', icon: '⏫' }\n\t\tcase 'APPROVED':\n\t\t\treturn { label: t('absence', 'Approved'), text: 'var(--color-success-text)', tint: 'var(--color-success)', icon: '✅' }\n\t\tcase 'REJECTED':\n\t\t\treturn { label: t('absence', 'Declined'), text: 'var(--color-error-text)', tint: 'var(--color-error)', icon: '✋' }\n\t\tcase 'CANCELLED':\n\t\t\treturn { label: t('absence', 'Cancelled'), text: 'var(--color-text-maxcontrast)', tint: 'var(--color-text-maxcontrast)', icon: '🚫' }\n\t\tcase 'WITHDRAWAL_PENDING':\n\t\t\treturn { label: t('absence', 'Withdrawal pending'), text: 'var(--color-warning-text)', tint: 'var(--color-warning)', icon: '↩️' }\n\t\tdefault:\n\t\t\treturn { label: status, text: 'var(--color-main-text)', tint: 'var(--color-text-maxcontrast)', icon: '•' }\n\t}\n}\n","\n\n\n\n\n\n","import { defaultWindow, isClient, onClickOutside, onKeyStroke, onLongPress, useActiveElement, useBattery, useBrowserLocation, useClipboard, useColorMode, useDark, useDeviceMotion, useDeviceOrientation, useDevicePixelRatio, useDevicesList, useDocumentVisibility, useDraggable, useElementBounding, useElementHover, useElementSize, useElementVisibility, useEyeDropper, useFullscreen, useGeolocation, useIdle, useImage, useInfiniteScroll, useIntersectionObserver, useMouse, useMouseInElement, useMousePressed, useNetwork, useNow, useObjectUrl, useOffsetPagination, useOnline, usePageLeave, usePointer, usePointerLock, usePreferredColorScheme, usePreferredContrast, usePreferredDark, usePreferredLanguages, usePreferredReducedMotion, usePreferredReducedTransparency, useResizeObserver, useScreenSafeArea, useScroll, useScrollLock, useStorage, useTimeAgo, useTimestamp, useVirtualList, useWindowFocus, useWindowSize } from \"@vueuse/core\";\nimport { computed, defineComponent, h, reactive, shallowRef, toRefs, toValue, watch } from \"vue\";\nimport { createDisposableDirective, reactiveOmit, toRefs as toRefs$1, useToggle } from \"@vueuse/shared\";\n//#region ../core/onClickOutside/component.ts\nconst OnClickOutside = /* @__PURE__ */ defineComponent((props, { slots, emit }) => {\n\tconst target = shallowRef();\n\tonClickOutside(target, (e) => {\n\t\temit(\"trigger\", e);\n\t}, props.options);\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default());\n\t};\n}, {\n\tname: \"OnClickOutside\",\n\tprops: [\"as\", \"options\"],\n\temits: [\"trigger\"]\n});\n//#endregion\n//#region ../core/onClickOutside/directive.ts\nconst stopClickOutsideMap = /* @__PURE__ */ new WeakMap();\nconst vOnClickOutside = {\n\tmounted(el, binding) {\n\t\tconst capture = !binding.modifiers.bubble;\n\t\tlet stop;\n\t\tif (typeof binding.value === \"function\") stop = onClickOutside(el, binding.value, { capture });\n\t\telse {\n\t\t\tconst [handler, options] = binding.value;\n\t\t\tstop = onClickOutside(el, handler, Object.assign({ capture }, options));\n\t\t}\n\t\tstopClickOutsideMap.set(el, stop);\n\t},\n\tunmounted(el) {\n\t\tconst stop = stopClickOutsideMap.get(el);\n\t\tif (stop && typeof stop === \"function\") stop();\n\t\telse stop === null || stop === void 0 || stop.stop();\n\t\tstopClickOutsideMap.delete(el);\n\t}\n};\n/** @deprecated use `vOnClickOutside` instead */\nconst VOnClickOutside = vOnClickOutside;\n//#endregion\n//#region ../core/onKeyStroke/directive.ts\nconst vOnKeyStroke = createDisposableDirective({ mounted(el, binding) {\n\tvar _binding$arg$split, _binding$arg;\n\tconst keys = (_binding$arg$split = (_binding$arg = binding.arg) === null || _binding$arg === void 0 ? void 0 : _binding$arg.split(\",\")) !== null && _binding$arg$split !== void 0 ? _binding$arg$split : true;\n\tif (typeof binding.value === \"function\") onKeyStroke(keys, binding.value, { target: el });\n\telse {\n\t\tconst [handler, options] = binding.value;\n\t\tonKeyStroke(keys, handler, {\n\t\t\ttarget: el,\n\t\t\t...options\n\t\t});\n\t}\n} });\n//#endregion\n//#region ../core/onLongPress/component.ts\nconst OnLongPress = /* @__PURE__ */ defineComponent((props, { slots, emit }) => {\n\tconst target = shallowRef();\n\tconst data = onLongPress(target, (e) => {\n\t\temit(\"trigger\", e);\n\t}, props.options);\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"OnLongPress\",\n\tprops: [\"as\", \"options\"],\n\temits: [\"trigger\"]\n});\n//#endregion\n//#region ../core/onLongPress/directive.ts\nconst vOnLongPress = createDisposableDirective({ mounted(el, binding) {\n\tif (typeof binding.value === \"function\") onLongPress(el, binding.value, { modifiers: binding.modifiers });\n\telse onLongPress(el, ...binding.value);\n} });\n/** @deprecated use `vOnLongPress` instead */\nconst VOnLongPress = vOnLongPress;\n//#endregion\n//#region ../core/useActiveElement/component.ts\nconst UseActiveElement = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ element: useActiveElement(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseActiveElement\",\n\tprops: [\n\t\t\"deep\",\n\t\t\"triggerOnRemoval\",\n\t\t\"window\",\n\t\t\"document\"\n\t]\n});\n//#endregion\n//#region ../core/useBattery/component.ts\nconst UseBattery = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useBattery(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseBattery\",\n\tprops: [\"navigator\"]\n});\n//#endregion\n//#region ../core/useBrowserLocation/component.ts\nconst UseBrowserLocation = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useBrowserLocation(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseBrowserLocation\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/useClipboard/component.ts\nconst UseClipboard = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useClipboard(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseClipboard\",\n\tprops: [\n\t\t\"source\",\n\t\t\"read\",\n\t\t\"navigator\",\n\t\t\"copiedDuring\",\n\t\t\"legacy\"\n\t]\n});\n//#endregion\n//#region ../core/useColorMode/component.ts\nconst UseColorMode = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst mode = useColorMode(props);\n\tconst data = reactive({\n\t\tmode,\n\t\tsystem: mode.system,\n\t\tstore: mode.store\n\t});\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseColorMode\",\n\tprops: [\n\t\t\"attribute\",\n\t\t\"deep\",\n\t\t\"disableTransition\",\n\t\t\"emitAuto\",\n\t\t\"eventFilter\",\n\t\t\"flush\",\n\t\t\"initOnMounted\",\n\t\t\"initialValue\",\n\t\t\"listenToStorageChanges\",\n\t\t\"mergeDefaults\",\n\t\t\"modes\",\n\t\t\"onChanged\",\n\t\t\"onError\",\n\t\t\"selector\",\n\t\t\"serializer\",\n\t\t\"shallow\",\n\t\t\"storage\",\n\t\t\"storageKey\",\n\t\t\"storageRef\",\n\t\t\"window\",\n\t\t\"writeDefaults\"\n\t]\n});\n//#endregion\n//#region ../core/useDark/component.ts\nconst UseDark = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst isDark = useDark(props);\n\tconst data = reactive({\n\t\tisDark,\n\t\ttoggleDark: useToggle(isDark)\n\t});\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseDark\",\n\tprops: [\n\t\t\"attribute\",\n\t\t\"deep\",\n\t\t\"disableTransition\",\n\t\t\"emitAuto\",\n\t\t\"eventFilter\",\n\t\t\"flush\",\n\t\t\"initOnMounted\",\n\t\t\"initialValue\",\n\t\t\"listenToStorageChanges\",\n\t\t\"mergeDefaults\",\n\t\t\"onChanged\",\n\t\t\"onError\",\n\t\t\"selector\",\n\t\t\"serializer\",\n\t\t\"shallow\",\n\t\t\"storage\",\n\t\t\"storageKey\",\n\t\t\"storageRef\",\n\t\t\"valueDark\",\n\t\t\"valueLight\",\n\t\t\"window\",\n\t\t\"writeDefaults\"\n\t]\n});\n//#endregion\n//#region ../core/useDeviceMotion/component.ts\nconst UseDeviceMotion = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = useDeviceMotion(props);\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseDeviceMotion\",\n\tprops: [\n\t\t\"eventFilter\",\n\t\t\"requestPermissions\",\n\t\t\"window\"\n\t]\n});\n//#endregion\n//#region ../core/useDeviceOrientation/component.ts\nconst UseDeviceOrientation = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useDeviceOrientation(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseDeviceOrientation\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/useDevicePixelRatio/component.ts\nconst UseDevicePixelRatio = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useDevicePixelRatio(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseDevicePixelRatio\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/useDevicesList/component.ts\nconst UseDevicesList = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useDevicesList(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseDevicesList\",\n\tprops: [\n\t\t\"constraints\",\n\t\t\"navigator\",\n\t\t\"onUpdated\",\n\t\t\"requestPermissions\"\n\t]\n});\n//#endregion\n//#region ../core/useDocumentVisibility/component.ts\nconst UseDocumentVisibility = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ visibility: useDocumentVisibility(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseDocumentVisibility\",\n\tprops: [\"document\"]\n});\n//#endregion\n//#region ../core/useDraggable/component.ts\nconst UseDraggable = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst target = shallowRef();\n\tconst handle = computed(() => {\n\t\tvar _toValue;\n\t\treturn (_toValue = toValue(props.handle)) !== null && _toValue !== void 0 ? _toValue : target.value;\n\t});\n\tconst containerElement = computed(() => {\n\t\tvar _ref;\n\t\treturn (_ref = props.containerElement) !== null && _ref !== void 0 ? _ref : void 0;\n\t});\n\tconst disabled = computed(() => !!props.disabled);\n\tconst storageValue = props.storageKey && useStorage(props.storageKey, toValue(props.initialValue) || {\n\t\tx: 0,\n\t\ty: 0\n\t}, isClient ? props.storageType === \"session\" ? sessionStorage : localStorage : void 0);\n\tconst initialValue = storageValue || props.initialValue || {\n\t\tx: 0,\n\t\ty: 0\n\t};\n\tconst onEnd = (position, event) => {\n\t\tvar _props$onEnd;\n\t\t(_props$onEnd = props.onEnd) === null || _props$onEnd === void 0 || _props$onEnd.call(props, position, event);\n\t\tif (!storageValue) return;\n\t\tstorageValue.value.x = position.x;\n\t\tstorageValue.value.y = position.y;\n\t};\n\tconst data = reactive(useDraggable(target, {\n\t\t...props,\n\t\thandle,\n\t\tinitialValue,\n\t\tonEnd,\n\t\tdisabled,\n\t\tcontainerElement\n\t}));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", {\n\t\t\tref: target,\n\t\t\tstyle: `touch-action:none;${data.style}`\n\t\t}, slots.default(data));\n\t};\n}, {\n\tname: \"UseDraggable\",\n\tprops: [\n\t\t\"storageKey\",\n\t\t\"storageType\",\n\t\t\"initialValue\",\n\t\t\"exact\",\n\t\t\"preventDefault\",\n\t\t\"stopPropagation\",\n\t\t\"pointerTypes\",\n\t\t\"as\",\n\t\t\"handle\",\n\t\t\"axis\",\n\t\t\"onStart\",\n\t\t\"onMove\",\n\t\t\"onEnd\",\n\t\t\"disabled\",\n\t\t\"buttons\",\n\t\t\"containerElement\",\n\t\t\"capture\",\n\t\t\"draggingElement\"\n\t]\n});\n//#endregion\n//#region ../core/useElementBounding/component.ts\nconst UseElementBounding = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst target = shallowRef();\n\tconst data = reactive(useElementBounding(target, props));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"UseElementBounding\",\n\tprops: [\n\t\t\"as\",\n\t\t\"immediate\",\n\t\t\"reset\",\n\t\t\"updateTiming\",\n\t\t\"windowResize\",\n\t\t\"windowScroll\"\n\t]\n});\n//#endregion\n//#region ../core/useElementBounding/directive.ts\nconst vElementBounding = createDisposableDirective({ mounted(el, binding) {\n\tconst [handler, options] = typeof binding.value === \"function\" ? [binding.value, {}] : binding.value;\n\tconst { height, bottom, left, right, top, width, x, y } = useElementBounding(el, options);\n\twatch([\n\t\theight,\n\t\tbottom,\n\t\tleft,\n\t\tright,\n\t\ttop,\n\t\twidth,\n\t\tx,\n\t\ty\n\t], () => handler({\n\t\theight,\n\t\tbottom,\n\t\tleft,\n\t\tright,\n\t\ttop,\n\t\twidth,\n\t\tx,\n\t\ty\n\t}));\n} });\n//#endregion\n//#region ../core/useElementHover/directive.ts\nconst vElementHover = createDisposableDirective({ mounted(el, binding) {\n\tconst value = binding.value;\n\tif (typeof value === \"function\") watch(useElementHover(el), (v) => value(v));\n\telse {\n\t\tconst [handler, options] = value;\n\t\twatch(useElementHover(el, options), (v) => handler(v));\n\t}\n} });\n//#endregion\n//#region ../core/useElementSize/component.ts\nconst UseElementSize = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tvar _toValue, _toValue2;\n\tconst target = shallowRef();\n\tconst { width, height } = toRefs(props);\n\tconst data = reactive(useElementSize(target, {\n\t\twidth: (_toValue = toValue(width)) !== null && _toValue !== void 0 ? _toValue : 0,\n\t\theight: (_toValue2 = toValue(height)) !== null && _toValue2 !== void 0 ? _toValue2 : 0\n\t}, {\n\t\tbox: props.box,\n\t\twindow: props.window\n\t}));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"UseElementSize\",\n\tprops: [\n\t\t\"as\",\n\t\t\"box\",\n\t\t\"height\",\n\t\t\"width\",\n\t\t\"window\"\n\t]\n});\n//#endregion\n//#region ../core/useElementSize/directive.ts\nconst vElementSize = createDisposableDirective({ mounted(el, binding) {\n\tvar _binding$value;\n\tconst handler = typeof binding.value === \"function\" ? binding.value : (_binding$value = binding.value) === null || _binding$value === void 0 ? void 0 : _binding$value[0];\n\tconst { width, height } = useElementSize(el, ...typeof binding.value === \"function\" ? [] : binding.value.slice(1));\n\twatch([width, height], ([width, height]) => handler({\n\t\twidth,\n\t\theight\n\t}));\n} });\n//#endregion\n//#region ../core/useElementVisibility/component.ts\nconst UseElementVisibility = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst target = shallowRef();\n\tconst data = reactive(useElementVisibility(target, {\n\t\t...props,\n\t\tcontrols: true\n\t}));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"UseElementVisibility\",\n\tprops: [\n\t\t\"as\",\n\t\t\"once\",\n\t\t\"rootMargin\",\n\t\t\"scrollTarget\",\n\t\t\"threshold\",\n\t\t\"window\"\n\t]\n});\n//#endregion\n//#region ../core/useElementVisibility/directive.ts\nconst vElementVisibility = createDisposableDirective({ mounted(el, binding) {\n\tif (typeof binding.value === \"function\") {\n\t\tconst handler = binding.value;\n\t\twatch(useElementVisibility(el), (v) => handler(v), { immediate: true });\n\t} else {\n\t\tconst [handler, options] = binding.value;\n\t\tif (options === null || options === void 0 ? void 0 : options.controls) {\n\t\t\tconst state = useElementVisibility(el, options);\n\t\t\twatch(state.isVisible, () => handler(state), { immediate: true });\n\t\t} else watch(useElementVisibility(el, options), (v) => handler(v), { immediate: true });\n\t}\n} });\n//#endregion\n//#region ../core/useEyeDropper/component.ts\nconst UseEyeDropper = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useEyeDropper(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseEyeDropper\",\n\tprops: [\"initialValue\"]\n});\n//#endregion\n//#region ../core/useFullscreen/component.ts\nconst UseFullscreen = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst target = shallowRef();\n\tconst data = reactive(useFullscreen(target, props));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"UseFullscreen\",\n\tprops: [\n\t\t\"as\",\n\t\t\"autoExit\",\n\t\t\"document\"\n\t]\n});\n//#endregion\n//#region ../core/useGeolocation/component.ts\nconst UseGeolocation = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useGeolocation(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseGeolocation\",\n\tprops: [\n\t\t\"enableHighAccuracy\",\n\t\t\"immediate\",\n\t\t\"maximumAge\",\n\t\t\"navigator\",\n\t\t\"timeout\"\n\t]\n});\n//#endregion\n//#region ../core/useIdle/component.ts\nconst UseIdle = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useIdle(props.timeout, props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseIdle\",\n\tprops: [\n\t\t\"eventFilter\",\n\t\t\"events\",\n\t\t\"initialState\",\n\t\t\"listenForVisibilityChange\",\n\t\t\"timeout\",\n\t\t\"window\"\n\t]\n});\n//#endregion\n//#region ../core/useImage/component.ts\nconst UseImage = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useImage(props));\n\treturn () => {\n\t\tif (data.isLoading && slots.loading) return slots.loading(data);\n\t\telse if (data.error && slots.error) return slots.error(data.error);\n\t\tif (slots.default) return slots.default(data);\n\t\treturn h(props.as || \"img\", props);\n\t};\n}, {\n\tname: \"UseImage\",\n\tprops: [\n\t\t\"alt\",\n\t\t\"as\",\n\t\t\"class\",\n\t\t\"crossorigin\",\n\t\t\"decoding\",\n\t\t\"fetchPriority\",\n\t\t\"height\",\n\t\t\"ismap\",\n\t\t\"loading\",\n\t\t\"referrerPolicy\",\n\t\t\"sizes\",\n\t\t\"src\",\n\t\t\"srcset\",\n\t\t\"usemap\",\n\t\t\"width\"\n\t]\n});\n//#endregion\n//#region ../core/useInfiniteScroll/directive.ts\nconst vInfiniteScroll = createDisposableDirective({ mounted(el, binding) {\n\tif (typeof binding.value === \"function\") useInfiniteScroll(el, binding.value);\n\telse useInfiniteScroll(el, ...binding.value);\n} });\n//#endregion\n//#region ../core/useIntersectionObserver/directive.ts\nconst vIntersectionObserver = createDisposableDirective({ mounted(el, binding) {\n\tif (typeof binding.value === \"function\") useIntersectionObserver(el, binding.value);\n\telse useIntersectionObserver(el, ...binding.value);\n} });\n//#endregion\n//#region ../core/useMouse/component.ts\nconst UseMouse = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useMouse(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseMouse\",\n\tprops: [\n\t\t\"eventFilter\",\n\t\t\"initialValue\",\n\t\t\"resetOnTouchEnds\",\n\t\t\"scroll\",\n\t\t\"target\",\n\t\t\"touch\",\n\t\t\"type\",\n\t\t\"window\"\n\t]\n});\n//#endregion\n//#region ../core/useMouseInElement/component.ts\nconst UseMouseInElement = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst target = shallowRef();\n\tconst data = reactive(useMouseInElement(target, props));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"UseMouseInElement\",\n\tprops: [\n\t\t\"as\",\n\t\t\"eventFilter\",\n\t\t\"handleOutside\",\n\t\t\"initialValue\",\n\t\t\"resetOnTouchEnds\",\n\t\t\"scroll\",\n\t\t\"target\",\n\t\t\"touch\",\n\t\t\"type\",\n\t\t\"window\",\n\t\t\"windowResize\",\n\t\t\"windowScroll\"\n\t]\n});\n//#endregion\n//#region ../core/useMouseInElement/directive.ts\nconst vMouseInElement = createDisposableDirective({ mounted(el, binding) {\n\tconst [handler, options] = typeof binding.value === \"function\" ? [binding.value, {}] : binding.value;\n\twatch(reactiveOmit(reactive(useMouseInElement(el, options)), \"stop\"), (val) => handler(val));\n} });\n//#endregion\n//#region ../core/useMousePressed/component.ts\nconst UseMousePressed = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst target = shallowRef();\n\tconst data = reactive(useMousePressed({\n\t\t...props,\n\t\ttarget\n\t}));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"UseMousePressed\",\n\tprops: [\n\t\t\"as\",\n\t\t\"capture\",\n\t\t\"drag\",\n\t\t\"initialValue\",\n\t\t\"onPressed\",\n\t\t\"onReleased\",\n\t\t\"touch\",\n\t\t\"window\"\n\t]\n});\n//#endregion\n//#region ../core/useNetwork/component.ts\nconst UseNetwork = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useNetwork(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseNetwork\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/useNow/component.ts\nconst UseNow = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useNow({\n\t\t...props,\n\t\tcontrols: true\n\t}));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseNow\",\n\tprops: [\n\t\t\"scheduler\",\n\t\t\"immediate\",\n\t\t\"interval\"\n\t]\n});\n//#endregion\n//#region ../core/useObjectUrl/component.ts\nconst UseObjectUrl = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst { object } = toRefs$1(props);\n\tconst url = useObjectUrl(object);\n\treturn () => {\n\t\tif (slots.default && url.value) return slots.default(url.value);\n\t};\n}, {\n\tname: \"UseObjectUrl\",\n\tprops: [\"object\"]\n});\n//#endregion\n//#region ../core/useOffsetPagination/component.ts\nconst UseOffsetPagination = /* @__PURE__ */ defineComponent((props, { slots, emit }) => {\n\tconst data = reactive(useOffsetPagination({\n\t\t...props,\n\t\ttotal: toValue(props.total) || void 0,\n\t\tonPageChange(...args) {\n\t\t\tvar _props$onPageChange;\n\t\t\t(_props$onPageChange = props.onPageChange) === null || _props$onPageChange === void 0 || _props$onPageChange.call(props, ...args);\n\t\t\temit(\"page-change\", ...args);\n\t\t},\n\t\tonPageSizeChange(...args) {\n\t\t\tvar _props$onPageSizeChan;\n\t\t\t(_props$onPageSizeChan = props.onPageSizeChange) === null || _props$onPageSizeChan === void 0 || _props$onPageSizeChan.call(props, ...args);\n\t\t\temit(\"page-size-change\", ...args);\n\t\t},\n\t\tonPageCountChange(...args) {\n\t\t\tvar _props$onPageCountCha;\n\t\t\t(_props$onPageCountCha = props.onPageCountChange) === null || _props$onPageCountCha === void 0 || _props$onPageCountCha.call(props, ...args);\n\t\t\temit(\"page-count-change\", ...args);\n\t\t}\n\t}));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseOffsetPagination\",\n\tprops: [\n\t\t\"onPageChange\",\n\t\t\"onPageCountChange\",\n\t\t\"onPageSizeChange\",\n\t\t\"page\",\n\t\t\"pageSize\",\n\t\t\"total\"\n\t]\n});\n//#endregion\n//#region ../core/useOnline/component.ts\nconst UseOnline = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ isOnline: useOnline(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseOnline\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/usePageLeave/component.ts\nconst UsePageLeave = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ isLeft: usePageLeave(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UsePageLeave\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/usePointer/component.ts\nconst UsePointer = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst el = shallowRef(null);\n\tconst data = reactive(usePointer({\n\t\t...props,\n\t\ttarget: props.target === \"self\" ? el : defaultWindow\n\t}));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UsePointer\",\n\tprops: [\n\t\t\"initialValue\",\n\t\t\"pointerTypes\",\n\t\t\"target\",\n\t\t\"window\"\n\t]\n});\n//#endregion\n//#region ../core/usePointerLock/component.ts\nconst UsePointerLock = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst target = shallowRef();\n\tconst data = reactive(usePointerLock(target));\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { ref: target }, slots.default(data));\n\t};\n}, {\n\tname: \"UsePointerLock\",\n\tprops: [\"as\", \"document\"]\n});\n//#endregion\n//#region ../core/usePreferredColorScheme/component.ts\nconst UsePreferredColorScheme = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ colorScheme: usePreferredColorScheme(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UsePreferredColorScheme\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/usePreferredContrast/component.ts\nconst UsePreferredContrast = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ contrast: usePreferredContrast(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UsePreferredContrast\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/usePreferredDark/component.ts\nconst UsePreferredDark = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ prefersDark: usePreferredDark(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UsePreferredDark\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/usePreferredLanguages/component.ts\nconst UsePreferredLanguages = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ languages: usePreferredLanguages(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UsePreferredLanguages\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/usePreferredReducedMotion/component.ts\nconst UsePreferredReducedMotion = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ motion: usePreferredReducedMotion(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UsePreferredReducedMotion\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/usePreferredReducedTransparency/component.ts\nconst UsePreferredReducedTransparency = /* @__PURE__ */ defineComponent({\n\tname: \"UsePreferredReducedTransparency\",\n\tsetup(props, { slots }) {\n\t\tconst data = reactive({ transparency: usePreferredReducedTransparency() });\n\t\treturn () => {\n\t\t\tif (slots.default) return slots.default(data);\n\t\t};\n\t}\n});\n//#endregion\n//#region ../core/useResizeObserver/directive.ts\nconst vResizeObserver = createDisposableDirective({ mounted(el, binding) {\n\tif (typeof binding.value === \"function\") useResizeObserver(el, binding.value);\n\telse useResizeObserver(el, ...binding.value);\n} });\n//#endregion\n//#region ../core/useScreenSafeArea/component.ts\nconst UseScreenSafeArea = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useScreenSafeArea());\n\treturn () => {\n\t\tif (slots.default) return h(props.as || \"div\", { style: {\n\t\t\tpaddingTop: props.top ? data.top : \"\",\n\t\t\tpaddingRight: props.right ? data.right : \"\",\n\t\t\tpaddingBottom: props.bottom ? data.bottom : \"\",\n\t\t\tpaddingLeft: props.left ? data.left : \"\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tmaxHeight: \"100vh\",\n\t\t\tmaxWidth: \"100vw\",\n\t\t\toverflow: \"auto\"\n\t\t} }, slots.default(data));\n\t};\n}, {\n\tname: \"UseScreenSafeArea\",\n\tprops: [\n\t\t\"top\",\n\t\t\"right\",\n\t\t\"bottom\",\n\t\t\"left\"\n\t]\n});\n//#endregion\n//#region ../core/useScroll/directive.ts\nconst vScroll = createDisposableDirective({ mounted(el, binding) {\n\tif (typeof binding.value === \"function\") {\n\t\tconst handler = binding.value;\n\t\tconst state = useScroll(el, {\n\t\t\tonScroll() {\n\t\t\t\thandler(state);\n\t\t\t},\n\t\t\tonStop() {\n\t\t\t\thandler(state);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tconst [handler, options] = binding.value;\n\t\tconst state = useScroll(el, {\n\t\t\t...options,\n\t\t\tonScroll(e) {\n\t\t\t\tvar _options$onScroll;\n\t\t\t\t(_options$onScroll = options.onScroll) === null || _options$onScroll === void 0 || _options$onScroll.call(options, e);\n\t\t\t\thandler(state);\n\t\t\t},\n\t\t\tonStop(e) {\n\t\t\t\tvar _options$onStop;\n\t\t\t\t(_options$onStop = options.onStop) === null || _options$onStop === void 0 || _options$onStop.call(options, e);\n\t\t\t\thandler(state);\n\t\t\t}\n\t\t});\n\t}\n} });\n//#endregion\n//#region ../core/useScrollLock/directive.ts\nfunction onScrollLock() {\n\tlet isMounted = false;\n\tconst state = shallowRef(false);\n\treturn createDisposableDirective((el, binding) => {\n\t\tstate.value = binding.value;\n\t\tif (isMounted) return;\n\t\tisMounted = true;\n\t\tconst isLocked = useScrollLock(el, binding.value);\n\t\twatch(state, (v) => isLocked.value = v);\n\t});\n}\nconst vScrollLock = onScrollLock();\n//#endregion\n//#region ../core/useTimeAgo/component.ts\nconst UseTimeAgo = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useTimeAgo(() => props.time, {\n\t\t...props,\n\t\tcontrols: true\n\t}));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseTimeAgo\",\n\tprops: [\n\t\t\"fullDateFormatter\",\n\t\t\"max\",\n\t\t\"messages\",\n\t\t\"rounding\",\n\t\t\"showSecond\",\n\t\t\"time\",\n\t\t\"units\",\n\t\t\"updateInterval\"\n\t]\n});\n//#endregion\n//#region ../core/useTimestamp/component.ts\nconst UseTimestamp = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useTimestamp({\n\t\t...props,\n\t\tcontrols: true\n\t}));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseTimestamp\",\n\tprops: [\n\t\t\"scheduler\",\n\t\t\"callback\",\n\t\t\"immediate\",\n\t\t\"interval\",\n\t\t\"offset\"\n\t]\n});\n//#endregion\n//#region ../core/useVirtualList/component.ts\nconst UseVirtualList = /* @__PURE__ */ defineComponent((props, { slots, expose }) => {\n\tconst { list: listRef } = toRefs(props);\n\tconst { list, containerProps, wrapperProps, scrollTo } = useVirtualList(listRef, props.options);\n\texpose({ scrollTo });\n\tif (containerProps.style && typeof containerProps.style === \"object\" && !Array.isArray(containerProps.style)) containerProps.style.height = props.height || \"300px\";\n\treturn () => h(\"div\", { ...containerProps }, [h(\"div\", { ...wrapperProps.value }, list.value.map((item) => h(\"div\", { style: {\n\t\toverflow: \"hidden\",\n\t\theight: item.height\n\t} }, slots.default ? slots.default(item) : \"Please set content!\")))]);\n}, {\n\tname: \"UseVirtualList\",\n\tprops: [\n\t\t\"height\",\n\t\t\"list\",\n\t\t\"options\"\n\t]\n});\n//#endregion\n//#region ../core/useWindowFocus/component.ts\nconst UseWindowFocus = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive({ focused: useWindowFocus(props) });\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseWindowFocus\",\n\tprops: [\"window\"]\n});\n//#endregion\n//#region ../core/useWindowSize/component.ts\nconst UseWindowSize = /* @__PURE__ */ defineComponent((props, { slots }) => {\n\tconst data = reactive(useWindowSize(props));\n\treturn () => {\n\t\tif (slots.default) return slots.default(data);\n\t};\n}, {\n\tname: \"UseWindowSize\",\n\tprops: [\n\t\t\"includeScrollbar\",\n\t\t\"initialHeight\",\n\t\t\"initialWidth\",\n\t\t\"listenOrientation\",\n\t\t\"type\",\n\t\t\"window\"\n\t]\n});\n//#endregion\nexport { OnClickOutside, OnLongPress, UseActiveElement, UseBattery, UseBrowserLocation, UseClipboard, UseColorMode, UseDark, UseDeviceMotion, UseDeviceOrientation, UseDevicePixelRatio, UseDevicesList, UseDocumentVisibility, UseDraggable, UseElementBounding, UseElementSize, UseElementVisibility, UseEyeDropper, UseFullscreen, UseGeolocation, UseIdle, UseImage, UseMouse, UseMouseInElement, UseMousePressed, UseNetwork, UseNow, UseObjectUrl, UseOffsetPagination, UseOnline, UsePageLeave, UsePointer, UsePointerLock, UsePreferredColorScheme, UsePreferredContrast, UsePreferredDark, UsePreferredLanguages, UsePreferredReducedMotion, UsePreferredReducedTransparency, UseScreenSafeArea, UseTimeAgo, UseTimestamp, UseVirtualList, UseWindowFocus, UseWindowSize, VOnClickOutside, VOnLongPress, vElementBounding, vElementHover, vElementSize, vElementVisibility, vInfiniteScroll, vIntersectionObserver, vMouseInElement, vOnClickOutside, vOnKeyStroke, vOnLongPress, vResizeObserver, vScroll, vScrollLock };\n","const directive = {\n mounted(el) {\n el.focus();\n }\n};\nexport {\n directive as default\n};\n//# sourceMappingURL=index.mjs.map\n","// THIS FILE IS AUTOMATICALLY GENERATED DO NOT EDIT DIRECTLY\n// See update-tlds.js for encoding/decoding format\n// https://data.iana.org/TLD/tlds-alpha-by-domain.txt\nconst encodedTlds = 'aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2odyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3nd0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rck0msd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0axi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2oodside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2';\n// Internationalized domain names containing non-ASCII\nconst encodedUtlds = 'ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2';\n\n/**\n * Finite State Machine generation utilities\n */\n\n/**\n * @template T\n * @typedef {{ [group: string]: T[] }} Collections\n */\n\n/**\n * @typedef {{ [group: string]: true }} Flags\n */\n\n// Keys in scanner Collections instances\nconst numeric = 'numeric';\nconst ascii = 'ascii';\nconst alpha = 'alpha';\nconst asciinumeric = 'asciinumeric';\nconst alphanumeric = 'alphanumeric';\nconst domain = 'domain';\nconst emoji = 'emoji';\nconst scheme = 'scheme';\nconst slashscheme = 'slashscheme';\nconst whitespace = 'whitespace';\n\n/**\n * @template T\n * @param {string} name\n * @param {Collections} groups to register in\n * @returns {T[]} Current list of tokens in the given collection\n */\nfunction registerGroup(name, groups) {\n if (!(name in groups)) {\n groups[name] = [];\n }\n return groups[name];\n}\n\n/**\n * @template T\n * @param {T} t token to add\n * @param {Collections} groups\n * @param {Flags} flags\n */\nfunction addToGroups(t, flags, groups) {\n if (flags[numeric]) {\n flags[asciinumeric] = true;\n flags[alphanumeric] = true;\n }\n if (flags[ascii]) {\n flags[asciinumeric] = true;\n flags[alpha] = true;\n }\n if (flags[asciinumeric]) {\n flags[alphanumeric] = true;\n }\n if (flags[alpha]) {\n flags[alphanumeric] = true;\n }\n if (flags[alphanumeric]) {\n flags[domain] = true;\n }\n if (flags[emoji]) {\n flags[domain] = true;\n }\n for (const k in flags) {\n const group = registerGroup(k, groups);\n if (group.indexOf(t) < 0) {\n group.push(t);\n }\n }\n}\n\n/**\n * @template T\n * @param {T} t token to check\n * @param {Collections} groups\n * @returns {Flags} group flags that contain this token\n */\nfunction flagsForToken(t, groups) {\n const result = {};\n for (const c in groups) {\n if (groups[c].indexOf(t) >= 0) {\n result[c] = true;\n }\n }\n return result;\n}\n\n/**\n * @template T\n * @typedef {null | T } Transition\n */\n\n/**\n * Define a basic state machine state. j is the list of character transitions,\n * jr is the list of regex-match transitions, jd is the default state to\n * transition to t is the accepting token type, if any. If this is the terminal\n * state, then it does not emit a token.\n *\n * The template type T represents the type of the token this state accepts. This\n * should be a string (such as of the token exports in `text.js`) or a\n * MultiToken subclass (from `multi.js`)\n *\n * @template T\n * @param {T} [token] Token that this state emits\n */\nfunction State(token = null) {\n // this.n = null; // DEBUG: State name\n /** @type {{ [input: string]: State }} j */\n this.j = {}; // IMPLEMENTATION 1\n // this.j = []; // IMPLEMENTATION 2\n /** @type {[RegExp, State][]} jr */\n this.jr = [];\n /** @type {?State} jd */\n this.jd = null;\n /** @type {?T} t */\n this.t = token;\n}\n\n/**\n * Scanner token groups\n * @type Collections\n */\nState.groups = {};\nState.prototype = {\n accepts() {\n return !!this.t;\n },\n /**\n * Follow an existing transition from the given input to the next state.\n * Does not mutate.\n * @param {string} input character or token type to transition on\n * @returns {?State} the next state, if any\n */\n go(input) {\n const state = this;\n const nextState = state.j[input];\n if (nextState) {\n return nextState;\n }\n for (let i = 0; i < state.jr.length; i++) {\n const regex = state.jr[i][0];\n const nextState = state.jr[i][1]; // note: might be empty to prevent default jump\n if (nextState && regex.test(input)) {\n return nextState;\n }\n }\n // Nowhere left to jump! Return default, if any\n return state.jd;\n },\n /**\n * Whether the state has a transition for the given input. Set the second\n * argument to true to only look for an exact match (and not a default or\n * regular-expression-based transition)\n * @param {string} input\n * @param {boolean} exactOnly\n */\n has(input, exactOnly = false) {\n return exactOnly ? input in this.j : !!this.go(input);\n },\n /**\n * Short for \"transition all\"; create a transition from the array of items\n * in the given list to the same final resulting state.\n * @param {string | string[]} inputs Group of inputs to transition on\n * @param {Transition | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of token groups\n */\n ta(inputs, next, flags, groups) {\n for (let i = 0; i < inputs.length; i++) {\n this.tt(inputs[i], next, flags, groups);\n }\n },\n /**\n * Short for \"take regexp transition\"; defines a transition for this state\n * when it encounters a token which matches the given regular expression\n * @param {RegExp} regexp Regular expression transition (populate first)\n * @param {T | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of token groups\n * @returns {State} taken after the given input\n */\n tr(regexp, next, flags, groups) {\n groups = groups || State.groups;\n let nextState;\n if (next && next.j) {\n nextState = next;\n } else {\n // Token with maybe token groups\n nextState = new State(next);\n if (flags && groups) {\n addToGroups(next, flags, groups);\n }\n }\n this.jr.push([regexp, nextState]);\n return nextState;\n },\n /**\n * Short for \"take transitions\", will take as many sequential transitions as\n * the length of the given input and returns the\n * resulting final state.\n * @param {string | string[]} input\n * @param {T | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of token groups\n * @returns {State} taken after the given input\n */\n ts(input, next, flags, groups) {\n let state = this;\n const len = input.length;\n if (!len) {\n return state;\n }\n for (let i = 0; i < len - 1; i++) {\n state = state.tt(input[i]);\n }\n return state.tt(input[len - 1], next, flags, groups);\n },\n /**\n * Short for \"take transition\", this is a method for building/working with\n * state machines.\n *\n * If a state already exists for the given input, returns it.\n *\n * If a token is specified, that state will emit that token when reached by\n * the linkify engine.\n *\n * If no state exists, it will be initialized with some default transitions\n * that resemble existing default transitions.\n *\n * If a state is given for the second argument, that state will be\n * transitioned to on the given input regardless of what that input\n * previously did.\n *\n * Specify a token group flags to define groups that this token belongs to.\n * The token will be added to corresponding entires in the given groups\n * object.\n *\n * @param {string} input character, token type to transition on\n * @param {T | State} [next] Transition options\n * @param {Flags} [flags] Collections flags to add token to\n * @param {Collections} [groups] Master list of groups\n * @returns {State} taken after the given input\n */\n tt(input, next, flags, groups) {\n groups = groups || State.groups;\n const state = this;\n\n // Check if existing state given, just a basic transition\n if (next && next.j) {\n state.j[input] = next;\n return next;\n }\n const t = next;\n\n // Take the transition with the usual default mechanisms and use that as\n // a template for creating the next state\n let nextState,\n templateState = state.go(input);\n if (templateState) {\n nextState = new State();\n Object.assign(nextState.j, templateState.j);\n nextState.jr.push.apply(nextState.jr, templateState.jr);\n nextState.jd = templateState.jd;\n nextState.t = templateState.t;\n } else {\n nextState = new State();\n }\n if (t) {\n // Ensure newly token is in the same groups as the old token\n if (groups) {\n if (nextState.t && typeof nextState.t === 'string') {\n const allFlags = Object.assign(flagsForToken(nextState.t, groups), flags);\n addToGroups(t, allFlags, groups);\n } else if (flags) {\n addToGroups(t, flags, groups);\n }\n }\n nextState.t = t; // overwrite anything that was previously there\n }\n state.j[input] = nextState;\n return nextState;\n }\n};\n\n// Helper functions to improve minification (not exported outside linkifyjs module)\n\n/**\n * @template T\n * @param {State} state\n * @param {string | string[]} input\n * @param {Flags} [flags]\n * @param {Collections} [groups]\n */\nconst ta = (state, input, next, flags, groups) => state.ta(input, next, flags, groups);\n\n/**\n * @template T\n * @param {State} state\n * @param {RegExp} regexp\n * @param {T | State} [next]\n * @param {Flags} [flags]\n * @param {Collections} [groups]\n */\nconst tr = (state, regexp, next, flags, groups) => state.tr(regexp, next, flags, groups);\n\n/**\n * @template T\n * @param {State} state\n * @param {string | string[]} input\n * @param {T | State} [next]\n * @param {Flags} [flags]\n * @param {Collections} [groups]\n */\nconst ts = (state, input, next, flags, groups) => state.ts(input, next, flags, groups);\n\n/**\n * @template T\n * @param {State} state\n * @param {string} input\n * @param {T | State} [next]\n * @param {Collections} [groups]\n * @param {Flags} [flags]\n */\nconst tt = (state, input, next, flags, groups) => state.tt(input, next, flags, groups);\n\n/******************************************************************************\nText Tokens\nIdentifiers for token outputs from the regexp scanner\n******************************************************************************/\n\n// A valid web domain token\nconst WORD = 'WORD'; // only contains a-z\nconst UWORD = 'UWORD'; // contains letters other than a-z, used for IDN\nconst ASCIINUMERICAL = 'ASCIINUMERICAL'; // contains a-z, 0-9\nconst ALPHANUMERICAL = 'ALPHANUMERICAL'; // contains numbers and letters other than a-z, used for IDN\n\n// Special case of word\nconst LOCALHOST = 'LOCALHOST';\n\n// Valid top-level domain, special case of WORD (see tlds.js)\nconst TLD = 'TLD';\n\n// Valid IDN TLD, special case of UWORD (see tlds.js)\nconst UTLD = 'UTLD';\n\n// The scheme portion of a web URI protocol. Supported types include: `mailto`,\n// `file`, and user-defined custom protocols. Limited to schemes that contain\n// only letters\nconst SCHEME = 'SCHEME';\n\n// Similar to SCHEME, except makes distinction for schemes that must always be\n// followed by `://`, not just `:`. Supported types include `http`, `https`,\n// `ftp`, `ftps`\nconst SLASH_SCHEME = 'SLASH_SCHEME';\n\n// Any sequence of digits 0-9\nconst NUM = 'NUM';\n\n// Any number of consecutive whitespace characters that are not newline\nconst WS = 'WS';\n\n// New line (unix style)\nconst NL = 'NL'; // \\n\n\n// Opening/closing bracket classes\n// TODO: Rename OPEN -> LEFT and CLOSE -> RIGHT in v5 to fit with Unicode names\n// Also rename angle brackes to LESSTHAN and GREATER THAN\nconst OPENBRACE = 'OPENBRACE'; // {\nconst CLOSEBRACE = 'CLOSEBRACE'; // }\nconst OPENBRACKET = 'OPENBRACKET'; // [\nconst CLOSEBRACKET = 'CLOSEBRACKET'; // ]\nconst OPENPAREN = 'OPENPAREN'; // (\nconst CLOSEPAREN = 'CLOSEPAREN'; // )\nconst OPENANGLEBRACKET = 'OPENANGLEBRACKET'; // <\nconst CLOSEANGLEBRACKET = 'CLOSEANGLEBRACKET'; // >\nconst FULLWIDTHLEFTPAREN = 'FULLWIDTHLEFTPAREN'; // (\nconst FULLWIDTHRIGHTPAREN = 'FULLWIDTHRIGHTPAREN'; // )\nconst LEFTCORNERBRACKET = 'LEFTCORNERBRACKET'; // 「\nconst RIGHTCORNERBRACKET = 'RIGHTCORNERBRACKET'; // 」\nconst LEFTWHITECORNERBRACKET = 'LEFTWHITECORNERBRACKET'; // 『\nconst RIGHTWHITECORNERBRACKET = 'RIGHTWHITECORNERBRACKET'; // 』\nconst FULLWIDTHLESSTHAN = 'FULLWIDTHLESSTHAN'; // <\nconst FULLWIDTHGREATERTHAN = 'FULLWIDTHGREATERTHAN'; // >\n\n// Various symbols\nconst AMPERSAND = 'AMPERSAND'; // &\nconst APOSTROPHE = 'APOSTROPHE'; // '\nconst ASTERISK = 'ASTERISK'; // *\nconst AT = 'AT'; // @\nconst BACKSLASH = 'BACKSLASH'; // \\\nconst BACKTICK = 'BACKTICK'; // `\nconst CARET = 'CARET'; // ^\nconst COLON = 'COLON'; // :\nconst COMMA = 'COMMA'; // ,\nconst DOLLAR = 'DOLLAR'; // $\nconst DOT = 'DOT'; // .\nconst EQUALS = 'EQUALS'; // =\nconst EXCLAMATION = 'EXCLAMATION'; // !\nconst HYPHEN = 'HYPHEN'; // -\nconst PERCENT = 'PERCENT'; // %\nconst PIPE = 'PIPE'; // |\nconst PLUS = 'PLUS'; // +\nconst POUND = 'POUND'; // #\nconst QUERY = 'QUERY'; // ?\nconst QUOTE = 'QUOTE'; // \"\nconst FULLWIDTHMIDDLEDOT = 'FULLWIDTHMIDDLEDOT'; // ・\n\nconst SEMI = 'SEMI'; // ;\nconst SLASH = 'SLASH'; // /\nconst TILDE = 'TILDE'; // ~\nconst UNDERSCORE = 'UNDERSCORE'; // _\n\n// Emoji symbol\nconst EMOJI$1 = 'EMOJI';\n\n// Default token - anything that is not one of the above\nconst SYM = 'SYM';\n\nvar tk = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tALPHANUMERICAL: ALPHANUMERICAL,\n\tAMPERSAND: AMPERSAND,\n\tAPOSTROPHE: APOSTROPHE,\n\tASCIINUMERICAL: ASCIINUMERICAL,\n\tASTERISK: ASTERISK,\n\tAT: AT,\n\tBACKSLASH: BACKSLASH,\n\tBACKTICK: BACKTICK,\n\tCARET: CARET,\n\tCLOSEANGLEBRACKET: CLOSEANGLEBRACKET,\n\tCLOSEBRACE: CLOSEBRACE,\n\tCLOSEBRACKET: CLOSEBRACKET,\n\tCLOSEPAREN: CLOSEPAREN,\n\tCOLON: COLON,\n\tCOMMA: COMMA,\n\tDOLLAR: DOLLAR,\n\tDOT: DOT,\n\tEMOJI: EMOJI$1,\n\tEQUALS: EQUALS,\n\tEXCLAMATION: EXCLAMATION,\n\tFULLWIDTHGREATERTHAN: FULLWIDTHGREATERTHAN,\n\tFULLWIDTHLEFTPAREN: FULLWIDTHLEFTPAREN,\n\tFULLWIDTHLESSTHAN: FULLWIDTHLESSTHAN,\n\tFULLWIDTHMIDDLEDOT: FULLWIDTHMIDDLEDOT,\n\tFULLWIDTHRIGHTPAREN: FULLWIDTHRIGHTPAREN,\n\tHYPHEN: HYPHEN,\n\tLEFTCORNERBRACKET: LEFTCORNERBRACKET,\n\tLEFTWHITECORNERBRACKET: LEFTWHITECORNERBRACKET,\n\tLOCALHOST: LOCALHOST,\n\tNL: NL,\n\tNUM: NUM,\n\tOPENANGLEBRACKET: OPENANGLEBRACKET,\n\tOPENBRACE: OPENBRACE,\n\tOPENBRACKET: OPENBRACKET,\n\tOPENPAREN: OPENPAREN,\n\tPERCENT: PERCENT,\n\tPIPE: PIPE,\n\tPLUS: PLUS,\n\tPOUND: POUND,\n\tQUERY: QUERY,\n\tQUOTE: QUOTE,\n\tRIGHTCORNERBRACKET: RIGHTCORNERBRACKET,\n\tRIGHTWHITECORNERBRACKET: RIGHTWHITECORNERBRACKET,\n\tSCHEME: SCHEME,\n\tSEMI: SEMI,\n\tSLASH: SLASH,\n\tSLASH_SCHEME: SLASH_SCHEME,\n\tSYM: SYM,\n\tTILDE: TILDE,\n\tTLD: TLD,\n\tUNDERSCORE: UNDERSCORE,\n\tUTLD: UTLD,\n\tUWORD: UWORD,\n\tWORD: WORD,\n\tWS: WS\n});\n\n// Note that these two Unicode ones expand into a really big one with Babel\nconst ASCII_LETTER = /[a-z]/;\nconst LETTER = /\\p{L}/u; // Any Unicode character with letter data type\nconst EMOJI = /\\p{Emoji}/u; // Any Unicode emoji character\nconst EMOJI_VARIATION$1 = /\\ufe0f/;\nconst DIGIT = /\\d/;\nconst SPACE = /\\s/;\n\nvar regexp = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tASCII_LETTER: ASCII_LETTER,\n\tDIGIT: DIGIT,\n\tEMOJI: EMOJI,\n\tEMOJI_VARIATION: EMOJI_VARIATION$1,\n\tLETTER: LETTER,\n\tSPACE: SPACE\n});\n\n/**\n\tThe scanner provides an interface that takes a string of text as input, and\n\toutputs an array of tokens instances that can be used for easy URL parsing.\n*/\n\nconst CR = '\\r'; // carriage-return character\nconst LF = '\\n'; // line-feed character\nconst EMOJI_VARIATION = '\\ufe0f'; // Variation selector, follows heart and others\nconst EMOJI_JOINER = '\\u200d'; // zero-width joiner\nconst OBJECT_REPLACEMENT = '\\ufffc'; // whitespace placeholder that sometimes appears in rich text editors\n\nlet tlds = null,\n utlds = null; // don't change so only have to be computed once\n\n/**\n * Scanner output token:\n * - `t` is the token name (e.g., 'NUM', 'EMOJI', 'TLD')\n * - `v` is the value of the token (e.g., '123', '❤️', 'com')\n * - `s` is the start index of the token in the original string\n * - `e` is the end index of the token in the original string\n * @typedef {{t: string, v: string, s: number, e: number}} Token\n */\n\n/**\n * @template T\n * @typedef {{ [collection: string]: T[] }} Collections\n */\n\n/**\n * Initialize the scanner character-based state machine for the given start\n * state\n * @param {[string, boolean][]} customSchemes List of custom schemes, where each\n * item is a length-2 tuple with the first element set to the string scheme, and\n * the second element set to `true` if the `://` after the scheme is optional\n */\nfunction init$2(customSchemes = []) {\n // Frequently used states (name argument removed during minification)\n /** @type Collections */\n const groups = {}; // of tokens\n State.groups = groups;\n /** @type State */\n const Start = new State();\n if (tlds == null) {\n tlds = decodeTlds(encodedTlds);\n }\n if (utlds == null) {\n utlds = decodeTlds(encodedUtlds);\n }\n\n // States for special URL symbols that accept immediately after start\n tt(Start, \"'\", APOSTROPHE);\n tt(Start, '{', OPENBRACE);\n tt(Start, '}', CLOSEBRACE);\n tt(Start, '[', OPENBRACKET);\n tt(Start, ']', CLOSEBRACKET);\n tt(Start, '(', OPENPAREN);\n tt(Start, ')', CLOSEPAREN);\n tt(Start, '<', OPENANGLEBRACKET);\n tt(Start, '>', CLOSEANGLEBRACKET);\n tt(Start, '(', FULLWIDTHLEFTPAREN);\n tt(Start, ')', FULLWIDTHRIGHTPAREN);\n tt(Start, '「', LEFTCORNERBRACKET);\n tt(Start, '」', RIGHTCORNERBRACKET);\n tt(Start, '『', LEFTWHITECORNERBRACKET);\n tt(Start, '』', RIGHTWHITECORNERBRACKET);\n tt(Start, '<', FULLWIDTHLESSTHAN);\n tt(Start, '>', FULLWIDTHGREATERTHAN);\n tt(Start, '&', AMPERSAND);\n tt(Start, '*', ASTERISK);\n tt(Start, '@', AT);\n tt(Start, '`', BACKTICK);\n tt(Start, '^', CARET);\n tt(Start, ':', COLON);\n tt(Start, ',', COMMA);\n tt(Start, '$', DOLLAR);\n tt(Start, '.', DOT);\n tt(Start, '=', EQUALS);\n tt(Start, '!', EXCLAMATION);\n tt(Start, '-', HYPHEN);\n tt(Start, '%', PERCENT);\n tt(Start, '|', PIPE);\n tt(Start, '+', PLUS);\n tt(Start, '#', POUND);\n tt(Start, '?', QUERY);\n tt(Start, '\"', QUOTE);\n tt(Start, '/', SLASH);\n tt(Start, ';', SEMI);\n tt(Start, '~', TILDE);\n tt(Start, '_', UNDERSCORE);\n tt(Start, '\\\\', BACKSLASH);\n tt(Start, '・', FULLWIDTHMIDDLEDOT);\n const Num = tr(Start, DIGIT, NUM, {\n [numeric]: true\n });\n tr(Num, DIGIT, Num);\n const Asciinumeric = tr(Num, ASCII_LETTER, ASCIINUMERICAL, {\n [asciinumeric]: true\n });\n const Alphanumeric = tr(Num, LETTER, ALPHANUMERICAL, {\n [alphanumeric]: true\n });\n\n // State which emits a word token\n const Word = tr(Start, ASCII_LETTER, WORD, {\n [ascii]: true\n });\n tr(Word, DIGIT, Asciinumeric);\n tr(Word, ASCII_LETTER, Word);\n tr(Asciinumeric, DIGIT, Asciinumeric);\n tr(Asciinumeric, ASCII_LETTER, Asciinumeric);\n\n // Same as previous, but specific to non-fsm.ascii alphabet words\n const UWord = tr(Start, LETTER, UWORD, {\n [alpha]: true\n });\n tr(UWord, ASCII_LETTER); // Non-accepting\n tr(UWord, DIGIT, Alphanumeric);\n tr(UWord, LETTER, UWord);\n tr(Alphanumeric, DIGIT, Alphanumeric);\n tr(Alphanumeric, ASCII_LETTER); // Non-accepting\n tr(Alphanumeric, LETTER, Alphanumeric); // Non-accepting\n\n // Whitespace jumps\n // Tokens of only non-newline whitespace are arbitrarily long\n // If any whitespace except newline, more whitespace!\n const Nl = tt(Start, LF, NL, {\n [whitespace]: true\n });\n const Cr = tt(Start, CR, WS, {\n [whitespace]: true\n });\n const Ws = tr(Start, SPACE, WS, {\n [whitespace]: true\n });\n tt(Start, OBJECT_REPLACEMENT, Ws);\n tt(Cr, LF, Nl); // \\r\\n\n tt(Cr, OBJECT_REPLACEMENT, Ws);\n tr(Cr, SPACE, Ws);\n tt(Ws, CR); // non-accepting state to avoid mixing whitespaces\n tt(Ws, LF); // non-accepting state to avoid mixing whitespaces\n tr(Ws, SPACE, Ws);\n tt(Ws, OBJECT_REPLACEMENT, Ws);\n\n // Emoji tokens. They are not grouped by the scanner except in cases where a\n // zero-width joiner is present\n const Emoji = tr(Start, EMOJI, EMOJI$1, {\n [emoji]: true\n });\n tt(Emoji, '#'); // no transition, emoji regex seems to match #\n tr(Emoji, EMOJI, Emoji);\n tt(Emoji, EMOJI_VARIATION, Emoji);\n // tt(Start, EMOJI_VARIATION, Emoji); // This one is sketchy\n\n const EmojiJoiner = tt(Emoji, EMOJI_JOINER);\n tt(EmojiJoiner, '#');\n tr(EmojiJoiner, EMOJI, Emoji);\n // tt(EmojiJoiner, EMOJI_VARIATION, Emoji); // also sketchy\n\n // Generates states for top-level domains\n // Note that this is most accurate when tlds are in alphabetical order\n const wordjr = [[ASCII_LETTER, Word], [DIGIT, Asciinumeric]];\n const uwordjr = [[ASCII_LETTER, null], [LETTER, UWord], [DIGIT, Alphanumeric]];\n for (let i = 0; i < tlds.length; i++) {\n fastts(Start, tlds[i], TLD, WORD, wordjr);\n }\n for (let i = 0; i < utlds.length; i++) {\n fastts(Start, utlds[i], UTLD, UWORD, uwordjr);\n }\n addToGroups(TLD, {\n tld: true,\n ascii: true\n }, groups);\n addToGroups(UTLD, {\n utld: true,\n alpha: true\n }, groups);\n\n // Collect the states generated by different protocols. NOTE: If any new TLDs\n // get added that are also protocols, set the token to be the same as the\n // protocol to ensure parsing works as expected.\n fastts(Start, 'file', SCHEME, WORD, wordjr);\n fastts(Start, 'mailto', SCHEME, WORD, wordjr);\n fastts(Start, 'http', SLASH_SCHEME, WORD, wordjr);\n fastts(Start, 'https', SLASH_SCHEME, WORD, wordjr);\n fastts(Start, 'ftp', SLASH_SCHEME, WORD, wordjr);\n fastts(Start, 'ftps', SLASH_SCHEME, WORD, wordjr);\n addToGroups(SCHEME, {\n scheme: true,\n ascii: true\n }, groups);\n addToGroups(SLASH_SCHEME, {\n slashscheme: true,\n ascii: true\n }, groups);\n\n // Register custom schemes. Assumes each scheme is asciinumeric with hyphens\n customSchemes = customSchemes.sort((a, b) => a[0] > b[0] ? 1 : -1);\n for (let i = 0; i < customSchemes.length; i++) {\n const sch = customSchemes[i][0];\n const optionalSlashSlash = customSchemes[i][1];\n const flags = optionalSlashSlash ? {\n [scheme]: true\n } : {\n [slashscheme]: true\n };\n if (sch.indexOf('-') >= 0) {\n flags[domain] = true;\n } else if (!ASCII_LETTER.test(sch)) {\n flags[numeric] = true; // numbers only\n } else if (DIGIT.test(sch)) {\n flags[asciinumeric] = true;\n } else {\n flags[ascii] = true;\n }\n ts(Start, sch, sch, flags);\n }\n\n // Localhost token\n ts(Start, 'localhost', LOCALHOST, {\n ascii: true\n });\n\n // Set default transition for start state (some symbol)\n Start.jd = new State(SYM);\n return {\n start: Start,\n tokens: Object.assign({\n groups\n }, tk)\n };\n}\n\n/**\n\tGiven a string, returns an array of TOKEN instances representing the\n\tcomposition of that string.\n\n\t@method run\n\t@param {State} start scanner starting state\n\t@param {string} str input string to scan\n\t@return {Token[]} list of tokens, each with a type and value\n*/\nfunction run$1(start, str) {\n // State machine is not case sensitive, so input is tokenized in lowercased\n // form (still returns regular case). Uses selective `toLowerCase` because\n // lowercasing the entire string causes the length and character position to\n // vary in some non-English strings with V8-based runtimes.\n const iterable = stringToArray(str.replace(/[A-Z]/g, c => c.toLowerCase()));\n const charCount = iterable.length; // <= len if there are emojis, etc\n const tokens = []; // return value\n\n // cursor through the string itself, accounting for characters that have\n // width with length 2 such as emojis\n let cursor = 0;\n\n // Cursor through the array-representation of the string\n let charCursor = 0;\n\n // Tokenize the string\n while (charCursor < charCount) {\n let state = start;\n let nextState = null;\n let tokenLength = 0;\n let latestAccepting = null;\n let sinceAccepts = -1;\n let charsSinceAccepts = -1;\n while (charCursor < charCount && (nextState = state.go(iterable[charCursor]))) {\n state = nextState;\n\n // Keep track of the latest accepting state\n if (state.accepts()) {\n sinceAccepts = 0;\n charsSinceAccepts = 0;\n latestAccepting = state;\n } else if (sinceAccepts >= 0) {\n sinceAccepts += iterable[charCursor].length;\n charsSinceAccepts++;\n }\n tokenLength += iterable[charCursor].length;\n cursor += iterable[charCursor].length;\n charCursor++;\n }\n\n // Roll back to the latest accepting state\n cursor -= sinceAccepts;\n charCursor -= charsSinceAccepts;\n tokenLength -= sinceAccepts;\n\n // No more jumps, just make a new token from the last accepting one\n tokens.push({\n t: latestAccepting.t,\n // token type/name\n v: str.slice(cursor - tokenLength, cursor),\n // string value\n s: cursor - tokenLength,\n // start index\n e: cursor // end index (excluding)\n });\n }\n return tokens;\n}\n\n/**\n * Convert a String to an Array of characters, taking into account that some\n * characters like emojis take up two string indexes.\n *\n * Adapted from core-js (MIT license)\n * https://github.com/zloirock/core-js/blob/2d69cf5f99ab3ea3463c395df81e5a15b68f49d9/packages/core-js/internals/string-multibyte.js\n *\n * @function stringToArray\n * @param {string} str\n * @returns {string[]}\n */\nfunction stringToArray(str) {\n const result = [];\n const len = str.length;\n let index = 0;\n while (index < len) {\n let first = str.charCodeAt(index);\n let second;\n let char = first < 0xd800 || first > 0xdbff || index + 1 === len || (second = str.charCodeAt(index + 1)) < 0xdc00 || second > 0xdfff ? str[index] // single character\n : str.slice(index, index + 2); // two-index characters\n result.push(char);\n index += char.length;\n }\n return result;\n}\n\n/**\n * Fast version of ts function for when transition defaults are well known\n * @param {State} state\n * @param {string} input\n * @param {string} t\n * @param {string} defaultt\n * @param {[RegExp, State][]} jr\n * @returns {State}\n */\nfunction fastts(state, input, t, defaultt, jr) {\n let next;\n const len = input.length;\n for (let i = 0; i < len - 1; i++) {\n const char = input[i];\n if (state.j[char]) {\n next = state.j[char];\n } else {\n next = new State(defaultt);\n next.jr = jr.slice();\n state.j[char] = next;\n }\n state = next;\n }\n next = new State(t);\n next.jr = jr.slice();\n state.j[input[len - 1]] = next;\n return next;\n}\n\n/**\n * Converts a string of Top-Level Domain names encoded in update-tlds.js back\n * into a list of strings.\n * @param {str} encoded encoded TLDs string\n * @returns {str[]} original TLDs list\n */\nfunction decodeTlds(encoded) {\n const words = [];\n const stack = [];\n let i = 0;\n let digits = '0123456789';\n while (i < encoded.length) {\n let popDigitCount = 0;\n while (digits.indexOf(encoded[i + popDigitCount]) >= 0) {\n popDigitCount++; // encountered some digits, have to pop to go one level up trie\n }\n if (popDigitCount > 0) {\n words.push(stack.join('')); // whatever preceded the pop digits must be a word\n for (let popCount = parseInt(encoded.substring(i, i + popDigitCount), 10); popCount > 0; popCount--) {\n stack.pop();\n }\n i += popDigitCount;\n } else {\n stack.push(encoded[i]); // drop down a level into the trie\n i++;\n }\n }\n return words;\n}\n\n/**\n * An object where each key is a valid DOM Event Name such as `click` or `focus`\n * and each value is an event handler function.\n *\n * https://developer.mozilla.org/en-US/docs/Web/API/Element#events\n * @typedef {?{ [event: string]: Function }} EventListeners\n */\n\n/**\n * All formatted properties required to render a link, including `tagName`,\n * `attributes`, `content` and `eventListeners`.\n * @typedef {{ tagName: any, attributes: {[attr: string]: any}, content: string,\n * eventListeners: EventListeners }} IntermediateRepresentation\n */\n\n/**\n * Specify either an object described by the template type `O` or a function.\n *\n * The function takes a string value (usually the link's href attribute), the\n * link type (`'url'`, `'hashtag`', etc.) and an internal token representation\n * of the link. It should return an object of the template type `O`\n * @template O\n * @typedef {O | ((value: string, type: string, token: MultiToken) => O)} OptObj\n */\n\n/**\n * Specify either a function described by template type `F` or an object.\n *\n * Each key in the object should be a link type (`'url'`, `'hashtag`', etc.). Each\n * value should be a function with template type `F` that is called when the\n * corresponding link type is encountered.\n * @template F\n * @typedef {F | { [type: string]: F}} OptFn\n */\n\n/**\n * Specify either a value with template type `V`, a function that returns `V` or\n * an object where each value resolves to `V`.\n *\n * The function takes a string value (usually the link's href attribute), the\n * link type (`'url'`, `'hashtag`', etc.) and an internal token representation\n * of the link. It should return an object of the template type `V`\n *\n * For the object, each key should be a link type (`'url'`, `'hashtag`', etc.).\n * Each value should either have type `V` or a function that returns V. This\n * function similarly takes a string value and a token.\n *\n * Example valid types for `Opt`:\n *\n * ```js\n * 'hello'\n * (value, type, token) => 'world'\n * { url: 'hello', email: (value, token) => 'world'}\n * ```\n * @template V\n * @typedef {V | ((value: string, type: string, token: MultiToken) => V) | { [type: string]: V | ((value: string, token: MultiToken) => V) }} Opt\n */\n\n/**\n * See available options: https://linkify.js.org/docs/options.html\n * @typedef {{\n * \tdefaultProtocol?: string,\n * events?: OptObj,\n * \tformat?: Opt,\n * \tformatHref?: Opt,\n * \tnl2br?: boolean,\n * \ttagName?: Opt,\n * \ttarget?: Opt,\n * \trel?: Opt,\n * \tvalidate?: Opt,\n * \ttruncate?: Opt,\n * \tclassName?: Opt,\n * \tattributes?: OptObj<({ [attr: string]: any })>,\n * ignoreTags?: string[],\n * \trender?: OptFn<((ir: IntermediateRepresentation) => any)>\n * }} Opts\n */\n\n/**\n * @type Required\n */\nconst defaults = {\n defaultProtocol: 'http',\n events: null,\n format: noop,\n formatHref: noop,\n nl2br: false,\n tagName: 'a',\n target: null,\n rel: null,\n validate: true,\n truncate: Infinity,\n className: null,\n attributes: null,\n ignoreTags: [],\n render: null\n};\n\n/**\n * Utility class for linkify interfaces to apply specified\n * {@link Opts formatting and rendering options}.\n *\n * @param {Opts | Options} [opts] Option value overrides.\n * @param {(ir: IntermediateRepresentation) => any} [defaultRender] (For\n * internal use) default render function that determines how to generate an\n * HTML element based on a link token's derived tagName, attributes and HTML.\n * Similar to render option\n */\nfunction Options(opts, defaultRender = null) {\n let o = Object.assign({}, defaults);\n if (opts) {\n o = Object.assign(o, opts instanceof Options ? opts.o : opts);\n }\n\n // Ensure all ignored tags are uppercase\n const ignoredTags = o.ignoreTags;\n const uppercaseIgnoredTags = [];\n for (let i = 0; i < ignoredTags.length; i++) {\n uppercaseIgnoredTags.push(ignoredTags[i].toUpperCase());\n }\n /** @protected */\n this.o = o;\n if (defaultRender) {\n this.defaultRender = defaultRender;\n }\n this.ignoreTags = uppercaseIgnoredTags;\n}\nOptions.prototype = {\n o: defaults,\n /**\n * @type string[]\n */\n ignoreTags: [],\n /**\n * @param {IntermediateRepresentation} ir\n * @returns {any}\n */\n defaultRender(ir) {\n return ir;\n },\n /**\n * Returns true or false based on whether a token should be displayed as a\n * link based on the user options.\n * @param {MultiToken} token\n * @returns {boolean}\n */\n check(token) {\n return this.get('validate', token.toString(), token);\n },\n // Private methods\n\n /**\n * Resolve an option's value based on the value of the option and the given\n * params. If operator and token are specified and the target option is\n * callable, automatically calls the function with the given argument.\n * @template {keyof Opts} K\n * @param {K} key Name of option to use\n * @param {string} [operator] will be passed to the target option if it's a\n * function. If not specified, RAW function value gets returned\n * @param {MultiToken} [token] The token from linkify.tokenize\n * @returns {Opts[K] | any}\n */\n get(key, operator, token) {\n const isCallable = operator != null;\n let option = this.o[key];\n if (!option) {\n return option;\n }\n if (typeof option === 'object') {\n option = token.t in option ? option[token.t] : defaults[key];\n if (typeof option === 'function' && isCallable) {\n option = option(operator, token);\n }\n } else if (typeof option === 'function' && isCallable) {\n option = option(operator, token.t, token);\n }\n return option;\n },\n /**\n * @template {keyof Opts} L\n * @param {L} key Name of options object to use\n * @param {string} [operator]\n * @param {MultiToken} [token]\n * @returns {Opts[L] | any}\n */\n getObj(key, operator, token) {\n let obj = this.o[key];\n if (typeof obj === 'function' && operator != null) {\n obj = obj(operator, token.t, token);\n }\n return obj;\n },\n /**\n * Convert the given token to a rendered element that may be added to the\n * calling-interface's DOM\n * @param {MultiToken} token Token to render to an HTML element\n * @returns {any} Render result; e.g., HTML string, DOM element, React\n * Component, etc.\n */\n render(token) {\n const ir = token.render(this); // intermediate representation\n const renderFn = this.get('render', null, token) || this.defaultRender;\n return renderFn(ir, token.t, token);\n }\n};\nfunction noop(val) {\n return val;\n}\n\nvar options = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tOptions: Options,\n\tdefaults: defaults\n});\n\n/******************************************************************************\n\tMulti-Tokens\n\tTokens composed of arrays of TextTokens\n******************************************************************************/\n\n/**\n * @param {string} value\n * @param {Token[]} tokens\n */\nfunction MultiToken(value, tokens) {\n this.t = 'token';\n this.v = value;\n this.tk = tokens;\n}\n\n/**\n * Abstract class used for manufacturing tokens of text tokens. That is rather\n * than the value for a token being a small string of text, it's value an array\n * of text tokens.\n *\n * Used for grouping together URLs, emails, hashtags, and other potential\n * creations.\n * @class MultiToken\n * @property {string} t\n * @property {string} v\n * @property {Token[]} tk\n * @abstract\n */\nMultiToken.prototype = {\n isLink: false,\n /**\n * Return the string this token represents.\n * @return {string}\n */\n toString() {\n return this.v;\n },\n /**\n * What should the value for this token be in the `href` HTML attribute?\n * Returns the `.toString` value by default.\n * @param {string} [scheme]\n * @return {string}\n */\n toHref(scheme) {\n return this.toString();\n },\n /**\n * @param {Options} options Formatting options\n * @returns {string}\n */\n toFormattedString(options) {\n const val = this.toString();\n const truncate = options.get('truncate', val, this);\n const formatted = options.get('format', val, this);\n return truncate && formatted.length > truncate ? formatted.substring(0, truncate) + '…' : formatted;\n },\n /**\n *\n * @param {Options} options\n * @returns {string}\n */\n toFormattedHref(options) {\n return options.get('formatHref', this.toHref(options.get('defaultProtocol')), this);\n },\n /**\n * The start index of this token in the original input string\n * @returns {number}\n */\n startIndex() {\n return this.tk[0].s;\n },\n /**\n * The end index of this token in the original input string (up to this\n * index but not including it)\n * @returns {number}\n */\n endIndex() {\n return this.tk[this.tk.length - 1].e;\n },\n /**\n \tReturns an object of relevant values for this token, which includes keys\n \t* type - Kind of token ('url', 'email', etc.)\n \t* value - Original text\n \t* href - The value that should be added to the anchor tag's href\n \t\tattribute\n \t\t@method toObject\n \t@param {string} [protocol] `'http'` by default\n */\n toObject(protocol = defaults.defaultProtocol) {\n return {\n type: this.t,\n value: this.toString(),\n isLink: this.isLink,\n href: this.toHref(protocol),\n start: this.startIndex(),\n end: this.endIndex()\n };\n },\n /**\n *\n * @param {Options} options Formatting option\n */\n toFormattedObject(options) {\n return {\n type: this.t,\n value: this.toFormattedString(options),\n isLink: this.isLink,\n href: this.toFormattedHref(options),\n start: this.startIndex(),\n end: this.endIndex()\n };\n },\n /**\n * Whether this token should be rendered as a link according to the given options\n * @param {Options} options\n * @returns {boolean}\n */\n validate(options) {\n return options.get('validate', this.toString(), this);\n },\n /**\n * Return an object that represents how this link should be rendered.\n * @param {Options} options Formattinng options\n */\n render(options) {\n const token = this;\n const href = this.toHref(options.get('defaultProtocol'));\n const formattedHref = options.get('formatHref', href, this);\n const tagName = options.get('tagName', href, token);\n const content = this.toFormattedString(options);\n const attributes = {};\n const className = options.get('className', href, token);\n const target = options.get('target', href, token);\n const rel = options.get('rel', href, token);\n const attrs = options.getObj('attributes', href, token);\n const eventListeners = options.getObj('events', href, token);\n attributes.href = formattedHref;\n if (className) {\n attributes.class = className;\n }\n if (target) {\n attributes.target = target;\n }\n if (rel) {\n attributes.rel = rel;\n }\n if (attrs) {\n Object.assign(attributes, attrs);\n }\n return {\n tagName,\n attributes,\n content,\n eventListeners\n };\n }\n};\n\n/**\n * Create a new token that can be emitted by the parser state machine\n * @param {string} type readable type of the token\n * @param {object} props properties to assign or override, including isLink = true or false\n * @returns {new (value: string, tokens: Token[]) => MultiToken} new token class\n */\nfunction createTokenClass(type, props) {\n class Token extends MultiToken {\n constructor(value, tokens) {\n super(value, tokens);\n this.t = type;\n }\n }\n for (const p in props) {\n Token.prototype[p] = props[p];\n }\n Token.t = type;\n return Token;\n}\n\n/**\n\tRepresents a list of tokens making up a valid email address\n*/\nconst Email = createTokenClass('email', {\n isLink: true,\n toHref() {\n return 'mailto:' + this.toString();\n }\n});\n\n/**\n\tRepresents some plain text\n*/\nconst Text = createTokenClass('text');\n\n/**\n\tMulti-linebreak token - represents a line break\n\t@class Nl\n*/\nconst Nl = createTokenClass('nl');\n\n/**\n\tRepresents a list of text tokens making up a valid URL\n\t@class Url\n*/\nconst Url = createTokenClass('url', {\n isLink: true,\n /**\n \tLowercases relevant parts of the domain and adds the protocol if\n \trequired. Note that this will not escape unsafe HTML characters in the\n \tURL.\n \t\t@param {string} [scheme] default scheme (e.g., 'https')\n \t@return {string} the full href\n */\n toHref(scheme = defaults.defaultProtocol) {\n // Check if already has a prefix scheme\n return this.hasProtocol() ? this.v : `${scheme}://${this.v}`;\n },\n /**\n * Check whether this URL token has a protocol\n * @return {boolean}\n */\n hasProtocol() {\n const tokens = this.tk;\n return tokens.length >= 2 && tokens[0].t !== LOCALHOST && tokens[1].t === COLON;\n }\n});\n\nvar multi = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\tBase: MultiToken,\n\tEmail: Email,\n\tMultiToken: MultiToken,\n\tNl: Nl,\n\tText: Text,\n\tUrl: Url,\n\tcreateTokenClass: createTokenClass\n});\n\n/**\n\tNot exactly parser, more like the second-stage scanner (although we can\n\ttheoretically hotswap the code here with a real parser in the future... but\n\tfor a little URL-finding utility abstract syntax trees may be a little\n\toverkill).\n\n\tURL format: http://en.wikipedia.org/wiki/URI_scheme\n\tEmail format: http://en.wikipedia.org/wiki/EmailAddress (links to RFC in\n\treference)\n\n\t@module linkify\n\t@submodule parser\n\t@main run\n*/\n\nconst makeState = arg => new State(arg);\n\n/**\n * Generate the parser multi token-based state machine\n * @param {{ groups: Collections }} tokens\n */\nfunction init$1({\n groups\n}) {\n // Types of characters the URL can definitely end in\n const qsAccepting = groups.domain.concat([AMPERSAND, ASTERISK, AT, BACKSLASH, BACKTICK, CARET, DOLLAR, EQUALS, HYPHEN, NUM, PERCENT, PIPE, PLUS, POUND, SLASH, SYM, TILDE, UNDERSCORE]);\n\n // Types of tokens that can follow a URL and be part of the query string\n // but cannot be the very last characters\n // Characters that cannot appear in the URL at all should be excluded\n const qsNonAccepting = [APOSTROPHE, COLON, COMMA, DOT, EXCLAMATION, PERCENT, QUERY, QUOTE, SEMI, OPENANGLEBRACKET, CLOSEANGLEBRACKET, OPENBRACE, CLOSEBRACE, CLOSEBRACKET, OPENBRACKET, OPENPAREN, CLOSEPAREN, FULLWIDTHLEFTPAREN, FULLWIDTHRIGHTPAREN, LEFTCORNERBRACKET, RIGHTCORNERBRACKET, LEFTWHITECORNERBRACKET, RIGHTWHITECORNERBRACKET, FULLWIDTHLESSTHAN, FULLWIDTHGREATERTHAN];\n\n // For addresses without the mailto prefix\n // Tokens allowed in the localpart of the email\n const localpartAccepting = [AMPERSAND, APOSTROPHE, ASTERISK, BACKSLASH, BACKTICK, CARET, DOLLAR, EQUALS, HYPHEN, OPENBRACE, CLOSEBRACE, PERCENT, PIPE, PLUS, POUND, QUERY, SLASH, SYM, TILDE, UNDERSCORE];\n\n // The universal starting state.\n /**\n * @type State\n */\n const Start = makeState();\n const Localpart = tt(Start, TILDE); // Local part of the email address\n ta(Localpart, localpartAccepting, Localpart);\n ta(Localpart, groups.domain, Localpart);\n const Domain = makeState(),\n Scheme = makeState(),\n SlashScheme = makeState();\n ta(Start, groups.domain, Domain); // parsed string ends with a potential domain name (A)\n ta(Start, groups.scheme, Scheme); // e.g., 'mailto'\n ta(Start, groups.slashscheme, SlashScheme); // e.g., 'http'\n\n ta(Domain, localpartAccepting, Localpart);\n ta(Domain, groups.domain, Domain);\n const LocalpartAt = tt(Domain, AT); // Local part of the email address plus @\n\n tt(Localpart, AT, LocalpartAt); // close to an email address now\n\n // Local part of an email address can be e.g. 'http' or 'mailto'\n tt(Scheme, AT, LocalpartAt);\n tt(SlashScheme, AT, LocalpartAt);\n const LocalpartDot = tt(Localpart, DOT); // Local part of the email address plus '.' (localpart cannot end in .)\n ta(LocalpartDot, localpartAccepting, Localpart);\n ta(LocalpartDot, groups.domain, Localpart);\n const EmailDomain = makeState();\n ta(LocalpartAt, groups.domain, EmailDomain); // parsed string starts with local email info + @ with a potential domain name\n ta(EmailDomain, groups.domain, EmailDomain);\n const EmailDomainDot = tt(EmailDomain, DOT); // domain followed by DOT\n ta(EmailDomainDot, groups.domain, EmailDomain);\n const Email$1 = makeState(Email); // Possible email address (could have more tlds)\n ta(EmailDomainDot, groups.tld, Email$1);\n ta(EmailDomainDot, groups.utld, Email$1);\n tt(LocalpartAt, LOCALHOST, Email$1);\n\n // Hyphen can jump back to a domain name\n const EmailDomainHyphen = tt(EmailDomain, HYPHEN); // parsed string starts with local email info + @ with a potential domain name\n tt(EmailDomainHyphen, HYPHEN, EmailDomainHyphen);\n ta(EmailDomainHyphen, groups.domain, EmailDomain);\n ta(Email$1, groups.domain, EmailDomain);\n tt(Email$1, DOT, EmailDomainDot);\n tt(Email$1, HYPHEN, EmailDomainHyphen);\n\n // Account for dots and hyphens. Hyphens are usually parts of domain names\n // (but not TLDs)\n const DomainHyphen = tt(Domain, HYPHEN); // domain followed by hyphen\n const DomainDot = tt(Domain, DOT); // domain followed by DOT\n tt(DomainHyphen, HYPHEN, DomainHyphen);\n ta(DomainHyphen, groups.domain, Domain);\n ta(DomainDot, localpartAccepting, Localpart);\n ta(DomainDot, groups.domain, Domain);\n const DomainDotTld = makeState(Url); // Simplest possible URL with no query string\n ta(DomainDot, groups.tld, DomainDotTld);\n ta(DomainDot, groups.utld, DomainDotTld);\n ta(DomainDotTld, groups.domain, Domain);\n ta(DomainDotTld, localpartAccepting, Localpart);\n tt(DomainDotTld, DOT, DomainDot);\n tt(DomainDotTld, HYPHEN, DomainHyphen);\n tt(DomainDotTld, AT, LocalpartAt);\n const DomainDotTldColon = tt(DomainDotTld, COLON); // URL followed by colon (potential port number here)\n const DomainDotTldColonPort = makeState(Url); // TLD followed by a port number\n ta(DomainDotTldColon, groups.numeric, DomainDotTldColonPort);\n\n // Long URL with optional port and maybe query string\n const Url$1 = makeState(Url);\n\n // URL with extra symbols at the end, followed by an opening bracket\n const UrlNonaccept = makeState(); // URL followed by some symbols (will not be part of the final URL)\n\n // Query strings\n ta(Url$1, qsAccepting, Url$1);\n ta(Url$1, qsNonAccepting, UrlNonaccept);\n ta(UrlNonaccept, qsAccepting, Url$1);\n ta(UrlNonaccept, qsNonAccepting, UrlNonaccept);\n\n // Become real URLs after `SLASH` or `COLON NUM SLASH`\n // Here works with or without scheme:// prefix\n tt(DomainDotTld, SLASH, Url$1);\n tt(DomainDotTldColonPort, SLASH, Url$1);\n\n // Note that domains that begin with schemes are treated slighly differently\n const SchemeColon = tt(Scheme, COLON); // e.g., 'mailto:'\n const SlashSchemeColon = tt(SlashScheme, COLON); // e.g., 'http:'\n const SlashSchemeColonSlash = tt(SlashSchemeColon, SLASH); // e.g., 'http:/'\n\n const UriPrefix = tt(SlashSchemeColonSlash, SLASH); // e.g., 'http://'\n\n // Scheme states can transition to domain states\n ta(Scheme, groups.domain, Domain);\n tt(Scheme, DOT, DomainDot);\n tt(Scheme, HYPHEN, DomainHyphen);\n ta(SlashScheme, groups.domain, Domain);\n tt(SlashScheme, DOT, DomainDot);\n tt(SlashScheme, HYPHEN, DomainHyphen);\n\n // Force URL with scheme prefix followed by anything sane\n ta(SchemeColon, groups.domain, Url$1);\n tt(SchemeColon, SLASH, Url$1);\n tt(SchemeColon, QUERY, Url$1);\n ta(UriPrefix, groups.domain, Url$1);\n ta(UriPrefix, qsAccepting, Url$1);\n tt(UriPrefix, SLASH, Url$1);\n const bracketPairs = [[OPENBRACE, CLOSEBRACE],\n // {}\n [OPENBRACKET, CLOSEBRACKET],\n // []\n [OPENPAREN, CLOSEPAREN],\n // ()\n [OPENANGLEBRACKET, CLOSEANGLEBRACKET],\n // <>\n [FULLWIDTHLEFTPAREN, FULLWIDTHRIGHTPAREN],\n // ()\n [LEFTCORNERBRACKET, RIGHTCORNERBRACKET],\n // 「」\n [LEFTWHITECORNERBRACKET, RIGHTWHITECORNERBRACKET],\n // 『』\n [FULLWIDTHLESSTHAN, FULLWIDTHGREATERTHAN] // <>\n ];\n for (let i = 0; i < bracketPairs.length; i++) {\n const [OPEN, CLOSE] = bracketPairs[i];\n const UrlOpen = tt(Url$1, OPEN); // URL followed by open bracket\n\n // Continue not accepting for open brackets\n tt(UrlNonaccept, OPEN, UrlOpen);\n\n // URL that begins with an opening bracket, followed by a symbols.\n // Note that the final state can still be `UrlOpen` (if the URL has a\n // single opening bracket for some reason).\n const UrlOpenQ = makeState(Url);\n ta(UrlOpen, qsAccepting, UrlOpenQ);\n const UrlOpenSyms = makeState(); // UrlOpen followed by some symbols it cannot end it\n ta(UrlOpen, qsNonAccepting, UrlOpenSyms);\n\n // Closing bracket component. This character WILL be included in the URL.\n // Must come after qsNonAccepting (which includes all close-bracket tokens)\n // so that CLOSE -> Url wins over CLOSE -> UrlOpenSyms.\n tt(UrlOpen, CLOSE, Url$1);\n\n // URL that begins with an opening bracket, followed by some symbols\n ta(UrlOpenQ, qsAccepting, UrlOpenQ);\n ta(UrlOpenQ, qsNonAccepting, UrlOpenSyms);\n ta(UrlOpenSyms, qsAccepting, UrlOpenQ);\n ta(UrlOpenSyms, qsNonAccepting, UrlOpenSyms);\n\n // Close brace/bracket to become regular URL\n tt(UrlOpenQ, CLOSE, Url$1);\n tt(UrlOpenSyms, CLOSE, Url$1);\n }\n tt(Start, LOCALHOST, DomainDotTld); // localhost is a valid URL state\n tt(Start, NL, Nl); // single new line\n\n return {\n start: Start,\n tokens: tk\n };\n}\n\n/**\n * Run the parser state machine on a list of scanned string-based tokens to\n * create a list of multi tokens, each of which represents a URL, email address,\n * plain text, etc.\n *\n * @param {State} start parser start state\n * @param {string} input the original input used to generate the given tokens\n * @param {Token[]} tokens list of scanned tokens\n * @returns {MultiToken[]}\n */\nfunction run(start, input, tokens) {\n let len = tokens.length;\n let cursor = 0;\n let multis = [];\n let textTokens = [];\n while (cursor < len) {\n let state = start;\n let secondState = null;\n let nextState = null;\n let multiLength = 0;\n let latestAccepting = null;\n let sinceAccepts = -1;\n while (cursor < len && !(secondState = state.go(tokens[cursor].t))) {\n // Starting tokens with nowhere to jump to.\n // Consider these to be just plain text\n textTokens.push(tokens[cursor++]);\n }\n while (cursor < len && (nextState = secondState || state.go(tokens[cursor].t))) {\n // Get the next state\n secondState = null;\n state = nextState;\n\n // Keep track of the latest accepting state\n if (state.accepts()) {\n sinceAccepts = 0;\n latestAccepting = state;\n } else if (sinceAccepts >= 0) {\n sinceAccepts++;\n }\n cursor++;\n multiLength++;\n }\n if (sinceAccepts < 0) {\n // No accepting state was found, part of a regular text token add\n // the first text token to the text tokens array and try again from\n // the next\n cursor -= multiLength;\n if (cursor < len) {\n textTokens.push(tokens[cursor]);\n cursor++;\n }\n } else {\n // Accepting state!\n // First close off the textTokens (if available)\n if (textTokens.length > 0) {\n multis.push(initMultiToken(Text, input, textTokens));\n textTokens = [];\n }\n\n // Roll back to the latest accepting state\n cursor -= sinceAccepts;\n multiLength -= sinceAccepts;\n\n // Create a new multitoken\n const Multi = latestAccepting.t;\n const subtokens = tokens.slice(cursor - multiLength, cursor);\n multis.push(initMultiToken(Multi, input, subtokens));\n }\n }\n\n // Finally close off the textTokens (if available)\n if (textTokens.length > 0) {\n multis.push(initMultiToken(Text, input, textTokens));\n }\n return multis;\n}\n\n/**\n * Utility function for instantiating a new multitoken with all the relevant\n * fields during parsing.\n * @param {new (value: string, tokens: Token[]) => MultiToken} Multi class to instantiate\n * @param {string} input original input string\n * @param {Token[]} tokens consecutive tokens scanned from input string\n * @returns {MultiToken}\n */\nfunction initMultiToken(Multi, input, tokens) {\n const startIdx = tokens[0].s;\n const endIdx = tokens[tokens.length - 1].e;\n const value = input.slice(startIdx, endIdx);\n return new Multi(value, tokens);\n}\n\nconst warn = typeof console !== 'undefined' && console && console.warn || (() => {});\nconst warnAdvice = 'until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.';\n\n// Side-effect initialization state\nconst INIT = {\n scanner: null,\n parser: null,\n tokenQueue: [],\n pluginQueue: [],\n customSchemes: [],\n initialized: false\n};\n\n/**\n * @typedef {{\n * \tstart: State,\n * \ttokens: { groups: Collections } & typeof tk\n * }} ScannerInit\n */\n\n/**\n * @typedef {{\n * \tstart: State,\n * \ttokens: typeof multi\n * }} ParserInit\n */\n\n/**\n * @typedef {(arg: { scanner: ScannerInit }) => void} TokenPlugin\n */\n\n/**\n * @typedef {(arg: { scanner: ScannerInit, parser: ParserInit }) => void} Plugin\n */\n\n/**\n * De-register all plugins and reset the internal state-machine. Used for\n * testing; not required in practice.\n * @private\n */\nfunction reset() {\n State.groups = {};\n INIT.scanner = null;\n INIT.parser = null;\n INIT.tokenQueue = [];\n INIT.pluginQueue = [];\n INIT.customSchemes = [];\n INIT.initialized = false;\n return INIT;\n}\n\n/**\n * Register a token plugin to allow the scanner to recognize additional token\n * types before the parser state machine is constructed from the results.\n * @param {string} name of plugin to register\n * @param {TokenPlugin} plugin function that accepts the scanner state machine\n * and available scanner tokens and collections and extends the state machine to\n * recognize additional tokens or groups.\n */\nfunction registerTokenPlugin(name, plugin) {\n if (typeof plugin !== 'function') {\n throw new Error(`linkifyjs: Invalid token plugin ${plugin} (expects function)`);\n }\n for (let i = 0; i < INIT.tokenQueue.length; i++) {\n if (name === INIT.tokenQueue[i][0]) {\n warn(`linkifyjs: token plugin \"${name}\" already registered - will be overwritten`);\n INIT.tokenQueue[i] = [name, plugin];\n return;\n }\n }\n INIT.tokenQueue.push([name, plugin]);\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register token plugin \"${name}\" ${warnAdvice}`);\n }\n}\n\n/**\n * Register a linkify plugin\n * @param {string} name of plugin to register\n * @param {Plugin} plugin function that accepts the parser state machine and\n * extends the parser to recognize additional link types\n */\nfunction registerPlugin(name, plugin) {\n if (typeof plugin !== 'function') {\n throw new Error(`linkifyjs: Invalid plugin ${plugin} (expects function)`);\n }\n for (let i = 0; i < INIT.pluginQueue.length; i++) {\n if (name === INIT.pluginQueue[i][0]) {\n warn(`linkifyjs: plugin \"${name}\" already registered - will be overwritten`);\n INIT.pluginQueue[i] = [name, plugin];\n return;\n }\n }\n INIT.pluginQueue.push([name, plugin]);\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register plugin \"${name}\" ${warnAdvice}`);\n }\n}\n\n/**\n * Detect URLs with the following additional protocol. Anything with format\n * \"protocol://...\" will be considered a link. If `optionalSlashSlash` is set to\n * `true`, anything with format \"protocol:...\" will be considered a link.\n * @param {string} scheme\n * @param {boolean} [optionalSlashSlash]\n */\nfunction registerCustomProtocol(scheme, optionalSlashSlash = false) {\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register custom scheme \"${scheme}\" ${warnAdvice}`);\n }\n if (!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(scheme)) {\n throw new Error(`linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or \"-\"\n2. Cannot start or end with \"-\"\n3. \"-\" cannot repeat`);\n }\n INIT.customSchemes.push([scheme, optionalSlashSlash]);\n}\n\n/**\n * Initialize the linkify state machine. Called automatically the first time\n * linkify is called on a string, but may be called manually as well.\n */\nfunction init() {\n // Initialize scanner state machine and plugins\n INIT.scanner = init$2(INIT.customSchemes);\n for (let i = 0; i < INIT.tokenQueue.length; i++) {\n INIT.tokenQueue[i][1]({\n scanner: INIT.scanner\n });\n }\n\n // Initialize parser state machine and plugins\n INIT.parser = init$1(INIT.scanner.tokens);\n for (let i = 0; i < INIT.pluginQueue.length; i++) {\n INIT.pluginQueue[i][1]({\n scanner: INIT.scanner,\n parser: INIT.parser\n });\n }\n INIT.initialized = true;\n return INIT;\n}\n\n/**\n * Parse a string into tokens that represent linkable and non-linkable sub-components\n * @param {string} str\n * @return {MultiToken[]} tokens\n */\nfunction tokenize(str) {\n if (!INIT.initialized) {\n init();\n }\n return run(INIT.parser.start, str, run$1(INIT.scanner.start, str));\n}\ntokenize.scan = run$1; // for testing\n\n/**\n * Find a list of linkable items in the given string.\n * @param {string} str string to find links in\n * @param {string | Opts} [type] either formatting options or specific type of\n * links to find, e.g., 'url' or 'email'\n * @param {Opts} [opts] formatting options for final output. Cannot be specified\n * if opts already provided in `type` argument\n */\nfunction find(str, type = null, opts = null) {\n if (type && typeof type === 'object') {\n if (opts) {\n throw Error(`linkifyjs: Invalid link type ${type}; must be a string`);\n }\n opts = type;\n type = null;\n }\n const options = new Options(opts);\n const tokens = tokenize(str);\n const filtered = [];\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n if (token.isLink && (!type || token.t === type) && options.check(token)) {\n filtered.push(token.toFormattedObject(options));\n }\n }\n return filtered;\n}\n\n/**\n * Is the given string valid linkable text of some sort. Note that this does not\n * trim the text for you.\n *\n * Optionally pass in a second `type` param, which is the type of link to test\n * for.\n *\n * For example,\n *\n * linkify.test(str, 'email');\n *\n * Returns `true` if str is a valid email.\n * @param {string} str string to test for links\n * @param {string} [type] optional specific link type to look for\n * @returns boolean true/false\n */\nfunction test(str, type = null) {\n const tokens = tokenize(str);\n return tokens.length === 1 && tokens[0].isLink && (!type || tokens[0].t === type);\n}\n\nexport { MultiToken, Options, State, createTokenClass, find, init, multi, options, regexp, registerCustomProtocol, registerPlugin, registerTokenPlugin, reset, stringToArray, test, multi as text, tokenize };\n","import escapeHTML from \"escape-html\";\nimport { Options, tokenize } from \"linkifyjs\";\nfunction linkifyString(str) {\n const options = new Options({\n defaultProtocol: \"https\",\n target: \"_blank\",\n className: \"external linkified\",\n attributes: {\n rel: \"nofollow noopener noreferrer\"\n }\n }, defaultRender);\n const tokens = tokenize(str);\n const result = [];\n for (const token of tokens) {\n if (token.t === \"nl\" && options.get(\"nl2br\")) {\n result.push(\"
\\n\");\n } else if (!token.isLink || !options.check(token)) {\n result.push(escapeHTML(token.toString()));\n } else {\n result.push(options.render(token));\n }\n }\n return result.join(\"\");\n}\nfunction escapeAttr(href) {\n return href.replace(/\"/g, \""\");\n}\nfunction attributesToString(attributes) {\n const result = [];\n for (const attr in attributes) {\n const val = attributes[attr] + \"\";\n result.push(`${attr}=\"${escapeAttr(val)}\"`);\n }\n return result.join(\" \");\n}\nfunction defaultRender({ tagName, attributes, content }) {\n return `<${tagName} ${attributesToString(attributes)}>${escapeHTML(content)}`;\n}\nconst directive = function(el, { value }) {\n if (value?.linkify === true) {\n el.innerHTML = linkifyString(value.text);\n }\n};\nexport {\n directive as default\n};\n//# sourceMappingURL=index.mjs.map\n","import { defineComponent, inject, withDirectives, openBlock, createElementBlock, createTextVNode, toDisplayString, unref } from \"vue\";\nimport directive from \"../directives/Linkify/index.mjs\";\nconst _hoisted_1 = [\"title\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcAppSidebarHeader\",\n props: {\n name: {},\n title: {},\n linkify: { type: Boolean }\n },\n setup(__props) {\n const headerRef = inject(\"NcAppSidebar:header:ref\");\n return (_ctx, _cache) => {\n return withDirectives((openBlock(), createElementBlock(\"h2\", {\n ref_key: \"headerRef\",\n ref: headerRef,\n tabindex: \"-1\",\n title: __props.title\n }, [\n createTextVNode(toDisplayString(__props.name), 1)\n ], 8, _hoisted_1)), [\n [unref(directive), { text: __props.name, linkify: __props.linkify }]\n ]);\n };\n }\n});\nexport {\n _sfc_main as _\n};\n//# sourceMappingURL=NcAppSidebarHeader.vue_vue_type_script_setup_true_lang-C-QhdyiN.mjs.map\n","import '../assets/NcEmptyContent-DJMDuGVz.css';\nimport { defineComponent, openBlock, createElementBlock, unref, renderSlot, createCommentVNode, createTextVNode, toDisplayString } from \"vue\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _hoisted_1 = [\"aria-labelledby\"];\nconst _hoisted_2 = {\n key: 0,\n class: \"empty-content__icon\",\n \"aria-hidden\": \"true\"\n};\nconst _hoisted_3 = [\"id\"];\nconst _hoisted_4 = {\n key: 2,\n class: \"empty-content__description\"\n};\nconst _hoisted_5 = {\n key: 3,\n class: \"empty-content__action\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcEmptyContent\",\n props: {\n description: { default: \"\" },\n name: { default: \"\" }\n },\n setup(__props) {\n const nameId = createElementId();\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n \"aria-labelledby\": unref(nameId),\n class: \"empty-content\",\n role: \"note\"\n }, [\n _ctx.$slots.icon ? (openBlock(), createElementBlock(\"div\", _hoisted_2, [\n renderSlot(_ctx.$slots, \"icon\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true),\n __props.name !== \"\" || _ctx.$slots.name ? (openBlock(), createElementBlock(\"div\", {\n key: 1,\n id: unref(nameId),\n class: \"empty-content__name\"\n }, [\n renderSlot(_ctx.$slots, \"name\", {}, () => [\n createTextVNode(toDisplayString(__props.name), 1)\n ], true)\n ], 8, _hoisted_3)) : createCommentVNode(\"\", true),\n __props.description !== \"\" || _ctx.$slots.description ? (openBlock(), createElementBlock(\"p\", _hoisted_4, [\n renderSlot(_ctx.$slots, \"description\", {}, () => [\n createTextVNode(toDisplayString(__props.description), 1)\n ], true)\n ])) : createCommentVNode(\"\", true),\n _ctx.$slots.action ? (openBlock(), createElementBlock(\"div\", _hoisted_5, [\n renderSlot(_ctx.$slots, \"action\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true)\n ], 8, _hoisted_1);\n };\n }\n});\nconst NcEmptyContent = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-8609a4c1\"]]);\nexport {\n NcEmptyContent as N\n};\n//# sourceMappingURL=NcEmptyContent-CGAPqk4S.mjs.map\n","import '../assets/NcAppSidebar-oJQ8kUb0.css';\nimport { vOnClickOutside } from \"@vueuse/components\";\nimport { createFocusTrap } from \"focus-trap\";\nimport { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode, defineComponent, useModel, normalizeClass, unref, createVNode, withCtx, mergeModels, resolveComponent, withKeys, withModifiers, Fragment, renderList, createBlock, renderSlot, resolveDirective, Transition, withDirectives, Teleport, normalizeStyle, vShow, createTextVNode, warn, ref, provide } from \"vue\";\nimport { I as IconArrowRight } from \"./ArrowRight-B1ncAhus.mjs\";\nimport { I as IconClose } from \"./Close-CuhcJnX2.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { getCanonicalLocale } from \"@nextcloud/l10n\";\nimport { _ as _sfc_main$6 } from \"./NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs\";\nimport { i as isLegacy34 } from \"./legacy-BoqDmOCa.mjs\";\nimport { useIsSmallMobile } from \"../composables/useIsMobile/index.mjs\";\nimport directive from \"../directives/Focus/index.mjs\";\nimport { r as register, V as t15, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { g as getTrapStack } from \"./focusTrap-HJQ4pqHV.mjs\";\nimport { i as isSlotPopulated, N as NcActions } from \"./NcActions-C-wDqSrv.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { _ as _sfc_main$7 } from \"./NcAppSidebarHeader.vue_vue_type_script_setup_true_lang-C-QhdyiN.mjs\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { C as CONTENT_SELECTOR_KEY } from \"./constants-Ciwvl5xb.mjs\";\nimport { N as NcEmptyContent } from \"./NcEmptyContent-CGAPqk4S.mjs\";\nimport { N as NcLoadingIcon } from \"./NcLoadingIcon-BOVpFVQz.mjs\";\nconst _sfc_main$5 = {\n name: \"DockRightIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$5 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$3 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$3 = { d: \"M20 4H4A2 2 0 0 0 2 6V18A2 2 0 0 0 4 20H20A2 2 0 0 0 22 18V6A2 2 0 0 0 20 4M15 18H4V6H15Z\" };\nconst _hoisted_4$3 = { key: 0 };\nfunction _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon dock-right-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$3, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$3, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$3))\n ], 16, _hoisted_1$5);\n}\nconst IconDockRight = /* @__PURE__ */ _export_sfc(_sfc_main$5, [[\"render\", _sfc_render$4]]);\nconst _sfc_main$4 = {\n name: \"StarIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$4 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$2 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$2 = { d: \"M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z\" };\nconst _hoisted_4$2 = { key: 0 };\nfunction _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon star-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$2, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$2, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$2))\n ], 16, _hoisted_1$4);\n}\nconst IconStar = /* @__PURE__ */ _export_sfc(_sfc_main$4, [[\"render\", _sfc_render$3]]);\nconst _sfc_main$3 = {\n name: \"StarOutlineIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$3 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$1 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$1 = { d: \"M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z\" };\nconst _hoisted_4$1 = { key: 0 };\nfunction _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon star-outline-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$1, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$1, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$1))\n ], 16, _hoisted_1$3);\n}\nconst IconStarOutline = /* @__PURE__ */ _export_sfc(_sfc_main$3, [[\"render\", _sfc_render$2]]);\nconst _hoisted_1$2 = [\"aria-selected\", \"tabindex\"];\nconst _sfc_main$2 = /* @__PURE__ */ defineComponent({\n __name: \"NcAppSidebarTabsButton\",\n props: /* @__PURE__ */ mergeModels({\n tab: {}\n }, {\n \"selected\": { type: Boolean, ...{ required: true } },\n \"selectedModifiers\": {}\n }),\n emits: [\"update:selected\"],\n setup(__props) {\n const selected = useModel(__props, \"selected\");\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"button\", {\n class: normalizeClass([\"button-vue\", [_ctx.$style.sidebarTabsButton, {\n [_ctx.$style.sidebarTabsButton_selected]: selected.value,\n [_ctx.$style.sidebarTabsButton_legacy]: unref(isLegacy34)\n }]]),\n role: \"tab\",\n \"aria-selected\": selected.value,\n tabindex: selected.value ? 0 : -1,\n onClick: _cache[0] || (_cache[0] = ($event) => selected.value = true)\n }, [\n createElementVNode(\"span\", {\n class: normalizeClass(_ctx.$style.sidebarTabsButton__icon)\n }, [\n createVNode(_sfc_main$6, {\n vnodes: __props.tab.renderIcon()\n }, {\n default: withCtx(() => [\n createElementVNode(\"span\", {\n class: normalizeClass([_ctx.$style.sidebarTabsButton__legacyIcon, __props.tab.icon])\n }, null, 2)\n ]),\n _: 1\n }, 8, [\"vnodes\"])\n ], 2),\n createElementVNode(\"span\", {\n class: normalizeClass(_ctx.$style.sidebarTabsButton__name)\n }, toDisplayString(__props.tab.name), 3)\n ], 10, _hoisted_1$2);\n };\n }\n});\nconst sidebarTabsButton = \"_sidebarTabsButton_OCROY\";\nconst sidebarTabsButton_legacy = \"_sidebarTabsButton_legacy_e9-y9\";\nconst sidebarTabsButton_selected = \"_sidebarTabsButton_selected_S48M1\";\nconst sidebarTabsButton__name = \"_sidebarTabsButton__name_GZRY8\";\nconst sidebarTabsButton__icon = \"_sidebarTabsButton__icon_ZDmkU\";\nconst sidebarTabsButton__legacyIcon = \"_sidebarTabsButton__legacyIcon_y6cLW\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_v9SPG\",\n sidebarTabsButton,\n sidebarTabsButton_legacy,\n sidebarTabsButton_selected,\n sidebarTabsButton__name,\n sidebarTabsButton__icon,\n sidebarTabsButton__legacyIcon\n};\nconst cssModules = {\n \"$style\": style0\n};\nconst NcAppSidebarTabsButton = /* @__PURE__ */ _export_sfc(_sfc_main$2, [[\"__cssModules\", cssModules]]);\nconst _sfc_main$1 = {\n name: \"NcAppSidebarTabs\",\n components: {\n NcAppSidebarTabsButton\n },\n provide() {\n return {\n registerTab: this.registerTab,\n unregisterTab: this.unregisterTab,\n // Getter as an alternative to Vue 2.7 computed(() => this.activeTab)\n getActiveTab: () => this.activeTab,\n // Used to check whether the tab header is shown so the tabs can reference the tab header for `aria-labelledby` or not\n isTablistShown: () => this.hasMultipleTabs\n };\n },\n props: {\n /**\n * Id of the tab to activate\n */\n active: {\n type: String,\n default: \"\"\n },\n /**\n * Force the tab navigation to display even if there is only one tab\n */\n forceTabs: {\n type: Boolean,\n default: false\n }\n },\n emits: [\"update:active\"],\n data(props) {\n return {\n /**\n * Tab descriptions from the passed NcSidebarTab components' props to build the tab navbar from.\n */\n tabs: [],\n /**\n * Local active (open) tab's ID. It allows to use component without v-model:active\n */\n activeTab: props.active,\n isLegacy34\n };\n },\n computed: {\n /**\n * Has multiple tabs. If only one tab - its content is shown without navigation\n *\n * @return {boolean}\n */\n hasMultipleTabs() {\n return this.tabs.length > 1;\n },\n showForSingleTab() {\n return this.forceTabs && this.tabs.length === 1;\n },\n currentTabIndex() {\n return this.tabs.findIndex((tab) => tab.id === this.activeTab);\n }\n },\n watch: {\n tabs() {\n if (this.active) {\n this.updateActive();\n }\n },\n active(active) {\n if (active !== this.activeTab) {\n this.updateActive();\n }\n }\n },\n methods: {\n /**\n * Set the current active tab\n *\n * @param {string} id the id of the tab\n */\n setActive(id) {\n this.activeTab = id;\n this.$emit(\"update:active\", this.activeTab);\n },\n /**\n * Focus the previous tab\n * and emit to the parent component\n */\n focusPreviousTab() {\n if (this.currentTabIndex > 0) {\n this.setActive(this.tabs[this.currentTabIndex - 1].id);\n }\n this.focusActiveTab();\n },\n /**\n * Focus the next tab\n * and emit to the parent component\n */\n focusNextTab() {\n if (this.currentTabIndex < this.tabs.length - 1) {\n this.setActive(this.tabs[this.currentTabIndex + 1].id);\n }\n this.focusActiveTab();\n },\n /**\n * Focus the first tab\n * and emit to the parent component\n */\n focusFirstTab() {\n this.setActive(this.tabs[0].id);\n this.focusActiveTab();\n },\n /**\n * Focus the last tab\n * and emit to the parent component\n */\n focusLastTab() {\n this.setActive(this.tabs[this.tabs.length - 1].id);\n this.focusActiveTab();\n },\n /**\n * Focus the current active tab\n */\n focusActiveTab() {\n this.$el.querySelector(`#tab-button-${this.activeTab}`).focus();\n },\n /**\n * Focus the content on tab\n * see aria accessibility guidelines\n */\n focusActiveTabContent() {\n this.$el.querySelector(\"#tab-\" + this.activeTab).focus();\n },\n /**\n * Update the current active tab\n */\n updateActive() {\n this.activeTab = this.active && this.tabs.some(({ id }) => id === this.active) ? this.active : this.tabs[0]?.id ?? \"\";\n },\n /**\n * Register child tab in the tabs\n *\n * @param {object} tab child tab passed to slot\n */\n registerTab(tab) {\n this.tabs.push(tab);\n this.tabs.sort((a, b) => {\n if (a.order === b.order) {\n return a.name.localeCompare(b.name, [getCanonicalLocale()]);\n }\n return a.order - b.order;\n });\n this.updateActive();\n },\n /**\n * Unregister child tab from the tabs\n *\n * @param {string} id tab's id\n */\n unregisterTab(id) {\n const tabIndex = this.tabs.findIndex((tab) => tab.id === id);\n if (tabIndex !== -1) {\n this.tabs.splice(tabIndex, 1);\n }\n if (this.activeTab === id) {\n this.updateActive();\n }\n }\n }\n};\nconst _hoisted_1$1 = { class: \"app-sidebar-tabs\" };\nfunction _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcAppSidebarTabsButton = resolveComponent(\"NcAppSidebarTabsButton\");\n return openBlock(), createElementBlock(\"div\", _hoisted_1$1, [\n $options.hasMultipleTabs || $options.showForSingleTab ? (openBlock(), createElementBlock(\"div\", {\n key: 0,\n role: \"tablist\",\n class: normalizeClass([\"app-sidebar-tabs__nav\", { \"app-sidebar-tabs__nav--legacy\": $data.isLegacy34 }]),\n onKeydown: [\n _cache[0] || (_cache[0] = withKeys(withModifiers((...args) => $options.focusPreviousTab && $options.focusPreviousTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"left\"])),\n _cache[1] || (_cache[1] = withKeys(withModifiers((...args) => $options.focusNextTab && $options.focusNextTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"right\"])),\n _cache[2] || (_cache[2] = withKeys(withModifiers((...args) => $options.focusActiveTabContent && $options.focusActiveTabContent(...args), [\"exact\", \"prevent\", \"stop\"]), [\"tab\"])),\n _cache[3] || (_cache[3] = withKeys(withModifiers((...args) => $options.focusFirstTab && $options.focusFirstTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"home\"])),\n _cache[4] || (_cache[4] = withKeys(withModifiers((...args) => $options.focusLastTab && $options.focusLastTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"end\"])),\n _cache[5] || (_cache[5] = withKeys(withModifiers((...args) => $options.focusFirstTab && $options.focusFirstTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"page-up\"])),\n _cache[6] || (_cache[6] = withKeys(withModifiers((...args) => $options.focusLastTab && $options.focusLastTab(...args), [\"exact\", \"prevent\", \"stop\"]), [\"page-down\"]))\n ]\n }, [\n (openBlock(true), createElementBlock(Fragment, null, renderList($data.tabs, (tab) => {\n return openBlock(), createBlock(_component_NcAppSidebarTabsButton, {\n id: `tab-button-${tab.id}`,\n key: tab.id,\n class: \"app-sidebar-tabs__tab\",\n \"aria-controls\": `tab-${tab.id}`,\n selected: $data.activeTab === tab.id,\n tab,\n \"onUpdate:selected\": ($event) => $options.setActive(tab.id)\n }, null, 8, [\"id\", \"aria-controls\", \"selected\", \"tab\", \"onUpdate:selected\"]);\n }), 128))\n ], 34)) : createCommentVNode(\"\", true),\n createElementVNode(\"div\", {\n class: normalizeClass([\"app-sidebar-tabs__content\", { \"app-sidebar-tabs__content--multiple\": $options.hasMultipleTabs }])\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 2)\n ]);\n}\nconst NcAppSidebarTabs = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"render\", _sfc_render$1], [\"__scopeId\", \"data-v-e74d1502\"]]);\nregister(t15);\nconst _sfc_main = {\n name: \"NcAppSidebar\",\n components: {\n NcActions,\n NcAppSidebarHeader: _sfc_main$7,\n NcAppSidebarTabs,\n NcButton,\n NcLoadingIcon,\n NcEmptyContent,\n IconArrowRight,\n IconClose,\n IconDockRight,\n IconStar,\n IconStarOutline\n },\n directives: {\n Focus: directive,\n /** @type {import('vue').ObjectDirective} */\n ClickOutside: vOnClickOutside\n },\n inject: {\n ncContentSelector: {\n from: CONTENT_SELECTOR_KEY,\n default: void 0\n }\n },\n props: {\n /**\n * The active tab\n */\n active: {\n type: String,\n default: \"\"\n },\n /**\n * Main text of the sidebar\n */\n name: {\n type: String,\n required: true\n },\n /**\n * Allow to edit the sidebar name.\n */\n nameEditable: {\n type: Boolean,\n default: false\n },\n /**\n * Placeholder in the edit field if the name is editable.\n */\n namePlaceholder: {\n type: String,\n default: \"\"\n },\n /**\n * Secondary name of the sidebar (subline)\n */\n subname: {\n type: String,\n default: \"\"\n },\n /**\n * Title to display for the subname.\n */\n subtitle: {\n type: String,\n default: \"\"\n },\n /**\n * Url to the top header background image\n * Applied with css\n */\n background: {\n type: String,\n default: \"\"\n },\n /**\n * Enable the favourite icon if not null\n * See fired events\n */\n starred: {\n type: Boolean,\n default: null\n },\n /**\n * Show loading spinner instead of the star icon\n */\n starLoading: {\n type: Boolean,\n default: false\n },\n /**\n * Show loading spinner instead of tabs\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Display the sidebar in compact mode\n */\n compact: {\n type: Boolean,\n default: false\n },\n /**\n * Only display close button and default slot content.\n * Don't display other header content and primary and secondary actions.\n * Useful when showing the EmptyContent component as content.\n */\n empty: {\n type: Boolean,\n default: false\n },\n /**\n * Force the actions to display in a three dot menu\n */\n forceMenu: {\n type: Boolean,\n default: false\n },\n /**\n * Force the tab navigation to display even if there is only one tab\n */\n forceTabs: {\n type: Boolean,\n default: false\n },\n /**\n * Linkify the name\n */\n linkifyName: {\n type: Boolean,\n default: false\n },\n /**\n * Title to display for the name.\n * Can be set to the same text in case it's too long.\n */\n title: {\n type: String,\n default: \"\"\n },\n /**\n * Allow to conditionally show the sidebar\n * You can also use `v-if` on the sidebar, but using the open prop allow to keep\n * the sidebar inside the DOM for performance if it is opened and closed multiple times.\n *\n * When using the `open` property to close the sidebar a built-in toggle button will be shown to reopen it,\n * similar to the app navigation. You can remove this button with the `no-toggle` prop.\n */\n open: {\n type: Boolean,\n default: true\n },\n /**\n * Custom classes to assign to the sidebar toggle button.\n * If needed this can be used to assign styles to the button using `:deep()` selector.\n */\n toggleClasses: {\n type: [String, Array, Object],\n default: \"\"\n },\n /**\n * Custom attrs to assign to the sidebar toggle button.\n */\n toggleAttrs: {\n type: Object,\n default: void 0\n },\n /**\n * Do not add the built-in toggle button with `open` prop.\n */\n noToggle: {\n type: Boolean,\n default: false\n }\n },\n emits: [\n \"close\",\n \"closed\",\n \"opened\",\n // 'figureClick', not emitted on purpose to make \"hasFigureClickListener\" work\n \"update:active\",\n \"update:name\",\n \"update:nameEditable\",\n \"update:open\",\n \"update:starred\",\n \"submitName\",\n \"dismissEditing\"\n ],\n setup() {\n const headerRef = ref(null);\n provide(\"NcAppSidebar:header:ref\", headerRef);\n return {\n uid: createElementId(),\n isMobile: useIsSmallMobile(),\n headerRef\n };\n },\n data() {\n return {\n changeNameTranslated: t(\"Change name\"),\n closeTranslated: t(\"Close sidebar\"),\n favoriteTranslated: t(\"Favorite\"),\n isStarred: this.starred,\n focusTrap: null,\n elementToReturnFocus: null\n };\n },\n computed: {\n canStar() {\n return this.isStarred !== null;\n },\n hasFigureClickListener() {\n return !!this.$attrs.onFigureClick;\n }\n },\n watch: {\n starred() {\n this.isStarred = this.starred;\n },\n isMobile() {\n this.toggleFocusTrap();\n },\n open() {\n this.checkToggleButtonContainerAvailability();\n }\n },\n created() {\n this.preserveElementToReturnFocus();\n this.checkToggleButtonContainerAvailability();\n },\n beforeUnmount() {\n this.$emit(\"closed\");\n this.focusTrap?.deactivate();\n },\n methods: {\n isSlotPopulated,\n t,\n preserveElementToReturnFocus() {\n if (document.activeElement && document.activeElement !== document.body) {\n this.elementToReturnFocus = document.activeElement;\n if (this.elementToReturnFocus.getAttribute(\"role\") === \"menuitem\") {\n const menu = this.elementToReturnFocus.closest('[role=\"menu\"]');\n if (menu) {\n const menuTrigger = document.querySelector(`[aria-controls=\"${menu.id}\"]`);\n this.elementToReturnFocus = menuTrigger;\n }\n }\n }\n },\n initFocusTrap() {\n if (this.focusTrap) {\n return;\n }\n this.focusTrap = createFocusTrap([\n // The sidebar itself\n this.$refs.sidebar,\n // Nextcloud Server header navigation\n document.querySelector(\"#header\")\n ], {\n allowOutsideClick: true,\n fallbackFocus: this.$refs.closeButton.$el,\n trapStack: getTrapStack(),\n escapeDeactivates: false\n });\n },\n /**\n * Activate focus trap if it is currently needed, otherwise deactivate\n */\n toggleFocusTrap() {\n if (this.open && this.isMobile) {\n this.initFocusTrap();\n this.focusTrap.activate();\n } else {\n this.focusTrap?.deactivate();\n }\n },\n /**\n * Close the sidebar on pressing the escape key on mobile\n *\n * @param {KeyboardEvent} event key down event\n */\n onKeydownEsc(event) {\n if (this.isMobile) {\n event.stopPropagation();\n this.closeSidebar();\n }\n },\n onAfterEnter(element) {\n if (this.elementToReturnFocus) {\n this.focus();\n }\n this.toggleFocusTrap();\n this.$emit(\"opened\", element);\n },\n onAfterLeave(element) {\n this.$emit(\"closed\", element);\n this.toggleFocusTrap();\n this.elementToReturnFocus?.focus({ focusVisible: true });\n this.elementToReturnFocus = null;\n },\n /**\n * Used to tell parent component the user asked to close the sidebar\n *\n * @param {Event} e close icon click event\n */\n closeSidebar(e) {\n this.$emit(\"close\", e);\n this.$emit(\"update:open\", false);\n },\n /**\n * Emit figure click event to parent component\n *\n * @param {Event} e click event\n */\n onFigureClick(e) {\n this.$emit(\"figureClick\", e);\n },\n /**\n * Toggle the favourite state\n * and emit to the parent component\n */\n toggleStarred() {\n this.isStarred = !this.isStarred;\n this.$emit(\"update:starred\", this.isStarred);\n },\n async editName() {\n this.$emit(\"update:nameEditable\", true);\n if (this.nameEditable) {\n await this.$nextTick();\n this.$refs.nameInput.focus();\n }\n },\n /**\n * Focus the sidebar\n *\n * @public\n */\n focus() {\n if (!this.open && !this.noToggle) {\n this.$refs.toggle.$el.focus();\n return;\n }\n try {\n this.headerRef.focus();\n } catch {\n warn(\"NcAppSidebar should have focusable header for accessibility reasons. Use NcAppSidebarHeader component.\");\n }\n },\n /**\n * Focus the active tab\n *\n * @public\n */\n focusActiveTabContent() {\n this.preserveElementToReturnFocus();\n this.$refs.tabs.focusActiveTabContent();\n },\n /**\n * Check if the toggle button container is available\n */\n checkToggleButtonContainerAvailability() {\n if (this.open === false && !this.noToggle && !this.ncContentSelector) {\n logger.warn(\"[NcAppSidebar] It looks like you want to use NcAppSidebar with the built-in toggle button. This feature is only available when NcAppSidebar is used in NcContent.\");\n }\n },\n /**\n * Emit name change event to parent component\n *\n * @param {Event} event input event\n */\n onNameInput(event) {\n this.$emit(\"update:name\", event.target.value);\n },\n /**\n * Emit when the name form edit confirm button is pressed in order\n * to change the name.\n *\n * @param {Event} event submit event\n */\n onSubmitName(event) {\n this.$emit(\"update:nameEditable\", false);\n this.$emit(\"submitName\", event);\n },\n onDismissEditing() {\n this.$emit(\"update:nameEditable\", false);\n this.$emit(\"dismissEditing\");\n },\n onUpdateActive(activeTab) {\n this.$emit(\"update:active\", activeTab);\n }\n }\n};\nconst _hoisted_1 = [\"aria-labelledby\"];\nconst _hoisted_2 = { class: \"app-sidebar-header__info\" };\nconst _hoisted_3 = {\n key: 0,\n class: \"app-sidebar-header__tertiary-actions\"\n};\nconst _hoisted_4 = { class: \"app-sidebar-header__name-container\" };\nconst _hoisted_5 = { class: \"app-sidebar-header__mainname-container\" };\nconst _hoisted_6 = [\"placeholder\", \"value\"];\nconst _hoisted_7 = [\"title\"];\nconst _hoisted_8 = {\n key: 2,\n class: \"app-sidebar-header__description\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_IconDockRight = resolveComponent(\"IconDockRight\");\n const _component_NcButton = resolveComponent(\"NcButton\");\n const _component_NcLoadingIcon = resolveComponent(\"NcLoadingIcon\");\n const _component_IconStar = resolveComponent(\"IconStar\");\n const _component_IconStarOutline = resolveComponent(\"IconStarOutline\");\n const _component_NcAppSidebarHeader = resolveComponent(\"NcAppSidebarHeader\");\n const _component_IconArrowRight = resolveComponent(\"IconArrowRight\");\n const _component_NcActions = resolveComponent(\"NcActions\");\n const _component_IconClose = resolveComponent(\"IconClose\");\n const _component_NcAppSidebarTabs = resolveComponent(\"NcAppSidebarTabs\");\n const _component_NcEmptyContent = resolveComponent(\"NcEmptyContent\");\n const _directive_focus = resolveDirective(\"focus\");\n const _directive_click_outside = resolveDirective(\"click-outside\");\n return openBlock(), createBlock(Transition, {\n appear: \"\",\n name: \"slide-right\",\n onAfterEnter: $options.onAfterEnter,\n onAfterLeave: $options.onAfterLeave\n }, {\n default: withCtx(() => [\n withDirectives(createElementVNode(\"aside\", {\n id: \"app-sidebar-vue\",\n ref: \"sidebar\",\n class: \"app-sidebar\",\n \"aria-labelledby\": `app-sidebar-vue-${$setup.uid}__header`,\n onKeydown: _cache[6] || (_cache[6] = withKeys((...args) => $options.onKeydownEsc && $options.onKeydownEsc(...args), [\"esc\"]))\n }, [\n $options.ncContentSelector && !$props.open && !$props.noToggle ? (openBlock(), createBlock(Teleport, {\n key: 0,\n to: $options.ncContentSelector\n }, [\n createVNode(_component_NcButton, mergeProps({\n ref: \"toggle\",\n \"aria-label\": $options.t(\"Open sidebar\"),\n class: [\"app-sidebar__toggle\", $props.toggleClasses],\n variant: \"tertiary\"\n }, $props.toggleAttrs, {\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"update:open\", true))\n }), {\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"toggle-icon\", {}, () => [\n createVNode(_component_IconDockRight, { size: 20 })\n ], true)\n ]),\n _: 3\n }, 16, [\"aria-label\", \"class\"])\n ], 8, [\"to\"])) : createCommentVNode(\"\", true),\n createElementVNode(\"header\", {\n class: normalizeClass([\"app-sidebar-header\", {\n \"app-sidebar-header--with-figure\": $options.isSlotPopulated(_ctx.$slots.header?.()) || $props.background,\n \"app-sidebar-header--compact\": $props.compact\n }])\n }, [\n !$props.empty ? renderSlot(_ctx.$slots, \"info\", { key: 0 }, () => [\n createElementVNode(\"div\", _hoisted_2, [\n $options.isSlotPopulated(_ctx.$slots.header?.()) || $props.background ? (openBlock(), createElementBlock(\"div\", {\n key: 0,\n class: normalizeClass([\"app-sidebar-header__figure\", {\n \"app-sidebar-header__figure--with-action\": $options.hasFigureClickListener\n }]),\n style: normalizeStyle({\n backgroundImage: `url(${$props.background})`\n }),\n tabindex: \"0\",\n onClick: _cache[1] || (_cache[1] = (...args) => $options.onFigureClick && $options.onFigureClick(...args)),\n onKeydown: _cache[2] || (_cache[2] = withKeys((...args) => $options.onFigureClick && $options.onFigureClick(...args), [\"enter\"]))\n }, [\n renderSlot(_ctx.$slots, \"header\", { class: \"app-sidebar-header__background\" }, void 0, true)\n ], 38)) : createCommentVNode(\"\", true),\n createElementVNode(\"div\", {\n class: normalizeClass([\"app-sidebar-header__desc\", {\n \"app-sidebar-header__desc--with-tertiary-action\": $options.canStar || $options.isSlotPopulated(_ctx.$slots[\"tertiary-actions\"]?.()),\n \"app-sidebar-header__desc--editable\": $props.nameEditable && !$props.subname,\n \"app-sidebar-header__desc--with-subname--editable\": $props.nameEditable && $props.subname,\n \"app-sidebar-header__desc--without-actions\": !$options.isSlotPopulated(_ctx.$slots[\"secondary-actions\"]?.())\n }])\n }, [\n $options.canStar || $options.isSlotPopulated(_ctx.$slots[\"tertiary-actions\"]?.()) ? (openBlock(), createElementBlock(\"div\", _hoisted_3, [\n renderSlot(_ctx.$slots, \"tertiary-actions\", {}, () => [\n $options.canStar ? (openBlock(), createBlock(_component_NcButton, {\n key: 0,\n \"aria-label\": $data.favoriteTranslated,\n pressed: $data.isStarred,\n class: \"app-sidebar-header__star\",\n variant: \"secondary\",\n onClick: withModifiers($options.toggleStarred, [\"prevent\"])\n }, {\n icon: withCtx(() => [\n $props.starLoading ? (openBlock(), createBlock(_component_NcLoadingIcon, { key: 0 })) : $data.isStarred ? (openBlock(), createBlock(_component_IconStar, {\n key: 1,\n size: 20\n })) : (openBlock(), createBlock(_component_IconStarOutline, {\n key: 2,\n size: 20\n }))\n ]),\n _: 1\n }, 8, [\"aria-label\", \"pressed\", \"onClick\"])) : createCommentVNode(\"\", true)\n ], true)\n ])) : createCommentVNode(\"\", true),\n createElementVNode(\"div\", _hoisted_4, [\n createElementVNode(\"div\", _hoisted_5, [\n withDirectives(createVNode(_component_NcAppSidebarHeader, {\n class: \"app-sidebar-header__mainname\",\n name: $props.name,\n linkify: $props.linkifyName,\n title: $props.title,\n tabindex: $props.nameEditable ? 0 : -1,\n onClick: withModifiers($options.editName, [\"self\"])\n }, null, 8, [\"name\", \"linkify\", \"title\", \"tabindex\", \"onClick\"]), [\n [vShow, !$props.nameEditable]\n ]),\n $props.nameEditable ? withDirectives((openBlock(), createElementBlock(\"form\", {\n key: 0,\n class: \"app-sidebar-header__mainname-form\",\n onSubmit: _cache[5] || (_cache[5] = withModifiers((...args) => $options.onSubmitName && $options.onSubmitName(...args), [\"prevent\"]))\n }, [\n withDirectives(createElementVNode(\"input\", {\n ref: \"nameInput\",\n class: \"app-sidebar-header__mainname-input\",\n type: \"text\",\n placeholder: $props.namePlaceholder,\n value: $props.name,\n onKeydown: _cache[3] || (_cache[3] = withKeys(withModifiers((...args) => $options.onDismissEditing && $options.onDismissEditing(...args), [\"stop\"]), [\"esc\"])),\n onInput: _cache[4] || (_cache[4] = (...args) => $options.onNameInput && $options.onNameInput(...args))\n }, null, 40, _hoisted_6), [\n [_directive_focus]\n ]),\n createVNode(_component_NcButton, {\n \"aria-label\": $data.changeNameTranslated,\n type: \"submit\",\n variant: \"tertiary-no-background\"\n }, {\n icon: withCtx(() => [\n createVNode(_component_IconArrowRight, { size: 20 })\n ]),\n _: 1\n }, 8, [\"aria-label\"])\n ], 32)), [\n [_directive_click_outside, () => $options.onSubmitName()]\n ]) : createCommentVNode(\"\", true),\n $options.isSlotPopulated(_ctx.$slots[\"secondary-actions\"]?.()) ? (openBlock(), createBlock(_component_NcActions, {\n key: 1,\n class: \"app-sidebar-header__menu\",\n forceMenu: $props.forceMenu\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"secondary-actions\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"forceMenu\"])) : createCommentVNode(\"\", true)\n ]),\n $props.subname.trim() !== \"\" || _ctx.$slots[\"subname\"] ? (openBlock(), createElementBlock(\"p\", {\n key: 0,\n title: $props.subtitle || void 0,\n class: \"app-sidebar-header__subname\"\n }, [\n renderSlot(_ctx.$slots, \"subname\", {}, () => [\n createTextVNode(toDisplayString($props.subname), 1)\n ], true)\n ], 8, _hoisted_7)) : createCommentVNode(\"\", true)\n ])\n ], 2)\n ])\n ], true) : (openBlock(), createBlock(_component_NcAppSidebarHeader, {\n key: 1,\n class: \"app-sidebar-header__mainname--hidden\",\n name: $props.name,\n tabindex: \"-1\"\n }, null, 8, [\"name\"])),\n createVNode(_component_NcButton, {\n ref: \"closeButton\",\n \"aria-label\": $data.closeTranslated,\n title: $data.closeTranslated,\n class: \"app-sidebar__close\",\n variant: \"tertiary\",\n onClick: withModifiers($options.closeSidebar, [\"prevent\"])\n }, {\n icon: withCtx(() => [\n createVNode(_component_IconClose, { size: 20 })\n ]),\n _: 1\n }, 8, [\"aria-label\", \"title\", \"onClick\"]),\n $options.isSlotPopulated(_ctx.$slots.description?.()) && !$props.empty ? (openBlock(), createElementBlock(\"div\", _hoisted_8, [\n renderSlot(_ctx.$slots, \"description\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true)\n ], 2),\n withDirectives(createVNode(_component_NcAppSidebarTabs, {\n ref: \"tabs\",\n active: $props.active,\n forceTabs: $props.forceTabs,\n \"onUpdate:active\": $options.onUpdateActive\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]),\n _: 3\n }, 8, [\"active\", \"forceTabs\", \"onUpdate:active\"]), [\n [vShow, !$props.loading]\n ]),\n $props.loading ? (openBlock(), createBlock(_component_NcEmptyContent, { key: 1 }, {\n icon: withCtx(() => [\n createVNode(_component_NcLoadingIcon, { size: 64 })\n ]),\n _: 1\n })) : createCommentVNode(\"\", true)\n ], 40, _hoisted_1), [\n [vShow, $props.open]\n ])\n ]),\n _: 3\n }, 8, [\"onAfterEnter\", \"onAfterLeave\"]);\n}\nconst NcAppSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-e8979b7f\"]]);\nexport {\n NcAppSidebar as N\n};\n//# sourceMappingURL=NcAppSidebar-C8YzAzrZ.mjs.map\n","import '../assets/NcAppSidebarTab-Xd3HTDbw.css';\nimport { openBlock, createElementBlock, normalizeClass, createElementVNode, toDisplayString, renderSlot } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcAppSidebarTab\",\n inject: [\"registerTab\", \"unregisterTab\", \"getActiveTab\", \"isTablistShown\"],\n props: {\n /**\n * Unique id of the sidebar tab\n */\n id: {\n type: String,\n required: true\n },\n /**\n * Tab name in navigation\n */\n name: {\n type: String,\n required: true\n },\n /**\n * Tab icon's html class in navigation. Used if #icon slot is not provided\n */\n icon: {\n type: String,\n default: \"\"\n },\n /**\n * Tab order in navigation. If not provided, name is used.\n */\n order: {\n type: Number,\n default: 0\n }\n },\n emits: [\n \"bottomReached\",\n \"scroll\"\n ],\n expose: [\"id\", \"name\", \"icon\", \"order\", \"renderIcon\"],\n computed: {\n /**\n * Is the current tab an active tab, that should be shown?\n *\n * @return {boolean}\n */\n isActive() {\n return this.getActiveTab() === this.id;\n }\n },\n created() {\n this.registerTab(this);\n },\n beforeUnmount() {\n this.unregisterTab(this.id);\n },\n methods: {\n onScroll(event) {\n if (this.$el.scrollHeight - this.$el.scrollTop === this.$el.clientHeight) {\n this.$emit(\"bottomReached\", event);\n }\n this.$emit(\"scroll\", event);\n },\n /**\n * Render tab's icon slot if any\n *\n * @return {import('vue').VNode[]}\n */\n renderIcon() {\n return this.$slots.icon?.();\n }\n }\n};\nconst _hoisted_1 = [\"id\", \"aria-hidden\", \"aria-label\", \"aria-labelledby\", \"role\", \"tabindex\"];\nconst _hoisted_2 = { class: \"hidden-visually\" };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"section\", {\n id: `tab-${$props.id}`,\n \"aria-hidden\": !$options.isActive,\n \"aria-label\": $options.isTablistShown() ? void 0 : $props.name,\n \"aria-labelledby\": $options.isTablistShown() ? `tab-button-${$props.id}` : void 0,\n class: normalizeClass([\"app-sidebar__tab\", { \"app-sidebar__tab--active\": $options.isActive }]),\n role: $options.isTablistShown() ? \"tabpanel\" : void 0,\n tabindex: $options.isTablistShown() ? 0 : -1,\n onScroll: _cache[0] || (_cache[0] = (...args) => $options.onScroll && $options.onScroll(...args))\n }, [\n createElementVNode(\"h3\", _hoisted_2, toDisplayString($props.name), 1),\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 42, _hoisted_1);\n}\nconst NcAppSidebarTab = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-dba10798\"]]);\nexport {\n NcAppSidebarTab as N\n};\n//# sourceMappingURL=NcAppSidebarTab-DOSDDbGA.mjs.map\n","import '../assets/autolink-XS-VDSVB.css';\nimport { getBaseUrl, getRootUrl } from \"@nextcloud/router\";\nimport { u } from \"unist-builder\";\nimport { visitParents, SKIP } from \"unist-util-visit-parents\";\nimport { defineComponent, openBlock, createElementBlock, normalizeClass, renderSlot, createTextVNode, toDisplayString } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nconst _hoisted_1 = [\"href\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcRichTextExternalLink\",\n props: {\n href: {},\n decorateExternal: { type: Boolean, default: false }\n },\n setup(__props) {\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"a\", {\n href: __props.href,\n rel: \"noopener noreferrer\",\n target: \"_blank\",\n class: normalizeClass([_ctx.$style.externalLink, {\n [_ctx.$style.externalLink_decorated]: __props.decorateExternal\n }])\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, () => [\n createTextVNode(toDisplayString(__props.href), 1)\n ])\n ], 10, _hoisted_1);\n };\n }\n});\nconst externalLink = \"_externalLink_d-mCx\";\nconst externalLink_decorated = \"_externalLink_decorated_W3wuz\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_ZJnaR\",\n externalLink,\n externalLink_decorated\n};\nconst cssModules = {\n \"$style\": style0\n};\nconst NcRichTextExternalLink = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__cssModules\", cssModules]]);\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nconst URL_PATTERN = /(\\s|^)(https?:\\/\\/)([-A-Z0-9+_.]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\\s|$)/ig;\nconst URL_PATTERN_AUTOLINK = /(\\s|\\(|^)((https?:\\/\\/)([-A-Z0-9+_.]+[-A-Z0-9]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/ig;\nfunction remarkAutolink({ autolink, useMarkdown, useExtendedMarkdown }) {\n return function(tree) {\n if (useExtendedMarkdown || !useMarkdown || !autolink) {\n return;\n }\n visitParents(tree, (node) => node.type === \"text\", (node, ancestors) => {\n if (ancestors.some((ancestor) => ancestor.type === \"link\" || ancestor.type === \"linkReference\")) {\n return;\n }\n const parent = ancestors.at(-1);\n const index = parent.children.indexOf(node) ?? 0;\n const parsed = parseUrl(node.value);\n const parsedNodes = typeof parsed === \"string\" ? [u(\"text\", parsed)] : parsed.map((n) => {\n if (typeof n === \"string\") {\n return u(\"text\", n);\n }\n return u(\"link\", {\n url: n.props.href\n }, [u(\"text\", n.props.href)]);\n }).filter((x) => x).flat();\n parent.children.splice(index, 1, ...parsedNodes);\n return [SKIP, index + parsedNodes.length];\n });\n };\n}\nfunction parseUrl(text) {\n let match = URL_PATTERN_AUTOLINK.exec(text);\n const list = [];\n let start = 0;\n while (match !== null) {\n let href = match[2];\n let textAfter;\n let textBefore = text.substring(start, match.index + match[1].length);\n if (href[0] === \" \") {\n textBefore += href[0];\n href = href.substring(1).trim();\n }\n const lastChar = href[href.length - 1];\n if (lastChar === \".\" || lastChar === \",\" || lastChar === \";\" || match[0][0] === \"(\" && lastChar === \")\") {\n href = href.substring(0, href.length - 1);\n textAfter = lastChar;\n }\n list.push(textBefore);\n list.push({ component: NcRichTextExternalLink, props: { href: href.trim(), decorateExternal: true } });\n if (textAfter) {\n list.push(textAfter);\n }\n start = match.index + match[0].length;\n match = URL_PATTERN_AUTOLINK.exec(text);\n }\n list.push(text.substring(start));\n const joinedText = list.map((item) => typeof item === \"string\" ? item : item.props.href).join(\"\");\n if (text === joinedText) {\n return list;\n }\n logger.error(\"[NcRichText] Failed to reassemble the chunked text: \" + text);\n return text;\n}\nfunction getRoute(router, url) {\n const removePrefix = (str, prefix) => str.startsWith(prefix) ? str.slice(prefix.length) : str;\n const removePrefixes = (str, ...prefixes) => prefixes.reduce((acc, prefix) => removePrefix(acc, prefix), str);\n if (!router) {\n return null;\n }\n const isAbsoluteURL = /^https?:\\/\\//.test(url);\n const isNonHttpLink = /^[a-z][a-z0-9+.-]*:.+/.test(url);\n if (!isAbsoluteURL && isNonHttpLink) {\n return null;\n }\n if (isAbsoluteURL && !url.startsWith(getBaseUrl())) {\n return null;\n }\n if (!isAbsoluteURL && !url.startsWith(\"/\")) {\n return null;\n }\n const relativeUrl = isAbsoluteURL ? removePrefixes(url, getBaseUrl(), \"/index.php\") : url;\n const relativeRouterBase = removePrefixes(router.options.history.base, getRootUrl(), \"/index.php\");\n const potentialRouterPath = removePrefixes(relativeUrl, relativeRouterBase) || \"/\";\n const route = router.resolve(potentialRouterPath);\n if (!route.matched.length) {\n return null;\n }\n return route.fullPath;\n}\nexport {\n NcRichTextExternalLink as N,\n URL_PATTERN as U,\n getRoute as g,\n parseUrl as p,\n remarkAutolink as r\n};\n//# sourceMappingURL=autolink-DrIurosL.mjs.map\n","import { l as logger } from \"../../chunks/logger-D3RVzcfQ.mjs\";\nfunction registerContactsMenuAction(action) {\n window._nc_contacts_menu_hooks ??= {};\n if (window._nc_contacts_menu_hooks[action.id]) {\n logger.error(`ContactsMenu action for id ${action.id} has already been registered`, {\n action\n });\n return;\n }\n window._nc_contacts_menu_hooks[action.id] = action;\n}\nfunction getEnabledContactsMenuActions(entry) {\n if (!window._nc_contacts_menu_hooks) {\n return [];\n }\n return Object.values(window._nc_contacts_menu_hooks).filter((action) => action.enabled(entry));\n}\nexport {\n getEnabledContactsMenuActions,\n registerContactsMenuAction\n};\n//# sourceMappingURL=index.mjs.map\n","const c = new Int32Array(4);\nclass h {\n static hashStr(i, a = !1) {\n return this.onePassHasher.start().appendStr(i).end(a);\n }\n static hashAsciiStr(i, a = !1) {\n return this.onePassHasher.start().appendAsciiStr(i).end(a);\n }\n // Private Static Variables\n static stateIdentity = new Int32Array([\n 1732584193,\n -271733879,\n -1732584194,\n 271733878\n ]);\n static buffer32Identity = new Int32Array([\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0\n ]);\n static hexChars = \"0123456789abcdef\";\n static hexOut = [];\n // Permanent instance is to use for one-call hashing\n static onePassHasher = new h();\n static _hex(i) {\n const a = h.hexChars, t = h.hexOut;\n let e, s, r, n;\n for (n = 0; n < 4; n += 1)\n for (s = n * 8, e = i[n], r = 0; r < 8; r += 2)\n t[s + 1 + r] = a.charAt(e & 15), e >>>= 4, t[s + 0 + r] = a.charAt(e & 15), e >>>= 4;\n return t.join(\"\");\n }\n static _md5cycle(i, a) {\n let t = i[0], e = i[1], s = i[2], r = i[3];\n t += (e & s | ~e & r) + a[0] - 680876936 | 0, t = (t << 7 | t >>> 25) + e | 0, r += (t & e | ~t & s) + a[1] - 389564586 | 0, r = (r << 12 | r >>> 20) + t | 0, s += (r & t | ~r & e) + a[2] + 606105819 | 0, s = (s << 17 | s >>> 15) + r | 0, e += (s & r | ~s & t) + a[3] - 1044525330 | 0, e = (e << 22 | e >>> 10) + s | 0, t += (e & s | ~e & r) + a[4] - 176418897 | 0, t = (t << 7 | t >>> 25) + e | 0, r += (t & e | ~t & s) + a[5] + 1200080426 | 0, r = (r << 12 | r >>> 20) + t | 0, s += (r & t | ~r & e) + a[6] - 1473231341 | 0, s = (s << 17 | s >>> 15) + r | 0, e += (s & r | ~s & t) + a[7] - 45705983 | 0, e = (e << 22 | e >>> 10) + s | 0, t += (e & s | ~e & r) + a[8] + 1770035416 | 0, t = (t << 7 | t >>> 25) + e | 0, r += (t & e | ~t & s) + a[9] - 1958414417 | 0, r = (r << 12 | r >>> 20) + t | 0, s += (r & t | ~r & e) + a[10] - 42063 | 0, s = (s << 17 | s >>> 15) + r | 0, e += (s & r | ~s & t) + a[11] - 1990404162 | 0, e = (e << 22 | e >>> 10) + s | 0, t += (e & s | ~e & r) + a[12] + 1804603682 | 0, t = (t << 7 | t >>> 25) + e | 0, r += (t & e | ~t & s) + a[13] - 40341101 | 0, r = (r << 12 | r >>> 20) + t | 0, s += (r & t | ~r & e) + a[14] - 1502002290 | 0, s = (s << 17 | s >>> 15) + r | 0, e += (s & r | ~s & t) + a[15] + 1236535329 | 0, e = (e << 22 | e >>> 10) + s | 0, t += (e & r | s & ~r) + a[1] - 165796510 | 0, t = (t << 5 | t >>> 27) + e | 0, r += (t & s | e & ~s) + a[6] - 1069501632 | 0, r = (r << 9 | r >>> 23) + t | 0, s += (r & e | t & ~e) + a[11] + 643717713 | 0, s = (s << 14 | s >>> 18) + r | 0, e += (s & t | r & ~t) + a[0] - 373897302 | 0, e = (e << 20 | e >>> 12) + s | 0, t += (e & r | s & ~r) + a[5] - 701558691 | 0, t = (t << 5 | t >>> 27) + e | 0, r += (t & s | e & ~s) + a[10] + 38016083 | 0, r = (r << 9 | r >>> 23) + t | 0, s += (r & e | t & ~e) + a[15] - 660478335 | 0, s = (s << 14 | s >>> 18) + r | 0, e += (s & t | r & ~t) + a[4] - 405537848 | 0, e = (e << 20 | e >>> 12) + s | 0, t += (e & r | s & ~r) + a[9] + 568446438 | 0, t = (t << 5 | t >>> 27) + e | 0, r += (t & s | e & ~s) + a[14] - 1019803690 | 0, r = (r << 9 | r >>> 23) + t | 0, s += (r & e | t & ~e) + a[3] - 187363961 | 0, s = (s << 14 | s >>> 18) + r | 0, e += (s & t | r & ~t) + a[8] + 1163531501 | 0, e = (e << 20 | e >>> 12) + s | 0, t += (e & r | s & ~r) + a[13] - 1444681467 | 0, t = (t << 5 | t >>> 27) + e | 0, r += (t & s | e & ~s) + a[2] - 51403784 | 0, r = (r << 9 | r >>> 23) + t | 0, s += (r & e | t & ~e) + a[7] + 1735328473 | 0, s = (s << 14 | s >>> 18) + r | 0, e += (s & t | r & ~t) + a[12] - 1926607734 | 0, e = (e << 20 | e >>> 12) + s | 0, t += (e ^ s ^ r) + a[5] - 378558 | 0, t = (t << 4 | t >>> 28) + e | 0, r += (t ^ e ^ s) + a[8] - 2022574463 | 0, r = (r << 11 | r >>> 21) + t | 0, s += (r ^ t ^ e) + a[11] + 1839030562 | 0, s = (s << 16 | s >>> 16) + r | 0, e += (s ^ r ^ t) + a[14] - 35309556 | 0, e = (e << 23 | e >>> 9) + s | 0, t += (e ^ s ^ r) + a[1] - 1530992060 | 0, t = (t << 4 | t >>> 28) + e | 0, r += (t ^ e ^ s) + a[4] + 1272893353 | 0, r = (r << 11 | r >>> 21) + t | 0, s += (r ^ t ^ e) + a[7] - 155497632 | 0, s = (s << 16 | s >>> 16) + r | 0, e += (s ^ r ^ t) + a[10] - 1094730640 | 0, e = (e << 23 | e >>> 9) + s | 0, t += (e ^ s ^ r) + a[13] + 681279174 | 0, t = (t << 4 | t >>> 28) + e | 0, r += (t ^ e ^ s) + a[0] - 358537222 | 0, r = (r << 11 | r >>> 21) + t | 0, s += (r ^ t ^ e) + a[3] - 722521979 | 0, s = (s << 16 | s >>> 16) + r | 0, e += (s ^ r ^ t) + a[6] + 76029189 | 0, e = (e << 23 | e >>> 9) + s | 0, t += (e ^ s ^ r) + a[9] - 640364487 | 0, t = (t << 4 | t >>> 28) + e | 0, r += (t ^ e ^ s) + a[12] - 421815835 | 0, r = (r << 11 | r >>> 21) + t | 0, s += (r ^ t ^ e) + a[15] + 530742520 | 0, s = (s << 16 | s >>> 16) + r | 0, e += (s ^ r ^ t) + a[2] - 995338651 | 0, e = (e << 23 | e >>> 9) + s | 0, t += (s ^ (e | ~r)) + a[0] - 198630844 | 0, t = (t << 6 | t >>> 26) + e | 0, r += (e ^ (t | ~s)) + a[7] + 1126891415 | 0, r = (r << 10 | r >>> 22) + t | 0, s += (t ^ (r | ~e)) + a[14] - 1416354905 | 0, s = (s << 15 | s >>> 17) + r | 0, e += (r ^ (s | ~t)) + a[5] - 57434055 | 0, e = (e << 21 | e >>> 11) + s | 0, t += (s ^ (e | ~r)) + a[12] + 1700485571 | 0, t = (t << 6 | t >>> 26) + e | 0, r += (e ^ (t | ~s)) + a[3] - 1894986606 | 0, r = (r << 10 | r >>> 22) + t | 0, s += (t ^ (r | ~e)) + a[10] - 1051523 | 0, s = (s << 15 | s >>> 17) + r | 0, e += (r ^ (s | ~t)) + a[1] - 2054922799 | 0, e = (e << 21 | e >>> 11) + s | 0, t += (s ^ (e | ~r)) + a[8] + 1873313359 | 0, t = (t << 6 | t >>> 26) + e | 0, r += (e ^ (t | ~s)) + a[15] - 30611744 | 0, r = (r << 10 | r >>> 22) + t | 0, s += (t ^ (r | ~e)) + a[6] - 1560198380 | 0, s = (s << 15 | s >>> 17) + r | 0, e += (r ^ (s | ~t)) + a[13] + 1309151649 | 0, e = (e << 21 | e >>> 11) + s | 0, t += (s ^ (e | ~r)) + a[4] - 145523070 | 0, t = (t << 6 | t >>> 26) + e | 0, r += (e ^ (t | ~s)) + a[11] - 1120210379 | 0, r = (r << 10 | r >>> 22) + t | 0, s += (t ^ (r | ~e)) + a[2] + 718787259 | 0, s = (s << 15 | s >>> 17) + r | 0, e += (r ^ (s | ~t)) + a[9] - 343485551 | 0, e = (e << 21 | e >>> 11) + s | 0, i[0] = t + i[0] | 0, i[1] = e + i[1] | 0, i[2] = s + i[2] | 0, i[3] = r + i[3] | 0;\n }\n _dataLength = 0;\n _bufferLength = 0;\n _state = new Int32Array(4);\n _buffer = new ArrayBuffer(68);\n _buffer8;\n _buffer32;\n constructor() {\n this._buffer8 = new Uint8Array(this._buffer, 0, 68), this._buffer32 = new Uint32Array(this._buffer, 0, 17), this.start();\n }\n /**\n * Initialise buffer to be hashed\n */\n start() {\n return this._dataLength = 0, this._bufferLength = 0, this._state.set(h.stateIdentity), this;\n }\n // Char to code point to to array conversion:\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt\n // #Example.3A_Fixing_charCodeAt_to_handle_non-Basic-Multilingual-Plane_characters_if_their_presence_earlier_in_the_string_is_unknown\n /**\n * Append a UTF-8 string to the hash buffer\n * @param str String to append\n */\n appendStr(i) {\n const a = this._buffer8, t = this._buffer32;\n let e = this._bufferLength, s, r;\n for (r = 0; r < i.length; r += 1) {\n if (s = i.charCodeAt(r), s < 128)\n a[e++] = s;\n else if (s < 2048)\n a[e++] = (s >>> 6) + 192, a[e++] = s & 63 | 128;\n else if (s < 55296 || s > 56319)\n a[e++] = (s >>> 12) + 224, a[e++] = s >>> 6 & 63 | 128, a[e++] = s & 63 | 128;\n else {\n if (s = (s - 55296) * 1024 + (i.charCodeAt(++r) - 56320) + 65536, s > 1114111)\n throw new Error(\n \"Unicode standard supports code points up to U+10FFFF\"\n );\n a[e++] = (s >>> 18) + 240, a[e++] = s >>> 12 & 63 | 128, a[e++] = s >>> 6 & 63 | 128, a[e++] = s & 63 | 128;\n }\n e >= 64 && (this._dataLength += 64, h._md5cycle(this._state, t), e -= 64, t[0] = t[16]);\n }\n return this._bufferLength = e, this;\n }\n /**\n * Append an ASCII string to the hash buffer\n * @param str String to append\n */\n appendAsciiStr(i) {\n const a = this._buffer8, t = this._buffer32;\n let e = this._bufferLength, s, r = 0;\n for (; ; ) {\n for (s = Math.min(i.length - r, 64 - e); s--; )\n a[e++] = i.charCodeAt(r++);\n if (e < 64)\n break;\n this._dataLength += 64, h._md5cycle(this._state, t), e = 0;\n }\n return this._bufferLength = e, this;\n }\n /**\n * Append a byte array to the hash buffer\n * @param input array to append\n */\n appendByteArray(i) {\n const a = this._buffer8, t = this._buffer32;\n let e = this._bufferLength, s, r = 0;\n for (; ; ) {\n for (s = Math.min(i.length - r, 64 - e); s--; )\n a[e++] = i[r++];\n if (e < 64)\n break;\n this._dataLength += 64, h._md5cycle(this._state, t), e = 0;\n }\n return this._bufferLength = e, this;\n }\n /**\n * Get the state of the hash buffer\n */\n getState() {\n const i = this._state;\n return {\n buffer: String.fromCharCode.apply(null, Array.from(this._buffer8)),\n buflen: this._bufferLength,\n length: this._dataLength,\n state: [i[0], i[1], i[2], i[3]]\n };\n }\n /**\n * Override the current state of the hash buffer\n * @param state New hash buffer state\n */\n setState(i) {\n const a = i.buffer, t = i.state, e = this._state;\n let s;\n for (this._dataLength = i.length, this._bufferLength = i.buflen, e[0] = t[0], e[1] = t[1], e[2] = t[2], e[3] = t[3], s = 0; s < a.length; s += 1)\n this._buffer8[s] = a.charCodeAt(s);\n }\n /**\n * Hash the current state of the hash buffer and return the result\n * @param raw Whether to return the value as an `Int32Array`\n */\n end(i = !1) {\n const a = this._bufferLength, t = this._buffer8, e = this._buffer32, s = (a >> 2) + 1;\n this._dataLength += a;\n const r = this._dataLength * 8;\n if (t[a] = 128, t[a + 1] = t[a + 2] = t[a + 3] = 0, e.set(h.buffer32Identity.subarray(s), s), a > 55 && (h._md5cycle(this._state, e), e.set(h.buffer32Identity)), r <= 4294967295)\n e[14] = r;\n else {\n const n = r.toString(16).match(/(.*?)(.{0,8})$/);\n if (n === null) return i ? c : \"\";\n const o = parseInt(n[2], 16), _ = parseInt(n[1], 16) || 0;\n e[14] = o, e[15] = _;\n }\n return h._md5cycle(this._state, e), i ? this._state : h._hex(this._state);\n }\n}\nif (h.hashStr(\"hello\") !== \"5d41402abc4b2a76b9719d911017c592\")\n throw new Error(\"Md5 self test failed.\");\nclass l {\n constructor(i, a = !0, t = 1048576) {\n this._callback = i, this._async = a, this._partSize = t, this._configureReader();\n }\n _reader;\n _md5;\n _part;\n // private _length!: number;\n _blob;\n /**\n * Hash a blob of data in the worker\n * @param blob Data to hash\n */\n hash(i) {\n const a = this;\n a._blob = i, a._part = 0, a._md5 = new h(), a._processPart();\n }\n _fail() {\n this._callback({\n success: !1,\n result: \"data read failed\"\n });\n }\n _hashData(i) {\n let a = this;\n a._md5.appendByteArray(new Uint8Array(i.target.result)), a._part * a._partSize >= a._blob.size ? a._callback({\n success: !0,\n result: a._md5.end()\n }) : a._processPart();\n }\n _processPart() {\n const i = this;\n let a = 0, t;\n i._part += 1, i._blob.size > i._partSize ? (a = i._part * i._partSize, a > i._blob.size && (a = i._blob.size), t = i._blob.slice(\n (i._part - 1) * i._partSize,\n a\n )) : t = i._blob, i._async ? i._reader.readAsArrayBuffer(t) : setTimeout(() => {\n try {\n i._hashData({\n target: {\n result: i._reader.readAsArrayBuffer(\n t\n )\n }\n });\n } catch {\n i._fail();\n }\n }, 0);\n }\n _configureReader() {\n const i = this;\n i._async ? (i._reader = new FileReader(), i._reader.onload = i._hashData.bind(i), i._reader.onerror = i._fail.bind(i), i._reader.onabort = i._fail.bind(i)) : i._reader = new FileReaderSync();\n }\n}\nclass u {\n _queue = [];\n _hashWorker;\n _processing;\n _ready = !0;\n constructor(i, a) {\n const t = this;\n Worker ? (t._hashWorker = new Worker(i, a), t._hashWorker.onmessage = t._recievedMessage.bind(t), t._hashWorker.onerror = (e) => {\n t._ready = !1, console.error(\"Hash worker failure\", e);\n }) : (t._ready = !1, console.error(\"Web Workers are not supported in this browser\"));\n }\n /**\n * Hash a blob of data in the worker\n * @param blob Data to hash\n * @returns Promise of the Hashed result\n */\n hash(i) {\n const a = this;\n let t;\n return t = new Promise((e, s) => {\n a._queue.push({\n blob: i,\n resolve: e,\n reject: s\n }), a._processNext();\n }), t;\n }\n /** Terminate any existing hash requests */\n terminate() {\n this._ready = !1, this._hashWorker.terminate();\n }\n // Processes the next item in the queue\n _processNext() {\n this._ready && !this._processing && this._queue.length > 0 && (this._processing = this._queue.pop(), this._hashWorker.postMessage(this._processing.blob));\n }\n // Hash result is returned from the worker\n _recievedMessage(i) {\n const a = i.data;\n a.success ? this._processing?.resolve(a.result) : this._processing?.reject(a.result), this._processing = void 0, this._processNext();\n }\n}\nexport {\n h as Md5,\n l as Md5FileHasher,\n u as ParallelHasher\n};\n//# sourceMappingURL=index.es.js.map\n","import { r as register, t as t3, a as t } from \"./_l10n-wdIzZwir.mjs\";\nregister(t3);\nclass Color {\n /**\n * @param r - The red value\n * @param g - The green value\n * @param b - The blue value\n * @param name - The name of the color\n */\n constructor(r, g, b, name) {\n this.r = r;\n this.g = g;\n this.b = b;\n this.name = name;\n this.r = Math.min(r, 255);\n this.g = Math.min(g, 255);\n this.b = Math.min(b, 255);\n this.name = name;\n }\n r;\n g;\n b;\n name;\n /**\n * The hexadecimal color string.\n */\n get color() {\n const toHex = (int) => `00${int.toString(16)}`.slice(-2);\n return `#${toHex(this.r)}${toHex(this.g)}${toHex(this.b)}`;\n }\n}\nfunction calculateStepIncrement(steps, color1, color2) {\n return {\n r: (color2.r - color1.r) / steps,\n g: (color2.g - color1.g) / steps,\n b: (color2.b - color1.b) / steps\n };\n}\nfunction mixPalette(steps, color1, color2) {\n const palette = [];\n palette.push(color1);\n const increment = calculateStepIncrement(steps, color1, color2);\n for (let i = 1; i < steps; i++) {\n const r = Math.floor(color1.r + increment.r * i);\n const g = Math.floor(color1.g + increment.g * i);\n const b = Math.floor(color1.b + increment.b * i);\n palette.push(new Color(r, g, b));\n }\n return palette;\n}\nconst COLOR_RED = new Color(182, 70, 157, t(\"Purple\"));\nconst COLOR_YELLOW = new Color(221, 203, 85, t(\"Gold\"));\nconst COLOR_BLUE = new Color(0, 130, 201, t(\"Nextcloud blue\"));\nconst COLOR_BLACK = new Color(0, 0, 0, t(\"Black\"));\nconst COLOR_WHITE = new Color(255, 255, 255, t(\"White\"));\nconst defaultPalette = [\n COLOR_RED,\n new Color(\n ...[191, 103, 139],\n t(\"Rosy brown\")\n // TRANSLATORS: A color name for RGB(191, 103, 139)\n ),\n new Color(\n ...[201, 136, 121],\n t(\"Feldspar\")\n // TRANSLATORS: A color name for RGB(201, 136, 121)\n ),\n new Color(\n ...[211, 169, 103],\n t(\"Whiskey\")\n // TRANSLATORS: A color name for RGB(211, 169, 103)\n ),\n COLOR_YELLOW,\n new Color(\n ...[165, 184, 114],\n t(\"Olivine\")\n // TRANSLATORS: A color name for RGB(165, 184, 114)\n ),\n new Color(\n ...[110, 166, 143],\n t(\"Acapulco\")\n // TRANSLATORS: A color name for RGB(110, 166, 143)\n ),\n new Color(\n ...[55, 148, 172],\n t(\"Boston Blue\")\n // TRANSLATORS: A color name for RGB(55, 148, 172)\n ),\n COLOR_BLUE,\n new Color(\n ...[45, 115, 190],\n t(\"Mariner\")\n // TRANSLATORS: A color name for RGB(45, 115, 190)\n ),\n new Color(\n ...[91, 100, 179],\n t(\"Blue Violet\")\n // TRANSLATORS: A color name for RGB(91, 100, 179)\n ),\n new Color(\n ...[136, 85, 168],\n t(\"Deluge\")\n // TRANSLATORS: A color name for RGB(136, 85, 168)\n )\n];\nfunction generatePalette(steps) {\n const palette1 = mixPalette(steps, COLOR_RED, COLOR_YELLOW);\n const palette2 = mixPalette(steps, COLOR_YELLOW, COLOR_BLUE);\n const palette3 = mixPalette(steps, COLOR_BLUE, COLOR_RED);\n return palette1.concat(palette2).concat(palette3);\n}\nexport {\n Color as C,\n COLOR_BLACK as a,\n COLOR_WHITE as b,\n defaultPalette as d,\n generatePalette as g\n};\n//# sourceMappingURL=colors-Cv9F-jWS.mjs.map\n","import { Md5 } from \"ts-md5\";\nimport { g as generatePalette } from \"../../chunks/colors-Cv9F-jWS.mjs\";\nfunction hashCode(str) {\n let hash = str;\n if (str.match(/^([0-9a-f]{4}-?){8}$/) === null) {\n hash = Md5.hashStr(str);\n }\n hash = hash.replace(/[^0-9a-f]/g, \"\");\n let finalInt = 0;\n for (let i = 0; i < hash.length; i++) {\n finalInt += parseInt(hash.charAt(i), 16);\n }\n return finalInt;\n}\nfunction usernameToColor(username) {\n const steps = 6;\n const finalPalette = generatePalette(steps);\n const hash = hashCode(username.toLocaleLowerCase());\n return finalPalette[hash % finalPalette.length];\n}\nexport {\n usernameToColor\n};\n//# sourceMappingURL=index.mjs.map\n","'use strict';\n\n(function (global) {\n\n // minimal symbol polyfill for IE11 and others\n if (typeof Symbol !== 'function') {\n var Symbol = function(name) {\n return name;\n }\n\n Symbol.nonNative = true;\n }\n\n const STATE_PLAINTEXT = Symbol('plaintext');\n const STATE_HTML = Symbol('html');\n const STATE_COMMENT = Symbol('comment');\n\n const ALLOWED_TAGS_REGEX = /<(\\w*)>/g;\n const NORMALIZE_TAG_REGEX = /<\\/?([^\\s\\/>]+)/;\n\n function striptags(html, allowable_tags, tag_replacement) {\n html = html || '';\n allowable_tags = allowable_tags || [];\n tag_replacement = tag_replacement || '';\n\n let context = init_context(allowable_tags, tag_replacement);\n\n return striptags_internal(html, context);\n }\n\n function init_striptags_stream(allowable_tags, tag_replacement) {\n allowable_tags = allowable_tags || [];\n tag_replacement = tag_replacement || '';\n\n let context = init_context(allowable_tags, tag_replacement);\n\n return function striptags_stream(html) {\n return striptags_internal(html || '', context);\n };\n }\n\n striptags.init_streaming_mode = init_striptags_stream;\n\n function init_context(allowable_tags, tag_replacement) {\n allowable_tags = parse_allowable_tags(allowable_tags);\n\n return {\n allowable_tags : allowable_tags,\n tag_replacement: tag_replacement,\n\n state : STATE_PLAINTEXT,\n tag_buffer : '',\n depth : 0,\n in_quote_char : ''\n };\n }\n\n function striptags_internal(html, context) {\n if (typeof html != \"string\") {\n throw new TypeError(\"'html' parameter must be a string\");\n }\n\n let allowable_tags = context.allowable_tags;\n let tag_replacement = context.tag_replacement;\n\n let state = context.state;\n let tag_buffer = context.tag_buffer;\n let depth = context.depth;\n let in_quote_char = context.in_quote_char;\n let output = '';\n\n for (let idx = 0, length = html.length; idx < length; idx++) {\n let char = html[idx];\n\n if (state === STATE_PLAINTEXT) {\n switch (char) {\n case '<':\n state = STATE_HTML;\n tag_buffer += char;\n break;\n\n default:\n output += char;\n break;\n }\n }\n\n else if (state === STATE_HTML) {\n switch (char) {\n case '<':\n // ignore '<' if inside a quote\n if (in_quote_char) {\n break;\n }\n\n // we're seeing a nested '<'\n depth++;\n break;\n\n case '>':\n // ignore '>' if inside a quote\n if (in_quote_char) {\n break;\n }\n\n // something like this is happening: '<<>>'\n if (depth) {\n depth--;\n\n break;\n }\n\n // this is closing the tag in tag_buffer\n in_quote_char = '';\n state = STATE_PLAINTEXT;\n tag_buffer += '>';\n\n if (allowable_tags.has(normalize_tag(tag_buffer))) {\n output += tag_buffer;\n } else {\n output += tag_replacement;\n }\n\n tag_buffer = '';\n break;\n\n case '\"':\n case '\\'':\n // catch both single and double quotes\n\n if (char === in_quote_char) {\n in_quote_char = '';\n } else {\n in_quote_char = in_quote_char || char;\n }\n\n tag_buffer += char;\n break;\n\n case '-':\n if (tag_buffer === '':\n if (tag_buffer.slice(-2) == '--') {\n // close the comment\n state = STATE_PLAINTEXT;\n }\n\n tag_buffer = '';\n break;\n\n default:\n tag_buffer += char;\n break;\n }\n }\n }\n\n // save the context for future iterations\n context.state = state;\n context.tag_buffer = tag_buffer;\n context.depth = depth;\n context.in_quote_char = in_quote_char;\n\n return output;\n }\n\n function parse_allowable_tags(allowable_tags) {\n let tag_set = new Set();\n\n if (typeof allowable_tags === 'string') {\n let match;\n\n while ((match = ALLOWED_TAGS_REGEX.exec(allowable_tags))) {\n tag_set.add(match[1]);\n }\n }\n\n else if (!Symbol.nonNative &&\n typeof allowable_tags[Symbol.iterator] === 'function') {\n\n tag_set = new Set(allowable_tags);\n }\n\n else if (typeof allowable_tags.forEach === 'function') {\n // IE11 compatible\n allowable_tags.forEach(tag_set.add, tag_set);\n }\n\n return tag_set;\n }\n\n function normalize_tag(tag_buffer) {\n let match = NORMALIZE_TAG_REGEX.exec(tag_buffer);\n\n return match ? match[1].toLowerCase() : null;\n }\n\n if (typeof define === 'function' && define.amd) {\n // AMD\n define(function module_factory() { return striptags; });\n }\n\n else if (typeof module === 'object' && module.exports) {\n // Node\n module.exports = striptags;\n }\n\n else {\n // Browser\n global.striptags = striptags;\n }\n}(this));\n","import '../assets/NcMentionBubble-BeGb2xGc.css';\nimport { generateUrl } from \"@nextcloud/router\";\nimport { checkIfDarkTheme } from \"../functions/isDarkTheme/index.mjs\";\nfunction getAvatarUrl(user, options) {\n const size = (options?.size || 64) <= 64 ? 64 : 512;\n const guestUrl = options?.isGuest ? \"/guest\" : \"\";\n const themeUrl = options?.isDarkTheme ?? checkIfDarkTheme(document.body) ? \"/dark\" : \"\";\n return generateUrl(`/avatar${guestUrl}/{user}/{size}${themeUrl}?guestFallback=true`, {\n user,\n size\n });\n}\nexport {\n getAvatarUrl as g\n};\n//# sourceMappingURL=NcMentionBubble.vue_vue_type_style_index_0_scoped_3c4a673d_lang-DyqakLm5.mjs.map\n","import '../assets/NcUserStatusIcon-B3aHoBAd.css';\nimport { defineComponent, useModel, computed, watch, openBlock, createElementBlock, normalizeClass, createCommentVNode, mergeModels } from \"vue\";\nimport axios from \"@nextcloud/axios\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport { generateOcsUrl } from \"@nextcloud/router\";\nimport { r as register, Q as t52, R as t11, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst awaySvg = '\\n\\n\t\\n\\n';\nconst busySvg = '\\n\\n\t\\n\\n';\nconst dndSvg = '\\n\\n\t\\n\\n';\nconst invisibleSvg = '\\n\\n\t\\n\\n';\nconst onlineSvg = '\\n\\n\t\\n\\n';\nregister(t52);\nregister(t11);\nfunction getUserStatusText(status) {\n switch (status) {\n case \"away\":\n return t(\"away\");\n // TRANSLATORS: User status if the user is currently away from keyboard\n case \"busy\":\n return t(\"busy\");\n case \"dnd\":\n return t(\"do not disturb\");\n case \"online\":\n return t(\"online\");\n case \"invisible\":\n return t(\"invisible\");\n case \"offline\":\n return t(\"offline\");\n default:\n return status;\n }\n}\nconst _hoisted_1 = [\"aria-hidden\", \"aria-label\", \"innerHTML\"];\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcUserStatusIcon\",\n props: /* @__PURE__ */ mergeModels({\n user: { default: void 0 },\n ariaHidden: { type: [Boolean, String], default: false }\n }, {\n \"status\": {},\n \"statusModifiers\": {}\n }),\n emits: [\"update:status\"],\n setup(__props) {\n const status = useModel(__props, \"status\");\n const props = __props;\n const isInvisible = computed(() => status.value && [\"invisible\", \"offline\"].includes(status.value));\n const ariaLabel = computed(() => status.value && (!props.ariaHidden || props.ariaHidden === \"false\") ? t(\"User status: {status}\", { status: getUserStatusText(status.value) }) : void 0);\n watch(() => props.user, async (user) => {\n if (!status.value && user && getCapabilities()?.user_status?.enabled) {\n try {\n const { data } = await axios.get(generateOcsUrl(\"/apps/user_status/api/v1/statuses/{user}\", { user }));\n status.value = data.ocs?.data?.status;\n } catch (error) {\n logger.debug(\"Error while fetching user status\", { error });\n }\n }\n }, { immediate: true });\n const matchSvg = {\n online: onlineSvg,\n away: awaySvg,\n busy: busySvg,\n dnd: dndSvg,\n invisible: invisibleSvg,\n offline: invisibleSvg\n };\n const activeSvg = computed(() => status.value && matchSvg[status.value]);\n return (_ctx, _cache) => {\n return status.value ? (openBlock(), createElementBlock(\"span\", {\n key: 0,\n class: normalizeClass([\"user-status-icon\", {\n \"user-status-icon--invisible\": isInvisible.value\n }]),\n \"aria-hidden\": !ariaLabel.value || void 0,\n \"aria-label\": ariaLabel.value,\n role: \"img\",\n innerHTML: activeSvg.value\n }, null, 10, _hoisted_1)) : createCommentVNode(\"\", true);\n };\n }\n});\nconst NcUserStatusIcon = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-881a79fb\"]]);\nexport {\n NcUserStatusIcon as N,\n getUserStatusText as g\n};\n//# sourceMappingURL=NcUserStatusIcon-BF5OEQFU.mjs.map\n","import '../assets/NcActionLink-b4Ph5q10.css';\nimport { A as ActionTextMixin } from \"./actionText-BXR0sWNu.mjs\";\nimport { a as NC_ACTIONS_IS_SEMANTIC_MENU } from \"./useNcActions-BzPO2c4h.mjs\";\nimport { openBlock, createElementBlock, createElementVNode, renderSlot, normalizeStyle, normalizeClass, toDisplayString, createCommentVNode } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcActionLink\",\n mixins: [ActionTextMixin],\n inject: {\n isInSemanticMenu: {\n from: NC_ACTIONS_IS_SEMANTIC_MENU,\n default: false\n }\n },\n props: {\n /**\n * destionation to link to\n */\n href: {\n type: String,\n required: true,\n validator: (value) => {\n try {\n return new URL(value);\n } catch {\n return value.startsWith(\"#\") || value.startsWith(\"/\");\n }\n }\n },\n /**\n * download the link instead of opening\n */\n download: {\n type: String,\n default: null\n },\n /**\n * target to open the link\n */\n target: {\n type: String,\n default: \"_self\",\n validator: (value) => {\n return value && (!value.startsWith(\"_\") || [\"_blank\", \"_self\", \"_parent\", \"_top\"].indexOf(value) > -1);\n }\n },\n /**\n * Declares a native tooltip when not null\n */\n title: {\n type: String,\n default: null\n }\n }\n};\nconst _hoisted_1 = [\"role\"];\nconst _hoisted_2 = [\"download\", \"href\", \"aria-label\", \"target\", \"title\", \"role\"];\nconst _hoisted_3 = {\n key: 0,\n class: \"action-link__longtext-wrapper\"\n};\nconst _hoisted_4 = { class: \"action-link__name\" };\nconst _hoisted_5 = [\"textContent\"];\nconst _hoisted_6 = [\"textContent\"];\nconst _hoisted_7 = {\n key: 2,\n class: \"action-link__text\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"li\", {\n class: \"action\",\n role: $options.isInSemanticMenu && \"presentation\"\n }, [\n createElementVNode(\"a\", {\n download: $props.download,\n href: $props.href,\n \"aria-label\": _ctx.ariaLabel,\n target: $props.target,\n title: $props.title,\n class: \"action-link focusable\",\n rel: \"nofollow noreferrer noopener\",\n role: $options.isInSemanticMenu && \"menuitem\",\n onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClick && _ctx.onClick(...args))\n }, [\n renderSlot(_ctx.$slots, \"icon\", {}, () => [\n createElementVNode(\"span\", {\n \"aria-hidden\": \"true\",\n class: normalizeClass([\"action-link__icon\", [_ctx.isIconUrl ? \"action-link__icon--url\" : _ctx.icon]]),\n style: normalizeStyle({ backgroundImage: _ctx.isIconUrl ? `url(${_ctx.icon})` : null })\n }, null, 6)\n ], true),\n _ctx.name ? (openBlock(), createElementBlock(\"span\", _hoisted_3, [\n createElementVNode(\"strong\", _hoisted_4, toDisplayString(_ctx.name), 1),\n _cache[1] || (_cache[1] = createElementVNode(\"br\", null, null, -1)),\n createElementVNode(\"span\", {\n class: \"action-link__longtext\",\n textContent: toDisplayString(_ctx.text)\n }, null, 8, _hoisted_5)\n ])) : _ctx.isLongText ? (openBlock(), createElementBlock(\"span\", {\n key: 1,\n class: \"action-link__longtext\",\n textContent: toDisplayString(_ctx.text)\n }, null, 8, _hoisted_6)) : (openBlock(), createElementBlock(\"span\", _hoisted_7, toDisplayString(_ctx.text), 1)),\n createCommentVNode(\"\", true)\n ], 8, _hoisted_2)\n ], 8, _hoisted_1);\n}\nconst NcActionLink = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-32f01b7a\"]]);\nexport {\n NcActionLink as N\n};\n//# sourceMappingURL=NcActionLink-BFiaYt9A.mjs.map\n","import '../assets/NcActionRouter-BWXfCfxM.css';\nimport { A as ActionTextMixin } from \"./actionText-BXR0sWNu.mjs\";\nimport { a as NC_ACTIONS_IS_SEMANTIC_MENU } from \"./useNcActions-BzPO2c4h.mjs\";\nimport { resolveComponent, openBlock, createElementBlock, createVNode, withCtx, renderSlot, createElementVNode, normalizeStyle, normalizeClass, toDisplayString, createCommentVNode } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcActionRouter\",\n mixins: [ActionTextMixin],\n inject: {\n isInSemanticMenu: {\n from: NC_ACTIONS_IS_SEMANTIC_MENU,\n default: false\n }\n },\n props: {\n /**\n * router-link to prop [https://router.vuejs.org/api/#to](https://router.vuejs.org/api/#to)\n */\n to: {\n type: [String, Object],\n required: true\n }\n }\n};\nconst _hoisted_1 = [\"role\"];\nconst _hoisted_2 = {\n key: 0,\n class: \"action-router__longtext-wrapper\"\n};\nconst _hoisted_3 = { class: \"action-router__name\" };\nconst _hoisted_4 = [\"textContent\"];\nconst _hoisted_5 = [\"textContent\"];\nconst _hoisted_6 = {\n key: 2,\n class: \"action-router__text\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_RouterLink = resolveComponent(\"RouterLink\");\n return openBlock(), createElementBlock(\"li\", {\n class: \"action\",\n role: $options.isInSemanticMenu && \"presentation\"\n }, [\n createVNode(_component_RouterLink, {\n \"aria-label\": _ctx.ariaLabel,\n class: \"action-router focusable\",\n rel: \"nofollow noreferrer noopener\",\n role: $options.isInSemanticMenu && \"menuitem\",\n title: _ctx.title,\n to: $props.to,\n onClick: _ctx.onClick\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"icon\", {}, () => [\n createElementVNode(\"span\", {\n \"aria-hidden\": \"true\",\n class: normalizeClass([\"action-router__icon\", [_ctx.isIconUrl ? \"action-router__icon--url\" : _ctx.icon]]),\n style: normalizeStyle({ backgroundImage: _ctx.isIconUrl ? `url(${_ctx.icon})` : null })\n }, null, 6)\n ], true),\n _ctx.name ? (openBlock(), createElementBlock(\"span\", _hoisted_2, [\n createElementVNode(\"strong\", _hoisted_3, toDisplayString(_ctx.name), 1),\n _cache[0] || (_cache[0] = createElementVNode(\"br\", null, null, -1)),\n createElementVNode(\"span\", {\n class: \"action-router__longtext\",\n textContent: toDisplayString(_ctx.text)\n }, null, 8, _hoisted_4)\n ])) : _ctx.isLongText ? (openBlock(), createElementBlock(\"span\", {\n key: 1,\n class: \"action-router__longtext\",\n textContent: toDisplayString(_ctx.text)\n }, null, 8, _hoisted_5)) : (openBlock(), createElementBlock(\"span\", _hoisted_6, toDisplayString(_ctx.text), 1)),\n createCommentVNode(\"\", true)\n ]),\n _: 3\n }, 8, [\"aria-label\", \"role\", \"title\", \"to\", \"onClick\"])\n ], 8, _hoisted_1);\n}\nconst NcActionRouter = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-87267750\"]]);\nexport {\n NcActionRouter as N\n};\n//# sourceMappingURL=NcActionRouter-vYFtIOzD.mjs.map\n","import '../assets/NcActionText-Dzegj6AY.css';\nimport { A as ActionTextMixin } from \"./actionText-BXR0sWNu.mjs\";\nimport { a as NC_ACTIONS_IS_SEMANTIC_MENU } from \"./useNcActions-BzPO2c4h.mjs\";\nimport { openBlock, createElementBlock, createElementVNode, renderSlot, normalizeStyle, normalizeClass, createCommentVNode, toDisplayString } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcActionText\",\n mixins: [ActionTextMixin],\n inject: {\n isInSemanticMenu: {\n from: NC_ACTIONS_IS_SEMANTIC_MENU,\n default: false\n }\n }\n};\nconst _hoisted_1 = [\"role\"];\nconst _hoisted_2 = {\n key: 0,\n class: \"action-text__longtext-wrapper\"\n};\nconst _hoisted_3 = { class: \"action-text__name\" };\nconst _hoisted_4 = [\"textContent\"];\nconst _hoisted_5 = [\"textContent\"];\nconst _hoisted_6 = {\n key: 2,\n class: \"action-text__text\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"li\", {\n class: \"action\",\n role: $options.isInSemanticMenu && \"presentation\"\n }, [\n createElementVNode(\"span\", {\n class: \"action-text\",\n onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClick && _ctx.onClick(...args))\n }, [\n renderSlot(_ctx.$slots, \"icon\", {}, () => [\n _ctx.icon !== \"\" ? (openBlock(), createElementBlock(\"span\", {\n key: 0,\n \"aria-hidden\": \"true\",\n class: normalizeClass([\"action-text__icon\", [_ctx.isIconUrl ? \"action-text__icon--url\" : _ctx.icon]]),\n style: normalizeStyle({ backgroundImage: _ctx.isIconUrl ? `url(${_ctx.icon})` : null })\n }, null, 6)) : createCommentVNode(\"\", true)\n ], true),\n _ctx.name ? (openBlock(), createElementBlock(\"span\", _hoisted_2, [\n createElementVNode(\"strong\", _hoisted_3, toDisplayString(_ctx.name), 1),\n createElementVNode(\"span\", {\n class: \"action-text__longtext\",\n textContent: toDisplayString(_ctx.text)\n }, null, 8, _hoisted_4)\n ])) : _ctx.isLongText ? (openBlock(), createElementBlock(\"span\", {\n key: 1,\n class: \"action-text__longtext\",\n textContent: toDisplayString(_ctx.text)\n }, null, 8, _hoisted_5)) : (openBlock(), createElementBlock(\"span\", _hoisted_6, toDisplayString(_ctx.text), 1)),\n createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_1);\n}\nconst NcActionText = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-fa684b48\"]]);\nexport {\n NcActionText as N\n};\n//# sourceMappingURL=NcActionText-CQ9qwJ0p.mjs.map\n","import '../assets/NcAvatar-Bs7qEhkA.css';\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport axios from \"@nextcloud/axios\";\nimport { getBuilder } from \"@nextcloud/browser-storage\";\nimport { unsubscribe, subscribe } from \"@nextcloud/event-bus\";\nimport { generateOcsUrl, generateUrl } from \"@nextcloud/router\";\nimport { vOnClickOutside } from \"@vueuse/components\";\nimport { N as NcActions, I as IconDotsHorizontal } from \"./NcActions-C-wDqSrv.mjs\";\nimport { g as getRoute } from \"./autolink-DrIurosL.mjs\";\nimport \"../composables/useFormatDateTime/index.mjs\";\nimport \"../composables/useHotKey/index.mjs\";\nimport { useIsDarkTheme } from \"../composables/useIsDarkTheme/index.mjs\";\nimport \"../composables/useIsFullscreen/index.mjs\";\nimport \"../composables/useIsMobile/index.mjs\";\nimport { getEnabledContactsMenuActions } from \"../functions/contactsMenu/index.mjs\";\nimport { usernameToColor } from \"../functions/usernameToColor/index.mjs\";\nimport { r as register, m as t10, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport \"escape-html\";\nimport \"striptags\";\nimport { resolveComponent, resolveDirective, withDirectives, openBlock, createElementBlock, normalizeStyle, normalizeClass, renderSlot, createCommentVNode, createBlock, withCtx, createSlots, Fragment, renderList, resolveDynamicComponent, mergeProps, createTextVNode, toDisplayString, createVNode, createElementVNode } from \"vue\";\nimport { g as getAvatarUrl } from \"./NcMentionBubble.vue_vue_type_style_index_0_scoped_3c4a673d_lang-DyqakLm5.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport { l as logger } from \"./logger-D3RVzcfQ.mjs\";\nimport { N as NcUserStatusIcon, g as getUserStatusText } from \"./NcUserStatusIcon-BF5OEQFU.mjs\";\nimport { N as NcActionButton } from \"./NcActionButton-BO5T5ePT.mjs\";\nimport { N as NcActionLink } from \"./NcActionLink-BFiaYt9A.mjs\";\nimport { N as NcActionRouter } from \"./NcActionRouter-vYFtIOzD.mjs\";\nimport { N as NcActionText } from \"./NcActionText-CQ9qwJ0p.mjs\";\nimport { N as NcButton } from \"./NcButton-jvoYS2my.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { N as NcLoadingIcon } from \"./NcLoadingIcon-BOVpFVQz.mjs\";\nregister(t10);\nconst userStatus = {\n data() {\n return {\n hasStatus: false,\n userStatus: {\n status: null,\n message: null,\n icon: null\n }\n };\n },\n methods: {\n /**\n * Fetches the user-status from the server\n *\n * @param {string} userId UserId of the user to fetch the status for\n *\n * @return {Promise}\n */\n async fetchUserStatus(userId) {\n if (!userId) {\n return;\n }\n const capabilities = getCapabilities();\n if (!Object.hasOwn(capabilities, \"user_status\") || !capabilities.user_status.enabled) {\n return;\n }\n if (!getCurrentUser()) {\n return;\n }\n try {\n const { data } = await axios.get(generateOcsUrl(\"apps/user_status/api/v1/statuses/{userId}\", { userId }));\n this.setUserStatus(data.ocs.data);\n } catch (e) {\n if (e.response.status === 404 && e.response.data.ocs?.data?.length === 0) {\n return;\n }\n logger.error(\"Failed to fetch user status\", { error: e });\n }\n },\n /**\n * Sets the user status\n *\n * @param {Record} options - Options for setting the user status\n * @param {string} options.status user's status\n * @param {string} options.message user's message\n * @param {string} options.icon user's icon\n */\n setUserStatus({ status, message, icon }) {\n this.userStatus.status = status || \"\";\n this.userStatus.message = message || \"\";\n this.userStatus.icon = icon || \"\";\n this.hasStatus = !!status;\n }\n }\n};\nconst browserStorage = getBuilder(\"nextcloud\").persist().build();\nfunction getUserHasAvatar(userId) {\n const flag = browserStorage.getItem(\"user-has-avatar.\" + userId);\n if (typeof flag === \"string\") {\n return Boolean(flag);\n }\n return null;\n}\nfunction setUserHasAvatar(userId, flag) {\n if (userId) {\n browserStorage.setItem(\"user-has-avatar.\" + userId, flag);\n }\n}\nconst _sfc_main = {\n name: \"NcAvatar\",\n directives: {\n /** @type {import('vue').ObjectDirective} */\n ClickOutside: vOnClickOutside\n },\n components: {\n IconDotsHorizontal,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcLoadingIcon,\n NcUserStatusIcon\n },\n mixins: [userStatus],\n props: {\n /**\n * Set a custom url to the avatar image\n * either the url, user or displayName property must be defined\n */\n url: {\n type: String,\n default: void 0\n },\n /**\n * Set a css icon-class for an icon to be used instead of the avatar.\n */\n iconClass: {\n type: String,\n default: void 0\n },\n /**\n * Set the user id to fetch the avatar\n * either the url, user or displayName property must be defined\n */\n user: {\n type: String,\n default: void 0\n },\n /**\n * Do not show the user status on the avatar.\n */\n hideStatus: {\n type: Boolean,\n default: false\n },\n /**\n * Show the verbose user status (e.g. \"online\" / \"away\") instead of just the status icon.\n */\n verboseStatus: {\n type: Boolean,\n default: false\n },\n /**\n * When the user status was preloaded via another source it can be handed in with this property to save the request.\n * If this property is not set the status will be fetched automatically.\n * If a preloaded no-status is available provide this object with properties \"status\", \"icon\" and \"message\" set to null.\n */\n preloadedUserStatus: {\n type: Object,\n default: void 0\n },\n /**\n * Is the user a guest user (then we have to user a different endpoint)\n */\n isGuest: {\n type: Boolean,\n default: false\n },\n /**\n * Set a display name that will be rendered as a tooltip\n * either the url, user or displayName property must be defined\n * specify just the displayname to generate a placeholder avatar without\n * trying to fetch the avatar based on the user id\n */\n displayName: {\n type: String,\n default: void 0\n },\n /**\n * Set a size in px for the rendered avatar\n */\n size: {\n type: Number,\n default: 32\n },\n /**\n * Do not automatically generate a placeholder avatars if there is no real avatar is available.\n */\n noPlaceholder: {\n type: Boolean,\n default: false\n },\n /**\n * Disable the tooltip\n */\n disableTooltip: {\n type: Boolean,\n default: false\n },\n /**\n * Disable the menu\n */\n disableMenu: {\n type: Boolean,\n default: false\n },\n /**\n * Declares a custom tooltip when not null\n * Fallback will be the displayName\n *\n * requires disableTooltip not to be set to true\n */\n tooltipMessage: {\n type: String,\n default: null\n },\n /**\n * Declares username is not a user's name, when true.\n * Prevents loading user's avatar from server and forces generating colored initials,\n * i.e. if the user is a group\n */\n isNoUser: {\n type: Boolean,\n default: false\n },\n /**\n * Selector for the popover menu container\n */\n menuContainer: {\n type: [Boolean, String, Object, Element],\n default: \"body\"\n }\n },\n setup() {\n const isDarkTheme = useIsDarkTheme();\n return {\n isDarkTheme\n };\n },\n data() {\n return {\n avatarUrlLoaded: null,\n avatarSrcSetLoaded: null,\n userDoesNotExist: false,\n isAvatarLoaded: false,\n isMenuLoaded: false,\n contactsMenuLoading: false,\n contactsMenuData: {},\n contactsMenuActions: [],\n contactsMenuOpenState: false\n };\n },\n computed: {\n avatarAriaLabel() {\n if (!this.hasMenu) {\n return;\n }\n if (this.canDisplayUserStatus || this.showUserStatusIconOnAvatar) {\n return t(\"Avatar of {displayName}, {status}\", { displayName: this.displayName ?? this.user, status: getUserStatusText(this.userStatus.status) });\n }\n return t(\"Avatar of {displayName}\", { displayName: this.displayName ?? this.user });\n },\n canDisplayUserStatus() {\n return !this.hideStatus && this.hasStatus && [\"online\", \"away\", \"busy\", \"dnd\"].includes(this.userStatus.status);\n },\n showUserStatusIconOnAvatar() {\n return !this.hideStatus && !this.verboseStatus && this.hasStatus && this.userStatus.status !== \"dnd\" && this.userStatus.icon;\n },\n /**\n * The user identifier, either the display name if set or the user property\n * If both properties are not set an empty string is returned\n */\n userIdentifier() {\n if (this.isDisplayNameDefined) {\n return this.displayName;\n }\n if (this.isUserDefined) {\n return this.user;\n }\n return \"\";\n },\n isUserDefined() {\n return typeof this.user !== \"undefined\";\n },\n isDisplayNameDefined() {\n return typeof this.displayName !== \"undefined\";\n },\n isUrlDefined() {\n return typeof this.url !== \"undefined\";\n },\n hasMenu() {\n if (this.disableMenu) {\n return false;\n }\n if (this.isMenuLoaded) {\n return this.menu.length > 0;\n }\n return !(this.user === getCurrentUser()?.uid || this.userDoesNotExist || this.url);\n },\n /**\n * True if initials should be shown as the user icon fallback\n */\n showInitials() {\n return !this.noPlaceholder && this.userDoesNotExist && !(this.iconClass || this.$slots.icon);\n },\n avatarStyle() {\n return {\n \"--avatar-size\": this.size + \"px\",\n lineHeight: this.showInitials ? this.size + \"px\" : 0,\n fontSize: Math.round(this.size * 0.45) + \"px\"\n };\n },\n initialsWrapperStyle() {\n const { r, g, b } = usernameToColor(this.userIdentifier);\n return {\n backgroundColor: `rgba(${r}, ${g}, ${b}, 0.1)`\n };\n },\n initialsStyle() {\n const { r, g, b } = usernameToColor(this.userIdentifier);\n return {\n color: `rgb(${r}, ${g}, ${b})`\n };\n },\n tooltip() {\n if (this.disableTooltip) {\n return null;\n }\n if (this.tooltipMessage) {\n return this.tooltipMessage;\n }\n return this.displayName;\n },\n /**\n * Get the (max. two) initials of the user as uppcase string\n */\n initials() {\n let initials = \"?\";\n if (this.showInitials) {\n const user = this.userIdentifier.trim();\n if (user === \"\") {\n return initials;\n }\n const filteredChars = user.match(/[\\p{L}\\p{N}\\s]/gu);\n if (!filteredChars) {\n return initials;\n }\n const filtered = filteredChars.join(\"\");\n const idx = filtered.lastIndexOf(\" \");\n initials = String.fromCodePoint(filtered.codePointAt(0));\n if (idx !== -1) {\n initials = initials.concat(String.fromCodePoint(filtered.codePointAt(idx + 1)));\n }\n }\n return initials.toLocaleUpperCase();\n },\n menu() {\n const actions = this.contactsMenuActions.map((item) => {\n const route = getRoute(this.$router, item.hyperlink);\n return {\n ncActionComponent: route ? NcActionRouter : NcActionLink,\n ncActionComponentProps: route ? {\n to: route,\n icon: item.icon\n } : {\n href: item.hyperlink,\n icon: item.icon\n },\n text: item.title\n };\n });\n for (const action of getEnabledContactsMenuActions(this.contactsMenuData)) {\n try {\n actions.push({\n ncActionComponent: NcActionButton,\n ncActionComponentProps: {\n onClick: () => action.callback(this.contactsMenuData)\n },\n text: action.displayName(this.contactsMenuData),\n iconSvg: action.iconSvg(this.contactsMenuData)\n });\n } catch (error) {\n logger.error(`Failed to render ContactsMenu action ${action.id}`, {\n error,\n action\n });\n }\n }\n function escape(html) {\n const text = document.createTextNode(html);\n const p = document.createElement(\"p\");\n p.appendChild(text);\n return p.innerHTML;\n }\n if (!this.hideStatus && (this.userStatus.icon || this.userStatus.message)) {\n const emojiIcon = `\n\t\t\t\t\t${escape(this.userStatus.icon)}\n\t\t\t\t`;\n return [{\n ncActionComponent: NcActionText,\n ncActionComponentProps: {},\n iconSvg: this.userStatus.icon ? emojiIcon : void 0,\n text: `${this.userStatus.message}`\n }].concat(actions);\n }\n return actions;\n }\n },\n watch: {\n url() {\n this.userDoesNotExist = false;\n this.loadAvatarUrl();\n },\n user() {\n this.userDoesNotExist = false;\n this.isMenuLoaded = false;\n this.loadAvatarUrl();\n }\n },\n mounted() {\n this.loadAvatarUrl();\n subscribe(\"settings:avatar:updated\", this.loadAvatarUrl);\n subscribe(\"settings:display-name:updated\", this.loadAvatarUrl);\n if (!this.hideStatus && this.user && !this.isNoUser) {\n if (!this.preloadedUserStatus) {\n this.fetchUserStatus(this.user);\n } else {\n this.setUserStatus(this.preloadedUserStatus);\n }\n subscribe(\"user_status:status.updated\", this.handleUserStatusUpdated);\n } else if (!this.hideStatus && this.preloadedUserStatus) {\n this.setUserStatus(this.preloadedUserStatus);\n }\n },\n beforeUnmount() {\n unsubscribe(\"settings:avatar:updated\", this.loadAvatarUrl);\n unsubscribe(\"settings:display-name:updated\", this.loadAvatarUrl);\n unsubscribe(\"user_status:status.updated\", this.handleUserStatusUpdated);\n },\n methods: {\n t,\n handleUserStatusUpdated(state) {\n if (this.user === state.userId) {\n this.userStatus = {\n status: state.status,\n icon: state.icon,\n message: state.message\n };\n this.hasStatus = state.status !== null;\n }\n },\n /**\n * Toggle the popover menu on click or enter\n *\n * @param {KeyboardEvent|MouseEvent} event the UI event\n */\n async toggleMenu(event) {\n if (event.type === \"keydown\" && event.key !== \"Enter\") {\n return;\n }\n if (!this.contactsMenuOpenState) {\n await this.fetchContactsMenu();\n }\n this.contactsMenuOpenState = !this.contactsMenuOpenState;\n },\n closeMenu() {\n this.contactsMenuOpenState = false;\n },\n async fetchContactsMenu() {\n this.contactsMenuLoading = true;\n try {\n const user = encodeURIComponent(this.user);\n const { data } = await axios.post(generateUrl(\"contactsmenu/findOne\"), `shareType=0&shareWith=${user}`);\n this.contactsMenuData = data;\n this.contactsMenuActions = data.topAction ? [data.topAction].concat(data.actions) : data.actions;\n } catch {\n this.contactsMenuOpenState = false;\n }\n this.contactsMenuLoading = false;\n this.isMenuLoaded = true;\n },\n /**\n * Handle avatar loading if user or url defined\n */\n loadAvatarUrl() {\n this.isAvatarLoaded = false;\n if (!this.isUrlDefined && (!this.isUserDefined || this.isNoUser || this.iconClass || this.$slots.icon)) {\n this.isAvatarLoaded = true;\n this.userDoesNotExist = true;\n return;\n }\n if (this.isUrlDefined) {\n this.updateImageIfValid(this.url);\n return;\n }\n if (this.size <= 64) {\n const avatarUrl = this.avatarUrlGenerator(this.user, 64);\n const srcset = [\n avatarUrl + \" 1x\",\n this.avatarUrlGenerator(this.user, 512) + \" 8x\"\n ].join(\", \");\n this.updateImageIfValid(avatarUrl, srcset);\n } else {\n const avatarUrl = this.avatarUrlGenerator(this.user, 512);\n this.updateImageIfValid(avatarUrl);\n }\n },\n /**\n * Generate an avatar url from the server's avatar endpoint\n *\n * @param {string} user the user id\n * @param {number} size the desired size\n * @return {string}\n */\n avatarUrlGenerator(user, size) {\n let avatarUrl = getAvatarUrl(user, {\n size,\n isDarkTheme: this.isDarkTheme,\n isGuest: this.isGuest\n });\n if (user === getCurrentUser()?.uid && typeof oc_userconfig !== \"undefined\") {\n avatarUrl += \"?v=\" + window.oc_userconfig.avatar.version;\n }\n return avatarUrl;\n },\n /**\n * Check if the provided url is valid and update Avatar if so\n *\n * @param {string} url the avatar url\n * @param {Array} srcset the avatar srcset\n */\n updateImageIfValid(url, srcset = null) {\n const userHasAvatar = getUserHasAvatar(this.user);\n if (this.isUserDefined && typeof userHasAvatar === \"boolean\") {\n this.isAvatarLoaded = true;\n this.avatarUrlLoaded = url;\n if (srcset) {\n this.avatarSrcSetLoaded = srcset;\n }\n if (userHasAvatar === false) {\n this.userDoesNotExist = true;\n }\n return;\n }\n const img = new Image();\n img.onload = () => {\n this.avatarUrlLoaded = url;\n if (srcset) {\n this.avatarSrcSetLoaded = srcset;\n }\n this.isAvatarLoaded = true;\n setUserHasAvatar(this.user, true);\n };\n img.onerror = (error) => {\n logger.debug(\"[NcAvatar] Invalid avatar url\", { error, url });\n this.avatarUrlLoaded = null;\n this.avatarSrcSetLoaded = null;\n this.userDoesNotExist = true;\n this.isAvatarLoaded = false;\n setUserHasAvatar(this.user, false);\n };\n if (srcset) {\n img.srcset = srcset;\n }\n img.src = url;\n }\n }\n};\nconst _hoisted_1 = [\"title\"];\nconst _hoisted_2 = [\"src\", \"srcset\"];\nconst _hoisted_3 = {\n key: 2,\n class: \"avatardiv__user-status avatardiv__user-status--icon\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcLoadingIcon = resolveComponent(\"NcLoadingIcon\");\n const _component_IconDotsHorizontal = resolveComponent(\"IconDotsHorizontal\");\n const _component_NcButton = resolveComponent(\"NcButton\");\n const _component_NcIconSvgWrapper = resolveComponent(\"NcIconSvgWrapper\");\n const _component_NcActions = resolveComponent(\"NcActions\");\n const _component_NcUserStatusIcon = resolveComponent(\"NcUserStatusIcon\");\n const _directive_click_outside = resolveDirective(\"click-outside\");\n return withDirectives((openBlock(), createElementBlock(\"span\", {\n class: normalizeClass([\"avatardiv popovermenu-wrapper\", {\n \"avatardiv--unknown\": $data.userDoesNotExist,\n \"avatardiv--with-menu\": $options.hasMenu,\n \"avatardiv--with-menu-loading\": $data.contactsMenuLoading\n }]),\n style: normalizeStyle($options.avatarStyle),\n title: $options.tooltip\n }, [\n renderSlot(_ctx.$slots, \"icon\", {}, () => [\n $props.iconClass ? (openBlock(), createElementBlock(\"span\", {\n key: 0,\n class: normalizeClass([$props.iconClass, \"avatar-class-icon\"])\n }, null, 2)) : $data.isAvatarLoaded && !$data.userDoesNotExist ? (openBlock(), createElementBlock(\"img\", {\n key: 1,\n src: $data.avatarUrlLoaded,\n srcset: $data.avatarSrcSetLoaded,\n alt: \"\"\n }, null, 8, _hoisted_2)) : createCommentVNode(\"\", true)\n ], true),\n $options.hasMenu && $options.menu.length === 0 ? (openBlock(), createBlock(_component_NcButton, {\n key: 0,\n \"aria-label\": $options.avatarAriaLabel,\n class: \"action-item action-item__menutoggle\",\n variant: \"tertiary-no-background\",\n onClick: $options.toggleMenu\n }, {\n icon: withCtx(() => [\n $data.contactsMenuLoading ? (openBlock(), createBlock(_component_NcLoadingIcon, { key: 0 })) : (openBlock(), createBlock(_component_IconDotsHorizontal, {\n key: 1,\n size: 20\n }))\n ]),\n _: 1\n }, 8, [\"aria-label\", \"onClick\"])) : $options.hasMenu ? (openBlock(), createBlock(_component_NcActions, {\n key: 1,\n open: $data.contactsMenuOpenState,\n \"onUpdate:open\": _cache[0] || (_cache[0] = ($event) => $data.contactsMenuOpenState = $event),\n \"aria-label\": $options.avatarAriaLabel,\n container: $props.menuContainer,\n forceMenu: \"\",\n manualOpen: \"\",\n variant: \"tertiary-no-background\",\n onClick: $options.toggleMenu\n }, createSlots({\n default: withCtx(() => [\n (openBlock(true), createElementBlock(Fragment, null, renderList($options.menu, (item, key) => {\n return openBlock(), createBlock(resolveDynamicComponent(item.ncActionComponent), mergeProps({ key }, { ref_for: true }, item.ncActionComponentProps), createSlots({\n default: withCtx(() => [\n createTextVNode(\" \" + toDisplayString(item.text), 1)\n ]),\n _: 2\n }, [\n item.iconSvg ? {\n name: \"icon\",\n fn: withCtx(() => [\n createVNode(_component_NcIconSvgWrapper, {\n svg: item.iconSvg\n }, null, 8, [\"svg\"])\n ]),\n key: \"0\"\n } : void 0\n ]), 1040);\n }), 128))\n ]),\n _: 2\n }, [\n $data.contactsMenuLoading ? {\n name: \"icon\",\n fn: withCtx(() => [\n createVNode(_component_NcLoadingIcon)\n ]),\n key: \"0\"\n } : void 0\n ]), 1032, [\"open\", \"aria-label\", \"container\", \"onClick\"])) : createCommentVNode(\"\", true),\n $options.showUserStatusIconOnAvatar ? (openBlock(), createElementBlock(\"span\", _hoisted_3, toDisplayString(_ctx.userStatus.icon), 1)) : $options.canDisplayUserStatus ? (openBlock(), createBlock(_component_NcUserStatusIcon, {\n key: 3,\n class: \"avatardiv__user-status\",\n status: _ctx.userStatus.status,\n \"aria-hidden\": String($options.hasMenu)\n }, null, 8, [\"status\", \"aria-hidden\"])) : createCommentVNode(\"\", true),\n $options.showInitials ? (openBlock(), createElementBlock(\"span\", {\n key: 4,\n style: normalizeStyle($options.initialsWrapperStyle),\n class: \"avatardiv__initials-wrapper\"\n }, [\n createElementVNode(\"span\", {\n style: normalizeStyle($options.initialsStyle),\n class: \"avatardiv__initials\"\n }, toDisplayString($options.initials), 5)\n ], 4)) : createCommentVNode(\"\", true)\n ], 14, _hoisted_1)), [\n [_directive_click_outside, $options.closeMenu]\n ]);\n}\nconst NcAvatar = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-e0ae1174\"]]);\nexport {\n NcAvatar as N,\n userStatus as u\n};\n//# sourceMappingURL=NcAvatar-1KxMUN7V.mjs.map\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n\n\n","\n\n","import '../assets/NcListItem-BjeejGlB.css';\nimport { i as isLegacy34 } from \"./legacy-BoqDmOCa.mjs\";\nimport { N as NcActions } from \"./NcActions-C-wDqSrv.mjs\";\nimport { N as NcCounterBubble } from \"./NcCounterBubble-CV0YMrXW.mjs\";\nimport { _ as _sfc_main$1 } from \"./NcVNodes.vue_vue_type_script_lang-BqUHinRZ.mjs\";\nimport { resolveComponent, openBlock, createBlock, resolveDynamicComponent, normalizeProps, guardReactiveProps, withCtx, createElementVNode, mergeProps, normalizeClass, withKeys, renderSlot, createTextVNode, toDisplayString, createElementBlock, createCommentVNode, withDirectives, vShow, createVNode, createSlots } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst _sfc_main = {\n name: \"NcListItem\",\n components: {\n NcActions,\n NcCounterBubble,\n NcVNodes: _sfc_main$1\n },\n inheritAttrs: false,\n props: {\n /**\n * The details text displayed in the upper right part of the component\n */\n details: {\n type: String,\n default: \"\"\n },\n /**\n * Name (first line of text)\n */\n name: {\n type: String,\n default: void 0\n },\n /**\n * The route for the router link.\n */\n to: {\n type: [String, Object],\n default: null\n },\n /**\n * The value for the external link\n */\n href: {\n type: String,\n default: \"#\"\n },\n /**\n * The HTML target attribute used for the link\n */\n target: {\n type: String,\n default: \"\"\n },\n /**\n * Id for the `` element\n */\n anchorId: {\n type: String,\n default: \"\"\n },\n /**\n * Make subname bold\n */\n bold: {\n type: Boolean,\n default: false\n },\n /**\n * Show the NcListItem in compact design\n */\n compact: {\n type: Boolean,\n default: false\n },\n /**\n * Toggle the active state of the component\n */\n active: {\n type: Boolean,\n default: void 0\n },\n /**\n * Aria label for the wrapper element\n */\n linkAriaLabel: {\n type: String,\n default: \"\"\n },\n /**\n * Aria label for the actions toggle\n */\n actionsAriaLabel: {\n type: String,\n default: void 0\n },\n /**\n * If different from 0 this component will display the\n * NcCounterBubble component\n */\n counterNumber: {\n type: [Number, String],\n default: 0\n },\n /**\n * Outlined or highlighted state of the counter\n */\n counterType: {\n type: String,\n default: \"\",\n validator(value) {\n return [\"highlighted\", \"outlined\", \"\"].indexOf(value) !== -1;\n }\n },\n /**\n * To be used only when the elements in the actions menu are very important\n */\n forceDisplayActions: {\n type: Boolean,\n default: false\n },\n /**\n * Force the actions to display in a three dot menu\n */\n forceMenu: {\n type: Boolean,\n default: false\n },\n /**\n * Show the list component layout\n */\n oneLine: {\n type: Boolean,\n default: false\n }\n },\n emits: [\n \"click\",\n \"dragstart\",\n \"update:menuOpen\"\n ],\n setup() {\n return { isLegacy34 };\n },\n data() {\n return {\n hovered: false,\n hasActions: false,\n hasSubname: false,\n displayActionsOnHoverFocus: false,\n menuOpen: false,\n hasIndicator: false,\n hasDetails: false\n };\n },\n computed: {\n showAdditionalElements() {\n return !this.displayActionsOnHoverFocus || this.forceDisplayActions;\n },\n showDetails() {\n return (this.details !== \"\" || this.hasDetails) && (!this.displayActionsOnHoverFocus || this.forceDisplayActions);\n }\n },\n watch: {\n menuOpen(newValue) {\n if (!newValue && !this.hovered) {\n this.displayActionsOnHoverFocus = false;\n }\n }\n },\n mounted() {\n this.checkSlots();\n },\n updated() {\n this.checkSlots();\n },\n methods: {\n /**\n * Handle link click\n *\n * @param {MouseEvent|KeyboardEvent} event - Native click or keydown event\n * @param {(event: Event) => void} [navigate] - VueRouter link's navigate if any\n * @param {string} [routerLinkHref] - VueRouter link's href\n */\n onClick(event, navigate, routerLinkHref) {\n this.$emit(\"click\", event);\n if (event.metaKey || event.altKey || event.ctrlKey || event.shiftKey) {\n return;\n }\n if (routerLinkHref) {\n navigate?.(event);\n event.preventDefault();\n }\n },\n showActions() {\n if (this.hasActions) {\n this.displayActionsOnHoverFocus = true;\n }\n this.hovered = false;\n },\n hideActions() {\n this.displayActionsOnHoverFocus = false;\n },\n /**\n * @param {FocusEvent} event UI event\n */\n handleBlur(event) {\n if (this.menuOpen) {\n return;\n }\n if (this.$refs[\"list-item\"]?.contains(event.relatedTarget)) {\n return;\n }\n this.hideActions();\n },\n /**\n * Hide the actions on mouseleave unless the menu is open\n */\n handleMouseleave() {\n if (!this.menuOpen) {\n this.displayActionsOnHoverFocus = false;\n }\n this.hovered = false;\n },\n handleMouseover() {\n this.showActions();\n this.hovered = true;\n },\n handleActionsUpdateOpen(e) {\n this.menuOpen = e;\n this.$emit(\"update:menuOpen\", e);\n },\n // Check if subname and actions slots are populated\n checkSlots() {\n if (this.hasActions !== !!this.$slots.actions) {\n this.hasActions = !!this.$slots.actions;\n }\n if (this.hasSubname !== !!this.$slots.subname) {\n this.hasSubname = !!this.$slots.subname;\n }\n if (this.hasIndicator !== !!this.$slots.indicator) {\n this.hasIndicator = !!this.$slots.indicator;\n }\n if (this.hasDetails !== !!this.$slots.details) {\n this.hasDetails = !!this.$slots.details;\n }\n }\n }\n};\nconst _hoisted_1 = [\"id\", \"aria-label\", \"href\", \"target\", \"rel\", \"onClick\"];\nconst _hoisted_2 = { class: \"list-item-content\" };\nconst _hoisted_3 = { class: \"list-item-content__main\" };\nconst _hoisted_4 = { class: \"list-item-content__name\" };\nconst _hoisted_5 = { class: \"list-item-content__details\" };\nconst _hoisted_6 = {\n key: 0,\n class: \"list-item-details__details\"\n};\nconst _hoisted_7 = {\n key: 1,\n class: \"list-item-details__extra\"\n};\nconst _hoisted_8 = {\n key: 1,\n class: \"list-item-details__indicator\"\n};\nconst _hoisted_9 = {\n key: 0,\n class: \"list-item-content__extra-actions\"\n};\nconst _hoisted_10 = {\n key: 2,\n class: \"list-item__extra\"\n};\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcCounterBubble = resolveComponent(\"NcCounterBubble\");\n const _component_NcActions = resolveComponent(\"NcActions\");\n return openBlock(), createBlock(resolveDynamicComponent($props.to ? \"router-link\" : \"NcVNodes\"), normalizeProps(guardReactiveProps({ ...$props.to && { custom: true, to: $props.to } })), {\n default: withCtx(({ href: routerLinkHref, navigate, isActive }) => [\n createElementVNode(\"li\", mergeProps({\n class: [\"list-item__wrapper\", {\n \"list-item__wrapper--active\": $props.active ?? isActive,\n \"list-item__wrapper--legacy\": $setup.isLegacy34\n }]\n }, _ctx.$attrs), [\n createElementVNode(\"div\", {\n ref: \"list-item\",\n class: normalizeClass([\"list-item\", {\n \"list-item--compact\": $props.compact,\n \"list-item--one-line\": $props.oneLine\n }]),\n onMouseover: _cache[5] || (_cache[5] = (...args) => $options.handleMouseover && $options.handleMouseover(...args)),\n onMouseleave: _cache[6] || (_cache[6] = (...args) => $options.handleMouseleave && $options.handleMouseleave(...args))\n }, [\n createElementVNode(\"a\", {\n id: $props.anchorId || void 0,\n \"aria-label\": $props.linkAriaLabel,\n class: \"list-item__anchor\",\n href: routerLinkHref || $props.href,\n target: $props.target || ($props.href === \"#\" ? void 0 : \"_blank\"),\n rel: $props.href === \"#\" ? void 0 : \"noopener noreferrer\",\n onFocus: _cache[0] || (_cache[0] = (...args) => $options.showActions && $options.showActions(...args)),\n onFocusout: _cache[1] || (_cache[1] = (...args) => $options.handleBlur && $options.handleBlur(...args)),\n onClick: ($event) => $options.onClick($event, navigate, routerLinkHref),\n onDragstart: _cache[2] || (_cache[2] = ($event) => _ctx.$emit(\"dragstart\", $event)),\n onKeydown: _cache[3] || (_cache[3] = withKeys((...args) => $options.hideActions && $options.hideActions(...args), [\"esc\"]))\n }, [\n renderSlot(_ctx.$slots, \"icon\", {}, void 0, true),\n createElementVNode(\"div\", _hoisted_2, [\n createElementVNode(\"div\", _hoisted_3, [\n createElementVNode(\"div\", _hoisted_4, [\n renderSlot(_ctx.$slots, \"name\", {}, () => [\n createTextVNode(toDisplayString($props.name), 1)\n ], true)\n ]),\n $data.hasSubname ? (openBlock(), createElementBlock(\"div\", {\n key: 0,\n class: normalizeClass([\"list-item-content__subname\", { \"list-item-content__subname--bold\": $props.bold }])\n }, [\n renderSlot(_ctx.$slots, \"subname\", {}, void 0, true)\n ], 2)) : createCommentVNode(\"\", true)\n ]),\n createElementVNode(\"div\", _hoisted_5, [\n $options.showDetails ? (openBlock(), createElementBlock(\"div\", _hoisted_6, [\n renderSlot(_ctx.$slots, \"details\", {}, () => [\n createTextVNode(toDisplayString($props.details), 1)\n ], true)\n ])) : createCommentVNode(\"\", true),\n $props.counterNumber !== 0 || $data.hasIndicator ? withDirectives((openBlock(), createElementBlock(\"div\", _hoisted_7, [\n $props.counterNumber !== 0 ? (openBlock(), createBlock(_component_NcCounterBubble, {\n key: 0,\n count: $props.counterNumber,\n active: $setup.isLegacy34 ? $props.active ?? isActive : false,\n class: \"list-item-details__counter\",\n type: $props.counterType\n }, null, 8, [\"count\", \"active\", \"type\"])) : createCommentVNode(\"\", true),\n $data.hasIndicator ? (openBlock(), createElementBlock(\"span\", _hoisted_8, [\n renderSlot(_ctx.$slots, \"indicator\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true)\n ], 512)), [\n [vShow, $options.showAdditionalElements]\n ]) : createCommentVNode(\"\", true)\n ])\n ])\n ], 40, _hoisted_1),\n _ctx.$slots[\"extra-actions\"] ? (openBlock(), createElementBlock(\"div\", _hoisted_9, [\n renderSlot(_ctx.$slots, \"extra-actions\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true),\n $props.forceDisplayActions || $data.displayActionsOnHoverFocus ? (openBlock(), createElementBlock(\"div\", {\n key: 1,\n class: \"list-item-content__actions\",\n onFocusout: _cache[4] || (_cache[4] = (...args) => $options.handleBlur && $options.handleBlur(...args))\n }, [\n createVNode(_component_NcActions, {\n ref: \"actions\",\n primary: $setup.isLegacy34 ? $props.active ?? isActive : false,\n forceMenu: $props.forceMenu,\n \"aria-label\": $props.actionsAriaLabel,\n \"onUpdate:open\": $options.handleActionsUpdateOpen\n }, createSlots({\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"actions\", {}, void 0, true)\n ]),\n _: 2\n }, [\n _ctx.$slots[\"actions-icon\"] ? {\n name: \"icon\",\n fn: withCtx(() => [\n renderSlot(_ctx.$slots, \"actions-icon\", {}, void 0, true)\n ]),\n key: \"0\"\n } : void 0\n ]), 1032, [\"primary\", \"forceMenu\", \"aria-label\", \"onUpdate:open\"])\n ], 32)) : createCommentVNode(\"\", true),\n _ctx.$slots.extra ? (openBlock(), createElementBlock(\"div\", _hoisted_10, [\n renderSlot(_ctx.$slots, \"extra\", {}, void 0, true)\n ])) : createCommentVNode(\"\", true)\n ], 34)\n ], 16)\n ]),\n _: 3\n }, 16);\n}\nconst NcListItem = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-0e705f5a\"]]);\nexport {\n NcListItem as N\n};\n//# sourceMappingURL=NcListItem-BliLJpvU.mjs.map\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n","\n\n","\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createRouter, createWebHashHistory } from 'vue-router'\nimport Approvals from './views/Approvals.vue'\nimport HrBalances from './views/hr/HrBalances.vue'\nimport HrExports from './views/hr/HrExports.vue'\nimport HrStatistics from './views/hr/HrStatistics.vue'\nimport HrWhosOff from './views/hr/HrWhosOff.vue'\nimport MyLeave from './views/MyLeave.vue'\nimport Team from './views/Team.vue'\n\nconst routes = [\n\t{ path: '/', redirect: '/my' },\n\t{ path: '/my', name: 'my', component: MyLeave },\n\t{ path: '/approvals', name: 'approvals', component: Approvals },\n\t{ path: '/team', name: 'team', component: Team },\n\t{ path: '/hr/balances', name: 'hr-balances', component: HrBalances },\n\t{ path: '/hr/statistics', name: 'hr-statistics', component: HrStatistics },\n\t{ path: '/hr/whos-off', name: 'hr-whos-off', component: HrWhosOff },\n\t{ path: '/hr/exports', name: 'hr-exports', component: HrExports },\n\t// Deep link from notifications/activity: open My leave with the request selected.\n\t{ path: '/requests/:id', name: 'request', component: MyLeave, props: true },\n]\n\nexport default createRouter({\n\thistory: createWebHashHistory(),\n\troutes,\n})\n","import { translatePlural as n, translate as t } from '@nextcloud/l10n'\n/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createApp } from 'vue'\nimport App from './App.vue'\nimport router from './router.js'\n\nconst app = createApp(App)\napp.config.globalProperties.t = t\napp.config.globalProperties.n = n\napp.use(router)\napp.mount('#absence-app')\n"],"names":["getCapabilities","loadState","y","n","r","a","s","p","g","h","_","f","b","e","t","x","S","C","w","T","E","ee","k","A","D","O","i","L","F","$","j","M","N","z","R","P","I","B","o","c","l","u","te","V","H","U","W","G","K","q","J","Y","Z","X","re","ie","ne","Q","v","ae","d","m","isBrowser","HASH_RE","AMPERSAND_RE","SLASH_RE","EQUAL_RE","IM_RE","PLUS_RE","ENC_BRACKET_OPEN_RE","ENC_BRACKET_CLOSE_RE","ENC_CARET_RE","ENC_BACKTICK_RE","ENC_CURLY_OPEN_RE","ENC_PIPE_RE","ENC_CURLY_CLOSE_RE","ENC_SPACE_RE","commonEncode","text","encodeHash","encodeQueryValue","encodeQueryKey","encodePath","encodeParam","decode","TRAILING_SLASH_RE","removeTrailingSlash","path","parseURL","parseQuery","location","currentLocation","query","searchString","hash","hashPos","searchPos","resolveRelativePath","stringifyURL","stringifyQuery","stripBase","pathname","base","isSameRouteLocation","aLastIndex","bLastIndex","isSameRouteRecord","isSameRouteLocationParams","key","isSameRouteLocationParamsValue","isArray","isEquivalentArray","value","to","from","fromSegments","toSegments","lastToSegment","position","toPosition","segment","START_LOCATION_NORMALIZED","normalizeBase","baseEl","BEFORE_HASH_RE","createHref","getElementPosition","el","offset","docRect","elRect","computeScrollPosition","scrollToPosition","scrollToOptions","positionEl","isIdSelector","getScrollKey","delta","scrollPositions","saveScrollPosition","scrollPosition","getSavedScrollPosition","scroll","isRouteLocation","route","isRouteName","name","search","searchParams","searchParam","eqPos","currentValue","normalizeQuery","normalizedQuery","useCallbacks","handlers","add","handler","reset","guardToPromiseFn","guard","record","runWithContext","fn","enterCallbackArray","resolve","reject","next","valid","createRouterError","guardReturn","guardCall","err","extractComponentsGuards","matched","guardType","guards","rawComponent","isRouteComponent","componentPromise","resolved","resolvedComponent","isESModule","extractChangingRecords","leavingRecords","updatingRecords","enteringRecords","len","recordFrom","recordTo","createBaseLocation","createCurrentLocation","slicePos","pathFromHash","useHistoryListeners","historyState","replace","listeners","teardowns","pauseState","popStateHandler","state","fromState","listener","pauseListeners","listen","callback","teardown","index","beforeUnloadListener","history","assign","destroy","buildState","back","current","forward","replaced","computeScroll","useHistoryStateNavigation","changeLocation","hashIndex","url","data","push","currentState","createWebHistory","historyNavigation","historyListeners","go","triggerListeners","routerHistory","createWebHashHistory","ROOT_TOKEN","VALID_PARAM_RE","tokenizePath","crash","message","buffer","previousState","tokens","finalizeSegment","char","customRe","consumeBuffer","addCharToBuffer","BASE_PARAM_PATTERN","BASE_PATH_PARSER_OPTIONS","REGEX_CHARS_RE","tokensToParser","segments","extraOptions","options","score","pattern","keys","segmentScores","tokenIndex","token","subSegmentScore","repeatable","optional","regexp","subPattern","parse","match","params","stringify","avoidDuplicatedSlash","param","compareScoreArray","diff","comparePathParserScore","aScore","bScore","comp","isLastScoreNegative","last","PATH_PARSER_OPTIONS_DEFAULTS","createRouteRecordMatcher","parent","parser","matcher","createRouterMatcher","routes","globalOptions","matchers","matcherMap","mergeOptions","getRecordMatcher","addRoute","originalRecord","isRootAdd","mainNormalizedRecord","normalizeRouteRecord","normalizedRecords","aliases","alias","originalMatcher","normalizedRecord","parentPath","connectingSlash","isAliasRecord","removeRoute","isMatchable","insertMatcher","children","noop","matcherRef","getRoutes","findInsertionIndex","pickParams","parentMatcher","mergeMetaFields","clearRoutes","newParams","normalized","normalizeRecordProps","propsObject","props","meta","lower","upper","mid","insertionAncestor","getInsertionAncestor","ancestor","useLink","router","inject","routerKey","currentRoute","routeLocationKey","computed","unref","activeRecordIndex","length","routeMatched","currentMatched","parentRecordPath","getOriginalPath","isActive","includesParams","isExactActive","navigate","guardEvent","preferSingleVNode","vnodes","RouterLink","defineComponent","slots","link","reactive","elClass","getLinkClass","target","outer","inner","innerValue","outerValue","propClass","globalClass","defaultClass","RouterViewImpl","attrs","injectedRoute","routerViewLocationKey","routeToDisplay","injectedDepth","viewDepthKey","depth","initialDepth","matchedRoute","matchedRouteRef","provide","matchedRouteKey","viewRef","ref","watch","instance","oldInstance","_oldName","currentName","ViewComponent","normalizeSlot","routePropsOption","routeProps","component","vnode","slot","slotContent","RouterView","createRouter","parseQuery$1","stringifyQuery$1","beforeGuards","beforeResolveGuards","afterGuards","shallowRef","pendingLocation","normalizeParams","applyToParams","paramValue","encodeParams","decodeParams","parentOrRoute","recordMatcher","routeMatcher","hasRoute","rawLocation","locationNormalized","href","matcherLocation","targetParams","fullPath","locationAsObject","checkCanceledNavigation","pushWithRedirect","handleRedirectRecord","lastMatched","redirect","newTargetLocation","redirectedFrom","targetLocation","force","shouldRedirect","toLocation","failure","handleScroll","error","isNavigationFailure","markAsReady","triggerError","finalizeNavigation","triggerAfterEach","checkCanceledNavigationAndReject","app","installedApps","canceledNavigationCheck","runGuardQueue","beforeEnter","isPush","isFirstNavigation","removeHistoryListener","setupListeners","_from","info","readyHandlers","errorListeners","ready","list","isReady","scrollBehavior","nextTick","started","reactiveRoute","shallowReactive","unmountApp","promise","once","func","wasCalled","result","args","realAppName","appName","logger","APP_NAME","realAppVersion","appVersion","useAppName","useLocalizedAppName","apps","realAppName2","id","register","t27","_sfc_main$1","__props","isMobile","useIsMobile","toggleAppNavigationButton","onMounted","onBeforeUnmount","hide","appNavigationToggle","emit","_ctx","_cache","openBlock","createBlock","NcButton","normalizeClass","withCtx","createVNode","NcIconSvgWrapper","mdiArrowRight","NcAppContentDetailsToggle","_export_sfc","browserStorage","getBuilder","instanceName","_sfc_main","Pane","Splitpanes","isRtl","entries","part","useSwipe","direction","event","listPaneSize","_hoisted_1","_hoisted_2","_hoisted_3","_sfc_render","$props","$setup","$data","$options","_component_NcAppContentDetailsToggle","resolveComponent","_component_Pane","_component_Splitpanes","createElementBlock","toDisplayString","createCommentVNode","Fragment","withModifiers","withDirectives","createElementVNode","renderSlot","vShow","NcAppContent","NcAppNavigationList","HAS_APP_NAVIGATION_KEY","CONTENT_SELECTOR_KEY","t20","_hoisted_1$1","open","useModel","title","$event","mdiMenuOpen","mdiMenu","NcAppNavigationToggle","focusTrap","setHasAppNavigation","warn","appNavigationContainerElement","useTemplateRef","shouldActivateFocusTrap","watchEffect","toggleFocusTrap","subscribe","toggleNavigationByEventBus","createFocusTrap","toggleNavigation","getTrapStack","onUnmounted","unsubscribe","bodyStyles","animationLength","open2","handleEsc","isLegacy34","withKeys","NcAppNavigation","NcActions","actionProps","_value","headingLevel","_component_NcActions","resolveDynamicComponent","createTextVNode","normalizeProps","guardReactiveProps","NcAppNavigationCaption","_hoisted_4","mergeProps","ChevronUp","IconArrowRight","t14","IconClose","newValue","_component_IconArrowRight","_component_NcButton","_component_IconClose","vModelText","NcInputConfirmCancel","ActionGlobalMixin","ActionTextMixin","NC_ACTIONS_CLOSE_MENU","NC_ACTIONS_IS_SEMANTIC_MENU","behavior","mdiCheck","mdiChevronRight","attributes","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_component_NcIconSvgWrapper","normalizeStyle","NcActionButton","_sfc_main$3","_hoisted_1$2","_hoisted_2$2","_hoisted_3$2","_hoisted_4$2","_sfc_render$3","Pencil","_sfc_main$2","_hoisted_2$1","_hoisted_3$1","_hoisted_4$1","_sfc_render$2","Undo","t21","ChevronDown","_sfc_render$1","_component_ChevronUp","_component_ChevronDown","NcAppNavigationIconCollapsible","t23","t51","NcLoadingIcon","_sfc_main$4","createElementId","newVal","routerLinkHref","_component_NcLoadingIcon","_component_NcInputConfirmCancel","_component_Pencil","_component_NcActionButton","_component_Undo","_component_NcAppNavigationIconCollapsible","NcAppNavigationItem","NcAppNavigationNew","t30","contentSvg","navigationSvg","setAppNavigation","hasAppNavigation","currentFocus","currentImage","onBeforeMount","container","openAppNavigation","Teleport","NcContent","humanizedCount","getCanonicalLocale","originalCountAsTitleIfNeeded","countAsString","NcCounterBubble","_createElementBlock","_mergeProps","_createElementVNode","_openBlock","INJECTION_KEY_THEME","useIsDarkThemeElement","element","toValue","isDarkTheme","checkIfDarkTheme","isDarkSystemTheme","usePreferredDark","updateIsDarkTheme","useMutationObserver","readonly","useInternalIsDarkTheme","createSharedComposable","useIsDarkTheme","enforcedTheme","t40","mergeModels","modelValue","formattedValue","formatValue","formattedMax","formattedMin","getReadableDate","yyyy","MM","dd","hh","mm","startDate","daysSinceBeginningOfYear","weekNumber","onInput","input","time","timezoneOffsetSeconds","inputDateWithTimezone","NcDateTimePickerNative","__expose","focus","select","useAttrs","textAreaElement","internalPlaceholder","isLegacy","ariaDescribedby","ariaDescribedby2","handleInput","mdiAlertCircleOutline","NcTextArea","__emit","inputElement","hasTrailingIcon","isValidLabel","NcInputField","t18","inputFieldInstance","defaultTrailingButtonLabels","NcInputFieldPropNames","propsToForward","sharedProps","createSlots","mdiUndo","mdiClose","initialSession","initialLeaveTypes","store","request","type","api","showError","year","created","showSuccess","updated","res","comment","statusMeta","status","NcModal","NcSelect","NcTextField","NcNoteCard","Send","toIso","generateUrl","makeHolidayChecker","weekdays","parseWeekdays","countWorkingDays","types","today","seen","own","users","payload","_hoisted_9","_hoisted_10","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_23","_hoisted_25","_hoisted_26","_hoisted_29","_createBlock","_component_NcModal","_toDisplayString","_component_NcNoteCard","_createVNode","_component_NcSelect","_withCtx","icon","label","_hoisted_11","_component_NcDateTimePickerNative","_component_NcTextField","_Fragment","_createTextVNode","_hoisted_22","_hoisted_24","_hoisted_27","_hoisted_28","_component_NcTextArea","_component_Send","stopClickOutsideMap","vOnClickOutside","binding","capture","stop","onClickOutside","directive","encodedTlds","encodedUtlds","numeric","ascii","alpha","asciinumeric","alphanumeric","domain","emoji","scheme","slashscheme","whitespace","registerGroup","groups","addToGroups","flags","group","flagsForToken","State","nextState","regex","exactOnly","inputs","templateState","allFlags","ta","tr","ts","tt","WORD","UWORD","ASCIINUMERICAL","ALPHANUMERICAL","LOCALHOST","TLD","UTLD","SCHEME","SLASH_SCHEME","NUM","WS","NL","OPENBRACE","CLOSEBRACE","OPENBRACKET","CLOSEBRACKET","OPENPAREN","CLOSEPAREN","OPENANGLEBRACKET","CLOSEANGLEBRACKET","FULLWIDTHLEFTPAREN","FULLWIDTHRIGHTPAREN","LEFTCORNERBRACKET","RIGHTCORNERBRACKET","LEFTWHITECORNERBRACKET","RIGHTWHITECORNERBRACKET","FULLWIDTHLESSTHAN","FULLWIDTHGREATERTHAN","AMPERSAND","APOSTROPHE","ASTERISK","AT","BACKSLASH","BACKTICK","CARET","COLON","COMMA","DOLLAR","DOT","EQUALS","EXCLAMATION","HYPHEN","PERCENT","PIPE","PLUS","POUND","QUERY","QUOTE","FULLWIDTHMIDDLEDOT","SEMI","SLASH","TILDE","UNDERSCORE","EMOJI$1","SYM","tk","ASCII_LETTER","LETTER","EMOJI","DIGIT","SPACE","CR","LF","EMOJI_VARIATION","EMOJI_JOINER","OBJECT_REPLACEMENT","tlds","utlds","init$2","customSchemes","Start","decodeTlds","Num","Asciinumeric","Alphanumeric","Word","UWord","Nl","Cr","Ws","Emoji","EmojiJoiner","wordjr","uwordjr","fastts","sch","run$1","start","str","iterable","stringToArray","charCount","cursor","charCursor","tokenLength","latestAccepting","sinceAccepts","charsSinceAccepts","first","second","defaultt","jr","encoded","words","stack","digits","popDigitCount","popCount","defaults","Options","opts","defaultRender","ignoredTags","uppercaseIgnoredTags","ir","operator","isCallable","option","obj","val","MultiToken","truncate","formatted","protocol","formattedHref","tagName","content","className","rel","eventListeners","createTokenClass","Token","Email","Text","Url","makeState","arg","init$1","qsAccepting","qsNonAccepting","localpartAccepting","Localpart","Domain","Scheme","SlashScheme","LocalpartAt","LocalpartDot","EmailDomain","EmailDomainDot","Email$1","EmailDomainHyphen","DomainHyphen","DomainDot","DomainDotTld","DomainDotTldColon","DomainDotTldColonPort","Url$1","UrlNonaccept","SchemeColon","SlashSchemeColon","SlashSchemeColonSlash","UriPrefix","bracketPairs","OPEN","CLOSE","UrlOpen","UrlOpenQ","UrlOpenSyms","run","multis","textTokens","secondState","multiLength","initMultiToken","Multi","subtokens","startIdx","endIdx","INIT","init","tokenize","linkifyString","escapeHTML","escapeAttr","attributesToString","attr","headerRef","nameId","NcEmptyContent","_sfc_main$5","_hoisted_1$5","_hoisted_2$3","_hoisted_3$3","_hoisted_4$3","_sfc_render$4","IconDockRight","_hoisted_1$4","IconStar","_hoisted_1$3","IconStarOutline","selected","_sfc_main$6","sidebarTabsButton","sidebarTabsButton_legacy","sidebarTabsButton_selected","sidebarTabsButton__name","sidebarTabsButton__icon","sidebarTabsButton__legacyIcon","style0","cssModules","NcAppSidebarTabsButton","tab","active","tabIndex","_component_NcAppSidebarTabsButton","renderList","NcAppSidebarTabs","t15","_sfc_main$7","useIsSmallMobile","isSlotPopulated","menu","menuTrigger","activeTab","_component_IconDockRight","_component_IconStar","_component_IconStarOutline","_component_NcAppSidebarHeader","_component_NcAppSidebarTabs","_component_NcEmptyContent","_directive_focus","resolveDirective","_directive_click_outside","Transition","NcAppSidebar","NcAppSidebarTab","getRoute","removePrefix","prefix","removePrefixes","prefixes","acc","isAbsoluteURL","isNonHttpLink","getBaseUrl","relativeUrl","relativeRouterBase","getRootUrl","potentialRouterPath","getEnabledContactsMenuActions","entry","action","t3","Color","toHex","int","calculateStepIncrement","steps","color1","color2","mixPalette","palette","increment","COLOR_RED","COLOR_YELLOW","COLOR_BLUE","generatePalette","palette1","palette2","palette3","hashCode","Md5","finalInt","usernameToColor","username","finalPalette","global","Symbol","STATE_PLAINTEXT","STATE_HTML","STATE_COMMENT","ALLOWED_TAGS_REGEX","NORMALIZE_TAG_REGEX","striptags","html","allowable_tags","tag_replacement","context","init_context","striptags_internal","init_striptags_stream","parse_allowable_tags","tag_buffer","in_quote_char","output","idx","normalize_tag","tag_set","module","this","getAvatarUrl","user","size","guestUrl","themeUrl","awaySvg","busySvg","dndSvg","invisibleSvg","onlineSvg","t52","t11","getUserStatusText","isInvisible","ariaLabel","axios","generateOcsUrl","matchSvg","activeSvg","NcUserStatusIcon","NcActionLink","_component_RouterLink","NcActionRouter","NcActionText","t10","userStatus","userId","capabilities","getCurrentUser","getUserHasAvatar","flag","setUserHasAvatar","IconDotsHorizontal","initials","filteredChars","filtered","actions","item","escape","emojiIcon","avatarUrl","srcset","userHasAvatar","img","_component_IconDotsHorizontal","_component_NcUserStatusIcon","NcAvatar","AccountGroup","StatusChip","_renderList","ev","_component_NcAvatar","_component_StatusChip","_component_AccountGroup","_normalizeStyle","requested","review","outcome","step","_normalizeClass","LeaveTypeChip","CoveragePanel","RequestStepper","InformationOutline","CommentOutline","History","Check","Close","CancelIcon","formatRange","iso","_component_NcAppSidebar","_component_NcAppSidebarTab","_component_InformationOutline","_component_RequestStepper","_component_LeaveTypeChip","_component_Check","_component_Close","_component_CancelIcon","_component_CoveragePanel","_component_CommentOutline","_component_History","RequestDialog","RequestSidebar","Plus","CalendarAccountOutline","ClipboardCheck","ScaleBalance","ChartBar","CalendarMonth","Download","ClipboardPlusOutline","_component_NcContent","_component_NcAppNavigation","_component_NcAppNavigationNew","_component_Plus","_component_NcAppNavigationItem","_component_CalendarAccountOutline","_component_ClipboardCheck","_component_NcCounterBubble","_component_NcAppNavigationCaption","_component_ClipboardPlusOutline","_component_ScaleBalance","_component_ChartBar","_component_CalendarMonth","_component_Download","_component_NcAppContent","_component_router_view","_component_RequestSidebar","_component_RequestDialog","NcListItem","range","days","_component_NcListItem","ACTIONABLE","CheckAll","RequestListItem","SkeletonList","reports","_component_SkeletonList","_TransitionGroup","_component_RequestListItem","_component_CheckAll","Magnify","row","ent","_component_Magnify","now","total","pct","seg","usableW","usableH","ChartLine","LineChart","DonutChart","month","months","_component_ChartLine","_component_LineChart","_component_DonutChart","DAY_MS","ChevronLeft","ChevronRight","CalendarBlank","arr","dt","dow","byUid","monthStart","lastIndex","ids","lt","_component_ChevronLeft","_component_ChevronRight","_component_CalendarBlank","TeamTimeline","_component_TeamTimeline","duration","eased","BalanceRing","_component_BalanceRing","bar","BalanceCard","BarChart","PalmIllustration","sickType","approved","typeMatches","color","buckets","addWorkingDaysByMonth","_component_BalanceCard","_component_BarChart","_component_PalmIllustration","MyLeave","Approvals","Team","HrBalances","HrStatistics","HrWhosOff","HrExports","createApp","App"],"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,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,72,73,77,80,84,85,86]} \ No newline at end of file diff --git a/js/absence-personal-settings.mjs b/js/absence-personal-settings.mjs index fd6b375..7cce87c 100644 --- a/js/absence-personal-settings.mjs +++ b/js/absence-personal-settings.mjs @@ -1,5 +1,5 @@ -(function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(".material-design-icon[data-v-5ca1e30f]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.checkbox-content[data-v-5ca1e30f]{display:flex;align-items:center;flex-direction:row;gap:var(--default-grid-baseline);-webkit-user-select:none;user-select:none;min-height:var(--default-clickable-area);border-radius:var(--checkbox-radio-switch--border-radius);padding:var(--default-grid-baseline) calc((var(--default-clickable-area) - var(--icon-height)) / 2);width:100%;max-width:fit-content}.checkbox-content__wrapper[data-v-5ca1e30f]{flex:1 0 0;max-width:100%}.checkbox-content__text[data-v-5ca1e30f]:empty{display:none}.checkbox-content-checkbox:not(.checkbox-content--button-variant) .checkbox-content__icon[data-v-5ca1e30f],.checkbox-content-radio:not(.checkbox-content--button-variant) .checkbox-content__icon[data-v-5ca1e30f],.checkbox-content-switch:not(.checkbox-content--button-variant) .checkbox-content__icon[data-v-5ca1e30f]{margin-block:calc((var(--default-clickable-area) - 2 * var(--default-grid-baseline) - var(--icon-height)) / 2) auto;line-height:0}.checkbox-content-checkbox:not(.checkbox-content--button-variant) .checkbox-content__icon--has-description[data-v-5ca1e30f],.checkbox-content-radio:not(.checkbox-content--button-variant) .checkbox-content__icon--has-description[data-v-5ca1e30f],.checkbox-content-switch:not(.checkbox-content--button-variant) .checkbox-content__icon--has-description[data-v-5ca1e30f]{display:flex;align-items:center;margin-block-end:0;align-self:start}.checkbox-content__icon[data-v-5ca1e30f]>*{width:var(--icon-size);height:var(--icon-height);color:var(--color-primary-element)}.checkbox-content__description[data-v-5ca1e30f]{display:block;color:var(--color-text-maxcontrast);font-weight:var(--font-weight-default, normal)}.checkbox-content--button-variant .checkbox-content__icon[data-v-5ca1e30f]:not(.checkbox-content__icon--checked)>*{color:var(--color-primary-element)}.checkbox-content--button-variant .checkbox-content__icon--checked[data-v-5ca1e30f]>*{color:var(--color-primary-element-text)}.checkbox-content--has-text[data-v-5ca1e30f]{padding-inline-end:calc((var(--default-clickable-area) - 16px) / 2)}.checkbox-content[data-v-5ca1e30f],.checkbox-content[data-v-5ca1e30f] *{cursor:pointer;flex-shrink:0}.material-design-icon[data-v-c34c63a4]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.checkbox-radio-switch[data-v-c34c63a4]{--icon-size: var(--v5ac25550);--icon-height: var(--d98ce684);--checkbox-radio-switch--border-radius: var(--border-radius-element);--checkbox-radio-switch--border-radius-outer: calc(var(--checkbox-radio-switch--border-radius) + 2px);display:flex;align-items:center;color:var(--color-main-text);background-color:transparent;font-size:var(--default-font-size);font-weight:var(--font-weight-element, normal);line-height:var(--default-line-height);padding:0;position:relative}.checkbox-radio-switch__input[data-v-c34c63a4]{position:absolute;z-index:-1;opacity:0!important;width:var(--icon-size);height:var(--icon-size)}.checkbox-radio-switch__input:focus-visible+.checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch__input[data-v-c34c63a4]:focus-visible{outline:2px solid var(--color-main-text);border-color:var(--color-main-background);outline-offset:-2px}.checkbox-radio-switch--disabled .checkbox-radio-switch__content[data-v-c34c63a4]{opacity:.5}.checkbox-radio-switch--disabled .checkbox-radio-switch__content[data-v-c34c63a4] .checkbox-radio-switch__icon>*{color:var(--color-main-text)}.checkbox-radio-switch--disabled .checkbox-radio-switch__content.checkbox-content[data-v-c34c63a4],.checkbox-radio-switch--disabled .checkbox-radio-switch__content.checkbox-content[data-v-c34c63a4] *:not(a){cursor:default!important}.checkbox-radio-switch:not(.checkbox-radio-switch--disabled,.checkbox-radio-switch--checked):focus-within .checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch:not(.checkbox-radio-switch--disabled,.checkbox-radio-switch--checked) .checkbox-radio-switch__content[data-v-c34c63a4]:hover{background-color:var(--color-background-hover)}.checkbox-radio-switch--checked:not(.checkbox-radio-switch--disabled):focus-within .checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch--checked:not(.checkbox-radio-switch--disabled) .checkbox-radio-switch__content[data-v-c34c63a4]:hover{background-color:var(--color-primary-element-hover)}.checkbox-radio-switch--checked:not(.checkbox-radio-switch--button-variant):not(.checkbox-radio-switch--disabled):focus-within .checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch--checked:not(.checkbox-radio-switch--button-variant):not(.checkbox-radio-switch--disabled) .checkbox-radio-switch__content[data-v-c34c63a4]:hover{background-color:var(--color-primary-element-light-hover)}.checkbox-radio-switch-switch[data-v-c34c63a4]:not(.checkbox-radio-switch--checked) .checkbox-radio-switch__icon>*{color:var(--color-text-maxcontrast)}.checkbox-radio-switch-switch.checkbox-radio-switch--disabled.checkbox-radio-switch--checked[data-v-c34c63a4] .checkbox-radio-switch__icon>*{color:var(--color-primary-element-light)}.checkbox-radio-switch--button-variant.checkbox-radio-switch[data-v-c34c63a4]{background-color:var(--color-main-background);border:2px solid var(--color-border-maxcontrast);overflow:hidden}.checkbox-radio-switch--button-variant.checkbox-radio-switch--checked[data-v-c34c63a4]{font-weight:var(--font-weight-element, bold)}.checkbox-radio-switch--button-variant.checkbox-radio-switch--checked .checkbox-radio-switch__content[data-v-c34c63a4]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.checkbox-radio-switch--button-variant[data-v-c34c63a4] .checkbox-radio-switch__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.checkbox-radio-switch--button-variant[data-v-c34c63a4]:not(.checkbox-radio-switch--checked) .checkbox-radio-switch__icon>*{color:var(--color-main-text)}.checkbox-radio-switch--button-variant[data-v-c34c63a4] .checkbox-radio-switch__icon:empty{display:none}.checkbox-radio-switch--button-variant[data-v-c34c63a4]:not(.checkbox-radio-switch--button-variant-v-grouped):not(.checkbox-radio-switch--button-variant-h-grouped),.checkbox-radio-switch--button-variant .checkbox-radio-switch__content[data-v-c34c63a4]{border-radius:var(--checkbox-radio-switch--border-radius)}.checkbox-radio-switch--button-variant-v-grouped .checkbox-radio-switch__content[data-v-c34c63a4]{flex-basis:100%;max-width:unset}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:first-of-type{border-start-start-radius:var(--checkbox-radio-switch--border-radius-outer);border-start-end-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:last-of-type{border-end-start-radius:var(--checkbox-radio-switch--border-radius-outer);border-end-end-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:not(:last-of-type){border-bottom:0!important}.checkbox-radio-switch--button-variant-v-grouped:not(:last-of-type) .checkbox-radio-switch__content[data-v-c34c63a4]{margin-bottom:2px}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:not(:first-of-type){border-top:0!important}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:first-of-type{border-start-start-radius:var(--checkbox-radio-switch--border-radius-outer);border-end-start-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:last-of-type{border-start-end-radius:var(--checkbox-radio-switch--border-radius-outer);border-end-end-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:not(:last-of-type){border-inline-end:0!important}.checkbox-radio-switch--button-variant-h-grouped:not(:last-of-type) .checkbox-radio-switch__content[data-v-c34c63a4]{margin-inline-end:2px}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:not(:first-of-type){border-inline-start:0!important}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4] .checkbox-radio-switch__text{text-align:center;display:flex;align-items:center}.checkbox-radio-switch--button-variant-h-grouped .checkbox-radio-switch__content[data-v-c34c63a4]{flex-direction:column;justify-content:center;width:100%;margin:0;gap:0}._material-design-icon_tLFaA{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}._iconToggleSwitch_CPPoW{color:var(--v6bd152af);transition:color var(--animation-quick) ease}._iconToggleSwitch_CPPoW svg{height:auto!important}._iconToggleSwitch_CPPoW circle{cx:var(--v16fd8ca9);transition:cx var(--animation-quick) ease}.material-design-icon[data-v-9cedb949]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.settings-section[data-v-9cedb949]{display:block;padding:0 0 calc(var(--default-grid-baseline) * 5) 0;margin:calc(var(--default-grid-baseline) * 7);width:min(900px,100% - var(--default-grid-baseline) * 7 * 2)}.settings-section[data-v-9cedb949]:not(:last-child){border-bottom:1px solid var(--color-border)}.settings-section__name[data-v-9cedb949]{display:inline-flex;align-items:center;justify-content:center;max-width:900px;margin-top:0}.settings-section__info[data-v-9cedb949]{display:flex;align-items:center;justify-content:center;width:var(--default-clickable-area);height:var(--default-clickable-area);margin:calc((var(--default-clickable-area) - 16px) / 2 * -1);margin-inline-start:0;color:var(--color-text-maxcontrast)}.settings-section__info[data-v-9cedb949]:hover,.settings-section__info[data-v-9cedb949]:focus,.settings-section__info[data-v-9cedb949]:active{color:var(--color-main-text)}.settings-section__desc[data-v-9cedb949]{margin-top:-.2em;margin-bottom:1em;color:var(--color-text-maxcontrast);max-width:900px}.subheading[data-v-f72d4596]{font-weight:600;margin-bottom:8px}.subheading[data-v-f72d4596]:not(:first-child){margin-top:24px}.hint[data-v-f72d4596]{color:var(--color-text-maxcontrast);font-size:.9rem;margin:8px 0}.weekdays[data-v-f72d4596]{display:flex;flex-wrap:wrap;gap:8px 20px;margin:8px 0}.actions-row[data-v-f72d4596]{display:flex;gap:8px;margin-top:12px}.field[data-v-f72d4596]{display:flex;flex-direction:column;gap:4px;max-width:320px;margin-bottom:12px}.field label[data-v-f72d4596]{font-weight:600;font-size:.85rem}")),document.head.appendChild(t)}}catch(c){console.error("vite-plugin-css-injected-by-js",c)}})(); -import{_ as b,d as R,bl as D,c as A,o as n,D as y,B as T,ap as Z,i as F,ac as E,bm as G,ae as q,z as m,E as p,f as o,q as v,bn as $,j as u,x as _,J as Y,g as w,k,t as r,M as P,aN as J,e as z,au as X,m as d,bo as K,u as N,l as Q,v as h,aJ as ee,bb as te,a1 as ie,F as ae,A as ne,V as le,W as oe,X as L,bp as se,bq as re,Y as ce,bc as de,bk as ue}from"./holidays-CFk3bEGH.chunk.mjs";const he=`*{width:var(--icon-size);height:var(--icon-height);color:var(--color-primary-element)}.checkbox-content__description[data-v-5ca1e30f]{display:block;color:var(--color-text-maxcontrast);font-weight:var(--font-weight-default, normal)}.checkbox-content--button-variant .checkbox-content__icon[data-v-5ca1e30f]:not(.checkbox-content__icon--checked)>*{color:var(--color-primary-element)}.checkbox-content--button-variant .checkbox-content__icon--checked[data-v-5ca1e30f]>*{color:var(--color-primary-element-text)}.checkbox-content--has-text[data-v-5ca1e30f]{padding-inline-end:calc((var(--default-clickable-area) - 16px) / 2)}.checkbox-content[data-v-5ca1e30f],.checkbox-content[data-v-5ca1e30f] *{cursor:pointer;flex-shrink:0}.material-design-icon[data-v-c34c63a4]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.checkbox-radio-switch[data-v-c34c63a4]{--icon-size: var(--v5ac25550);--icon-height: var(--d98ce684);--checkbox-radio-switch--border-radius: var(--border-radius-element);--checkbox-radio-switch--border-radius-outer: calc(var(--checkbox-radio-switch--border-radius) + 2px);display:flex;align-items:center;color:var(--color-main-text);background-color:transparent;font-size:var(--default-font-size);font-weight:var(--font-weight-element, normal);line-height:var(--default-line-height);padding:0;position:relative}.checkbox-radio-switch__input[data-v-c34c63a4]{position:absolute;z-index:-1;opacity:0!important;width:var(--icon-size);height:var(--icon-size)}.checkbox-radio-switch__input:focus-visible+.checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch__input[data-v-c34c63a4]:focus-visible{outline:2px solid var(--color-main-text);border-color:var(--color-main-background);outline-offset:-2px}.checkbox-radio-switch--disabled .checkbox-radio-switch__content[data-v-c34c63a4]{opacity:.5}.checkbox-radio-switch--disabled .checkbox-radio-switch__content[data-v-c34c63a4] .checkbox-radio-switch__icon>*{color:var(--color-main-text)}.checkbox-radio-switch--disabled .checkbox-radio-switch__content.checkbox-content[data-v-c34c63a4],.checkbox-radio-switch--disabled .checkbox-radio-switch__content.checkbox-content[data-v-c34c63a4] *:not(a){cursor:default!important}.checkbox-radio-switch:not(.checkbox-radio-switch--disabled,.checkbox-radio-switch--checked):focus-within .checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch:not(.checkbox-radio-switch--disabled,.checkbox-radio-switch--checked) .checkbox-radio-switch__content[data-v-c34c63a4]:hover{background-color:var(--color-background-hover)}.checkbox-radio-switch--checked:not(.checkbox-radio-switch--disabled):focus-within .checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch--checked:not(.checkbox-radio-switch--disabled) .checkbox-radio-switch__content[data-v-c34c63a4]:hover{background-color:var(--color-primary-element-hover)}.checkbox-radio-switch--checked:not(.checkbox-radio-switch--button-variant):not(.checkbox-radio-switch--disabled):focus-within .checkbox-radio-switch__content[data-v-c34c63a4],.checkbox-radio-switch--checked:not(.checkbox-radio-switch--button-variant):not(.checkbox-radio-switch--disabled) .checkbox-radio-switch__content[data-v-c34c63a4]:hover{background-color:var(--color-primary-element-light-hover)}.checkbox-radio-switch-switch[data-v-c34c63a4]:not(.checkbox-radio-switch--checked) .checkbox-radio-switch__icon>*{color:var(--color-text-maxcontrast)}.checkbox-radio-switch-switch.checkbox-radio-switch--disabled.checkbox-radio-switch--checked[data-v-c34c63a4] .checkbox-radio-switch__icon>*{color:var(--color-primary-element-light)}.checkbox-radio-switch--button-variant.checkbox-radio-switch[data-v-c34c63a4]{background-color:var(--color-main-background);border:2px solid var(--color-border-maxcontrast);overflow:hidden}.checkbox-radio-switch--button-variant.checkbox-radio-switch--checked[data-v-c34c63a4]{font-weight:var(--font-weight-element, bold)}.checkbox-radio-switch--button-variant.checkbox-radio-switch--checked .checkbox-radio-switch__content[data-v-c34c63a4]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.checkbox-radio-switch--button-variant[data-v-c34c63a4] .checkbox-radio-switch__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.checkbox-radio-switch--button-variant[data-v-c34c63a4]:not(.checkbox-radio-switch--checked) .checkbox-radio-switch__icon>*{color:var(--color-main-text)}.checkbox-radio-switch--button-variant[data-v-c34c63a4] .checkbox-radio-switch__icon:empty{display:none}.checkbox-radio-switch--button-variant[data-v-c34c63a4]:not(.checkbox-radio-switch--button-variant-v-grouped):not(.checkbox-radio-switch--button-variant-h-grouped),.checkbox-radio-switch--button-variant .checkbox-radio-switch__content[data-v-c34c63a4]{border-radius:var(--checkbox-radio-switch--border-radius)}.checkbox-radio-switch--button-variant-v-grouped .checkbox-radio-switch__content[data-v-c34c63a4]{flex-basis:100%;max-width:unset}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:first-of-type{border-start-start-radius:var(--checkbox-radio-switch--border-radius-outer);border-start-end-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:last-of-type{border-end-start-radius:var(--checkbox-radio-switch--border-radius-outer);border-end-end-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:not(:last-of-type){border-bottom:0!important}.checkbox-radio-switch--button-variant-v-grouped:not(:last-of-type) .checkbox-radio-switch__content[data-v-c34c63a4]{margin-bottom:2px}.checkbox-radio-switch--button-variant-v-grouped[data-v-c34c63a4]:not(:first-of-type){border-top:0!important}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:first-of-type{border-start-start-radius:var(--checkbox-radio-switch--border-radius-outer);border-end-start-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:last-of-type{border-start-end-radius:var(--checkbox-radio-switch--border-radius-outer);border-end-end-radius:var(--checkbox-radio-switch--border-radius-outer)}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:not(:last-of-type){border-inline-end:0!important}.checkbox-radio-switch--button-variant-h-grouped:not(:last-of-type) .checkbox-radio-switch__content[data-v-c34c63a4]{margin-inline-end:2px}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4]:not(:first-of-type){border-inline-start:0!important}.checkbox-radio-switch--button-variant-h-grouped[data-v-c34c63a4] .checkbox-radio-switch__text{text-align:center;display:flex;align-items:center}.checkbox-radio-switch--button-variant-h-grouped .checkbox-radio-switch__content[data-v-c34c63a4]{flex-direction:column;justify-content:center;width:100%;margin:0;gap:0}._material-design-icon_63AMQ{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}._iconToggleSwitch_IKWaj{color:var(--v6bd152af);transition:color var(--animation-quick) ease}._iconToggleSwitch_IKWaj svg{height:auto!important}._iconToggleSwitch_IKWaj circle{cx:var(--v16fd8ca9);transition:cx var(--animation-quick) ease}.material-design-icon[data-v-9cedb949]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.settings-section[data-v-9cedb949]{display:block;padding:0 0 calc(var(--default-grid-baseline) * 5) 0;margin:calc(var(--default-grid-baseline) * 7);width:min(900px,100% - var(--default-grid-baseline) * 7 * 2)}.settings-section[data-v-9cedb949]:not(:last-child){border-bottom:1px solid var(--color-border)}.settings-section__name[data-v-9cedb949]{display:inline-flex;align-items:center;justify-content:center;max-width:900px;margin-top:0}.settings-section__info[data-v-9cedb949]{display:flex;align-items:center;justify-content:center;width:var(--default-clickable-area);height:var(--default-clickable-area);margin:calc((var(--default-clickable-area) - 16px) / 2 * -1);margin-inline-start:0;color:var(--color-text-maxcontrast)}.settings-section__info[data-v-9cedb949]:hover,.settings-section__info[data-v-9cedb949]:focus,.settings-section__info[data-v-9cedb949]:active{color:var(--color-main-text)}.settings-section__desc[data-v-9cedb949]{margin-top:-.2em;margin-bottom:1em;color:var(--color-text-maxcontrast);max-width:900px}.subheading[data-v-35c7818d]{font-weight:600;margin-bottom:8px}.subheading[data-v-35c7818d]:not(:first-child){margin-top:24px}.hint[data-v-35c7818d]{color:var(--color-text-maxcontrast);font-size:.9rem;margin:8px 0}.weekdays[data-v-35c7818d]{display:flex;flex-wrap:wrap;gap:8px 20px;margin:8px 0}.actions-row[data-v-35c7818d]{display:flex;gap:8px;margin-top:12px}.field[data-v-35c7818d]{display:flex;flex-direction:column;gap:4px;max-width:320px;margin-bottom:12px}.field label[data-v-35c7818d]{font-weight:600;font-size:.85rem}")),document.head.appendChild(c)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})(); +import{_ as b,H as R,bv as D,h as A,m as n,c as y,S as T,a3 as Z,i as G,N as E,bw as Y,a5 as U,a2 as m,Y as p,d as o,aq as v,bx as $,Q as u,X as _,aU as F,e as w,an as k,P as r,r as q,o as Q,aC as B,aB as X,W as d,by as K,f as N,aI as J,aZ as h,b0 as ee,a$ as te,a6 as ie,R as ae,bd as ne,aX as le,aY as oe,a_ as H,bz as se,bA as re,l as ce,b3 as de,bu as ue}from"./holidays-BoDDj6rx.chunk.mjs";const he=` @@ -7,5 +7,5 @@ import{_ as b,d as R,bl as D,c as A,o as n,D as y,B as T,ap as Z,i as F,ac as E, cy="6" r="3" fill="var(--color-main-background)" /> -`,pe=R({__name:"NcIconToggleSwitch",props:{checked:{type:Boolean},size:{default:34},inline:{type:Boolean,default:!1}},setup(t){D(s=>({v6bd152af:a.value,v16fd8ca9:e.value}));const a=A(()=>t.checked?"var(--color-primary-element)":"var(--color-text-maxcontrast)"),e=A(()=>t.checked?"calc(17 / 24 * 100%)":"calc(7 / 24 * 100%)");return(s,l)=>(n(),y(Z,{class:T(s.$style.iconToggleSwitch),svg:he,size:t.size,inline:t.inline},null,8,["class","size","inline"]))}}),ye="_iconToggleSwitch_CPPoW",be={"material-design-icon":"_material-design-icon_tLFaA",iconToggleSwitch:ye},ge={$style:be},ke=b(pe,[["__cssModules",ge]]),fe=Symbol.for("insideRadioGroup");function me(){return F(fe,void 0)}const ve={name:"CheckboxBlankOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ce=["aria-hidden","aria-label"],we=["fill","width","height"],Se={d:"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z"},_e={key:0};function xe(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon checkbox-blank-outline-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Se,[e.title?(n(),o("title",_e,r(e.title),1)):u("",!0)])],8,we))],16,Ce)}const Ve=b(ve,[["render",xe]]),Te={name:"CheckboxMarkedIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ae=["aria-hidden","aria-label"],Ie=["fill","width","height"],ze={d:"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"},Be={key:0};function Me(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon checkbox-marked-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",ze,[e.title?(n(),o("title",Be,r(e.title),1)):u("",!0)])],8,Ie))],16,Ae)}const $e=b(Te,[["render",Me]]),Ne={name:"MinusBoxIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Le=["aria-hidden","aria-label"],Oe=["fill","width","height"],He={d:"M17,13H7V11H17M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"},We={key:0};function Re(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon minus-box-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",He,[e.title?(n(),o("title",We,r(e.title),1)):u("",!0)])],8,Oe))],16,Le)}const De=b(Ne,[["render",Re]]),Ee={name:"RadioboxBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},qe=["aria-hidden","aria-label"],Pe=["fill","width","height"],Ue={d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"},je={key:0};function Ze(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon radiobox-blank-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Ue,[e.title?(n(),o("title",je,r(e.title),1)):u("",!0)])],8,Pe))],16,qe)}const Fe=b(Ee,[["render",Ze]]),Ge={name:"RadioboxMarkedIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ye=["aria-hidden","aria-label"],Je=["fill","width","height"],Xe={d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,7A5,5 0 0,0 7,12A5,5 0 0,0 12,17A5,5 0 0,0 17,12A5,5 0 0,0 12,7Z"},Ke={key:0};function Qe(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon radiobox-marked-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Xe,[e.title?(n(),o("title",Ke,r(e.title),1)):u("",!0)])],8,Je))],16,Ye)}const et=b(Ge,[["render",Qe]]),S="checkbox",C="radio",f="switch",x="button",tt={name:"NcCheckboxContent",components:{NcLoadingIcon:X,NcIconToggleSwitch:ke},props:{iconClass:{type:[String,Object],default:null},textClass:{type:[String,Object],default:null},type:{type:String,default:"checkbox",validator:t=>[S,C,f,x].includes(t)},buttonVariant:{type:Boolean,default:!1},isChecked:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},iconSize:{type:Number,default:24},labelId:{type:String,required:!0},descriptionId:{type:String,required:!0}},computed:{isButtonType(){return this.type===x},isSwitchType(){return this.type===f},checkboxRadioIconElement(){return this.type===C?this.isChecked?et:Fe:this.indeterminate?De:this.isChecked?$e:Ve}}},it={key:0,class:"checkbox-content__wrapper"},at=["id"],nt=["id"];function lt(t,a,e,s,l,i){const c=m("NcLoadingIcon"),I=m("NcIconToggleSwitch");return n(),o("span",{class:T(["checkbox-content",{["checkbox-content-"+e.type]:!0,"checkbox-content--button-variant":e.buttonVariant,"checkbox-content--has-text":!!t.$slots.default}])},[d("span",{class:T(["checkbox-content__icon",{"checkbox-content__icon--checked":e.isChecked,"checkbox-content__icon--has-description":!i.isButtonType&&t.$slots.description,[e.iconClass]:!0}]),"aria-hidden":!0,inert:""},[w(t.$slots,"icon",{checked:e.isChecked,loading:e.loading},()=>[e.loading?(n(),y(c,{key:0})):i.isSwitchType?(n(),y(I,{key:1,checked:e.isChecked,size:e.iconSize,inline:""},null,8,["checked","size"])):e.buttonVariant?u("",!0):(n(),y(P(i.checkboxRadioIconElement),{key:2,size:e.iconSize},null,8,["size"]))],!0)],2),t.$slots.default||t.$slots.description?(n(),o("span",it,[t.$slots.default?(n(),o("span",{key:0,id:e.labelId,class:T(["checkbox-content__text",e.textClass])},[w(t.$slots,"default",{},void 0,!0)],10,at)):u("",!0),!i.isButtonType&&t.$slots.description?(n(),o("span",{key:1,id:e.descriptionId,class:"checkbox-content__description"},[w(t.$slots,"description",{},void 0,!0)],8,nt)):u("",!0)])):u("",!0)],2)}const ot=b(tt,[["render",lt],["__scopeId","data-v-5ca1e30f"]]);E();const B={name:"NcCheckboxRadioSwitch",components:{NcCheckboxContent:ot},inheritAttrs:!1,props:{id:{type:String,default:()=>"checkbox-radio-switch-"+z(),validator:t=>t.trim()!==""},wrapperId:{type:String,default:null},name:{type:String,default:null},ariaLabel:{type:String,default:""},type:{type:String,default:"checkbox",validator:t=>[S,C,f,x].includes(t)},buttonVariant:{type:Boolean,default:!1},buttonVariantGrouped:{type:String,default:"no",validator:t=>["no","vertical","horizontal"].includes(t)},modelValue:{type:[Boolean,Array,String],default:!1},value:{type:String,default:null},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},required:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},wrapperElement:{type:String,default:null},class:{type:[String,Array,Object],default:""},style:{type:[String,Array,Object],default:""},description:{type:String,default:null}},emits:["update:modelValue"],setup(t,{emit:a}){const e=me();J(()=>e?.value.register(!1));const s=A(()=>e?.value?C:t.type),l=A({get(){return e?.value?e.value.modelValue:t.modelValue},set(i){e?.value?e.value.onUpdate(i):a("update:modelValue",i)}});return{internalType:s,internalModelValue:l,labelId:z(),descriptionId:z()}},computed:{isButtonType(){return this.internalType===x},computedWrapperElement(){return this.isButtonType?"button":this.wrapperElement!==null?this.wrapperElement:"span"},listeners(){return this.isButtonType?{click:this.onToggle}:{change:this.onToggle}},iconSize(){return this.internalType===f?36:20},cssIconSize(){return this.iconSize+"px"},cssIconHeight(){return this.internalType===f?"16px":this.cssIconSize},inputType(){return[S,C,x].includes(this.internalType)?this.internalType:S},isChecked(){return this.value!==null?Array.isArray(this.internalModelValue)?[...this.internalModelValue].indexOf(this.value)>-1:this.internalModelValue===this.value:this.internalModelValue===!0},hasIndeterminate(){return[S,C].includes(this.inputType)}},mounted(){if(this.name&&this.internalType===S&&!Array.isArray(this.internalModelValue))throw new Error("When using groups of checkboxes, the updated value will be an array.");if(this.name&&this.internalType===f)throw new Error("Switches are not made to be used for data sets. Please use checkboxes instead.");if(typeof this.internalModelValue!="boolean"&&this.internalType===f)throw new Error("Switches can only be used with boolean as modelValue prop.")},methods:{t:q,n:G,onToggle(t){if(!(this.disabled||t.target.tagName.toLowerCase()==="a")){if(this.internalType===C){this.internalModelValue=this.value;return}if(this.internalType===f){this.internalModelValue=!this.isChecked;return}if(typeof this.internalModelValue=="boolean"){this.internalModelValue=!this.internalModelValue;return}this.isChecked?this.internalModelValue=this.internalModelValue.filter(a=>a!==this.value):this.internalModelValue=[...this.internalModelValue,this.value]}}}},O=()=>{D(t=>({v5ac25550:t.cssIconSize,d98ce684:t.cssIconHeight}))},H=B.setup;B.setup=H?(t,a)=>(O(),H(t,a)):O;const st=["id","aria-labelledby","aria-describedby","aria-label","disabled","type","value","checked",".indeterminate","required","name"];function rt(t,a,e,s,l,i){const c=m("NcCheckboxContent");return n(),y(P(i.computedWrapperElement),v({id:e.wrapperId??(i.isButtonType?e.id:null),"aria-label":i.isButtonType&&e.ariaLabel?e.ariaLabel:void 0,class:["checkbox-radio-switch",[t.$props.class,{["checkbox-radio-switch-"+s.internalType]:s.internalType,"checkbox-radio-switch--checked":i.isChecked,"checkbox-radio-switch--disabled":e.disabled,"checkbox-radio-switch--indeterminate":i.hasIndeterminate?e.indeterminate:!1,"checkbox-radio-switch--button-variant":e.buttonVariant,"checkbox-radio-switch--button-variant-v-grouped":e.buttonVariant&&e.buttonVariantGrouped==="vertical","checkbox-radio-switch--button-variant-h-grouped":e.buttonVariant&&e.buttonVariantGrouped==="horizontal","button-vue":i.isButtonType}]],style:e.style,type:i.isButtonType?"button":null},i.isButtonType?t.$attrs:{},$(i.isButtonType?i.listeners:{})),{default:p(()=>[i.isButtonType?u("",!0):(n(),o("input",v({key:0,id:e.id,"aria-labelledby":!i.isButtonType&&!e.ariaLabel?s.labelId:null,"aria-describedby":!i.isButtonType&&(e.description||t.$slots.description)?s.descriptionId:null,"aria-label":e.ariaLabel||void 0,class:"checkbox-radio-switch__input",disabled:e.disabled,type:i.inputType,value:e.value,checked:i.isChecked,".indeterminate":i.hasIndeterminate?e.indeterminate:null,required:e.required,name:e.name},t.$attrs,$(i.listeners,!0)),null,48,st)),_(c,{id:i.isButtonType?void 0:`${e.id}-label`,class:"checkbox-radio-switch__content",iconClass:"checkbox-radio-switch__icon",textClass:"checkbox-radio-switch__text",type:s.internalType,indeterminate:i.hasIndeterminate?e.indeterminate:!1,buttonVariant:e.buttonVariant,isChecked:i.isChecked,loading:e.loading,labelId:s.labelId,descriptionId:s.descriptionId,iconSize:i.iconSize,onClick:i.onToggle},Y({icon:p(()=>[w(t.$slots,"icon",{},void 0,!0)]),_:2},[t.$slots.description||e.description?{name:"description",fn:p(()=>[w(t.$slots,"description",{},()=>[k(r(e.description),1)],!0)]),key:"0"}:void 0,t.$slots.default?{name:"default",fn:p(()=>[w(t.$slots,"default",{},void 0,!0)]),key:"1"}:void 0]),1032,["id","type","indeterminate","buttonVariant","isChecked","loading","labelId","descriptionId","iconSize","onClick"])]),_:3},16,["id","aria-label","class","style","type"])}const ct=b(B,[["render",rt],["__scopeId","data-v-c34c63a4"]]),dt={name:"HelpCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ut=["aria-hidden","aria-label"],ht=["fill","width","height"],pt={d:"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z"},yt={key:0};function bt(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon help-circle-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",pt,[e.title?(n(),o("title",yt,r(e.title),1)):u("",!0)])],8,ht))],16,ut)}const gt=b(dt,[["render",bt]]);E(K);const kt={class:"settings-section"},ft={class:"settings-section__name"},mt=["aria-label","href","title"],vt={key:0,class:"settings-section__desc"},Ct=R({__name:"NcSettingsSection",props:{name:{},description:{default:""},docUrl:{default:""}},setup(t){const a=q("External documentation");return(e,s)=>(n(),o("div",kt,[d("h2",ft,[k(r(t.name)+" ",1),t.docUrl?(n(),o("a",{key:0,"aria-label":N(a),class:"settings-section__info",href:t.docUrl,rel:"noreferrer nofollow",target:"_blank",title:N(a)},[_(gt,{size:20})],8,mt)):u("",!0)]),t.description?(n(),o("p",vt,r(t.description),1)):u("",!0),w(e.$slots,"default",{},void 0,!0)]))}}),wt=b(Ct,[["__scopeId","data-v-9cedb949"]]),St={name:"PersonalSettings",components:{NcButton:ie,NcCheckboxRadioSwitch:ct,NcNoteCard:te,NcSelect:ee,NcSettingsSection:wt},data(){const t=ce("absence","personalConfig");return{config:t,weekdayList:[{iso:1,label:h("absence","Monday")},{iso:2,label:h("absence","Tuesday")},{iso:3,label:h("absence","Wednesday")},{iso:4,label:h("absence","Thursday")},{iso:5,label:h("absence","Friday")},{iso:6,label:h("absence","Saturday")},{iso:7,label:h("absence","Sunday")}],weekdays:[...de(t.workWeekdays)].sort(),overriding:!t.availabilitySet||t.workWeekdaysOverride!=="",country:null,region:null,countryOptions:[],regionOptions:[],loadingCountries:!1,saving:!1}},computed:{weekdaysDisabled(){return this.config.availabilitySet&&!this.overriding},detectedWeekdayLabels(){return(this.config.workWeekdaysDetected||[]).map(t=>this.weekdayList.find(a=>a.iso===t)?.label).filter(Boolean).join(", ")},countryPlaceholder(){return this.config.holidayCountryDetected?h("absence","Detected: {country}",{country:this.config.holidayCountryDetected}):h("absence","Select a country…")}},async mounted(){this.loadingCountries=!0;try{this.countryOptions=await re(),this.country=this.countryOptions.find(t=>t.id===this.config.holidayCountry)||null,await this.reloadRegions()}catch{L(h("absence","Could not load the country list"))}finally{this.loadingCountries=!1}},methods:{t:h,toggleWeekday(t,a){const e=new Set(this.weekdays);a?e.add(t):e.delete(t),this.weekdays=[...e].sort()},cancelOverride(){this.overriding=!1,this.weekdays=[...this.config.workWeekdaysDetected||[]].sort()},async onCountryChange(){this.region=null,await this.reloadRegions()},async reloadRegions(){this.regionOptions=this.country?await se(this.country.id):[],this.region=this.regionOptions.find(t=>t.id===this.config.holidayRegion)||null},save(){this.saving=!0;const t=this.weekdays.join(","),a=(this.config.workWeekdaysDetected||[]).join(","),e=this.config.availabilitySet&&t===a?"":t,s=this.country?this.country.id:"",l=s===(this.config.holidayCountryDetected||"")?"":s,i={work_weekdays:e,holiday_country:l,holiday_region:this.region?this.region.id:""};le.updatePersonalConfig(i).then(c=>{this.config=c,oe(h("absence","Settings saved"))}).catch(()=>L(h("absence","Could not save settings"))).finally(()=>{this.saving=!1})}}},_t={class:"subheading"},xt={class:"weekdays"},Vt={class:"actions-row"},Tt={class:"subheading"},At={class:"hint"},It={class:"field"},zt={key:2,class:"field"};function Bt(t,a,e,s,l,i){const c=m("NcNoteCard"),I=m("NcCheckboxRadioSwitch"),V=m("NcButton"),M=m("NcSelect"),U=m("NcSettingsSection");return n(),y(U,{name:i.t("absence","Absence"),description:i.t("absence","These settings prefill the “Working days” field when you request time off. You can always change the number on the request itself.")},{default:p(()=>[d("h3",_t,r(i.t("absence","Working days")),1),l.config.availabilitySet?(n(),y(c,{key:0,type:"success"},{default:p(()=>[k(r(i.t("absence","Detected from your Availability: {days}.",{days:i.detectedWeekdayLabels})),1)]),_:1})):(n(),y(c,{key:1,type:"info"},{default:p(()=>[k(r(i.t("absence","You have not set your working hours yet. Set your Availability so your working days are filled in automatically — until then Monday–Friday is assumed.")),1)]),_:1})),d("div",xt,[(n(!0),o(ae,null,ne(l.weekdayList,g=>(n(),y(I,{key:g.iso,"model-value":l.weekdays.includes(g.iso),disabled:i.weekdaysDisabled,"onUpdate:modelValue":j=>i.toggleWeekday(g.iso,j)},{default:p(()=>[k(r(g.label),1)]),_:2},1032,["model-value","disabled","onUpdate:modelValue"]))),128))]),d("div",Vt,[_(V,{variant:"secondary",href:"#settings-personal-availability"},{default:p(()=>[k(r(l.config.availabilitySet?i.t("absence","Change availability"):i.t("absence","Set availability")),1)]),_:1}),l.config.availabilitySet&&!l.overriding?(n(),y(V,{key:0,variant:"tertiary",onClick:a[0]||(a[0]=g=>l.overriding=!0)},{default:p(()=>[k(r(i.t("absence","Override")),1)]),_:1})):l.config.availabilitySet&&l.overriding?(n(),y(V,{key:1,variant:"tertiary",onClick:i.cancelOverride},{default:p(()=>[k(r(i.t("absence","Cancel override")),1)]),_:1},8,["onClick"])):u("",!0)]),d("h3",Tt,r(i.t("absence","Public holidays")),1),d("p",At,r(i.t("absence","Public holidays for your location are not counted as working days. Choose your country and region so the right holidays apply.")),1),d("div",It,[d("label",null,r(i.t("absence","Country")),1),_(M,{modelValue:l.country,"onUpdate:modelValue":[a[1]||(a[1]=g=>l.country=g),i.onCountryChange],options:l.countryOptions,loading:l.loadingCountries,label:"label",placeholder:i.countryPlaceholder},null,8,["modelValue","options","loading","placeholder","onUpdate:modelValue"])]),l.regionOptions.length?(n(),o("div",zt,[d("label",null,r(i.t("absence","Region")),1),_(M,{modelValue:l.region,"onUpdate:modelValue":a[2]||(a[2]=g=>l.region=g),options:l.regionOptions,label:"label",placeholder:i.t("absence","Whole country")},null,8,["modelValue","options","placeholder"])])):u("",!0),_(V,{variant:"primary",disabled:l.saving,onClick:i.save},{default:p(()=>[k(r(i.t("absence","Save settings")),1)]),_:1},8,["disabled","onClick"])]),_:1},8,["name","description"])}const Mt=Q(St,[["render",Bt],["__scopeId","data-v-f72d4596"]]),W=ue(Mt);W.config.globalProperties.t=h,W.mount("#absence-personal-settings"); +`,pe=R({__name:"NcIconToggleSwitch",props:{checked:{type:Boolean},size:{default:34},inline:{type:Boolean,default:!1}},setup(t){D(s=>({v6bd152af:a.value,v16fd8ca9:e.value}));const a=A(()=>t.checked?"var(--color-primary-element)":"var(--color-text-maxcontrast)"),e=A(()=>t.checked?"calc(17 / 24 * 100%)":"calc(7 / 24 * 100%)");return(s,l)=>(n(),y(Z,{class:T(s.$style.iconToggleSwitch),svg:he,size:t.size,inline:t.inline},null,8,["class","size","inline"]))}}),ye="_iconToggleSwitch_IKWaj",be={"material-design-icon":"_material-design-icon_63AMQ",iconToggleSwitch:ye},ge={$style:be},ke=b(pe,[["__cssModules",ge]]),fe=Symbol.for("insideRadioGroup");function me(){return G(fe,void 0)}const ve={name:"CheckboxBlankOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ce=["aria-hidden","aria-label"],we=["fill","width","height"],Se={d:"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z"},_e={key:0};function xe(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon checkbox-blank-outline-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Se,[e.title?(n(),o("title",_e,r(e.title),1)):u("",!0)])],8,we))],16,Ce)}const Ve=b(ve,[["render",xe]]),Te={name:"CheckboxMarkedIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ae=["aria-hidden","aria-label"],Ie=["fill","width","height"],Be={d:"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"},ze={key:0};function Me(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon checkbox-marked-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Be,[e.title?(n(),o("title",ze,r(e.title),1)):u("",!0)])],8,Ie))],16,Ae)}const $e=b(Te,[["render",Me]]),Ne={name:"MinusBoxIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},He=["aria-hidden","aria-label"],Le=["fill","width","height"],Oe={d:"M17,13H7V11H17M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"},We={key:0};function Re(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon minus-box-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Oe,[e.title?(n(),o("title",We,r(e.title),1)):u("",!0)])],8,Le))],16,He)}const De=b(Ne,[["render",Re]]),Ee={name:"RadioboxBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ue=["aria-hidden","aria-label"],qe=["fill","width","height"],Pe={d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"},je={key:0};function Ze(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon radiobox-blank-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Pe,[e.title?(n(),o("title",je,r(e.title),1)):u("",!0)])],8,qe))],16,Ue)}const Ge=b(Ee,[["render",Ze]]),Ye={name:"RadioboxMarkedIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Fe=["aria-hidden","aria-label"],Qe=["fill","width","height"],Xe={d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,7A5,5 0 0,0 7,12A5,5 0 0,0 12,17A5,5 0 0,0 17,12A5,5 0 0,0 12,7Z"},Ke={key:0};function Je(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon radiobox-marked-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",Xe,[e.title?(n(),o("title",Ke,r(e.title),1)):u("",!0)])],8,Qe))],16,Fe)}const et=b(Ye,[["render",Je]]),S="checkbox",C="radio",f="switch",x="button",tt={name:"NcCheckboxContent",components:{NcLoadingIcon:X,NcIconToggleSwitch:ke},props:{iconClass:{type:[String,Object],default:null},textClass:{type:[String,Object],default:null},type:{type:String,default:"checkbox",validator:t=>[S,C,f,x].includes(t)},buttonVariant:{type:Boolean,default:!1},isChecked:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},iconSize:{type:Number,default:24},labelId:{type:String,required:!0},descriptionId:{type:String,required:!0}},computed:{isButtonType(){return this.type===x},isSwitchType(){return this.type===f},checkboxRadioIconElement(){return this.type===C?this.isChecked?et:Ge:this.indeterminate?De:this.isChecked?$e:Ve}}},it={key:0,class:"checkbox-content__wrapper"},at=["id"],nt=["id"];function lt(t,a,e,s,l,i){const c=m("NcLoadingIcon"),I=m("NcIconToggleSwitch");return n(),o("span",{class:T(["checkbox-content",{["checkbox-content-"+e.type]:!0,"checkbox-content--button-variant":e.buttonVariant,"checkbox-content--has-text":!!t.$slots.default}])},[d("span",{class:T(["checkbox-content__icon",{"checkbox-content__icon--checked":e.isChecked,"checkbox-content__icon--has-description":!i.isButtonType&&t.$slots.description,[e.iconClass]:!0}]),"aria-hidden":!0,inert:""},[w(t.$slots,"icon",{checked:e.isChecked,loading:e.loading},()=>[e.loading?(n(),y(c,{key:0})):i.isSwitchType?(n(),y(I,{key:1,checked:e.isChecked,size:e.iconSize,inline:""},null,8,["checked","size"])):e.buttonVariant?u("",!0):(n(),y(q(i.checkboxRadioIconElement),{key:2,size:e.iconSize},null,8,["size"]))],!0)],2),t.$slots.default||t.$slots.description?(n(),o("span",it,[t.$slots.default?(n(),o("span",{key:0,id:e.labelId,class:T(["checkbox-content__text",e.textClass])},[w(t.$slots,"default",{},void 0,!0)],10,at)):u("",!0),!i.isButtonType&&t.$slots.description?(n(),o("span",{key:1,id:e.descriptionId,class:"checkbox-content__description"},[w(t.$slots,"description",{},void 0,!0)],8,nt)):u("",!0)])):u("",!0)],2)}const ot=b(tt,[["render",lt],["__scopeId","data-v-5ca1e30f"]]);E();const z={name:"NcCheckboxRadioSwitch",components:{NcCheckboxContent:ot},inheritAttrs:!1,props:{id:{type:String,default:()=>"checkbox-radio-switch-"+B(),validator:t=>t.trim()!==""},wrapperId:{type:String,default:null},name:{type:String,default:null},ariaLabel:{type:String,default:""},type:{type:String,default:"checkbox",validator:t=>[S,C,f,x].includes(t)},buttonVariant:{type:Boolean,default:!1},buttonVariantGrouped:{type:String,default:"no",validator:t=>["no","vertical","horizontal"].includes(t)},modelValue:{type:[Boolean,Array,String],default:!1},value:{type:String,default:null},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},required:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},wrapperElement:{type:String,default:null},class:{type:[String,Array,Object],default:""},style:{type:[String,Array,Object],default:""},description:{type:String,default:null}},emits:["update:modelValue"],setup(t,{emit:a}){const e=me();Q(()=>e?.value.register(!1));const s=A(()=>e?.value?C:t.type),l=A({get(){return e?.value?e.value.modelValue:t.modelValue},set(i){e?.value?e.value.onUpdate(i):a("update:modelValue",i)}});return{internalType:s,internalModelValue:l,labelId:B(),descriptionId:B()}},computed:{isButtonType(){return this.internalType===x},computedWrapperElement(){return this.isButtonType?"button":this.wrapperElement!==null?this.wrapperElement:"span"},listeners(){return this.isButtonType?{click:this.onToggle}:{change:this.onToggle}},iconSize(){return this.internalType===f?36:20},cssIconSize(){return this.iconSize+"px"},cssIconHeight(){return this.internalType===f?"16px":this.cssIconSize},inputType(){return[S,C,x].includes(this.internalType)?this.internalType:S},isChecked(){return this.value!==null?Array.isArray(this.internalModelValue)?[...this.internalModelValue].indexOf(this.value)>-1:this.internalModelValue===this.value:this.internalModelValue===!0},hasIndeterminate(){return[S,C].includes(this.inputType)}},mounted(){if(this.name&&this.internalType===S&&!Array.isArray(this.internalModelValue))throw new Error("When using groups of checkboxes, the updated value will be an array.");if(this.name&&this.internalType===f)throw new Error("Switches are not made to be used for data sets. Please use checkboxes instead.");if(typeof this.internalModelValue!="boolean"&&this.internalType===f)throw new Error("Switches can only be used with boolean as modelValue prop.")},methods:{t:U,n:Y,onToggle(t){if(!(this.disabled||t.target.tagName.toLowerCase()==="a")){if(this.internalType===C){this.internalModelValue=this.value;return}if(this.internalType===f){this.internalModelValue=!this.isChecked;return}if(typeof this.internalModelValue=="boolean"){this.internalModelValue=!this.internalModelValue;return}this.isChecked?this.internalModelValue=this.internalModelValue.filter(a=>a!==this.value):this.internalModelValue=[...this.internalModelValue,this.value]}}}},L=()=>{D(t=>({v5ac25550:t.cssIconSize,d98ce684:t.cssIconHeight}))},O=z.setup;z.setup=O?(t,a)=>(L(),O(t,a)):L;const st=["id","aria-labelledby","aria-describedby","aria-label","disabled","type","value","checked",".indeterminate","required","name"];function rt(t,a,e,s,l,i){const c=m("NcCheckboxContent");return n(),y(q(i.computedWrapperElement),v({id:e.wrapperId??(i.isButtonType?e.id:null),"aria-label":i.isButtonType&&e.ariaLabel?e.ariaLabel:void 0,class:["checkbox-radio-switch",[t.$props.class,{["checkbox-radio-switch-"+s.internalType]:s.internalType,"checkbox-radio-switch--checked":i.isChecked,"checkbox-radio-switch--disabled":e.disabled,"checkbox-radio-switch--indeterminate":i.hasIndeterminate?e.indeterminate:!1,"checkbox-radio-switch--button-variant":e.buttonVariant,"checkbox-radio-switch--button-variant-v-grouped":e.buttonVariant&&e.buttonVariantGrouped==="vertical","checkbox-radio-switch--button-variant-h-grouped":e.buttonVariant&&e.buttonVariantGrouped==="horizontal","button-vue":i.isButtonType}]],style:e.style,type:i.isButtonType?"button":null},i.isButtonType?t.$attrs:{},$(i.isButtonType?i.listeners:{})),{default:p(()=>[i.isButtonType?u("",!0):(n(),o("input",v({key:0,id:e.id,"aria-labelledby":!i.isButtonType&&!e.ariaLabel?s.labelId:null,"aria-describedby":!i.isButtonType&&(e.description||t.$slots.description)?s.descriptionId:null,"aria-label":e.ariaLabel||void 0,class:"checkbox-radio-switch__input",disabled:e.disabled,type:i.inputType,value:e.value,checked:i.isChecked,".indeterminate":i.hasIndeterminate?e.indeterminate:null,required:e.required,name:e.name},t.$attrs,$(i.listeners,!0)),null,48,st)),_(c,{id:i.isButtonType?void 0:`${e.id}-label`,class:"checkbox-radio-switch__content",iconClass:"checkbox-radio-switch__icon",textClass:"checkbox-radio-switch__text",type:s.internalType,indeterminate:i.hasIndeterminate?e.indeterminate:!1,buttonVariant:e.buttonVariant,isChecked:i.isChecked,loading:e.loading,labelId:s.labelId,descriptionId:s.descriptionId,iconSize:i.iconSize,onClick:i.onToggle},F({icon:p(()=>[w(t.$slots,"icon",{},void 0,!0)]),_:2},[t.$slots.description||e.description?{name:"description",fn:p(()=>[w(t.$slots,"description",{},()=>[k(r(e.description),1)],!0)]),key:"0"}:void 0,t.$slots.default?{name:"default",fn:p(()=>[w(t.$slots,"default",{},void 0,!0)]),key:"1"}:void 0]),1032,["id","type","indeterminate","buttonVariant","isChecked","loading","labelId","descriptionId","iconSize","onClick"])]),_:3},16,["id","aria-label","class","style","type"])}const ct=b(z,[["render",rt],["__scopeId","data-v-c34c63a4"]]),dt={name:"HelpCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ut=["aria-hidden","aria-label"],ht=["fill","width","height"],pt={d:"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z"},yt={key:0};function bt(t,a,e,s,l,i){return n(),o("span",v(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon help-circle-icon",role:"img",onClick:a[0]||(a[0]=c=>t.$emit("click",c))}),[(n(),o("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[d("path",pt,[e.title?(n(),o("title",yt,r(e.title),1)):u("",!0)])],8,ht))],16,ut)}const gt=b(dt,[["render",bt]]);E(K);const kt={class:"settings-section"},ft={class:"settings-section__name"},mt=["aria-label","href","title"],vt={key:0,class:"settings-section__desc"},Ct=R({__name:"NcSettingsSection",props:{name:{},description:{default:""},docUrl:{default:""}},setup(t){const a=U("External documentation");return(e,s)=>(n(),o("div",kt,[d("h2",ft,[k(r(t.name)+" ",1),t.docUrl?(n(),o("a",{key:0,"aria-label":N(a),class:"settings-section__info",href:t.docUrl,rel:"noreferrer nofollow",target:"_blank",title:N(a)},[_(gt,{size:20})],8,mt)):u("",!0)]),t.description?(n(),o("p",vt,r(t.description),1)):u("",!0),w(e.$slots,"default",{},void 0,!0)]))}}),wt=b(Ct,[["__scopeId","data-v-9cedb949"]]),St={name:"PersonalSettings",components:{NcButton:ie,NcCheckboxRadioSwitch:ct,NcNoteCard:te,NcSelect:ee,NcSettingsSection:wt},data(){const t=ce("absence","personalConfig");return{config:t,weekdayList:[{iso:1,label:h("absence","Monday")},{iso:2,label:h("absence","Tuesday")},{iso:3,label:h("absence","Wednesday")},{iso:4,label:h("absence","Thursday")},{iso:5,label:h("absence","Friday")},{iso:6,label:h("absence","Saturday")},{iso:7,label:h("absence","Sunday")}],weekdays:[...de(t.workWeekdays)].sort(),overriding:!t.availabilitySet||t.workWeekdaysOverride!=="",country:null,region:null,countryOptions:[],regionOptions:[],loadingCountries:!1,saving:!1}},computed:{weekdaysDisabled(){return this.config.availabilitySet&&!this.overriding},detectedWeekdayLabels(){return(this.config.workWeekdaysDetected||[]).map(t=>this.weekdayList.find(a=>a.iso===t)?.label).filter(Boolean).join(", ")},countryPlaceholder(){return this.config.holidayCountryDetected?h("absence","Detected: {country}",{country:this.config.holidayCountryDetected}):h("absence","Select a country…")}},async mounted(){this.loadingCountries=!0;try{this.countryOptions=await re(),this.country=this.countryOptions.find(t=>t.id===this.config.holidayCountry)||null,await this.reloadRegions()}catch{H(h("absence","Could not load the country list"))}finally{this.loadingCountries=!1}},methods:{t:h,toggleWeekday(t,a){const e=new Set(this.weekdays);a?e.add(t):e.delete(t),this.weekdays=[...e].sort()},cancelOverride(){this.overriding=!1,this.weekdays=[...this.config.workWeekdaysDetected||[]].sort()},async onCountryChange(){this.region=null,await this.reloadRegions()},async reloadRegions(){this.regionOptions=this.country?await se(this.country.id):[],this.region=this.regionOptions.find(t=>t.id===this.config.holidayRegion)||null},save(){this.saving=!0;const t=this.weekdays.join(","),a=(this.config.workWeekdaysDetected||[]).join(","),e=this.config.availabilitySet&&t===a?"":t,s=this.country?this.country.id:"",l=s===(this.config.holidayCountryDetected||"")?"":s,i={work_weekdays:e,holiday_country:l,holiday_region:this.region?this.region.id:""};le.updatePersonalConfig(i).then(c=>{this.config=c,oe(h("absence","Settings saved"))}).catch(()=>H(h("absence","Could not save settings"))).finally(()=>{this.saving=!1})}}},_t={class:"subheading"},xt={class:"weekdays"},Vt={class:"actions-row"},Tt={class:"subheading"},At={class:"hint"},It={class:"field"},Bt={key:2,class:"field"};function zt(t,a,e,s,l,i){const c=m("NcNoteCard"),I=m("NcCheckboxRadioSwitch"),V=m("NcButton"),M=m("NcSelect"),P=m("NcSettingsSection");return n(),y(P,{name:i.t("absence","Absence"),description:i.t("absence","These settings prefill the “Working days” field when you request time off. You can always change the number on the request itself.")},{default:p(()=>[d("h3",_t,r(i.t("absence","Working days")),1),l.config.availabilitySet?(n(),y(c,{key:0,type:"success"},{default:p(()=>[k(r(i.t("absence","Detected from your Availability: {days}.",{days:i.detectedWeekdayLabels})),1)]),_:1})):(n(),y(c,{key:1,type:"info"},{default:p(()=>[k(r(i.t("absence","You have not set your working hours yet. Set your Availability so your working days are filled in automatically — until then Monday–Friday is assumed.")),1)]),_:1})),d("div",xt,[(n(!0),o(ae,null,ne(l.weekdayList,g=>(n(),y(I,{key:g.iso,modelValue:l.weekdays.includes(g.iso),disabled:i.weekdaysDisabled,"onUpdate:modelValue":j=>i.toggleWeekday(g.iso,j)},{default:p(()=>[k(r(g.label),1)]),_:2},1032,["modelValue","disabled","onUpdate:modelValue"]))),128))]),d("div",Vt,[_(V,{variant:"secondary",href:"#settings-personal-availability"},{default:p(()=>[k(r(l.config.availabilitySet?i.t("absence","Change availability"):i.t("absence","Set availability")),1)]),_:1}),l.config.availabilitySet&&!l.overriding?(n(),y(V,{key:0,variant:"tertiary",onClick:a[0]||(a[0]=g=>l.overriding=!0)},{default:p(()=>[k(r(i.t("absence","Override")),1)]),_:1})):l.config.availabilitySet&&l.overriding?(n(),y(V,{key:1,variant:"tertiary",onClick:i.cancelOverride},{default:p(()=>[k(r(i.t("absence","Cancel override")),1)]),_:1},8,["onClick"])):u("",!0)]),d("h3",Tt,r(i.t("absence","Public holidays")),1),d("p",At,r(i.t("absence","Public holidays for your location are not counted as working days. Choose your country and region so the right holidays apply.")),1),d("div",It,[d("label",null,r(i.t("absence","Country")),1),_(M,{modelValue:l.country,"onUpdate:modelValue":[a[1]||(a[1]=g=>l.country=g),i.onCountryChange],options:l.countryOptions,loading:l.loadingCountries,label:"label",placeholder:i.countryPlaceholder},null,8,["modelValue","options","loading","placeholder","onUpdate:modelValue"])]),l.regionOptions.length?(n(),o("div",Bt,[d("label",null,r(i.t("absence","Region")),1),_(M,{modelValue:l.region,"onUpdate:modelValue":a[2]||(a[2]=g=>l.region=g),options:l.regionOptions,label:"label",placeholder:i.t("absence","Whole country")},null,8,["modelValue","options","placeholder"])])):u("",!0),_(V,{variant:"primary",disabled:l.saving,onClick:i.save},{default:p(()=>[k(r(i.t("absence","Save settings")),1)]),_:1},8,["disabled","onClick"])]),_:1},8,["name","description"])}const Mt=J(St,[["render",zt],["__scopeId","data-v-35c7818d"]]),W=ue(Mt);W.config.globalProperties.t=h,W.mount("#absence-personal-settings"); //# sourceMappingURL=absence-personal-settings.mjs.map diff --git a/js/absence-personal-settings.mjs.license b/js/absence-personal-settings.mjs.license index e80865a..6c06bdd 100644 --- a/js/absence-personal-settings.mjs.license +++ b/js/absence-personal-settings.mjs.license @@ -4,7 +4,7 @@ SPDX-FileCopyrightText: absence developers This file is generated from multiple sources. Included packages: - @nextcloud/vue - - version: 9.8.2 + - version: 9.9.0 - license: AGPL-3.0-or-later - absence - version: 1.0.0 diff --git a/js/absence-personal-settings.mjs.map b/js/absence-personal-settings.mjs.map index 64eced2..d84321a 100644 --- a/js/absence-personal-settings.mjs.map +++ b/js/absence-personal-settings.mjs.map @@ -1 +1 @@ -{"version":3,"file":"absence-personal-settings.mjs","sources":["../node_modules/@nextcloud/vue/dist/chunks/NcIconToggleSwitch-CWzIC2ar.mjs","../node_modules/@nextcloud/vue/dist/chunks/useNcRadioGroup-D6llQmAl.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcCheckboxRadioSwitch-BVTMQSAg.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcSettingsSection-DmfxX2se.mjs","../src/views/settings/PersonalSettings.vue","../src/personal-settings.js"],"sourcesContent":["import '../assets/NcIconToggleSwitch-BrjPjGQL.css';\nimport { defineComponent, useCssVars, computed, openBlock, createBlock, normalizeClass } from \"vue\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst svg = `\n\t\n\t\n`;\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcIconToggleSwitch\",\n props: {\n checked: { type: Boolean },\n size: { default: 34 },\n inline: { type: Boolean, default: false }\n },\n setup(__props) {\n useCssVars((_ctx) => ({\n \"v6bd152af\": color.value,\n \"v16fd8ca9\": cx.value\n }));\n const color = computed(() => __props.checked ? \"var(--color-primary-element)\" : \"var(--color-text-maxcontrast)\");\n const cx = computed(() => __props.checked ? \"calc(17 / 24 * 100%)\" : \"calc(7 / 24 * 100%)\");\n return (_ctx, _cache) => {\n return openBlock(), createBlock(NcIconSvgWrapper, {\n class: normalizeClass(_ctx.$style.iconToggleSwitch),\n svg,\n size: __props.size,\n inline: __props.inline\n }, null, 8, [\"class\", \"size\", \"inline\"]);\n };\n }\n});\nconst iconToggleSwitch = \"_iconToggleSwitch_CPPoW\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_tLFaA\",\n iconToggleSwitch\n};\nconst cssModules = {\n \"$style\": style0\n};\nconst NcIconToggleSwitch = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__cssModules\", cssModules]]);\nexport {\n NcIconToggleSwitch as N\n};\n//# sourceMappingURL=NcIconToggleSwitch-CWzIC2ar.mjs.map\n","import { inject } from \"vue\";\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nconst INSIDE_RADIO_GROUP_KEY = /* @__PURE__ */ Symbol.for(\"insideRadioGroup\");\nfunction useInsideRadioGroup() {\n return inject(INSIDE_RADIO_GROUP_KEY, void 0);\n}\nexport {\n INSIDE_RADIO_GROUP_KEY as I,\n useInsideRadioGroup as u\n};\n//# sourceMappingURL=useNcRadioGroup-D6llQmAl.mjs.map\n","import '../assets/NcCheckboxRadioSwitch-BlQSZVW0.css';\nimport { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode, resolveComponent, normalizeClass, renderSlot, createBlock, resolveDynamicComponent, toHandlers, withCtx, createVNode, createSlots, createTextVNode, onMounted, computed, useCssVars } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { N as NcIconToggleSwitch } from \"./NcIconToggleSwitch-CWzIC2ar.mjs\";\nimport { N as NcLoadingIcon } from \"./NcLoadingIcon-BOVpFVQz.mjs\";\nimport { r as register, K as n, a as t } from \"./_l10n-CG4CuN3H.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { u as useInsideRadioGroup } from \"./useNcRadioGroup-D6llQmAl.mjs\";\nconst _sfc_main$6 = {\n name: \"CheckboxBlankOutlineIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$6 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$5 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$5 = { d: \"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z\" };\nconst _hoisted_4$4 = { key: 0 };\nfunction _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon checkbox-blank-outline-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$5, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$4, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$5))\n ], 16, _hoisted_1$6);\n}\nconst CheckboxBlankOutline = /* @__PURE__ */ _export_sfc(_sfc_main$6, [[\"render\", _sfc_render$6]]);\nconst _sfc_main$5 = {\n name: \"CheckboxMarkedIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$5 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$4 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$4 = { d: \"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z\" };\nconst _hoisted_4$3 = { key: 0 };\nfunction _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon checkbox-marked-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$4, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$3, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$4))\n ], 16, _hoisted_1$5);\n}\nconst CheckboxMarked = /* @__PURE__ */ _export_sfc(_sfc_main$5, [[\"render\", _sfc_render$5]]);\nconst _sfc_main$4 = {\n name: \"MinusBoxIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$4 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$3 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$3 = { d: \"M17,13H7V11H17M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z\" };\nconst _hoisted_4$2 = { key: 0 };\nfunction _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon minus-box-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$3, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$2, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$3))\n ], 16, _hoisted_1$4);\n}\nconst MinusBox = /* @__PURE__ */ _export_sfc(_sfc_main$4, [[\"render\", _sfc_render$4]]);\nconst _sfc_main$3 = {\n name: \"RadioboxBlankIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$3 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$2 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$2 = { d: \"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\" };\nconst _hoisted_4$1 = { key: 0 };\nfunction _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon radiobox-blank-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$2, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$1, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$2))\n ], 16, _hoisted_1$3);\n}\nconst RadioboxBlank = /* @__PURE__ */ _export_sfc(_sfc_main$3, [[\"render\", _sfc_render$3]]);\nconst _sfc_main$2 = {\n name: \"RadioboxMarkedIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$2 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$1 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$1 = { d: \"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,7A5,5 0 0,0 7,12A5,5 0 0,0 12,17A5,5 0 0,0 17,12A5,5 0 0,0 12,7Z\" };\nconst _hoisted_4 = { key: 0 };\nfunction _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon radiobox-marked-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$1, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$1))\n ], 16, _hoisted_1$2);\n}\nconst RadioboxMarked = /* @__PURE__ */ _export_sfc(_sfc_main$2, [[\"render\", _sfc_render$2]]);\nconst TYPE_CHECKBOX = \"checkbox\";\nconst TYPE_RADIO = \"radio\";\nconst TYPE_SWITCH = \"switch\";\nconst TYPE_BUTTON = \"button\";\nconst _sfc_main$1 = {\n name: \"NcCheckboxContent\",\n components: {\n NcLoadingIcon,\n NcIconToggleSwitch\n },\n props: {\n /**\n * Class for the icon element\n */\n iconClass: {\n type: [String, Object],\n default: null\n },\n /**\n * Class for the text element\n */\n textClass: {\n type: [String, Object],\n default: null\n },\n /**\n * Type of the input. checkbox, radio, switch, or button.\n *\n * Only use button when used in a `tablist` container and the\n * `tab` role is set.\n *\n * @type {'checkbox'|'radio'|'switch'|'button'}\n */\n type: {\n type: String,\n default: \"checkbox\",\n validator: (type) => [\n TYPE_CHECKBOX,\n TYPE_RADIO,\n TYPE_SWITCH,\n TYPE_BUTTON\n ].includes(type)\n },\n /**\n * Toggle the alternative button style\n */\n buttonVariant: {\n type: Boolean,\n default: false\n },\n /**\n * True if the entry is checked\n */\n isChecked: {\n type: Boolean,\n default: false\n },\n /**\n * Indeterminate state\n */\n indeterminate: {\n type: Boolean,\n default: false\n },\n /**\n * Loading state\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Icon size\n */\n iconSize: {\n type: Number,\n default: 24\n },\n /**\n * Label id attribute\n */\n labelId: {\n type: String,\n required: true\n },\n /**\n * Description id attribute\n */\n descriptionId: {\n type: String,\n required: true\n }\n },\n computed: {\n isButtonType() {\n return this.type === TYPE_BUTTON;\n },\n isSwitchType() {\n return this.type === TYPE_SWITCH;\n },\n /**\n * Returns the proper Material icon depending on the select case\n *\n * @return {object}\n */\n checkboxRadioIconElement() {\n if (this.type === TYPE_RADIO) {\n if (this.isChecked) {\n return RadioboxMarked;\n }\n return RadioboxBlank;\n }\n if (this.indeterminate) {\n return MinusBox;\n }\n if (this.isChecked) {\n return CheckboxMarked;\n }\n return CheckboxBlankOutline;\n }\n }\n};\nconst _hoisted_1$1 = {\n key: 0,\n class: \"checkbox-content__wrapper\"\n};\nconst _hoisted_2 = [\"id\"];\nconst _hoisted_3 = [\"id\"];\nfunction _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcLoadingIcon = resolveComponent(\"NcLoadingIcon\");\n const _component_NcIconToggleSwitch = resolveComponent(\"NcIconToggleSwitch\");\n return openBlock(), createElementBlock(\"span\", {\n class: normalizeClass([\"checkbox-content\", {\n [\"checkbox-content-\" + $props.type]: true,\n \"checkbox-content--button-variant\": $props.buttonVariant,\n \"checkbox-content--has-text\": !!_ctx.$slots.default\n }])\n }, [\n createElementVNode(\"span\", {\n class: normalizeClass([\"checkbox-content__icon\", {\n \"checkbox-content__icon--checked\": $props.isChecked,\n \"checkbox-content__icon--has-description\": !$options.isButtonType && _ctx.$slots.description,\n [$props.iconClass]: true\n }]),\n \"aria-hidden\": true,\n inert: \"\"\n }, [\n renderSlot(_ctx.$slots, \"icon\", {\n checked: $props.isChecked,\n loading: $props.loading\n }, () => [\n $props.loading ? (openBlock(), createBlock(_component_NcLoadingIcon, { key: 0 })) : $options.isSwitchType ? (openBlock(), createBlock(_component_NcIconToggleSwitch, {\n key: 1,\n checked: $props.isChecked,\n size: $props.iconSize,\n inline: \"\"\n }, null, 8, [\"checked\", \"size\"])) : !$props.buttonVariant ? (openBlock(), createBlock(resolveDynamicComponent($options.checkboxRadioIconElement), {\n key: 2,\n size: $props.iconSize\n }, null, 8, [\"size\"])) : createCommentVNode(\"\", true)\n ], true)\n ], 2),\n _ctx.$slots.default || _ctx.$slots.description ? (openBlock(), createElementBlock(\"span\", _hoisted_1$1, [\n _ctx.$slots.default ? (openBlock(), createElementBlock(\"span\", {\n key: 0,\n id: $props.labelId,\n class: normalizeClass([\"checkbox-content__text\", $props.textClass])\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 10, _hoisted_2)) : createCommentVNode(\"\", true),\n !$options.isButtonType && _ctx.$slots.description ? (openBlock(), createElementBlock(\"span\", {\n key: 1,\n id: $props.descriptionId,\n class: \"checkbox-content__description\"\n }, [\n renderSlot(_ctx.$slots, \"description\", {}, void 0, true)\n ], 8, _hoisted_3)) : createCommentVNode(\"\", true)\n ])) : createCommentVNode(\"\", true)\n ], 2);\n}\nconst NcCheckboxContent = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"render\", _sfc_render$1], [\"__scopeId\", \"data-v-5ca1e30f\"]]);\nregister();\nconst _sfc_main = {\n name: \"NcCheckboxRadioSwitch\",\n components: {\n NcCheckboxContent\n },\n // We need to pass attributes to the input element\n inheritAttrs: false,\n props: {\n /**\n * Unique id attribute of the input\n */\n id: {\n type: String,\n default: () => \"checkbox-radio-switch-\" + createElementId(),\n validator: (id) => id.trim() !== \"\"\n },\n /**\n * Unique id attribute of the wrapper element\n */\n wrapperId: {\n type: String,\n default: null\n },\n /**\n * Input name. Required for radio, optional for checkbox, and ignored\n * for button.\n */\n name: {\n type: String,\n default: null\n },\n /**\n * Required if no text is set.\n * The aria-label is forwarded to the input or button.\n */\n ariaLabel: {\n type: String,\n default: \"\"\n },\n /**\n * Type of the input. checkbox, radio, switch, or button.\n *\n * Only use button when used in a `tablist` container and the\n * `tab` role is set.\n *\n * @type {'checkbox'|'radio'|'switch'|'button'}\n */\n type: {\n type: String,\n default: \"checkbox\",\n validator: (type) => [\n TYPE_CHECKBOX,\n TYPE_RADIO,\n TYPE_SWITCH,\n TYPE_BUTTON\n ].includes(type)\n },\n /**\n * Toggle the alternative button style\n *\n * @deprecated - Use `NcRadioGroup` instead\n */\n buttonVariant: {\n type: Boolean,\n default: false\n },\n /**\n * Are the elements are all direct siblings?\n * If so they will be grouped horizontally or vertically\n *\n * @type {'no'|'horizontal'|'vertical'}\n * @deprecated - Use `NcRadioGroup` instead\n */\n buttonVariantGrouped: {\n type: String,\n default: \"no\",\n validator: (v) => [\"no\", \"vertical\", \"horizontal\"].includes(v)\n },\n /**\n * Checked state. To be used with `v-model:value`\n */\n modelValue: {\n type: [Boolean, Array, String],\n default: false\n },\n /**\n * Value to be synced on check\n */\n value: {\n type: String,\n default: null\n },\n /**\n * Disabled state\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * Indeterminate state\n */\n indeterminate: {\n type: Boolean,\n default: false\n },\n /**\n * Required state\n */\n required: {\n type: Boolean,\n default: false\n },\n /**\n * Loading state\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Wrapping element tag\n *\n * When `type` is set to `button` this will be ignored\n *\n * Defaults to `span`\n */\n wrapperElement: {\n type: String,\n default: null\n },\n /**\n * The class(es) to pass to the wrapper / root element of the component\n */\n class: {\n type: [String, Array, Object],\n default: \"\"\n },\n /**\n * The style to pass to the wrapper / root element of the component\n */\n style: {\n type: [String, Array, Object],\n default: \"\"\n },\n /**\n * Description\n *\n * This is unsupported when using button has type.\n */\n description: {\n type: String,\n default: null\n }\n },\n emits: [\"update:modelValue\"],\n setup(props, { emit }) {\n const radioGroup = useInsideRadioGroup();\n onMounted(() => radioGroup?.value.register(false));\n const internalType = computed(() => radioGroup?.value ? TYPE_RADIO : props.type);\n const internalModelValue = computed({\n get() {\n if (radioGroup?.value) {\n return radioGroup.value.modelValue;\n }\n return props.modelValue;\n },\n set(value) {\n if (radioGroup?.value) {\n radioGroup.value.onUpdate(value);\n } else {\n emit(\"update:modelValue\", value);\n }\n }\n });\n return {\n internalType,\n internalModelValue,\n labelId: createElementId(),\n descriptionId: createElementId()\n };\n },\n computed: {\n isButtonType() {\n return this.internalType === TYPE_BUTTON;\n },\n computedWrapperElement() {\n if (this.isButtonType) {\n return \"button\";\n }\n if (this.wrapperElement !== null) {\n return this.wrapperElement;\n }\n return \"span\";\n },\n listeners() {\n if (this.isButtonType) {\n return {\n click: this.onToggle\n };\n }\n return {\n change: this.onToggle\n };\n },\n iconSize() {\n return this.internalType === TYPE_SWITCH ? 36 : 20;\n },\n cssIconSize() {\n return this.iconSize + \"px\";\n },\n cssIconHeight() {\n return this.internalType === TYPE_SWITCH ? \"16px\" : this.cssIconSize;\n },\n /**\n * Return the input type.\n * Switch is not an official type\n *\n * @return {string}\n */\n inputType() {\n const nativeTypes = [\n TYPE_CHECKBOX,\n TYPE_RADIO,\n TYPE_BUTTON\n ];\n if (nativeTypes.includes(this.internalType)) {\n return this.internalType;\n }\n return TYPE_CHECKBOX;\n },\n /**\n * Check if that entry is checked\n * If value is defined, we use that as the checked value\n * If not, we expect true/false in this.checked\n *\n * @return {boolean}\n */\n isChecked() {\n if (this.value !== null) {\n if (Array.isArray(this.internalModelValue)) {\n return [...this.internalModelValue].indexOf(this.value) > -1;\n }\n return this.internalModelValue === this.value;\n }\n return this.internalModelValue === true;\n },\n hasIndeterminate() {\n return [\n TYPE_CHECKBOX,\n TYPE_RADIO\n ].includes(this.inputType);\n }\n },\n mounted() {\n if (this.name && this.internalType === TYPE_CHECKBOX) {\n if (!Array.isArray(this.internalModelValue)) {\n throw new Error(\"When using groups of checkboxes, the updated value will be an array.\");\n }\n }\n if (this.name && this.internalType === TYPE_SWITCH) {\n throw new Error(\"Switches are not made to be used for data sets. Please use checkboxes instead.\");\n }\n if (typeof this.internalModelValue !== \"boolean\" && this.internalType === TYPE_SWITCH) {\n throw new Error(\"Switches can only be used with boolean as modelValue prop.\");\n }\n },\n methods: {\n t,\n n,\n onToggle(event) {\n if (this.disabled || event.target.tagName.toLowerCase() === \"a\") {\n return;\n }\n if (this.internalType === TYPE_RADIO) {\n this.internalModelValue = this.value;\n return;\n }\n if (this.internalType === TYPE_SWITCH) {\n this.internalModelValue = !this.isChecked;\n return;\n }\n if (typeof this.internalModelValue === \"boolean\") {\n this.internalModelValue = !this.internalModelValue;\n return;\n }\n if (this.isChecked) {\n this.internalModelValue = this.internalModelValue.filter((v) => v !== this.value);\n } else {\n this.internalModelValue = [...this.internalModelValue, this.value];\n }\n }\n }\n};\nconst __injectCSSVars__ = () => {\n useCssVars((_ctx) => ({\n \"v5ac25550\": _ctx.cssIconSize,\n \"d98ce684\": _ctx.cssIconHeight\n }));\n};\nconst __setup__ = _sfc_main.setup;\n_sfc_main.setup = __setup__ ? (props, ctx) => {\n __injectCSSVars__();\n return __setup__(props, ctx);\n} : __injectCSSVars__;\nconst _hoisted_1 = [\"id\", \"aria-labelledby\", \"aria-describedby\", \"aria-label\", \"disabled\", \"type\", \"value\", \"checked\", \".indeterminate\", \"required\", \"name\"];\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcCheckboxContent = resolveComponent(\"NcCheckboxContent\");\n return openBlock(), createBlock(resolveDynamicComponent($options.computedWrapperElement), mergeProps({\n id: $props.wrapperId ?? ($options.isButtonType ? $props.id : null),\n \"aria-label\": $options.isButtonType && $props.ariaLabel ? $props.ariaLabel : void 0,\n class: [\"checkbox-radio-switch\", [\n _ctx.$props.class,\n {\n [\"checkbox-radio-switch-\" + $setup.internalType]: $setup.internalType,\n \"checkbox-radio-switch--checked\": $options.isChecked,\n \"checkbox-radio-switch--disabled\": $props.disabled,\n \"checkbox-radio-switch--indeterminate\": $options.hasIndeterminate ? $props.indeterminate : false,\n \"checkbox-radio-switch--button-variant\": $props.buttonVariant,\n \"checkbox-radio-switch--button-variant-v-grouped\": $props.buttonVariant && $props.buttonVariantGrouped === \"vertical\",\n \"checkbox-radio-switch--button-variant-h-grouped\": $props.buttonVariant && $props.buttonVariantGrouped === \"horizontal\",\n \"button-vue\": $options.isButtonType\n }\n ]],\n style: $props.style,\n type: $options.isButtonType ? \"button\" : null\n }, $options.isButtonType ? _ctx.$attrs : {}, toHandlers($options.isButtonType ? $options.listeners : {})), {\n default: withCtx(() => [\n !$options.isButtonType ? (openBlock(), createElementBlock(\"input\", mergeProps({\n key: 0,\n id: $props.id,\n \"aria-labelledby\": !$options.isButtonType && !$props.ariaLabel ? $setup.labelId : null,\n \"aria-describedby\": !$options.isButtonType && ($props.description || _ctx.$slots.description) ? $setup.descriptionId : null,\n \"aria-label\": $props.ariaLabel || void 0,\n class: \"checkbox-radio-switch__input\",\n disabled: $props.disabled,\n type: $options.inputType,\n value: $props.value,\n checked: $options.isChecked,\n \".indeterminate\": $options.hasIndeterminate ? $props.indeterminate : null,\n required: $props.required,\n name: $props.name\n }, _ctx.$attrs, toHandlers($options.listeners, true)), null, 48, _hoisted_1)) : createCommentVNode(\"\", true),\n createVNode(_component_NcCheckboxContent, {\n id: !$options.isButtonType ? `${$props.id}-label` : void 0,\n class: \"checkbox-radio-switch__content\",\n iconClass: \"checkbox-radio-switch__icon\",\n textClass: \"checkbox-radio-switch__text\",\n type: $setup.internalType,\n indeterminate: $options.hasIndeterminate ? $props.indeterminate : false,\n buttonVariant: $props.buttonVariant,\n isChecked: $options.isChecked,\n loading: $props.loading,\n labelId: $setup.labelId,\n descriptionId: $setup.descriptionId,\n iconSize: $options.iconSize,\n onClick: $options.onToggle\n }, createSlots({\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"icon\", {}, void 0, true)\n ]),\n _: 2\n }, [\n _ctx.$slots.description || $props.description ? {\n name: \"description\",\n fn: withCtx(() => [\n renderSlot(_ctx.$slots, \"description\", {}, () => [\n createTextVNode(toDisplayString($props.description), 1)\n ], true)\n ]),\n key: \"0\"\n } : void 0,\n !!_ctx.$slots.default ? {\n name: \"default\",\n fn: withCtx(() => [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]),\n key: \"1\"\n } : void 0\n ]), 1032, [\"id\", \"type\", \"indeterminate\", \"buttonVariant\", \"isChecked\", \"loading\", \"labelId\", \"descriptionId\", \"iconSize\", \"onClick\"])\n ]),\n _: 3\n }, 16, [\"id\", \"aria-label\", \"class\", \"style\", \"type\"]);\n}\nconst NcCheckboxRadioSwitch = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-c34c63a4\"]]);\nexport {\n NcCheckboxRadioSwitch as N\n};\n//# sourceMappingURL=NcCheckboxRadioSwitch-BVTMQSAg.mjs.map\n","import '../assets/NcSettingsSection-f5rBJsKJ.css';\nimport { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode, defineComponent, createTextVNode, unref, createVNode, renderSlot } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { r as register, E as t26, a as t } from \"./_l10n-CG4CuN3H.mjs\";\nconst _sfc_main$1 = {\n name: \"HelpCircleIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$1 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$1 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$1 = { d: \"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z\" };\nconst _hoisted_4$1 = { key: 0 };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon help-circle-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$1, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$1, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$1))\n ], 16, _hoisted_1$1);\n}\nconst HelpCircle = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"render\", _sfc_render]]);\nregister(t26);\nconst _hoisted_1 = { class: \"settings-section\" };\nconst _hoisted_2 = { class: \"settings-section__name\" };\nconst _hoisted_3 = [\"aria-label\", \"href\", \"title\"];\nconst _hoisted_4 = {\n key: 0,\n class: \"settings-section__desc\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcSettingsSection\",\n props: {\n name: {},\n description: { default: \"\" },\n docUrl: { default: \"\" }\n },\n setup(__props) {\n const ariaLabel = t(\"External documentation\");\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", _hoisted_1, [\n createElementVNode(\"h2\", _hoisted_2, [\n createTextVNode(toDisplayString(__props.name) + \" \", 1),\n __props.docUrl ? (openBlock(), createElementBlock(\"a\", {\n key: 0,\n \"aria-label\": unref(ariaLabel),\n class: \"settings-section__info\",\n href: __props.docUrl,\n rel: \"noreferrer nofollow\",\n target: \"_blank\",\n title: unref(ariaLabel)\n }, [\n createVNode(HelpCircle, { size: 20 })\n ], 8, _hoisted_3)) : createCommentVNode(\"\", true)\n ]),\n __props.description ? (openBlock(), createElementBlock(\"p\", _hoisted_4, toDisplayString(__props.description), 1)) : createCommentVNode(\"\", true),\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]);\n };\n }\n});\nconst NcSettingsSection = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-9cedb949\"]]);\nexport {\n NcSettingsSection as N\n};\n//# sourceMappingURL=NcSettingsSection-DmfxX2se.mjs.map\n","\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createApp } from 'vue'\nimport { translate as t } from '@nextcloud/l10n'\nimport PersonalSettings from './views/settings/PersonalSettings.vue'\n\nconst app = createApp(PersonalSettings)\napp.config.globalProperties.t = t\napp.mount('#absence-personal-settings')\n"],"names":["svg","_sfc_main","defineComponent","__props","useCssVars","_ctx","color","cx","computed","_cache","openBlock","createBlock","NcIconSvgWrapper","normalizeClass","iconToggleSwitch","style0","cssModules","NcIconToggleSwitch","_export_sfc","INSIDE_RADIO_GROUP_KEY","useInsideRadioGroup","inject","_sfc_main$6","_hoisted_1$6","_hoisted_2$5","_hoisted_3$5","_hoisted_4$4","_sfc_render$6","$props","$setup","$data","$options","createElementBlock","mergeProps","$event","createElementVNode","toDisplayString","createCommentVNode","CheckboxBlankOutline","_sfc_main$5","_hoisted_1$5","_hoisted_2$4","_hoisted_3$4","_hoisted_4$3","_sfc_render$5","CheckboxMarked","_sfc_main$4","_hoisted_1$4","_hoisted_2$3","_hoisted_3$3","_hoisted_4$2","_sfc_render$4","MinusBox","_sfc_main$3","_hoisted_1$3","_hoisted_2$2","_hoisted_3$2","_hoisted_4$1","_sfc_render$3","RadioboxBlank","_sfc_main$2","_hoisted_1$2","_hoisted_2$1","_hoisted_3$1","_hoisted_4","_sfc_render$2","RadioboxMarked","TYPE_CHECKBOX","TYPE_RADIO","TYPE_SWITCH","TYPE_BUTTON","_sfc_main$1","NcLoadingIcon","type","_hoisted_1$1","_hoisted_2","_hoisted_3","_sfc_render$1","_component_NcLoadingIcon","resolveComponent","_component_NcIconToggleSwitch","renderSlot","resolveDynamicComponent","NcCheckboxContent","register","createElementId","id","v","props","emit","radioGroup","onMounted","internalType","internalModelValue","value","t","n","event","__injectCSSVars__","__setup__","ctx","_hoisted_1","_sfc_render","_component_NcCheckboxContent","toHandlers","withCtx","createVNode","createSlots","createTextVNode","NcCheckboxRadioSwitch","HelpCircle","t26","ariaLabel","unref","NcSettingsSection","NcButton","NcNoteCard","NcSelect","config","loadState","parseWeekdays","iso","d","listCountries","c","showError","on","set","listRegions","r","csv","detectedCsv","weekdaysValue","countryCode","countryValue","values","api","updated","showSuccess","_hoisted_5","_hoisted_6","_createBlock","_component_NcSettingsSection","_createElementVNode","_toDisplayString","_component_NcNoteCard","_createTextVNode","_createElementBlock","_Fragment","_renderList","_component_NcCheckboxRadioSwitch","_createVNode","_component_NcButton","_component_NcSelect","_openBlock","_hoisted_7","app","createApp","PersonalSettings"],"mappings":"6XAIA,MAAMA,GAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QASNC,GAA4BC,EAAgB,CAChD,OAAQ,qBACR,MAAO,CACL,QAAS,CAAE,KAAM,OAAO,EACxB,KAAM,CAAE,QAAS,EAAE,EACnB,OAAQ,CAAE,KAAM,QAAS,QAAS,EAAK,CAC3C,EACE,MAAMC,EAAS,CACbC,EAAYC,IAAU,CACpB,UAAaC,EAAM,MACnB,UAAaC,EAAG,KACtB,EAAM,EACF,MAAMD,EAAQE,EAAS,IAAML,EAAQ,QAAU,+BAAiC,+BAA+B,EACzGI,EAAKC,EAAS,IAAML,EAAQ,QAAU,uBAAyB,qBAAqB,EAC1F,MAAO,CAACE,EAAMI,KACLC,EAAS,EAAIC,EAAYC,EAAkB,CAChD,MAAOC,EAAeR,EAAK,OAAO,gBAAgB,EAClD,IAAAL,GACA,KAAMG,EAAQ,KACd,OAAQA,EAAQ,MACxB,EAAS,KAAM,EAAG,CAAC,QAAS,OAAQ,QAAQ,CAAC,EAE3C,CACF,CAAC,EACKW,GAAmB,0BACnBC,GAAS,CACb,uBAAwB,8BACxB,iBAAAD,EACF,EACME,GAAa,CACjB,OAAUD,EACZ,EACME,GAAqCC,EAAYjB,GAAW,CAAC,CAAC,eAAgBe,EAAU,CAAC,CAAC,ECxC1FG,GAAyC,OAAO,IAAI,kBAAkB,EAC5E,SAASC,IAAsB,CAC7B,OAAOC,EAAOF,GAAwB,MAAM,CAC9C,CCAA,MAAMG,GAAc,CAClB,KAAM,2BACN,MAAO,CAAC,OAAO,EACf,MAAO,CACL,MAAO,CACL,KAAM,MACZ,EACI,UAAW,CACT,KAAM,OACN,QAAS,cACf,EACI,KAAM,CACJ,KAAM,OACN,QAAS,EACf,CACA,CACA,EACMC,GAAe,CAAC,cAAe,YAAY,EAC3CC,GAAe,CAAC,OAAQ,QAAS,QAAQ,EACzCC,GAAe,CAAE,EAAG,sGAAsG,EAC1HC,GAAe,CAAE,IAAK,CAAC,EAC7B,SAASC,GAActB,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CACpE,OAAOrB,EAAS,EAAIsB,EAAmB,OAAQC,EAAW5B,EAAK,OAAQ,CACrE,cAAeuB,EAAO,MAAQ,KAAO,OACrC,aAAcA,EAAO,MACrB,MAAO,mDACP,KAAM,MACN,QAASnB,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKyB,GAAW7B,EAAK,MAAM,QAAS6B,CAAM,EAC7E,CAAG,EAAG,EACDxB,EAAS,EAAIsB,EAAmB,MAAO,CACtC,KAAMJ,EAAO,UACb,MAAO,4BACP,MAAOA,EAAO,KACd,OAAQA,EAAO,KACf,QAAS,WACf,EAAO,CACDO,EAAmB,OAAQV,GAAc,CACvCG,EAAO,OAASlB,EAAS,EAAIsB,EAAmB,QAASN,GAAcU,EAAgBR,EAAO,KAAK,EAAG,CAAC,GAAKS,EAAmB,GAAI,EAAI,CAC/I,CAAO,CACP,EAAO,EAAGb,EAAY,EACtB,EAAK,GAAID,EAAY,CACrB,CACA,MAAMe,GAAuCpB,EAAYI,GAAa,CAAC,CAAC,SAAUK,EAAa,CAAC,CAAC,EAC3FY,GAAc,CAClB,KAAM,qBACN,MAAO,CAAC,OAAO,EACf,MAAO,CACL,MAAO,CACL,KAAM,MACZ,EACI,UAAW,CACT,KAAM,OACN,QAAS,cACf,EACI,KAAM,CACJ,KAAM,OACN,QAAS,EACf,CACA,CACA,EACMC,GAAe,CAAC,cAAe,YAAY,EAC3CC,GAAe,CAAC,OAAQ,QAAS,QAAQ,EACzCC,GAAe,CAAE,EAAG,sIAAsI,EAC1JC,GAAe,CAAE,IAAK,CAAC,EAC7B,SAASC,GAAcvC,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CACpE,OAAOrB,EAAS,EAAIsB,EAAmB,OAAQC,EAAW5B,EAAK,OAAQ,CACrE,cAAeuB,EAAO,MAAQ,KAAO,OACrC,aAAcA,EAAO,MACrB,MAAO,4CACP,KAAM,MACN,QAASnB,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKyB,GAAW7B,EAAK,MAAM,QAAS6B,CAAM,EAC7E,CAAG,EAAG,EACDxB,EAAS,EAAIsB,EAAmB,MAAO,CACtC,KAAMJ,EAAO,UACb,MAAO,4BACP,MAAOA,EAAO,KACd,OAAQA,EAAO,KACf,QAAS,WACf,EAAO,CACDO,EAAmB,OAAQO,GAAc,CACvCd,EAAO,OAASlB,EAAS,EAAIsB,EAAmB,QAASW,GAAcP,EAAgBR,EAAO,KAAK,EAAG,CAAC,GAAKS,EAAmB,GAAI,EAAI,CAC/I,CAAO,CACP,EAAO,EAAGI,EAAY,EACtB,EAAK,GAAID,EAAY,CACrB,CACA,MAAMK,GAAiC3B,EAAYqB,GAAa,CAAC,CAAC,SAAUK,EAAa,CAAC,CAAC,EACrFE,GAAc,CAClB,KAAM,eACN,MAAO,CAAC,OAAO,EACf,MAAO,CACL,MAAO,CACL,KAAM,MACZ,EACI,UAAW,CACT,KAAM,OACN,QAAS,cACf,EACI,KAAM,CACJ,KAAM,OACN,QAAS,EACf,CACA,CACA,EACMC,GAAe,CAAC,cAAe,YAAY,EAC3CC,GAAe,CAAC,OAAQ,QAAS,QAAQ,EACzCC,GAAe,CAAE,EAAG,qGAAqG,EACzHC,GAAe,CAAE,IAAK,CAAC,EAC7B,SAASC,GAAc9C,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CACpE,OAAOrB,EAAS,EAAIsB,EAAmB,OAAQC,EAAW5B,EAAK,OAAQ,CACrE,cAAeuB,EAAO,MAAQ,KAAO,OACrC,aAAcA,EAAO,MACrB,MAAO,sCACP,KAAM,MACN,QAASnB,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKyB,GAAW7B,EAAK,MAAM,QAAS6B,CAAM,EAC7E,CAAG,EAAG,EACDxB,EAAS,EAAIsB,EAAmB,MAAO,CACtC,KAAMJ,EAAO,UACb,MAAO,4BACP,MAAOA,EAAO,KACd,OAAQA,EAAO,KACf,QAAS,WACf,EAAO,CACDO,EAAmB,OAAQc,GAAc,CACvCrB,EAAO,OAASlB,EAAS,EAAIsB,EAAmB,QAASkB,GAAcd,EAAgBR,EAAO,KAAK,EAAG,CAAC,GAAKS,EAAmB,GAAI,EAAI,CAC/I,CAAO,CACP,EAAO,EAAGW,EAAY,EACtB,EAAK,GAAID,EAAY,CACrB,CACA,MAAMK,GAA2BlC,EAAY4B,GAAa,CAAC,CAAC,SAAUK,EAAa,CAAC,CAAC,EAC/EE,GAAc,CAClB,KAAM,oBACN,MAAO,CAAC,OAAO,EACf,MAAO,CACL,MAAO,CACL,KAAM,MACZ,EACI,UAAW,CACT,KAAM,OACN,QAAS,cACf,EACI,KAAM,CACJ,KAAM,OACN,QAAS,EACf,CACA,CACA,EACMC,GAAe,CAAC,cAAe,YAAY,EAC3CC,GAAe,CAAC,OAAQ,QAAS,QAAQ,EACzCC,GAAe,CAAE,EAAG,kJAAkJ,EACtKC,GAAe,CAAE,IAAK,CAAC,EAC7B,SAASC,GAAcrD,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CACpE,OAAOrB,EAAS,EAAIsB,EAAmB,OAAQC,EAAW5B,EAAK,OAAQ,CACrE,cAAeuB,EAAO,MAAQ,KAAO,OACrC,aAAcA,EAAO,MACrB,MAAO,2CACP,KAAM,MACN,QAASnB,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKyB,GAAW7B,EAAK,MAAM,QAAS6B,CAAM,EAC7E,CAAG,EAAG,EACDxB,EAAS,EAAIsB,EAAmB,MAAO,CACtC,KAAMJ,EAAO,UACb,MAAO,4BACP,MAAOA,EAAO,KACd,OAAQA,EAAO,KACf,QAAS,WACf,EAAO,CACDO,EAAmB,OAAQqB,GAAc,CACvC5B,EAAO,OAASlB,EAAS,EAAIsB,EAAmB,QAASyB,GAAcrB,EAAgBR,EAAO,KAAK,EAAG,CAAC,GAAKS,EAAmB,GAAI,EAAI,CAC/I,CAAO,CACP,EAAO,EAAGkB,EAAY,EACtB,EAAK,GAAID,EAAY,CACrB,CACA,MAAMK,GAAgCzC,EAAYmC,GAAa,CAAC,CAAC,SAAUK,EAAa,CAAC,CAAC,EACpFE,GAAc,CAClB,KAAM,qBACN,MAAO,CAAC,OAAO,EACf,MAAO,CACL,MAAO,CACL,KAAM,MACZ,EACI,UAAW,CACT,KAAM,OACN,QAAS,cACf,EACI,KAAM,CACJ,KAAM,OACN,QAAS,EACf,CACA,CACA,EACMC,GAAe,CAAC,cAAe,YAAY,EAC3CC,GAAe,CAAC,OAAQ,QAAS,QAAQ,EACzCC,GAAe,CAAE,EAAG,qNAAqN,EACzOC,GAAa,CAAE,IAAK,CAAC,EAC3B,SAASC,GAAc5D,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CACpE,OAAOrB,EAAS,EAAIsB,EAAmB,OAAQC,EAAW5B,EAAK,OAAQ,CACrE,cAAeuB,EAAO,MAAQ,KAAO,OACrC,aAAcA,EAAO,MACrB,MAAO,4CACP,KAAM,MACN,QAASnB,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKyB,GAAW7B,EAAK,MAAM,QAAS6B,CAAM,EAC7E,CAAG,EAAG,EACDxB,EAAS,EAAIsB,EAAmB,MAAO,CACtC,KAAMJ,EAAO,UACb,MAAO,4BACP,MAAOA,EAAO,KACd,OAAQA,EAAO,KACf,QAAS,WACf,EAAO,CACDO,EAAmB,OAAQ4B,GAAc,CACvCnC,EAAO,OAASlB,EAAS,EAAIsB,EAAmB,QAASgC,GAAY5B,EAAgBR,EAAO,KAAK,EAAG,CAAC,GAAKS,EAAmB,GAAI,EAAI,CAC7I,CAAO,CACP,EAAO,EAAGyB,EAAY,EACtB,EAAK,GAAID,EAAY,CACrB,CACA,MAAMK,GAAiChD,EAAY0C,GAAa,CAAC,CAAC,SAAUK,EAAa,CAAC,CAAC,EACrFE,EAAgB,WAChBC,EAAa,QACbC,EAAc,SACdC,EAAc,SACdC,GAAc,CAClB,KAAM,oBACN,WAAY,CACV,cAAAC,EACA,mBAAAvD,EACJ,EACE,MAAO,CAIL,UAAW,CACT,KAAM,CAAC,OAAQ,MAAM,EACrB,QAAS,IACf,EAII,UAAW,CACT,KAAM,CAAC,OAAQ,MAAM,EACrB,QAAS,IACf,EASI,KAAM,CACJ,KAAM,OACN,QAAS,WACT,UAAYwD,GAAS,CACnBN,EACAC,EACAC,EACAC,CACR,EAAQ,SAASG,CAAI,CACrB,EAII,cAAe,CACb,KAAM,QACN,QAAS,EACf,EAII,UAAW,CACT,KAAM,QACN,QAAS,EACf,EAII,cAAe,CACb,KAAM,QACN,QAAS,EACf,EAII,QAAS,CACP,KAAM,QACN,QAAS,EACf,EAII,SAAU,CACR,KAAM,OACN,QAAS,EACf,EAII,QAAS,CACP,KAAM,OACN,SAAU,EAChB,EAII,cAAe,CACb,KAAM,OACN,SAAU,EAChB,CACA,EACE,SAAU,CACR,cAAe,CACb,OAAO,KAAK,OAASH,CACvB,EACA,cAAe,CACb,OAAO,KAAK,OAASD,CACvB,EAMA,0BAA2B,CACzB,OAAI,KAAK,OAASD,EACZ,KAAK,UACAF,GAEFP,GAEL,KAAK,cACAP,GAEL,KAAK,UACAP,GAEFP,EACT,CACJ,CACA,EACMoC,GAAe,CACnB,IAAK,EACL,MAAO,2BACT,EACMC,GAAa,CAAC,IAAI,EAClBC,GAAa,CAAC,IAAI,EACxB,SAASC,GAAcxE,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CACpE,MAAM+C,EAA2BC,EAAiB,eAAe,EAC3DC,EAAgCD,EAAiB,oBAAoB,EAC3E,OAAOrE,EAAS,EAAIsB,EAAmB,OAAQ,CAC7C,MAAOnB,EAAe,CAAC,mBAAoB,CACzC,CAAC,oBAAsBe,EAAO,IAAI,EAAG,GACrC,mCAAoCA,EAAO,cAC3C,6BAA8B,CAAC,CAACvB,EAAK,OAAO,OAClD,CAAK,CAAC,CACN,EAAK,CACD8B,EAAmB,OAAQ,CACzB,MAAOtB,EAAe,CAAC,yBAA0B,CAC/C,kCAAmCe,EAAO,UAC1C,0CAA2C,CAACG,EAAS,cAAgB1B,EAAK,OAAO,YACjF,CAACuB,EAAO,SAAS,EAAG,EAC5B,CAAO,CAAC,EACF,cAAe,GACf,MAAO,EACb,EAAO,CACDqD,EAAW5E,EAAK,OAAQ,OAAQ,CAC9B,QAASuB,EAAO,UAChB,QAASA,EAAO,OACxB,EAAS,IAAM,CACPA,EAAO,SAAWlB,EAAS,EAAIC,EAAYmE,EAA0B,CAAE,IAAK,CAAC,CAAE,GAAK/C,EAAS,cAAgBrB,EAAS,EAAIC,EAAYqE,EAA+B,CACnK,IAAK,EACL,QAASpD,EAAO,UAChB,KAAMA,EAAO,SACb,OAAQ,EAClB,EAAW,KAAM,EAAG,CAAC,UAAW,MAAM,CAAC,GAAMA,EAAO,cAGnBS,EAAmB,GAAI,EAAI,GAHS3B,EAAS,EAAIC,EAAYuE,EAAwBnD,EAAS,wBAAwB,EAAG,CAChJ,IAAK,EACL,KAAMH,EAAO,QACvB,EAAW,KAAM,EAAG,CAAC,MAAM,CAAC,EAC5B,EAAS,EAAI,CACb,EAAO,CAAC,EACJvB,EAAK,OAAO,SAAWA,EAAK,OAAO,aAAeK,IAAasB,EAAmB,OAAQ0C,GAAc,CACtGrE,EAAK,OAAO,SAAWK,EAAS,EAAIsB,EAAmB,OAAQ,CAC7D,IAAK,EACL,GAAIJ,EAAO,QACX,MAAOf,EAAe,CAAC,yBAA0Be,EAAO,SAAS,CAAC,CAC1E,EAAS,CACDqD,EAAW5E,EAAK,OAAQ,UAAW,CAAA,EAAI,OAAQ,EAAI,CAC3D,EAAS,GAAIsE,EAAU,GAAKtC,EAAmB,GAAI,EAAI,EACjD,CAACN,EAAS,cAAgB1B,EAAK,OAAO,aAAeK,EAAS,EAAIsB,EAAmB,OAAQ,CAC3F,IAAK,EACL,GAAIJ,EAAO,cACX,MAAO,+BACf,EAAS,CACDqD,EAAW5E,EAAK,OAAQ,cAAe,CAAA,EAAI,OAAQ,EAAI,CAC/D,EAAS,EAAGuE,EAAU,GAAKvC,EAAmB,GAAI,EAAI,CACtD,CAAK,GAAKA,EAAmB,GAAI,EAAI,CACrC,EAAK,CAAC,CACN,CACA,MAAM8C,GAAoCjE,EAAYqD,GAAa,CAAC,CAAC,SAAUM,EAAa,EAAG,CAAC,YAAa,iBAAiB,CAAC,CAAC,EAChIO,EAAQ,EACR,MAAMnF,EAAY,CAChB,KAAM,wBACN,WAAY,CACV,kBAAAkF,EACJ,EAEE,aAAc,GACd,MAAO,CAIL,GAAI,CACF,KAAM,OACN,QAAS,IAAM,yBAA2BE,EAAe,EACzD,UAAYC,GAAOA,EAAG,KAAI,IAAO,EACvC,EAII,UAAW,CACT,KAAM,OACN,QAAS,IACf,EAKI,KAAM,CACJ,KAAM,OACN,QAAS,IACf,EAKI,UAAW,CACT,KAAM,OACN,QAAS,EACf,EASI,KAAM,CACJ,KAAM,OACN,QAAS,WACT,UAAYb,GAAS,CACnBN,EACAC,EACAC,EACAC,CACR,EAAQ,SAASG,CAAI,CACrB,EAMI,cAAe,CACb,KAAM,QACN,QAAS,EACf,EAQI,qBAAsB,CACpB,KAAM,OACN,QAAS,KACT,UAAYc,GAAM,CAAC,KAAM,WAAY,YAAY,EAAE,SAASA,CAAC,CACnE,EAII,WAAY,CACV,KAAM,CAAC,QAAS,MAAO,MAAM,EAC7B,QAAS,EACf,EAII,MAAO,CACL,KAAM,OACN,QAAS,IACf,EAII,SAAU,CACR,KAAM,QACN,QAAS,EACf,EAII,cAAe,CACb,KAAM,QACN,QAAS,EACf,EAII,SAAU,CACR,KAAM,QACN,QAAS,EACf,EAII,QAAS,CACP,KAAM,QACN,QAAS,EACf,EAQI,eAAgB,CACd,KAAM,OACN,QAAS,IACf,EAII,MAAO,CACL,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,EACf,EAII,MAAO,CACL,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,EACf,EAMI,YAAa,CACX,KAAM,OACN,QAAS,IACf,CACA,EACE,MAAO,CAAC,mBAAmB,EAC3B,MAAMC,EAAO,CAAE,KAAAC,GAAQ,CACrB,MAAMC,EAAatE,GAAmB,EACtCuE,EAAU,IAAMD,GAAY,MAAM,SAAS,EAAK,CAAC,EACjD,MAAME,EAAepF,EAAS,IAAMkF,GAAY,MAAQtB,EAAaoB,EAAM,IAAI,EACzEK,EAAqBrF,EAAS,CAClC,KAAM,CACJ,OAAIkF,GAAY,MACPA,EAAW,MAAM,WAEnBF,EAAM,UACf,EACA,IAAIM,EAAO,CACLJ,GAAY,MACdA,EAAW,MAAM,SAASI,CAAK,EAE/BL,EAAK,oBAAqBK,CAAK,CAEnC,CACN,CAAK,EACD,MAAO,CACL,aAAAF,EACA,mBAAAC,EACA,QAASR,EAAe,EACxB,cAAeA,EAAe,CACpC,CACE,EACA,SAAU,CACR,cAAe,CACb,OAAO,KAAK,eAAiBf,CAC/B,EACA,wBAAyB,CACvB,OAAI,KAAK,aACA,SAEL,KAAK,iBAAmB,KACnB,KAAK,eAEP,MACT,EACA,WAAY,CACV,OAAI,KAAK,aACA,CACL,MAAO,KAAK,QACtB,EAEa,CACL,OAAQ,KAAK,QACrB,CACI,EACA,UAAW,CACT,OAAO,KAAK,eAAiBD,EAAc,GAAK,EAClD,EACA,aAAc,CACZ,OAAO,KAAK,SAAW,IACzB,EACA,eAAgB,CACd,OAAO,KAAK,eAAiBA,EAAc,OAAS,KAAK,WAC3D,EAOA,WAAY,CAMV,MALoB,CAClBF,EACAC,EACAE,CACR,EACsB,SAAS,KAAK,YAAY,EACjC,KAAK,aAEPH,CACT,EAQA,WAAY,CACV,OAAI,KAAK,QAAU,KACb,MAAM,QAAQ,KAAK,kBAAkB,EAChC,CAAC,GAAG,KAAK,kBAAkB,EAAE,QAAQ,KAAK,KAAK,EAAI,GAErD,KAAK,qBAAuB,KAAK,MAEnC,KAAK,qBAAuB,EACrC,EACA,kBAAmB,CACjB,MAAO,CACLA,EACAC,CACR,EAAQ,SAAS,KAAK,SAAS,CAC3B,CACJ,EACE,SAAU,CACR,GAAI,KAAK,MAAQ,KAAK,eAAiBD,GACjC,CAAC,MAAM,QAAQ,KAAK,kBAAkB,EACxC,MAAM,IAAI,MAAM,sEAAsE,EAG1F,GAAI,KAAK,MAAQ,KAAK,eAAiBE,EACrC,MAAM,IAAI,MAAM,gFAAgF,EAElG,GAAI,OAAO,KAAK,oBAAuB,WAAa,KAAK,eAAiBA,EACxE,MAAM,IAAI,MAAM,4DAA4D,CAEhF,EACA,QAAS,CACP,EAAA0B,EACA,EAAAC,EACA,SAASC,EAAO,CACd,GAAI,EAAA,KAAK,UAAYA,EAAM,OAAO,QAAQ,YAAW,IAAO,KAG5D,CAAA,GAAI,KAAK,eAAiB7B,EAAY,CACpC,KAAK,mBAAqB,KAAK,MAC/B,MACF,CACA,GAAI,KAAK,eAAiBC,EAAa,CACrC,KAAK,mBAAqB,CAAC,KAAK,UAChC,MACF,CACA,GAAI,OAAO,KAAK,oBAAuB,UAAW,CAChD,KAAK,mBAAqB,CAAC,KAAK,mBAChC,MACF,CACI,KAAK,UACP,KAAK,mBAAqB,KAAK,mBAAmB,OAAQkB,GAAMA,IAAM,KAAK,KAAK,EAEhF,KAAK,mBAAqB,CAAC,GAAG,KAAK,mBAAoB,KAAK,KAAK,CAAA,CAErE,CACJ,CACA,EACMW,EAAoB,IAAM,CAC9B9F,EAAYC,IAAU,CACpB,UAAaA,EAAK,YAClB,SAAYA,EAAK,aACrB,EAAI,CACJ,EACM8F,EAAYlG,EAAU,MAC5BA,EAAU,MAAQkG,EAAY,CAACX,EAAOY,KACpCF,EAAiB,EACVC,EAAUX,EAAOY,CAAG,GACzBF,EACJ,MAAMG,GAAa,CAAC,KAAM,kBAAmB,mBAAoB,aAAc,WAAY,OAAQ,QAAS,UAAW,iBAAkB,WAAY,MAAM,EAC3J,SAASC,GAAYjG,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CAClE,MAAMwE,EAA+BxB,EAAiB,mBAAmB,EACzE,OAAOrE,EAAS,EAAIC,EAAYuE,EAAwBnD,EAAS,sBAAsB,EAAGE,EAAW,CACnG,GAAIL,EAAO,YAAcG,EAAS,aAAeH,EAAO,GAAK,MAC7D,aAAcG,EAAS,cAAgBH,EAAO,UAAYA,EAAO,UAAY,OAC7E,MAAO,CAAC,wBAAyB,CAC/BvB,EAAK,OAAO,MACZ,CACE,CAAC,yBAA2BwB,EAAO,YAAY,EAAGA,EAAO,aACzD,iCAAkCE,EAAS,UAC3C,kCAAmCH,EAAO,SAC1C,uCAAwCG,EAAS,iBAAmBH,EAAO,cAAgB,GAC3F,wCAAyCA,EAAO,cAChD,kDAAmDA,EAAO,eAAiBA,EAAO,uBAAyB,WAC3G,kDAAmDA,EAAO,eAAiBA,EAAO,uBAAyB,aAC3G,aAAcG,EAAS,YAC/B,CACA,CAAK,EACD,MAAOH,EAAO,MACd,KAAMG,EAAS,aAAe,SAAW,IAC7C,EAAKA,EAAS,aAAe1B,EAAK,OAAS,CAAA,EAAImG,EAAWzE,EAAS,aAAeA,EAAS,UAAY,CAAA,CAAE,CAAC,EAAG,CACzG,QAAS0E,EAAQ,IAAM,CACpB1E,EAAS,aAcsEM,EAAmB,GAAI,EAAI,GAdjF3B,EAAS,EAAIsB,EAAmB,QAASC,EAAW,CAC5E,IAAK,EACL,GAAIL,EAAO,GACX,kBAAmB,CAACG,EAAS,cAAgB,CAACH,EAAO,UAAYC,EAAO,QAAU,KAClF,mBAAoB,CAACE,EAAS,eAAiBH,EAAO,aAAevB,EAAK,OAAO,aAAewB,EAAO,cAAgB,KACvH,aAAcD,EAAO,WAAa,OAClC,MAAO,+BACP,SAAUA,EAAO,SACjB,KAAMG,EAAS,UACf,MAAOH,EAAO,MACd,QAASG,EAAS,UAClB,iBAAkBA,EAAS,iBAAmBH,EAAO,cAAgB,KACrE,SAAUA,EAAO,SACjB,KAAMA,EAAO,IACrB,EAASvB,EAAK,OAAQmG,EAAWzE,EAAS,UAAW,EAAI,CAAC,EAAG,KAAM,GAAIsE,EAAU,GAC3EK,EAAYH,EAA8B,CACxC,GAAKxE,EAAS,aAAsC,OAAvB,GAAGH,EAAO,EAAE,SACzC,MAAO,iCACP,UAAW,8BACX,UAAW,8BACX,KAAMC,EAAO,aACb,cAAeE,EAAS,iBAAmBH,EAAO,cAAgB,GAClE,cAAeA,EAAO,cACtB,UAAWG,EAAS,UACpB,QAASH,EAAO,QAChB,QAASC,EAAO,QAChB,cAAeA,EAAO,cACtB,SAAUE,EAAS,SACnB,QAASA,EAAS,QAC1B,EAAS4E,EAAY,CACb,KAAMF,EAAQ,IAAM,CAClBxB,EAAW5E,EAAK,OAAQ,OAAQ,CAAA,EAAI,OAAQ,EAAI,CAC1D,CAAS,EACD,EAAG,CACX,EAAS,CACDA,EAAK,OAAO,aAAeuB,EAAO,YAAc,CAC9C,KAAM,cACN,GAAI6E,EAAQ,IAAM,CAChBxB,EAAW5E,EAAK,OAAQ,cAAe,CAAA,EAAI,IAAM,CAC/CuG,EAAgBxE,EAAgBR,EAAO,WAAW,EAAG,CAAC,CACpE,EAAe,EAAI,CACnB,CAAW,EACD,IAAK,GACf,EAAY,OACFvB,EAAK,OAAO,QAAU,CACtB,KAAM,UACN,GAAIoG,EAAQ,IAAM,CAChBxB,EAAW5E,EAAK,OAAQ,UAAW,CAAA,EAAI,OAAQ,EAAI,CAC/D,CAAW,EACD,IAAK,GACf,EAAY,MACZ,CAAO,EAAG,KAAM,CAAC,KAAM,OAAQ,gBAAiB,gBAAiB,YAAa,UAAW,UAAW,gBAAiB,WAAY,SAAS,CAAC,CAC3I,CAAK,EACD,EAAG,CACP,EAAK,GAAI,CAAC,KAAM,aAAc,QAAS,QAAS,MAAM,CAAC,CACvD,CACA,MAAMwG,GAAwC3F,EAAYjB,EAAW,CAAC,CAAC,SAAUqG,EAAW,EAAG,CAAC,YAAa,iBAAiB,CAAC,CAAC,ECjxB1H/B,GAAc,CAClB,KAAM,iBACN,MAAO,CAAC,OAAO,EACf,MAAO,CACL,MAAO,CACL,KAAM,MACZ,EACI,UAAW,CACT,KAAM,OACN,QAAS,cACf,EACI,KAAM,CACJ,KAAM,OACN,QAAS,EACf,CACA,CACA,EACMG,GAAe,CAAC,cAAe,YAAY,EAC3CZ,GAAe,CAAC,OAAQ,QAAS,QAAQ,EACzCC,GAAe,CAAE,EAAG,mUAAmU,EACvVN,GAAe,CAAE,IAAK,CAAC,EAC7B,SAAS6C,GAAYjG,EAAMI,EAAQmB,EAAQC,EAAQC,EAAOC,EAAU,CAClE,OAAOrB,EAAS,EAAIsB,EAAmB,OAAQC,EAAW5B,EAAK,OAAQ,CACrE,cAAeuB,EAAO,MAAQ,KAAO,OACrC,aAAcA,EAAO,MACrB,MAAO,wCACP,KAAM,MACN,QAASnB,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKyB,GAAW7B,EAAK,MAAM,QAAS6B,CAAM,EAC7E,CAAG,EAAG,EACDxB,EAAS,EAAIsB,EAAmB,MAAO,CACtC,KAAMJ,EAAO,UACb,MAAO,4BACP,MAAOA,EAAO,KACd,OAAQA,EAAO,KACf,QAAS,WACf,EAAO,CACDO,EAAmB,OAAQ4B,GAAc,CACvCnC,EAAO,OAASlB,EAAS,EAAIsB,EAAmB,QAASyB,GAAcrB,EAAgBR,EAAO,KAAK,EAAG,CAAC,GAAKS,EAAmB,GAAI,EAAI,CAC/I,CAAO,CACP,EAAO,EAAGyB,EAAY,EACtB,EAAK,GAAIY,EAAY,CACrB,CACA,MAAMoC,GAA6B5F,EAAYqD,GAAa,CAAC,CAAC,SAAU+B,EAAW,CAAC,CAAC,EACrFlB,EAAS2B,CAAG,EACZ,MAAMV,GAAa,CAAE,MAAO,kBAAkB,EACxC1B,GAAa,CAAE,MAAO,wBAAwB,EAC9CC,GAAa,CAAC,aAAc,OAAQ,OAAO,EAC3CZ,GAAa,CACjB,IAAK,EACL,MAAO,wBACT,EACM/D,GAA4BC,EAAgB,CAChD,OAAQ,oBACR,MAAO,CACL,KAAM,CAAA,EACN,YAAa,CAAE,QAAS,EAAE,EAC1B,OAAQ,CAAE,QAAS,EAAE,CACzB,EACE,MAAMC,EAAS,CACb,MAAM6G,EAAYjB,EAAE,wBAAwB,EAC5C,MAAO,CAAC1F,EAAMI,KACLC,EAAS,EAAIsB,EAAmB,MAAOqE,GAAY,CACxDlE,EAAmB,KAAMwC,GAAY,CACnCiC,EAAgBxE,EAAgBjC,EAAQ,IAAI,EAAI,IAAK,CAAC,EACtDA,EAAQ,QAAUO,IAAasB,EAAmB,IAAK,CACrD,IAAK,EACL,aAAciF,EAAMD,CAAS,EAC7B,MAAO,yBACP,KAAM7G,EAAQ,OACd,IAAK,sBACL,OAAQ,SACR,MAAO8G,EAAMD,CAAS,CAClC,EAAa,CACDN,EAAYI,GAAY,CAAE,KAAM,EAAE,CAAE,CAChD,EAAa,EAAGlC,EAAU,GAAKvC,EAAmB,GAAI,EAAI,CAC1D,CAAS,EACDlC,EAAQ,aAAeO,EAAS,EAAIsB,EAAmB,IAAKgC,GAAY5B,EAAgBjC,EAAQ,WAAW,EAAG,CAAC,GAAKkC,EAAmB,GAAI,EAAI,EAC/I4C,EAAW5E,EAAK,OAAQ,UAAW,CAAA,EAAI,OAAQ,EAAI,CAC3D,CAAO,EAEL,CACF,CAAC,EACK6G,GAAoChG,EAAYjB,GAAW,CAAC,CAAC,YAAa,iBAAiB,CAAC,CAAC,ECA9FA,GAAU,CACd,KAAM,mBACN,WAAY,CAAE,SAAAkH,GAAU,sBAAAN,GAAuB,WAAAO,GAAY,SAAAC,GAAU,kBAAAH,IACrE,MAAO,CACN,MAAMI,EAASC,GAAU,UAAW,gBAAgB,EACpD,MAAO,CACN,OAAAD,EAEA,YAAa,CACZ,CAAE,IAAK,EAAG,MAAOvB,EAAE,UAAW,QAAQ,GACtC,CAAE,IAAK,EAAG,MAAOA,EAAE,UAAW,SAAS,GACvC,CAAE,IAAK,EAAG,MAAOA,EAAE,UAAW,WAAW,GACzC,CAAE,IAAK,EAAG,MAAOA,EAAE,UAAW,UAAU,GACxC,CAAE,IAAK,EAAG,MAAOA,EAAE,UAAW,QAAQ,GACtC,CAAE,IAAK,EAAG,MAAOA,EAAE,UAAW,UAAU,GACxC,CAAE,IAAK,EAAG,MAAOA,EAAE,UAAW,QAAQ,IAEvC,SAAU,CAAC,GAAGyB,GAAcF,EAAO,YAAY,CAAC,EAAE,KAAI,EAGtD,WAAY,CAACA,EAAO,iBAAmBA,EAAO,uBAAyB,GACvE,QAAS,KACT,OAAQ,KACR,eAAgB,CAAA,EAChB,cAAe,CAAA,EACf,iBAAkB,GAClB,OAAQ,EACT,CACD,EACA,SAAU,CACT,kBAAmB,CAClB,OAAO,KAAK,OAAO,iBAAmB,CAAC,KAAK,UAC7C,EACA,uBAAwB,CACvB,OAAQ,KAAK,OAAO,sBAAwB,CAAA,GAC1C,IAAKG,GAAQ,KAAK,YAAY,KAAMC,GAAMA,EAAE,MAAQD,CAAG,GAAG,KAAK,EAC/D,OAAO,OAAO,EACd,KAAK,IAAI,CACZ,EACA,oBAAqB,CACpB,OAAO,KAAK,OAAO,uBAChB1B,EAAE,UAAW,sBAAuB,CAAE,QAAS,KAAK,OAAO,uBAAwB,EACnFA,EAAE,UAAW,mBAAmB,CACpC,GAED,MAAM,SAAU,CACf,KAAK,iBAAmB,GACxB,GAAI,CACH,KAAK,eAAiB,MAAM4B,GAAa,EACzC,KAAK,QAAU,KAAK,eAAe,KAAMC,GAAMA,EAAE,KAAO,KAAK,OAAO,cAAc,GAAK,KACvF,MAAM,KAAK,cAAa,CACzB,MAAY,CACXC,EAAU9B,EAAE,UAAW,iCAAiC,CAAC,CAC1D,QAAA,CACC,KAAK,iBAAmB,EACzB,CACD,EACA,QAAS,GACRA,EACA,cAAc0B,EAAKK,EAAI,CACtB,MAAMC,EAAM,IAAI,IAAI,KAAK,QAAQ,EAC7BD,EACHC,EAAI,IAAIN,CAAG,EAEXM,EAAI,OAAON,CAAG,EAEf,KAAK,SAAW,CAAC,GAAGM,CAAG,EAAE,KAAI,CAC9B,EACA,gBAAiB,CAEhB,KAAK,WAAa,GAClB,KAAK,SAAW,CAAC,GAAI,KAAK,OAAO,sBAAwB,CAAA,CAAG,EAAE,KAAI,CACnE,EACA,MAAM,iBAAkB,CACvB,KAAK,OAAS,KACd,MAAM,KAAK,cAAa,CACzB,EACA,MAAM,eAAgB,CACrB,KAAK,cAAgB,KAAK,QAAU,MAAMC,GAAY,KAAK,QAAQ,EAAE,EAAI,CAAA,EACzE,KAAK,OAAS,KAAK,cAAc,KAAMC,GAAMA,EAAE,KAAO,KAAK,OAAO,aAAa,GAAK,IACrF,EACA,MAAO,CACN,KAAK,OAAS,GAGd,MAAMC,EAAM,KAAK,SAAS,KAAK,GAAG,EAC5BC,GAAe,KAAK,OAAO,sBAAwB,CAAA,GAAI,KAAK,GAAG,EAC/DC,EAAiB,KAAK,OAAO,iBAAmBF,IAAQC,EAAe,GAAKD,EAE5EG,EAAc,KAAK,QAAU,KAAK,QAAQ,GAAK,GAC/CC,EAAeD,KAAiB,KAAK,OAAO,wBAA0B,IAAM,GAAKA,EAEjFE,EAAS,CACd,cAAeH,EACf,gBAAiBE,EACjB,eAAgB,KAAK,OAAS,KAAK,OAAO,GAAK,EAChD,EACAE,GAAI,qBAAqBD,CAAM,EAC7B,KAAME,GAAY,CAClB,KAAK,OAASA,EACdC,GAAY3C,EAAE,UAAW,gBAAgB,CAAC,CAC3C,CAAC,EACA,MAAM,IAAM8B,EAAU9B,EAAE,UAAW,yBAAyB,CAAC,CAAC,EAC9D,QAAQ,IAAM,CACd,KAAK,OAAS,EACf,CAAC,CACH,EAEF,EAtLMM,GAAA,CAAA,MAAM,YAAY,EASjB1B,GAAA,CAAA,MAAM,UAAU,EAUhBC,GAAA,CAAA,MAAM,aAAa,EAgBpBZ,GAAA,CAAA,MAAM,YAAY,EACnB2E,GAAA,CAAA,MAAM,MAAM,EAEVC,GAAA,CAAA,MAAM,OAAO,YASe,MAAM,2JAjDxCC,EA4DoBC,EAAA,CA5DA,KAAM/G,EAAA,EAAC,UAAA,SAAA,EACzB,YAAaA,EAAA,EAAC,UAAA,oIAAA,cACf,IAA8D,CAA9DgH,EAA8D,KAA9D1C,GAA8D2C,EAApCjH,EAAA,EAAC,UAAA,cAAA,CAAA,EAAA,CAAA,EAETD,EAAA,OAAO,qBAAzB+G,EAEaI,EAAA,OAF6B,KAAK,sBAC9C,IAA+F,CAA5FC,EAAAF,EAAAjH,EAAA,6DAAiEA,EAAA,qBAAqB,CAAA,CAAA,EAAA,CAAA,gBAE1F8G,EAEaI,EAAA,OAFM,KAAK,mBACvB,IAA4K,KAAzKlH,EAAA,EAAC,UAAA,wJAAA,CAAA,EAAA,CAAA,WAGLgH,EAQM,MARNpE,GAQM,QAPLwE,EAMwBC,GAAA,KAAAC,GANWvH,EAAA,YAAL4F,QAA9BmB,EAMwBS,EAAA,CALtB,IAAK5B,EAAE,IACP,cAAa5F,EAAA,SAAS,SAAS4F,EAAE,GAAG,EACpC,SAAU3F,EAAA,iBACV,sBAAqBwD,GAAMxD,EAAA,cAAc2F,EAAE,IAAKnC,CAAC,cAClD,IAAa,CAAV2D,EAAAF,EAAAtB,EAAE,KAAK,EAAA,CAAA,0EAIZqB,EAcM,MAdNnE,GAcM,CAbL2E,EAEWC,EAAA,CAFD,QAAQ,YAAY,KAAK,8CAClC,IAAqG,CAAlGN,EAAAF,EAAAlH,EAAA,OAAO,gBAAkBC,EAAA,mCAAsCA,EAAA,EAAC,UAAA,kBAAA,CAAA,EAAA,CAAA,UAEpDD,EAAA,OAAO,iBAAe,CAAKA,EAAA,gBAA3C+G,EAIWW,EAAA,OAHV,QAAQ,WACP,uBAAO1H,EAAA,WAAU,gBAClB,IAA8B,KAA3BC,EAAA,EAAC,UAAA,UAAA,CAAA,EAAA,CAAA,WAEgBD,EAAA,OAAO,iBAAmBA,EAAA,gBAA/C+G,EAIWW,EAAA,OAHV,QAAQ,WACP,QAAOzH,EAAA,2BACR,IAAqC,KAAlCA,EAAA,EAAC,UAAA,iBAAA,CAAA,EAAA,CAAA,oCAINgH,EAAiE,KAAjE/E,GAAiEgF,EAAvCjH,EAAA,EAAC,UAAA,iBAAA,CAAA,EAAA,CAAA,EAC3BgH,EAAwK,IAAxKJ,GAAwKK,EAArJjH,EAAA,EAAC,UAAA,gIAAA,CAAA,EAAA,CAAA,EAEpBgH,EAQM,MARNH,GAQM,CAPLG,EAA4C,eAAlChH,EAAA,EAAC,UAAA,SAAA,CAAA,EAAA,CAAA,EACXwH,EAKyCE,EAAA,YALtB3H,EAAA,8CAAAA,EAAA,QAAOI,GAKJH,EAAA,iBAJpB,QAASD,EAAA,eACT,QAASA,EAAA,iBACV,MAAM,QACL,YAAaC,EAAA,qGAGLD,EAAA,cAAc,QAAzB4H,IAAAP,EAMM,MANNQ,GAMM,CALLZ,EAA2C,eAAjChH,EAAA,EAAC,UAAA,QAAA,CAAA,EAAA,CAAA,EACXwH,EAGgDE,EAAA,YAH7B3H,EAAA,4CAAAA,EAAA,OAAMI,GACvB,QAASJ,EAAA,cACV,MAAM,QACL,YAAaC,EAAA,EAAC,UAAA,eAAA,8DAGjBwH,EAEWC,EAAA,CAFD,QAAQ,UAAW,SAAU1H,EAAA,OAAS,QAAOC,EAAA,iBACtD,IAAmC,KAAhCA,EAAA,EAAC,UAAA,eAAA,CAAA,EAAA,CAAA,mIC5DD6H,EAAMC,GAAUC,EAAgB,EACtCF,EAAI,OAAO,iBAAiB,EAAI7D,EAChC6D,EAAI,MAAM,4BAA4B","x_google_ignoreList":[0,1,2,3]} \ No newline at end of file +{"version":3,"file":"absence-personal-settings.mjs","sources":["../node_modules/@nextcloud/vue/dist/chunks/NcIconToggleSwitch-CRvGt4su.mjs","../node_modules/@nextcloud/vue/dist/chunks/useNcRadioGroup-D6llQmAl.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcCheckboxRadioSwitch-DVdt5Hkq.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcSettingsSection-Caz1fuWt.mjs","../src/views/settings/PersonalSettings.vue","../src/personal-settings.js"],"sourcesContent":["import '../assets/NcIconToggleSwitch-zUXkaJHv.css';\nimport { defineComponent, useCssVars, computed, openBlock, createBlock, normalizeClass } from \"vue\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-g8ubWhoz.mjs\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nconst svg = `\n\t\n\t\n`;\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcIconToggleSwitch\",\n props: {\n checked: { type: Boolean },\n size: { default: 34 },\n inline: { type: Boolean, default: false }\n },\n setup(__props) {\n useCssVars((_ctx) => ({\n \"v6bd152af\": color.value,\n \"v16fd8ca9\": cx.value\n }));\n const color = computed(() => __props.checked ? \"var(--color-primary-element)\" : \"var(--color-text-maxcontrast)\");\n const cx = computed(() => __props.checked ? \"calc(17 / 24 * 100%)\" : \"calc(7 / 24 * 100%)\");\n return (_ctx, _cache) => {\n return openBlock(), createBlock(NcIconSvgWrapper, {\n class: normalizeClass(_ctx.$style.iconToggleSwitch),\n svg,\n size: __props.size,\n inline: __props.inline\n }, null, 8, [\"class\", \"size\", \"inline\"]);\n };\n }\n});\nconst iconToggleSwitch = \"_iconToggleSwitch_IKWaj\";\nconst style0 = {\n \"material-design-icon\": \"_material-design-icon_63AMQ\",\n iconToggleSwitch\n};\nconst cssModules = {\n \"$style\": style0\n};\nconst NcIconToggleSwitch = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__cssModules\", cssModules]]);\nexport {\n NcIconToggleSwitch as N\n};\n//# sourceMappingURL=NcIconToggleSwitch-CRvGt4su.mjs.map\n","import { inject } from \"vue\";\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nconst INSIDE_RADIO_GROUP_KEY = /* @__PURE__ */ Symbol.for(\"insideRadioGroup\");\nfunction useInsideRadioGroup() {\n return inject(INSIDE_RADIO_GROUP_KEY, void 0);\n}\nexport {\n INSIDE_RADIO_GROUP_KEY as I,\n useInsideRadioGroup as u\n};\n//# sourceMappingURL=useNcRadioGroup-D6llQmAl.mjs.map\n","import '../assets/NcCheckboxRadioSwitch-BlQSZVW0.css';\nimport { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode, resolveComponent, normalizeClass, renderSlot, createBlock, resolveDynamicComponent, toHandlers, withCtx, createVNode, createSlots, createTextVNode, onMounted, computed, useCssVars } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { N as NcIconToggleSwitch } from \"./NcIconToggleSwitch-CRvGt4su.mjs\";\nimport { N as NcLoadingIcon } from \"./NcLoadingIcon-BOVpFVQz.mjs\";\nimport { r as register, K as n, a as t } from \"./_l10n-wdIzZwir.mjs\";\nimport { c as createElementId } from \"./createElementId-DhjFt1I9.mjs\";\nimport { u as useInsideRadioGroup } from \"./useNcRadioGroup-D6llQmAl.mjs\";\nconst _sfc_main$6 = {\n name: \"CheckboxBlankOutlineIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$6 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$5 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$5 = { d: \"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z\" };\nconst _hoisted_4$4 = { key: 0 };\nfunction _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon checkbox-blank-outline-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$5, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$4, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$5))\n ], 16, _hoisted_1$6);\n}\nconst CheckboxBlankOutline = /* @__PURE__ */ _export_sfc(_sfc_main$6, [[\"render\", _sfc_render$6]]);\nconst _sfc_main$5 = {\n name: \"CheckboxMarkedIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$5 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$4 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$4 = { d: \"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z\" };\nconst _hoisted_4$3 = { key: 0 };\nfunction _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon checkbox-marked-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$4, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$3, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$4))\n ], 16, _hoisted_1$5);\n}\nconst CheckboxMarked = /* @__PURE__ */ _export_sfc(_sfc_main$5, [[\"render\", _sfc_render$5]]);\nconst _sfc_main$4 = {\n name: \"MinusBoxIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$4 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$3 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$3 = { d: \"M17,13H7V11H17M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z\" };\nconst _hoisted_4$2 = { key: 0 };\nfunction _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon minus-box-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$3, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$2, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$3))\n ], 16, _hoisted_1$4);\n}\nconst MinusBox = /* @__PURE__ */ _export_sfc(_sfc_main$4, [[\"render\", _sfc_render$4]]);\nconst _sfc_main$3 = {\n name: \"RadioboxBlankIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$3 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$2 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$2 = { d: \"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\" };\nconst _hoisted_4$1 = { key: 0 };\nfunction _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon radiobox-blank-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$2, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$1, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$2))\n ], 16, _hoisted_1$3);\n}\nconst RadioboxBlank = /* @__PURE__ */ _export_sfc(_sfc_main$3, [[\"render\", _sfc_render$3]]);\nconst _sfc_main$2 = {\n name: \"RadioboxMarkedIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$2 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$1 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$1 = { d: \"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,7A5,5 0 0,0 7,12A5,5 0 0,0 12,17A5,5 0 0,0 17,12A5,5 0 0,0 12,7Z\" };\nconst _hoisted_4 = { key: 0 };\nfunction _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon radiobox-marked-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$1, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$1))\n ], 16, _hoisted_1$2);\n}\nconst RadioboxMarked = /* @__PURE__ */ _export_sfc(_sfc_main$2, [[\"render\", _sfc_render$2]]);\nconst TYPE_CHECKBOX = \"checkbox\";\nconst TYPE_RADIO = \"radio\";\nconst TYPE_SWITCH = \"switch\";\nconst TYPE_BUTTON = \"button\";\nconst _sfc_main$1 = {\n name: \"NcCheckboxContent\",\n components: {\n NcLoadingIcon,\n NcIconToggleSwitch\n },\n props: {\n /**\n * Class for the icon element\n */\n iconClass: {\n type: [String, Object],\n default: null\n },\n /**\n * Class for the text element\n */\n textClass: {\n type: [String, Object],\n default: null\n },\n /**\n * Type of the input. checkbox, radio, switch, or button.\n *\n * Only use button when used in a `tablist` container and the\n * `tab` role is set.\n *\n * @type {'checkbox'|'radio'|'switch'|'button'}\n */\n type: {\n type: String,\n default: \"checkbox\",\n validator: (type) => [\n TYPE_CHECKBOX,\n TYPE_RADIO,\n TYPE_SWITCH,\n TYPE_BUTTON\n ].includes(type)\n },\n /**\n * Toggle the alternative button style\n */\n buttonVariant: {\n type: Boolean,\n default: false\n },\n /**\n * True if the entry is checked\n */\n isChecked: {\n type: Boolean,\n default: false\n },\n /**\n * Indeterminate state\n */\n indeterminate: {\n type: Boolean,\n default: false\n },\n /**\n * Loading state\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Icon size\n */\n iconSize: {\n type: Number,\n default: 24\n },\n /**\n * Label id attribute\n */\n labelId: {\n type: String,\n required: true\n },\n /**\n * Description id attribute\n */\n descriptionId: {\n type: String,\n required: true\n }\n },\n computed: {\n isButtonType() {\n return this.type === TYPE_BUTTON;\n },\n isSwitchType() {\n return this.type === TYPE_SWITCH;\n },\n /**\n * Returns the proper Material icon depending on the select case\n *\n * @return {object}\n */\n checkboxRadioIconElement() {\n if (this.type === TYPE_RADIO) {\n if (this.isChecked) {\n return RadioboxMarked;\n }\n return RadioboxBlank;\n }\n if (this.indeterminate) {\n return MinusBox;\n }\n if (this.isChecked) {\n return CheckboxMarked;\n }\n return CheckboxBlankOutline;\n }\n }\n};\nconst _hoisted_1$1 = {\n key: 0,\n class: \"checkbox-content__wrapper\"\n};\nconst _hoisted_2 = [\"id\"];\nconst _hoisted_3 = [\"id\"];\nfunction _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcLoadingIcon = resolveComponent(\"NcLoadingIcon\");\n const _component_NcIconToggleSwitch = resolveComponent(\"NcIconToggleSwitch\");\n return openBlock(), createElementBlock(\"span\", {\n class: normalizeClass([\"checkbox-content\", {\n [\"checkbox-content-\" + $props.type]: true,\n \"checkbox-content--button-variant\": $props.buttonVariant,\n \"checkbox-content--has-text\": !!_ctx.$slots.default\n }])\n }, [\n createElementVNode(\"span\", {\n class: normalizeClass([\"checkbox-content__icon\", {\n \"checkbox-content__icon--checked\": $props.isChecked,\n \"checkbox-content__icon--has-description\": !$options.isButtonType && _ctx.$slots.description,\n [$props.iconClass]: true\n }]),\n \"aria-hidden\": true,\n inert: \"\"\n }, [\n renderSlot(_ctx.$slots, \"icon\", {\n checked: $props.isChecked,\n loading: $props.loading\n }, () => [\n $props.loading ? (openBlock(), createBlock(_component_NcLoadingIcon, { key: 0 })) : $options.isSwitchType ? (openBlock(), createBlock(_component_NcIconToggleSwitch, {\n key: 1,\n checked: $props.isChecked,\n size: $props.iconSize,\n inline: \"\"\n }, null, 8, [\"checked\", \"size\"])) : !$props.buttonVariant ? (openBlock(), createBlock(resolveDynamicComponent($options.checkboxRadioIconElement), {\n key: 2,\n size: $props.iconSize\n }, null, 8, [\"size\"])) : createCommentVNode(\"\", true)\n ], true)\n ], 2),\n _ctx.$slots.default || _ctx.$slots.description ? (openBlock(), createElementBlock(\"span\", _hoisted_1$1, [\n _ctx.$slots.default ? (openBlock(), createElementBlock(\"span\", {\n key: 0,\n id: $props.labelId,\n class: normalizeClass([\"checkbox-content__text\", $props.textClass])\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ], 10, _hoisted_2)) : createCommentVNode(\"\", true),\n !$options.isButtonType && _ctx.$slots.description ? (openBlock(), createElementBlock(\"span\", {\n key: 1,\n id: $props.descriptionId,\n class: \"checkbox-content__description\"\n }, [\n renderSlot(_ctx.$slots, \"description\", {}, void 0, true)\n ], 8, _hoisted_3)) : createCommentVNode(\"\", true)\n ])) : createCommentVNode(\"\", true)\n ], 2);\n}\nconst NcCheckboxContent = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"render\", _sfc_render$1], [\"__scopeId\", \"data-v-5ca1e30f\"]]);\nregister();\nconst _sfc_main = {\n name: \"NcCheckboxRadioSwitch\",\n components: {\n NcCheckboxContent\n },\n // We need to pass attributes to the input element\n inheritAttrs: false,\n props: {\n /**\n * Unique id attribute of the input\n */\n id: {\n type: String,\n default: () => \"checkbox-radio-switch-\" + createElementId(),\n validator: (id) => id.trim() !== \"\"\n },\n /**\n * Unique id attribute of the wrapper element\n */\n wrapperId: {\n type: String,\n default: null\n },\n /**\n * Input name. Required for radio, optional for checkbox, and ignored\n * for button.\n */\n name: {\n type: String,\n default: null\n },\n /**\n * Required if no text is set.\n * The aria-label is forwarded to the input or button.\n */\n ariaLabel: {\n type: String,\n default: \"\"\n },\n /**\n * Type of the input. checkbox, radio, switch, or button.\n *\n * Only use button when used in a `tablist` container and the\n * `tab` role is set.\n *\n * @type {'checkbox'|'radio'|'switch'|'button'}\n */\n type: {\n type: String,\n default: \"checkbox\",\n validator: (type) => [\n TYPE_CHECKBOX,\n TYPE_RADIO,\n TYPE_SWITCH,\n TYPE_BUTTON\n ].includes(type)\n },\n /**\n * Toggle the alternative button style\n *\n * @deprecated - Use `NcRadioGroup` instead\n */\n buttonVariant: {\n type: Boolean,\n default: false\n },\n /**\n * Are the elements are all direct siblings?\n * If so they will be grouped horizontally or vertically\n *\n * @type {'no'|'horizontal'|'vertical'}\n * @deprecated - Use `NcRadioGroup` instead\n */\n buttonVariantGrouped: {\n type: String,\n default: \"no\",\n validator: (v) => [\"no\", \"vertical\", \"horizontal\"].includes(v)\n },\n /**\n * Checked state. To be used with `v-model:value`\n */\n modelValue: {\n type: [Boolean, Array, String],\n default: false\n },\n /**\n * Value to be synced on check\n */\n value: {\n type: String,\n default: null\n },\n /**\n * Disabled state\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * Indeterminate state\n */\n indeterminate: {\n type: Boolean,\n default: false\n },\n /**\n * Required state\n */\n required: {\n type: Boolean,\n default: false\n },\n /**\n * Loading state\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Wrapping element tag\n *\n * When `type` is set to `button` this will be ignored\n *\n * Defaults to `span`\n */\n wrapperElement: {\n type: String,\n default: null\n },\n /**\n * The class(es) to pass to the wrapper / root element of the component\n */\n class: {\n type: [String, Array, Object],\n default: \"\"\n },\n /**\n * The style to pass to the wrapper / root element of the component\n */\n style: {\n type: [String, Array, Object],\n default: \"\"\n },\n /**\n * Description\n *\n * This is unsupported when using button has type.\n */\n description: {\n type: String,\n default: null\n }\n },\n emits: [\"update:modelValue\"],\n setup(props, { emit }) {\n const radioGroup = useInsideRadioGroup();\n onMounted(() => radioGroup?.value.register(false));\n const internalType = computed(() => radioGroup?.value ? TYPE_RADIO : props.type);\n const internalModelValue = computed({\n get() {\n if (radioGroup?.value) {\n return radioGroup.value.modelValue;\n }\n return props.modelValue;\n },\n set(value) {\n if (radioGroup?.value) {\n radioGroup.value.onUpdate(value);\n } else {\n emit(\"update:modelValue\", value);\n }\n }\n });\n return {\n internalType,\n internalModelValue,\n labelId: createElementId(),\n descriptionId: createElementId()\n };\n },\n computed: {\n isButtonType() {\n return this.internalType === TYPE_BUTTON;\n },\n computedWrapperElement() {\n if (this.isButtonType) {\n return \"button\";\n }\n if (this.wrapperElement !== null) {\n return this.wrapperElement;\n }\n return \"span\";\n },\n listeners() {\n if (this.isButtonType) {\n return {\n click: this.onToggle\n };\n }\n return {\n change: this.onToggle\n };\n },\n iconSize() {\n return this.internalType === TYPE_SWITCH ? 36 : 20;\n },\n cssIconSize() {\n return this.iconSize + \"px\";\n },\n cssIconHeight() {\n return this.internalType === TYPE_SWITCH ? \"16px\" : this.cssIconSize;\n },\n /**\n * Return the input type.\n * Switch is not an official type\n *\n * @return {string}\n */\n inputType() {\n const nativeTypes = [\n TYPE_CHECKBOX,\n TYPE_RADIO,\n TYPE_BUTTON\n ];\n if (nativeTypes.includes(this.internalType)) {\n return this.internalType;\n }\n return TYPE_CHECKBOX;\n },\n /**\n * Check if that entry is checked\n * If value is defined, we use that as the checked value\n * If not, we expect true/false in this.checked\n *\n * @return {boolean}\n */\n isChecked() {\n if (this.value !== null) {\n if (Array.isArray(this.internalModelValue)) {\n return [...this.internalModelValue].indexOf(this.value) > -1;\n }\n return this.internalModelValue === this.value;\n }\n return this.internalModelValue === true;\n },\n hasIndeterminate() {\n return [\n TYPE_CHECKBOX,\n TYPE_RADIO\n ].includes(this.inputType);\n }\n },\n mounted() {\n if (this.name && this.internalType === TYPE_CHECKBOX) {\n if (!Array.isArray(this.internalModelValue)) {\n throw new Error(\"When using groups of checkboxes, the updated value will be an array.\");\n }\n }\n if (this.name && this.internalType === TYPE_SWITCH) {\n throw new Error(\"Switches are not made to be used for data sets. Please use checkboxes instead.\");\n }\n if (typeof this.internalModelValue !== \"boolean\" && this.internalType === TYPE_SWITCH) {\n throw new Error(\"Switches can only be used with boolean as modelValue prop.\");\n }\n },\n methods: {\n t,\n n,\n onToggle(event) {\n if (this.disabled || event.target.tagName.toLowerCase() === \"a\") {\n return;\n }\n if (this.internalType === TYPE_RADIO) {\n this.internalModelValue = this.value;\n return;\n }\n if (this.internalType === TYPE_SWITCH) {\n this.internalModelValue = !this.isChecked;\n return;\n }\n if (typeof this.internalModelValue === \"boolean\") {\n this.internalModelValue = !this.internalModelValue;\n return;\n }\n if (this.isChecked) {\n this.internalModelValue = this.internalModelValue.filter((v) => v !== this.value);\n } else {\n this.internalModelValue = [...this.internalModelValue, this.value];\n }\n }\n }\n};\nconst __injectCSSVars__ = () => {\n useCssVars((_ctx) => ({\n \"v5ac25550\": _ctx.cssIconSize,\n \"d98ce684\": _ctx.cssIconHeight\n }));\n};\nconst __setup__ = _sfc_main.setup;\n_sfc_main.setup = __setup__ ? (props, ctx) => {\n __injectCSSVars__();\n return __setup__(props, ctx);\n} : __injectCSSVars__;\nconst _hoisted_1 = [\"id\", \"aria-labelledby\", \"aria-describedby\", \"aria-label\", \"disabled\", \"type\", \"value\", \"checked\", \".indeterminate\", \"required\", \"name\"];\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_NcCheckboxContent = resolveComponent(\"NcCheckboxContent\");\n return openBlock(), createBlock(resolveDynamicComponent($options.computedWrapperElement), mergeProps({\n id: $props.wrapperId ?? ($options.isButtonType ? $props.id : null),\n \"aria-label\": $options.isButtonType && $props.ariaLabel ? $props.ariaLabel : void 0,\n class: [\"checkbox-radio-switch\", [\n _ctx.$props.class,\n {\n [\"checkbox-radio-switch-\" + $setup.internalType]: $setup.internalType,\n \"checkbox-radio-switch--checked\": $options.isChecked,\n \"checkbox-radio-switch--disabled\": $props.disabled,\n \"checkbox-radio-switch--indeterminate\": $options.hasIndeterminate ? $props.indeterminate : false,\n \"checkbox-radio-switch--button-variant\": $props.buttonVariant,\n \"checkbox-radio-switch--button-variant-v-grouped\": $props.buttonVariant && $props.buttonVariantGrouped === \"vertical\",\n \"checkbox-radio-switch--button-variant-h-grouped\": $props.buttonVariant && $props.buttonVariantGrouped === \"horizontal\",\n \"button-vue\": $options.isButtonType\n }\n ]],\n style: $props.style,\n type: $options.isButtonType ? \"button\" : null\n }, $options.isButtonType ? _ctx.$attrs : {}, toHandlers($options.isButtonType ? $options.listeners : {})), {\n default: withCtx(() => [\n !$options.isButtonType ? (openBlock(), createElementBlock(\"input\", mergeProps({\n key: 0,\n id: $props.id,\n \"aria-labelledby\": !$options.isButtonType && !$props.ariaLabel ? $setup.labelId : null,\n \"aria-describedby\": !$options.isButtonType && ($props.description || _ctx.$slots.description) ? $setup.descriptionId : null,\n \"aria-label\": $props.ariaLabel || void 0,\n class: \"checkbox-radio-switch__input\",\n disabled: $props.disabled,\n type: $options.inputType,\n value: $props.value,\n checked: $options.isChecked,\n \".indeterminate\": $options.hasIndeterminate ? $props.indeterminate : null,\n required: $props.required,\n name: $props.name\n }, _ctx.$attrs, toHandlers($options.listeners, true)), null, 48, _hoisted_1)) : createCommentVNode(\"\", true),\n createVNode(_component_NcCheckboxContent, {\n id: !$options.isButtonType ? `${$props.id}-label` : void 0,\n class: \"checkbox-radio-switch__content\",\n iconClass: \"checkbox-radio-switch__icon\",\n textClass: \"checkbox-radio-switch__text\",\n type: $setup.internalType,\n indeterminate: $options.hasIndeterminate ? $props.indeterminate : false,\n buttonVariant: $props.buttonVariant,\n isChecked: $options.isChecked,\n loading: $props.loading,\n labelId: $setup.labelId,\n descriptionId: $setup.descriptionId,\n iconSize: $options.iconSize,\n onClick: $options.onToggle\n }, createSlots({\n icon: withCtx(() => [\n renderSlot(_ctx.$slots, \"icon\", {}, void 0, true)\n ]),\n _: 2\n }, [\n _ctx.$slots.description || $props.description ? {\n name: \"description\",\n fn: withCtx(() => [\n renderSlot(_ctx.$slots, \"description\", {}, () => [\n createTextVNode(toDisplayString($props.description), 1)\n ], true)\n ]),\n key: \"0\"\n } : void 0,\n !!_ctx.$slots.default ? {\n name: \"default\",\n fn: withCtx(() => [\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]),\n key: \"1\"\n } : void 0\n ]), 1032, [\"id\", \"type\", \"indeterminate\", \"buttonVariant\", \"isChecked\", \"loading\", \"labelId\", \"descriptionId\", \"iconSize\", \"onClick\"])\n ]),\n _: 3\n }, 16, [\"id\", \"aria-label\", \"class\", \"style\", \"type\"]);\n}\nconst NcCheckboxRadioSwitch = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__scopeId\", \"data-v-c34c63a4\"]]);\nexport {\n NcCheckboxRadioSwitch as N\n};\n//# sourceMappingURL=NcCheckboxRadioSwitch-DVdt5Hkq.mjs.map\n","import '../assets/NcSettingsSection-f5rBJsKJ.css';\nimport { openBlock, createElementBlock, mergeProps, createElementVNode, toDisplayString, createCommentVNode, defineComponent, createTextVNode, unref, createVNode, renderSlot } from \"vue\";\nimport { _ as _export_sfc } from \"./_plugin-vue_export-helper-1tPrXgE0.mjs\";\nimport { r as register, E as t26, a as t } from \"./_l10n-wdIzZwir.mjs\";\nconst _sfc_main$1 = {\n name: \"HelpCircleIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nconst _hoisted_1$1 = [\"aria-hidden\", \"aria-label\"];\nconst _hoisted_2$1 = [\"fill\", \"width\", \"height\"];\nconst _hoisted_3$1 = { d: \"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z\" };\nconst _hoisted_4$1 = { key: 0 };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"span\", mergeProps(_ctx.$attrs, {\n \"aria-hidden\": $props.title ? null : \"true\",\n \"aria-label\": $props.title,\n class: \"material-design-icon help-circle-icon\",\n role: \"img\",\n onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit(\"click\", $event))\n }), [\n (openBlock(), createElementBlock(\"svg\", {\n fill: $props.fillColor,\n class: \"material-design-icon__svg\",\n width: $props.size,\n height: $props.size,\n viewBox: \"0 0 24 24\"\n }, [\n createElementVNode(\"path\", _hoisted_3$1, [\n $props.title ? (openBlock(), createElementBlock(\"title\", _hoisted_4$1, toDisplayString($props.title), 1)) : createCommentVNode(\"\", true)\n ])\n ], 8, _hoisted_2$1))\n ], 16, _hoisted_1$1);\n}\nconst HelpCircle = /* @__PURE__ */ _export_sfc(_sfc_main$1, [[\"render\", _sfc_render]]);\nregister(t26);\nconst _hoisted_1 = { class: \"settings-section\" };\nconst _hoisted_2 = { class: \"settings-section__name\" };\nconst _hoisted_3 = [\"aria-label\", \"href\", \"title\"];\nconst _hoisted_4 = {\n key: 0,\n class: \"settings-section__desc\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"NcSettingsSection\",\n props: {\n name: {},\n description: { default: \"\" },\n docUrl: { default: \"\" }\n },\n setup(__props) {\n const ariaLabel = t(\"External documentation\");\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", _hoisted_1, [\n createElementVNode(\"h2\", _hoisted_2, [\n createTextVNode(toDisplayString(__props.name) + \" \", 1),\n __props.docUrl ? (openBlock(), createElementBlock(\"a\", {\n key: 0,\n \"aria-label\": unref(ariaLabel),\n class: \"settings-section__info\",\n href: __props.docUrl,\n rel: \"noreferrer nofollow\",\n target: \"_blank\",\n title: unref(ariaLabel)\n }, [\n createVNode(HelpCircle, { size: 20 })\n ], 8, _hoisted_3)) : createCommentVNode(\"\", true)\n ]),\n __props.description ? (openBlock(), createElementBlock(\"p\", _hoisted_4, toDisplayString(__props.description), 1)) : createCommentVNode(\"\", true),\n renderSlot(_ctx.$slots, \"default\", {}, void 0, true)\n ]);\n };\n }\n});\nconst NcSettingsSection = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__scopeId\", \"data-v-9cedb949\"]]);\nexport {\n NcSettingsSection as N\n};\n//# sourceMappingURL=NcSettingsSection-Caz1fuWt.mjs.map\n","\n\n\n\n\n\n","import { translate as t } from '@nextcloud/l10n'\n/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createApp } from 'vue'\nimport PersonalSettings from './views/settings/PersonalSettings.vue'\n\nconst app = createApp(PersonalSettings)\napp.config.globalProperties.t = t\napp.mount('#absence-personal-settings')\n"],"names":["svg","_sfc_main","defineComponent","__props","useCssVars","_ctx","color","cx","computed","_cache","openBlock","createBlock","NcIconSvgWrapper","normalizeClass","iconToggleSwitch","style0","cssModules","NcIconToggleSwitch","_export_sfc","INSIDE_RADIO_GROUP_KEY","useInsideRadioGroup","inject","_sfc_main$6","_hoisted_1$6","_hoisted_2$5","_hoisted_3$5","_hoisted_4$4","_sfc_render$6","$props","$setup","$data","$options","createElementBlock","mergeProps","$event","createElementVNode","toDisplayString","createCommentVNode","CheckboxBlankOutline","_sfc_main$5","_hoisted_1$5","_hoisted_2$4","_hoisted_3$4","_hoisted_4$3","_sfc_render$5","CheckboxMarked","_sfc_main$4","_hoisted_1$4","_hoisted_2$3","_hoisted_3$3","_hoisted_4$2","_sfc_render$4","MinusBox","_sfc_main$3","_hoisted_1$3","_hoisted_2$2","_hoisted_3$2","_hoisted_4$1","_sfc_render$3","RadioboxBlank","_sfc_main$2","_hoisted_1$2","_hoisted_2$1","_hoisted_3$1","_hoisted_4","_sfc_render$2","RadioboxMarked","TYPE_CHECKBOX","TYPE_RADIO","TYPE_SWITCH","TYPE_BUTTON","_sfc_main$1","NcLoadingIcon","type","_hoisted_1$1","_hoisted_2","_hoisted_3","_sfc_render$1","_component_NcLoadingIcon","resolveComponent","_component_NcIconToggleSwitch","renderSlot","resolveDynamicComponent","NcCheckboxContent","register","createElementId","id","v","props","emit","radioGroup","onMounted","internalType","internalModelValue","value","t","n","event","__injectCSSVars__","__setup__","ctx","_hoisted_1","_sfc_render","_component_NcCheckboxContent","toHandlers","withCtx","createVNode","createSlots","createTextVNode","NcCheckboxRadioSwitch","HelpCircle","t26","ariaLabel","unref","NcSettingsSection","NcButton","NcNoteCard","NcSelect","config","loadState","parseWeekdays","iso","d","listCountries","c","showError","on","set","listRegions","r","csv","detectedCsv","weekdaysValue","countryCode","countryValue","values","api","updated","showSuccess","_hoisted_5","_hoisted_6","_createBlock","_component_NcSettingsSection","_createElementVNode","_toDisplayString","_component_NcNoteCard","_createTextVNode","_createElementBlock","_Fragment","_renderList","_component_NcCheckboxRadioSwitch","_createVNode","_component_NcButton","_component_NcSelect","_openBlock","_hoisted_7","app","createApp","PersonalSettings"],"mappings":"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","x_google_ignoreList":[0,1,2,3]} \ No newline at end of file diff --git a/js/holidays-BoDDj6rx.chunk.mjs b/js/holidays-BoDDj6rx.chunk.mjs new file mode 100644 index 0000000..ae20b78 --- /dev/null +++ b/js/holidays-BoDDj6rx.chunk.mjs @@ -0,0 +1,23 @@ +(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(`.material-design-icon[data-v-00a99684]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-00a99684]{--button-size: var(--default-clickable-area);--button-inner-size: calc(var(--button-size) - 4px);--button-radius: var(--border-radius-element);--button-padding-default: calc(var(--default-grid-baseline) + var(--button-radius));--button-padding: var(--default-grid-baseline) var(--button-padding-default);color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light);border:1px solid var(--color-primary-element-light-hover);border-bottom-width:2px;border-radius:var(--button-radius);box-sizing:border-box;position:relative;width:fit-content;overflow:hidden;padding-block:1px 0;padding-inline:var(--button-padding);min-height:var(--button-size);min-width:var(--button-size);display:flex;align-items:center;justify-content:center;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;cursor:pointer;font-size:var(--default-font-size);font-weight:var(--font-weight-element, bold)}.button-vue--size-small[data-v-00a99684]{--button-size: var(--clickable-area-small)}.button-vue--size-large[data-v-00a99684]{--button-size: var(--clickable-area-large)}.button-vue[data-v-00a99684] *{cursor:pointer}.button-vue[data-v-00a99684]:focus{outline:none}.button-vue[data-v-00a99684]:disabled{filter:saturate(.7);opacity:.5;cursor:default}.button-vue[data-v-00a99684]:disabled *{cursor:default}.button-vue[data-v-00a99684]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-00a99684]:active:not(:disabled){background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-00a99684]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue--end .button-vue__wrapper[data-v-00a99684]{justify-content:end}.button-vue--start .button-vue__wrapper[data-v-00a99684]{justify-content:start}.button-vue--reverse .button-vue__wrapper[data-v-00a99684]{flex-direction:row-reverse}.button-vue--reverse[data-v-00a99684]{--button-padding: var(--button-padding-default) var(--default-grid-baseline)}.button-vue__icon[data-v-00a99684]{--default-clickable-area: var(--button-inner-size);height:var(--button-inner-size);width:var(--button-inner-size);min-height:var(--button-inner-size);min-width:var(--button-inner-size);display:flex;justify-content:center;align-items:center}.button-vue__icon[data-v-00a99684]:empty{display:none}.button-vue--size-small .button-vue__icon[data-v-00a99684]>*{max-height:16px;max-width:16px}.button-vue--size-small .button-vue__icon[data-v-00a99684] svg{height:16px;width:16px}.button-vue__text[data-v-00a99684]{font-weight:var(--font-weight-element, bold);margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue__text[data-v-00a99684]:empty{display:none}.button-vue[data-v-00a99684]:has(.button-vue__text:empty):not(.button-vue--wide){--button-padding: var(--button-radius);line-height:1;width:var(--button-size)!important}.button-vue[data-v-00a99684]:has(.button-vue__icon:empty){--button-padding: var(--button-padding-default)}.button-vue:has(.button-vue__icon:empty) .button-vue__text[data-v-00a99684]{padding-inline:var(--default-grid-baseline)}.button-vue--wide[data-v-00a99684]{width:100%}.button-vue[data-v-00a99684]:focus-visible{outline:2px solid var(--color-main-text)!important;box-shadow:0 0 0 4px var(--color-main-background)!important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-00a99684]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius-element);background-color:transparent}.button-vue--primary[data-v-00a99684]{background-color:var(--color-primary-element);border-color:var(--color-primary-element-hover);color:var(--color-primary-element-text)}.button-vue--primary[data-v-00a99684]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--primary[data-v-00a99684]:active{background-color:var(--color-primary-element)}.button-vue--secondary[data-v-00a99684]{background-color:var(--color-primary-element-light);border-color:var(--color-primary-element-light-hover);color:var(--color-primary-element-light-text)}.button-vue--secondary[data-v-00a99684]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--tertiary[data-v-00a99684]{background-color:transparent;border-color:transparent;color:var(--color-main-text)}.button-vue--tertiary[data-v-00a99684]:hover:not(:disabled){background-color:var(--color-background-hover)}.button-vue--tertiary[data-v-00a99684]:not(.button-vue--legacy34):hover:not(:disabled){background-color:color-mix(in srgb,var(--color-primary-element) 8%,transparent)}.button-vue--tertiary-no-background[data-v-00a99684]:hover:not(:disabled){background-color:transparent}.button-vue--tertiary-on-primary[data-v-00a99684]{color:var(--color-primary-element-text)}.button-vue--tertiary-on-primary[data-v-00a99684]:hover:not(:disabled){background-color:transparent}.button-vue--success[data-v-00a99684]{border-color:var(--color-success-hover);background-color:var(--color-success);color:var(--color-success-text)}.button-vue--success[data-v-00a99684]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--success[data-v-00a99684]:active{background-color:var(--color-success)}.button-vue--warning[data-v-00a99684]{border-color:var(--color-warning-hover);background-color:var(--color-warning);color:var(--color-warning-text)}.button-vue--warning[data-v-00a99684]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--warning[data-v-00a99684]:active{background-color:var(--color-warning)}.button-vue--error[data-v-00a99684]{border-color:var(--color-error-hover);background-color:var(--color-error);color:var(--color-error-text)}.button-vue--error[data-v-00a99684]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--error[data-v-00a99684]:active{background-color:var(--color-error)}.button-vue--legacy[data-v-00a99684]{--button-inner-size: var(--button-size);border:none;padding-block:0}.button-vue--legacy.button-vue--error[data-v-00a99684],.button-vue--legacy.button-vue--success[data-v-00a99684],.button-vue--legacy.button-vue--warning[data-v-00a99684]{color:#fff}.material-design-icon[data-v-aaedb1c3]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.icon-vue[data-v-aaedb1c3]{display:flex;justify-content:center;align-items:center;min-width:var(--default-clickable-area);min-height:var(--default-clickable-area);opacity:1}.icon-vue.icon-vue--inline[data-v-aaedb1c3]{display:inline-flex!important;min-width:fit-content;min-height:fit-content;vertical-align:text-bottom}.icon-vue span[data-v-aaedb1c3]{line-height:0}.icon-vue[data-v-aaedb1c3] svg{fill:currentColor;width:var(--fb515064);height:var(--fb515064);max-width:var(--fb515064);max-height:var(--fb515064)}.icon-vue--directional[data-v-aaedb1c3] svg:dir(rtl){transform:scaleX(-1)}.material-design-icon[data-v-23e5cae7]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-23e5cae7]{display:flex;align-items:center;gap:calc((var(--default-clickable-area) - 16px) / 2 / 2)}.action-item[data-v-23e5cae7]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-23e5cae7]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-23e5cae7]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-23e5cae7]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-23e5cae7]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-23e5cae7]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-23e5cae7]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-23e5cae7]{background-color:var(--open-background-color)}.action-item.action-item--wide[data-v-23e5cae7]{width:100%}.action-item__menutoggle__icon[data-v-23e5cae7]{width:20px;height:20px;object-fit:contain}.v-popper--theme-nc-popover-9.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-element)}.v-popper--theme-nc-popover-9.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-element);padding:4px;max-height:calc(100vh - var(--header-height));overflow:auto}._material-design-icon_bkeq-{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}._ncPopover_zfWgY.v-popper--theme-nc-popover-9,._ncPopover_zfWgY.v-popper--theme-nc-popover-9 *{box-sizing:border-box}._ncPopover_zfWgY.v-popper--theme-nc-popover-9 .resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}._ncPopover_zfWgY.v-popper--theme-nc-popover-9 .resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper{z-index:100000;top:0;left:0;display:block!important}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper .v-popper__wrapper{box-shadow:0 1px 10px var(--color-box-shadow);border-radius:var(--border-radius-element)}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-element);overflow:hidden;background:var(--color-main-background)}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:transparent;border-width:10px}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-9px;border-bottom-width:0;border-top-color:var(--color-main-background)}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-9px;border-top-width:0;border-bottom-color:var(--color-main-background)}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-9px;border-left-width:0;border-right-color:var(--color-main-background)}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-9px;border-right-width:0;border-left-color:var(--color-main-background)}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}._ncPopover_zfWgY.v-popper--theme-nc-popover-9.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}.material-design-icon[data-v-cf399190]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.loading-icon[data-v-cf399190]{overflow:hidden}.loading-icon svg[data-v-cf399190]{animation:rotate var(--animation-duration, .8s) linear infinite}@media only screen and (max-width:512px){.dialog__modal .modal-wrapper--small .modal-container{width:fit-content;height:unset;max-height:90%;position:relative;top:unset;border-radius:var(--border-radius-element)}}.material-design-icon[data-v-24e91b99]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.dialog[data-v-24e91b99]{height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.dialog__modal[data-v-24e91b99] .modal-wrapper .modal-container{display:flex!important;padding-block:4px 0;padding-inline:12px 0}.dialog__modal[data-v-24e91b99] .modal-wrapper .modal-container__content{display:flex;flex-direction:column;overflow:hidden}.dialog__wrapper[data-v-24e91b99]{display:flex;flex-direction:row;flex:1;min-height:0;overflow:hidden}.dialog__wrapper--collapsed[data-v-24e91b99]{flex-direction:column}.dialog__navigation[data-v-24e91b99]{display:flex;flex-shrink:0}.dialog__wrapper:not(.dialog__wrapper--collapsed) .dialog__navigation[data-v-24e91b99]{flex-direction:column;overflow:hidden auto;height:100%;min-width:200px;margin-inline-end:20px}.dialog__wrapper.dialog__wrapper--collapsed .dialog__navigation[data-v-24e91b99]{flex-direction:row;justify-content:space-between;overflow:auto hidden;width:100%;min-width:100%}.dialog__name[data-v-24e91b99]{font-size:21px;text-align:center;height:fit-content;min-height:var(--default-clickable-area);line-height:var(--default-clickable-area);overflow-wrap:break-word;margin-block:0 12px}.dialog__content[data-v-24e91b99]{flex:1;min-height:0;overflow:auto;padding-inline-end:12px}.dialog__text[data-v-24e91b99]{padding-block-end:6px}.dialog__actions[data-v-24e91b99]{display:flex;gap:6px;align-content:center;justify-content:end;width:100%;max-width:100%;padding-inline:0 12px;margin-inline:0;margin-block:0}.dialog__actions[data-v-24e91b99]:not(:empty){margin-block:6px 12px}@media only screen and (max-width:512px){.dialog__name[data-v-24e91b99]{text-align:start;margin-inline-end:var(--default-clickable-area)}}.material-design-icon[data-v-3c357e2d]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-3c357e2d]{position:fixed;z-index:9998;top:0;inset-inline-start:0;display:block;width:100%;height:100%;--backdrop-color: 0, 0, 0;background-color:rgba(var(--backdrop-color),.5)}.modal-mask[data-v-3c357e2d],.modal-mask[data-v-3c357e2d] *{box-sizing:border-box}.modal-mask--opaque[data-v-3c357e2d]{background-color:rgba(var(--backdrop-color),.92)}.modal-mask--light[data-v-3c357e2d]{--backdrop-color: 255, 255, 255}.modal-header[data-v-3c357e2d]{position:absolute;z-index:10001;top:0;inset-inline:0 0;display:flex!important;align-items:center;justify-content:space-between;width:100%;height:var(--header-height);overflow:hidden;transition:opacity .25s,visibility .25s}.modal-header__name[data-v-3c357e2d]{overflow-x:hidden;width:100%;padding-inline:12px 0;transition:padding ease .1s;white-space:nowrap;text-overflow:ellipsis;font-size:16px;margin-block:0}@media only screen and (min-width:1024px){.modal-header__name[data-v-3c357e2d]{padding-inline-start:calc(var(--header-height) * var(--v046d2bb2));text-align:center}}.modal-header .icons-menu[data-v-3c357e2d]{display:flex;align-items:center;justify-content:flex-end;align-self:flex-end}.modal-header .icons-menu .header-close[data-v-3c357e2d]{display:flex;align-items:center;justify-content:center;margin:calc((var(--header-height) - var(--default-clickable-area)) / 2);padding:0}.modal-header .icons-menu .play-pause-icons[data-v-3c357e2d]{position:relative;width:var(--header-height);height:var(--header-height);margin:0;padding:0;cursor:pointer;border:none;background-color:transparent}.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__icon[data-v-3c357e2d],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__icon[data-v-3c357e2d]{opacity:1;border-radius:calc(var(--default-clickable-area) / 2);background-color:#7f7f7f40}.modal-header .icons-menu .play-pause-icons__icon[data-v-3c357e2d]{width:var(--default-clickable-area);height:var(--default-clickable-area);margin:calc((var(--header-height) - var(--default-clickable-area)) / 2);cursor:pointer;opacity:.7}.modal-header .icons-menu[data-v-3c357e2d] .action-item{margin:calc((var(--header-height) - var(--default-clickable-area)) / 2)}.modal-header .icons-menu[data-v-3c357e2d] .action-item--single{width:var(--default-clickable-area);height:var(--default-clickable-area);cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu .header-actions[data-v-3c357e2d] button:focus-visible{box-shadow:none!important;outline:2px solid #fff!important}.modal-wrapper[data-v-3c357e2d]{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.modal-wrapper .prev[data-v-3c357e2d],.modal-wrapper .next[data-v-3c357e2d]{z-index:10000;height:35vh;min-height:300px;position:absolute;transition:opacity .25s;color:#fff}.modal-wrapper .prev[data-v-3c357e2d]:focus-visible,.modal-wrapper .next[data-v-3c357e2d]:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element-text);background-color:var(--color-box-shadow)}.modal-wrapper .prev[data-v-3c357e2d]{inset-inline-start:2px}.modal-wrapper .next[data-v-3c357e2d]{inset-inline-end:2px}.modal-wrapper .modal-container[data-v-3c357e2d]{position:relative;display:flex;padding:0;transition:transform .3s ease;border-radius:var(--border-radius-container);background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 40px #0003;overflow:auto}.modal-wrapper .modal-container__close[data-v-3c357e2d]{z-index:1;position:absolute;top:4px;inset-inline-end:var(--default-grid-baseline)}.modal-wrapper .modal-container__content[data-v-3c357e2d]{width:100%;min-height:52px;overflow:auto}.modal-wrapper--small>.modal-container[data-v-3c357e2d]{width:400px;max-width:90%;max-height:min(90%,100% - 2 * var(--header-height) - 2 * var(--body-container-margin))}.modal-wrapper--normal>.modal-container[data-v-3c357e2d]{max-width:90%;width:600px;max-height:min(90%,100% - 2 * var(--header-height) - 2 * var(--body-container-margin))}.modal-wrapper--large>.modal-container[data-v-3c357e2d]{max-width:90%;width:900px;max-height:min(90%,100% - 2 * var(--header-height) - 2 * var(--body-container-margin))}.modal-wrapper--full>.modal-container[data-v-3c357e2d]{width:100%;height:calc(100% - var(--header-height));position:absolute;top:var(--header-height);border-radius:0}@media only screen and ((max-width:512px)or (max-height:400px)){.modal-wrapper .modal-container[data-v-3c357e2d]{max-width:initial;width:100%;max-height:initial;height:calc(100% - var(--header-height));position:absolute;top:var(--header-height);border-radius:0}}.fade-enter-active[data-v-3c357e2d],.fade-leave-active[data-v-3c357e2d]{transition:opacity .25s}.fade-enter-from[data-v-3c357e2d],.fade-leave-to[data-v-3c357e2d]{opacity:0}.fade-visibility-enter-from[data-v-3c357e2d],.fade-visibility-leave-to[data-v-3c357e2d]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-3c357e2d],.modal-in-leave-active[data-v-3c357e2d],.modal-out-enter-active[data-v-3c357e2d],.modal-out-leave-active[data-v-3c357e2d]{transition:opacity .25s}.modal-in-enter-from[data-v-3c357e2d],.modal-in-leave-to[data-v-3c357e2d],.modal-out-enter-from[data-v-3c357e2d],.modal-out-leave-to[data-v-3c357e2d]{opacity:0}.modal-in-enter .modal-container[data-v-3c357e2d],.modal-in-leave-to .modal-container[data-v-3c357e2d]{transform:scale(.9)}.modal-out-enter .modal-container[data-v-3c357e2d],.modal-out-leave-to .modal-container[data-v-3c357e2d]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-3c357e2d]{position:absolute;top:0;inset-inline-start:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-3c357e2d]{transition:.1s stroke-dashoffset;transform-origin:50% 50%;animation:progressring-3c357e2d linear var(--v71f7c020) infinite;stroke-linecap:round;stroke-dashoffset:94.2477796077;stroke-dasharray:94.2477796077}.modal-mask .play-pause-icons--paused .play-pause-icons__icon[data-v-3c357e2d]{animation:breath-3c357e2d 2s cubic-bezier(.4,0,.2,1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-3c357e2d]{animation-play-state:paused!important}@keyframes progressring-3c357e2d{0%{stroke-dashoffset:94.2477796077}to{stroke-dashoffset:0}}@keyframes breath-3c357e2d{0%{opacity:1}50%{opacity:0}to{opacity:1}}.material-design-icon[data-v-6be9fa31]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.notecard[data-v-6be9fa31]{--note-card-icon-size: 20px;--note-card-padding: calc(2 * var(--default-grid-baseline));color:var(--color-main-text)!important;background-color:var(--note-background)!important;border-inline-start:var(--default-grid-baseline) solid var(--note-theme);border-radius:var(--border-radius-small);margin:1rem 0;padding:var(--note-card-padding);display:flex;flex-direction:row;gap:var(--note-card-padding)}.notecard__heading[data-v-6be9fa31]{font-size:var(--note-card-icon-size);font-weight:var(--font-weight-heading, 600)}.notecard__icon[data-v-6be9fa31]{color:var(--note-theme)}.notecard__icon--heading[data-v-6be9fa31]{font-size:var(--note-card-icon-size);margin-block:calc((1lh - 1em)/2) auto}.notecard--success[data-v-6be9fa31]{--note-background: var(--color-success);--note-theme: var(--color-success-text)}.notecard--info[data-v-6be9fa31]{--note-background: var(--color-info);--note-theme: var(--color-info-text)}.notecard--error[data-v-6be9fa31]{--note-background: var(--color-error);--note-theme: var(--color-error-text)}.notecard--warning[data-v-6be9fa31]{--note-background: var(--color-warning);--note-theme: var(--color-warning-text)}.notecard--legacy[data-v-6be9fa31]{background-color:color-mix(in srgb,var(--note-background),var(--color-main-background) 80%)!important;color:var(--color-main-text)!important}.material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}/*! + * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */body{--vs-search-input-color: var(--color-main-text);--vs-search-input-bg: var(--color-main-background);--vs-search-input-placeholder-color: var(--color-text-maxcontrast);--vs-font-size: var(--default-font-size);--vs-line-height: var(--default-line-height);--vs-state-disabled-bg: var(--color-background-hover);--vs-state-disabled-color: var(--color-text-maxcontrast);--vs-state-disabled-controls-color: var(--color-text-maxcontrast);--vs-state-disabled-cursor: not-allowed;--vs-disabled-bg: var(--color-background-hover);--vs-disabled-color: var(--color-text-maxcontrast);--vs-disabled-cursor: not-allowed;--vs-border-color: var(--color-border-maxcontrast);--vs-border-width: var(--border-width-input, 2px) !important;--vs-border-style: solid;--vs-border-radius: var(--border-radius-element);--vs-controls-color: var(--color-main-text);--vs-selected-bg: var(--color-background-hover);--vs-selected-color: var(--color-main-text);--vs-selected-border-color: var(--vs-border-color);--vs-selected-border-style: var(--vs-border-style);--vs-selected-border-width: var(--vs-border-width);--vs-dropdown-bg: var(--color-main-background);--vs-dropdown-color: var(--color-main-text);--vs-dropdown-z-index: 9999;--vs-dropdown-box-shadow: 0px 2px 2px 0px var(--color-box-shadow);--vs-dropdown-option-padding: 8px 20px;--vs-dropdown-option--active-bg: var(--color-background-hover);--vs-dropdown-option--active-color: var(--color-main-text);--vs-dropdown-option--kb-focus-box-shadow: inset 0px 0px 0px 2px var(--vs-border-color);--vs-dropdown-option--deselect-bg: var(--color-error);--vs-dropdown-option--deselect-color: #fff;--vs-transition-duration: 0ms;--vs-actions-padding: 0 8px 0 4px}.v-select.select{min-height:calc(var(--default-clickable-area) - 2 * var(--border-width-input));min-width:260px;margin:0 0 var(--default-grid-baseline)}.v-select.select.vs--open{--vs-border-width: var(--border-width-input-focused, 2px)}.v-select.select .select__label{display:block;margin-bottom:2px}.v-select.select .vs__selected{height:calc(var(--default-clickable-area) - 2 * var(--vs-border-width) - var(--default-grid-baseline));margin:calc(var(--default-grid-baseline) / 2);padding-block:0;padding-inline:12px 8px;border-radius:16px!important;background:var(--color-primary-element-light);border:none}.v-select.select.vs--open .vs__selected:first-of-type{margin-inline-start:calc(var(--default-grid-baseline) / 2 - (var(--border-width-input-focused, 2px) - var(--border-width-input, 2px)))!important}.v-select.select .vs__search{text-overflow:ellipsis;color:var(--color-main-text);min-height:unset!important;height:calc(var(--default-clickable-area) - 2 * var(--vs-border-width))!important}.v-select.select .vs__search::placeholder{color:var(--color-text-maxcontrast)}.v-select.select .vs__search,.v-select.select .vs__search:focus{margin:0}.v-select.select .vs__dropdown-toggle{position:relative;max-height:100px;padding:var(--border-width-input);overflow-y:auto}.v-select.select .vs__actions{position:sticky;top:0}.v-select.select .vs__clear{margin-inline-end:2px}.v-select.select.vs--open .vs__dropdown-toggle{border-color:var(--color-main-text);border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0;border-style:solid;border-width:var(--border-width-input-focused);outline:2px solid var(--color-main-background);padding:0}.v-select.select:not(.vs--disabled,.vs--open) .vs__dropdown-toggle:active,.v-select.select:not(.vs--disabled,.vs--open) .vs__dropdown-toggle:focus-within{outline:2px solid var(--color-main-background);border-color:var(--color-main-text)}.v-select.select.vs--disabled .vs__search,.v-select.select.vs--disabled .vs__selected{color:var(--color-text-maxcontrast)}.v-select.select.vs--disabled .vs__clear,.v-select.select.vs--disabled .vs__deselect{display:none}.v-select.select--no-wrap .vs__selected-options{flex-wrap:nowrap;overflow:auto;min-width:unset}.v-select.select--no-wrap .vs__selected-options .vs__selected{min-width:unset}.v-select.select--drop-up.vs--open .vs__dropdown-toggle{border-radius:0 0 var(--vs-border-radius) var(--vs-border-radius);border-top-color:transparent;border-bottom-color:var(--color-main-text)}.v-select.select .vs__selected-options{min-height:calc(var(--default-clickable-area) - 2 * var(--vs-border-width))}.v-select.select .vs__selected-options .vs__selected~.vs__search[readonly]{position:absolute}.v-select.select .vs__selected-options{padding:0 5px}.v-select.select.vs--single.vs--loading .vs__selected,.v-select.select.vs--single.vs--open .vs__selected{max-width:100%;opacity:1;color:var(--color-text-maxcontrast)}.v-select.select.vs--single .vs__selected-options{flex-wrap:nowrap}.v-select.select.vs--single .vs__selected{background:unset!important}.vs__dropdown-toggle{--input-border-box-shadow-light: 0 -1px var(--vs-border-color), 0 0 0 1px color-mix(in srgb, var(--vs-border-color), 65% transparent);--input-border-box-shadow-dark: 0 1px var(--vs-border-color), 0 0 0 1px color-mix(in srgb, var(--vs-border-color), 65% transparent);--input-border-box-shadow: var(--input-border-box-shadow-light);border:none;border-radius:var(--border-radius-element);box-shadow:var(--input-border-box-shadow)}.vs__dropdown-toggle:hover:not([disabled]){box-shadow:0 0 0 1px var(--vs-border-color)}@media(prefers-color-scheme:dark){.vs__dropdown-toggle .vs__dropdown-toggle{--input-border-box-shadow: var(--input-border-box-shadow-dark)}}[data-theme-dark] .vs__dropdown-toggle{--input-border-box-shadow: var(--input-border-box-shadow-dark)}[data-theme-light] .vs__dropdown-toggle{--input-border-box-shadow: var(--input-border-box-shadow-light)}.select--legacy .vs__dropdown-toggle{box-shadow:0 0 0 1px var(--vs-border-color)}.select--legacy .vs__dropdown-toggle:hover:not([disabled]){box-shadow:0 0 0 2px var(--vs-border-color)}.vs__dropdown-menu{border-width:var(--border-width-input-focused)!important;border-color:var(--color-main-text)!important;outline:none!important;box-shadow:-2px 0 0 var(--color-main-background),0 2px 0 var(--color-main-background),2px 0 0 var(--color-main-background),!important;padding:4px!important}.vs__dropdown-menu--floating{width:max-content;position:absolute;top:0;inset-inline-start:0}.vs__dropdown-menu--floating-placement-top{border-radius:var(--vs-border-radius) var(--vs-border-radius) 0 0!important;border-top-style:var(--vs-border-style)!important;border-bottom-style:none!important;box-shadow:0 -2px 0 var(--color-main-background),-2px 0 0 var(--color-main-background),2px 0 0 var(--color-main-background),!important}.vs__dropdown-menu .vs__dropdown-option{border-radius:6px!important}.vs__dropdown-menu .vs__no-options{color:var(--color-text-maxcontrast)!important}:root{--vs-colors--lightest:rgba(60,60,60,.26);--vs-colors--light:rgba(60,60,60,.5);--vs-colors--dark:#333;--vs-colors--darkest:rgba(0,0,0,.15);--vs-search-input-color:inherit;--vs-search-input-bg:#fff;--vs-search-input-placeholder-color:inherit;--vs-font-size:1rem;--vs-line-height:1.4;--vs-state-disabled-bg:#f8f8f8;--vs-state-disabled-color:var(--vs-colors--light);--vs-state-disabled-controls-color:var(--vs-colors--light);--vs-state-disabled-cursor:not-allowed;--vs-border-color:var(--vs-colors--lightest);--vs-border-width:1px;--vs-border-style:solid;--vs-border-radius:4px;--vs-actions-padding:4px 6px 0 3px;--vs-controls-color:var(--vs-colors--light);--vs-controls-size:1;--vs-controls--deselect-text-shadow:0 1px 0 #fff;--vs-selected-bg:#f0f0f0;--vs-selected-color:var(--vs-colors--dark);--vs-selected-border-color:var(--vs-border-color);--vs-selected-border-style:var(--vs-border-style);--vs-selected-border-width:var(--vs-border-width);--vs-dropdown-bg:#fff;--vs-dropdown-color:inherit;--vs-dropdown-z-index:1000;--vs-dropdown-min-width:160px;--vs-dropdown-max-height:350px;--vs-dropdown-box-shadow:0px 3px 6px 0px var(--vs-colors--darkest);--vs-dropdown-option-bg:#000;--vs-dropdown-option-color:var(--vs-dropdown-color);--vs-dropdown-option-padding:3px 20px;--vs-dropdown-option--active-bg:#136cfb;--vs-dropdown-option--active-color:#fff;--vs-dropdown-option--kb-focus-box-shadow:inset 0px 0px 0px 2px #949494;--vs-dropdown-option--deselect-bg:#fb5858;--vs-dropdown-option--deselect-color:#fff;--vs-transition-timing-function:cubic-bezier(1,-.115,.975,.855);--vs-transition-duration:.15s}.v-select{font-family:inherit;position:relative}.v-select,.v-select *{box-sizing:border-box}:root{--vs-transition-timing-function:cubic-bezier(1,.5,.8,1);--vs-transition-duration:.15s}@keyframes vSelectSpinner{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.vs__fade-enter-active,.vs__fade-leave-active{pointer-events:none;transition:opacity var(--vs-transition-duration) var(--vs-transition-timing-function)}.vs__fade-enter,.vs__fade-leave-to{opacity:0}:root{--vs-disabled-bg:var(--vs-state-disabled-bg);--vs-disabled-color:var(--vs-state-disabled-color);--vs-disabled-cursor:var(--vs-state-disabled-cursor)}.vs--disabled{.vs__clear,.vs__dropdown-toggle,.vs__open-indicator,.vs__open-indicator-button,.vs__search,.vs__selected{background-color:var(--vs-disabled-bg);cursor:var(--vs-disabled-cursor)}}.v-select[dir=rtl]{.vs__actions{padding:0 3px 0 6px}.vs__clear{margin-left:6px;margin-right:0}.vs__deselect{margin-left:0;margin-right:2px}.vs__dropdown-menu{text-align:right}}.vs__dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--vs-search-input-bg);border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:var(--vs-border-radius);display:flex;padding:0 0 4px;white-space:normal}.vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;min-width:0;padding:0 2px;position:relative}.vs__actions{align-items:center;display:flex;padding:var(--vs-actions-padding)}.vs--searchable .vs__dropdown-toggle{cursor:text}.vs--unsearchable .vs__dropdown-toggle{cursor:pointer}.vs--open .vs__dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.vs__open-indicator-button{background-color:transparent;border:0;cursor:pointer;padding:0}.vs__open-indicator{fill:var(--vs-controls-color);transform:scale(var(--vs-controls-size));transition:transform var(--vs-transition-duration) var(--vs-transition-timing-function);transition-timing-function:var(--vs-transition-timing-function)}.vs--open .vs__open-indicator{transform:rotate(180deg) scale(var(--vs-controls-size))}.vs--loading .vs__open-indicator{opacity:0}.vs__clear{background-color:transparent;border:0;cursor:pointer;fill:var(--vs-controls-color);margin-right:8px;padding:0}.vs__dropdown-menu{background:var(--vs-dropdown-bg);border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:0 0 var(--vs-border-radius) var(--vs-border-radius);border-top-style:none;box-shadow:var(--vs-dropdown-box-shadow);box-sizing:border-box;color:var(--vs-dropdown-color);display:block;left:0;list-style:none;margin:0;max-height:var(--vs-dropdown-max-height);min-width:var(--vs-dropdown-min-width);overflow-y:auto;padding:5px 0;position:absolute;text-align:left;top:calc(100% - var(--vs-border-width));width:100%;z-index:var(--vs-dropdown-z-index)}.vs__no-options{text-align:center}.vs__dropdown-option{clear:both;color:var(--vs-dropdown-option-color);cursor:pointer;display:block;line-height:1.42857143;padding:var(--vs-dropdown-option-padding);white-space:nowrap}.vs__dropdown-option--highlight{background:var(--vs-dropdown-option--active-bg);color:var(--vs-dropdown-option--active-color)}.vs__dropdown-option--kb-focus{box-shadow:var(--vs-dropdown-option--kb-focus-box-shadow)}.vs__dropdown-option--deselect{background:var(--vs-dropdown-option--deselect-bg);color:var(--vs-dropdown-option--deselect-color)}.vs__dropdown-option--disabled{background:var(--vs-state-disabled-bg);color:var(--vs-state-disabled-color);cursor:var(--vs-state-disabled-cursor)}.vs__selected{align-items:center;background-color:var(--vs-selected-bg);border:var(--vs-selected-border-width) var(--vs-selected-border-style) var(--vs-selected-border-color);border-radius:var(--vs-border-radius);color:var(--vs-selected-color);display:flex;line-height:var(--vs-line-height);margin:4px 2px 0;min-width:0;padding:0 .25em;z-index:0}.vs__deselect{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;cursor:pointer;display:inline-flex;fill:var(--vs-controls-color);margin-left:4px;padding:0;text-shadow:var(--vs-controls--deselect-text-shadow)}.vs--single{.vs__selected{background-color:transparent;border-color:transparent}&.vs--loading .vs__selected,&.vs--open .vs__selected{max-width:100%;opacity:.4;position:absolute}&.vs--searching .vs__selected{display:none}}.vs__search::-webkit-search-cancel-button{display:none}.vs__search::-ms-clear,.vs__search::-webkit-search-decoration,.vs__search::-webkit-search-results-button,.vs__search::-webkit-search-results-decoration{display:none}.vs__search,.vs__search:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid transparent;border-left:none;box-shadow:none;color:var(--vs-search-input-color);flex-grow:1;font-size:var(--vs-font-size);line-height:var(--vs-line-height);margin:4px 0 0;max-width:100%;outline:none;padding:0 7px;width:0;z-index:1}.vs__search::-moz-placeholder{color:var(--vs-search-input-placeholder-color)}.vs__search::placeholder{color:var(--vs-search-input-placeholder-color)}.vs--unsearchable{.vs__search{opacity:1}&:not(.vs--disabled) .vs__search{cursor:pointer}}.vs--single.vs--searching:not(.vs--open):not(.vs--loading){.vs__search{opacity:.2}}.vs__spinner{align-self:center;animation:vSelectSpinner 1.1s linear infinite;border:.9em solid hsla(0,0%,39.2%,.1);border-left-color:#3c3c3c73;font-size:5px;opacity:0;overflow:hidden;text-indent:-9999em;transform:translateZ(0) scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));transition:opacity .1s}.vs__spinner,.vs__spinner:after{border-radius:50%;height:5em;transform:scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));width:5em}.vs--loading .vs__spinner{opacity:1}.material-design-icon[data-v-a612f185]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.name-parts[data-v-a612f185]{display:flex;max-width:100%;cursor:inherit}.name-parts__first[data-v-a612f185]{overflow:hidden;text-overflow:ellipsis}.name-parts__first[data-v-a612f185],.name-parts__last[data-v-a612f185]{white-space:pre;cursor:inherit}.name-parts__first strong[data-v-a612f185],.name-parts__last strong[data-v-a612f185]{font-weight:700}`)),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})(); +const bc=(e,u,t)=>{const s=Object.assign({ocsVersion:2},{}).ocsVersion===1?1:2;return Dc()+"/ocs/v"+s+".php"+Zo(e,u)},Zo=(e,u,t)=>{const s=Object.assign({escape:!0},{}),n=function(i,o){return o=o||{},i.replace(/{([^{}]*)}/g,function(r,a){const m=o[a];return s.escape?encodeURIComponent(typeof m=="string"||typeof m=="number"?m.toString():r):typeof m=="string"||typeof m=="number"?m.toString():r})};return e.charAt(0)!=="/"&&(e="/"+e),n(e,u||{})},Z4=(e,u,t)=>{const s=Object.assign({noRewrite:!1},{}),n=X4();return window?.OC?.config?.modRewriteWorking===!0&&!s.noRewrite?n+Zo(e,u):n+"/index.php"+Zo(e,u)},Dc=()=>window.location.protocol+"//"+window.location.host+X4();function X4(){let e=window._oc_webroot;if(typeof e>"u"){e=location.pathname;const u=e.indexOf("/index.php/");if(u!==-1)e=e.slice(0,u);else{const t=e.indexOf("/",1);e=e.slice(0,t>0?t:void 0)}}return e}function Sa(e,u){(u==null||u>e.length)&&(u=e.length);for(var t=0,s=Array(u);t2?t-2:0),n=2;n1?u-1:0),s=1;s"u"?null:nu(BigInt.prototype.toString),Ra=typeof Symbol>"u"?null:nu(Symbol.prototype.toString),ru=nu(Object.prototype.hasOwnProperty),En=nu(Object.prototype.toString),ou=nu(RegExp.prototype.test),rs=Mc(TypeError);function nu(e){return function(u){u instanceof RegExp&&(u.lastIndex=0);for(var t=arguments.length,s=new Array(t>1?t-1:0),n=1;n2&&arguments[2]!==void 0?arguments[2]:Dn;if(_a&&_a(e,null),!Yt(u))return e;let s=u.length;for(;s--;){let n=u[s];if(typeof n=="string"){const i=t(n);i!==n&&(Oc(u)||(u[s]=i),n=i)}e[n]=!0}return e}function $c(e){for(let u=0;u/g),qc=hu(/\${[\w\W]*/g),Yc=hu(/^data-[\-\w.\u00B7-\uFFFF]+$/),Zc=hu(/^aria-[\-\w]+$/),$a=hu(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Xc=hu(/^(?:\w+script|data):/i),Jc=hu(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Qc=hu(/^html$/i),eg=hu(/^[a-z][.\w]*(-[.\w]+)+$/i),Ua=hu(/<[/\w!]/g),Va=hu(/<[/\w]/g),ug=hu(/<\/no(script|embed|frames)/i),tg=hu(/\/>/i),Pu={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},sg=function(){return typeof window>"u"?null:window},ng=function(e,u){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let t=null;const s="data-tt-policy-suffix";u&&u.hasAttribute(s)&&(t=u.getAttribute(s));const n="dompurify"+(t?"#"+t:"");try{return e.createPolicy(n,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return console.warn("TrustedTypes policy "+n+" could not be created."),null}},Wa=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Ut=function(e,u,t,s){return ru(e,u)&&Yt(e[u])?be(s.base?bu(s.base):{},e[u],s.transform):t};function ed(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:sg();const u=v=>ed(v);if(u.version="3.4.12",u.removed=[],!e||!e.document||e.document.nodeType!==Pu.document||!e.Element)return u.isSupported=!1,u;let t=e.document;const s=t,n=s.currentScript;e.DocumentFragment;const i=e.HTMLTemplateElement,o=e.Node,r=e.Element,a=e.NodeFilter;e.NamedNodeMap===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const l=e.DOMParser,g=e.trustedTypes,p=r.prototype,h=ot(p,"cloneNode"),y=ot(p,"remove"),E=ot(p,"nextSibling"),F=ot(p,"childNodes"),B=ot(p,"parentNode"),A=ot(p,"shadowRoot"),O=ot(p,"attributes"),N=o&&o.prototype?ot(o.prototype,"nodeType"):null,K=o&&o.prototype?ot(o.prototype,"nodeName"):null;if(typeof i=="function"){const v=t.createElement("template");v.content&&v.content.ownerDocument&&(t=v.content.ownerDocument)}let I,Y="",se,G=!1,M=0;const ne=function(){if(M>0)throw rs('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},b=function(v){ne(),M++;try{return I.createHTML(v)}finally{M--}},T=function(v){ne(),M++;try{return I.createScriptURL(v)}finally{M--}},V=function(){return G||(se=ng(g,n),G=!0),se},ue=t,Z=ue.implementation,Q=ue.createNodeIterator,te=ue.createDocumentFragment,de=ue.getElementsByTagName,le=s.importNode;let ie=Wa();u.isSupported=typeof J4=="function"&&typeof B=="function"&&Z&&Z.createHTMLDocument!==void 0;const xe=Gc,He=Kc,Se=qc,Pe=Yc,pe=Zc,$e=Xc,Nu=Jc,tt=eg;let $u=$a,C=null;const w=be({},[...La,...go,...fo,...po,...ja]);let _=null;const $=be({},[...Ia,...ho,...Ma,...yi]);let z=Object.seal(Hs(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),S=null,W=null;const U=Object.seal(Hs(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let H=!0,j=!0,re=!1,X=!0,oe=!1,ae=!0,ge=!1,Ae=!1,_e=null,De=null,qe=!1,d=!1,c=!1,f=!1,x=!0,k=!1;const P="user-content-";let q=!0,Oe=!1,Ke={},ye=null;const Re=be({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let Ye=null;const va=be({},["audio","video","img","source","image","track"]);let uo=null;const Ea=be({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),pi="http://www.w3.org/1998/Math/MathML",hi="http://www.w3.org/2000/svg",st="http://www.w3.org/1999/xhtml";let Ps=st,to=!1,so=null;const lc=be({},[pi,hi,st],co),Ca=gu(["mi","mo","mn","ms","mtext"]);let no=be({},Ca);const Ba=gu(["annotation-xml"]);let io=be({},Ba);const dc=be({},["title","style","font","a","script"]);let pn=null;const mc=["application/xhtml+xml","text/html"],cc="text/html";let Ze=null,Rs=null;const gc=t.createElement("form"),ya=function(v){return v instanceof RegExp||v instanceof Function},oo=function(){let v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Rs&&Rs===v)return;(!v||typeof v!="object")&&(v={}),v=bu(v),pn=mc.indexOf(v.PARSER_MEDIA_TYPE)===-1?cc:v.PARSER_MEDIA_TYPE,Ze=pn==="application/xhtml+xml"?co:Dn,C=Ut(v,"ALLOWED_TAGS",w,{transform:Ze}),_=Ut(v,"ALLOWED_ATTR",$,{transform:Ze}),so=Ut(v,"ALLOWED_NAMESPACES",lc,{transform:co}),uo=Ut(v,"ADD_URI_SAFE_ATTR",Ea,{transform:Ze,base:Ea}),Ye=Ut(v,"ADD_DATA_URI_TAGS",va,{transform:Ze,base:va}),ye=Ut(v,"FORBID_CONTENTS",Re,{transform:Ze}),S=Ut(v,"FORBID_TAGS",bu({}),{transform:Ze}),W=Ut(v,"FORBID_ATTR",bu({}),{transform:Ze}),Ke=ru(v,"USE_PROFILES")?v.USE_PROFILES&&typeof v.USE_PROFILES=="object"?bu(v.USE_PROFILES):v.USE_PROFILES:!1,H=v.ALLOW_ARIA_ATTR!==!1,j=v.ALLOW_DATA_ATTR!==!1,re=v.ALLOW_UNKNOWN_PROTOCOLS||!1,X=v.ALLOW_SELF_CLOSE_IN_ATTR!==!1,oe=v.SAFE_FOR_TEMPLATES||!1,ae=v.SAFE_FOR_XML!==!1,ge=v.WHOLE_DOCUMENT||!1,d=v.RETURN_DOM||!1,c=v.RETURN_DOM_FRAGMENT||!1,f=v.RETURN_TRUSTED_TYPE||!1,qe=v.FORCE_BODY||!1,x=v.SANITIZE_DOM!==!1,k=v.SANITIZE_NAMED_PROPS||!1,q=v.KEEP_CONTENT!==!1,Oe=v.IN_PLACE||!1,$u=Vc(v.ALLOWED_URI_REGEXP)?v.ALLOWED_URI_REGEXP:$a,Ps=typeof v.NAMESPACE=="string"?v.NAMESPACE:st,no=ru(v,"MATHML_TEXT_INTEGRATION_POINTS")&&v.MATHML_TEXT_INTEGRATION_POINTS&&typeof v.MATHML_TEXT_INTEGRATION_POINTS=="object"?bu(v.MATHML_TEXT_INTEGRATION_POINTS):be({},Ca),io=ru(v,"HTML_INTEGRATION_POINTS")&&v.HTML_INTEGRATION_POINTS&&typeof v.HTML_INTEGRATION_POINTS=="object"?bu(v.HTML_INTEGRATION_POINTS):be({},Ba);const R=ru(v,"CUSTOM_ELEMENT_HANDLING")&&v.CUSTOM_ELEMENT_HANDLING&&typeof v.CUSTOM_ELEMENT_HANDLING=="object"?bu(v.CUSTOM_ELEMENT_HANDLING):Hs(null);if(z=Hs(null),ru(R,"tagNameCheck")&&ya(R.tagNameCheck)&&(z.tagNameCheck=R.tagNameCheck),ru(R,"attributeNameCheck")&&ya(R.attributeNameCheck)&&(z.attributeNameCheck=R.attributeNameCheck),ru(R,"allowCustomizedBuiltInElements")&&typeof R.allowCustomizedBuiltInElements=="boolean"&&(z.allowCustomizedBuiltInElements=R.allowCustomizedBuiltInElements),hu(z),oe&&(j=!1),c&&(d=!0),Ke&&(C=be({},ja),_=Hs(null),Ke.html===!0&&(be(C,La),be(_,Ia)),Ke.svg===!0&&(be(C,go),be(_,ho),be(_,yi)),Ke.svgFilters===!0&&(be(C,fo),be(_,ho),be(_,yi)),Ke.mathMl===!0&&(be(C,po),be(_,Ma),be(_,yi))),U.tagCheck=null,U.attributeCheck=null,ru(v,"ADD_TAGS")&&(typeof v.ADD_TAGS=="function"?U.tagCheck=v.ADD_TAGS:Yt(v.ADD_TAGS)&&(C===w&&(C=bu(C)),be(C,v.ADD_TAGS,Ze))),ru(v,"ADD_ATTR")&&(typeof v.ADD_ATTR=="function"?U.attributeCheck=v.ADD_ATTR:Yt(v.ADD_ATTR)&&(_===$&&(_=bu(_)),be(_,v.ADD_ATTR,Ze))),ru(v,"ADD_URI_SAFE_ATTR")&&Yt(v.ADD_URI_SAFE_ATTR)&&be(uo,v.ADD_URI_SAFE_ATTR,Ze),ru(v,"FORBID_CONTENTS")&&Yt(v.FORBID_CONTENTS)&&(ye===Re&&(ye=bu(ye)),be(ye,v.FORBID_CONTENTS,Ze)),ru(v,"ADD_FORBID_CONTENTS")&&Yt(v.ADD_FORBID_CONTENTS)&&(ye===Re&&(ye=bu(ye)),be(ye,v.ADD_FORBID_CONTENTS,Ze)),q&&(C["#text"]=!0),ge&&be(C,["html","head","body"]),C.table&&(be(C,["tbody"]),delete S.tbody),v.TRUSTED_TYPES_POLICY){if(typeof v.TRUSTED_TYPES_POLICY.createHTML!="function")throw rs('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof v.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw rs('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const L=I;I=v.TRUSTED_TYPES_POLICY;try{Y=b("")}catch(J){throw I=L,J}}else v.TRUSTED_TYPES_POLICY===null?(I=void 0,Y=""):(I===void 0&&(I=V()),I&&typeof Y=="string"&&(Y=b("")));gu&&gu(v),Rs=v},xa=be({},[...go,...fo,...Wc]),Aa=be({},[...po,...Hc]),fc=function(v,R,L){return R.namespaceURI===st?v==="svg":R.namespaceURI===pi?v==="svg"&&(L==="annotation-xml"||no[L]):!!xa[v]},pc=function(v,R,L){return R.namespaceURI===st?v==="math":R.namespaceURI===hi?v==="math"&&io[L]:!!Aa[v]},hc=function(v,R,L){return R.namespaceURI===hi&&!io[L]||R.namespaceURI===pi&&!no[L]?!1:!Aa[v]&&(dc[v]||!xa[v])},vc=function(v){let R=B(v);(!R||!R.tagName)&&(R={namespaceURI:Ps,tagName:"template"});const L=Dn(v.tagName),J=Dn(R.tagName);return so[v.namespaceURI]?v.namespaceURI===hi?fc(L,R,J):v.namespaceURI===pi?pc(L,R,J):v.namespaceURI===st?hc(L,R,J):!!(pn==="application/xhtml+xml"&&so[v.namespaceURI]):!1},is=function(v){Is(u.removed,{element:v});try{B(v).removeChild(v)}catch{if(y(v),!B(v))throw rs("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},vi=function(v){ro(v);const R=F(v);if(R){const J=[];js(R,he=>{Is(J,he)}),js(J,he=>{try{y(he)}catch{}})}const L=O(v);if(L)for(let J=L.length-1;J>=0;--J){const he=L[J],ve=he&&he.name;if(typeof ve=="string")try{v.removeAttribute(ve)}catch{}}},os=function(v,R){try{Is(u.removed,{attribute:R.getAttributeNode(v),from:R})}catch{Is(u.removed,{attribute:null,from:R})}if(R.removeAttribute(v),v==="is")if(d||c)try{is(R)}catch{}else try{R.setAttribute(v,"")}catch{}},Ec=function(v){const R=O(v);if(R)for(let L=R.length-1;L>=0;--L){const J=R[L],he=J&&J.name;if(!(typeof he!="string"||_[Ze(he)]))try{v.removeAttribute(he)}catch{}}},ro=function(v){const R=[v];for(;R.length>0;){const L=R.pop();(N?N(L):L.nodeType)===Pu.element&&Ec(L);const J=F(L);if(J)for(let he=J.length-1;he>=0;--he)R.push(J[he])}},Cc=function(v){if(!ae)return;const R=[v];for(;R.length>0;){const L=R.pop(),J=N?N(L):L.nodeType;if(J===Pu.processingInstruction||J===Pu.comment&&ou(Va,L.data)){try{y(L)}catch{}continue}if(J===Pu.element){const ve=L,Le=Ze(K?K(L):L.nodeName);try{ve.hasAttribute&&ve.hasAttribute("patchsrc")&&ve.removeAttribute("patchsrc"),ve.hasAttribute&&ve.hasAttribute("for")&&Le!=="label"&&Le!=="output"&&ve.removeAttribute("for")}catch{}}const he=F(L);if(he)for(let ve=he.length-1;ve>=0;--ve)R.push(he[ve])}},wa=function(v){let R=null,L=null;if(qe)v=""+v;else{const ve=Ta(v,/^[\r\n\t ]+/);L=ve&&ve[0]}pn==="application/xhtml+xml"&&Ps===st&&(v=''+v+"");const J=I?b(v):v;if(Ps===st)try{R=new l().parseFromString(J,pn)}catch{}if(!R||!R.documentElement){R=Z.createDocument(Ps,"template",null);try{R.documentElement.innerHTML=to?Y:J}catch{}}const he=R.body||R.documentElement;return v&&L&&he.insertBefore(t.createTextNode(L),he.childNodes[0]||null),Ps===st?de.call(R,ge?"html":"body")[0]:ge?R.documentElement:he},ba=function(v){return Q.call(v.ownerDocument||v,v,a.SHOW_ELEMENT|a.SHOW_COMMENT|a.SHOW_TEXT|a.SHOW_PROCESSING_INSTRUCTION|a.SHOW_CDATA_SECTION,null)},Ei=function(v){return v=vn(v,xe," "),v=vn(v,He," "),v=vn(v,Se," "),v},ao=function(v){var R;v.normalize();const L=Q.call(v.ownerDocument||v,v,a.SHOW_TEXT|a.SHOW_COMMENT|a.SHOW_CDATA_SECTION|a.SHOW_PROCESSING_INSTRUCTION,null);let J=L.nextNode();for(;J;)J.data=Ei(J.data),J=L.nextNode();const he=(R=v.querySelectorAll)===null||R===void 0?void 0:R.call(v,"template");he&&js(he,ve=>{Ls(ve.content)&&ao(ve.content)})},Ci=function(v){const R=K?K(v):null;return typeof R!="string"||Ze(R)!=="form"?!1:typeof v.nodeName!="string"||typeof v.textContent!="string"||typeof v.removeChild!="function"||v.attributes!==O(v)||typeof v.removeAttribute!="function"||typeof v.setAttribute!="function"||typeof v.namespaceURI!="string"||typeof v.insertBefore!="function"||typeof v.hasChildNodes!="function"||v.nodeType!==N(v)||v.childNodes!==F(v)},Ls=function(v){if(!N||typeof v!="object"||v===null)return!1;try{return N(v)===Pu.documentFragment}catch{return!1}},hn=function(v){if(!N||typeof v!="object"||v===null)return!1;try{return typeof N(v)=="number"}catch{return!1}};function nt(v,R,L){v.length!==0&&js(v,J=>{J.call(u,R,L,Rs)})}const Bc=function(v,R){return!!(ae&&v.hasChildNodes()&&!hn(v.firstElementChild)&&ou(Ua,v.textContent)&&ou(Ua,v.innerHTML)||ae&&v.namespaceURI===st&&R==="style"&&hn(v.firstElementChild)||v.nodeType===Pu.processingInstruction||ae&&v.nodeType===Pu.comment&&ou(Va,v.data))},yc=function(v,R){if(!S[R]&&ka(R)&&(z.tagNameCheck instanceof RegExp&&ou(z.tagNameCheck,R)||z.tagNameCheck instanceof Function&&z.tagNameCheck(R)))return!1;if(q&&!ye[R]){const L=B(v),J=F(v);if(J&&L){const he=J.length;for(let ve=he-1;ve>=0;--ve){const Le=Oe?J[ve]:h(J[ve],!0);L.insertBefore(Le,E(v))}}}return is(v),!0},Da=function(v,R){if(nt(ie.beforeSanitizeElements,v,null),v!==R&&B(v)===null)return!0;if(Ci(v))return is(v),!0;const L=Ze(K?K(v):v.nodeName);if(nt(ie.uponSanitizeElement,v,{tagName:L,allowedTags:C}),v!==R&&B(v)===null)return!0;if(Bc(v,L))return is(v),!0;if(S[L]||!(U.tagCheck instanceof Function&&U.tagCheck(L))&&!C[L]){const J=yc(v,L);return J===!1&&nt(ie.afterSanitizeElements,v,null),J}if((N?N(v):v.nodeType)===Pu.element&&!vc(v)||(L==="noscript"||L==="noembed"||L==="noframes")&&ou(ug,v.innerHTML))return is(v),!0;if(oe&&v.nodeType===Pu.text){const J=Ei(v.textContent);v.textContent!==J&&(Is(u.removed,{element:v.cloneNode()}),v.textContent=J)}return nt(ie.afterSanitizeElements,v,null),!1},Fa=function(v,R,L){if(W[R]||ae&&R==="patchsrc"||ae&&R==="for"&&v!=="label"&&v!=="output"||x&&(R==="id"||R==="name")&&(L in t||L in gc))return!1;const J=_[R]||U.attributeCheck instanceof Function&&U.attributeCheck(R,v);if(!(j&&ou(Pe,R))&&!(H&&ou(pe,R))){if(J){if(!uo[R]&&!ou($u,vn(L,Nu,""))&&!((R==="src"||R==="xlink:href"||R==="href")&&v!=="script"&&za(L,"data:")===0&&Ye[v])&&!(re&&!ou($e,vn(L,Nu,"")))&&L)return!1}else if(!(ka(v)&&(z.tagNameCheck instanceof RegExp&&ou(z.tagNameCheck,v)||z.tagNameCheck instanceof Function&&z.tagNameCheck(v))&&(z.attributeNameCheck instanceof RegExp&&ou(z.attributeNameCheck,R)||z.attributeNameCheck instanceof Function&&z.attributeNameCheck(R,v))||R==="is"&&z.allowCustomizedBuiltInElements&&(z.tagNameCheck instanceof RegExp&&ou(z.tagNameCheck,L)||z.tagNameCheck instanceof Function&&z.tagNameCheck(L))))return!1}return!0},xc=be({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),ka=function(v){return!xc[Dn(v)]&&ou(tt,v)},Ac=function(v,R,L,J){if(I&&typeof g=="object"&&typeof g.getAttributeType=="function"&&!L)switch(g.getAttributeType(v,R)){case"TrustedHTML":return b(J);case"TrustedScriptURL":return T(J)}return J},wc=function(v,R,L,J){try{L?v.setAttributeNS(L,R,J):v.setAttribute(R,J),Ci(v)?is(v):Oa(u.removed)}catch{os(R,v)}},Na=function(v){nt(ie.beforeSanitizeAttributes,v,null);const R=v.attributes;if(!R||Ci(v))return;const L={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:_,forceKeepAttr:void 0};let J=R.length;const he=Ze(v.nodeName);for(;J--;){const ve=R[J],Le=ve.name,$t=ve.namespaceURI,mo=ve.value,zu=Ze(Le),Yu=mo;let Xe=Le==="value"?Yu:Lc(Yu);if(L.attrName=zu,L.attrValue=Xe,L.keepAttr=!0,L.forceKeepAttr=void 0,nt(ie.uponSanitizeAttribute,v,L),Xe=L.attrValue,k&&(zu==="id"||zu==="name")&&za(Xe,P)!==0&&(os(Le,v),Xe=P+Xe),ae&&ou(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Xe)){os(Le,v);continue}if(zu==="attributename"&&Ta(Xe,"href")){os(Le,v);continue}if(!L.forceKeepAttr){if(!L.keepAttr){os(Le,v);continue}if(!X&&ou(tg,Xe)){os(Le,v);continue}if(oe&&(Xe=Ei(Xe)),!Fa(he,zu,Xe)){os(Le,v);continue}Xe=Ac(he,zu,$t,Xe),Xe!==Yu&&wc(v,Le,$t,Xe)}}nt(ie.afterSanitizeAttributes,v,null)},Bi=function(v){let R=null;const L=ba(v);for(nt(ie.beforeSanitizeShadowDOM,v,null);R=L.nextNode();)if(nt(ie.uponSanitizeShadowNode,R,null),Da(R,v),Na(R),Ls(R.content)&&Bi(R.content),(N?N(R):R.nodeType)===Pu.element){const J=A(R);Ls(J)&&(lo(J),Bi(J))}nt(ie.afterSanitizeShadowDOM,v,null)},lo=function(v){const R=[{node:v,shadow:null}];for(;R.length>0;){const L=R.pop();if(L.shadow){Bi(L.shadow);continue}const J=L.node,he=(N?N(J):J.nodeType)===Pu.element,ve=F(J);if(ve)for(let Le=ve.length-1;Le>=0;--Le)R.push({node:ve[Le],shadow:null});if(he){const Le=K?K(J):null;if(typeof Le=="string"&&Ze(Le)==="template"){const $t=J.content;Ls($t)&&R.push({node:$t,shadow:null})}}if(he){const Le=A(J);Ls(Le)&&R.push({node:null,shadow:Le},{node:Le,shadow:null})}}};return u.sanitize=function(v){let R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},L=null,J=null,he=null,ve=null;if(to=!v,to&&(v=""),typeof v!="string"&&!hn(v)&&(v=Uc(v),typeof v!="string"))throw rs("dirty is not a string, aborting");if(!u.isSupported)return v;Ae?(C=_e,_=De):oo(R),(ie.uponSanitizeElement.length>0||ie.uponSanitizeAttribute.length>0)&&(C=bu(C)),ie.uponSanitizeAttribute.length>0&&(_=bu(_)),u.removed=[];const Le=Oe&&typeof v!="string"&&hn(v);if(Le){Cc(v);const Yu=K?K(v):v.nodeName;if(typeof Yu=="string"){const Xe=Ze(Yu);if(!C[Xe]||S[Xe])throw vi(v),rs("root node is forbidden and cannot be sanitized in-place")}if(Ci(v))throw vi(v),rs("root node is clobbered and cannot be sanitized in-place");try{lo(v)}catch(Xe){throw vi(v),Xe}}else if(hn(v))L=wa(""),J=L.ownerDocument.importNode(v,!0),J.nodeType===Pu.element&&J.nodeName==="BODY"||J.nodeName==="HTML"?L=J:L.appendChild(J),lo(J);else{if(!d&&!oe&&!ge&&v.indexOf("<")===-1)return I&&f?b(v):v;if(L=wa(v),!L)return d?null:f?Y:""}L&&qe&&is(L.firstChild);const $t=Le?v:L,mo=ba($t);try{for(;he=mo.nextNode();)Da(he,$t),Na(he),Ls(he.content)&&Bi(he.content)}catch(Yu){throw Le&&(vi(v),js(u.removed,Xe=>{Xe.element&&ro(Xe.element)})),Yu}if(Le)return js(u.removed,Yu=>{Yu.element&&ro(Yu.element)}),oe&&ao(v),v;if(d){if(oe&&ao(L),c)for(ve=te.call(L.ownerDocument);L.firstChild;)ve.appendChild(L.firstChild);else ve=L;return(_.shadowroot||_.shadowrootmode)&&(ve=le.call(s,ve,!0)),ve}let zu=ge?L.outerHTML:L.innerHTML;return ge&&C["!doctype"]&&L.ownerDocument&&L.ownerDocument.doctype&&L.ownerDocument.doctype.name&&ou(Qc,L.ownerDocument.doctype.name)&&(zu=" +`+zu),oe&&(zu=Ei(zu)),I&&f?b(zu):zu},u.setConfig=function(){let v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};oo(v),Ae=!0,_e=C,De=_},u.clearConfig=function(){Rs=null,Ae=!1,_e=null,De=null,I=se,Y=""},u.isValidAttribute=function(v,R,L){Rs||oo({});const J=Ze(v),he=Ze(R);return Fa(J,he,L)},u.addHook=function(v,R){typeof R=="function"&&ru(ie,v)&&Is(ie[v],R)},u.removeHook=function(v,R){if(ru(ie,v)){if(R!==void 0){const L=Pc(ie[v],R);return L===-1?void 0:Rc(ie[v],L,1)[0]}return Oa(ie[v])}},u.removeHooks=function(v){ru(ie,v)&&(ie[v]=[])},u.removeAllHooks=function(){ie=Wa()},u}var ud=ed();function F0(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function yB(e){if(Object.prototype.hasOwnProperty.call(e,"__esModule"))return e;var u=e.default;if(typeof u=="function"){var t=function s(){var n=!1;try{n=this instanceof s}catch{}return n?Reflect.construct(u,arguments,this.constructor):u.apply(this,arguments)};t.prototype=u.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(e).forEach(function(s){var n=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,n.get?n:{enumerable:!0,get:function(){return e[s]}})}),t}var vo,Ha;function ig(){if(Ha)return vo;Ha=1;var e=/["'&<>]/;vo=u;function u(t){var s=""+t,n=e.exec(s);if(!n)return s;var i,o="",r=0,a=0;for(r=n.index;ru)}}globalThis._oc_l10n_registry_translations??={},globalThis._oc_l10n_registry_plural_functions??={};function Ti(e,u,t,s,n){const i=typeof t=="object"?t:void 0,o=typeof s=="number"?s:typeof t=="number"?t:void 0,r={escape:!0,sanitize:!0,...typeof n=="object"?n:typeof s=="object"?s:{}},a=y=>y,m=(r.sanitize?ud.sanitize:a)||a,l=r.escape?Ga:a,g=y=>typeof y=="string"||typeof y=="number",p=(y,E,F)=>y.replace(/%n/g,""+F).replace(/{([^{}]*)}/g,(B,A)=>{if(E===void 0||!(A in E))return l(B);const O=E[A];return g(O)?l(`${O}`):typeof O=="object"&&g(O.value)?(O.escape!==!1?Ga:a)(`${O.value}`):l(B)});let h=(n?.bundle??td(e)).translations[u]||u;return h=Array.isArray(h)?h[0]:h,m(typeof i=="object"||o!==void 0?p(h,i,o):h)}function lg(e,u,t,s,n,i){const o="_"+u+"_::_"+t+"_",r=i?.bundle??td(e),a=r.translations[o];if(typeof a<"u"){const m=a;if(Array.isArray(m)){const l=r.pluralFunction(s);return Ti(e,m[l],n,s,i)}}return s===1?Ti(e,u,n,s,i):Ti(e,t,n,s,i)}function dg(e,u=k0()){switch(u==="pt-BR"&&(u="xbr"),u.length>3&&(u=u.substring(0,u.lastIndexOf("-"))),u){case"az":case"bo":case"dz":case"id":case"ja":case"jv":case"ka":case"km":case"kn":case"ko":case"ms":case"th":case"tr":case"vi":case"zh":return 0;case"af":case"bn":case"bg":case"ca":case"da":case"de":case"el":case"en":case"eo":case"es":case"et":case"eu":case"fa":case"fi":case"fo":case"fur":case"fy":case"gl":case"gu":case"ha":case"he":case"hu":case"is":case"it":case"ku":case"lb":case"ml":case"mn":case"mr":case"nah":case"nb":case"ne":case"nl":case"nn":case"no":case"oc":case"om":case"or":case"pa":case"pap":case"ps":case"pt":case"so":case"sq":case"sv":case"sw":case"ta":case"te":case"tk":case"ur":case"zu":return e===1?0:1;case"am":case"bh":case"fil":case"fr":case"gun":case"hi":case"hy":case"ln":case"mg":case"nso":case"xbr":case"ti":case"wa":return e===0||e===1?0:1;case"be":case"bs":case"hr":case"ru":case"sh":case"sr":case"uk":return e%10===1&&e%100!==11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2;case"cs":case"sk":return e===1?0:e>=2&&e<=4?1:2;case"ga":return e===1?0:e===2?1:2;case"lt":return e%10===1&&e%100!==11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2;case"sl":return e%100===1?0:e%100===2?1:e%100===3||e%100===4?2:3;case"mk":return e%10===1?0:1;case"mt":return e===1?0:e===0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3;case"lv":return e===0?0:e%10===1&&e%100!==11?1:2;case"pl":return e===1?0:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?1:2;case"cy":return e===1?0:e===2?1:e===8||e===11?2:3;case"ro":return e===1?0:e===0||e%100>0&&e%100<20?1:2;case"ar":return e===0?0:e===1?1:e===2?2:e%100>=3&&e%100<=10?3:e%100>=11&&e%100<=99?4:5;default:return 0}}const Mn=globalThis||void 0||self;function _r(e){const u=Object.create(null);for(const t of e.split(","))u[t]=1;return t=>t in u}const Ne={},Js=[],Gu=()=>{},sd=()=>!1,N0=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),S0=e=>e.startsWith("onUpdate:"),eu=Object.assign,Or=(e,u)=>{const t=e.indexOf(u);t>-1&&e.splice(t,1)},mg=Object.prototype.hasOwnProperty,je=(e,u)=>mg.call(e,u),ce=Array.isArray,Qs=e=>ii(e)==="[object Map]",nd=e=>ii(e)==="[object Set]",Ka=e=>ii(e)==="[object Date]",fe=e=>typeof e=="function",We=e=>typeof e=="string",ju=e=>typeof e=="symbol",ze=e=>e!==null&&typeof e=="object",id=e=>(ze(e)||fe(e))&&fe(e.then)&&fe(e.catch),od=Object.prototype.toString,ii=e=>od.call(e),cg=e=>ii(e).slice(8,-1),rd=e=>ii(e)==="[object Object]",_0=e=>We(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Sn=_r(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),O0=e=>{const u=Object.create(null);return(t=>u[t]||(u[t]=e(t)))},gg=/-\w/g,xu=O0(e=>e.replace(gg,u=>u.slice(1).toUpperCase())),fg=/\B([A-Z])/g,jt=O0(e=>e.replace(fg,"-$1").toLowerCase()),T0=O0(e=>e.charAt(0).toUpperCase()+e.slice(1)),zi=O0(e=>e?`on${T0(e)}`:""),du=(e,u)=>!Object.is(e,u),Pi=(e,...u)=>{for(let t=0;t{Object.defineProperty(e,u,{configurable:!0,enumerable:!1,writable:s,value:t})},Tr=e=>{const u=parseFloat(e);return isNaN(u)?e:u},pg=e=>{const u=We(e)?Number(e):NaN;return isNaN(u)?e:u};let qa;const Ki=()=>qa||(qa=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof Mn<"u"?Mn:{});function xs(e){if(ce(e)){const u={};for(let t=0;t{if(t){const s=t.split(vg);s.length>1&&(u[s[0].trim()]=s[1].trim())}}),u}function Iu(e){let u="";if(We(e))u=e;else if(ce(e))for(let t=0;t!!(e&&e.__v_isRef===!0),Mu=e=>We(e)?e:e==null?"":ce(e)||ze(e)&&(e.toString===od||!fe(e.toString))?dd(e)?Mu(e.value):JSON.stringify(e,md,2):String(e),md=(e,u)=>dd(u)?md(e,u.value):Qs(u)?{[`Map(${u.size})`]:[...u.entries()].reduce((t,[s,n],i)=>(t[Eo(s,i)+" =>"]=n,t),{})}:nd(u)?{[`Set(${u.size})`]:[...u.values()].map(t=>Eo(t))}:ju(u)?Eo(u):ze(u)&&!ce(u)&&!rd(u)?String(u):u,Eo=(e,u="")=>{var t;return ju(e)?`Symbol(${(t=e.description)!=null?t:u})`:e};function Ag(e){return e==null?"initial":typeof e=="string"?e===""?" ":e:String(e)}let iu;class cd{constructor(u=!1){this.detached=u,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!u&&iu&&(iu.active?(this.parent=iu,this.index=(iu.scopes||(iu.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let u,t;if(this.scopes){const s=this.scopes.slice();for(u=0,t=s.length;u0&&--this._on===0){if(iu===this)iu=this.prevScope;else{let u=iu;for(;u;){if(u.prevScope===this){u.prevScope=this.prevScope;break}u=u.prevScope}}this.prevScope=void 0}}stop(u){if(this._active){this._active=!1;let t,s;for(t=0,s=this.effects.length;t0)return;if(On){let u=On;for(On=void 0;u;){const t=u.next;u.next=void 0,u.flags&=-9,u=t}}let e;for(;_n;){let u=_n;for(_n=void 0;u;){const t=u.next;if(u.next=void 0,u.flags&=-9,u.flags&1)try{u.trigger()}catch(s){e||(e=s)}u=t}}if(e)throw e}function hd(e){for(let u=e.deps;u;u=u.nextDep)u.version=-1,u.prevActiveLink=u.dep.activeLink,u.dep.activeLink=u}function vd(e){let u,t=e.depsTail,s=t;for(;s;){const n=s.prevDep;s.version===-1?(s===t&&(t=n),jr(s),Dg(s)):u=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=n}e.deps=u,e.depsTail=t}function Qo(e){for(let u=e.deps;u;u=u.nextDep)if(u.dep.version!==u.version||u.dep.computed&&(Ed(u.dep.computed)||u.dep.version!==u.version))return!0;return!!e._dirty}function Ed(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===$n)||(e.globalVersion=$n,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Qo(e))))return;e.flags|=2;const u=e.dep,t=Ue,s=Xu;Ue=e,Xu=!0;try{hd(e);const n=e.fn(e._value);(u.version===0||du(n,e._value))&&(e.flags|=128,e._value=n,u.version++)}catch(n){throw u.version++,n}finally{Ue=t,Xu=s,vd(e),e.flags&=-3}}function jr(e,u=!1){const{dep:t,prevSub:s,nextSub:n}=e;if(s&&(s.nextSub=n,e.prevSub=void 0),n&&(n.prevSub=s,e.nextSub=void 0),t.subs===e&&(t.subs=s,!s&&t.computed)){t.computed.flags&=-5;for(let i=t.computed.deps;i;i=i.nextDep)jr(i,!0)}!u&&!--t.sc&&t.map&&t.map.delete(t.key)}function Dg(e){const{prevDep:u,nextDep:t}=e;u&&(u.nextDep=t,e.prevDep=void 0),t&&(t.prevDep=u,e.nextDep=void 0)}let Xu=!0;const Cd=[];function zt(){Cd.push(Xu),Xu=!1}function Pt(){const e=Cd.pop();Xu=e===void 0?!0:e}function Ya(e){const{cleanup:u}=e;if(e.cleanup=void 0,u){const t=Ue;Ue=void 0;try{u()}finally{Ue=t}}}let $n=0;class Fg{constructor(u,t){this.sub=u,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class z0{constructor(u){this.computed=u,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(u){if(!Ue||!Xu||Ue===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==Ue)t=this.activeLink=new Fg(Ue,this),Ue.deps?(t.prevDep=Ue.depsTail,Ue.depsTail.nextDep=t,Ue.depsTail=t):Ue.deps=Ue.depsTail=t,Bd(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){const s=t.nextDep;s.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=s),t.prevDep=Ue.depsTail,t.nextDep=void 0,Ue.depsTail.nextDep=t,Ue.depsTail=t,Ue.deps===t&&(Ue.deps=s)}return t}trigger(u){this.version++,$n++,this.notify(u)}notify(u){Rr();try{for(let t=this.subs;t;t=t.prevSub)t.sub.notify()&&t.sub.dep.notify()}finally{Lr()}}}function Bd(e){if(e.dep.sc++,e.sub.flags&4){const u=e.dep.computed;if(u&&!e.dep.subs){u.flags|=20;for(let s=u.deps;s;s=s.nextDep)Bd(s)}const t=e.dep.subs;t!==e&&(e.prevSub=t,t&&(t.nextSub=e)),e.dep.subs=e}}const qi=new WeakMap,As=Symbol(""),er=Symbol(""),Un=Symbol("");function Bu(e,u,t){if(Xu&&Ue){let s=qi.get(e);s||qi.set(e,s=new Map);let n=s.get(t);n||(s.set(t,n=new z0),n.map=s,n.key=t),n.track()}}function Dt(e,u,t,s,n,i){const o=qi.get(e);if(!o){$n++;return}const r=a=>{a&&a.trigger()};if(Rr(),u==="clear")o.forEach(r);else{const a=ce(e),m=a&&_0(t);if(a&&t==="length"){const l=Number(s);o.forEach((g,p)=>{(p==="length"||p===Un||!ju(p)&&p>=l)&&r(g)})}else switch((t!==void 0||o.has(void 0))&&r(o.get(t)),m&&r(o.get(Un)),u){case"add":a?m&&r(o.get("length")):(r(o.get(As)),Qs(e)&&r(o.get(er)));break;case"delete":a||(r(o.get(As)),Qs(e)&&r(o.get(er)));break;case"set":Qs(e)&&r(o.get(As));break}}Lr()}function kg(e,u){const t=qi.get(e);return t&&t.get(u)}function Ms(e){const u=ke(e);return u===e?u:(Bu(u,"iterate",Un),Lu(e)?u:u.map(Qu))}function P0(e){return Bu(e=ke(e),"iterate",Un),e}function mt(e,u){return Rt(e)?Hn(ws(e)?Qu(u):u):Qu(u)}const Ng={__proto__:null,[Symbol.iterator](){return Bo(this,Symbol.iterator,e=>mt(this,e))},concat(...e){return Ms(this).concat(...e.map(u=>ce(u)?Ms(u):u))},entries(){return Bo(this,"entries",e=>(e[1]=mt(this,e[1]),e))},every(e,u){return xt(this,"every",e,u,void 0,arguments)},filter(e,u){return xt(this,"filter",e,u,t=>t.map(s=>mt(this,s)),arguments)},find(e,u){return xt(this,"find",e,u,t=>mt(this,t),arguments)},findIndex(e,u){return xt(this,"findIndex",e,u,void 0,arguments)},findLast(e,u){return xt(this,"findLast",e,u,t=>mt(this,t),arguments)},findLastIndex(e,u){return xt(this,"findLastIndex",e,u,void 0,arguments)},forEach(e,u){return xt(this,"forEach",e,u,void 0,arguments)},includes(...e){return yo(this,"includes",e)},indexOf(...e){return yo(this,"indexOf",e)},join(e){return Ms(this).join(e)},lastIndexOf(...e){return yo(this,"lastIndexOf",e)},map(e,u){return xt(this,"map",e,u,void 0,arguments)},pop(){return Cn(this,"pop")},push(...e){return Cn(this,"push",e)},reduce(e,...u){return Za(this,"reduce",e,u)},reduceRight(e,...u){return Za(this,"reduceRight",e,u)},shift(){return Cn(this,"shift")},some(e,u){return xt(this,"some",e,u,void 0,arguments)},splice(...e){return Cn(this,"splice",e)},toReversed(){return Ms(this).toReversed()},toSorted(e){return Ms(this).toSorted(e)},toSpliced(...e){return Ms(this).toSpliced(...e)},unshift(...e){return Cn(this,"unshift",e)},values(){return Bo(this,"values",e=>mt(this,e))}};function Bo(e,u,t){const s=P0(e),n=s[u]();return s!==e&&!Lu(e)&&(n._next=n.next,n.next=()=>{const i=n._next();return i.done||(i.value=t(i.value)),i}),n}const Sg=Array.prototype;function xt(e,u,t,s,n,i){const o=P0(e),r=o!==e&&!Lu(e),a=o[u];if(a!==Sg[u]){const g=a.apply(e,i);return r?Qu(g):g}let m=t;o!==e&&(r?m=function(g,p){return t.call(this,mt(e,g),p,e)}:t.length>2&&(m=function(g,p){return t.call(this,g,p,e)}));const l=a.call(o,m,s);return r&&n?n(l):l}function Za(e,u,t,s){const n=P0(e),i=n!==e&&!Lu(e);let o=t,r=!1;n!==e&&(i?(r=s.length===0,o=function(m,l,g){return r&&(r=!1,m=mt(e,m)),t.call(this,m,mt(e,l),g,e)}):t.length>3&&(o=function(m,l,g){return t.call(this,m,l,g,e)}));const a=n[u](o,...s);return r?mt(e,a):a}function yo(e,u,t){const s=ke(e);Bu(s,"iterate",Un);const n=s[u](...t);return(n===-1||n===!1)&&j0(t[0])?(t[0]=ke(t[0]),s[u](...t)):n}function Cn(e,u,t=[]){zt(),Rr();const s=ke(e)[u].apply(e,t);return Lr(),Pt(),s}const _g=_r("__proto__,__v_isRef,__isVue"),yd=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ju));function Og(e){ju(e)||(e=String(e));const u=ke(this);return Bu(u,"has",e),u.hasOwnProperty(e)}class xd{constructor(u=!1,t=!1){this._isReadonly=u,this._isShallow=t}get(u,t,s){if(t==="__v_skip")return u.__v_skip;const n=this._isReadonly,i=this._isShallow;if(t==="__v_isReactive")return!n;if(t==="__v_isReadonly")return n;if(t==="__v_isShallow")return i;if(t==="__v_raw")return s===(n?i?kd:Fd:i?Dd:bd).get(u)||Object.getPrototypeOf(u)===Object.getPrototypeOf(s)?u:void 0;const o=ce(u);if(!n){let a;if(o&&(a=Ng[t]))return a;if(t==="hasOwnProperty")return Og}const r=Reflect.get(u,t,su(u)?u:s);if((ju(t)?yd.has(t):_g(t))||(n||Bu(u,"get",t),i))return r;if(su(r)){const a=o&&_0(t)?r:r.value;return n&&ze(a)?Wn(a):a}return ze(r)?n?Wn(r):Vn(r):r}}class Ad extends xd{constructor(u=!1){super(!1,u)}set(u,t,s,n){let i=u[t];const o=ce(u)&&_0(t);if(!this._isShallow){const m=Rt(i);if(!Lu(s)&&!Rt(s)&&(i=ke(i),s=ke(s)),!o&&su(i)&&!su(s))return m||(i.value=s),!0}const r=o?Number(t)e,xi=e=>Reflect.getPrototypeOf(e);function Lg(e,u,t){return function(...s){const n=this.__v_raw,i=ke(n),o=Qs(i),r=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,m=n[e](...s),l=t?ur:u?Hn:Qu;return!u&&Bu(i,"iterate",a?er:As),eu(Object.create(m),{next(){const{value:g,done:p}=m.next();return p?{value:g,done:p}:{value:r?[l(g[0]),l(g[1])]:l(g),done:p}}})}}function Ai(e){return function(...u){return e==="delete"?!1:e==="clear"?void 0:this}}function jg(e,u){const t={get(s){const n=this.__v_raw,i=ke(n),o=ke(s);e||(du(s,o)&&Bu(i,"get",s),Bu(i,"get",o));const{has:r}=xi(i),a=u?ur:e?Hn:Qu;if(r.call(i,s))return a(n.get(s));if(r.call(i,o))return a(n.get(o));n!==i&&n.get(s)},get size(){const s=this.__v_raw;return!e&&Bu(ke(s),"iterate",As),s.size},has(s){const n=this.__v_raw,i=ke(n),o=ke(s);return e||(du(s,o)&&Bu(i,"has",s),Bu(i,"has",o)),s===o?n.has(s):n.has(s)||n.has(o)},forEach(s,n){const i=this,o=i.__v_raw,r=ke(o),a=u?ur:e?Hn:Qu;return!e&&Bu(r,"iterate",As),o.forEach((m,l)=>s.call(n,a(m),a(l),i))}};return eu(t,e?{add:Ai("add"),set:Ai("set"),delete:Ai("delete"),clear:Ai("clear")}:{add(s){const n=ke(this),i=xi(n),o=ke(s),r=!u&&!Lu(s)&&!Rt(s)?o:s;return i.has.call(n,r)||du(s,r)&&i.has.call(n,s)||du(o,r)&&i.has.call(n,o)||(n.add(r),Dt(n,"add",r,r)),this},set(s,n){!u&&!Lu(n)&&!Rt(n)&&(n=ke(n));const i=ke(this),{has:o,get:r}=xi(i);let a=o.call(i,s);a||(s=ke(s),a=o.call(i,s));const m=r.call(i,s);return i.set(s,n),a?du(n,m)&&Dt(i,"set",s,n):Dt(i,"add",s,n),this},delete(s){const n=ke(this),{has:i,get:o}=xi(n);let r=i.call(n,s);r||(s=ke(s),r=i.call(n,s)),o&&o.call(n,s);const a=n.delete(s);return r&&Dt(n,"delete",s,void 0),a},clear(){const s=ke(this),n=s.size!==0,i=s.clear();return n&&Dt(s,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(s=>{t[s]=Lg(s,e,u)}),t}function R0(e,u){const t=jg(e,u);return(s,n,i)=>n==="__v_isReactive"?!e:n==="__v_isReadonly"?e:n==="__v_raw"?s:Reflect.get(je(t,n)&&n in s?t:s,n,i)}const Ig={get:R0(!1,!1)},Mg={get:R0(!1,!0)},$g={get:R0(!0,!1)},Ug={get:R0(!0,!0)},bd=new WeakMap,Dd=new WeakMap,Fd=new WeakMap,kd=new WeakMap;function Vg(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Vn(e){return Rt(e)?e:L0(e,!1,Tg,Ig,bd)}function Wg(e){return L0(e,!1,Pg,Mg,Dd)}function Wn(e){return L0(e,!0,zg,$g,Fd)}function Hg(e){return L0(e,!0,Rg,Ug,kd)}function L0(e,u,t,s,n){if(!ze(e)||e.__v_raw&&!(u&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const i=n.get(e);if(i)return i;const o=Vg(cg(e));if(o===0)return e;const r=new Proxy(e,o===2?s:t);return n.set(e,r),r}function ws(e){return Rt(e)?ws(e.__v_raw):!!(e&&e.__v_isReactive)}function Rt(e){return!!(e&&e.__v_isReadonly)}function Lu(e){return!!(e&&e.__v_isShallow)}function j0(e){return e?!!e.__v_raw:!1}function ke(e){const u=e&&e.__v_raw;return u?ke(u):e}function Gg(e){return!je(e,"__v_skip")&&Object.isExtensible(e)&&ad(e,"__v_skip",!0),e}const Qu=e=>ze(e)?Vn(e):e,Hn=e=>ze(e)?Wn(e):e;function su(e){return e?e.__v_isRef===!0:!1}function rn(e){return Nd(e,!1)}function bs(e){return Nd(e,!0)}function Nd(e,u){return su(e)?e:new Kg(e,u)}class Kg{constructor(u,t){this.dep=new z0,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?u:ke(u),this._value=t?u:Qu(u),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(u){const t=this._rawValue,s=this.__v_isShallow||Lu(u)||Rt(u);u=s?u:ke(u),du(u,t)&&(this._rawValue=u,this._value=s?u:Qu(u),this.dep.trigger())}}function Fe(e){return su(e)?e.value:e}function Su(e){return fe(e)?e():Fe(e)}const qg={get:(e,u,t)=>u==="__v_raw"?e:Fe(Reflect.get(e,u,t)),set:(e,u,t,s)=>{const n=e[u];return su(n)&&!su(t)?(n.value=t,!0):Reflect.set(e,u,t,s)}};function Sd(e){return ws(e)?e:new Proxy(e,qg)}class Yg{constructor(u){this.__v_isRef=!0,this._value=void 0;const t=this.dep=new z0,{get:s,set:n}=u(t.track.bind(t),t.trigger.bind(t));this._get=s,this._set=n}get value(){return this._value=this._get()}set value(u){this._set(u)}}function Zg(e){return new Yg(e)}class Xg{constructor(u,t,s){this._object=u,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0,this._key=ju(t)?t:String(t),this._raw=ke(u);let n=!0,i=u;if(!ce(u)||ju(this._key)||!_0(this._key))do n=!j0(i)||Lu(i);while(n&&(i=i.__v_raw));this._shallow=n}get value(){let u=this._object[this._key];return this._shallow&&(u=Fe(u)),this._value=u===void 0?this._defaultValue:u}set value(u){if(this._shallow&&su(this._raw[this._key])){const t=this._object[this._key];if(su(t)){t.value=u;return}}this._object[this._key]=u}get dep(){return kg(this._raw,this._key)}}class Jg{constructor(u){this._getter=u,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Qg(e,u,t){return su(e)?e:fe(e)?new Jg(e):ze(e)&&arguments.length>1?ef(e,u,t):rn(e)}function ef(e,u,t){return new Xg(e,u,t)}class uf{constructor(u,t,s){this.fn=u,this.setter=t,this._value=void 0,this.dep=new z0(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=$n-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Ue!==this)return pd(this,!0),!0}get value(){const u=this.dep.track();return Ed(this),u&&(u.version=this.dep.version),this._value}set value(u){this.setter&&this.setter(u)}}function tf(e,u,t=!1){let s,n;return fe(e)?s=e:(s=e.get,n=e.set),new uf(s,n,t)}const wi={},Yi=new WeakMap;let fs;function sf(e,u=!1,t=fs){if(t){let s=Yi.get(t);s||Yi.set(t,s=[]),s.push(e)}}function nf(e,u,t=Ne){const{immediate:s,deep:n,once:i,scheduler:o,augmentJob:r,call:a}=t,m=N=>n?N:Lu(N)||n===!1||n===0?Ft(N,1):Ft(N);let l,g,p,h,y=!1,E=!1;if(su(e)?(g=()=>e.value,y=Lu(e)):ws(e)?(g=()=>m(e),y=!0):ce(e)?(E=!0,y=e.some(N=>ws(N)||Lu(N)),g=()=>e.map(N=>{if(su(N))return N.value;if(ws(N))return m(N);if(fe(N))return a?a(N,2):N()})):fe(e)?u?g=a?()=>a(e,2):e:g=()=>{if(p){zt();try{p()}finally{Pt()}}const N=fs;fs=l;try{return a?a(e,3,[h]):e(h)}finally{fs=N}}:g=Gu,u&&n){const N=g,K=n===!0?1/0:n;g=()=>Ft(N(),K)}const F=Pr(),B=()=>{l.stop(),F&&F.active&&Or(F.effects,l)};if(i&&u){const N=u;u=(...K)=>{const I=N(...K);return B(),I}}let A=E?new Array(e.length).fill(wi):wi;const O=N=>{if(!(!(l.flags&1)||!l.dirty&&!N))if(u){const K=l.run();if(N||n||y||(E?K.some((I,Y)=>du(I,A[Y])):du(K,A))){p&&p();const I=fs;fs=l;try{const Y=[K,A===wi?void 0:E&&A[0]===wi?[]:A,h];A=K,a?a(u,3,Y):u(...Y)}finally{fs=I}}}else l.run()};return r&&r(O),l=new gd(g),l.scheduler=o?()=>o(O,!1):O,h=N=>sf(N,!1,l),p=l.onStop=()=>{const N=Yi.get(l);if(N){if(a)a(N,4);else for(const K of N)K();Yi.delete(l)}},u?s?O(!0):A=l.run():o?o(O.bind(null,!0),!0):l.run(),B.pause=l.pause.bind(l),B.resume=l.resume.bind(l),B.stop=B,B}function Ft(e,u=1/0,t){if(u<=0||!ze(e)||e.__v_skip||(t=t||new Map,(t.get(e)||0)>=u))return e;if(t.set(e,u),u--,su(e))Ft(e.value,u,t);else if(ce(e))for(let s=0;s{Ft(s,u,t)});else if(rd(e)){for(const s in e)Ft(e[s],u,t);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&Ft(e[s],u,t)}return e}function oi(e,u,t,s){try{return s?e(...s):e()}catch(n){I0(n,u,t)}}function Ku(e,u,t,s){if(fe(e)){const n=oi(e,u,t,s);return n&&id(n)&&n.catch(i=>{I0(i,u,t)}),n}if(ce(e)){const n=[];for(let i=0;i>>1,n=ku[s],i=Gn(n);i=Gn(t)?ku.push(e):ku.splice(rf(u),0,e),e.flags|=1,Od()}}function Od(){Zi||(Zi=_d.then(Pd))}function Td(e){ce(e)?en.push(...e):qt&&e.id===-1?qt.splice(Gs+1,0,e):e.flags&1||(en.push(e),e.flags|=1),Od()}function Xa(e,u,t=at+1){for(;tGn(t)-Gn(s));if(en.length=0,qt){qt.push(...u);return}for(qt=u,Gs=0;Gse.id==null?e.flags&2?-1:1/0:e.id;function Pd(e){try{for(at=0;atMe;function Me(e,u=fu,t){if(!u||e._n)return e;const s=(...n)=>{s._d&&u0(-1);const i=Xi(u),o=_t.length;let r;try{r=e(...n)}finally{for(let a=_t.length;a>o;a--)Kr();Xi(i),s._d&&u0(1)}return r};return s._n=!0,s._c=!0,s._d=!0,s}function Es(e,u){if(fu===null)return e;const t=H0(fu),s=e.dirs||(e.dirs=[]);for(let n=0;n1)return t&&fe(u)?u.call(s&&s.proxy):u}}function Rd(){return!!(et()||Ds)}const cf=Symbol.for("v-scx"),gf=()=>Zt(cf);function Ld(e,u){return $0(e,null,u)}function ff(e,u){return $0(e,null,{flush:"sync"})}function St(e,u,t){return $0(e,u,t)}function $0(e,u,t=Ne){const{immediate:s,deep:n,flush:i,once:o}=t,r=eu({},t),a=u&&s||!u&&i!=="post";let m;if(Zn){if(i==="sync"){const h=gf();m=h.__watcherHandles||(h.__watcherHandles=[])}else if(!a){const h=()=>{};return h.stop=Gu,h.resume=Gu,h.pause=Gu,h}}const l=yu;r.call=(h,y,E)=>Ku(h,l,y,E);let g=!1;i==="post"?r.scheduler=h=>{Du(h,l&&l.suspense)}:i!=="sync"&&(g=!0,r.scheduler=(h,y)=>{y?h():Mr(h)}),r.augmentJob=h=>{u&&(h.flags|=4),g&&(h.flags|=2,l&&(h.id=l.uid,h.i=l))};const p=nf(e,u,r);return Zn&&(m?m.push(p):a&&p()),p}function pf(e,u,t){const s=this.proxy,n=We(e)?e.includes(".")?jd(s,e):()=>s[e]:e.bind(s,s);let i;fe(u)?i=u:(i=u.handler,t=u);const o=li(this),r=$0(n,i.bind(s),t);return o(),r}function jd(e,u){const t=u.split(".");return()=>{let s=e;for(let n=0;ne.__isTeleport,ps=e=>e&&(e.disabled||e.disabled===""),hf=e=>e&&(e.defer||e.defer===""),Ja=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Qa=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,tr=(e,u)=>{const t=e&&e.to;return We(t)?u?u(t):null:t},vf={name:"Teleport",__isTeleport:!0,process(e,u,t,s,n,i,o,r,a,m){const{mc:l,pc:g,pbc:p,o:{insert:h,querySelector:y,createText:E,createComment:F,parentNode:B}}=m,A=ps(u.props);let{dynamicChildren:O}=u;const N=(Y,se,G)=>{Y.shapeFlag&16&&l(Y.children,se,G,n,i,o,r,a)},K=(Y=u)=>{const se=ps(Y.props),G=Y.target=tr(Y.props,y),M=sr(G,Y,E,h);G&&(o!=="svg"&&Ja(G)?o="svg":o!=="mathml"&&Qa(G)&&(o="mathml"),n&&n.isCE&&(n.ce._teleportTargets||(n.ce._teleportTargets=new Set)).add(G),se||(N(Y,G,M),Fn(Y,!1)))},I=Y=>{const se=()=>{if(Wt.get(Y)===se){if(Wt.delete(Y),ps(Y.props)){const G=B(Y.el)||t;N(Y,G,Y.anchor),Fn(Y,!0)}K(Y)}};Wt.set(Y,se),Du(se,i)};if(e==null){const Y=u.el=E(""),se=u.anchor=E("");if(h(Y,t,s),h(se,t,s),hf(u.props)||i&&i.pendingBranch){I(u);return}A&&(N(u,t,se),Fn(u,!0)),K()}else{u.el=e.el;const Y=u.anchor=e.anchor,se=Wt.get(e);if(se){se.flags|=8,Wt.delete(e),I(u);return}u.targetStart=e.targetStart;const G=u.target=e.target,M=u.targetAnchor=e.targetAnchor,ne=ps(e.props),b=ne?t:G,T=ne?Y:M;if(o==="svg"||Ja(G)?o="svg":(o==="mathml"||Qa(G))&&(o="mathml"),O?(p(e.dynamicChildren,O,b,n,i,o,r),Gr(e,u,!0)):a||g(e,u,b,T,n,i,o,r,!1),A)ne?u.props&&e.props&&u.props.to!==e.props.to&&(u.props.to=e.props.to):bi(u,t,Y,m,1);else if((u.props&&u.props.to)!==(e.props&&e.props.to)){const V=tr(u.props,y);V&&(u.target=V,bi(u,V,null,m,0))}else ne&&bi(u,G,M,m,1);Fn(u,A)}},remove(e,u,t,{um:s,o:{remove:n}},i){const{shapeFlag:o,children:r,anchor:a,targetStart:m,targetAnchor:l,target:g,props:p}=e,h=ps(p),y=i||!h,E=Wt.get(e);if(E&&(E.flags|=8,Wt.delete(e)),g&&(n(m),n(l)),i&&n(a),!E&&(h||g)&&o&16)for(let F=0;F{e.isMounted=!0}),Zd(()=>{e.isUnmounting=!0}),e}const Uu=[Function,Array],Ud={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Uu,onEnter:Uu,onAfterEnter:Uu,onEnterCancelled:Uu,onBeforeLeave:Uu,onLeave:Uu,onAfterLeave:Uu,onLeaveCancelled:Uu,onBeforeAppear:Uu,onAppear:Uu,onAfterAppear:Uu,onAppearCancelled:Uu},Vd=e=>{const u=e.subTree;return u.component?Vd(u.component):u},Bf={name:"BaseTransition",props:Ud,setup(e,{slots:u}){const t=et(),s=$d();return()=>{const n=u.default&&$r(u.default(),!0),i=n&&n.length?Wd(n):t.subTree?au():void 0;if(!i)return;const o=ke(e),{mode:r}=o;if(s.isLeaving)return xo(i);const a=el(i);if(!a)return xo(i);let m=Kn(a,o,s,t,g=>m=g);a.type!==mu&&Ns(a,m);let l=t.subTree&&el(t.subTree);if(l&&l.type!==mu&&!hs(l,a)&&Vd(t).type!==mu){let g=Kn(l,o,s,t);if(Ns(l,g),r==="out-in"&&a.type!==mu)return s.isLeaving=!0,g.afterLeave=()=>{s.isLeaving=!1,t.job.flags&8||t.update(),delete g.afterLeave,l=void 0},xo(i);r==="in-out"&&a.type!==mu?g.delayLeave=(p,h,y)=>{const E=Hd(s,l);E[String(l.key)]=l,p[Wu]=()=>{h(),p[Wu]=void 0,delete m.delayedLeave,l=void 0},m.delayedLeave=()=>{y(),delete m.delayedLeave,l=void 0}}:l=void 0}else l&&(l=void 0);return i}}};function Wd(e){let u=e[0];if(e.length>1){for(const t of e)if(t.type!==mu){u=t;break}}return u}const yf=Bf;function Hd(e,u){const{leavingVNodes:t}=e;let s=t.get(u.type);return s||(s=Object.create(null),t.set(u.type,s)),s}function Kn(e,u,t,s,n){const{appear:i,mode:o,persisted:r=!1,onBeforeEnter:a,onEnter:m,onAfterEnter:l,onEnterCancelled:g,onBeforeLeave:p,onLeave:h,onAfterLeave:y,onLeaveCancelled:E,onBeforeAppear:F,onAppear:B,onAfterAppear:A,onAppearCancelled:O}=u,N=String(e.key),K=Hd(t,e),I=(G,M)=>{G&&Ku(G,s,9,M)},Y=(G,M)=>{const ne=M[1];I(G,M),ce(G)?G.every(b=>b.length<=1)&&ne():G.length<=1&&ne()},se={mode:o,persisted:r,beforeEnter(G){let M=a;if(!t.isMounted)if(i)M=F||a;else return;G[Wu]&&G[Wu](!0);const ne=K[N];ne&&hs(e,ne)&&ne.el[Wu]&&ne.el[Wu](),I(M,[G])},enter(G){if(K[N]===e)return;let M=m,ne=l,b=g;if(!t.isMounted)if(i)M=B||m,ne=A||l,b=O||g;else return;let T=!1;G[Bn]=ue=>{T||(T=!0,ue?I(b,[G]):I(ne,[G]),se.delayedLeave&&se.delayedLeave(),G[Bn]=void 0)};const V=G[Bn].bind(null,!1);M?Y(M,[G,V]):V()},leave(G,M){const ne=String(e.key);if(G[Bn]&&G[Bn](!0),t.isUnmounting)return M();I(p,[G]);let b=!1;G[Wu]=V=>{b||(b=!0,M(),V?I(E,[G]):I(y,[G]),G[Wu]=void 0,K[ne]===e&&delete K[ne])};const T=G[Wu].bind(null,!1);K[ne]=e,h?Y(h,[G,T]):T()},clone(G){const M=Kn(G,u,t,s,n);return n&&n(M),M}};return se}function xo(e){if(U0(e))return e=us(e),e.children=null,e}function el(e){if(!U0(e))return Md(e.type)&&e.children?Wd(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:u,children:t}=e;if(t){if(u&16)return t[0];if(u&32&&fe(t.default))return t.default()}}function Ns(e,u){e.shapeFlag&6&&e.component?(e.transition=u,Ns(e.component.subTree,u)):e.shapeFlag&128?(e.ssContent.transition=u.clone(e.ssContent),e.ssFallback.transition=u.clone(e.ssFallback)):e.transition=u}function $r(e,u=!1,t){let s=[],n=0;for(let i=0;i1)for(let i=0;it.value,set:n=>t.value=n})}return t}function ul(e,u){let t;return!!((t=Object.getOwnPropertyDescriptor(e,u))&&!t.configurable)}const Ji=new WeakMap;function Tn(e,u,t,s,n=!1){if(ce(e)){e.forEach((E,F)=>Tn(E,u&&(ce(u)?u[F]:u),t,s,n));return}if(un(s)&&!n){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Tn(e,u,t,s.component.subTree);return}const i=s.shapeFlag&4?H0(s.component):s.el,o=n?null:i,{i:r,r:a}=e,m=u&&u.r,l=r.refs===Ne?r.refs={}:r.refs,g=r.setupState,p=ke(g),h=g===Ne?sd:E=>ul(l,E)?!1:je(p,E),y=(E,F)=>!(F&&ul(l,F));if(m!=null&&m!==a){if(tl(u),We(m))l[m]=null,h(m)&&(g[m]=null);else if(su(m)){const E=u;y(m,E.k)&&(m.value=null),E.k&&(l[E.k]=null)}}if(fe(a))oi(a,r,12,[o,l]);else{const E=We(a),F=su(a);if(E||F){const B=()=>{if(e.f){const A=E?h(a)?g[a]:l[a]:y()||!e.k?a.value:l[e.k];if(n)ce(A)&&Or(A,i);else if(ce(A))A.includes(i)||A.push(i);else if(E)l[a]=[i],h(a)&&(g[a]=l[a]);else{const O=[i];y(a,e.k)&&(a.value=O),e.k&&(l[e.k]=O)}}else E?(l[a]=o,h(a)&&(g[a]=o)):F&&(y(a,e.k)&&(a.value=o),e.k&&(l[e.k]=o))};if(o){const A=()=>{B(),Ji.delete(e)};A.id=-1,Ji.set(e,A),Du(A,t)}else tl(e),B()}}}function tl(e){const u=Ji.get(e);u&&(u.flags|=8,Ji.delete(e))}Ki().requestIdleCallback,Ki().cancelIdleCallback;const un=e=>!!e.type.__asyncLoader,U0=e=>e.type.__isKeepAlive;function Af(e,u){Kd(e,"a",u)}function wf(e,u){Kd(e,"da",u)}function Kd(e,u,t=yu){const s=e.__wdc||(e.__wdc=()=>{let n=t;for(;n;){if(n.isDeactivated)return;n=n.parent}return e()});if(V0(u,s,t),t){let n=t.parent;for(;n&&n.parent;)U0(n.parent.vnode)&&bf(s,u,t,n),n=n.parent}}function bf(e,u,t,s){const n=V0(u,e,s,!0);an(()=>{Or(s[u],n)},t)}function V0(e,u,t=yu,s=!1){if(t){const n=t[e]||(t[e]=[]),i=u.__weh||(u.__weh=(...o)=>{zt();const r=li(t),a=Ku(u,t,e,o);return r(),Pt(),a});return s?n.unshift(i):n.push(i),i}}const It=e=>(u,t=yu)=>{(!Zn||e==="sp")&&V0(e,(...s)=>u(...s),t)},Df=It("bm"),ri=It("m"),qd=It("bu"),Yd=It("u"),Zd=It("bum"),an=It("um"),Ff=It("sp"),kf=It("rtg"),Nf=It("rtc");function Sf(e,u=yu){V0("ec",e,u)}const Ur="components",_f="directives";function ft(e,u){return Vr(Ur,e,!0,u)||e}const Xd=Symbol.for("v-ndc");function Ri(e){return We(e)?Vr(Ur,e,!1)||e:e||Xd}function Of(e){return Vr(_f,e)}function Vr(e,u,t=!0,s=!1){const n=fu||yu;if(n){const i=n.type;if(e===Ur){const r=fp(i,!1);if(r&&(r===u||r===xu(u)||r===T0(xu(u))))return i}const o=sl(n[e]||i[e],u)||sl(n.appContext[e],u);return!o&&s?i:o}}function sl(e,u){return e&&(e[u]||e[xu(u)]||e[T0(xu(u))])}function nr(e,u,t,s){let n;const i=t,o=ce(e);if(o||We(e)){const r=o&&ws(e);let a=!1,m=!1;r&&(a=!Lu(e),m=Rt(e),e=P0(e)),n=new Array(e.length);for(let l=0,g=e.length;lu(r,a,void 0,i));else{const r=Object.keys(e);n=new Array(r.length);for(let a=0,m=r.length;a{const i=s.fn(...n);return i&&(i.key=s.key),i}:s.fn)}return e}function Ve(e,u,t={},s,n,i){if(fu.ce||fu.parent&&un(fu.parent)&&fu.parent.ce){const m=t,l=Object.keys(m).length>0;return u!=="default"&&(m.name=u),me(),pu(tu,null,[Ee("slot",m,s&&s())],l?-2:64)}let o=e[u];o&&o._c&&(o._d=!1);const r=_t.length;me();let a;try{const m=o&&Jd(o(t)),l=t.key||i||m&&m.key;a=pu(tu,{key:(l&&!ju(l)?l:`_${u}`)+(!m&&s?"_fb":"")},m||(s?s():[]),m&&e._===1?64:-2)}catch(m){for(let l=_t.length;l>r;l--)Kr();throw m}finally{o&&o._c&&(o._d=!0)}return!n&&a.scopeId&&(a.slotScopeIds=[a.scopeId+"-s"]),a}function Jd(e){return e.some(u=>Yn(u)?!(u.type===mu||u.type===tu&&!Jd(u.children)):!0)?e:null}function Qd(e,u){const t={};for(const s in e)t[u&&/[A-Z]/.test(s)?`on:${s}`:zi(s)]=e[s];return t}const ir=e=>e?Bm(e)?H0(e):ir(e.parent):null,zn=eu(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ir(e.parent),$root:e=>ir(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>tm(e),$forceUpdate:e=>e.f||(e.f=()=>{Mr(e.update)}),$nextTick:e=>e.n||(e.n=Ir.bind(e.proxy)),$watch:e=>pf.bind(e)}),Ao=(e,u)=>e!==Ne&&!e.__isScriptSetup&&je(e,u),zf={get({_:e},u){if(u==="__v_skip")return!0;const{ctx:t,setupState:s,data:n,props:i,accessCache:o,type:r,appContext:a}=e;if(u[0]!=="$"){const p=o[u];if(p!==void 0)switch(p){case 1:return s[u];case 2:return n[u];case 4:return t[u];case 3:return i[u]}else{if(Ao(s,u))return o[u]=1,s[u];if(n!==Ne&&je(n,u))return o[u]=2,n[u];if(je(i,u))return o[u]=3,i[u];if(t!==Ne&&je(t,u))return o[u]=4,t[u];or&&(o[u]=0)}}const m=zn[u];let l,g;if(m)return u==="$attrs"&&Bu(e.attrs,"get",""),m(e);if((l=r.__cssModules)&&(l=l[u]))return l;if(t!==Ne&&je(t,u))return o[u]=4,t[u];if(g=a.config.globalProperties,je(g,u))return g[u]},set({_:e},u,t){const{data:s,setupState:n,ctx:i}=e;return Ao(n,u)?(n[u]=t,!0):s!==Ne&&je(s,u)?(s[u]=t,!0):je(e.props,u)||u[0]==="$"&&u.slice(1)in e?!1:(i[u]=t,!0)},has({_:{data:e,setupState:u,accessCache:t,ctx:s,appContext:n,props:i,type:o}},r){let a;return!!(t[r]||e!==Ne&&r[0]!=="$"&&je(e,r)||Ao(u,r)||je(i,r)||je(s,r)||je(zn,r)||je(n.config.globalProperties,r)||(a=o.__cssModules)&&a[r])},defineProperty(e,u,t){return t.get!=null?e._.accessCache[u]=0:je(t,"value")&&this.set(e,u,t.value,null),Reflect.defineProperty(e,u,t)}};function Pf(){return em().slots}function AB(){return em().attrs}function em(e){const u=et();return u.setupContext||(u.setupContext=xm(u))}function Qi(e){return ce(e)?e.reduce((u,t)=>(u[t]=null,u),{}):e}function nl(e,u){return!e||!u?e||u:ce(e)&&ce(u)?e.concat(u):eu({},Qi(e),Qi(u))}let or=!0;function Rf(e){const u=tm(e),t=e.proxy,s=e.ctx;or=!1,u.beforeCreate&&il(u.beforeCreate,e,"bc");const{data:n,computed:i,methods:o,watch:r,provide:a,inject:m,created:l,beforeMount:g,mounted:p,beforeUpdate:h,updated:y,activated:E,deactivated:F,beforeDestroy:B,beforeUnmount:A,destroyed:O,unmounted:N,render:K,renderTracked:I,renderTriggered:Y,errorCaptured:se,serverPrefetch:G,expose:M,inheritAttrs:ne,components:b,directives:T,filters:V}=u;if(m&&Lf(m,s,null),o)for(const Z in o){const Q=o[Z];fe(Q)&&(s[Z]=Q.bind(t))}if(n){const Z=n.call(t,t);ze(Z)&&(e.data=Vn(Z))}if(or=!0,i)for(const Z in i){const Q=i[Z],te=fe(Q)?Q.bind(t,t):fe(Q.get)?Q.get.bind(t,t):Gu,de=!fe(Q)&&fe(Q.set)?Q.set.bind(t):Gu,le=Ge({get:te,set:de});Object.defineProperty(s,Z,{enumerable:!0,configurable:!0,get:()=>le.value,set:ie=>le.value=ie})}if(r)for(const Z in r)um(r[Z],s,t,Z);if(a){const Z=fe(a)?a.call(t):a;Reflect.ownKeys(Z).forEach(Q=>{mf(Q,Z[Q])})}l&&il(l,e,"c");function ue(Z,Q){ce(Q)?Q.forEach(te=>Z(te.bind(t))):Q&&Z(Q.bind(t))}if(ue(Df,g),ue(ri,p),ue(qd,h),ue(Yd,y),ue(Af,E),ue(wf,F),ue(Sf,se),ue(Nf,I),ue(kf,Y),ue(Zd,A),ue(an,N),ue(Ff,G),ce(M))if(M.length){const Z=e.exposed||(e.exposed={});M.forEach(Q=>{Object.defineProperty(Z,Q,{get:()=>t[Q],set:te=>t[Q]=te,enumerable:!0})})}else e.exposed||(e.exposed={});K&&e.render===Gu&&(e.render=K),ne!=null&&(e.inheritAttrs=ne),b&&(e.components=b),T&&(e.directives=T),G&&Gd(e)}function Lf(e,u,t=Gu){ce(e)&&(e=rr(e));for(const s in e){const n=e[s];let i;ze(n)?"default"in n?i=Zt(n.from||s,n.default,!0):i=Zt(n.from||s):i=Zt(n),su(i)?Object.defineProperty(u,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):u[s]=i}}function il(e,u,t){Ku(ce(e)?e.map(s=>s.bind(u.proxy)):e.bind(u.proxy),u,t)}function um(e,u,t,s){let n=s.includes(".")?jd(t,s):()=>t[s];if(We(e)){const i=u[e];fe(i)&&St(n,i)}else if(fe(e))St(n,e.bind(t));else if(ze(e))if(ce(e))e.forEach(i=>um(i,u,t,s));else{const i=fe(e.handler)?e.handler.bind(t):u[e.handler];fe(i)&&St(n,i,e)}}function tm(e){const u=e.type,{mixins:t,extends:s}=u,{mixins:n,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,r=i.get(u);let a;return r?a=r:!n.length&&!t&&!s?a=u:(a={},n.length&&n.forEach(m=>e0(a,m,o,!0)),e0(a,u,o)),ze(u)&&i.set(u,a),a}function e0(e,u,t,s=!1){const{mixins:n,extends:i}=u;i&&e0(e,i,t,!0),n&&n.forEach(o=>e0(e,o,t,!0));for(const o in u)if(!(s&&o==="expose")){const r=jf[o]||t&&t[o];e[o]=r?r(e[o],u[o]):u[o]}return e}const jf={data:ol,props:rl,emits:rl,methods:kn,computed:kn,beforeCreate:wu,created:wu,beforeMount:wu,mounted:wu,beforeUpdate:wu,updated:wu,beforeDestroy:wu,beforeUnmount:wu,destroyed:wu,unmounted:wu,activated:wu,deactivated:wu,errorCaptured:wu,serverPrefetch:wu,components:kn,directives:kn,watch:Mf,provide:ol,inject:If};function ol(e,u){return u?e?function(){return eu(fe(e)?e.call(this,this):e,fe(u)?u.call(this,this):u)}:u:e}function If(e,u){return kn(rr(e),rr(u))}function rr(e){if(ce(e)){const u={};for(let t=0;t{let l,g=Ne,p;return ff(()=>{const h=e[n];du(l,h)&&(l=h,m())}),{get(){return a(),t.get?t.get(l):l},set(h){const y=t.set?t.set(h):h;if(!du(y,l)&&!(g!==Ne&&du(h,g)))return;const E=s.vnode.props,F=!!(E&&(u in E||n in E||i in E)&&(`onUpdate:${u}`in E||`onUpdate:${n}`in E||`onUpdate:${i}`in E));F||(l=h,m()),s.emit(`update:${u}`,y),du(h,g)&&(du(h,y)&&!du(y,p)||F&&g!==Ne&&!du(y,l))&&m(),g=h,p=y}}});return r[Symbol.iterator]=()=>{let a=0;return{next(){return a<2?{value:a++?o||Ne:r,done:!1}:{done:!0}}}},r}const nm=(e,u)=>u==="modelValue"||u==="model-value"?e.modelModifiers:e[`${u}Modifiers`]||e[`${xu(u)}Modifiers`]||e[`${jt(u)}Modifiers`];function Wf(e,u,...t){if(e.isUnmounted)return;const s=e.vnode.props||Ne;let n=t;const i=u.startsWith("update:"),o=i&&nm(s,u.slice(7));o&&(o.trim&&(n=t.map(l=>We(l)?l.trim():l)),o.number&&(n=t.map(Tr)));let r,a=s[r=zi(u)]||s[r=zi(xu(u))];!a&&i&&(a=s[r=zi(jt(u))]),a&&Ku(a,e,6,n);const m=s[r+"Once"];if(m){if(!e.emitted)e.emitted={};else if(e.emitted[r])return;e.emitted[r]=!0,Ku(m,e,6,n)}}const Hf=new WeakMap;function im(e,u,t=!1){const s=t?Hf:u.emitsCache,n=s.get(e);if(n!==void 0)return n;const i=e.emits;let o={},r=!1;if(!fe(e)){const a=m=>{const l=im(m,u,!0);l&&(r=!0,eu(o,l))};!t&&u.mixins.length&&u.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!r?(ze(e)&&s.set(e,null),null):(ce(i)?i.forEach(a=>o[a]=null):eu(o,i),ze(e)&&s.set(e,o),o)}function W0(e,u){return!e||!N0(u)?!1:(u=u.slice(2),u=u==="Once"?u:u.replace(/Once$/,""),je(e,u[0].toLowerCase()+u.slice(1))||je(e,jt(u))||je(e,u))}function al(e){const{type:u,vnode:t,proxy:s,withProxy:n,propsOptions:[i],slots:o,attrs:r,emit:a,render:m,renderCache:l,props:g,data:p,setupState:h,ctx:y,inheritAttrs:E}=e,F=Xi(e);let B,A;try{if(t.shapeFlag&4){const N=n||s,K=N;B=ct(m.call(K,N,l,g,h,p,y)),A=r}else{const N=u;B=ct(N.length>1?N(g,{attrs:r,slots:o,emit:a}):N(g,null)),A=u.props?r:Gf(r)}}catch(N){_t.length=0,I0(N,e,1),B=Ee(mu)}let O=B;if(A&&E!==!1){const N=Object.keys(A),{shapeFlag:K}=O;N.length&&K&7&&(i&&N.some(S0)&&(A=Kf(A,i)),O=us(O,A,!1,!0))}return t.dirs&&(O=us(O,null,!1,!0),O.dirs=O.dirs?O.dirs.concat(t.dirs):t.dirs),t.transition&&Ns(O,t.transition),B=O,Xi(F),B}const Gf=e=>{let u;for(const t in e)(t==="class"||t==="style"||N0(t))&&((u||(u={}))[t]=e[t]);return u},Kf=(e,u)=>{const t={};for(const s in e)(!S0(s)||!(s.slice(9)in u))&&(t[s]=e[s]);return t};function qf(e,u,t){const{props:s,children:n,component:i}=e,{props:o,children:r,patchFlag:a}=u,m=i.emitsOptions;if(u.dirs||u.transition)return!0;if(t&&a>=0){if(a&1024)return!0;if(a&16)return s?ll(s,o,m):!!o;if(a&8){const l=u.dynamicProps;for(let g=0;gObject.create(rm),lm=e=>Object.getPrototypeOf(e)===rm;function Zf(e,u,t,s=!1){const n={},i=am();e.propsDefaults=Object.create(null),dm(e,u,n,i);for(const o in e.propsOptions[0])o in n||(n[o]=void 0);t?e.props=s?n:Wg(n):e.type.props?e.props=n:e.props=i,e.attrs=i}function Xf(e,u,t,s){const{props:n,attrs:i,vnode:{patchFlag:o}}=e,r=ke(n),[a]=e.propsOptions;let m=!1;if((s||o>0)&&!(o&16)){if(o&8){const l=e.vnode.dynamicProps;for(let g=0;g{a=!0;const[p,h]=mm(g,u,!0);eu(o,p),h&&r.push(...h)};!t&&u.mixins.length&&u.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}if(!i&&!a)return ze(e)&&s.set(e,Js),Js;if(ce(i))for(let l=0;le==="_"||e==="_ctx"||e==="$stable",Hr=e=>ce(e)?e.map(ct):[ct(e)],Qf=(e,u,t)=>{if(u._n)return u;const s=Me((...n)=>Hr(u(...n)),t);return s._c=!1,s},cm=(e,u,t)=>{const s=e._ctx;for(const n in e){if(Wr(n))continue;const i=e[n];if(fe(i))u[n]=Qf(n,i,s);else if(i!=null){const o=Hr(i);u[n]=()=>o}}},gm=(e,u)=>{const t=Hr(u);e.slots.default=()=>t},fm=(e,u,t)=>{for(const s in u)(t||!Wr(s))&&(e[s]=u[s])},ep=(e,u,t)=>{const s=e.slots=am();if(e.vnode.shapeFlag&32){const n=u._;n?(fm(s,u,t),t&&ad(s,"_",n,!0)):cm(u,s)}else u&&gm(e,u)},up=(e,u,t)=>{const{vnode:s,slots:n}=e;let i=!0,o=Ne;if(s.shapeFlag&32){const r=u._;r?t&&r===1?i=!1:fm(n,u,t):(i=!u.$stable,cm(u,n)),o=u}else u&&(gm(e,u),o={default:1});if(i)for(const r in n)!Wr(r)&&o[r]==null&&delete n[r]},Du=op;function tp(e){return sp(e)}function sp(e,u){const t=Ki();t.__VUE__=!0;const{insert:s,remove:n,patchProp:i,createElement:o,createText:r,createComment:a,setText:m,setElementText:l,parentNode:g,nextSibling:p,setScopeId:h=Gu,insertStaticContent:y}=e,E=(C,w,_,$=null,z=null,S=null,W=void 0,U=null,H=!!w.dynamicChildren)=>{if(C===w)return;C&&!hs(C,w)&&($=$e(C),xe(C,z,S,!0),C=null),w.patchFlag===-2&&(H=!1,w.dynamicChildren=null);const{type:j,ref:re,shapeFlag:X}=w;switch(j){case ai:F(C,w,_,$);break;case mu:B(C,w,_,$);break;case Pn:C==null&&A(w,_,$,W);break;case tu:b(C,w,_,$,z,S,W,U,H);break;default:X&1?K(C,w,_,$,z,S,W,U,H):X&6?T(C,w,_,$,z,S,W,U,H):(X&64||X&128)&&j.process(C,w,_,$,z,S,W,U,H,$u)}re!=null&&z?Tn(re,C&&C.ref,S,w||C,!w):re==null&&C&&C.ref!=null&&Tn(C.ref,null,S,C,!0)},F=(C,w,_,$)=>{if(C==null)s(w.el=r(w.children),_,$);else{const z=w.el=C.el;w.children!==C.children&&m(z,w.children)}},B=(C,w,_,$)=>{C==null?s(w.el=a(w.children||""),_,$):w.el=C.el},A=(C,w,_,$)=>{[C.el,C.anchor]=y(C.children,w,_,$,C.el,C.anchor)},O=({el:C,anchor:w},_,$)=>{let z;for(;C&&C!==w;)z=p(C),s(C,_,$),C=z;s(w,_,$)},N=({el:C,anchor:w})=>{let _;for(;C&&C!==w;)_=p(C),n(C),C=_;n(w)},K=(C,w,_,$,z,S,W,U,H)=>{if(w.type==="svg"?W="svg":w.type==="math"&&(W="mathml"),C==null)I(w,_,$,z,S,W,U,H);else{const j=C.el&&C.el._isVueCE?C.el:null;try{j&&j._beginPatch(),G(C,w,z,S,W,U,H)}finally{j&&j._endPatch()}}},I=(C,w,_,$,z,S,W,U)=>{let H,j;const{props:re,shapeFlag:X,transition:oe,dirs:ae}=C;if(H=C.el=o(C.type,S,re&&re.is,re),X&8?l(H,C.children):X&16&&se(C.children,H,null,$,z,wo(C,S),W,U),ae&&as(C,null,$,"created"),Y(H,C,C.scopeId,W,$),re){for(const Ae in re)Ae!=="value"&&!Sn(Ae)&&i(H,Ae,null,re[Ae],S,$);"value"in re&&i(H,"value",null,re.value,S),(j=re.onVnodeBeforeMount)&&it(j,$,C)}ae&&as(C,null,$,"beforeMount");const ge=np(z,oe);ge&&oe.beforeEnter(H),s(H,w,_),((j=re&&re.onVnodeMounted)||ge||ae)&&Du(()=>{j&&it(j,$,C),ge&&oe.enter(H),ae&&as(C,null,$,"mounted")},z)},Y=(C,w,_,$,z)=>{if(_&&h(C,_),$)for(let S=0;S<$.length;S++)h(C,$[S]);if(z){let S=z.subTree;if(w===S||vm(S.type)&&(S.ssContent===w||S.ssFallback===w)){const W=z.vnode;Y(C,W,W.scopeId,W.slotScopeIds,z.parent)}}},se=(C,w,_,$,z,S,W,U,H=0)=>{for(let j=H;j{const U=w.el=C.el;let{patchFlag:H,dynamicChildren:j,dirs:re}=w;H|=C.patchFlag&16;const X=C.props||Ne,oe=w.props||Ne;let ae;if(_&&ls(_,!1),(ae=oe.onVnodeBeforeUpdate)&&it(ae,_,w,C),re&&as(w,C,_,"beforeUpdate"),_&&ls(_,!0),j&&(!C.dynamicChildren||C.dynamicChildren.length!==j.length)&&(H=0,W=!1,j=null),(X.innerHTML&&oe.innerHTML==null||X.textContent&&oe.textContent==null)&&l(U,""),j?M(C.dynamicChildren,j,U,_,$,wo(w,z),S):W||te(C,w,U,null,_,$,wo(w,z),S,!1),H>0){if(H&16)ne(U,X,oe,_,z);else if(H&2&&X.class!==oe.class&&i(U,"class",null,oe.class,z),H&4&&i(U,"style",X.style,oe.style,z),H&8){const ge=w.dynamicProps;for(let Ae=0;Ae{ae&&it(ae,_,w,C),re&&as(w,C,_,"updated")},$)},M=(C,w,_,$,z,S,W)=>{for(let U=0;U{if(w!==_){if(w!==Ne)for(const S in w)!Sn(S)&&!(S in _)&&i(C,S,w[S],null,z,$);for(const S in _){if(Sn(S))continue;const W=_[S],U=w[S];W!==U&&S!=="value"&&i(C,S,U,W,z,$)}"value"in _&&i(C,"value",w.value,_.value,z)}},b=(C,w,_,$,z,S,W,U,H)=>{const j=w.el=C?C.el:r(""),re=w.anchor=C?C.anchor:r("");let{patchFlag:X,dynamicChildren:oe,slotScopeIds:ae}=w;ae&&(U=U?U.concat(ae):ae),C==null?(s(j,_,$),s(re,_,$),se(w.children||[],_,re,z,S,W,U,H)):X>0&&X&64&&oe&&C.dynamicChildren&&C.dynamicChildren.length===oe.length?(M(C.dynamicChildren,oe,_,z,S,W,U),(w.key!=null||z&&w===z.subTree)&&Gr(C,w,!0)):te(C,w,_,re,z,S,W,U,H)},T=(C,w,_,$,z,S,W,U,H)=>{w.slotScopeIds=U,C==null?w.shapeFlag&512?z.ctx.activate(w,_,$,W,H):V(w,_,$,z,S,W,H):ue(C,w,H)},V=(C,w,_,$,z,S,W)=>{const U=C.component=dp(C,$,z);if(U0(C)&&(U.ctx.renderer=$u),mp(U,!1,W),U.asyncDep){if(z&&z.registerDep(U,Z,W),!C.el){const H=U.subTree=Ee(mu);B(null,H,w,_),C.placeholder=H.el}}else Z(U,C,w,_,z,S,W)},ue=(C,w,_)=>{const $=w.component=C.component;if(qf(C,w,_))if($.asyncDep&&!$.asyncResolved){Q($,w,_);return}else $.next=w,$.update();else w.el=C.el,$.vnode=w},Z=(C,w,_,$,z,S,W)=>{const U=()=>{if(C.isMounted){let{next:X,bu:oe,u:ae,parent:ge,vnode:Ae}=C;{const c=pm(C);if(c){X&&(X.el=Ae.el,Q(C,X,W)),c.asyncDep.then(()=>{Du(()=>{C.isUnmounted||j()},z)});return}}let _e=X,De;ls(C,!1),X?(X.el=Ae.el,Q(C,X,W)):X=Ae,oe&&Pi(oe),(De=X.props&&X.props.onVnodeBeforeUpdate)&&it(De,ge,X,Ae),ls(C,!0);const qe=al(C),d=C.subTree;C.subTree=qe,E(d,qe,g(d.el),$e(d),C,z,S),X.el=qe.el,_e===null&&Yf(C,qe.el),ae&&Du(ae,z),(De=X.props&&X.props.onVnodeUpdated)&&Du(()=>it(De,ge,X,Ae),z)}else{let X;const{el:oe,props:ae}=w,{bm:ge,m:Ae,parent:_e,root:De,type:qe}=C,d=un(w);ls(C,!1),ge&&Pi(ge),!d&&(X=ae&&ae.onVnodeBeforeMount)&&it(X,_e,w),ls(C,!0);{De.ce&&De.ce._hasShadowRoot()&&De.ce._injectChildStyle(qe,C.parent?C.parent.type:void 0);const c=C.subTree=al(C);E(null,c,_,$,C,z,S),w.el=c.el}if(Ae&&Du(Ae,z),!d&&(X=ae&&ae.onVnodeMounted)){const c=w;Du(()=>it(X,_e,c),z)}(w.shapeFlag&256||_e&&un(_e.vnode)&&_e.vnode.shapeFlag&256)&&C.a&&Du(C.a,z),C.isMounted=!0,w=_=$=null}};C.scope.on();const H=C.effect=new gd(U);C.scope.off();const j=C.update=H.run.bind(H),re=C.job=H.runIfDirty.bind(H);re.i=C,re.id=C.uid,H.scheduler=()=>Mr(re),ls(C,!0),j()},Q=(C,w,_)=>{w.component=C;const $=C.vnode.props;C.vnode=w,C.next=null,Xf(C,w.props,$,_),up(C,w.children,_),zt(),Xa(C),Pt()},te=(C,w,_,$,z,S,W,U,H=!1)=>{const j=C&&C.children,re=C?C.shapeFlag:0,X=w.children,{patchFlag:oe,shapeFlag:ae}=w;if(oe>0){if(oe&128){le(j,X,_,$,z,S,W,U,H);return}else if(oe&256){de(j,X,_,$,z,S,W,U,H);return}}ae&8?(re&16&&pe(j,z,S),X!==j&&l(_,X)):re&16?ae&16?le(j,X,_,$,z,S,W,U,H):pe(j,z,S,!0):(re&8&&l(_,""),ae&16&&se(X,_,$,z,S,W,U,H))},de=(C,w,_,$,z,S,W,U,H)=>{C=C||Js,w=w||Js;const j=C.length,re=w.length,X=Math.min(j,re);let oe;for(oe=0;oere?pe(C,z,S,!0,!1,X):se(w,_,$,z,S,W,U,H,X)},le=(C,w,_,$,z,S,W,U,H)=>{let j=0;const re=w.length;let X=C.length-1,oe=re-1;for(;j<=X&&j<=oe;){const ae=C[j],ge=w[j]=H?bt(w[j]):ct(w[j]);if(hs(ae,ge))E(ae,ge,_,null,z,S,W,U,H);else break;j++}for(;j<=X&&j<=oe;){const ae=C[X],ge=w[oe]=H?bt(w[oe]):ct(w[oe]);if(hs(ae,ge))E(ae,ge,_,null,z,S,W,U,H);else break;X--,oe--}if(j>X){if(j<=oe){const ae=oe+1,ge=aeoe)for(;j<=X;)xe(C[j],z,S,!0),j++;else{const ae=j,ge=j,Ae=new Map;for(j=ge;j<=oe;j++){const k=w[j]=H?bt(w[j]):ct(w[j]);k.key!=null&&Ae.set(k.key,j)}let _e,De=0;const qe=oe-ge+1;let d=!1,c=0;const f=new Array(qe);for(j=0;j=qe){xe(k,z,S,!0);continue}let P;if(k.key!=null)P=Ae.get(k.key);else for(_e=ge;_e<=oe;_e++)if(f[_e-ge]===0&&hs(k,w[_e])){P=_e;break}P===void 0?xe(k,z,S,!0):(f[P-ge]=j+1,P>=c?c=P:d=!0,E(k,w[P],_,null,z,S,W,U,H),De++)}const x=d?ip(f):Js;for(_e=x.length-1,j=qe-1;j>=0;j--){const k=ge+j,P=w[k],q=w[k+1],Oe=k+1{const{el:S,type:W,transition:U,children:H,shapeFlag:j}=C;if(j&6){ie(C.component.subTree,w,_,$);return}if(j&128){C.suspense.move(w,_,$);return}if(j&64){W.move(C,w,_,$u);return}if(W===tu){s(S,w,_);for(let re=0;reU.enter(S),z));else{const{leave:re,delayLeave:X,afterLeave:oe}=U,ae=()=>{C.ctx.isUnmounted?n(S):s(S,w,_)},ge=()=>{const Ae=S._isLeaving||!!S[Wu];S._isLeaving&&S[Wu](!0),U.persisted&&!Ae?ae():re(S,()=>{ae(),oe&&oe()})};X?X(S,ae,ge):ge()}else s(S,w,_)},xe=(C,w,_,$=!1,z=!1)=>{const{type:S,props:W,ref:U,children:H,dynamicChildren:j,shapeFlag:re,patchFlag:X,dirs:oe,cacheIndex:ae,memo:ge}=C;if(X===-2&&(z=!1),U!=null&&(zt(),Tn(U,null,_,C,!0),Pt()),ae!=null&&(w.renderCache[ae]=void 0),re&256){w.ctx.deactivate(C);return}const Ae=re&1&&oe,_e=!un(C);let De;if(_e&&(De=W&&W.onVnodeBeforeUnmount)&&it(De,w,C),re&6)Pe(C.component,_,$);else{if(re&128){C.suspense.unmount(_,$);return}Ae&&as(C,null,w,"beforeUnmount"),re&64?C.type.remove(C,w,_,$u,$):j&&!j.hasOnce&&(S!==tu||X>0&&X&64)?pe(j,w,_,!1,!0):(S===tu&&X&384||!z&&re&16)&&pe(H,w,_),$&&He(C)}const qe=ge!=null&&ae==null;(_e&&(De=W&&W.onVnodeUnmounted)||Ae||qe)&&Du(()=>{De&&it(De,w,C),Ae&&as(C,null,w,"unmounted"),qe&&(C.el=null)},_)},He=C=>{const{type:w,el:_,anchor:$,transition:z}=C;if(w===tu){Se(_,$);return}if(w===Pn){N(C);return}const S=()=>{n(_),z&&!z.persisted&&z.afterLeave&&z.afterLeave()};if(C.shapeFlag&1&&z&&!z.persisted){const{leave:W,delayLeave:U}=z,H=()=>W(_,S);U?U(C.el,S,H):H()}else S()},Se=(C,w)=>{let _;for(;C!==w;)_=p(C),n(C),C=_;n(w)},Pe=(C,w,_)=>{const{bum:$,scope:z,job:S,subTree:W,um:U,m:H,a:j}=C;ml(H),ml(j),$&&Pi($),z.stop(),S&&(S.flags|=8,xe(W,C,w,_)),U&&Du(U,w),Du(()=>{C.isUnmounted=!0},w)},pe=(C,w,_,$=!1,z=!1,S=0)=>{for(let W=S;W{if(C.shapeFlag&6)return $e(C.component.subTree);if(C.shapeFlag&128)return C.suspense.next();const w=p(C.anchor||C.el),_=w&&w[Id];return _?p(_):w};let Nu=!1;const tt=(C,w,_)=>{let $;C==null?w._vnode&&(xe(w._vnode,null,null,!0),$=w._vnode.component):E(w._vnode||null,C,w,null,null,null,_),w._vnode=C,Nu||(Nu=!0,Xa($),zd(),Nu=!1)},$u={p:E,um:xe,m:ie,r:He,mt:V,mc:se,pc:te,pbc:M,n:$e,o:e};return{render:tt,hydrate:void 0,createApp:Uf(tt)}}function wo({type:e,props:u},t){return t==="svg"&&e==="foreignObject"||t==="mathml"&&e==="annotation-xml"&&u&&u.encoding&&u.encoding.includes("html")?void 0:t}function ls({effect:e,job:u},t){t?(e.flags|=32,u.flags|=4):(e.flags&=-33,u.flags&=-5)}function np(e,u){return(!e||e&&!e.pendingBranch)&&u&&!u.persisted}function Gr(e,u,t=!1){const s=e.children,n=u.children;if(ce(s)&&ce(n))for(let i=0;i>1,e[t[r]]0&&(u[s]=t[i-1]),t[i]=s)}}for(i=t.length,o=t[i-1];i-- >0;)t[i]=o,o=u[o];return t}function pm(e){const u=e.subTree.component;if(u)return u.asyncDep&&!u.asyncResolved?u:pm(u)}function ml(e){if(e)for(let u=0;ue.__isSuspense;function op(e,u){u&&u.pendingBranch?ce(e)?u.effects.push(...e):u.effects.push(e):Td(e)}const tu=Symbol.for("v-fgt"),ai=Symbol.for("v-txt"),mu=Symbol.for("v-cmt"),Pn=Symbol.for("v-stc"),_t=[];let Ru=null;function me(e=!1){_t.push(Ru=e?null:[])}function Kr(){_t.pop(),Ru=_t[_t.length-1]||null}let qn=1;function u0(e,u=!1){qn+=e,e<0&&Ru&&u&&(Ru.hasOnce=!0)}function Em(e){return e.dynamicChildren=qn>0?Ru||Js:null,Kr(),qn>0&&Ru&&Ru.push(e),e}function Be(e,u,t,s,n,i){return Em(Ce(e,u,t,s,n,i,!0))}function pu(e,u,t,s,n){return Em(Ee(e,u,t,s,n,!0))}function Yn(e){return e?e.__v_isVNode===!0:!1}function hs(e,u){return e.type===u.type&&e.key===u.key}const Cm=({key:e})=>e??null,Li=({ref:e,ref_key:u,ref_for:t})=>(typeof e=="number"&&(e=""+e),e!=null?We(e)||su(e)||fe(e)?{i:fu,r:e,k:u,f:!!t}:e:null);function Ce(e,u=null,t=null,s=0,n=null,i=e===tu?0:1,o=!1,r=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:u,key:u&&Cm(u),ref:u&&Li(u),scopeId:M0,slotScopeIds:null,children:t,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:n,dynamicChildren:null,appContext:null,ctx:fu};return r?(t0(a,t),i&128&&e.normalize(a)):t&&(a.shapeFlag|=We(t)?8:16),qn>0&&!o&&Ru&&(a.patchFlag>0||i&6)&&a.patchFlag!==32&&Ru.push(a),a}const Ee=rp;function rp(e,u=null,t=null,s=0,n=null,i=!1){if((!e||e===Xd)&&(e=mu),Yn(e)){const r=us(e,u,!0);return t&&t0(r,t),qn>0&&!i&&Ru&&(r.shapeFlag&6?Ru[Ru.indexOf(e)]=r:Ru.push(r)),r.patchFlag=-2,r}if(pp(e)&&(e=e.__vccOpts),u){u=Eu(u);let{class:r,style:a}=u;r&&!We(r)&&(u.class=Iu(r)),ze(a)&&(j0(a)&&!ce(a)&&(a=eu({},a)),u.style=xs(a))}const o=We(e)?1:vm(e)?128:Md(e)?64:ze(e)?4:fe(e)?2:0;return Ce(e,u,t,s,n,o,i,!0)}function Eu(e){return e?j0(e)||lm(e)?eu({},e):e:null}function us(e,u,t=!1,s=!1){const{props:n,ref:i,patchFlag:o,children:r,transition:a}=e,m=u?_u(n||{},u):n,l={__v_isVNode:!0,__v_skip:!0,type:e.type,props:m,key:m&&Cm(m),ref:u&&u.ref?t&&i?ce(i)?i.concat(Li(u)):[i,Li(u)]:Li(u):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:r,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:u&&e.type!==tu?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&us(e.ssContent),ssFallback:e.ssFallback&&us(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&s&&Ns(l,a.clone(l)),l}function tn(e=" ",u=0){return Ee(ai,null,e,u)}function wB(e,u){const t=Ee(Pn,null,e);return t.staticCount=u,t}function au(e="",u=!1){return u?(me(),pu(mu,null,e)):Ee(mu,null,e)}function ct(e){return e==null||typeof e=="boolean"?Ee(mu):ce(e)?Ee(tu,null,e.slice()):Yn(e)?bt(e):Ee(ai,null,String(e))}function bt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:us(e)}function t0(e,u){let t=0;const{shapeFlag:s}=e;if(u==null)u=null;else if(ce(u))t=16;else if(typeof u=="object")if(s&65){const n=u.default;n&&(n._c&&(n._d=!1),t0(e,n()),n._c&&(n._d=!0));return}else{t=32;const n=u._;!n&&!lm(u)?u._ctx=fu:n===3&&fu&&(fu.slots._===1?u._=1:(u._=2,e.patchFlag|=1024))}else if(fe(u)){if(s&65){t0(e,{default:u});return}u={default:u,_ctx:fu},t=32}else u=String(u),s&64?(t=16,u=[tn(u)]):t=8;e.children=u,e.shapeFlag|=t}function _u(...e){const u={};for(let t=0;tyu||fu;let s0,lr;{const e=Ki(),u=(t,s)=>{let n;return(n=e[t])||(n=e[t]=[]),n.push(s),i=>{n.length>1?n.forEach(o=>o(i)):n[0](i)}};s0=u("__VUE_INSTANCE_SETTERS__",t=>yu=t),lr=u("__VUE_SSR_SETTERS__",t=>Zn=t)}const li=e=>{const u=yu;return s0(e),e.scope.on(),()=>{e.scope.off(),s0(u)}},cl=()=>{yu&&yu.scope.off(),s0(null)};function Bm(e){return e.vnode.shapeFlag&4}let Zn=!1;function mp(e,u=!1,t=!1){u&&lr(u);const{props:s,children:n}=e.vnode,i=Bm(e);Zf(e,s,i,u),ep(e,n,t||u);const o=i?cp(e,u):void 0;return u&&lr(!1),o}function cp(e,u){const t=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,zf);const{setup:s}=t;if(s){zt();const n=e.setupContext=s.length>1?xm(e):null,i=li(e),o=oi(s,e,0,[e.props,n]),r=id(o);if(Pt(),i(),(r||e.sp)&&!un(e)&&Gd(e),r){if(o.then(cl,cl),u)return o.then(a=>{gl(e,a)}).catch(a=>{I0(a,e,0)});e.asyncDep=o}else gl(e,o)}else ym(e)}function gl(e,u,t){fe(u)?e.type.__ssrInlineRender?e.ssrRender=u:e.render=u:ze(u)&&(e.setupState=Sd(u)),ym(e)}function ym(e,u,t){const s=e.type;e.render||(e.render=s.render||Gu);{const n=li(e);zt();try{Rf(e)}finally{Pt(),n()}}}const gp={get(e,u){return Bu(e,"get",""),e[u]}};function xm(e){const u=t=>{e.exposed=t||{}};return{attrs:new Proxy(e.attrs,gp),slots:e.slots,emit:e.emit,expose:u}}function H0(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Sd(Gg(e.exposed)),{get(u,t){if(t in u)return u[t];if(t in zn)return zn[t](e)},has(u,t){return t in u||t in zn}})):e.proxy}function fp(e,u=!0){return fe(e)?e.displayName||e.name:e.name||u&&e.__name}function pp(e){return fe(e)&&"__vccOpts"in e}const Ge=(e,u)=>tf(e,u,Zn);function lu(e,u,t){try{u0(-1);const s=arguments.length;return s===2?ze(u)&&!ce(u)?Yn(u)?Ee(e,null,[u]):Ee(e,u):Ee(e,null,u):(s>3?t=Array.prototype.slice.call(arguments,2):s===3&&Yn(t)&&(t=[t]),Ee(e,u,t))}finally{u0(1)}}const hp="3.5.40",fl=Gu;let dr;const pl=typeof window<"u"&&window.trustedTypes;if(pl)try{dr=pl.createPolicy("vue",{createHTML:e=>e})}catch{}const Am=dr?e=>dr.createHTML(e):e=>e,vp="http://www.w3.org/2000/svg",Ep="http://www.w3.org/1998/Math/MathML",wt=typeof document<"u"?document:null,hl=wt&&wt.createElement("template"),Cp={insert:(e,u,t)=>{u.insertBefore(e,t||null)},remove:e=>{const u=e.parentNode;u&&u.removeChild(e)},createElement:(e,u,t,s)=>{const n=u==="svg"?wt.createElementNS(vp,e):u==="mathml"?wt.createElementNS(Ep,e):t?wt.createElement(e,{is:t}):wt.createElement(e);return e==="select"&&s&&s.multiple!=null&&n.setAttribute("multiple",s.multiple),n},createText:e=>wt.createTextNode(e),createComment:e=>wt.createComment(e),setText:(e,u)=>{e.nodeValue=u},setElementText:(e,u)=>{e.textContent=u},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>wt.querySelector(e),setScopeId(e,u){e.setAttribute(u,"")},insertStaticContent(e,u,t,s,n,i){const o=t?t.previousSibling:u.lastChild;if(n&&(n===i||n.nextSibling))for(;u.insertBefore(n.cloneNode(!0),t),!(n===i||!(n=n.nextSibling)););else{hl.innerHTML=Am(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const r=hl.content;if(s==="svg"||s==="mathml"){const a=r.firstChild;for(;a.firstChild;)r.appendChild(a.firstChild);r.removeChild(a)}u.insertBefore(r,t)}return[o?o.nextSibling:u.firstChild,t?t.previousSibling:u.lastChild]}},Vt="transition",yn="animation",ln=Symbol("_vtc"),wm={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},bm=eu({},Ud,wm),Bp=e=>(e.displayName="Transition",e.props=bm,e),Ks=Bp((e,{slots:u})=>lu(yf,Dm(e),u)),ds=(e,u=[])=>{ce(e)?e.forEach(t=>t(...u)):e&&e(...u)},vl=e=>e?ce(e)?e.some(u=>u.length>1):e.length>1:!1;function Dm(e){const u={};for(const b in e)b in wm||(u[b]=e[b]);if(e.css===!1)return u;const{name:t="v",type:s,duration:n,enterFromClass:i=`${t}-enter-from`,enterActiveClass:o=`${t}-enter-active`,enterToClass:r=`${t}-enter-to`,appearFromClass:a=i,appearActiveClass:m=o,appearToClass:l=r,leaveFromClass:g=`${t}-leave-from`,leaveActiveClass:p=`${t}-leave-active`,leaveToClass:h=`${t}-leave-to`}=e,y=yp(n),E=y&&y[0],F=y&&y[1],{onBeforeEnter:B,onEnter:A,onEnterCancelled:O,onLeave:N,onLeaveCancelled:K,onBeforeAppear:I=B,onAppear:Y=A,onAppearCancelled:se=O}=u,G=(b,T,V,ue)=>{b._enterCancelled=ue,Ht(b,T?l:r),Ht(b,T?m:o),V&&V()},M=(b,T)=>{b._isLeaving=!1,Ht(b,g),Ht(b,h),Ht(b,p),T&&T()},ne=b=>(T,V)=>{const ue=b?Y:A,Z=()=>G(T,b,V);ds(ue,[T,Z]),El(()=>{Ht(T,b?a:i),rt(T,b?l:r),vl(ue)||Cl(T,s,E,Z)})};return eu(u,{onBeforeEnter(b){ds(B,[b]),rt(b,i),rt(b,o)},onBeforeAppear(b){ds(I,[b]),rt(b,a),rt(b,m)},onEnter:ne(!1),onAppear:ne(!0),onLeave(b,T){b._isLeaving=!0;const V=()=>M(b,T);rt(b,g),b._enterCancelled?(rt(b,p),mr(b)):(mr(b),rt(b,p)),El(()=>{b._isLeaving&&(Ht(b,g),rt(b,h),vl(N)||Cl(b,s,F,V))}),ds(N,[b,V])},onEnterCancelled(b){G(b,!1,void 0,!0),ds(O,[b])},onAppearCancelled(b){G(b,!0,void 0,!0),ds(se,[b])},onLeaveCancelled(b){M(b),ds(K,[b])}})}function yp(e){if(e==null)return null;if(ze(e))return[bo(e.enter),bo(e.leave)];{const u=bo(e);return[u,u]}}function bo(e){return pg(e)}function rt(e,u){u.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[ln]||(e[ln]=new Set)).add(u)}function Ht(e,u){u.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const t=e[ln];t&&(t.delete(u),t.size||(e[ln]=void 0))}function El(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let xp=0;function Cl(e,u,t,s){const n=e._endId=++xp,i=()=>{n===e._endId&&s()};if(t!=null)return setTimeout(i,t);const{type:o,timeout:r,propCount:a}=Fm(e,u);if(!o)return s();const m=o+"end";let l=0;const g=()=>{e.removeEventListener(m,p),i()},p=h=>{h.target===e&&++l>=a&&g()};setTimeout(()=>{l(t[y]||"").split(", "),n=s(`${Vt}Delay`),i=s(`${Vt}Duration`),o=Bl(n,i),r=s(`${yn}Delay`),a=s(`${yn}Duration`),m=Bl(r,a);let l=null,g=0,p=0;u===Vt?o>0&&(l=Vt,g=o,p=i.length):u===yn?m>0&&(l=yn,g=m,p=a.length):(g=Math.max(o,m),l=g>0?o>m?Vt:yn:null,p=l?l===Vt?i.length:a.length:0);const h=l===Vt&&/\b(?:transform|all)(?:,|$)/.test(s(`${Vt}Property`).toString());return{type:l,timeout:g,propCount:p,hasTransform:h}}function Bl(e,u){for(;e.lengthyl(t)+yl(e[s])))}function yl(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function mr(e){return(e?e.ownerDocument:document).body.offsetHeight}function Ap(e,u,t){const s=e[ln];s&&(u=(u?[u,...s]:[...s]).join(" ")),u==null?e.removeAttribute("class"):t?e.setAttribute("class",u):e.className=u}const n0=Symbol("_vod"),qr=Symbol("_vsh"),Zs={name:"show",beforeMount(e,{value:u},{transition:t}){e[n0]=e.style.display==="none"?"":e.style.display,t&&u?t.beforeEnter(e):xn(e,u)},mounted(e,{value:u},{transition:t}){t&&u&&t.enter(e)},updated(e,{value:u,oldValue:t},{transition:s}){!u!=!t&&(s?u?(s.beforeEnter(e),xn(e,!0),s.enter(e)):s.leave(e,()=>{xn(e,!1)}):xn(e,u))},beforeUnmount(e,{value:u}){xn(e,u)}};function xn(e,u){e.style.display=u?e[n0]:"none",e[qr]=!u}const km=Symbol("");function Nm(e){const u=et();if(!u)return;const t=u.ut=(n=e(u.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${u.uid}"]`)).forEach(i=>i0(i,n))},s=()=>{const n=e(u.proxy);u.ce?i0(u.ce,n):cr(u.subTree,n),t(n)};qd(()=>{Td(s)}),ri(()=>{St(s,Gu,{flush:"post"});const n=new MutationObserver(s);n.observe(u.subTree.el.parentNode,{childList:!0}),an(()=>n.disconnect())})}function cr(e,u){if(e.shapeFlag&128){const t=e.suspense;e=t.activeBranch,t.pendingBranch&&!t.isHydrating&&t.effects.push(()=>{cr(t.activeBranch,u)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)i0(e.el,u);else if(e.type===tu)e.children.forEach(t=>cr(t,u));else if(e.type===Pn){let{el:t,anchor:s}=e;for(;t&&(i0(t,u),t!==s);)t=t.nextSibling}}function i0(e,u){if(e.nodeType===1){const t=e.style;let s="";for(const n in u){const i=Ag(u[n]);t.setProperty(`--${n}`,i),s+=`--${n}: ${i};`}t[km]=s}}const wp=/(?:^|;)\s*display\s*:/;function bp(e,u,t){const s=e.style,n=We(t);let i=!1;if(t&&!n){if(u)if(We(u))for(const o of u.split(";")){const r=o.slice(0,o.indexOf(":")).trim();t[r]==null&&Nn(s,r,"")}else for(const o in u)t[o]==null&&Nn(s,o,"");for(const o in t){o==="display"&&(i=!0);const r=t[o];r!=null?Fp(e,o,!We(u)&&u?u[o]:void 0,r)||Nn(s,o,r):Nn(s,o,"")}}else if(n){if(u!==t){const o=s[km];o&&(t+=";"+o),s.cssText=t,i=wp.test(t)}}else u&&e.removeAttribute("style");n0 in e&&(e[n0]=i?s.display:"",e[qr]&&(s.display="none"))}const xl=/\s*!important$/;function Nn(e,u,t){if(ce(t))t.forEach(s=>Nn(e,u,s));else if(t==null&&(t=""),u.startsWith("--"))e.setProperty(u,t);else{const s=Dp(e,u);xl.test(t)?e.setProperty(jt(s),t.replace(xl,""),"important"):e[s]=t}}const Al=["Webkit","Moz","ms"],Do={};function Dp(e,u){const t=Do[u];if(t)return t;let s=xu(u);if(s!=="filter"&&s in e)return Do[u]=s;s=T0(s);for(let n=0;nFo||(Tp.then(()=>Fo=0),Fo=Date.now());function Pp(e,u){const t=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=t.attached)return;const n=t.value;if(ce(n)){const i=s.stopImmediatePropagation;s.stopImmediatePropagation=()=>{i.call(s),s._stopped=!0};const o=n.slice(),r=[s];for(let a=0;ae.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Rp=(e,u,t,s,n,i)=>{const o=n==="svg";u==="class"?Ap(e,s,o):u==="style"?bp(e,t,s):N0(u)?S0(u)||Np(e,u,t,s,i):(u[0]==="."?(u=u.slice(1),!0):u[0]==="^"?(u=u.slice(1),!1):Lp(e,u,s,o))?(Dl(e,u,s),!e.tagName.includes("-")&&(u==="value"||u==="checked"||u==="selected")&&bl(e,u,s,o,i,u!=="value")):e._isVueCE&&(jp(e,u)||e._def.__asyncLoader&&(/[A-Z]/.test(u)||!We(s)))?Dl(e,xu(u),s,i,u):(u==="true-value"?e._trueValue=s:u==="false-value"&&(e._falseValue=s),bl(e,u,s,o))};function Lp(e,u,t,s){if(s)return!!(u==="innerHTML"||u==="textContent"||u in e&&kl(u)&&fe(t));if(u==="spellcheck"||u==="draggable"||u==="translate"||u==="autocorrect"||u==="sandbox"&&e.tagName==="IFRAME"||u==="form"||u==="list"&&e.tagName==="INPUT"||u==="type"&&e.tagName==="TEXTAREA")return!1;if(u==="width"||u==="height"){const n=e.tagName;if(n==="IMG"||n==="VIDEO"||n==="CANVAS"||n==="SOURCE")return!1}return kl(u)&&We(t)?!1:u in e}function jp(e,u){const t=e._def.props;if(!t)return!1;const s=xu(u);return Array.isArray(t)?t.some(n=>xu(n)===s):Object.keys(t).some(n=>xu(n)===s)}const Sm=new WeakMap,_m=new WeakMap,o0=Symbol("_moveCb"),Nl=Symbol("_enterCb"),Ip=e=>(delete e.props.mode,e),Mp=Ip({name:"TransitionGroup",props:eu({},bm,{tag:String,moveClass:String}),setup(e,{slots:u}){const t=et(),s=$d();let n,i;return Yd(()=>{if(!n.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!Wp(n[0].el,t.vnode.el,o)){n=[];return}n.forEach($p),n.forEach(Up);const r=n.filter(Vp);mr(t.vnode.el),r.forEach(a=>{const m=a.el,l=m.style;rt(m,o),l.transform=l.webkitTransform=l.transitionDuration="";const g=m[o0]=p=>{p&&p.target!==m||(!p||p.propertyName.endsWith("transform"))&&(m.removeEventListener("transitionend",g),m[o0]=null,Ht(m,o))};m.addEventListener("transitionend",g)}),n=[]}),()=>{const o=ke(e),r=Dm(o);let a=o.tag||tu;if(n=[],i)for(let m=0;m{r.split(/\s+/).forEach(a=>a&&s.classList.remove(a))}),t.split(/\s+/).forEach(r=>r&&s.classList.add(r)),s.style.display="none";const i=u.nodeType===1?u:u.parentNode;i.appendChild(s);const{hasTransform:o}=Fm(s);return i.removeChild(s),o}const Sl=e=>{const u=e.props["onUpdate:modelValue"]||!1;return ce(u)?t=>Pi(u,t):u};function Hp(e){e.target.composing=!0}function _l(e){const u=e.target;u.composing&&(u.composing=!1,u.dispatchEvent(new Event("input")))}const ko=Symbol("_assign");function Ol(e,u,t){return u&&(e=e.trim()),t&&(e=Tr(e)),e}const DB={created(e,{modifiers:{lazy:u,trim:t,number:s}},n){e[ko]=Sl(n);const i=s||n.props&&n.props.type==="number";qs(e,u?"change":"input",o=>{o.target.composing||e[ko](Ol(e.value,t,i))}),(t||i)&&qs(e,"change",()=>{e.value=Ol(e.value,t,i)}),u||(qs(e,"compositionstart",Hp),qs(e,"compositionend",_l),qs(e,"change",_l))},mounted(e,{value:u}){e.value=u??""},beforeUpdate(e,{value:u,oldValue:t,modifiers:{lazy:s,trim:n,number:i}},o){if(e[ko]=Sl(o),e.composing)return;const r=(i||e.type==="number")&&!/^0\d/.test(e.value)?Tr(e.value):e.value,a=u??"";if(r===a)return;const m=e.getRootNode();(m instanceof Document||m instanceof ShadowRoot)&&m.activeElement===e&&e.type!=="range"&&(s&&u===t||n&&e.value.trim()===a)||(e.value=a)}},Gp=["ctrl","shift","alt","meta"],Kp={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,u)=>Gp.some(t=>e[`${t}Key`]&&!u.includes(t))},ji=(e,u)=>{if(!e)return e;const t=e._withMods||(e._withMods={}),s=u.join(".");return t[s]||(t[s]=((n,...i)=>{for(let o=0;o{const t=e._withKeys||(e._withKeys={}),s=u.join(".");return t[s]||(t[s]=(n=>{if(!("key"in n))return;const i=jt(n.key);if(u.some(o=>o===i||qp[o]===i))return e(n)}))},Yp=eu({patchProp:Rp},Cp);let Tl;function Zp(){return Tl||(Tl=tp(Yp))}const FB=((...e)=>{const u=Zp().createApp(...e),{mount:t}=u;return u.mount=s=>{const n=Jp(s);if(!n)return;const i=u._component;!fe(i)&&!i.render&&!i.template&&(i.template=n.innerHTML),n.nodeType===1&&(n.textContent="");const o=t(n,!1,Xp(n));return n instanceof Element&&(n.removeAttribute("v-cloak"),n.setAttribute("data-v-app","")),o},u});function Xp(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Jp(e){return We(e)?document.querySelector(e):e}class r0{static GLOBAL_SCOPE_VOLATILE="nextcloud_vol";static GLOBAL_SCOPE_PERSISTENT="nextcloud_per";scope;wrapped;constructor(u,t,s){this.scope=`${s?r0.GLOBAL_SCOPE_PERSISTENT:r0.GLOBAL_SCOPE_VOLATILE}_${btoa(u)}_`,this.wrapped=t}scopeKey(u){return`${this.scope}${u}`}setItem(u,t){this.wrapped.setItem(this.scopeKey(u),t)}getItem(u){return this.wrapped.getItem(this.scopeKey(u))}removeItem(u){this.wrapped.removeItem(this.scopeKey(u))}clear(){Object.keys(this.wrapped).filter(u=>u.startsWith(this.scope)).map(this.wrapped.removeItem.bind(this.wrapped))}}class Qp{appId;persisted=!1;clearedOnLogout=!1;constructor(u){this.appId=u}persist(u=!0){return this.persisted=u,this}clearOnLogout(u=!0){return this.clearedOnLogout=u,this}build(){return new r0(this.appId,this.persisted?window.localStorage:window.sessionStorage,!this.clearedOnLogout)}}function eh(e){return new Qp(e)}function kB(e,u,t){const s=`#initial-state-${e}-${u}`;if(window._nc_initial_state?.has(s))return window._nc_initial_state.get(s);window._nc_initial_state||(window._nc_initial_state=new Map);const n=document.querySelector(s);if(n===null){if(t!==void 0)return t;throw new Error(`Could not find initial state ${u} of ${e}`)}try{const i=JSON.parse(atob(n.value));return window._nc_initial_state.set(s,i),i}catch(i){if(console.error("[@nextcloud/initial-state] Could not parse initial state",{key:u,app:e,error:i}),t!==void 0)return t;throw new Error(`Could not parse initial state ${u} of ${e}`,{cause:i})}}function uh(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var zm={exports:{}},Qe=zm.exports={},lt,dt;function gr(){throw new Error("setTimeout has not been defined")}function fr(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?lt=setTimeout:lt=gr}catch{lt=gr}try{typeof clearTimeout=="function"?dt=clearTimeout:dt=fr}catch{dt=fr}})();function Pm(e){if(lt===setTimeout)return setTimeout(e,0);if((lt===gr||!lt)&&setTimeout)return lt=setTimeout,setTimeout(e,0);try{return lt(e,0)}catch{try{return lt.call(null,e,0)}catch{return lt.call(this,e,0)}}}function th(e){if(dt===clearTimeout)return clearTimeout(e);if((dt===fr||!dt)&&clearTimeout)return dt=clearTimeout,clearTimeout(e);try{return dt(e)}catch{try{return dt.call(null,e)}catch{return dt.call(this,e)}}}var Nt=[],sn=!1,Cs,Ii=-1;function sh(){!sn||!Cs||(sn=!1,Cs.length?Nt=Cs.concat(Nt):Ii=-1,Nt.length&&Rm())}function Rm(){if(!sn){var e=Pm(sh);sn=!0;for(var u=Nt.length;u;){for(Cs=Nt,Nt=[];++Ii1)for(var t=1;tconsole.error("SEMVER",...u):()=>{},No}var So,Pl;function Im(){if(Pl)return So;Pl=1;const e="2.0.0",u=256,t=Number.MAX_SAFE_INTEGER||9007199254740991,s=16,n=u-6;return So={MAX_LENGTH:u,MAX_SAFE_COMPONENT_LENGTH:s,MAX_SAFE_BUILD_LENGTH:n,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:e,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2},So}var _o={exports:{}},Rl;function ih(){return Rl||(Rl=1,(function(e,u){const{MAX_SAFE_COMPONENT_LENGTH:t,MAX_SAFE_BUILD_LENGTH:s,MAX_LENGTH:n}=Im(),i=jm();u=e.exports={};const o=u.re=[],r=u.safeRe=[],a=u.src=[],m=u.safeSrc=[],l=u.t={};let g=0;const p="[a-zA-Z0-9-]",h=[["\\s",1],["\\d",n],[p,s]],y=F=>{for(const[B,A]of h)F=F.split(`${B}*`).join(`${B}{0,${A}}`).split(`${B}+`).join(`${B}{1,${A}}`);return F},E=(F,B,A)=>{const O=y(B),N=g++;i(F,N,B),l[F]=N,a[N]=B,m[N]=O,o[N]=new RegExp(B,A?"g":void 0),r[N]=new RegExp(O,A?"g":void 0)};E("NUMERICIDENTIFIER","0|[1-9]\\d*"),E("NUMERICIDENTIFIERLOOSE","\\d+"),E("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${p}*`),E("MAINVERSION",`(${a[l.NUMERICIDENTIFIER]})\\.(${a[l.NUMERICIDENTIFIER]})\\.(${a[l.NUMERICIDENTIFIER]})`),E("MAINVERSIONLOOSE",`(${a[l.NUMERICIDENTIFIERLOOSE]})\\.(${a[l.NUMERICIDENTIFIERLOOSE]})\\.(${a[l.NUMERICIDENTIFIERLOOSE]})`),E("PRERELEASEIDENTIFIER",`(?:${a[l.NONNUMERICIDENTIFIER]}|${a[l.NUMERICIDENTIFIER]})`),E("PRERELEASEIDENTIFIERLOOSE",`(?:${a[l.NONNUMERICIDENTIFIER]}|${a[l.NUMERICIDENTIFIERLOOSE]})`),E("PRERELEASE",`(?:-(${a[l.PRERELEASEIDENTIFIER]}(?:\\.${a[l.PRERELEASEIDENTIFIER]})*))`),E("PRERELEASELOOSE",`(?:-?(${a[l.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${a[l.PRERELEASEIDENTIFIERLOOSE]})*))`),E("BUILDIDENTIFIER",`${p}+`),E("BUILD",`(?:\\+(${a[l.BUILDIDENTIFIER]}(?:\\.${a[l.BUILDIDENTIFIER]})*))`),E("FULLPLAIN",`v?${a[l.MAINVERSION]}${a[l.PRERELEASE]}?${a[l.BUILD]}?`),E("FULL",`^${a[l.FULLPLAIN]}$`),E("LOOSEPLAIN",`[v=\\s]*${a[l.MAINVERSIONLOOSE]}${a[l.PRERELEASELOOSE]}?${a[l.BUILD]}?`),E("LOOSE",`^${a[l.LOOSEPLAIN]}$`),E("GTLT","((?:<|>)?=?)"),E("XRANGEIDENTIFIERLOOSE",`${a[l.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),E("XRANGEIDENTIFIER",`${a[l.NUMERICIDENTIFIER]}|x|X|\\*`),E("XRANGEPLAIN",`[v=\\s]*(${a[l.XRANGEIDENTIFIER]})(?:\\.(${a[l.XRANGEIDENTIFIER]})(?:\\.(${a[l.XRANGEIDENTIFIER]})(?:${a[l.PRERELEASE]})?${a[l.BUILD]}?)?)?`),E("XRANGEPLAINLOOSE",`[v=\\s]*(${a[l.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[l.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[l.XRANGEIDENTIFIERLOOSE]})(?:${a[l.PRERELEASELOOSE]})?${a[l.BUILD]}?)?)?`),E("XRANGE",`^${a[l.GTLT]}\\s*${a[l.XRANGEPLAIN]}$`),E("XRANGELOOSE",`^${a[l.GTLT]}\\s*${a[l.XRANGEPLAINLOOSE]}$`),E("COERCEPLAIN",`(^|[^\\d])(\\d{1,${t}})(?:\\.(\\d{1,${t}}))?(?:\\.(\\d{1,${t}}))?`),E("COERCE",`${a[l.COERCEPLAIN]}(?:$|[^\\d])`),E("COERCEFULL",a[l.COERCEPLAIN]+`(?:${a[l.PRERELEASE]})?(?:${a[l.BUILD]})?(?:$|[^\\d])`),E("COERCERTL",a[l.COERCE],!0),E("COERCERTLFULL",a[l.COERCEFULL],!0),E("LONETILDE","(?:~>?)"),E("TILDETRIM",`(\\s*)${a[l.LONETILDE]}\\s+`,!0),u.tildeTrimReplace="$1~",E("TILDE",`^${a[l.LONETILDE]}${a[l.XRANGEPLAIN]}$`),E("TILDELOOSE",`^${a[l.LONETILDE]}${a[l.XRANGEPLAINLOOSE]}$`),E("LONECARET","(?:\\^)"),E("CARETTRIM",`(\\s*)${a[l.LONECARET]}\\s+`,!0),u.caretTrimReplace="$1^",E("CARET",`^${a[l.LONECARET]}${a[l.XRANGEPLAIN]}$`),E("CARETLOOSE",`^${a[l.LONECARET]}${a[l.XRANGEPLAINLOOSE]}$`),E("COMPARATORLOOSE",`^${a[l.GTLT]}\\s*(${a[l.LOOSEPLAIN]})$|^$`),E("COMPARATOR",`^${a[l.GTLT]}\\s*(${a[l.FULLPLAIN]})$|^$`),E("COMPARATORTRIM",`(\\s*)${a[l.GTLT]}\\s*(${a[l.LOOSEPLAIN]}|${a[l.XRANGEPLAIN]})`,!0),u.comparatorTrimReplace="$1$2$3",E("HYPHENRANGE",`^\\s*(${a[l.XRANGEPLAIN]})\\s+-\\s+(${a[l.XRANGEPLAIN]})\\s*$`),E("HYPHENRANGELOOSE",`^\\s*(${a[l.XRANGEPLAINLOOSE]})\\s+-\\s+(${a[l.XRANGEPLAINLOOSE]})\\s*$`),E("STAR","(<|>)?=?\\s*\\*"),E("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),E("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")})(_o,_o.exports)),_o.exports}var Oo,Ll;function oh(){if(Ll)return Oo;Ll=1;const e=Object.freeze({loose:!0}),u=Object.freeze({});return Oo=t=>t?typeof t!="object"?e:t:u,Oo}var To,jl;function rh(){if(jl)return To;jl=1;const e=/^[0-9]+$/,u=(t,s)=>{if(typeof t=="number"&&typeof s=="number")return t===s?0:tu(s,t)},To}var zo,Il;function Mm(){if(Il)return zo;Il=1;const e=jm(),{MAX_LENGTH:u,MAX_SAFE_INTEGER:t}=Im(),{safeRe:s,t:n}=ih(),i=oh(),{compareIdentifiers:o}=rh(),r=(m,l)=>{const g=l.split(".");if(g.length>m.length)return!1;for(let p=0;pu)throw new TypeError(`version is longer than ${u} characters`);e("SemVer",l,g),this.options=g,this.loose=!!g.loose,this.includePrerelease=!!g.includePrerelease;const p=l.trim().match(g.loose?s[n.LOOSE]:s[n.FULL]);if(!p)throw new TypeError(`Invalid Version: ${l}`);if(this.raw=l,this.major=+p[1],this.minor=+p[2],this.patch=+p[3],this.major>t||this.major<0)throw new TypeError("Invalid major version");if(this.minor>t||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>t||this.patch<0)throw new TypeError("Invalid patch version");p[4]?this.prerelease=p[4].split(".").map(h=>{if(/^[0-9]+$/.test(h)){const y=+h;if(y>=0&&yl.major?1:this.minorl.minor?1:this.patchl.patch?1:0}comparePre(l){if(l instanceof a||(l=new a(l,this.options)),this.prerelease.length&&!l.prerelease.length)return-1;if(!this.prerelease.length&&l.prerelease.length)return 1;if(!this.prerelease.length&&!l.prerelease.length)return 0;let g=0;do{const p=this.prerelease[g],h=l.prerelease[g];if(e("prerelease compare",g,p,h),p===void 0&&h===void 0)return 0;if(h===void 0)return 1;if(p===void 0)return-1;if(p!==h)return o(p,h)}while(++g)}compareBuild(l){l instanceof a||(l=new a(l,this.options));let g=0;do{const p=this.build[g],h=l.build[g];if(e("build compare",g,p,h),p===void 0&&h===void 0)return 0;if(h===void 0)return 1;if(p===void 0)return-1;if(p!==h)return o(p,h)}while(++g)}inc(l,g,p){if(l.startsWith("pre")){if(!g&&p===!1)throw new Error("invalid increment argument: identifier is empty");if(g){const h=`-${g}`.match(this.options.loose?s[n.PRERELEASELOOSE]:s[n.PRERELEASE]);if(!h||h[1]!==g)throw new Error(`invalid identifier: ${g}`)}}switch(l){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",g,p);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",g,p);break;case"prepatch":this.prerelease.length=0,this.inc("patch",g,p),this.inc("pre",g,p);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",g,p),this.inc("pre",g,p);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{const h=Number(p)?1:0;if(this.prerelease.length===0)this.prerelease=[h];else{let y=this.prerelease.length;for(;--y>=0;)typeof this.prerelease[y]=="number"&&(this.prerelease[y]++,y=-2);if(y===-1){if(g===this.prerelease.join(".")&&p===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(h)}}if(g){let y=[g,h];if(p===!1&&(y=[g]),r(this.prerelease,g)){const E=this.prerelease[g.split(".").length];isNaN(E)&&(this.prerelease=y)}else this.prerelease=y}break}default:throw new Error(`invalid increment argument: ${l}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}return zo=a,zo}var Po,Ml;function ah(){if(Ml)return Po;Ml=1;const e=Mm();return Po=(u,t)=>new e(u,t).major,Po}var lh=ah();const $l=F0(lh);var Ro,Ul;function dh(){if(Ul)return Ro;Ul=1;const e=Mm();return Ro=(u,t,s=!1)=>{if(u instanceof e)return u;try{return new e(u,t)}catch(n){if(!s)return null;throw n}},Ro}var Lo,Vl;function mh(){if(Vl)return Lo;Vl=1;const e=dh();return Lo=(u,t)=>{const s=e(u,t);return s?s.version:null},Lo}var ch=mh();const gh=F0(ch);class fh{bus;constructor(u){typeof u.getVersion!="function"||!gh(u.getVersion())?console.warn("Proxying an event bus with an unknown or invalid version"):$l(u.getVersion())!==$l(this.getVersion())&&console.warn("Proxying an event bus of version "+u.getVersion()+" with "+this.getVersion()),this.bus=u}getVersion(){return"3.3.3"}subscribe(u,t){this.bus.subscribe(u,t)}unsubscribe(u,t){this.bus.unsubscribe(u,t)}emit(u,...t){this.bus.emit(u,...t)}}class ph{handlers=new Map;getVersion(){return"3.3.3"}subscribe(u,t){this.handlers.set(u,(this.handlers.get(u)||[]).concat(t))}unsubscribe(u,t){this.handlers.set(u,(this.handlers.get(u)||[]).filter(s=>s!==t))}emit(u,...t){(this.handlers.get(u)||[]).forEach(s=>{try{s(t[0])}catch(n){console.error("could not invoke event listener",n)}})}}let An=null;function Yr(){return An!==null?An:typeof window>"u"?new Proxy({},{get:()=>()=>console.error("Window not available, EventBus can not be established!")}):(window.OC?._eventBus&&typeof window._nc_event_bus>"u"&&(console.warn("found old event bus instance at OC._eventBus. Update your version!"),window._nc_event_bus=window.OC._eventBus),typeof window?._nc_event_bus<"u"?An=new fh(window._nc_event_bus):An=window._nc_event_bus=new ph,An)}function $m(e,u){Yr().subscribe(e,u)}function hh(e,u){Yr().unsubscribe(e,u)}function vh(e,...u){Yr().emit(e,...u)}function a0(e,u){return Pr()?(bg(e,u),!0):!1}const jo=new WeakMap,Eh=(...e)=>{var u;const t=e[0],s=(u=et())===null||u===void 0?void 0:u.proxy,n=s??Pr();if(n==null&&!Rd())throw new Error("injectLocal must be called in setup");return n&&jo.has(n)&&t in jo.get(n)?jo.get(n)[t]:Zt(...e)},l0=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ch=e=>e!=null,Bh=Object.prototype.toString,yh=e=>Bh.call(e)==="[object Object]",Di=()=>{};function Wl(e){return e.endsWith("rem")?Number.parseFloat(e)*16:Number.parseFloat(e)}function Mi(e){return Array.isArray(e)?e:[e]}function NB(e){if(!l0)return e;let u=0,t,s;const n=()=>{u-=1,s&&u<=0&&(s.stop(),t=void 0,s=void 0)};return((...i)=>(u+=1,s||(s=wg(!0),t=s.run(()=>e(...i))),a0(n),t))}function xh(e,u=1e3,t={}){const{immediate:s=!0,immediateCallback:n=!1}=t;let i=null;const o=bs(!1);function r(){i&&(clearInterval(i),i=null)}function a(){o.value=!1,r()}function m(){const l=Su(u);l<=0||(o.value=!0,n&&e(),r(),o.value&&(i=setInterval(e,l)))}return s&&l0&&m(),(su(u)||typeof u=="function")&&a0(St(u,()=>{o.value&&l0&&m()})),a0(a),{isActive:Hg(o),pause:a,resume:m}}function Ah(e,u,t){return St(e,u,{...t,immediate:!0})}const di=l0?window:void 0;function Xs(e){var u;const t=Su(e);return(u=t?.$el)!==null&&u!==void 0?u:t}function Xt(...e){const u=(s,n,i,o)=>(s.addEventListener(n,i,o),()=>s.removeEventListener(n,i,o)),t=Ge(()=>{const s=Mi(Su(e[0])).filter(n=>n!=null);return s.every(n=>typeof n!="string")?s:void 0});return Ah(()=>{var s,n;return[(s=(n=t.value)===null||n===void 0?void 0:n.map(i=>Xs(i)))!==null&&s!==void 0?s:[di].filter(i=>i!=null),Mi(Su(t.value?e[1]:e[0])),Mi(Fe(t.value?e[2]:e[1])),Su(t.value?e[3]:e[2])]},([s,n,i,o],r,a)=>{if(!s?.length||!n?.length||!i?.length)return;const m=yh(o)?{...o}:o,l=s.flatMap(g=>n.flatMap(p=>i.map(h=>u(g,p,h,m))));a(()=>{l.forEach(g=>g())})},{flush:"post"})}function SB(e,u,t={}){const{window:s=di,ignore:n=[],capture:i=!0,detectIframe:o=!1,controls:r=!1}=t;if(!s)return r?{stop:Di,cancel:Di,trigger:Di}:Di;let a=!0;const m=F=>Su(n).some(B=>{if(typeof B=="string")return Array.from(s.document.querySelectorAll(B)).some(A=>A===F.target||F.composedPath().includes(A));{const A=Xs(B);return A&&(F.target===A||F.composedPath().includes(A))}});function l(F){const B=Su(F);return B&&B.$.subTree.shapeFlag===16}function g(F,B){const A=Su(F),O=A.$.subTree&&A.$.subTree.children;return O==null||!Array.isArray(O)?!1:O.some(N=>N.el===B.target||B.composedPath().includes(N.el))}const p=F=>{const B=Xs(e);if(F.target!=null&&!(!(B instanceof Element)&&l(e)&&g(e,F))&&!(!B||B===F.target||F.composedPath().includes(B))){if("detail"in F&&F.detail===0&&(a=!m(F)),!a){a=!0;return}u(F)}};let h=!1;const y=[Xt(s,"click",F=>{h||(h=!0,setTimeout(()=>{h=!1},0),p(F))},{passive:!0,capture:i}),Xt(s,"pointerdown",F=>{const B=Xs(e);a=!m(F)&&!!(B&&!F.composedPath().includes(B))},{passive:!0}),o&&Xt(s,"blur",F=>{setTimeout(()=>{const B=Xs(e);let A=s.document.activeElement;for(;A?.shadowRoot;)A=A.shadowRoot.activeElement;A?.tagName==="IFRAME"&&!B?.contains(s.document.activeElement)&&u(F)},0)},{passive:!0})].filter(Boolean),E=()=>y.forEach(F=>F());return r?{stop:E,cancel:()=>{a=!1},trigger:F=>{a=!0,p(F),a=!1}}:E}function wh(){const e=bs(!1),u=et();return u&&ri(()=>{e.value=!0},u),e}function Um(e){const u=wh();return Ge(()=>(u.value,!!e()))}function _B(e,u,t={}){const{window:s=di,...n}=t;let i;const o=Um(()=>s&&"MutationObserver"in s),r=()=>{i&&(i.disconnect(),i=void 0)},a=St(Ge(()=>{const g=Mi(Su(e)).map(Xs).filter(Ch);return new Set(g)}),g=>{r(),o.value&&g.size&&(i=new MutationObserver(u),g.forEach(p=>i.observe(p,n)))},{immediate:!0,flush:"post"}),m=()=>i?.takeRecords(),l=()=>{a(),r()};return a0(l),{isSupported:o,stop:l,takeRecords:m}}function bh(e){return typeof e=="function"?e:typeof e=="string"?u=>u.key===e:Array.isArray(e)?u=>e.includes(u.key):()=>!0}function Hl(...e){let u,t,s={};e.length===3?(u=e[0],t=e[1],s=e[2]):e.length===2?typeof e[1]=="object"?(u=!0,t=e[0],s=e[1]):(u=e[0],t=e[1]):(u=!0,t=e[0]);const{target:n=di,eventName:i="keydown",passive:o=!1,dedupe:r=!1}=s,a=bh(u);return Xt(n,i,m=>{m.repeat&&Su(r)||a(m)&&t(m)},o)}const Dh=Symbol("vueuse-ssr-width");function Fh(){const e=Rd()?Eh(Dh,null):null;return typeof e=="number"?e:void 0}function kh(e,u={}){const{window:t=di,ssrWidth:s=Fh()}=u,n=Um(()=>t&&"matchMedia"in t&&typeof t.matchMedia=="function"),i=bs(typeof s=="number"),o=bs(),r=bs(!1),a=m=>{r.value=m.matches};return Ld(()=>{if(i.value){i.value=!n.value,r.value=Su(e).split(",").some(m=>{const l=m.includes("not all"),g=m.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),p=m.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);let h=!!(g||p);return g&&h&&(h=s>=Wl(g[1])),p&&h&&(h=s<=Wl(p[1])),l?!h:h});return}n.value&&(o.value=t.matchMedia(Su(e)),r.value=o.value.matches)}),Xt(o,"change",a,{passive:!0}),Ge(()=>r.value)}function OB(e){return kh("(prefers-color-scheme: dark)",e)}function Nh(e,u={}){const{threshold:t=50,onSwipe:s,onSwipeEnd:n,onSwipeStart:i,passive:o=!0}=u,r=Vn({x:0,y:0}),a=Vn({x:0,y:0}),m=Ge(()=>r.x-a.x),l=Ge(()=>r.y-a.y),{max:g,abs:p}=Math,h=Ge(()=>g(p(m.value),p(l.value))>=t),y=bs(!1),E=Ge(()=>h.value?p(m.value)>p(l.value)?m.value>0?"left":"right":l.value>0?"up":"down":"none"),F=I=>[I.touches[0].clientX,I.touches[0].clientY],B=(I,Y)=>{r.x=I,r.y=Y},A=(I,Y)=>{a.x=I,a.y=Y},O={passive:o,capture:!o},N=I=>{y.value&&n?.(I,E.value),y.value=!1},K=[Xt(e,"touchstart",I=>{if(I.touches.length!==1)return;const[Y,se]=F(I);B(Y,se),A(Y,se),i?.(I)},O),Xt(e,"touchmove",I=>{if(I.touches.length!==1)return;const[Y,se]=F(I);A(Y,se),O.capture&&!O.passive&&Math.abs(m.value)>Math.abs(l.value)&&I.preventDefault(),!y.value&&h.value&&(y.value=!0),y.value&&s?.(I)},O),Xt(e,["touchend","touchcancel"],N,O)];return{isSwiping:y,direction:E,coordsStart:r,coordsEnd:a,lengthX:m,lengthY:l,stop:()=>K.forEach(I=>I())}}var Sh="M13 14H11V9H13M13 18H11V16H13M1 21H23L12 2L1 21Z",TB="M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z",_h="M23,12L20.56,9.22L20.9,5.54L17.29,4.72L15.4,1.54L12,3L8.6,1.54L6.71,4.72L3.1,5.53L3.44,9.21L1,12L3.44,14.78L3.1,18.47L6.71,19.29L8.6,22.47L12,21L15.4,22.46L17.29,19.28L20.9,18.46L20.56,14.78L23,12M13,17H11V15H13V17M13,13H11V7H13V13Z",zB="M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z",PB="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z",Oh="M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z",Th="M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z",zh="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z",Gl="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z",Ph="M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z",RB="M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z",LB="M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z",Rh="M14,19H18V5H14M6,19H10V5H6V19Z",Lh="M8,5.14V19.14L19,12.14L8,5.14Z",jB="M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z";const Zr=1024,Vm=Zr/2,d0=e=>document.documentElement.clientWidth{Wm.value=d0(Zr),Hm.value=d0(Vm)},{passive:!0});function IB(){return Wn(Wm)}function MB(){return Wn(Hm)}class jh{bundle;constructor(u){this.bundle={pluralFunction:u,translations:{}}}addTranslations(u){const t=Object.values(u.translations[""]??{}).map(({msgid:s,msgid_plural:n,msgstr:i})=>n!==void 0?[`_${s}_::_${n}_`,i]:[s,i[0]]);this.bundle.translations={...this.bundle.translations,...Object.fromEntries(t)}}gettext(u,t={}){return Ti("",u,t,void 0,{bundle:this.bundle})}ngettext(u,t,s,n={}){return lg("",u,t,s,n,{bundle:this.bundle})}}class Ih{debug=!1;language="en";translations={};setLanguage(u){return this.language=u,this}detectLocale(){return this.detectLanguage()}detectLanguage(){return this.setLanguage(k0().replace("-","_"))}addTranslation(u,t){return this.translations[u]=t,this}enableDebugMode(){return this.debug=!0,this}build(){this.debug&&console.debug(`Creating gettext instance for language ${this.language}`);const u=new jh(t=>dg(t,this.language));return this.language in this.translations&&u.addTranslations(this.translations[this.language]),u}}function Gm(){return new Ih}const Xr=Gm().detectLanguage().build(),$B=(...e)=>Xr.ngettext(...e),Cu=(...e)=>Xr.gettext(...e);function Xn(...e){for(const u of e)if(!u.registered){for(const{l:t,t:s}of u){if(t!==k0()||!s)continue;const n=Object.fromEntries(Object.entries(s).map(([i,o])=>[i,{msgid:i,msgid_plural:o.p,msgstr:o.v}]));Xr.addTranslations({translations:{"":n}})}u.registered=!0}}const Mh=[{l:"ar",t:{"a few seconds ago":{v:["منذ عدة ثوانٍ"]},"sec. ago":{v:["ثانية مضت"]},"seconds ago":{v:["ثوانٍ مضت"]}}},{l:"ast",t:{"a few seconds ago":{v:["hai unos segundos"]},"sec. ago":{v:["hai segs"]},"seconds ago":{v:["hai segundos"]}}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{"a few seconds ago":{v:["před několika sekundami"]},"sec. ago":{v:["sek. před"]},"seconds ago":{v:["sekund předtím"]}}},{l:"cs-CZ",t:{"a few seconds ago":{v:["před několika sekundami"]},"sec. ago":{v:["sek. před"]},"seconds ago":{v:["sekund předtím"]}}},{l:"da",t:{"a few seconds ago":{v:["et par sekunder siden"]},"sec. ago":{v:["sek. siden"]},"seconds ago":{v:["sekunder siden"]}}},{l:"de",t:{"a few seconds ago":{v:["vor ein paar Sekunden"]},"sec. ago":{v:["Sek. zuvor"]},"seconds ago":{v:["Sekunden zuvor"]}}},{l:"de-DE",t:{"a few seconds ago":{v:["vor ein paar Sekunden"]},"sec. ago":{v:["Sek. zuvor"]},"seconds ago":{v:["Sekunden zuvor"]}}},{l:"el",t:{"a few seconds ago":{v:["πριν λίγα δευτερόλεπτα"]},"sec. ago":{v:["δευτ. πριν"]},"seconds ago":{v:["δευτερόλεπτα πριν"]}}},{l:"en-GB",t:{"a few seconds ago":{v:["a few seconds ago"]},"sec. ago":{v:["sec. ago"]},"seconds ago":{v:["seconds ago"]}}},{l:"eo",t:{}},{l:"es",t:{"a few seconds ago":{v:["hace unos pocos segundos"]},"sec. ago":{v:["hace segundos"]},"seconds ago":{v:["segundos atrás"]}}},{l:"es-AR",t:{"a few seconds ago":{v:["hace unos segundos"]},"sec. ago":{v:["seg. atrás"]},"seconds ago":{v:["segundos atrás"]}}},{l:"es-EC",t:{"a few seconds ago":{v:["hace unos segundos"]},"sec. ago":{v:["hace segundos"]},"seconds ago":{v:["Segundos atrás"]}}},{l:"es-MX",t:{"a few seconds ago":{v:["hace unos segundos"]},"sec. ago":{v:["seg. atrás"]},"seconds ago":{v:["segundos atrás"]}}},{l:"et-EE",t:{"a few seconds ago":{v:["mõni sekund tagasi"]},"sec. ago":{v:["sek. tagasi"]},"seconds ago":{v:["sekundit tagasi"]}}},{l:"eu",t:{"a few seconds ago":{v:["duela segundo batzuk"]},"sec. ago":{v:["duela seg."]},"seconds ago":{v:["duela segundo"]}}},{l:"fa",t:{"a few seconds ago":{v:["چند ثانیه پیش"]},"sec. ago":{v:["چند ثانیه پیش"]},"seconds ago":{v:["چند ثانیه پیش"]}}},{l:"fi",t:{"a few seconds ago":{v:["muutamia sekunteja sitten"]},"sec. ago":{v:["sek. sitten"]},"seconds ago":{v:["sekunteja sitten"]}}},{l:"fr",t:{"a few seconds ago":{v:["il y a quelques instants"]},"sec. ago":{v:["il y a qq. sec."]},"seconds ago":{v:["il y a quelques secondes"]}}},{l:"ga",t:{"a few seconds ago":{v:["cúpla soicind ó shin"]},"sec. ago":{v:["soic. ó shin"]},"seconds ago":{v:["soicind ó shin"]}}},{l:"gl",t:{"a few seconds ago":{v:["hai uns segundos"]},"sec. ago":{v:["segs. atrás"]},"seconds ago":{v:["segundos atrás"]}}},{l:"he",t:{"a few seconds ago":{v:["לפני מספר שניות"]},"sec. ago":{v:["לפני מספר שניות"]},"seconds ago":{v:["לפני מס׳ שניות"]}}},{l:"hr",t:{"a few seconds ago":{v:["prije nekoliko sekundi"]},"sec. ago":{v:["prije nek. sek."]},"seconds ago":{v:["prije nek. sek."]}}},{l:"hu",t:{"a few seconds ago":{v:["néhány másodperce"]},"sec. ago":{v:["másodperce"]},"seconds ago":{v:["másodperce"]}}},{l:"id",t:{"a few seconds ago":{v:["beberapa detik yang lalu"]},"sec. ago":{v:["dtk. yang lalu"]},"seconds ago":{v:["beberapa detik lalu"]}}},{l:"is",t:{"a few seconds ago":{v:["fyrir örfáum sekúndum síðan"]},"sec. ago":{v:["sek. síðan"]},"seconds ago":{v:["sekúndum síðan"]}}},{l:"it",t:{"a few seconds ago":{v:["pochi secondi fa"]},"sec. ago":{v:["sec. fa"]},"seconds ago":{v:["secondi fa"]}}},{l:"ja",t:{"a few seconds ago":{v:["数秒前"]},"sec. ago":{v:["秒前"]},"seconds ago":{v:["数秒前"]}}},{l:"ja-JP",t:{"a few seconds ago":{v:["数秒前"]},"sec. ago":{v:["秒前"]},"seconds ago":{v:["数秒前"]}}},{l:"ko",t:{"a few seconds ago":{v:["방금 전"]},"sec. ago":{v:["몇 초 전"]},"seconds ago":{v:["초 전"]}}},{l:"lo",t:{"a few seconds ago":{v:["ສອງສາມວິນາທີກ່ອນ"]},"sec. ago":{v:["ວິ. ກ່ອນ"]},"seconds ago":{v:["ວິນາທີກ່ອນ"]}}},{l:"lt-LT",t:{"a few seconds ago":{v:["prieš keletą sekundžių"]},"sec. ago":{v:["prieš sek."]},"seconds ago":{v:["prieš sekundes"]}}},{l:"lv",t:{}},{l:"mk",t:{"a few seconds ago":{v:["пред неколку секунди"]},"sec. ago":{v:["секунда"]},"seconds ago":{v:["секунди"]}}},{l:"mn",t:{"a few seconds ago":{v:["хэдхэн секундын өмнө"]},"sec. ago":{v:["сек. өмнө"]},"seconds ago":{v:["секундын өмнө"]}}},{l:"my",t:{}},{l:"nb",t:{"a few seconds ago":{v:["noen få sekunder siden"]},"sec. ago":{v:["sek. siden"]},"seconds ago":{v:["sekunder siden"]}}},{l:"nl",t:{"a few seconds ago":{v:["enkele seconden geleden"]},"sec. ago":{v:["sec. geleden"]},"seconds ago":{v:["seconden geleden"]}}},{l:"oc",t:{}},{l:"pl",t:{"a few seconds ago":{v:["kilka sekund temu"]},"sec. ago":{v:["sek. temu"]},"seconds ago":{v:["sekund temu"]}}},{l:"pt-BR",t:{"a few seconds ago":{v:["há alguns segundos"]},"sec. ago":{v:["seg. atrás"]},"seconds ago":{v:["segundos atrás"]}}},{l:"pt-PT",t:{"a few seconds ago":{v:["há alguns segundos"]},"sec. ago":{v:["seg. atrás"]},"seconds ago":{v:["segundos atrás"]}}},{l:"ro",t:{"a few seconds ago":{v:["acum câteva secunde"]},"sec. ago":{v:["sec. în urmă"]},"seconds ago":{v:["secunde în urmă"]}}},{l:"ru",t:{"a few seconds ago":{v:["несколько секунд назад"]},"sec. ago":{v:["сек. назад"]},"seconds ago":{v:["секунд назад"]}}},{l:"sk",t:{"a few seconds ago":{v:["pred chvíľou"]},"sec. ago":{v:["pred pár sekundami"]},"seconds ago":{v:["pred sekundami"]}}},{l:"sl",t:{}},{l:"sr",t:{"a few seconds ago":{v:["пре неколико секунди"]},"sec. ago":{v:["сек. раније"]},"seconds ago":{v:["секунди раније"]}}},{l:"sv",t:{"a few seconds ago":{v:["några sekunder sedan"]},"sec. ago":{v:["sek. sedan"]},"seconds ago":{v:["sekunder sedan"]}}},{l:"tr",t:{"a few seconds ago":{v:["birkaç saniye önce"]},"sec. ago":{v:["sn. önce"]},"seconds ago":{v:["saniye önce"]}}},{l:"uk",t:{"a few seconds ago":{v:["декілька секунд тому"]},"sec. ago":{v:["с тому"]},"seconds ago":{v:["с тому"]}}},{l:"uz",t:{"a few seconds ago":{v:["bir necha soniya oldin"]},"sec. ago":{v:["sek. oldin"]},"seconds ago":{v:["soniyalar oldin"]}}},{l:"zh-CN",t:{"a few seconds ago":{v:["几秒前"]},"sec. ago":{v:["几秒前"]},"seconds ago":{v:["几秒前"]}}},{l:"zh-HK",t:{"a few seconds ago":{v:["幾秒前"]},"sec. ago":{v:["秒前"]},"seconds ago":{v:["秒前"]}}},{l:"zh-TW",t:{"a few seconds ago":{v:["幾秒前"]},"sec. ago":{v:["秒前"]},"seconds ago":{v:["秒前"]}}}],UB=[{l:"ar",t:{Acapulco:{v:["بازلائي مطفي"]},"Blue Violet":{v:["بنفسجي مشعشع"]},"Boston Blue":{v:["سماوي مطفي"]},Deluge:{v:["بنفسجي مطفي"]},Feldspar:{v:["وردي صخري"]},Gold:{v:["ذهبي"]},Mariner:{v:["أزرق بحري"]},"Nextcloud blue":{v:["أزرق نكست كلاود"]},Olivine:{v:["زيتي"]},Purple:{v:["بنفسجي"]},"Rosy brown":{v:["بُنِّي زهري"]},Whiskey:{v:["نبيذي"]}}},{l:"ast",t:{Acapulco:{v:["Acapulcu"]},"Blue Violet":{v:["Viola azulao"]},"Boston Blue":{v:["Azul Boston"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Oru"]},Mariner:{v:["Marineru"]},"Nextcloud blue":{v:["Nextcloud azul"]},Olivine:{v:["Olivina"]},Purple:{v:["Moráu"]},"Rosy brown":{v:["Marrón arrosao"]},Whiskey:{v:["Whiskey"]}}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{Acapulco:{v:["Akapulko"]},Black:{v:["Černá"]},"Blue Violet":{v:["Modrofialová"]},"Boston Blue":{v:["Bostonská modrá"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Živicová"]},Gold:{v:["Zlatá"]},Mariner:{v:["Námořnická"]},"Nextcloud blue":{v:["Nextcloud modrá"]},Olivine:{v:["Olivínová"]},Purple:{v:["Fialová"]},"Rosy brown":{v:["Růžovohnědá"]},Whiskey:{v:["Whisky"]},White:{v:["Bílá"]}}},{l:"cs-CZ",t:{Acapulco:{v:["Akapulko"]},"Blue Violet":{v:["Modrofialová"]},"Boston Blue":{v:["Bostonská modrá"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Živicová"]},Gold:{v:["Zlatá"]},Mariner:{v:["Námořnická"]},"Nextcloud blue":{v:["Nextcloud modrá"]},Olivine:{v:["Olivínová"]},Purple:{v:["Fialová"]},"Rosy brown":{v:["Růžovohnědá"]},Whiskey:{v:["Whisky"]}}},{l:"da",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Sort"]},"Blue Violet":{v:["Blue Violet"]},"Boston Blue":{v:["Boston Blue"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Guld"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["Nextcloud blue"]},Olivine:{v:["Olivine"]},Purple:{v:["Lilla"]},"Rosy brown":{v:["Rosy brown"]},Whiskey:{v:["Whiskey"]},White:{v:["Hvid"]}}},{l:"de",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Schwarz"]},"Blue Violet":{v:["Blau Violett"]},"Boston Blue":{v:["Boston-Blau"]},Deluge:{v:["Sintflut"]},Feldspar:{v:["Feldspat"]},Gold:{v:["Gold"]},Mariner:{v:["Seemann"]},"Nextcloud blue":{v:["Nextcloud Blau"]},Olivine:{v:["Olivin"]},Purple:{v:["Lila"]},"Rosy brown":{v:["Rosiges Braun"]},Whiskey:{v:["Whiskey"]},White:{v:["Weiß"]}}},{l:"de-DE",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Schwarz"]},"Blue Violet":{v:["Blau Violett"]},"Boston Blue":{v:["Boston-Blau"]},Deluge:{v:["Sintflut"]},Feldspar:{v:["Feldspat"]},Gold:{v:["Gold"]},Mariner:{v:["Seemann"]},"Nextcloud blue":{v:["Nextcloud Blau"]},Olivine:{v:["Olivin"]},Purple:{v:["Lila"]},"Rosy brown":{v:["Rosiges Braun"]},Whiskey:{v:["Whiskey"]},White:{v:["Weiß"]}}},{l:"el",t:{Acapulco:{v:["Ακαπούλκο"]},Black:{v:["Μαύρο"]},"Blue Violet":{v:["Μπλε Βιολέτ"]},"Boston Blue":{v:["Μπλε Βοστώνης"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Χρυσό"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["Μπλε Nextcloud"]},Olivine:{v:["Olivine"]},Purple:{v:["Μωβ"]},"Rosy brown":{v:["Ροζ καφέ"]},Whiskey:{v:["Ουίσκι"]},White:{v:["Λευκό"]}}},{l:"en-GB",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Black"]},"Blue Violet":{v:["Blue Violet"]},"Boston Blue":{v:["Boston Blue"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Gold"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["Nextcloud blue"]},Olivine:{v:["Olivine"]},Purple:{v:["Purple"]},"Rosy brown":{v:["Rosy brown"]},Whiskey:{v:["Whiskey"]},White:{v:["White"]}}},{l:"eo",t:{}},{l:"es",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Violeta Azul"]},"Boston Blue":{v:["Azul Boston"]},Deluge:{v:["Diluvio"]},Feldspar:{v:["Feldespato"]},Gold:{v:["Oro"]},Mariner:{v:["Marinero"]},"Nextcloud blue":{v:["Azul Nextcloud"]},Olivine:{v:["Olivino"]},Purple:{v:["Púrpura"]},"Rosy brown":{v:["Marrón rosáceo"]},Whiskey:{v:["Whiskey"]}}},{l:"es-AR",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Violeta Azul"]},"Boston Blue":{v:["Azul Boston"]},Deluge:{v:["Diluvio"]},Feldspar:{v:["Feldespato"]},Gold:{v:["Oro"]},Mariner:{v:["Marinero"]},"Nextcloud blue":{v:["Azul Nextcloud"]},Olivine:{v:["Olivino"]},Purple:{v:["Púrpura"]},"Rosy brown":{v:["Marrón rosáceo"]},Whiskey:{v:["Whiskey"]}}},{l:"es-EC",t:{}},{l:"es-MX",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Violeta Azul"]},"Boston Blue":{v:["Azul Boston"]},Deluge:{v:["Diluvio"]},Feldspar:{v:["Feldespato"]},Gold:{v:["Oro"]},Mariner:{v:["Marinero"]},"Nextcloud blue":{v:["Azul Nextcloud"]},Olivine:{v:["Olivino"]},Purple:{v:["Púrpura"]},"Rosy brown":{v:["Marrón rosáceo"]},Whiskey:{v:["Whiskey"]}}},{l:"et-EE",t:{Acapulco:{v:["Acapulco meresinine"]},Black:{v:["Must"]},"Blue Violet":{v:["Sinakasvioletne"]},"Boston Blue":{v:["Bostoni rohekassinine"]},Deluge:{v:["Tulvavee lilla"]},Feldspar:{v:["Põlevkivipruun"]},Gold:{v:["Kuldne"]},Mariner:{v:["Meresinine"]},"Nextcloud blue":{v:["Nextcloudi sinine"]},Olivine:{v:["Oliiviroheline"]},Purple:{v:["Purpurpunane"]},"Rosy brown":{v:["Roosikarva pruun"]},Whiskey:{v:["Viskikarva kollakaspruun"]},White:{v:["Valge"]}}},{l:"eu",t:{}},{l:"fa",t:{Acapulco:{v:["آکاپولکو"]},"Blue Violet":{v:["بنفش آبی"]},"Boston Blue":{v:["آبی بوستونی"]},Deluge:{v:["سیل"]},Feldspar:{v:["فلدسپات"]},Gold:{v:["طلا"]},Mariner:{v:["مارینر"]},"Nextcloud blue":{v:["نکس کلود آبی"]},Olivine:{v:["الیوین"]},Purple:{v:["بنفش"]},"Rosy brown":{v:["قهوه‌ای رز"]},Whiskey:{v:["ویسکی"]}}},{l:"fi",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Sinivioletti"]},"Boston Blue":{v:["Bostoninsininen"]},Deluge:{v:["Tulva"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Kulta"]},Mariner:{v:["Merenkulkija"]},"Nextcloud blue":{v:["Nextcloudin sininen"]},Olivine:{v:["Oliviini"]},Purple:{v:["Purppura"]},"Rosy brown":{v:["Ruusunruskea"]},Whiskey:{v:["Viski"]}}},{l:"fr",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Noir"]},"Blue Violet":{v:["Bleu violet"]},"Boston Blue":{v:["Bleu de Boston"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Doré"]},Mariner:{v:["Marin"]},"Nextcloud blue":{v:["Bleu Nextcloud"]},Olivine:{v:["Olivine"]},Purple:{v:["Violet"]},"Rosy brown":{v:["Brun rosé"]},Whiskey:{v:["Whiskey"]},White:{v:["Blanc"]}}},{l:"ga",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Dubh"]},"Blue Violet":{v:["Gorm Violet"]},"Boston Blue":{v:["Bostún Gorm"]},Deluge:{v:["Díle"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Óir"]},Mariner:{v:["Mairnéalach"]},"Nextcloud blue":{v:["Nextcloud gorm"]},Olivine:{v:["Olaivín"]},Purple:{v:["Corcra"]},"Rosy brown":{v:["Rosach donn"]},Whiskey:{v:["Fuisce"]},White:{v:["Bán"]}}},{l:"gl",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Negro"]},"Blue Violet":{v:["Azul violeta"]},"Boston Blue":{v:["Azul Boston"]},Deluge:{v:["Dioivo"]},Feldspar:{v:["Feldespato"]},Gold:{v:["Ouro"]},Mariner:{v:["Marino"]},"Nextcloud blue":{v:["Azul Nextcloud"]},Olivine:{v:["Olivina"]},Purple:{v:["Púrpura"]},"Rosy brown":{v:["Pardo rosado"]},Whiskey:{v:["Whisky"]},White:{v:["Branco"]}}},{l:"he",t:{}},{l:"hr",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Crna"]},"Blue Violet":{v:["Plavoljubičasta"]},"Boston Blue":{v:["Bostonsko plava"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Zlatna"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["Nextcloud plava"]},Olivine:{v:["Olivine"]},Purple:{v:["Ljubičasta"]},"Rosy brown":{v:["Ružičastosmeđa"]},Whiskey:{v:["Whiskey"]},White:{v:["Bijela"]}}},{l:"hu",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Fekete"]},"Blue Violet":{v:["Kék ibolya"]},"Boston Blue":{v:["Boston kék"]},Deluge:{v:["Özönvíz"]},Feldspar:{v:["Földpát"]},Gold:{v:["Arany"]},Mariner:{v:["Tengerész"]},"Nextcloud blue":{v:["Nextcloud kék"]},Olivine:{v:["Olivin"]},Purple:{v:["Lila"]},"Rosy brown":{v:["Rózsás barna"]},Whiskey:{v:["Whiskey"]},White:{v:["Fehér"]}}},{l:"id",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Hitam"]},"Blue Violet":{v:["Ungu kebiruan"]},"Boston Blue":{v:["Biru Boston"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Emas"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["Biru Nextcloud"]},Olivine:{v:["Olivine"]},Purple:{v:["Ungu"]},"Rosy brown":{v:["Cokelat kemerahan"]},Whiskey:{v:["Whiskey"]},White:{v:["Putih"]}}},{l:"is",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Bláklukka"]},"Boston Blue":{v:["Bostonblátt"]},Deluge:{v:["Fjólublátt"]},Feldspar:{v:["Feldspat"]},Gold:{v:["Gull"]},Mariner:{v:["Sjóarablátt"]},"Nextcloud blue":{v:["Nextcloud blátt"]},Olivine:{v:["Ólivín"]},Purple:{v:["Purpurablátt"]},"Rosy brown":{v:["Rósabrúnt"]},Whiskey:{v:["Viský"]}}},{l:"it",t:{Gold:{v:["Oro"]},"Nextcloud blue":{v:["Nextcloud blue"]},Purple:{v:["Viola"]}}},{l:"ja",t:{Acapulco:{v:["アカプルコ"]},Black:{v:["黒"]},"Blue Violet":{v:["ブルーバイオレット"]},"Boston Blue":{v:["ボストンブルー"]},Deluge:{v:["豪雨"]},Feldspar:{v:["長石"]},Gold:{v:["黄金"]},Mariner:{v:["船乗り"]},"Nextcloud blue":{v:["ネクストクラウド・ブルー"]},Olivine:{v:["カンラン石"]},Purple:{v:["紫色"]},"Rosy brown":{v:["バラ色"]},Whiskey:{v:["ウイスキー"]},White:{v:["白"]}}},{l:"ja-JP",t:{Acapulco:{v:["アカプルコ"]},"Blue Violet":{v:["ブルーバイオレット"]},"Boston Blue":{v:["ボストンブルー"]},Deluge:{v:["豪雨"]},Feldspar:{v:["長石"]},Gold:{v:["黄金"]},Mariner:{v:["船乗り"]},"Nextcloud blue":{v:["ネクストクラウド・ブルー"]},Olivine:{v:["カンラン石"]},Purple:{v:["紫色"]},"Rosy brown":{v:["バラ色"]},Whiskey:{v:["ウイスキー"]}}},{l:"ko",t:{Acapulco:{v:["아카풀코"]},Black:{v:["검정"]},"Blue Violet":{v:["푸른 보라"]},"Boston Blue":{v:["보스턴 블루"]},Deluge:{v:["폭우"]},Feldspar:{v:["장석"]},Gold:{v:["금"]},Mariner:{v:["뱃사람"]},"Nextcloud blue":{v:["Nextcloud 파랑"]},Olivine:{v:["감람석"]},Purple:{v:["보라"]},"Rosy brown":{v:["로지 브라운"]},Whiskey:{v:["위스키"]},White:{v:["하양"]}}},{l:"lo",t:{Acapulco:{v:["Acapulco"]},Black:{v:["ສີດຳ"]},"Blue Violet":{v:["Blue Violet"]},"Boston Blue":{v:["Boston Blue"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["ສີຄຳ"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["ສີຟ້າ Nextcloud"]},Olivine:{v:["Olivine"]},Purple:{v:["ສີມ່ວງ"]},"Rosy brown":{v:["Rosy brown"]},Whiskey:{v:["Whiskey"]},White:{v:["ສີຂາວ"]}}},{l:"lt-LT",t:{Acapulco:{v:['"Acapulco"']},Black:{v:["Juoda"]},"Blue Violet":{v:["Mėlyna-violetinė"]},"Boston Blue":{v:['"Boston Blue"']},Deluge:{v:['"Deluge"']},Feldspar:{v:['"Feldspar"']},Gold:{v:["Auksas"]},Mariner:{v:['"Mariner"']},"Nextcloud blue":{v:['"Nextcloud" mėlyna']},Olivine:{v:['"Olivine"']},Purple:{v:["Violetinė"]},"Rosy brown":{v:["Rožiniai rudas"]},Whiskey:{v:['"Whiskey"']},White:{v:["Balta"]}}},{l:"lv",t:{}},{l:"mk",t:{Acapulco:{v:["Акапулко"]},Black:{v:["Црно"]},"Blue Violet":{v:["Сино Виолетова"]},"Boston Blue":{v:["Бостон Сина"]},Deluge:{v:["Делуџ"]},Feldspar:{v:["Фелдспар"]},Gold:{v:["Златна"]},Mariner:{v:["Маринер"]},"Nextcloud blue":{v:["Nextcloud сина"]},Olivine:{v:["Оливин"]},Purple:{v:["Виолетова"]},"Rosy brown":{v:["Розево-кафеава"]},Whiskey:{v:["Виски"]},White:{v:["Бела"]}}},{l:"mn",t:{Acapulco:{v:["Акапулько"]},Black:{v:["Хар"]},"Blue Violet":{v:["Цэнхэр ягаан"]},"Boston Blue":{v:["Бостон цэнхэр"]},Deluge:{v:["Делюж"]},Feldspar:{v:["Фельдспар"]},Gold:{v:["Алтан"]},Mariner:{v:["Маринер"]},"Nextcloud blue":{v:["Nextcloud цэнхэр"]},Olivine:{v:["Оливин"]},Purple:{v:["Нил ягаан"]},"Rosy brown":{v:["Ягаан бор"]},Whiskey:{v:["Виски"]},White:{v:["Цагаан"]}}},{l:"my",t:{}},{l:"nb",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Blå fiolett"]},"Boston Blue":{v:["Boston blå"]},Deluge:{v:["Syndflod"]},Feldspar:{v:["Feltspat"]},Gold:{v:["Gull"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["Nextcloud-blå"]},Olivine:{v:["Olivin"]},Purple:{v:["Lilla"]},"Rosy brown":{v:["Rosenrød brun"]},Whiskey:{v:["Whiskey"]}}},{l:"nl",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Zwart"]},"Blue Violet":{v:["Blauw Paars"]},"Boston Blue":{v:["Boston Blauw"]},Deluge:{v:["Overlopen"]},Feldspar:{v:["Veldspaat"]},Gold:{v:["Goud"]},Mariner:{v:["Marineblauw"]},"Nextcloud blue":{v:["Nextcloud blauw"]},Olivine:{v:["Olivijn"]},Purple:{v:["Paars"]},"Rosy brown":{v:["Rozig bruin"]},Whiskey:{v:["Whiskey"]},White:{v:["Wit"]}}},{l:"oc",t:{}},{l:"pl",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Niebieski fiolet"]},"Boston Blue":{v:["Błękit Bostonu"]},Deluge:{v:["Potop"]},Feldspar:{v:["Skaleń"]},Gold:{v:["Złote"]},Mariner:{v:["Marynarz"]},"Nextcloud blue":{v:["Niebieskie Nextcloud"]},Olivine:{v:["Oliwin"]},Purple:{v:["Fioletowy"]},"Rosy brown":{v:["Różowy brąz"]},Whiskey:{v:["Whisky"]}}},{l:"pt-BR",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Preto"]},"Blue Violet":{v:["Violeta Azul"]},"Boston Blue":{v:["Azul Boston"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspato"]},Gold:{v:["Ouro"]},Mariner:{v:["Marinheiro"]},"Nextcloud blue":{v:["Azul Nextcloud"]},Olivine:{v:["Olivina"]},Purple:{v:["Roxo"]},"Rosy brown":{v:["Castanho rosado"]},Whiskey:{v:["Uísque"]},White:{v:["Branco"]}}},{l:"pt-PT",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Azul violeta"]},"Boston Blue":{v:["Azul Boston"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Ouro"]},Mariner:{v:["Mariner"]},"Nextcloud blue":{v:["Nextcloud azul"]},Olivine:{v:["Olivine"]},Purple:{v:["Púrpura"]},"Rosy brown":{v:["Castanho rosado"]},Whiskey:{v:["Whiskey"]}}},{l:"ro",t:{Gold:{v:["Aur"]},"Nextcloud blue":{v:["Nextcloud albastru"]},Purple:{v:["Purpuriu"]}}},{l:"ru",t:{Acapulco:{v:["Акапулько"]},Black:{v:["Черный"]},"Blue Violet":{v:["Синий фиолет"]},"Boston Blue":{v:["Синий Бостон"]},Deluge:{v:["Перламутрово-фиолетовый"]},Feldspar:{v:["Античная латунь"]},Gold:{v:["Золотой"]},Mariner:{v:["Морской"]},"Nextcloud blue":{v:["Nextcloud голубой"]},Olivine:{v:[" Оливковый"]},Purple:{v:["Фиолетовый"]},"Rosy brown":{v:["Розово-коричневый"]},Whiskey:{v:["Виски"]},White:{v:["Белый"]}}},{l:"sk",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["Modro fialová"]},"Boston Blue":{v:["Bostonská modrá"]},Deluge:{v:["Deluge"]},Feldspar:{v:["Živec"]},Gold:{v:["Zlatá"]},Mariner:{v:["Námorník"]},"Nextcloud blue":{v:["Nextcloud modrá"]},Olivine:{v:["Olivová"]},Purple:{v:["Fialová"]},"Rosy brown":{v:["Ružovo hnedá"]},Whiskey:{v:["Whisky"]}}},{l:"sl",t:{}},{l:"sr",t:{Acapulco:{v:["Акапулко"]},Black:{v:["Црно"]},"Blue Violet":{v:["Плаво љубичаста"]},"Boston Blue":{v:["Бостон плава"]},Deluge:{v:["Поплава"]},Feldspar:{v:["Фелдспар"]},Gold:{v:["Злато"]},Mariner:{v:["Морнар"]},"Nextcloud blue":{v:["Nextcloud плава"]},Olivine:{v:["Маслинаста"]},Purple:{v:["Пурпурна"]},"Rosy brown":{v:["Роси браон"]},Whiskey:{v:["Виски"]},White:{v:["Бело"]}}},{l:"sv",t:{Acapulco:{v:["Acapulco"]},Black:{v:["Svart"]},"Blue Violet":{v:["Blåviolett"]},"Boston Blue":{v:["Bostonblå"]},Deluge:{v:["Skyfallsblå"]},Feldspar:{v:["Fältspat"]},Gold:{v:["Guld"]},Mariner:{v:["Marinblå"]},"Nextcloud blue":{v:["Nextcloud-blå"]},Olivine:{v:["Olivin"]},Purple:{v:["Lila"]},"Rosy brown":{v:["Rosabrun"]},Whiskey:{v:["Whisky"]},White:{v:["Vit"]}}},{l:"tr",t:{Acapulco:{v:["Akapulko"]},Black:{v:["Siyah"]},"Blue Violet":{v:["Mavi mor"]},"Boston Blue":{v:["Boston mavisi"]},Deluge:{v:["Sel"]},Feldspar:{v:["Feldispat"]},Gold:{v:["Altın"]},Mariner:{v:["Denizci"]},"Nextcloud blue":{v:["Nextcloud mavi"]},Olivine:{v:["Zeytinlik"]},Purple:{v:["Mor"]},"Rosy brown":{v:["Kırmızımsı kahverengi"]},Whiskey:{v:["Viski"]},White:{v:["Beyaz"]}}},{l:"uk",t:{Acapulco:{v:["Акапулько"]},"Blue Violet":{v:["Блакитна фіалка"]},"Boston Blue":{v:["Бостонський синій"]},Deluge:{v:["Злива"]},Feldspar:{v:["Польові шпати"]},Gold:{v:["Золотий"]},Mariner:{v:["Морський"]},"Nextcloud blue":{v:["Блакитний Nextcloud"]},Olivine:{v:["Олива"]},Purple:{v:["Фіолетовий"]},"Rosy brown":{v:["Темно-рожевий"]},Whiskey:{v:["Кола"]}}},{l:"uz",t:{Acapulco:{v:["Akapulko"]},Black:{v:["Qora"]},"Blue Violet":{v:["Moviy binafsha"]},"Boston Blue":{v:["Boston ko'k"]},Deluge:{v:["To'fon"]},Feldspar:{v:["Feldspar"]},Gold:{v:["Oltin"]},Mariner:{v:["Dengizchi"]},"Nextcloud blue":{v:["Ko'k Nextcloud "]},Olivine:{v:["Olivine"]},Purple:{v:["Binafsha"]},"Rosy brown":{v:["Qizil jigarrang"]},Whiskey:{v:["Whiskey"]},White:{v:["Oq"]}}},{l:"zh-CN",t:{Acapulco:{v:["Acapulco"]},"Blue Violet":{v:["瓦罗兰特蓝"]},"Boston Blue":{v:["波士顿蓝"]},Deluge:{v:["洪水色"]},Feldspar:{v:["长石"]},Gold:{v:["金色"]},Mariner:{v:["水手"]},"Nextcloud blue":{v:["Nextcloud 蓝"]},Olivine:{v:["橄榄石色"]},Purple:{v:["紫色"]},"Rosy brown":{v:["玫瑰棕色"]},Whiskey:{v:["威士忌"]}}},{l:"zh-HK",t:{Acapulco:{v:["阿卡普爾科"]},Black:{v:["黑色"]},"Blue Violet":{v:["藍紫色"]},"Boston Blue":{v:["波士頓藍"]},Deluge:{v:["大洪水"]},Feldspar:{v:["長石"]},Gold:{v:["Gold"]},Mariner:{v:["海軍藍"]},"Nextcloud blue":{v:["Nextcloud 藍色"]},Olivine:{v:["橄欖石色"]},Purple:{v:["紫色"]},"Rosy brown":{v:["玫瑰棕色"]},Whiskey:{v:["威士忌"]},White:{v:["白色"]}}},{l:"zh-TW",t:{Acapulco:{v:["Acapulco"]},Black:{v:["黑色"]},"Blue Violet":{v:["藍紫色"]},"Boston Blue":{v:["波士頓藍"]},Deluge:{v:["Deluge"]},Feldspar:{v:["長石"]},Gold:{v:["金色"]},Mariner:{v:["海軍藍"]},"Nextcloud blue":{v:["Nextcloud 藍色"]},Olivine:{v:["橄欖石色"]},Purple:{v:["紫色"]},"Rosy brown":{v:["玫瑰棕色"]},Whiskey:{v:["威士忌"]},White:{v:["白色"]}}}],$h=[{l:"ar",t:{Actions:{v:["إجراءات"]}}},{l:"ast",t:{Actions:{v:["Aiciones"]}}},{l:"br",t:{Actions:{v:["Oberioù"]}}},{l:"ca",t:{Actions:{v:["Accions"]}}},{l:"cs",t:{Actions:{v:["Akce"]}}},{l:"cs-CZ",t:{Actions:{v:["Akce"]}}},{l:"da",t:{Actions:{v:["Handlinger"]}}},{l:"de",t:{Actions:{v:["Aktionen"]}}},{l:"de-DE",t:{Actions:{v:["Aktionen"]}}},{l:"el",t:{Actions:{v:["Ενέργειες"]}}},{l:"en-GB",t:{Actions:{v:["Actions"]}}},{l:"eo",t:{Actions:{v:["Agoj"]}}},{l:"es",t:{Actions:{v:["Acciones"]}}},{l:"es-AR",t:{Actions:{v:["Acciones"]}}},{l:"es-EC",t:{Actions:{v:["Acciones"]}}},{l:"es-MX",t:{Actions:{v:["Acciones"]}}},{l:"et-EE",t:{Actions:{v:["Tegevus"]}}},{l:"eu",t:{Actions:{v:["Ekintzak"]}}},{l:"fa",t:{Actions:{v:["کنش‌ها"]}}},{l:"fi",t:{Actions:{v:["Toiminnot"]}}},{l:"fr",t:{Actions:{v:["Actions"]}}},{l:"ga",t:{Actions:{v:["Gníomhartha"]}}},{l:"gl",t:{Actions:{v:["Accións"]}}},{l:"he",t:{Actions:{v:["פעולות"]}}},{l:"hr",t:{Actions:{v:["Radnje"]}}},{l:"hu",t:{Actions:{v:["Műveletek"]}}},{l:"id",t:{Actions:{v:["Tindakan"]}}},{l:"is",t:{Actions:{v:["Aðgerðir"]}}},{l:"it",t:{Actions:{v:["Azioni"]}}},{l:"ja",t:{Actions:{v:["操作"]}}},{l:"ja-JP",t:{Actions:{v:["操作"]}}},{l:"ko",t:{Actions:{v:["동작"]}}},{l:"lo",t:{Actions:{v:["ການກະທຳ"]}}},{l:"lt-LT",t:{Actions:{v:["Veiksmai"]}}},{l:"lv",t:{}},{l:"mk",t:{Actions:{v:["Акции"]}}},{l:"mn",t:{Actions:{v:["Үйлдлүүд"]}}},{l:"my",t:{Actions:{v:["လုပ်ဆောင်ချက်များ"]}}},{l:"nb",t:{Actions:{v:["Handlinger"]}}},{l:"nl",t:{Actions:{v:["Acties"]}}},{l:"oc",t:{Actions:{v:["Accions"]}}},{l:"pl",t:{Actions:{v:["Działania"]}}},{l:"pt-BR",t:{Actions:{v:["Ações"]}}},{l:"pt-PT",t:{Actions:{v:["Ações"]}}},{l:"ro",t:{Actions:{v:["Acțiuni"]}}},{l:"ru",t:{Actions:{v:["Действия "]}}},{l:"sk",t:{Actions:{v:["Akcie"]}}},{l:"sl",t:{Actions:{v:["Dejanja"]}}},{l:"sr",t:{Actions:{v:["Радње"]}}},{l:"sv",t:{Actions:{v:["Åtgärder"]}}},{l:"tr",t:{Actions:{v:["İşlemler"]}}},{l:"uk",t:{Actions:{v:["Дії"]}}},{l:"uz",t:{Actions:{v:["Harakatlar"]}}},{l:"zh-CN",t:{Actions:{v:["行为"]}}},{l:"zh-HK",t:{Actions:{v:["動作"]}}},{l:"zh-TW",t:{Actions:{v:["動作"]}}}],VB=[{l:"ar",t:{"Avatar of {displayName}":{v:["صورة الملف الشخصي الرمزية لــ {displayName} "]},"Avatar of {displayName}, {status}":{v:["صورة الملف الشخصي الرمزية لــ {displayName}، {status}"]}}},{l:"ast",t:{"Avatar of {displayName}":{v:["Avatar de: {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de: {displayName}, {status}"]}}},{l:"br",t:{}},{l:"ca",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"cs",t:{"Avatar of {displayName}":{v:["Zástupný obrázek uživatele {displayName}"]},"Avatar of {displayName}, {status}":{v:["Zástupný obrázek uživatele {displayName}, {status}"]}}},{l:"cs-CZ",t:{"Avatar of {displayName}":{v:["Zástupný obrázek uživatele {displayName}"]},"Avatar of {displayName}, {status}":{v:["Zástupný obrázek uživatele {displayName}, {status}"]}}},{l:"da",t:{"Avatar of {displayName}":{v:["Avatar af {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar af {displayName}, {status}"]}}},{l:"de",t:{"Avatar of {displayName}":{v:["Avatar von {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar von {displayName}, {status}"]}}},{l:"de-DE",t:{"Avatar of {displayName}":{v:["Avatar von {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar von {displayName}, {status}"]}}},{l:"el",t:{"Avatar of {displayName}":{v:["Άβαταρ του {displayName}"]},"Avatar of {displayName}, {status}":{v:["Άβαταρ του {displayName}, {status}"]}}},{l:"en-GB",t:{"Avatar of {displayName}":{v:["Avatar of {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar of {displayName}, {status}"]}}},{l:"eo",t:{}},{l:"es",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"es-AR",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"es-EC",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"es-MX",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"et-EE",t:{"Avatar of {displayName}":{v:["Tunnuspilt: {displayName}"]},"Avatar of {displayName}, {status}":{v:["Tunnuspilt: {displayName}, {status}"]}}},{l:"eu",t:{"Avatar of {displayName}":{v:["{displayName}-(e)n irudia"]},"Avatar of {displayName}, {status}":{v:["{displayName} -(e)n irudia, {status}"]}}},{l:"fa",t:{"Avatar of {displayName}":{v:["آواتار {displayName}"]},"Avatar of {displayName}, {status}":{v:["آواتار {displayName} ، {status}"]}}},{l:"fi",t:{"Avatar of {displayName}":{v:["{displayName}n avatar"]},"Avatar of {displayName}, {status}":{v:["{displayName}n avatar, {status}"]}}},{l:"fr",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"ga",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"gl",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"he",t:{"Avatar of {displayName}":{v:["תמונה ייצוגית של {displayName}"]},"Avatar of {displayName}, {status}":{v:["תמונה ייצוגית של {displayName}, {status}"]}}},{l:"hr",t:{"Avatar of {displayName}":{v:["Avatar od {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar od {displayName}, {status}"]}}},{l:"hu",t:{"Avatar of {displayName}":{v:["{displayName} profilképe"]},"Avatar of {displayName}, {status}":{v:["{displayName} profilképe, {status}"]}}},{l:"id",t:{"Avatar of {displayName}":{v:["Avatar {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar {displayName}, {status}"]}}},{l:"is",t:{"Avatar of {displayName}":{v:["Auðkennismynd fyrir {displayName}"]},"Avatar of {displayName}, {status}":{v:["Auðkennismynd fyrir {displayName}, {status}"]}}},{l:"it",t:{"Avatar of {displayName}":{v:["Avatar di {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar di {displayName}, {status}"]}}},{l:"ja",t:{"Avatar of {displayName}":{v:["{displayName} のアバター"]},"Avatar of {displayName}, {status}":{v:["{displayName}, {status} のアバター"]}}},{l:"ja-JP",t:{"Avatar of {displayName}":{v:["{displayName} のアバター"]},"Avatar of {displayName}, {status}":{v:["{displayName}, {status} のアバター"]}}},{l:"ko",t:{"Avatar of {displayName}":{v:["{displayName}님의 아바타"]},"Avatar of {displayName}, {status}":{v:["{displayName}, {status}님의 아바타"]}}},{l:"lo",t:{"Avatar of {displayName}":{v:["ຮູບແທນຕົວຂອງ {displayName}"]},"Avatar of {displayName}, {status}":{v:["ຮູບແທນຕົວຂອງ {displayName}, {status}"]}}},{l:"lt-LT",t:{"Avatar of {displayName}":{v:["{displayName} avataras"]},"Avatar of {displayName}, {status}":{v:["{displayName} avataras, {status}"]}}},{l:"lv",t:{}},{l:"mk",t:{"Avatar of {displayName}":{v:["Аватар на {displayName}"]},"Avatar of {displayName}, {status}":{v:["Аватар на {displayName}, {status}"]}}},{l:"mn",t:{"Avatar of {displayName}":{v:["{displayName}-ийн аватар"]},"Avatar of {displayName}, {status}":{v:["{displayName}-ийн аватар, {status}"]}}},{l:"my",t:{"Avatar of {displayName}":{v:["{displayName} ၏ ကိုယ်ပွား"]}}},{l:"nb",t:{"Avatar of {displayName}":{v:["Avataren til {displayName}"]},"Avatar of {displayName}, {status}":{v:["{displayName}'s avatar, {status}"]}}},{l:"nl",t:{"Avatar of {displayName}":{v:["Avatar van {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar van {displayName}, {status}"]}}},{l:"oc",t:{}},{l:"pl",t:{"Avatar of {displayName}":{v:["Awatar {displayName}"]},"Avatar of {displayName}, {status}":{v:["Awatar {displayName}, {status}"]}}},{l:"pt-BR",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"pt-PT",t:{"Avatar of {displayName}":{v:["Avatar de {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar de {displayName}, {status}"]}}},{l:"ro",t:{"Avatar of {displayName}":{v:["Avatarul lui {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatarul lui {displayName}, {status}"]}}},{l:"ru",t:{"Avatar of {displayName}":{v:["Аватар {displayName}"]},"Avatar of {displayName}, {status}":{v:["Фотография {displayName}, {status}"]}}},{l:"sk",t:{"Avatar of {displayName}":{v:["Avatar {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar {displayName}, {status}"]}}},{l:"sl",t:{"Avatar of {displayName}":{v:["Podoba {displayName}"]},"Avatar of {displayName}, {status}":{v:["Prikazna slika {displayName}, {status}"]}}},{l:"sr",t:{"Avatar of {displayName}":{v:["Аватар за {displayName}"]},"Avatar of {displayName}, {status}":{v:["Avatar za {displayName}, {status}"]}}},{l:"sv",t:{"Avatar of {displayName}":{v:["{displayName}s avatar"]},"Avatar of {displayName}, {status}":{v:["{displayName}s avatar, {status}"]}}},{l:"tr",t:{"Avatar of {displayName}":{v:["{displayName} avatarı"]},"Avatar of {displayName}, {status}":{v:["{displayName}, {status} avatarı"]}}},{l:"uk",t:{"Avatar of {displayName}":{v:["Аватар {displayName}"]},"Avatar of {displayName}, {status}":{v:["Аватар {displayName}, {status}"]}}},{l:"uz",t:{"Avatar of {displayName}":{v:[" {displayName}Avatari"]},"Avatar of {displayName}, {status}":{v:["{displayName}, {status} Avatari"]}}},{l:"zh-CN",t:{"Avatar of {displayName}":{v:["{displayName}的头像"]},"Avatar of {displayName}, {status}":{v:["{displayName}的头像,{status}"]}}},{l:"zh-HK",t:{"Avatar of {displayName}":{v:["{displayName} 的頭像"]},"Avatar of {displayName}, {status}":{v:["{displayName} 的頭像,{status}"]}}},{l:"zh-TW",t:{"Avatar of {displayName}":{v:["{displayName} 的大頭照"]},"Avatar of {displayName}, {status}":{v:["{displayName}, {status} 的大頭照"]}}}],WB=[{l:"ar",t:{away:{v:["غير موجود"]},busy:{v:["مشغول"]},"do not disturb":{v:["يُرجى عدم الإزعاج"]},invisible:{v:["غير مرئي"]},offline:{v:["غير متصل"]},online:{v:["متصل"]}}},{l:"ast",t:{away:{v:["ausente"]},busy:{v:["ocupáu"]},"do not disturb":{v:["nun molestar"]},invisible:{v:["invisible"]},offline:{v:["desconectáu"]},online:{v:["en llinia"]}}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{away:{v:["pryč"]},busy:{v:["zaneprádněn(a)"]},"do not disturb":{v:["nerušit"]},invisible:{v:["neviditelné"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"cs-CZ",t:{away:{v:["pryč"]},busy:{v:["zaneprádněn(a)"]},"do not disturb":{v:["nerušit"]},invisible:{v:["neviditelné"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"da",t:{away:{v:["væk"]},busy:{v:["optaget"]},"do not disturb":{v:["forstyr ikke"]},invisible:{v:["usynlig"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"de",t:{away:{v:["Abwesend"]},busy:{v:["Beschäftigt"]},"do not disturb":{v:["Bitte nicht stören"]},invisible:{v:["Unsichtbar"]},offline:{v:["Offline"]},online:{v:["Online"]}}},{l:"de-DE",t:{away:{v:["Abwesend"]},busy:{v:["Beschäftigt"]},"do not disturb":{v:["Bitte nicht stören"]},invisible:{v:["Unsichtbar"]},offline:{v:["Offline"]},online:{v:["Online"]}}},{l:"el",t:{away:{v:["μακριά"]},busy:{v:["απασχολημένος"]},"do not disturb":{v:["μην ενοχλείτε"]},invisible:{v:["αόρατο"]},offline:{v:["εκτός σύνδεσης"]},online:{v:["συνδεδεμένος"]}}},{l:"en-GB",t:{away:{v:["away"]},busy:{v:["busy"]},"do not disturb":{v:["do not disturb"]},invisible:{v:["invisible"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"eo",t:{}},{l:"es",t:{away:{v:["ausente"]},busy:{v:["ocupado"]},"do not disturb":{v:["no molestar"]},invisible:{v:["invisible"]},offline:{v:["fuera de línea"]},online:{v:["en línea"]}}},{l:"es-AR",t:{away:{v:["ausente"]},busy:{v:["ocupado"]},"do not disturb":{v:["no molestar"]},invisible:{v:["invisible"]},offline:{v:["desconectado"]},online:{v:["en línea"]}}},{l:"es-EC",t:{}},{l:"es-MX",t:{away:{v:["ausente"]},busy:{v:["ocupado"]},"do not disturb":{v:["no molestar"]},invisible:{v:["invisible"]},offline:{v:["fuera de línea"]},online:{v:["en línea"]}}},{l:"et-EE",t:{away:{v:["eemal"]},busy:{v:["hõivatud"]},"do not disturb":{v:["ära sega"]},invisible:{v:["nähtamatu"]},offline:{v:["pole võrgus"]},online:{v:["võrgus"]}}},{l:"eu",t:{}},{l:"fa",t:{away:{v:["دور از دستگاه"]},busy:{v:["مشغول"]},"do not disturb":{v:["مزاحم نشوید"]},invisible:{v:["مخفی"]},offline:{v:["برون‌خط"]},online:{v:["برخط"]}}},{l:"fi",t:{away:{v:["poissa"]},busy:{v:["varattu"]},"do not disturb":{v:["älä häiritse"]},invisible:{v:["näkymätön"]},offline:{v:["ei linjalla"]},online:{v:["linjalla"]}}},{l:"fr",t:{away:{v:["absent"]},busy:{v:["occupé"]},"do not disturb":{v:["ne pas déranger"]},invisible:{v:["invisible"]},offline:{v:["hors ligne"]},online:{v:["en ligne"]}}},{l:"ga",t:{away:{v:["ar shiúl"]},busy:{v:["gnóthach"]},"do not disturb":{v:["ná cur as"]},invisible:{v:["dofheicthe"]},offline:{v:["as líne"]},online:{v:["ar líne"]}}},{l:"gl",t:{away:{v:["ausente"]},busy:{v:["ocupado"]},"do not disturb":{v:["non molestar"]},invisible:{v:["invisíbel"]},offline:{v:["desconectado"]},online:{v:["conectado"]}}},{l:"he",t:{}},{l:"hr",t:{away:{v:["odsutan"]},busy:{v:["zauzet"]},"do not disturb":{v:["ne smetaj"]},invisible:{v:["nevidljiv"]},offline:{v:["izvan mreže"]},online:{v:["na mreži"]}}},{l:"hu",t:{away:{v:["távol"]},busy:{v:["foglalt"]},"do not disturb":{v:["ne zavarjanak"]},invisible:{v:["láthatatlan"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"id",t:{away:{v:["tidak tersedia"]},busy:{v:["sibuk"]},"do not disturb":{v:["jangan ganggu"]},invisible:{v:["tidak terlihat"]},offline:{v:["luring"]},online:{v:["daring"]}}},{l:"is",t:{away:{v:["í burtu"]},busy:{v:["upptekin/n"]},"do not disturb":{v:["ekki ónáða"]},invisible:{v:["ósýnilegt"]},offline:{v:["ónettengt"]},online:{v:["nettengt"]}}},{l:"it",t:{away:{v:["via"]},"do not disturb":{v:["non disturbare"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"ja",t:{away:{v:["離れる"]},busy:{v:["ビジー"]},"do not disturb":{v:["邪魔をしないでください"]},invisible:{v:["不可視"]},offline:{v:["オフライン"]},online:{v:["オンライン"]}}},{l:"ja-JP",t:{away:{v:["離れる"]},busy:{v:["ビジー"]},"do not disturb":{v:["邪魔をしないでください"]},invisible:{v:["不可視"]},offline:{v:["オフライン"]},online:{v:["オンライン"]}}},{l:"ko",t:{away:{v:["자리 비움"]},busy:{v:["바쁨"]},"do not disturb":{v:["방해 금지"]},invisible:{v:["보이지 않음"]},offline:{v:["오프라인"]},online:{v:["온라인"]}}},{l:"lo",t:{away:{v:["ບໍ່ຢູ່"]},busy:{v:["ບໍ່ວ່າງ"]},"do not disturb":{v:["ຫ້າມລົບກວນ"]},invisible:{v:["ບໍ່ສະແດງ"]},offline:{v:["ອອບໄລນ໌"]},online:{v:["ອອນໄລນ໌"]}}},{l:"lt-LT",t:{away:{v:["pasišalinęs"]},busy:{v:["užsiėmęs"]},"do not disturb":{v:["netrukdyti"]},invisible:{v:["nematomas"]},offline:{v:["neprisijungęs"]},online:{v:["prisijungęs"]}}},{l:"lv",t:{}},{l:"mk",t:{away:{v:["оддалечен"]},busy:{v:["зафатен"]},"do not disturb":{v:["не вознемирувај"]},invisible:{v:["невидливо"]},offline:{v:["офлајн"]},online:{v:["онлајн"]}}},{l:"mn",t:{away:{v:["хол байна"]},busy:{v:["завгүй"]},"do not disturb":{v:["бүү саад бол"]},invisible:{v:["үл харагдах"]},offline:{v:["офлайн"]},online:{v:["онлайн"]}}},{l:"my",t:{}},{l:"nb",t:{away:{v:["borte"]},busy:{v:["opptatt"]},"do not disturb":{v:["ikke forstyrr"]},invisible:{v:["usynlig"]},offline:{v:["frakoblet"]},online:{v:["tilkoblet"]}}},{l:"nl",t:{away:{v:["weg"]},busy:{v:["bezig"]},"do not disturb":{v:["niet storen"]},invisible:{v:["Onzichtbaar"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"oc",t:{}},{l:"pl",t:{away:{v:["stąd"]},busy:{v:["zajęty"]},"do not disturb":{v:["nie przeszkadzać"]},invisible:{v:["niewidzialny"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"pt-BR",t:{away:{v:["ausente"]},busy:{v:["ocupado"]},"do not disturb":{v:["não perturbe"]},invisible:{v:["invisível"]},offline:{v:["off-line"]},online:{v:["on-line"]}}},{l:"pt-PT",t:{away:{v:["longe"]},busy:{v:["ocupado"]},"do not disturb":{v:["não incomodar"]},invisible:{v:["invisível"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"ro",t:{away:{v:["plecat"]},"do not disturb":{v:["nu deranjați"]},offline:{v:["deconectat"]},online:{v:["online"]}}},{l:"ru",t:{away:{v:["отсутствие"]},busy:{v:["занятый"]},"do not disturb":{v:["не беспокоить"]},invisible:{v:["невидимый"]},offline:{v:["офлайн"]},online:{v:["онлайн"]}}},{l:"sk",t:{away:{v:["neprítomný"]},busy:{v:["zaneprázdnený"]},"do not disturb":{v:["nerušiť"]},invisible:{v:["neviditeľný"]},offline:{v:["Odpojený - offline"]},online:{v:["Pripojený - online"]}}},{l:"sl",t:{}},{l:"sr",t:{away:{v:["одсутан"]},busy:{v:["заузет"]},"do not disturb":{v:["не узнемиравај"]},invisible:{v:["невидљиво"]},offline:{v:["ван мреже"]},online:{v:["на мрежи"]}}},{l:"sv",t:{away:{v:["borta"]},busy:{v:["upptagen"]},"do not disturb":{v:["stör ej"]},invisible:{v:["osynlig"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"tr",t:{away:{v:["Uzakta"]},busy:{v:["Meşgul"]},"do not disturb":{v:["Rahatsız etmeyin"]},invisible:{v:["görünmez"]},offline:{v:["Çevrim dışı"]},online:{v:["Çevrim içi"]}}},{l:"uk",t:{away:{v:["відсутній"]},busy:{v:["зайнято"]},"do not disturb":{v:["не турбувати"]},invisible:{v:["Невидимий"]},offline:{v:["не в мережі"]},online:{v:["в мережі"]}}},{l:"uz",t:{away:{v:["uzoqda"]},busy:{v:["band"]},"do not disturb":{v:["bezovta qilmang"]},invisible:{v:["ko'rinmas"]},offline:{v:["offline"]},online:{v:["online"]}}},{l:"zh-CN",t:{away:{v:["离开"]},busy:{v:["繁忙"]},"do not disturb":{v:["请勿打扰"]},invisible:{v:["隐藏的"]},offline:{v:["离线"]},online:{v:["在线"]}}},{l:"zh-HK",t:{away:{v:["離開"]},busy:{v:["忙碌"]},"do not disturb":{v:["請勿打擾"]},invisible:{v:["隐藏的"]},offline:{v:["離線"]},online:{v:["在線"]}}},{l:"zh-TW",t:{away:{v:["離開"]},busy:{v:["忙碌"]},"do not disturb":{v:["請勿打擾"]},invisible:{v:["不可見"]},offline:{v:["離線"]},online:{v:["線上"]}}}],HB=[{l:"ar",t:{"Cancel changes":{v:["إلغاء التغييرات"]},"Confirm changes":{v:["تأكيد التغييرات"]}}},{l:"ast",t:{"Cancel changes":{v:["Encaboxar los cambeos"]},"Confirm changes":{v:["Confirmar los cambeos"]}}},{l:"br",t:{}},{l:"ca",t:{"Cancel changes":{v:["Cancel·la els canvis"]},"Confirm changes":{v:["Confirmeu els canvis"]}}},{l:"cs",t:{"Cancel changes":{v:["Zrušit změny"]},"Confirm changes":{v:["Potvrdit změny"]}}},{l:"cs-CZ",t:{"Cancel changes":{v:["Zrušit změny"]},"Confirm changes":{v:["Potvrdit změny"]}}},{l:"da",t:{"Cancel changes":{v:["Annuller ændringer"]},"Confirm changes":{v:["Bekræft ændringer"]}}},{l:"de",t:{"Cancel changes":{v:["Änderungen verwerfen"]},"Confirm changes":{v:["Änderungen bestätigen"]}}},{l:"de-DE",t:{"Cancel changes":{v:["Änderungen verwerfen"]},"Confirm changes":{v:["Änderungen bestätigen"]}}},{l:"el",t:{"Cancel changes":{v:["Ακύρωση αλλαγών"]},"Confirm changes":{v:["Επιβεβαίωση αλλαγών"]}}},{l:"en-GB",t:{"Cancel changes":{v:["Cancel changes"]},"Confirm changes":{v:["Confirm changes"]}}},{l:"eo",t:{}},{l:"es",t:{"Cancel changes":{v:["Cancelar cambios"]},"Confirm changes":{v:["Confirmar cambios"]}}},{l:"es-AR",t:{"Cancel changes":{v:["Cancelar cambios"]},"Confirm changes":{v:["Confirmar cambios"]}}},{l:"es-EC",t:{"Cancel changes":{v:["Cancelar cambios"]},"Confirm changes":{v:["Confirmar cambios"]}}},{l:"es-MX",t:{"Cancel changes":{v:["Cancelar cambios"]},"Confirm changes":{v:["Confirmar cambios"]}}},{l:"et-EE",t:{"Cancel changes":{v:["Tühista muudatused"]},"Confirm changes":{v:["Kinnita muudatused"]}}},{l:"eu",t:{"Cancel changes":{v:["Ezeztatu aldaketak"]},"Confirm changes":{v:["Baieztatu aldaketak"]}}},{l:"fa",t:{"Cancel changes":{v:["لغو تغییرات"]},"Confirm changes":{v:["تایید تغییرات"]}}},{l:"fi",t:{"Cancel changes":{v:["Peruuta muutokset"]},"Confirm changes":{v:["Vahvista muutokset"]}}},{l:"fr",t:{"Cancel changes":{v:["Annuler les modifications"]},"Confirm changes":{v:["Confirmer les modifications"]}}},{l:"ga",t:{"Cancel changes":{v:["Cealaigh athruithe"]},"Confirm changes":{v:["Deimhnigh na hathruithe"]}}},{l:"gl",t:{"Cancel changes":{v:["Cancelar os cambios"]},"Confirm changes":{v:["Confirma os cambios"]}}},{l:"he",t:{"Cancel changes":{v:["ביטול שינויים"]},"Confirm changes":{v:["אישור השינויים"]}}},{l:"hr",t:{"Cancel changes":{v:["Otkaži promjene"]},"Confirm changes":{v:["Potvrdi promjene"]}}},{l:"hu",t:{"Cancel changes":{v:["Változtatások elvetése"]},"Confirm changes":{v:["Változtatások megerősítése"]}}},{l:"id",t:{"Cancel changes":{v:["Batalkan perubahan"]},"Confirm changes":{v:["Konfirmasikan perubahan"]}}},{l:"is",t:{"Cancel changes":{v:["Hætta við breytingar"]},"Confirm changes":{v:["Staðfesta breytingar"]}}},{l:"it",t:{"Cancel changes":{v:["Annulla modifiche"]},"Confirm changes":{v:["Conferma modifiche"]}}},{l:"ja",t:{"Cancel changes":{v:["変更をキャンセル"]},"Confirm changes":{v:["変更を承認"]}}},{l:"ja-JP",t:{"Cancel changes":{v:["変更をキャンセル"]},"Confirm changes":{v:["変更を承認"]}}},{l:"ko",t:{"Cancel changes":{v:["변경 취소"]},"Confirm changes":{v:["변경 사항 확인"]}}},{l:"lo",t:{"Cancel changes":{v:["ຍົກເລີກການປ່ຽນແປງ"]},"Confirm changes":{v:["ຢືນຢັນການປ່ຽນແປງ"]}}},{l:"lt-LT",t:{"Cancel changes":{v:["Atsisakyti pakeitimų"]},"Confirm changes":{v:["Patvirtinti pakeitimus"]}}},{l:"lv",t:{}},{l:"mk",t:{"Cancel changes":{v:["Откажи ги промените"]},"Confirm changes":{v:["Потврди ги промените"]}}},{l:"mn",t:{"Cancel changes":{v:["Өөрчлөлтийг цуцлах"]},"Confirm changes":{v:["Өөрчлөлтийг баталгаажуулах"]}}},{l:"my",t:{"Cancel changes":{v:["ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်"]},"Confirm changes":{v:["ပြောင်းလဲမှုများ အတည်ပြုရန်"]}}},{l:"nb",t:{"Cancel changes":{v:["Avbryt endringer"]},"Confirm changes":{v:["Bekreft endringer"]}}},{l:"nl",t:{"Cancel changes":{v:["Wijzigingen annuleren"]},"Confirm changes":{v:["Wijzigingen bevestigen"]}}},{l:"oc",t:{}},{l:"pl",t:{"Cancel changes":{v:["Anuluj zmiany"]},"Confirm changes":{v:["Potwierdź zmiany"]}}},{l:"pt-BR",t:{"Cancel changes":{v:["Cancelar alterações"]},"Confirm changes":{v:["Confirmar alterações"]}}},{l:"pt-PT",t:{"Cancel changes":{v:["Cancelar alterações"]},"Confirm changes":{v:["Confirmar alterações"]}}},{l:"ro",t:{"Cancel changes":{v:["Anulează modificările"]},"Confirm changes":{v:["Confirmați modificările"]}}},{l:"ru",t:{"Cancel changes":{v:["Отменить изменения"]},"Confirm changes":{v:["Подтвердить изменения"]}}},{l:"sk",t:{"Cancel changes":{v:["Zrušiť zmeny"]},"Confirm changes":{v:["Potvrdiť zmeny"]}}},{l:"sl",t:{"Cancel changes":{v:["Prekliči spremembe"]},"Confirm changes":{v:["Potrdi spremembe"]}}},{l:"sr",t:{"Cancel changes":{v:["Откажи измене"]},"Confirm changes":{v:["Потврдите измене"]}}},{l:"sv",t:{"Cancel changes":{v:["Avbryt ändringar"]},"Confirm changes":{v:["Bekräfta ändringar"]}}},{l:"tr",t:{"Cancel changes":{v:["Değişiklikleri iptal et"]},"Confirm changes":{v:["Değişiklikleri onayla"]}}},{l:"uk",t:{"Cancel changes":{v:["Скасувати зміни"]},"Confirm changes":{v:["Підтвердити зміни"]}}},{l:"uz",t:{"Cancel changes":{v:["O'zgarishlarni bekor qilish"]},"Confirm changes":{v:["O'zgarishlarni tasdiqlang"]}}},{l:"zh-CN",t:{"Cancel changes":{v:["取消更改"]},"Confirm changes":{v:["确认更改"]}}},{l:"zh-HK",t:{"Cancel changes":{v:["取消更改"]},"Confirm changes":{v:["確認更改"]}}},{l:"zh-TW",t:{"Cancel changes":{v:["取消變更"]},"Confirm changes":{v:["確認變更"]}}}],GB=[{l:"ar",t:{"Change name":{v:["تغيير الاسم"]},"Close sidebar":{v:["قفل الشريط الجانبي"]},Favorite:{v:["المفضلة"]},"Open sidebar":{v:["إفتَح الشريط الجانبي"]}}},{l:"ast",t:{"Change name":{v:["Camudar el nome"]},"Close sidebar":{v:["Zarrar la barra llateral"]},Favorite:{v:["Favoritu"]},"Open sidebar":{v:["Abrir la barra llateral"]}}},{l:"br",t:{}},{l:"ca",t:{"Close sidebar":{v:["Tancar la barra lateral"]},Favorite:{v:["Preferit"]}}},{l:"cs",t:{"Change name":{v:["Změnit název"]},"Close sidebar":{v:["Zavřít postranní panel"]},Favorite:{v:["Oblíbené"]},"Open sidebar":{v:["Otevřít postranní panel"]}}},{l:"cs-CZ",t:{"Change name":{v:["Změnit název"]},"Close sidebar":{v:["Zavřít postranní panel"]},Favorite:{v:["Oblíbené"]}}},{l:"da",t:{"Change name":{v:["Ændre navn"]},"Close sidebar":{v:["Luk sidepanel"]},Favorite:{v:["Favorit"]},"Open sidebar":{v:["Åbn sidepanel"]}}},{l:"de",t:{"Change name":{v:["Namen ändern"]},"Close sidebar":{v:["Seitenleiste schließen"]},Favorite:{v:["Favorit"]},"Open sidebar":{v:["Seitenleiste öffnen"]}}},{l:"de-DE",t:{"Change name":{v:["Namen ändern"]},"Close sidebar":{v:["Seitenleiste schließen"]},Favorite:{v:["Favorit"]},"Open sidebar":{v:["Seitenleiste öffnen"]}}},{l:"el",t:{"Change name":{v:["Αλλαγή ονόματος"]},"Close sidebar":{v:["Κλείσιμο πλευρικής μπάρας"]},Favorite:{v:["Αγαπημένα"]},"Open sidebar":{v:["Άνοιγμα πλευρικής μπάρας"]}}},{l:"en-GB",t:{"Change name":{v:["Change name"]},"Close sidebar":{v:["Close sidebar"]},Favorite:{v:["Favourite"]},"Open sidebar":{v:["Open sidebar"]}}},{l:"eo",t:{}},{l:"es",t:{"Change name":{v:["Cambiar nombre"]},"Close sidebar":{v:["Cerrar barra lateral"]},Favorite:{v:["Favorito"]},"Open sidebar":{v:["Abrir barra lateral"]}}},{l:"es-AR",t:{"Change name":{v:["Cambiar nombre"]},"Close sidebar":{v:["Cerrar barra lateral"]},Favorite:{v:["Favorito"]},"Open sidebar":{v:["Abrir barra lateral"]}}},{l:"es-EC",t:{"Change name":{v:["Cambiar nombre"]},"Close sidebar":{v:["Cerrar barra lateral"]},Favorite:{v:["Favorito"]}}},{l:"es-MX",t:{"Change name":{v:["Cambiar nombre"]},"Close sidebar":{v:["Cerrar barra lateral"]},Favorite:{v:["Favorito"]},"Open sidebar":{v:["Abrir barra lateral"]}}},{l:"et-EE",t:{"Change name":{v:["Muuda nime"]},"Close sidebar":{v:["Sulge külgriba"]},Favorite:{v:["Lemmik"]},"Open sidebar":{v:["Ava külgriba"]}}},{l:"eu",t:{"Change name":{v:["Aldatu izena"]},"Close sidebar":{v:["Itxi albo-barra"]},Favorite:{v:["Gogokoa"]}}},{l:"fa",t:{"Change name":{v:["تغییر نام"]},"Close sidebar":{v:["بستن نوار کناری"]},Favorite:{v:["مورد علاقه"]},"Open sidebar":{v:["باز کردن نوار کنار"]}}},{l:"fi",t:{"Change name":{v:["Vaihda nimi"]},"Close sidebar":{v:["Sulje sivupalkki"]},Favorite:{v:["Suosikki"]},"Open sidebar":{v:["Avaa sivupalkki"]}}},{l:"fr",t:{"Change name":{v:["Modifier le nom"]},"Close sidebar":{v:["Fermer la barre latérale"]},Favorite:{v:["Favori"]},"Open sidebar":{v:["Ouvrir la barre latérale"]}}},{l:"ga",t:{"Change name":{v:["Athrú ainm"]},"Close sidebar":{v:["Dún barra taoibh"]},Favorite:{v:["is fearr leat"]},"Open sidebar":{v:["Oscail barra taoibh"]}}},{l:"gl",t:{"Change name":{v:["Cambiar o nome"]},"Close sidebar":{v:["Pechar a barra lateral"]},Favorite:{v:["Favorito"]},"Open sidebar":{v:["Abrir a barra lateral"]}}},{l:"he",t:{"Change name":{v:["החלפת שם"]},"Close sidebar":{v:["סגירת סרגל הצד"]},Favorite:{v:["למועדפים"]}}},{l:"hr",t:{"Change name":{v:["Promjeni naziv"]},"Close sidebar":{v:["Zatvori bočnu traku"]},Favorite:{v:["Favorit"]},"Open sidebar":{v:["Otvori bočnu traku"]}}},{l:"hu",t:{"Change name":{v:["Név módosítása"]},"Close sidebar":{v:["Oldalsáv bezárása"]},Favorite:{v:["Kedvenc"]},"Open sidebar":{v:["Oldalsáv megnyitása"]}}},{l:"id",t:{"Change name":{v:["Ubah nama"]},"Close sidebar":{v:["Tutup bilah sisi"]},Favorite:{v:["Favorit"]},"Open sidebar":{v:["Buka bilah sisi"]}}},{l:"is",t:{"Change name":{v:["Breyta nafni"]},"Close sidebar":{v:["Loka hliðarstiku"]},Favorite:{v:["Eftirlæti"]},"Open sidebar":{v:["Opna hliðarspjald"]}}},{l:"it",t:{"Change name":{v:["Cambia nome"]},"Close sidebar":{v:["Chiudi la barra laterale"]},Favorite:{v:["Preferito"]}}},{l:"ja",t:{"Change name":{v:["名前の変更"]},"Close sidebar":{v:["サイドバーを閉じる"]},Favorite:{v:["お気に入り"]},"Open sidebar":{v:["サイドバーを開く"]}}},{l:"ja-JP",t:{"Change name":{v:["名前の変更"]},"Close sidebar":{v:["サイドバーを閉じる"]},Favorite:{v:["お気に入り"]},"Open sidebar":{v:["サイドバーを開く"]}}},{l:"ko",t:{"Change name":{v:["이름 변경"]},"Close sidebar":{v:["사이드바 닫기"]},Favorite:{v:["즐겨찾기"]},"Open sidebar":{v:["사이드바 열기"]}}},{l:"lo",t:{"Change name":{v:["ປ່ຽນຊື່"]},"Close sidebar":{v:["ປິດແຖບດ້ານຂ້າງ"]},Favorite:{v:["ລາຍການທີ່ມັກ"]},"Open sidebar":{v:["ເປີດແຖບດ້ານຂ້າງ"]}}},{l:"lt-LT",t:{"Change name":{v:["Pakeisti vardą"]},"Close sidebar":{v:["Užverti šoninę juostą"]},Favorite:{v:["Mėgstamiausias"]},"Open sidebar":{v:["Atverti šoninę juostą"]}}},{l:"lv",t:{}},{l:"mk",t:{"Change name":{v:["Промени име"]},"Close sidebar":{v:["Затвори странична лента"]},Favorite:{v:["Фаворити"]},"Open sidebar":{v:["Отвори странична лента"]}}},{l:"mn",t:{"Change name":{v:["Нэр солих"]},"Close sidebar":{v:["Хажуугийн самбарыг хаах"]},Favorite:{v:["Дуртай"]},"Open sidebar":{v:["Хажуугийн самбарыг нээх"]}}},{l:"my",t:{}},{l:"nb",t:{"Change name":{v:["Endre navn"]},"Close sidebar":{v:["Lukk sidepanel"]},Favorite:{v:["Favoritt"]},"Open sidebar":{v:["Åpne sidefelt"]}}},{l:"nl",t:{"Change name":{v:["Naam wijzigen"]},"Close sidebar":{v:["Zijbalk sluiten"]},Favorite:{v:["Favoriet"]},"Open sidebar":{v:["Zijbalk openen"]}}},{l:"oc",t:{}},{l:"pl",t:{"Change name":{v:["Zmień nazwę"]},"Close sidebar":{v:["Zamknij pasek boczny"]},Favorite:{v:["Ulubiony"]},"Open sidebar":{v:["Otwórz pasek boczny"]}}},{l:"pt-BR",t:{"Change name":{v:["Mudar nome"]},"Close sidebar":{v:["Fechar barra lateral"]},Favorite:{v:["Favorito"]},"Open sidebar":{v:["Abrir barra lateral"]}}},{l:"pt-PT",t:{"Change name":{v:["Alterar nome"]},"Close sidebar":{v:["Fechar barra lateral"]},Favorite:{v:["Favorito"]},"Open sidebar":{v:["Abrir barra lateral"]}}},{l:"ro",t:{"Change name":{v:["Modifică numele"]},"Close sidebar":{v:["Închide bara laterală"]},Favorite:{v:["Favorit"]}}},{l:"ru",t:{"Change name":{v:["Изменить имя"]},"Close sidebar":{v:["Закрыть сайдбар"]},Favorite:{v:["Избранное"]},"Open sidebar":{v:["Открыть боковую панель"]}}},{l:"sk",t:{"Change name":{v:["Zmeniť názov"]},"Close sidebar":{v:["Zavrieť bočný panel"]},Favorite:{v:["Obľúbené"]},"Open sidebar":{v:["Otvoriť bočný panel"]}}},{l:"sl",t:{"Close sidebar":{v:["Zapri stransko vrstico"]},Favorite:{v:["Priljubljeno"]}}},{l:"sr",t:{"Change name":{v:["Измени назив"]},"Close sidebar":{v:["Затвори бочну траку"]},Favorite:{v:["Омиљени"]},"Open sidebar":{v:["Отвори бочну траку"]}}},{l:"sv",t:{"Change name":{v:["Ändra namn"]},"Close sidebar":{v:["Stäng sidofältet"]},Favorite:{v:["Favorit"]},"Open sidebar":{v:["Öppna sidofältet"]}}},{l:"tr",t:{"Change name":{v:["Adı değiştir"]},"Close sidebar":{v:["Yan çubuğu kapat"]},Favorite:{v:["Sık kullanılanlara ekle"]},"Open sidebar":{v:["Yan çubuğu aç"]}}},{l:"uk",t:{"Change name":{v:["Змінити назву"]},"Close sidebar":{v:["Закрити бічну панель"]},Favorite:{v:["Із зірочкою"]},"Open sidebar":{v:["Бокове меню"]}}},{l:"uz",t:{"Change name":{v:["Ismni o'zgartirish"]},"Close sidebar":{v:["Yon panelni yoping"]},Favorite:{v:["Tanlangan"]},"Open sidebar":{v:["Yon panelni oching"]}}},{l:"zh-CN",t:{"Change name":{v:["修改名称"]},"Close sidebar":{v:["关闭侧边栏"]},Favorite:{v:["喜爱"]},"Open sidebar":{v:["打开侧边栏"]}}},{l:"zh-HK",t:{"Change name":{v:["更改名稱"]},"Close sidebar":{v:["關閉側邊欄"]},Favorite:{v:["喜愛"]},"Open sidebar":{v:["打開側邊欄"]}}},{l:"zh-TW",t:{"Change name":{v:["變更名稱"]},"Close sidebar":{v:["關閉側邊欄"]},Favorite:{v:["最愛"]},"Open sidebar":{v:["開啟側邊欄"]}}}],Uh=[{l:"ar",t:{"Clear selected":{v:["محو المحدّد"]},"Deselect {option}":{v:["إلغاء تحديد {option}"]},"No results":{v:["ليس هناك أية نتيجة"]},Options:{v:["خيارات"]}}},{l:"ast",t:{"Clear selected":{v:["Borrar lo seleicionao"]},"Deselect {option}":{v:["Deseleicionar «{option}»"]},"No results":{v:["Nun hai nengún resultáu"]},Options:{v:["Opciones"]}}},{l:"br",t:{"No results":{v:["Disoc'h ebet"]}}},{l:"ca",t:{"No results":{v:["Sense resultats"]}}},{l:"cs",t:{"Clear selected":{v:["Vyčistit vybrané"]},"Deselect {option}":{v:["Zrušit výběr {option}"]},"No results":{v:["Nic nenalezeno"]},Options:{v:["Možnosti"]}}},{l:"cs-CZ",t:{"Clear selected":{v:["Vyčistit vybrané"]},"Deselect {option}":{v:["Zrušit výběr {option}"]},"No results":{v:["Nic nenalezeno"]},Options:{v:["Možnosti"]}}},{l:"da",t:{"Clear selected":{v:["Ryd valgt"]},"Deselect {option}":{v:["Fravælg {option}"]},"No results":{v:["Ingen resultater"]},Options:{v:["Indstillinger"]}}},{l:"de",t:{"Clear selected":{v:["Auswahl leeren"]},"Deselect {option}":{v:["{option} abwählen"]},"No results":{v:["Keine Ergebnisse"]},Options:{v:["Optionen"]}}},{l:"de-DE",t:{"Clear selected":{v:["Auswahl leeren"]},"Deselect {option}":{v:["{option} abwählen"]},"No results":{v:["Keine Ergebnisse"]},Options:{v:["Optionen"]}}},{l:"el",t:{"Clear selected":{v:["Εκκαθάριση επιλογής"]},"Deselect {option}":{v:["Αποεπιλογή {option}"]},"No results":{v:["Κανένα αποτέλεσμα"]},Options:{v:["Επιλογές"]}}},{l:"en-GB",t:{"Clear selected":{v:["Clear selected"]},"Deselect {option}":{v:["Deselect {option}"]},"No results":{v:["No results"]},Options:{v:["Options"]}}},{l:"eo",t:{"No results":{v:["La rezulto forestas"]}}},{l:"es",t:{"Clear selected":{v:["Limpiar selección"]},"Deselect {option}":{v:["Deseleccionar {option}"]},"No results":{v:[" Ningún resultado"]},Options:{v:["Opciones"]}}},{l:"es-AR",t:{"Clear selected":{v:["Limpiar selección"]},"Deselect {option}":{v:["Deseleccionar {option}"]},"No results":{v:["Sin resultados"]},Options:{v:["Opciones"]}}},{l:"es-EC",t:{"No results":{v:["Sin resultados"]}}},{l:"es-MX",t:{"Clear selected":{v:["Limpiar selección"]},"Deselect {option}":{v:["Deseleccionar {option}"]},"No results":{v:["Sin resultados"]},Options:{v:["Opciones"]}}},{l:"et-EE",t:{"Clear selected":{v:["Tühjenda valik"]},"Deselect {option}":{v:["Eemalda {option} valik"]},"No results":{v:["Tulemusi pole"]},Options:{v:["Valikud"]}}},{l:"eu",t:{"No results":{v:["Emaitzarik ez"]}}},{l:"fa",t:{"Clear selected":{v:["پاک کردن مورد انتخاب شده"]},"Deselect {option}":{v:["لغو انتخاب {option}"]},"No results":{v:["بدون هیچ نتیجه‌ای"]},Options:{v:["گزینه‌ها"]}}},{l:"fi",t:{"Clear selected":{v:["Tyhjennä valitut"]},"Deselect {option}":{v:["Poista valinta {option}"]},"No results":{v:["Ei tuloksia"]},Options:{v:["Valinnat"]}}},{l:"fr",t:{"Clear selected":{v:["Vider la sélection"]},"Deselect {option}":{v:["Désélectionner {option}"]},"No results":{v:["Aucun résultat"]},Options:{v:["Options"]}}},{l:"ga",t:{"Clear selected":{v:["Glan roghnaithe"]},"Deselect {option}":{v:["Díroghnaigh {option}"]},"No results":{v:["Gan torthaí"]},Options:{v:["Roghanna"]}}},{l:"gl",t:{"Clear selected":{v:["Limpar o seleccionado"]},"Deselect {option}":{v:["Desmarcar {option}"]},"No results":{v:["Sen resultados"]},Options:{v:["Opcións"]}}},{l:"he",t:{"No results":{v:["אין תוצאות"]}}},{l:"hr",t:{"Clear selected":{v:["Očisti odabir"]},"Deselect {option}":{v:["Odznači {option}"]},"No results":{v:["Nema rezultata"]},Options:{v:["Mogućnosti"]}}},{l:"hu",t:{"Clear selected":{v:["Kijelölés törlése"]},"Deselect {option}":{v:["{option} kijelölésének megszüntetése"]},"No results":{v:["Nincs találat"]},Options:{v:["Beállítások"]}}},{l:"id",t:{"Clear selected":{v:["Hapus terpilih"]},"Deselect {option}":{v:["Batalkan pemilihan {option}"]},"No results":{v:["Tidak ada hasil"]},Options:{v:["Opsi"]}}},{l:"is",t:{"Clear selected":{v:["Hreinsa valið"]},"Deselect {option}":{v:["Afvelja {option}"]},"No results":{v:["Engar niðurstöður"]},Options:{v:["Valkostir"]}}},{l:"it",t:{"Clear selected":{v:["Cancella selezionati"]},"Deselect {option}":{v:["Deselezionare {option}"]},"No results":{v:["Nessun risultato"]}}},{l:"ja",t:{"Clear selected":{v:["選択を解除"]},"Deselect {option}":{v:["{option} の選択を解除"]},"No results":{v:["結果無し"]},Options:{v:["オプション"]}}},{l:"ja-JP",t:{"Clear selected":{v:["選択を解除"]},"Deselect {option}":{v:["{option} の選択を解除"]},"No results":{v:["結果無し"]},Options:{v:["オプション"]}}},{l:"ko",t:{"Clear selected":{v:["선택 항목 지우기"]},"Deselect {option}":{v:["{option} 선택 해제"]},"No results":{v:["결과 없음"]},Options:{v:["옵션"]}}},{l:"lo",t:{"Clear selected":{v:["ລຶບສິ່ງທີ່ເລືອກ"]},"Deselect {option}":{v:["ຍົກເລີກການເລືອກ {option}"]},"No results":{v:["ບໍ່ມີຜົນລັບ"]},Options:{v:["ຕົວເລືອກ"]}}},{l:"lt-LT",t:{"Clear selected":{v:["Išvalyti pasirinkimą"]},"Deselect {option}":{v:["Panaikinkite {option} pasirinkimą"]},"No results":{v:["Nėra rezultatų"]},Options:{v:["Parinktys"]}}},{l:"lv",t:{"No results":{v:["Nav rezultātu"]}}},{l:"mk",t:{"Clear selected":{v:["Исчисти означени"]},"Deselect {option}":{v:["Откажи избор на {option}"]},"No results":{v:["Нема резултати"]},Options:{v:["Опции"]}}},{l:"mn",t:{"Clear selected":{v:["Сонголтыг цэвэрлэх"]},"Deselect {option}":{v:["{option}-г сонголтоос хасах"]},"No results":{v:["Үр дүн алга"]},Options:{v:["Тохиргоо"]}}},{l:"my",t:{"No results":{v:["ရလဒ်မရှိပါ"]}}},{l:"nb",t:{"Clear selected":{v:["Tøm merket"]},"Deselect {option}":{v:["Opphev valg {option}"]},"No results":{v:["Ingen resultater"]},Options:{v:["Alternativer"]}}},{l:"nl",t:{"Clear selected":{v:["Selectie wissen"]},"Deselect {option}":{v:["Selectie {option} opheffen"]},"No results":{v:["Geen resultaten"]},Options:{v:["Opties"]}}},{l:"oc",t:{"No results":{v:["Cap de resultat"]}}},{l:"pl",t:{"Clear selected":{v:["Wyczyść wybrane"]},"Deselect {option}":{v:["Odznacz {option}"]},"No results":{v:["Brak wyników"]},Options:{v:["Opcje"]}}},{l:"pt-BR",t:{"Clear selected":{v:["Limpar selecionado"]},"Deselect {option}":{v:["Desselecionar {option}"]},"No results":{v:["Sem resultados"]},Options:{v:["Opções"]}}},{l:"pt-PT",t:{"Clear selected":{v:["Limpeza selecionada"]},"Deselect {option}":{v:["Desmarcar {option}"]},"No results":{v:["Sem resultados"]},Options:{v:["Opções"]}}},{l:"ro",t:{"Clear selected":{v:["Șterge selecția"]},"Deselect {option}":{v:["Deselctează {option}"]},"No results":{v:["Nu există rezultate"]}}},{l:"ru",t:{"Clear selected":{v:["Очистить выбранный"]},"Deselect {option}":{v:["Отменить выбор {option}"]},"No results":{v:["Результаты отсуствуют"]},Options:{v:["Варианты"]}}},{l:"sk",t:{"Clear selected":{v:["Vymazať vybraté"]},"Deselect {option}":{v:["Zrušiť výber {option}"]},"No results":{v:["Žiadne výsledky"]},Options:{v:["možnosti"]}}},{l:"sl",t:{"No results":{v:["Ni zadetkov"]}}},{l:"sr",t:{"Clear selected":{v:["Обриши изабрано"]},"Deselect {option}":{v:["Уклони избор {option}"]},"No results":{v:["Нема резултата"]},Options:{v:["Опције"]}}},{l:"sv",t:{"Clear selected":{v:["Rensa val"]},"Deselect {option}":{v:["Avmarkera {option}"]},"No results":{v:["Inga resultat"]},Options:{v:["Alternativ"]}}},{l:"tr",t:{"Clear selected":{v:["Seçilmişleri temizle"]},"Deselect {option}":{v:["{option} bırak"]},"No results":{v:["Herhangi bir sonuç bulunamadı"]},Options:{v:["Seçenekler"]}}},{l:"uk",t:{"Clear selected":{v:["Очистити вибране"]},"Deselect {option}":{v:["Зняти вибір {option}"]},"No results":{v:["Відсутні результати"]},Options:{v:["Параметри"]}}},{l:"uz",t:{"Clear selected":{v:["Tanlanganni tozalash"]},"Deselect {option}":{v:["{option}tanlovni bekor qiling"]},"No results":{v:["Natija yoʻq"]},Options:{v:["Variantlar"]}}},{l:"zh-CN",t:{"Clear selected":{v:["清除所选"]},"Deselect {option}":{v:["取消选择 {option}"]},"No results":{v:["无结果"]},Options:{v:["选项"]}}},{l:"zh-HK",t:{"Clear selected":{v:["清除所選項目"]},"Deselect {option}":{v:["取消選擇 {option}"]},"No results":{v:["無結果"]},Options:{v:["選項"]}}},{l:"zh-TW",t:{"Clear selected":{v:["清除選定項目"]},"Deselect {option}":{v:["取消選取 {option}"]},"No results":{v:["無結果"]},Options:{v:["選項"]}}}],KB=[{l:"ar",t:{"Clear text":{v:["محو النص"]},"Save changes":{v:["حفظ التغييرات"]}}},{l:"ast",t:{"Clear text":{v:["Borrar el testu"]},"Save changes":{v:["Guardar los cambeos"]}}},{l:"br",t:{}},{l:"ca",t:{"Clear text":{v:["Netejar text"]}}},{l:"cs",t:{"Clear text":{v:["Čitelný text"]},"Save changes":{v:["Uložit změny"]}}},{l:"cs-CZ",t:{"Clear text":{v:["Čitelný text"]},"Save changes":{v:["Uložit změny"]}}},{l:"da",t:{"Clear text":{v:["Ryd tekst"]},"Save changes":{v:["Gem ændringer"]}}},{l:"de",t:{"Clear text":{v:["Klartext"]},"Save changes":{v:["Änderungen speichern"]}}},{l:"de-DE",t:{"Clear text":{v:["Klartext"]},"Save changes":{v:["Änderungen speichern"]}}},{l:"el",t:{"Clear text":{v:["Εκκαθάριση κειμένου"]},"Save changes":{v:["Αποθήκευση αλλαγών"]}}},{l:"en-GB",t:{"Clear text":{v:["Clear text"]},"Save changes":{v:["Save changes"]}}},{l:"eo",t:{}},{l:"es",t:{"Clear text":{v:["Limpiar texto"]},"Save changes":{v:["Guardar cambios"]}}},{l:"es-AR",t:{"Clear text":{v:["Limpiar texto"]},"Save changes":{v:["Guardar cambios"]}}},{l:"es-EC",t:{"Clear text":{v:["Limpiar texto"]}}},{l:"es-MX",t:{"Clear text":{v:["Limpiar texto"]},"Save changes":{v:["Guardar cambios"]}}},{l:"et-EE",t:{"Clear text":{v:["Kustuta tekst"]},"Save changes":{v:["Salvesta muudatused"]}}},{l:"eu",t:{"Clear text":{v:["Garbitu testua"]}}},{l:"fa",t:{"Clear text":{v:["پاک کردن متن"]},"Save changes":{v:["ذخیرهٔ تغییرات"]}}},{l:"fi",t:{"Clear text":{v:["Tyhjennä teksti"]},"Save changes":{v:["Tallenna muutokset"]}}},{l:"fr",t:{"Clear text":{v:["Effacer le texte"]},"Save changes":{v:["Sauvegarder les changements"]}}},{l:"ga",t:{"Clear text":{v:["Glan téacs"]},"Save changes":{v:["Sabháil na hathruithe"]}}},{l:"gl",t:{"Clear text":{v:["Limpar o texto"]},"Save changes":{v:["Gardar os cambios"]}}},{l:"he",t:{"Clear text":{v:["פינוי טקסט"]}}},{l:"hr",t:{"Clear text":{v:["Očisti tekst"]},"Save changes":{v:["Spremi promjene"]}}},{l:"hu",t:{"Clear text":{v:["Szöveg törlése"]},"Save changes":{v:["Változtatások mentése"]}}},{l:"id",t:{"Clear text":{v:["Bersihkan teks"]},"Save changes":{v:["Simpan perubahan"]}}},{l:"is",t:{"Clear text":{v:["Hreinsa texta"]},"Save changes":{v:["Vista breytingar"]}}},{l:"it",t:{"Clear text":{v:["Cancella il testo"]},"Save changes":{v:["Salva le modifiche"]}}},{l:"ja",t:{"Clear text":{v:["テキストをクリア"]},"Save changes":{v:["変更を保存"]}}},{l:"ja-JP",t:{"Clear text":{v:["テキストをクリア"]},"Save changes":{v:["変更を保存"]}}},{l:"ko",t:{"Clear text":{v:["텍스트 지우기"]},"Save changes":{v:["변경 사항 저장"]}}},{l:"lo",t:{"Clear text":{v:["ລຶບຂໍ້ຄວາມ"]},"Save changes":{v:["ບັນທຶກການປ່ຽນແປງ"]}}},{l:"lt-LT",t:{"Clear text":{v:["Išvalyti tekstą"]},"Save changes":{v:["Įrašyti pakeitimus"]}}},{l:"lv",t:{}},{l:"mk",t:{"Clear text":{v:["Исчисти текст"]},"Save changes":{v:["Зачувај промени"]}}},{l:"mn",t:{"Clear text":{v:["Текстийг цэвэрлэх"]},"Save changes":{v:["Өөрчлөлтийг хадгалах"]}}},{l:"my",t:{}},{l:"nb",t:{"Clear text":{v:["Fjern tekst"]},"Save changes":{v:["Lagre endringer"]}}},{l:"nl",t:{"Clear text":{v:["Tekst wissen"]},"Save changes":{v:["Wijzigingen opslaan"]}}},{l:"oc",t:{}},{l:"pl",t:{"Clear text":{v:["Wyczyść tekst"]},"Save changes":{v:["Zapisz zmiany"]}}},{l:"pt-BR",t:{"Clear text":{v:["Limpar texto"]},"Save changes":{v:["Salvar alterações"]}}},{l:"pt-PT",t:{"Clear text":{v:["Limpar texto"]},"Save changes":{v:["Gravar alterações"]}}},{l:"ro",t:{"Clear text":{v:["Șterge textul"]},"Save changes":{v:["Salvează modificările"]}}},{l:"ru",t:{"Clear text":{v:["Очистить текст"]},"Save changes":{v:["Сохранить изменения"]}}},{l:"sk",t:{"Clear text":{v:["Vamazať text"]},"Save changes":{v:["Uložiť zmeny"]}}},{l:"sl",t:{"Clear text":{v:["Počisti besedilo"]}}},{l:"sr",t:{"Clear text":{v:["Обриши текст"]},"Save changes":{v:["Сачувај измене"]}}},{l:"sv",t:{"Clear text":{v:["Ta bort text"]},"Save changes":{v:["Spara ändringar"]}}},{l:"tr",t:{"Clear text":{v:["Metni temizle"]},"Save changes":{v:["Değişiklikleri kaydet"]}}},{l:"uk",t:{"Clear text":{v:["Очистити текст"]},"Save changes":{v:["Зберегти зміни"]}}},{l:"uz",t:{"Clear text":{v:["Matnni tozalash"]},"Save changes":{v:["O'zgarishlarni saqlang"]}}},{l:"zh-CN",t:{"Clear text":{v:["清除文本"]},"Save changes":{v:["保存修改"]}}},{l:"zh-HK",t:{"Clear text":{v:["清除文本"]},"Save changes":{v:["保存更改"]}}},{l:"zh-TW",t:{"Clear text":{v:["清除文字"]},"Save changes":{v:["儲存變更"]}}}],Vh=[{l:"ar",t:{Close:{v:["إغلاق"]}}},{l:"ast",t:{Close:{v:["Zarrar"]}}},{l:"br",t:{Close:{v:["Serriñ"]}}},{l:"ca",t:{Close:{v:["Tanca"]}}},{l:"cs",t:{Close:{v:["Zavřít"]}}},{l:"cs-CZ",t:{Close:{v:["Zavřít"]}}},{l:"da",t:{Close:{v:["Luk"]}}},{l:"de",t:{Close:{v:["Schließen"]}}},{l:"de-DE",t:{Close:{v:["Schließen"]}}},{l:"el",t:{Close:{v:["Κλείσιμο"]}}},{l:"en-GB",t:{Close:{v:["Close"]}}},{l:"eo",t:{Close:{v:["Fermu"]}}},{l:"es",t:{Close:{v:["Cerrar"]}}},{l:"es-AR",t:{Close:{v:["Cerrar"]}}},{l:"es-EC",t:{Close:{v:["Cerrar"]}}},{l:"es-MX",t:{Close:{v:["Cerrar"]}}},{l:"et-EE",t:{Close:{v:["Sulge"]}}},{l:"eu",t:{Close:{v:["Itxi"]}}},{l:"fa",t:{Close:{v:["بستن"]}}},{l:"fi",t:{Close:{v:["Sulje"]}}},{l:"fr",t:{Close:{v:["Fermer"]}}},{l:"ga",t:{Close:{v:["Dún"]}}},{l:"gl",t:{Close:{v:["Pechar"]}}},{l:"he",t:{Close:{v:["סגירה"]}}},{l:"hr",t:{Close:{v:["Zatvori"]}}},{l:"hu",t:{Close:{v:["Bezárás"]}}},{l:"id",t:{Close:{v:["Tutup"]}}},{l:"is",t:{Close:{v:["Loka"]}}},{l:"it",t:{Close:{v:["Chiudi"]}}},{l:"ja",t:{Close:{v:["閉じる"]}}},{l:"ja-JP",t:{Close:{v:["閉じる"]}}},{l:"ko",t:{Close:{v:["닫기"]}}},{l:"lo",t:{Close:{v:["ປິດ"]}}},{l:"lt-LT",t:{Close:{v:["Užverti"]}}},{l:"lv",t:{Close:{v:["Aizvērt"]}}},{l:"mk",t:{Close:{v:["Затвори"]}}},{l:"mn",t:{Close:{v:["Хаах"]}}},{l:"my",t:{Close:{v:["ပိတ်ရန်"]}}},{l:"nb",t:{Close:{v:["Lukk"]}}},{l:"nl",t:{Close:{v:["Sluiten"]}}},{l:"oc",t:{Close:{v:["Tampar"]}}},{l:"pl",t:{Close:{v:["Zamknij"]}}},{l:"pt-BR",t:{Close:{v:["Fechar"]}}},{l:"pt-PT",t:{Close:{v:["Fechar"]}}},{l:"ro",t:{Close:{v:["Închideți"]}}},{l:"ru",t:{Close:{v:["Закрыть"]}}},{l:"sk",t:{Close:{v:["Zavrieť"]}}},{l:"sl",t:{Close:{v:["Zapri"]}}},{l:"sr",t:{Close:{v:["Затвори"]}}},{l:"sv",t:{Close:{v:["Stäng"]}}},{l:"tr",t:{Close:{v:["Kapat"]}}},{l:"uk",t:{Close:{v:["Закрити"]}}},{l:"uz",t:{Close:{v:["Yopish"]}}},{l:"zh-CN",t:{Close:{v:["关闭"]}}},{l:"zh-HK",t:{Close:{v:["關閉"]}}},{l:"zh-TW",t:{Close:{v:["關閉"]}}}],qB=[{l:"ar",t:{"Close navigation":{v:["إغلاق التصفح"]},"Open navigation":{v:["فتح التنقُّل"]}}},{l:"ast",t:{"Close navigation":{v:["Zarrar la navegación"]},"Open navigation":{v:["Abrir la navegación"]}}},{l:"br",t:{}},{l:"ca",t:{"Close navigation":{v:["Tanca la navegació"]},"Open navigation":{v:["Obre la navegació"]}}},{l:"cs",t:{"Close navigation":{v:["Zavřít navigaci"]},"Open navigation":{v:["Otevřít navigaci"]}}},{l:"cs-CZ",t:{"Close navigation":{v:["Zavřít navigaci"]},"Open navigation":{v:["Otevřít navigaci"]}}},{l:"da",t:{"Close navigation":{v:["Luk navigation"]},"Open navigation":{v:["Åben navigation"]}}},{l:"de",t:{"Close navigation":{v:["Navigation schließen"]},"Open navigation":{v:["Navigation öffnen"]}}},{l:"de-DE",t:{"Close navigation":{v:["Navigation schließen"]},"Open navigation":{v:["Navigation öffnen"]}}},{l:"el",t:{"Close navigation":{v:["Κλείσιμο πλοήγησης"]},"Open navigation":{v:["Άνοιγμα πλοήγησης"]}}},{l:"en-GB",t:{"Close navigation":{v:["Close navigation"]},"Open navigation":{v:["Open navigation"]}}},{l:"eo",t:{}},{l:"es",t:{"Close navigation":{v:["Cerrar navegación"]},"Open navigation":{v:["Abrir navegación"]}}},{l:"es-AR",t:{"Close navigation":{v:["Cerrar navegación"]},"Open navigation":{v:["Abrir navegación"]}}},{l:"es-EC",t:{"Close navigation":{v:["Cerrar navegación"]},"Open navigation":{v:["Abrir navegación"]}}},{l:"es-MX",t:{"Close navigation":{v:["Cerrar navegación"]},"Open navigation":{v:["Abrir navegación"]}}},{l:"et-EE",t:{"Close navigation":{v:["Sulge navigatsioon"]},"Open navigation":{v:["Ava liikumisvaade"]}}},{l:"eu",t:{"Close navigation":{v:["Itxi nabigazioa"]},"Open navigation":{v:["Ireki nabigazioa"]}}},{l:"fa",t:{"Close navigation":{v:["بستن بخش ناوبری"]},"Open navigation":{v:["باز کردن بخش ناوبری"]}}},{l:"fi",t:{"Close navigation":{v:["Sulje navigaatio"]}}},{l:"fr",t:{"Close navigation":{v:["Fermer la navigation"]},"Open navigation":{v:["Ouvrir la navigation"]}}},{l:"ga",t:{"Close navigation":{v:["Dún nascleanúint"]},"Open navigation":{v:["Oscail nascleanúint"]}}},{l:"gl",t:{"Close navigation":{v:["Pechar a navegación"]},"Open navigation":{v:["Abrir a navegación"]}}},{l:"he",t:{"Close navigation":{v:["סגירת הניווט"]},"Open navigation":{v:["פתיחת ניווט"]}}},{l:"hr",t:{"Close navigation":{v:["Zatvori navigaciju"]},"Open navigation":{v:["Otvori navigaciju"]}}},{l:"hu",t:{"Close navigation":{v:["Navigáció bezárása"]},"Open navigation":{v:["Navigáció megnyitása"]}}},{l:"id",t:{"Close navigation":{v:["Tutup navigasi"]},"Open navigation":{v:["Buka navigasi"]}}},{l:"is",t:{"Close navigation":{v:["Loka leiðsagnarsleða"]}}},{l:"it",t:{"Close navigation":{v:["Chiudi la navigazione"]},"Open navigation":{v:["Apri la navigazione"]}}},{l:"ja",t:{"Close navigation":{v:["ナビゲーションを閉じる"]},"Open navigation":{v:["ナビゲーションを開く"]}}},{l:"ja-JP",t:{"Close navigation":{v:["ナビゲーションを閉じる"]},"Open navigation":{v:["ナビゲーションを開く"]}}},{l:"ko",t:{"Close navigation":{v:["탐색 닫기"]},"Open navigation":{v:["탐색 열기"]}}},{l:"lo",t:{"Close navigation":{v:["ປິດການນຳທາງ"]},"Open navigation":{v:["ເປີດການນຳທາງ"]}}},{l:"lt-LT",t:{"Close navigation":{v:["Užverti naršymą"]},"Open navigation":{v:["Atverti naršymą"]}}},{l:"lv",t:{}},{l:"mk",t:{"Close navigation":{v:["Затвори навигација"]},"Open navigation":{v:["Отвори навигација"]}}},{l:"mn",t:{"Close navigation":{v:["Навигацийг хаах"]},"Open navigation":{v:["Навигацийг нээх"]}}},{l:"my",t:{}},{l:"nb",t:{"Close navigation":{v:["Lukk navigasjon"]},"Open navigation":{v:["Åpne navigasjon"]}}},{l:"nl",t:{"Close navigation":{v:["Navigatie sluiten"]},"Open navigation":{v:["Navigatie openen"]}}},{l:"oc",t:{}},{l:"pl",t:{"Close navigation":{v:["Zamknij nawigację"]}}},{l:"pt-BR",t:{"Close navigation":{v:["Fechar navegação"]},"Open navigation":{v:["Abrir navegação"]}}},{l:"pt-PT",t:{"Close navigation":{v:["Fechar navegação"]},"Open navigation":{v:["Abrir navegação"]}}},{l:"ro",t:{"Close navigation":{v:["Închideți navigarea"]},"Open navigation":{v:["Deschideți navigația"]}}},{l:"ru",t:{"Close navigation":{v:["Закрыть навигацию"]},"Open navigation":{v:["Открыть навигацию"]}}},{l:"sk",t:{"Close navigation":{v:["Zavrieť navigáciu"]}}},{l:"sl",t:{"Close navigation":{v:["Zapri krmarjenje"]},"Open navigation":{v:["Odpri krmarjenje"]}}},{l:"sr",t:{"Close navigation":{v:["Затвори навигацију"]},"Open navigation":{v:["Отвори навигацију"]}}},{l:"sv",t:{"Close navigation":{v:["Stäng navigering"]},"Open navigation":{v:["Öppna navigering"]}}},{l:"tr",t:{"Close navigation":{v:["Gezinmeyi kapat"]},"Open navigation":{v:["Gezinmeyi aç"]}}},{l:"uk",t:{"Close navigation":{v:["Закрити навігацію"]},"Open navigation":{v:["Перейти до навігації"]}}},{l:"uz",t:{"Close navigation":{v:["Navigatsiyani yopish"]},"Open navigation":{v:["Navigatsiyani oching"]}}},{l:"zh-CN",t:{"Close navigation":{v:["关闭导航"]}}},{l:"zh-HK",t:{"Close navigation":{v:["關閉導航"]},"Open navigation":{v:["開啟導航"]}}},{l:"zh-TW",t:{"Close navigation":{v:["關閉導航"]},"Open navigation":{v:["開啟導航"]}}}],YB=[{l:"ar",t:{"Collapse menu":{v:["طي القائمة"]},"Open menu":{v:["إفتَح القائمة"]}}},{l:"ast",t:{"Collapse menu":{v:["Recoyer el menú"]},"Open menu":{v:["Abrir le menú"]}}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{"Collapse menu":{v:["Sbalit nabídku"]},"Open menu":{v:["Otevřít nabídku"]}}},{l:"cs-CZ",t:{"Collapse menu":{v:["Sbalit nabídku"]},"Open menu":{v:["Otevřít nabídku"]}}},{l:"da",t:{"Collapse menu":{v:["Skjul menuen"]},"Open menu":{v:["Åben menu"]}}},{l:"de",t:{"Collapse menu":{v:["Menü einklappen"]},"Open menu":{v:["Menü öffnen"]}}},{l:"de-DE",t:{"Collapse menu":{v:["Menü einklappen"]},"Open menu":{v:["Menü öffnen"]}}},{l:"el",t:{"Collapse menu":{v:["Σύμπτυξη μενού"]},"Open menu":{v:["Άνοιγμα μενού"]}}},{l:"en-GB",t:{"Collapse menu":{v:["Collapse menu"]},"Open menu":{v:["Open menu"]}}},{l:"eo",t:{}},{l:"es",t:{"Collapse menu":{v:["Ocultar menú"]},"Open menu":{v:["Abrir menú"]}}},{l:"es-AR",t:{"Collapse menu":{v:["Ocultar menú"]},"Open menu":{v:["Abrir menú"]}}},{l:"es-EC",t:{"Collapse menu":{v:["Ocultar menú"]},"Open menu":{v:["Abrir menú"]}}},{l:"es-MX",t:{"Collapse menu":{v:["Ocultar menú"]},"Open menu":{v:["Abrir menú"]}}},{l:"et-EE",t:{"Collapse menu":{v:["Ahenda menüü"]},"Open menu":{v:["Ava menüü"]}}},{l:"eu",t:{"Collapse menu":{v:["Tolestu menua"]},"Open menu":{v:["Ireki menua"]}}},{l:"fa",t:{"Collapse menu":{v:["بستن فهرست"]},"Open menu":{v:["باز کردن فهرست"]}}},{l:"fi",t:{"Collapse menu":{v:["Supista valikko"]},"Open menu":{v:["Avaa valikko"]}}},{l:"fr",t:{"Collapse menu":{v:["Réduire le menu"]},"Open menu":{v:["Ouvrir le menu"]}}},{l:"ga",t:{"Collapse menu":{v:["Roghchlár Laghdaigh"]},"Open menu":{v:["Roghchlár a oscailt"]}}},{l:"gl",t:{"Collapse menu":{v:["Contraer o menú"]},"Open menu":{v:["Abrir o menú"]}}},{l:"he",t:{"Collapse menu":{v:["צמצום התפריט"]},"Open menu":{v:["פתיחת תפריט"]}}},{l:"hr",t:{"Collapse menu":{v:["Sakrij izbornik"]},"Open menu":{v:["Otvori izbornik"]}}},{l:"hu",t:{"Collapse menu":{v:["Menü összecsukása"]},"Open menu":{v:["Menü megnyitása"]}}},{l:"id",t:{"Collapse menu":{v:["Ciutkan menu"]},"Open menu":{v:["Buka menu"]}}},{l:"is",t:{"Collapse menu":{v:["Fella valmynd saman"]},"Open menu":{v:["Opna valmynd"]}}},{l:"it",t:{"Collapse menu":{v:["Chiudi Menu"]},"Open menu":{v:["Apri il menu"]}}},{l:"ja",t:{"Collapse menu":{v:["メニューの折りたたみ"]},"Open menu":{v:["メニューを開く"]}}},{l:"ja-JP",t:{"Collapse menu":{v:["メニューの折りたたみ"]},"Open menu":{v:["メニューを開く"]}}},{l:"ko",t:{"Collapse menu":{v:["메뉴 접기"]},"Open menu":{v:["메뉴 열기"]}}},{l:"lo",t:{"Collapse menu":{v:["ຫຍໍ້ເມນູ"]},"Open menu":{v:["ເປີດເມນູ"]}}},{l:"lt-LT",t:{"Collapse menu":{v:["Suskleisti meniu"]},"Open menu":{v:["Atverti meniu"]}}},{l:"lv",t:{}},{l:"mk",t:{"Collapse menu":{v:["Скриј мени"]},"Open menu":{v:["Отвори мени"]}}},{l:"mn",t:{"Collapse menu":{v:["Цэсийг хураах"]},"Open menu":{v:["Цэсийг нээх"]}}},{l:"my",t:{}},{l:"nb",t:{"Collapse menu":{v:["Skjul meny"]},"Open menu":{v:["Åpne meny"]}}},{l:"nl",t:{"Collapse menu":{v:["Menu inklappen"]},"Open menu":{v:["Menu openen"]}}},{l:"oc",t:{}},{l:"pl",t:{"Collapse menu":{v:["Zwiń menu"]},"Open menu":{v:["Otwórz menu"]}}},{l:"pt-BR",t:{"Collapse menu":{v:["Recolher menu"]},"Open menu":{v:["Abrir menu"]}}},{l:"pt-PT",t:{"Collapse menu":{v:["Ocultar menu"]},"Open menu":{v:["Abrir menu"]}}},{l:"ro",t:{"Collapse menu":{v:["Restrânge meniul"]},"Open menu":{v:["Deschide meniul"]}}},{l:"ru",t:{"Collapse menu":{v:["Свернуть меню"]},"Open menu":{v:["Открыть меню"]}}},{l:"sk",t:{"Collapse menu":{v:["Zbaliť menu"]},"Open menu":{v:["Otvoriť menu"]}}},{l:"sl",t:{}},{l:"sr",t:{"Collapse menu":{v:["Сажми мени"]},"Open menu":{v:["Отвори мени"]}}},{l:"sv",t:{"Collapse menu":{v:["Dölj menyn"]},"Open menu":{v:["Öppna menyn"]}}},{l:"tr",t:{"Collapse menu":{v:["Menüyü daralt"]},"Open menu":{v:["Menüyü aç"]}}},{l:"uk",t:{"Collapse menu":{v:["Згорнути меню"]},"Open menu":{v:["Відкрити меню"]}}},{l:"uz",t:{"Collapse menu":{v:["Menyuni yig‘ish"]},"Open menu":{v:["Menyuni oching"]}}},{l:"zh-CN",t:{"Collapse menu":{v:["收起菜单"]},"Open menu":{v:["打开菜单"]}}},{l:"zh-HK",t:{"Collapse menu":{v:["折疊選單"]},"Open menu":{v:["開啟選單"]}}},{l:"zh-TW",t:{"Collapse menu":{v:["折疊選單"]},"Open menu":{v:["開啟選單"]}}}],ZB=[{l:"ar",t:{"Edit item":{v:["تعديل عنصر"]}}},{l:"ast",t:{"Edit item":{v:["Editar l'elementu"]}}},{l:"br",t:{}},{l:"ca",t:{"Edit item":{v:["Edita l'element"]}}},{l:"cs",t:{"Edit item":{v:["Upravit položku"]}}},{l:"cs-CZ",t:{"Edit item":{v:["Upravit položku"]}}},{l:"da",t:{"Edit item":{v:["Rediger emne"]}}},{l:"de",t:{"Edit item":{v:["Element bearbeiten"]}}},{l:"de-DE",t:{"Edit item":{v:["Element bearbeiten"]}}},{l:"el",t:{"Edit item":{v:["Επεξεργασία αντικειμένου"]}}},{l:"en-GB",t:{"Edit item":{v:["Edit item"]}}},{l:"eo",t:{}},{l:"es",t:{"Edit item":{v:["Editar elemento"]}}},{l:"es-AR",t:{"Edit item":{v:["Editar elemento"]}}},{l:"es-EC",t:{"Edit item":{v:["Editar elemento"]}}},{l:"es-MX",t:{"Edit item":{v:["Editar elemento"]}}},{l:"et-EE",t:{"Edit item":{v:["Muuda objekti"]}}},{l:"eu",t:{"Edit item":{v:["Editatu elementua"]}}},{l:"fa",t:{"Edit item":{v:["ویرایش مورد"]}}},{l:"fi",t:{"Edit item":{v:["Muokkaa kohdetta"]}}},{l:"fr",t:{"Edit item":{v:["Éditer l'élément"]}}},{l:"ga",t:{"Edit item":{v:["Cuir mír in eagar"]}}},{l:"gl",t:{"Edit item":{v:["Editar o elemento"]}}},{l:"he",t:{"Edit item":{v:["עריכת פריט"]}}},{l:"hr",t:{"Edit item":{v:["Uredi stavku"]}}},{l:"hu",t:{"Edit item":{v:["Elem szerkesztése"]}}},{l:"id",t:{"Edit item":{v:["Edit item"]}}},{l:"is",t:{"Edit item":{v:["Breyta atriði"]}}},{l:"it",t:{"Edit item":{v:["Modifica l'elemento"]}}},{l:"ja",t:{"Edit item":{v:["編集"]}}},{l:"ja-JP",t:{"Edit item":{v:["編集"]}}},{l:"ko",t:{"Edit item":{v:["항목 수정"]}}},{l:"lo",t:{"Edit item":{v:["ແກ້ໄຂລາຍການ"]}}},{l:"lt-LT",t:{"Edit item":{v:["Taisyti elementą"]}}},{l:"lv",t:{}},{l:"mk",t:{"Edit item":{v:["Уреди"]}}},{l:"mn",t:{"Edit item":{v:["Зүйлийг засварлах"]}}},{l:"my",t:{}},{l:"nb",t:{"Edit item":{v:["Rediger"]}}},{l:"nl",t:{"Edit item":{v:["Item bewerken"]}}},{l:"oc",t:{}},{l:"pl",t:{"Edit item":{v:["Edytuj element"]}}},{l:"pt-BR",t:{"Edit item":{v:["Editar item"]}}},{l:"pt-PT",t:{"Edit item":{v:["Editar item"]}}},{l:"ro",t:{"Edit item":{v:["Editați elementul"]}}},{l:"ru",t:{"Edit item":{v:["Изменить элемент"]}}},{l:"sk",t:{"Edit item":{v:["Upraviť položku"]}}},{l:"sl",t:{"Edit item":{v:["Uredi predmet"]}}},{l:"sr",t:{"Edit item":{v:["Уреди ставку"]}}},{l:"sv",t:{"Edit item":{v:["Redigera objekt"]}}},{l:"tr",t:{"Edit item":{v:["Ögeyi düzenle"]}}},{l:"uk",t:{"Edit item":{v:["Редагувати елемент"]}}},{l:"uz",t:{"Edit item":{v:["Elementni tahrirlash"]}}},{l:"zh-CN",t:{"Edit item":{v:["编辑项目"]}}},{l:"zh-HK",t:{"Edit item":{v:["編輯項目"]}}},{l:"zh-TW",t:{"Edit item":{v:["編輯項目"]}}}],XB=[{l:"ar",t:{}},{l:"ast",t:{}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{"External documentation":{v:["Externí dokumentace"]}}},{l:"cs-CZ",t:{}},{l:"da",t:{"External documentation":{v:["Ekstern dokumentation"]}}},{l:"de",t:{"External documentation":{v:["Externe Dokumentation"]}}},{l:"de-DE",t:{"External documentation":{v:["Externe Dokumentation"]}}},{l:"el",t:{"External documentation":{v:["Εξωτερική τεκμηρίωση"]}}},{l:"en-GB",t:{"External documentation":{v:["External documentation"]}}},{l:"eo",t:{}},{l:"es",t:{}},{l:"es-AR",t:{}},{l:"es-EC",t:{}},{l:"es-MX",t:{}},{l:"et-EE",t:{"External documentation":{v:["Dokumentatsioon välises allikas"]}}},{l:"eu",t:{}},{l:"fa",t:{}},{l:"fi",t:{}},{l:"fr",t:{"External documentation":{v:["Documentation externe"]}}},{l:"ga",t:{"External documentation":{v:["Doiciméadú seachtrach"]}}},{l:"gl",t:{"External documentation":{v:["Documentación externa"]}}},{l:"he",t:{}},{l:"hr",t:{"External documentation":{v:["Vanjska dokumentacija"]}}},{l:"hu",t:{"External documentation":{v:["Külső dokumentáció"]}}},{l:"id",t:{"External documentation":{v:["Dokumentasi eksternal"]}}},{l:"is",t:{}},{l:"it",t:{}},{l:"ja",t:{"External documentation":{v:["外部ドキュメント"]}}},{l:"ja-JP",t:{}},{l:"ko",t:{"External documentation":{v:["외부 문서"]}}},{l:"lo",t:{"External documentation":{v:["ເອກະສານພາຍນອກ"]}}},{l:"lt-LT",t:{"External documentation":{v:["Išorinė dokumentacija"]}}},{l:"lv",t:{}},{l:"mk",t:{"External documentation":{v:["Надворешна документација"]}}},{l:"mn",t:{"External documentation":{v:["Гадаад баримт бичиг"]}}},{l:"my",t:{}},{l:"nb",t:{}},{l:"nl",t:{"External documentation":{v:["Externe documentatie"]}}},{l:"oc",t:{}},{l:"pl",t:{}},{l:"pt-BR",t:{"External documentation":{v:["Documentação externa"]}}},{l:"pt-PT",t:{}},{l:"ro",t:{}},{l:"ru",t:{"External documentation":{v:["Внешняя документация"]}}},{l:"sk",t:{}},{l:"sl",t:{}},{l:"sr",t:{"External documentation":{v:["Спољна документација"]}}},{l:"sv",t:{"External documentation":{v:["Extern dokumentation"]}}},{l:"tr",t:{"External documentation":{v:["Dış belgeler"]}}},{l:"uk",t:{"External documentation":{v:["Зовнішня документація"]}}},{l:"uz",t:{"External documentation":{v:["Tashqi hujjatlar"]}}},{l:"zh-CN",t:{}},{l:"zh-HK",t:{"External documentation":{v:["外部文件"]}}},{l:"zh-TW",t:{"External documentation":{v:["外部文件"]}}}],JB=[{l:"ar",t:{"Go back to the list":{v:["عودة إلى القائمة"]}}},{l:"ast",t:{"Go back to the list":{v:["Volver a la llista"]}}},{l:"br",t:{}},{l:"ca",t:{"Go back to the list":{v:["Torna a la llista"]}}},{l:"cs",t:{"Go back to the list":{v:["Jít zpět na seznam"]}}},{l:"cs-CZ",t:{"Go back to the list":{v:["Jít zpět na seznam"]}}},{l:"da",t:{"Go back to the list":{v:["Tilbage til listen"]}}},{l:"de",t:{"Go back to the list":{v:["Zurück zur Liste"]}}},{l:"de-DE",t:{"Go back to the list":{v:["Zurück zur Liste"]}}},{l:"el",t:{"Go back to the list":{v:["Επιστροφή στην αρχική λίστα"]}}},{l:"en-GB",t:{"Go back to the list":{v:["Go back to the list"]}}},{l:"eo",t:{}},{l:"es",t:{"Go back to the list":{v:["Volver a la lista"]}}},{l:"es-AR",t:{"Go back to the list":{v:["Volver a la lista"]}}},{l:"es-EC",t:{"Go back to the list":{v:["Volver a la lista"]}}},{l:"es-MX",t:{"Go back to the list":{v:["Regresar a la lista"]}}},{l:"et-EE",t:{"Go back to the list":{v:["Tagasi nimekirja juurde"]}}},{l:"eu",t:{"Go back to the list":{v:["Bueltatu zerrendara"]}}},{l:"fa",t:{"Go back to the list":{v:["برگشت به لیست"]}}},{l:"fi",t:{"Go back to the list":{v:["Takaisin listaan"]}}},{l:"fr",t:{"Go back to the list":{v:["Retourner à la liste"]}}},{l:"ga",t:{"Go back to the list":{v:["Téigh ar ais go dtí an liosta"]}}},{l:"gl",t:{"Go back to the list":{v:["Volver á lista"]}}},{l:"he",t:{"Go back to the list":{v:["חזרה לרשימה"]}}},{l:"hr",t:{"Go back to the list":{v:["Vrati se na popis"]}}},{l:"hu",t:{"Go back to the list":{v:["Ugrás vissza a listához"]}}},{l:"id",t:{"Go back to the list":{v:["Kembali ke daftar"]}}},{l:"is",t:{"Go back to the list":{v:["Fara til baka í listann"]}}},{l:"it",t:{"Go back to the list":{v:["Torna all'elenco"]}}},{l:"ja",t:{"Go back to the list":{v:["リストに戻る"]}}},{l:"ja-JP",t:{"Go back to the list":{v:["リストに戻る"]}}},{l:"ko",t:{"Go back to the list":{v:["목록으로 돌아가기"]}}},{l:"lo",t:{"Go back to the list":{v:["ກັບໄປທີ່ລາຍການ"]}}},{l:"lt-LT",t:{"Go back to the list":{v:["Grįžti į sąrašą"]}}},{l:"lv",t:{}},{l:"mk",t:{"Go back to the list":{v:["Врати се на листата"]}}},{l:"mn",t:{"Go back to the list":{v:["Жагсаалт руу буцах"]}}},{l:"my",t:{}},{l:"nb",t:{"Go back to the list":{v:["Gå tilbake til listen"]}}},{l:"nl",t:{"Go back to the list":{v:["Ga terug naar de lijst"]}}},{l:"oc",t:{}},{l:"pl",t:{"Go back to the list":{v:["Powrót do listy"]}}},{l:"pt-BR",t:{"Go back to the list":{v:["Voltar para a lista"]}}},{l:"pt-PT",t:{"Go back to the list":{v:["Voltar para a lista"]}}},{l:"ro",t:{"Go back to the list":{v:["Întoarceți-vă la listă"]}}},{l:"ru",t:{"Go back to the list":{v:["Вернуться к списку"]}}},{l:"sk",t:{"Go back to the list":{v:["Späť na zoznam"]}}},{l:"sl",t:{"Go back to the list":{v:["Vrni se na seznam"]}}},{l:"sr",t:{"Go back to the list":{v:["Назад на листу"]}}},{l:"sv",t:{"Go back to the list":{v:["Gå tillbaka till listan"]}}},{l:"tr",t:{"Go back to the list":{v:["Listeye dön"]}}},{l:"uk",t:{"Go back to the list":{v:["Повернутися до списку"]}}},{l:"uz",t:{"Go back to the list":{v:["Ro'yxatga qayting"]}}},{l:"zh-CN",t:{"Go back to the list":{v:["返回至列表"]}}},{l:"zh-HK",t:{"Go back to the list":{v:["返回清單"]}}},{l:"zh-TW",t:{"Go back to the list":{v:["回到清單"]}}}],QB=[{l:"ar",t:{"Keyboard navigation help":{v:["مساعدة في التنقل باستعمال لوحة المفاتيح"]},"Skip to app navigation":{v:["تجاوَز إلى التنقل في التطبيق"]},"Skip to main content":{v:["تجاوَز إلى المحتوى الرئيسي"]}}},{l:"ast",t:{"Keyboard navigation help":{v:["Ayuda de la navegación pente'l tecláu"]},"Skip to app navigation":{v:["Dir a la navegación d'aplicaciones"]},"Skip to main content":{v:["Dir al conteníu principal"]}}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{"Keyboard navigation help":{v:["Nápověda pro pohyb pomocí klávesnice"]},"Skip to app navigation":{v:["Přeskočit na navigaci aplikace"]},"Skip to main content":{v:["Přeskočit na hlavní obsah"]}}},{l:"cs-CZ",t:{"Keyboard navigation help":{v:["Nápověda pro pohyb pomocí klávesnice"]},"Skip to app navigation":{v:["Přeskočit na navigaci aplikace"]},"Skip to main content":{v:["Přeskočit na hlavní obsah"]}}},{l:"da",t:{"Keyboard navigation help":{v:["Hjælp til tastaturnavigation"]},"Skip to app navigation":{v:["Spring til app navigation"]},"Skip to main content":{v:["Spring til hovedindhold"]}}},{l:"de",t:{"Keyboard navigation help":{v:["Tastatur-Navigationshilfe"]},"Skip to app navigation":{v:["Zur App-Navigation springen"]},"Skip to main content":{v:["Zum Hauptinhalt springen"]}}},{l:"de-DE",t:{"Keyboard navigation help":{v:["Tastatur-Navigationshilfe"]},"Skip to app navigation":{v:["Zur App-Navigation springen"]},"Skip to main content":{v:["Zum Hauptinhalt springen"]}}},{l:"el",t:{"Keyboard navigation help":{v:["Βοήθεια πλοήγησης με πληκτρολόγιο"]},"Skip to app navigation":{v:["Μετάβαση στην πλοήγηση της εφαρμογής"]},"Skip to main content":{v:["Μετάβαση στο κύριο περιεχόμενο"]}}},{l:"en-GB",t:{"Keyboard navigation help":{v:["Keyboard navigation help"]},"Skip to app navigation":{v:["Skip to app navigation"]},"Skip to main content":{v:["Skip to main content"]}}},{l:"eo",t:{}},{l:"es",t:{"Keyboard navigation help":{v:["Ayuda de navegación del teclado"]},"Skip to app navigation":{v:["Saltar a la navegación de apps"]},"Skip to main content":{v:["Saltar al contenido principal"]}}},{l:"es-AR",t:{"Keyboard navigation help":{v:["Ayuda de navegación del teclado"]},"Skip to app navigation":{v:["Saltar a la navegación de app"]},"Skip to main content":{v:["Saltar al contenido principal"]}}},{l:"es-EC",t:{}},{l:"es-MX",t:{"Keyboard navigation help":{v:["Ayuda de navegación del teclado"]},"Skip to app navigation":{v:["Saltar a la navegación de app"]},"Skip to main content":{v:["Saltar al contenido principal"]}}},{l:"et-EE",t:{"Keyboard navigation help":{v:["Klahvistiku kasutuse abiteave"]},"Skip to app navigation":{v:["Suundu rakenduses liikumise valikute juurde"]},"Skip to main content":{v:["Suundu põhisisu juurde"]}}},{l:"eu",t:{}},{l:"fa",t:{"Keyboard navigation help":{v:["راهنمای ناوبری صفحه کلید"]},"Skip to app navigation":{v:["رفتن به پیمایش برنامه"]},"Skip to main content":{v:["رفتن به محتوای اصلی"]}}},{l:"fi",t:{"Keyboard navigation help":{v:["Näppäimistönavigoinnin ohje"]},"Skip to app navigation":{v:["Siirry sovelluksen navigaatioon"]},"Skip to main content":{v:["Siirry pääsisältöön"]}}},{l:"fr",t:{"Keyboard navigation help":{v:["Aide à la navigation du clavier"]},"Skip to app navigation":{v:["Passer à l'app navigation"]},"Skip to main content":{v:["Passer au contenu principal"]}}},{l:"ga",t:{"Keyboard navigation help":{v:["Cabhair le nascleanúint méarchláir"]},"Skip to app navigation":{v:["Téigh ar aghaidh chuig nascleanúint aip"]},"Skip to main content":{v:["Téigh ar aghaidh chuig an bpríomhábhar"]}}},{l:"gl",t:{"Keyboard navigation help":{v:["Axuda á navegación co teclado"]},"Skip to app navigation":{v:["Ir á navegación da aplicación"]},"Skip to main content":{v:["Ir ao contido principal"]}}},{l:"he",t:{}},{l:"hr",t:{"Keyboard navigation help":{v:["Pomoć za navigaciju tipkovnicom"]},"Skip to app navigation":{v:["Preskoči na navigaciju aplikacije"]},"Skip to main content":{v:["Preskoči na glavni sadržaj"]}}},{l:"hu",t:{"Keyboard navigation help":{v:["Billentyűzetes navigáció súgója"]},"Skip to app navigation":{v:["Ugrás az alkalmazásnavigációhoz"]},"Skip to main content":{v:["Ugrás a fő tartalomhoz"]}}},{l:"id",t:{"Keyboard navigation help":{v:["Bantuan navigasi keyboard"]},"Skip to app navigation":{v:["Lewati ke navigasi aplikasi"]},"Skip to main content":{v:["Lewati ke konten utama"]}}},{l:"is",t:{"Keyboard navigation help":{v:["Aðstoð við rötun á lyklaborði"]},"Skip to app navigation":{v:["Sleppa og fara í flakk innan forrits"]},"Skip to main content":{v:["Sleppa og fara í meginefni"]}}},{l:"it",t:{}},{l:"ja",t:{"Keyboard navigation help":{v:["キーボード・ナビゲーション・ヘルプ"]},"Skip to app navigation":{v:["アプリのナビゲーションへ移動"]},"Skip to main content":{v:["メインコンテンツへ移動"]}}},{l:"ja-JP",t:{"Keyboard navigation help":{v:["キーボード・ナビゲーション・ヘルプ"]},"Skip to app navigation":{v:["アプリのナビゲーションへ移動"]},"Skip to main content":{v:["メインコンテンツへ移動"]}}},{l:"ko",t:{"Keyboard navigation help":{v:["키보드 탐색 도움말"]},"Skip to app navigation":{v:["앱 탐색으로 건너뛰기"]},"Skip to main content":{v:["본 내용으로 건너뛰기"]}}},{l:"lo",t:{"Keyboard navigation help":{v:["ການຊ່ວຍເຫຼືອການນຳທາງດ້ວຍຄີບອດ"]},"Skip to app navigation":{v:["ຂ້າມໄປທີ່ການນຳທາງຂອງແອັບ"]},"Skip to main content":{v:["ຂ້າມໄປທີ່ເນື້ອຫາຫຼັກ"]}}},{l:"lt-LT",t:{"Keyboard navigation help":{v:["Klaviatūros navigacijos pagalba"]},"Skip to app navigation":{v:["Pereiti prie programėlės naršymo"]},"Skip to main content":{v:["Pereiti prie pagrindinio turinio"]}}},{l:"lv",t:{}},{l:"mk",t:{"Keyboard navigation help":{v:["Навигација со тастатура"]},"Skip to app navigation":{v:["Прескокни на навигација на апликацијата"]},"Skip to main content":{v:["Прескокни на главна содржина"]}}},{l:"mn",t:{"Keyboard navigation help":{v:["Гарын навигацийн тусламж"]},"Skip to app navigation":{v:["Аппын навигаци руу алгасах"]},"Skip to main content":{v:["Үндсэн агуулга руу алгасах"]}}},{l:"my",t:{}},{l:"nb",t:{"Keyboard navigation help":{v:["Hjelp for tastaturnavigering"]},"Skip to app navigation":{v:["Hopp til appnavigering"]},"Skip to main content":{v:["Hopp til hovedinnhold"]}}},{l:"nl",t:{"Keyboard navigation help":{v:["Hulp voor toetsenbordnavigatie"]},"Skip to app navigation":{v:["Doorgaan naar app-navigatie"]},"Skip to main content":{v:["Naar hoofdinhoud gaan"]}}},{l:"oc",t:{}},{l:"pl",t:{"Keyboard navigation help":{v:["Pomoc w nawigacji za pomocą klawiatury"]},"Skip to app navigation":{v:["Przewiń do nawigacji"]},"Skip to main content":{v:["Przewiń do głównych treści"]}}},{l:"pt-BR",t:{"Keyboard navigation help":{v:["Ajuda para navegação pelo teclado"]},"Skip to app navigation":{v:["Ir para navegação de aplicativo"]},"Skip to main content":{v:["Ir para conteúdo principal"]}}},{l:"pt-PT",t:{"Keyboard navigation help":{v:["Ajuda à navegação no teclado"]},"Skip to app navigation":{v:["Saltar para navegação da app"]},"Skip to main content":{v:["Saltar para conteúdo principal"]}}},{l:"ro",t:{}},{l:"ru",t:{"Keyboard navigation help":{v:["Справка по навигации с помощью клавиатуры"]},"Skip to app navigation":{v:["Перейти к навигации по приложению"]},"Skip to main content":{v:["Перейти к основному содержанию"]}}},{l:"sk",t:{"Keyboard navigation help":{v:["Pomoc pri navigácii pomocou klávesnice"]},"Skip to app navigation":{v:["Preskočiť na navigáciu v aplikácii"]},"Skip to main content":{v:["Preskočiť na hlavný obsah"]}}},{l:"sl",t:{}},{l:"sr",t:{"Keyboard navigation help":{v:["Помоћ за навигацију тастатуром"]},"Skip to app navigation":{v:["Прескочи на навигацију апликацијом"]},"Skip to main content":{v:["Прескочи на главни садржај"]}}},{l:"sv",t:{"Keyboard navigation help":{v:["Hjälp med tangentbordsnavigering"]},"Skip to app navigation":{v:["Hoppa till appnavigering"]},"Skip to main content":{v:["Hoppa till huvudinnehåll"]}}},{l:"tr",t:{"Keyboard navigation help":{v:["Klavye ile gezinme yardımı"]},"Skip to app navigation":{v:["Uygulama gezinmesine git"]},"Skip to main content":{v:["Ana içeriğe git"]}}},{l:"uk",t:{"Keyboard navigation help":{v:["Допомога з навігацією клавішами"]},"Skip to app navigation":{v:["Пропустити навігацію по застосунках"]},"Skip to main content":{v:["Перейти одразу до головного вмісту"]}}},{l:"uz",t:{"Keyboard navigation help":{v:["Klaviatura navigatsiyasi yordami"]},"Skip to app navigation":{v:["Ilova navigatsiyasiga oʻtish"]},"Skip to main content":{v:["Asosiy tarkibga o'tish"]}}},{l:"zh-CN",t:{"Keyboard navigation help":{v:["键盘导航栏帮助"]},"Skip to app navigation":{v:["跳转至应用程序导航页"]},"Skip to main content":{v:["跳转至主要内容"]}}},{l:"zh-HK",t:{"Keyboard navigation help":{v:["鍵盤導航幫助"]},"Skip to app navigation":{v:["跳至應用程式導航"]},"Skip to main content":{v:["跳至主要內容"]}}},{l:"zh-TW",t:{"Keyboard navigation help":{v:["鍵盤導航說明"]},"Skip to app navigation":{v:["略過應用程式導覽"]},"Skip to main content":{v:["跳至主要內容"]}}}],Wh=[{l:"ar",t:{"Loading …":{v:["التحميل جارٍ ..."]}}},{l:"ast",t:{}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{"Loading …":{v:["Načítání …"]}}},{l:"cs-CZ",t:{}},{l:"da",t:{"Loading …":{v:["Indlæser ..."]}}},{l:"de",t:{"Loading …":{v:["Wird geladen …"]}}},{l:"de-DE",t:{"Loading …":{v:["Wird geladen …"]}}},{l:"el",t:{"Loading …":{v:["Φόρτωση  …"]}}},{l:"en-GB",t:{"Loading …":{v:["Loading …"]}}},{l:"eo",t:{}},{l:"es",t:{}},{l:"es-AR",t:{}},{l:"es-EC",t:{}},{l:"es-MX",t:{}},{l:"et-EE",t:{"Loading …":{v:["Laadin…"]}}},{l:"eu",t:{}},{l:"fa",t:{"Loading …":{v:["در حال بارگذاری ..."]}}},{l:"fi",t:{"Loading …":{v:["Ladataan ..."]}}},{l:"fr",t:{"Loading …":{v:["Chargement..."]}}},{l:"ga",t:{"Loading …":{v:["Ag lódáil …"]}}},{l:"gl",t:{"Loading …":{v:["Cargando…"]}}},{l:"he",t:{}},{l:"hr",t:{"Loading …":{v:["Učitavanje …"]}}},{l:"hu",t:{"Loading …":{v:["Betöltés…"]}}},{l:"id",t:{"Loading …":{v:["Memuat …"]}}},{l:"is",t:{"Loading …":{v:["Hleð inn …"]}}},{l:"it",t:{}},{l:"ja",t:{"Loading …":{v:["読み込み中 …"]}}},{l:"ja-JP",t:{}},{l:"ko",t:{"Loading …":{v:["로딩 중 ..."]}}},{l:"lo",t:{"Loading …":{v:["ກຳລັງໂຫຼດ…"]}}},{l:"lt-LT",t:{"Loading …":{v:["Įkeliama …"]}}},{l:"lv",t:{}},{l:"mk",t:{"Loading …":{v:["Вчитување …"]}}},{l:"mn",t:{"Loading …":{v:["Ачаалж байна …"]}}},{l:"my",t:{}},{l:"nb",t:{"Loading …":{v:["Laster inn..."]}}},{l:"nl",t:{"Loading …":{v:["Laden …"]}}},{l:"oc",t:{}},{l:"pl",t:{"Loading …":{v:["Wczytywanie…"]}}},{l:"pt-BR",t:{"Loading …":{v:["Carregando …"]}}},{l:"pt-PT",t:{"Loading …":{v:["A carregar..."]}}},{l:"ro",t:{}},{l:"ru",t:{"Loading …":{v:["Загрузка …"]}}},{l:"sk",t:{"Loading …":{v:["Nahrávam ..."]}}},{l:"sl",t:{}},{l:"sr",t:{"Loading …":{v:["Учитава се…"]}}},{l:"sv",t:{"Loading …":{v:["Laddar …"]}}},{l:"tr",t:{"Loading …":{v:["Yükleniyor…"]}}},{l:"uk",t:{"Loading …":{v:["Завантаження …"]}}},{l:"uz",t:{"Loading …":{v:["Yuklanmoqda..."]}}},{l:"zh-CN",t:{"Loading …":{v:["加载中..."]}}},{l:"zh-HK",t:{"Loading …":{v:["加載中 …"]}}},{l:"zh-TW",t:{"Loading …":{v:["載入中......"]}}}],Hh=[{l:"ar",t:{Next:{v:["التالي"]},"Pause slideshow":{v:["تجميد عرض الشرائح"]},Previous:{v:["السابق"]},"Start slideshow":{v:["إبدإ العرض"]}}},{l:"ast",t:{Next:{v:["Siguiente"]},"Pause slideshow":{v:["Posar la presentación de diapositives"]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Aniciar la presentación de diapositives"]}}},{l:"br",t:{Next:{v:["Da heul"]},"Pause slideshow":{v:["Arsav an diaporama"]},Previous:{v:["A-raok"]},"Start slideshow":{v:["Kregiñ an diaporama"]}}},{l:"ca",t:{Next:{v:["Següent"]},"Pause slideshow":{v:["Atura la presentació"]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Inicia la presentació"]}}},{l:"cs",t:{Next:{v:["Následující"]},"Pause slideshow":{v:["Pozastavit prezentaci"]},Previous:{v:["Předchozí"]},"Start slideshow":{v:["Spustit prezentaci"]}}},{l:"cs-CZ",t:{Next:{v:["Následující"]},"Pause slideshow":{v:["Pozastavit prezentaci"]},Previous:{v:["Předchozí"]},"Start slideshow":{v:["Spustit prezentaci"]}}},{l:"da",t:{Next:{v:["Videre"]},"Pause slideshow":{v:["Suspender fremvisning"]},Previous:{v:["Forrige"]},"Start slideshow":{v:["Start fremvisning"]}}},{l:"de",t:{Next:{v:["Weiter"]},"Pause slideshow":{v:["Diashow pausieren"]},Previous:{v:["Vorherige"]},"Start slideshow":{v:["Diashow starten"]}}},{l:"de-DE",t:{Next:{v:["Weiter"]},"Pause slideshow":{v:["Diashow pausieren"]},Previous:{v:["Vorherige"]},"Start slideshow":{v:["Diashow starten"]}}},{l:"el",t:{Next:{v:["Επόμενο"]},"Pause slideshow":{v:["Παύση προβολής διαφανειών"]},Previous:{v:["Προηγούμενο"]},"Start slideshow":{v:["Έναρξη προβολής διαφανειών"]}}},{l:"en-GB",t:{Next:{v:["Next"]},"Pause slideshow":{v:["Pause slideshow"]},Previous:{v:["Previous"]},"Start slideshow":{v:["Start slideshow"]}}},{l:"eo",t:{Next:{v:["Sekva"]},"Pause slideshow":{v:["Payzi bildprezenton"]},Previous:{v:["Antaŭa"]},"Start slideshow":{v:["Komenci bildprezenton"]}}},{l:"es",t:{Next:{v:["Siguiente"]},"Pause slideshow":{v:["Pausar la presentación "]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Iniciar la presentación"]}}},{l:"es-AR",t:{Next:{v:["Siguiente"]},"Pause slideshow":{v:["Pausar la presentación "]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Iniciar la presentación"]}}},{l:"es-EC",t:{Next:{v:["Siguiente"]},"Pause slideshow":{v:["Pausar presentación de diapositivas"]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Iniciar presentación de diapositivas"]}}},{l:"es-MX",t:{Next:{v:["Siguiente"]},"Pause slideshow":{v:["Pausar presentación de diapositivas"]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Iniciar presentación de diapositivas"]}}},{l:"et-EE",t:{Next:{v:["Edasi"]},"Pause slideshow":{v:["Slaidiesitluse paus"]},Previous:{v:["Eelmine"]},"Start slideshow":{v:["Alusta slaidiesitust"]}}},{l:"eu",t:{Next:{v:["Hurrengoa"]},"Pause slideshow":{v:["Pausatu diaporama"]},Previous:{v:["Aurrekoa"]},"Start slideshow":{v:["Hasi diaporama"]}}},{l:"fa",t:{Next:{v:["بعدی"]},"Pause slideshow":{v:["توقف نمایش اسلاید"]},Previous:{v:["قبلی"]},"Start slideshow":{v:["شروع نمایش اسلاید"]}}},{l:"fi",t:{Next:{v:["Seuraava"]},"Pause slideshow":{v:["Keskeytä diaesitys"]},Previous:{v:["Edellinen"]},"Start slideshow":{v:["Aloita diaesitys"]}}},{l:"fr",t:{Next:{v:["Suivant"]},"Pause slideshow":{v:["Mettre le diaporama en pause"]},Previous:{v:["Précédent"]},"Start slideshow":{v:["Démarrer le diaporama"]}}},{l:"ga",t:{Next:{v:["Ar aghaidh"]},"Pause slideshow":{v:["Cuir taispeántas sleamhnán ar sos"]},Previous:{v:["Roimhe Seo"]},"Start slideshow":{v:["Tosaigh taispeántas sleamhnán"]}}},{l:"gl",t:{Next:{v:["Seguinte"]},"Pause slideshow":{v:["Pausar o diaporama"]},Previous:{v:["Anterir"]},"Start slideshow":{v:["Iniciar o diaporama"]}}},{l:"he",t:{Next:{v:["הבא"]},"Pause slideshow":{v:["השהיית מצגת"]},Previous:{v:["הקודם"]},"Start slideshow":{v:["התחלת המצגת"]}}},{l:"hr",t:{Next:{v:["Sljedeće"]},"Pause slideshow":{v:["Pauziraj dijaprojekciju"]},Previous:{v:["Prethodno"]},"Start slideshow":{v:["Pokreni dijaprojekciju"]}}},{l:"hu",t:{Next:{v:["Következő"]},"Pause slideshow":{v:["Diavetítés szüneteltetése"]},Previous:{v:["Előző"]},"Start slideshow":{v:["Diavetítés indítása"]}}},{l:"id",t:{Next:{v:["Selanjutnya"]},"Pause slideshow":{v:["Jeda tayangan slide"]},Previous:{v:["Sebelumnya"]},"Start slideshow":{v:["Mulai salindia"]}}},{l:"is",t:{Next:{v:["Næsta"]},"Pause slideshow":{v:["Gera hlé á skyggnusýningu"]},Previous:{v:["Fyrri"]},"Start slideshow":{v:["Byrja skyggnusýningu"]}}},{l:"it",t:{Next:{v:["Successivo"]},"Pause slideshow":{v:["Presentazione in pausa"]},Previous:{v:["Precedente"]},"Start slideshow":{v:["Avvia presentazione"]}}},{l:"ja",t:{Next:{v:["次"]},"Pause slideshow":{v:["スライドショーを一時停止"]},Previous:{v:["前"]},"Start slideshow":{v:["スライドショーを開始"]}}},{l:"ja-JP",t:{Next:{v:["次"]},"Pause slideshow":{v:["スライドショーを一時停止"]},Previous:{v:["前"]},"Start slideshow":{v:["スライドショーを開始"]}}},{l:"ko",t:{Next:{v:["다음"]},"Pause slideshow":{v:["슬라이드쇼 일시정지"]},Previous:{v:["이전"]},"Start slideshow":{v:["슬라이드쇼 시작"]}}},{l:"lo",t:{Next:{v:["ຕໍ່ໄປ"]},"Pause slideshow":{v:["ຢຸດສະໄລ້ໂຊຊົ່ວຄາວ"]},Previous:{v:["ກ່ອນໜ້າ"]},"Start slideshow":{v:["ເລີ່ມສະໄລ້ໂຊ"]}}},{l:"lt-LT",t:{Next:{v:["Kitas"]},"Pause slideshow":{v:["Pristabdyti skaidrių rodymą"]},Previous:{v:["Ankstesnis"]},"Start slideshow":{v:["Pradėti skaidrių rodymą"]}}},{l:"lv",t:{Next:{v:["Nākamais"]},"Pause slideshow":{v:["Pauzēt slaidrādi"]},Previous:{v:["Iepriekšējais"]},"Start slideshow":{v:["Sākt slaidrādi"]}}},{l:"mk",t:{Next:{v:["Следно"]},"Pause slideshow":{v:["Пузирај слајдшоу"]},Previous:{v:["Предходно"]},"Start slideshow":{v:["Стартувај слајдшоу"]}}},{l:"mn",t:{Next:{v:["Дараах"]},"Pause slideshow":{v:["Слайд шоуг түр зогсоох"]},Previous:{v:["Өмнөх"]},"Start slideshow":{v:["Слайд шоуг эхлүүлэх"]}}},{l:"my",t:{Next:{v:["နောက်သို့ဆက်ရန်"]},"Pause slideshow":{v:["စလိုက်ရှိုး ခေတ္တရပ်ရန်"]},Previous:{v:["ယခင်"]},"Start slideshow":{v:["စလိုက်ရှိုးအား စတင်ရန်"]}}},{l:"nb",t:{Next:{v:["Neste"]},"Pause slideshow":{v:["Pause lysbildefremvisning"]},Previous:{v:["Forrige"]},"Start slideshow":{v:["Start lysbildefremvisning"]}}},{l:"nl",t:{Next:{v:["Volgende"]},"Pause slideshow":{v:["Diavoorstelling pauzeren"]},Previous:{v:["Vorige"]},"Start slideshow":{v:["Diavoorstelling starten"]}}},{l:"oc",t:{Next:{v:["Seguent"]},"Pause slideshow":{v:["Metre en pausa lo diaporama"]},Previous:{v:["Precedent"]},"Start slideshow":{v:["Lançar lo diaporama"]}}},{l:"pl",t:{Next:{v:["Następny"]},"Pause slideshow":{v:["Wstrzymaj pokaz slajdów"]},Previous:{v:["Poprzedni"]},"Start slideshow":{v:["Rozpocznij pokaz slajdów"]}}},{l:"pt-BR",t:{Next:{v:["Próximo"]},"Pause slideshow":{v:["Pausar apresentação de slides"]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Iniciar apresentação de slides"]}}},{l:"pt-PT",t:{Next:{v:["Seguinte"]},"Pause slideshow":{v:["Pausar diaporama"]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Iniciar diaporama"]}}},{l:"ro",t:{Next:{v:["Următorul"]},"Pause slideshow":{v:["Pauză prezentare de diapozitive"]},Previous:{v:["Anterior"]},"Start slideshow":{v:["Începeți prezentarea de diapozitive"]}}},{l:"ru",t:{Next:{v:["Следующее"]},"Pause slideshow":{v:["Приостановить показ слйдов"]},Previous:{v:["Предыдущее"]},"Start slideshow":{v:["Начать показ слайдов"]}}},{l:"sk",t:{Next:{v:["Ďalej"]},"Pause slideshow":{v:["Pozastaviť prezentáciu"]},Previous:{v:["Predchádzajúce"]},"Start slideshow":{v:["Začať prezentáciu"]}}},{l:"sl",t:{Next:{v:["Naslednji"]},"Pause slideshow":{v:["Ustavi predstavitev"]},Previous:{v:["Predhodni"]},"Start slideshow":{v:["Začni predstavitev"]}}},{l:"sr",t:{Next:{v:["Следеће"]},"Pause slideshow":{v:["Паузирај слајд шоу"]},Previous:{v:["Претходно"]},"Start slideshow":{v:["Покрени слајд шоу"]}}},{l:"sv",t:{Next:{v:["Nästa"]},"Pause slideshow":{v:["Pausa bildspelet"]},Previous:{v:["Föregående"]},"Start slideshow":{v:["Starta bildspelet"]}}},{l:"tr",t:{Next:{v:["Sonraki"]},"Pause slideshow":{v:["Slayt sunumunu duraklat"]},Previous:{v:["Önceki"]},"Start slideshow":{v:["Slayt sunumunu başlat"]}}},{l:"uk",t:{Next:{v:["Вперед"]},"Pause slideshow":{v:["Пауза у показі слайдів"]},Previous:{v:["Назад"]},"Start slideshow":{v:["Почати показ слайдів"]}}},{l:"uz",t:{Next:{v:["Keyingi"]},"Pause slideshow":{v:["Slayd-shouni to'xtatib turish"]},Previous:{v:["Oldingi"]},"Start slideshow":{v:["Slayd-shouni boshlash"]}}},{l:"zh-CN",t:{Next:{v:["下一个"]},"Pause slideshow":{v:["暂停幻灯片"]},Previous:{v:["上一个"]},"Start slideshow":{v:["开始幻灯片"]}}},{l:"zh-HK",t:{Next:{v:["下一個"]},"Pause slideshow":{v:["暫停幻燈片"]},Previous:{v:["上一個"]},"Start slideshow":{v:["開始幻燈片"]}}},{l:"zh-TW",t:{Next:{v:["下一個"]},"Pause slideshow":{v:["暫停幻燈片"]},Previous:{v:["上一個"]},"Start slideshow":{v:["開始幻燈片"]}}}],ey=[{l:"ar",t:{}},{l:"ast",t:{}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{"Please choose a date":{v:["Zvolte datum"]}}},{l:"cs-CZ",t:{}},{l:"da",t:{"Please choose a date":{v:["Vælg en dato"]}}},{l:"de",t:{"Please choose a date":{v:["Bitte ein Datum wählen"]}}},{l:"de-DE",t:{"Please choose a date":{v:["Bitte ein Datum wählen"]}}},{l:"el",t:{"Please choose a date":{v:["Παρακαλώ επιλέξτε μια ημερομηνία"]}}},{l:"en-GB",t:{"Please choose a date":{v:["Please choose a date"]}}},{l:"eo",t:{}},{l:"es",t:{}},{l:"es-AR",t:{}},{l:"es-EC",t:{}},{l:"es-MX",t:{}},{l:"et-EE",t:{"Please choose a date":{v:["Palun vali kuupäev"]}}},{l:"eu",t:{}},{l:"fa",t:{}},{l:"fi",t:{}},{l:"fr",t:{"Please choose a date":{v:["Veuillez choisir une date"]}}},{l:"ga",t:{"Please choose a date":{v:["Roghnaigh dáta le do thoil"]}}},{l:"gl",t:{"Please choose a date":{v:["Escolla unha data"]}}},{l:"he",t:{}},{l:"hr",t:{"Please choose a date":{v:["Molimo odaberite datum"]}}},{l:"hu",t:{"Please choose a date":{v:["Válasszon egy dátumot"]}}},{l:"id",t:{"Please choose a date":{v:["Silakan pilih tanggal"]}}},{l:"is",t:{}},{l:"it",t:{}},{l:"ja",t:{"Please choose a date":{v:["日付を選択してください"]}}},{l:"ja-JP",t:{}},{l:"ko",t:{"Please choose a date":{v:["날짜를 선택해주세요"]}}},{l:"lo",t:{"Please choose a date":{v:["ກະລຸນາເລືອກວັນທີ"]}}},{l:"lt-LT",t:{"Please choose a date":{v:["Pasirinkite datą"]}}},{l:"lv",t:{}},{l:"mk",t:{"Please choose a date":{v:["Избери датум"]}}},{l:"mn",t:{"Please choose a date":{v:["Огноо сонгоно уу"]}}},{l:"my",t:{}},{l:"nb",t:{}},{l:"nl",t:{"Please choose a date":{v:["Kies een datum"]}}},{l:"oc",t:{}},{l:"pl",t:{}},{l:"pt-BR",t:{"Please choose a date":{v:["Por favor, escolha uma data"]}}},{l:"pt-PT",t:{"Please choose a date":{v:["Por favor, escolha uma data"]}}},{l:"ro",t:{}},{l:"ru",t:{"Please choose a date":{v:["Выберите дату"]}}},{l:"sk",t:{}},{l:"sl",t:{}},{l:"sr",t:{"Please choose a date":{v:["Молимо вас да изаберете датум"]}}},{l:"sv",t:{"Please choose a date":{v:["Välj ett datum"]}}},{l:"tr",t:{"Please choose a date":{v:["Lütfen bir tarih seçin"]}}},{l:"uk",t:{"Please choose a date":{v:["Виберіть дату"]}}},{l:"uz",t:{"Please choose a date":{v:["Iltimos, sanani tanlang"]}}},{l:"zh-CN",t:{}},{l:"zh-HK",t:{"Please choose a date":{v:["請選擇日期"]}}},{l:"zh-TW",t:{"Please choose a date":{v:["請選擇日期"]}}}],uy=[{l:"ar",t:{"Undo changes":{v:["تراجَع عن التغييرات"]}}},{l:"ast",t:{"Undo changes":{v:["Desfacer los cambeos"]}}},{l:"br",t:{}},{l:"ca",t:{"Undo changes":{v:["Desfés els canvis"]}}},{l:"cs",t:{"Undo changes":{v:["Vzít změny zpět"]}}},{l:"cs-CZ",t:{"Undo changes":{v:["Vzít změny zpět"]}}},{l:"da",t:{"Undo changes":{v:["Fortryd ændringer"]}}},{l:"de",t:{"Undo changes":{v:["Änderungen rückgängig machen"]}}},{l:"de-DE",t:{"Undo changes":{v:["Änderungen rückgängig machen"]}}},{l:"el",t:{"Undo changes":{v:["Αναίρεση Αλλαγών"]}}},{l:"en-GB",t:{"Undo changes":{v:["Undo changes"]}}},{l:"eo",t:{}},{l:"es",t:{"Undo changes":{v:["Deshacer cambios"]}}},{l:"es-AR",t:{"Undo changes":{v:["Deshacer cambios"]}}},{l:"es-EC",t:{"Undo changes":{v:["Deshacer cambios"]}}},{l:"es-MX",t:{"Undo changes":{v:["Deshacer cambios"]}}},{l:"et-EE",t:{"Undo changes":{v:["Pööra muudatused tagasi"]}}},{l:"eu",t:{"Undo changes":{v:["Aldaketak desegin"]}}},{l:"fa",t:{"Undo changes":{v:["لغو تغییرات"]}}},{l:"fi",t:{"Undo changes":{v:["Kumoa muutokset"]}}},{l:"fr",t:{"Undo changes":{v:["Annuler les changements"]}}},{l:"ga",t:{"Undo changes":{v:["Cealaigh athruithe"]}}},{l:"gl",t:{"Undo changes":{v:["Desfacer os cambios"]}}},{l:"he",t:{"Undo changes":{v:["ביטול שינויים"]}}},{l:"hr",t:{"Undo changes":{v:["Poništi promjene"]}}},{l:"hu",t:{"Undo changes":{v:["Változtatások visszavonása"]}}},{l:"id",t:{"Undo changes":{v:["Urungkan perubahan"]}}},{l:"is",t:{"Undo changes":{v:["Afturkalla breytingar"]}}},{l:"it",t:{"Undo changes":{v:["Cancella i cambiamenti"]}}},{l:"ja",t:{"Undo changes":{v:["変更を取り消し"]}}},{l:"ja-JP",t:{"Undo changes":{v:["変更を取り消し"]}}},{l:"ko",t:{"Undo changes":{v:["변경 되돌리기"]}}},{l:"lo",t:{"Undo changes":{v:["ຍ້ອນຄືນການປ່ຽນແປງ"]}}},{l:"lt-LT",t:{"Undo changes":{v:["Atšaukti pakeitimus"]}}},{l:"lv",t:{}},{l:"mk",t:{"Undo changes":{v:["Врати ги промените"]}}},{l:"mn",t:{"Undo changes":{v:["Өөрчлөлтийг буцаах"]}}},{l:"my",t:{}},{l:"nb",t:{"Undo changes":{v:["Tilbakestill endringer"]}}},{l:"nl",t:{"Undo changes":{v:["Wijzigingen ongedaan maken"]}}},{l:"oc",t:{}},{l:"pl",t:{"Undo changes":{v:["Cofnij zmiany"]}}},{l:"pt-BR",t:{"Undo changes":{v:["Desfazer modificações"]}}},{l:"pt-PT",t:{"Undo changes":{v:["Anular alterações"]}}},{l:"ro",t:{"Undo changes":{v:["Anularea modificărilor"]}}},{l:"ru",t:{"Undo changes":{v:["Отменить изменения"]}}},{l:"sk",t:{"Undo changes":{v:["Vrátiť zmeny"]}}},{l:"sl",t:{"Undo changes":{v:["Razveljavi spremembe"]}}},{l:"sr",t:{"Undo changes":{v:["Поништи измене"]}}},{l:"sv",t:{"Undo changes":{v:["Ångra ändringar"]}}},{l:"tr",t:{"Undo changes":{v:["Değişiklikleri geri al"]}}},{l:"uk",t:{"Undo changes":{v:["Скасувати зміни"]}}},{l:"uz",t:{"Undo changes":{v:["O'zgarishlarni bekor qilish"]}}},{l:"zh-CN",t:{"Undo changes":{v:["撤销更改"]}}},{l:"zh-HK",t:{"Undo changes":{v:["取消更改"]}}},{l:"zh-TW",t:{"Undo changes":{v:["還原變更"]}}}],ty=[{l:"ar",t:{"User status: {status}":{v:["حالة المستخدِم: {status}"]}}},{l:"ast",t:{"User status: {status}":{v:["Estáu del usuariu: {status}"]}}},{l:"br",t:{}},{l:"ca",t:{}},{l:"cs",t:{"User status: {status}":{v:["Stav uživatele: {status}"]}}},{l:"cs-CZ",t:{"User status: {status}":{v:["Stav uživatele: {status}"]}}},{l:"da",t:{"User status: {status}":{v:["Brugerstatus: {status}"]}}},{l:"de",t:{"User status: {status}":{v:["Benutzerstatus: {status}"]}}},{l:"de-DE",t:{"User status: {status}":{v:["Benutzerstatus: {status}"]}}},{l:"el",t:{"User status: {status}":{v:["Κατάσταση χρήστη: {status}"]}}},{l:"en-GB",t:{"User status: {status}":{v:["User status: {status}"]}}},{l:"eo",t:{}},{l:"es",t:{"User status: {status}":{v:["Estatus del usuario: {status}"]}}},{l:"es-AR",t:{"User status: {status}":{v:["Estado del usuario: {status}"]}}},{l:"es-EC",t:{}},{l:"es-MX",t:{"User status: {status}":{v:["Estado del usuario: {status}"]}}},{l:"et-EE",t:{"User status: {status}":{v:["Kasutaja olek: {status}"]}}},{l:"eu",t:{}},{l:"fa",t:{"User status: {status}":{v:["وضعیت کاربر: {status}"]}}},{l:"fi",t:{"User status: {status}":{v:["Käyttäjän tila: {status}"]}}},{l:"fr",t:{"User status: {status}":{v:["Statut de l'utilisateur : {status}"]}}},{l:"ga",t:{"User status: {status}":{v:["Stádas úsáideora: {status}"]}}},{l:"gl",t:{"User status: {status}":{v:["Estado do usuario: {status}"]}}},{l:"he",t:{}},{l:"hr",t:{"User status: {status}":{v:["Status korisnika: {status}"]}}},{l:"hu",t:{"User status: {status}":{v:["Felhasználó állapota: {status}"]}}},{l:"id",t:{"User status: {status}":{v:["Status pengguna: {status}"]}}},{l:"is",t:{"User status: {status}":{v:["Staða notanda: {status}"]}}},{l:"it",t:{"User status: {status}":{v:["Stato dell'utente: {status}"]}}},{l:"ja",t:{"User status: {status}":{v:["ユーザのステータス: {status}"]}}},{l:"ja-JP",t:{"User status: {status}":{v:["ユーザのステータス: {status}"]}}},{l:"ko",t:{"User status: {status}":{v:["사용자 상태: {status}"]}}},{l:"lo",t:{"User status: {status}":{v:["ສະຖານະຜູ້ໃຊ້: {status}"]}}},{l:"lt-LT",t:{"User status: {status}":{v:["Naudotojo būsena: {status}"]}}},{l:"lv",t:{}},{l:"mk",t:{"User status: {status}":{v:["Статус: {status}"]}}},{l:"mn",t:{"User status: {status}":{v:["Хэрэглэгчийн төлөв: {status}"]}}},{l:"my",t:{}},{l:"nb",t:{"User status: {status}":{v:["Brukerstatus: {status}"]}}},{l:"nl",t:{"User status: {status}":{v:["Gebruikersstatus: {status}"]}}},{l:"oc",t:{}},{l:"pl",t:{"User status: {status}":{v:["Status użytkownika: {status}"]}}},{l:"pt-BR",t:{"User status: {status}":{v:["Status do usuário: {status}"]}}},{l:"pt-PT",t:{"User status: {status}":{v:["Estado do utilizador: {status}"]}}},{l:"ro",t:{"User status: {status}":{v:["Status utilizator: {status}"]}}},{l:"ru",t:{"User status: {status}":{v:["Статус пользователя: {status}"]}}},{l:"sk",t:{"User status: {status}":{v:["Stav užívateľa: {status}"]}}},{l:"sl",t:{}},{l:"sr",t:{"User status: {status}":{v:["Статус корисника: {status}"]}}},{l:"sv",t:{"User status: {status}":{v:["Användarstatus: {status}"]}}},{l:"tr",t:{"User status: {status}":{v:["Kullanıcı durumu: {status}"]}}},{l:"uk",t:{"User status: {status}":{v:["Статус користувача: {status}"]}}},{l:"uz",t:{"User status: {status}":{v:["Foydalanuvchi holati: {status}"]}}},{l:"zh-CN",t:{"User status: {status}":{v:["用户状态:{status}"]}}},{l:"zh-HK",t:{"User status: {status}":{v:["用戶狀態:{status}"]}}},{l:"zh-TW",t:{"User status: {status}":{v:["使用者狀態:{status}"]}}}];function Gh(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function sy(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&Gh(e.default)}const Kh=Object.assign;function ny(e,u){const t={};for(const s in u){const n=u[s];t[s]=qh(n)?n.map(e):e(n)}return t}const iy=()=>{},qh=Array.isArray;function oy(e,u){const t={};for(const s in e)t[s]=s in u?u[s]:e[s];return t}const Km=Symbol("");function ry(e,u){return Kh(new Error,{type:e,[Km]:!0},u)}function ay(e,u){return e instanceof Error&&Km in e&&(u==null||!!(e.type&u))}const ly=Symbol(""),dy=Symbol(""),Yh=Symbol(""),my=Symbol(""),cy=Symbol("");var qm={},$i={};$i.byteLength=Jh,$i.toByteArray=ev,$i.fromByteArray=sv;for(var gt=[],Vu=[],Zh=typeof Uint8Array<"u"?Uint8Array:Array,Io="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",$s=0,Xh=Io.length;$s0)throw new Error("Invalid string. Length must be a multiple of 4");var t=e.indexOf("=");t===-1&&(t=u);var s=t===u?0:4-t%4;return[t,s]}function Jh(e){var u=Ym(e),t=u[0],s=u[1];return(t+s)*3/4-s}function Qh(e,u,t){return(u+t)*3/4-t}function ev(e){var u,t=Ym(e),s=t[0],n=t[1],i=new Zh(Qh(e,s,n)),o=0,r=n>0?s-4:s,a;for(a=0;a>16&255,i[o++]=u>>8&255,i[o++]=u&255;return n===2&&(u=Vu[e.charCodeAt(a)]<<2|Vu[e.charCodeAt(a+1)]>>4,i[o++]=u&255),n===1&&(u=Vu[e.charCodeAt(a)]<<10|Vu[e.charCodeAt(a+1)]<<4|Vu[e.charCodeAt(a+2)]>>2,i[o++]=u>>8&255,i[o++]=u&255),i}function uv(e){return gt[e>>18&63]+gt[e>>12&63]+gt[e>>6&63]+gt[e&63]}function tv(e,u,t){for(var s,n=[],i=u;ir?r:o+i));return s===1?(u=e[t-1],n.push(gt[u>>2]+gt[u<<4&63]+"==")):s===2&&(u=(e[t-2]<<8)+e[t-1],n.push(gt[u>>10]+gt[u>>4&63]+gt[u<<2&63]+"=")),n.join("")}var hr={};hr.read=function(e,u,t,s,n){var i,o,r=n*8-s-1,a=(1<>1,l=-7,g=t?n-1:0,p=t?-1:1,h=e[u+g];for(g+=p,i=h&(1<<-l)-1,h>>=-l,l+=r;l>0;i=i*256+e[u+g],g+=p,l-=8);for(o=i&(1<<-l)-1,i>>=-l,l+=s;l>0;o=o*256+e[u+g],g+=p,l-=8);if(i===0)i=1-m;else{if(i===a)return o?NaN:(h?-1:1)*(1/0);o=o+Math.pow(2,s),i=i-m}return(h?-1:1)*o*Math.pow(2,i-s)},hr.write=function(e,u,t,s,n,i){var o,r,a,m=i*8-n-1,l=(1<>1,p=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,h=s?0:i-1,y=s?1:-1,E=u<0||u===0&&1/u<0?1:0;for(u=Math.abs(u),isNaN(u)||u===1/0?(r=isNaN(u)?1:0,o=l):(o=Math.floor(Math.log(u)/Math.LN2),u*(a=Math.pow(2,-o))<1&&(o--,a*=2),o+g>=1?u+=p/a:u+=p*Math.pow(2,1-g),u*a>=2&&(o++,a/=2),o+g>=l?(r=0,o=l):o+g>=1?(r=(u*a-1)*Math.pow(2,n),o=o+g):(r=u*Math.pow(2,g-1)*Math.pow(2,n),o=0));n>=8;e[t+h]=r&255,h+=y,r/=256,n-=8);for(o=o<0;e[t+h]=o&255,h+=y,o/=256,m-=8);e[t+h-y]|=E*128};(function(e){const u=$i,t=hr,s=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=l,e.SlowBuffer=K,e.INSPECT_MAX_BYTES=50;const n=2147483647;e.kMaxLength=n;const{Uint8Array:i,ArrayBuffer:o,SharedArrayBuffer:r}=globalThis;l.TYPED_ARRAY_SUPPORT=a(),!l.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&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 a(){try{const d=new i(1),c={foo:function(){return 42}};return Object.setPrototypeOf(c,i.prototype),Object.setPrototypeOf(d,c),d.foo()===42}catch{return!1}}Object.defineProperty(l.prototype,"parent",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.buffer}}),Object.defineProperty(l.prototype,"offset",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.byteOffset}});function m(d){if(d>n)throw new RangeError('The value "'+d+'" is invalid for option "size"');const c=new i(d);return Object.setPrototypeOf(c,l.prototype),c}function l(d,c,f){if(typeof d=="number"){if(typeof c=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return y(d)}return g(d,c,f)}l.poolSize=8192;function g(d,c,f){if(typeof d=="string")return E(d,c);if(o.isView(d))return B(d);if(d==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof d);if(ge(d,o)||d&&ge(d.buffer,o)||typeof r<"u"&&(ge(d,r)||d&&ge(d.buffer,r)))return A(d,c,f);if(typeof d=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const x=d.valueOf&&d.valueOf();if(x!=null&&x!==d)return l.from(x,c,f);const k=O(d);if(k)return k;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof d[Symbol.toPrimitive]=="function")return l.from(d[Symbol.toPrimitive]("string"),c,f);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof d)}l.from=function(d,c,f){return g(d,c,f)},Object.setPrototypeOf(l.prototype,i.prototype),Object.setPrototypeOf(l,i);function p(d){if(typeof d!="number")throw new TypeError('"size" argument must be of type number');if(d<0)throw new RangeError('The value "'+d+'" is invalid for option "size"')}function h(d,c,f){return p(d),d<=0?m(d):c!==void 0?typeof f=="string"?m(d).fill(c,f):m(d).fill(c):m(d)}l.alloc=function(d,c,f){return h(d,c,f)};function y(d){return p(d),m(d<0?0:N(d)|0)}l.allocUnsafe=function(d){return y(d)},l.allocUnsafeSlow=function(d){return y(d)};function E(d,c){if((typeof c!="string"||c==="")&&(c="utf8"),!l.isEncoding(c))throw new TypeError("Unknown encoding: "+c);const f=I(d,c)|0;let x=m(f);const k=x.write(d,c);return k!==f&&(x=x.slice(0,k)),x}function F(d){const c=d.length<0?0:N(d.length)|0,f=m(c);for(let x=0;x=n)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+n.toString(16)+" bytes");return d|0}function K(d){return+d!=d&&(d=0),l.alloc(+d)}l.isBuffer=function(d){return d!=null&&d._isBuffer===!0&&d!==l.prototype},l.compare=function(d,c){if(ge(d,i)&&(d=l.from(d,d.offset,d.byteLength)),ge(c,i)&&(c=l.from(c,c.offset,c.byteLength)),!l.isBuffer(d)||!l.isBuffer(c))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(d===c)return 0;let f=d.length,x=c.length;for(let k=0,P=Math.min(f,x);kx.length?(l.isBuffer(P)||(P=l.from(P)),P.copy(x,k)):i.prototype.set.call(x,P,k);else if(l.isBuffer(P))P.copy(x,k);else throw new TypeError('"list" argument must be an Array of Buffers');k+=P.length}return x};function I(d,c){if(l.isBuffer(d))return d.length;if(o.isView(d)||ge(d,o))return d.byteLength;if(typeof d!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof d);const f=d.length,x=arguments.length>2&&arguments[2]===!0;if(!x&&f===0)return 0;let k=!1;for(;;)switch(c){case"ascii":case"latin1":case"binary":return f;case"utf8":case"utf-8":return j(d).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return f*2;case"hex":return f>>>1;case"base64":return oe(d).length;default:if(k)return x?-1:j(d).length;c=(""+c).toLowerCase(),k=!0}}l.byteLength=I;function Y(d,c,f){let x=!1;if((c===void 0||c<0)&&(c=0),c>this.length||((f===void 0||f>this.length)&&(f=this.length),f<=0)||(f>>>=0,c>>>=0,f<=c))return"";for(d||(d="utf8");;)switch(d){case"hex":return xe(this,c,f);case"utf8":case"utf-8":return Q(this,c,f);case"ascii":return le(this,c,f);case"latin1":case"binary":return ie(this,c,f);case"base64":return Z(this,c,f);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return He(this,c,f);default:if(x)throw new TypeError("Unknown encoding: "+d);d=(d+"").toLowerCase(),x=!0}}l.prototype._isBuffer=!0;function se(d,c,f){const x=d[c];d[c]=d[f],d[f]=x}l.prototype.swap16=function(){const d=this.length;if(d%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let c=0;cc&&(d+=" ... "),""},s&&(l.prototype[s]=l.prototype.inspect),l.prototype.compare=function(d,c,f,x,k){if(ge(d,i)&&(d=l.from(d,d.offset,d.byteLength)),!l.isBuffer(d))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof d);if(c===void 0&&(c=0),f===void 0&&(f=d?d.length:0),x===void 0&&(x=0),k===void 0&&(k=this.length),c<0||f>d.length||x<0||k>this.length)throw new RangeError("out of range index");if(x>=k&&c>=f)return 0;if(x>=k)return-1;if(c>=f)return 1;if(c>>>=0,f>>>=0,x>>>=0,k>>>=0,this===d)return 0;let P=k-x,q=f-c;const Oe=Math.min(P,q),Ke=this.slice(x,k),ye=d.slice(c,f);for(let Re=0;Re2147483647?f=2147483647:f<-2147483648&&(f=-2147483648),f=+f,Ae(f)&&(f=k?0:d.length-1),f<0&&(f=d.length+f),f>=d.length){if(k)return-1;f=d.length-1}else if(f<0)if(k)f=0;else return-1;if(typeof c=="string"&&(c=l.from(c,x)),l.isBuffer(c))return c.length===0?-1:M(d,c,f,x,k);if(typeof c=="number")return c=c&255,typeof i.prototype.indexOf=="function"?k?i.prototype.indexOf.call(d,c,f):i.prototype.lastIndexOf.call(d,c,f):M(d,[c],f,x,k);throw new TypeError("val must be string, number or Buffer")}function M(d,c,f,x,k){let P=1,q=d.length,Oe=c.length;if(x!==void 0&&(x=String(x).toLowerCase(),x==="ucs2"||x==="ucs-2"||x==="utf16le"||x==="utf-16le")){if(d.length<2||c.length<2)return-1;P=2,q/=2,Oe/=2,f/=2}function Ke(Re,Ye){return P===1?Re[Ye]:Re.readUInt16BE(Ye*P)}let ye;if(k){let Re=-1;for(ye=f;yeq&&(f=q-Oe),ye=f;ye>=0;ye--){let Re=!0;for(let Ye=0;Yek&&(x=k)):x=k;const P=c.length;x>P/2&&(x=P/2);let q;for(q=0;q>>0,isFinite(f)?(f=f>>>0,x===void 0&&(x="utf8")):(x=f,f=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const k=this.length-c;if((f===void 0||f>k)&&(f=k),d.length>0&&(f<0||c<0)||c>this.length)throw new RangeError("Attempt to write outside buffer bounds");x||(x="utf8");let P=!1;for(;;)switch(x){case"hex":return ne(this,d,c,f);case"utf8":case"utf-8":return b(this,d,c,f);case"ascii":case"latin1":case"binary":return T(this,d,c,f);case"base64":return V(this,d,c,f);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ue(this,d,c,f);default:if(P)throw new TypeError("Unknown encoding: "+x);x=(""+x).toLowerCase(),P=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Z(d,c,f){return c===0&&f===d.length?u.fromByteArray(d):u.fromByteArray(d.slice(c,f))}function Q(d,c,f){f=Math.min(d.length,f);const x=[];let k=c;for(;k239?4:P>223?3:P>191?2:1;if(k+Oe<=f){let Ke,ye,Re,Ye;switch(Oe){case 1:P<128&&(q=P);break;case 2:Ke=d[k+1],(Ke&192)===128&&(Ye=(P&31)<<6|Ke&63,Ye>127&&(q=Ye));break;case 3:Ke=d[k+1],ye=d[k+2],(Ke&192)===128&&(ye&192)===128&&(Ye=(P&15)<<12|(Ke&63)<<6|ye&63,Ye>2047&&(Ye<55296||Ye>57343)&&(q=Ye));break;case 4:Ke=d[k+1],ye=d[k+2],Re=d[k+3],(Ke&192)===128&&(ye&192)===128&&(Re&192)===128&&(Ye=(P&15)<<18|(Ke&63)<<12|(ye&63)<<6|Re&63,Ye>65535&&Ye<1114112&&(q=Ye))}}q===null?(q=65533,Oe=1):q>65535&&(q-=65536,x.push(q>>>10&1023|55296),q=56320|q&1023),x.push(q),k+=Oe}return de(x)}const te=4096;function de(d){const c=d.length;if(c<=te)return String.fromCharCode.apply(String,d);let f="",x=0;for(;xx)&&(f=x);let k="";for(let P=c;Pf&&(d=f),c<0?(c+=f,c<0&&(c=0)):c>f&&(c=f),cf)throw new RangeError("Trying to access beyond buffer length")}l.prototype.readUintLE=l.prototype.readUIntLE=function(d,c,f){d=d>>>0,c=c>>>0,f||Se(d,c,this.length);let x=this[d],k=1,P=0;for(;++P>>0,c=c>>>0,f||Se(d,c,this.length);let x=this[d+--c],k=1;for(;c>0&&(k*=256);)x+=this[d+--c]*k;return x},l.prototype.readUint8=l.prototype.readUInt8=function(d,c){return d=d>>>0,c||Se(d,1,this.length),this[d]},l.prototype.readUint16LE=l.prototype.readUInt16LE=function(d,c){return d=d>>>0,c||Se(d,2,this.length),this[d]|this[d+1]<<8},l.prototype.readUint16BE=l.prototype.readUInt16BE=function(d,c){return d=d>>>0,c||Se(d,2,this.length),this[d]<<8|this[d+1]},l.prototype.readUint32LE=l.prototype.readUInt32LE=function(d,c){return d=d>>>0,c||Se(d,4,this.length),(this[d]|this[d+1]<<8|this[d+2]<<16)+this[d+3]*16777216},l.prototype.readUint32BE=l.prototype.readUInt32BE=function(d,c){return d=d>>>0,c||Se(d,4,this.length),this[d]*16777216+(this[d+1]<<16|this[d+2]<<8|this[d+3])},l.prototype.readBigUInt64LE=De(function(d){d=d>>>0,S(d,"offset");const c=this[d],f=this[d+7];(c===void 0||f===void 0)&&W(d,this.length-8);const x=c+this[++d]*2**8+this[++d]*2**16+this[++d]*2**24,k=this[++d]+this[++d]*2**8+this[++d]*2**16+f*2**24;return BigInt(x)+(BigInt(k)<>>0,S(d,"offset");const c=this[d],f=this[d+7];(c===void 0||f===void 0)&&W(d,this.length-8);const x=c*2**24+this[++d]*2**16+this[++d]*2**8+this[++d],k=this[++d]*2**24+this[++d]*2**16+this[++d]*2**8+f;return(BigInt(x)<>>0,c=c>>>0,f||Se(d,c,this.length);let x=this[d],k=1,P=0;for(;++P=k&&(x-=Math.pow(2,8*c)),x},l.prototype.readIntBE=function(d,c,f){d=d>>>0,c=c>>>0,f||Se(d,c,this.length);let x=c,k=1,P=this[d+--x];for(;x>0&&(k*=256);)P+=this[d+--x]*k;return k*=128,P>=k&&(P-=Math.pow(2,8*c)),P},l.prototype.readInt8=function(d,c){return d=d>>>0,c||Se(d,1,this.length),this[d]&128?(255-this[d]+1)*-1:this[d]},l.prototype.readInt16LE=function(d,c){d=d>>>0,c||Se(d,2,this.length);const f=this[d]|this[d+1]<<8;return f&32768?f|4294901760:f},l.prototype.readInt16BE=function(d,c){d=d>>>0,c||Se(d,2,this.length);const f=this[d+1]|this[d]<<8;return f&32768?f|4294901760:f},l.prototype.readInt32LE=function(d,c){return d=d>>>0,c||Se(d,4,this.length),this[d]|this[d+1]<<8|this[d+2]<<16|this[d+3]<<24},l.prototype.readInt32BE=function(d,c){return d=d>>>0,c||Se(d,4,this.length),this[d]<<24|this[d+1]<<16|this[d+2]<<8|this[d+3]},l.prototype.readBigInt64LE=De(function(d){d=d>>>0,S(d,"offset");const c=this[d],f=this[d+7];(c===void 0||f===void 0)&&W(d,this.length-8);const x=this[d+4]+this[d+5]*2**8+this[d+6]*2**16+(f<<24);return(BigInt(x)<>>0,S(d,"offset");const c=this[d],f=this[d+7];(c===void 0||f===void 0)&&W(d,this.length-8);const x=(c<<24)+this[++d]*2**16+this[++d]*2**8+this[++d];return(BigInt(x)<>>0,c||Se(d,4,this.length),t.read(this,d,!0,23,4)},l.prototype.readFloatBE=function(d,c){return d=d>>>0,c||Se(d,4,this.length),t.read(this,d,!1,23,4)},l.prototype.readDoubleLE=function(d,c){return d=d>>>0,c||Se(d,8,this.length),t.read(this,d,!0,52,8)},l.prototype.readDoubleBE=function(d,c){return d=d>>>0,c||Se(d,8,this.length),t.read(this,d,!1,52,8)};function Pe(d,c,f,x,k,P){if(!l.isBuffer(d))throw new TypeError('"buffer" argument must be a Buffer instance');if(c>k||cd.length)throw new RangeError("Index out of range")}l.prototype.writeUintLE=l.prototype.writeUIntLE=function(d,c,f,x){if(d=+d,c=c>>>0,f=f>>>0,!x){const q=Math.pow(2,8*f)-1;Pe(this,d,c,f,q,0)}let k=1,P=0;for(this[c]=d&255;++P>>0,f=f>>>0,!x){const q=Math.pow(2,8*f)-1;Pe(this,d,c,f,q,0)}let k=f-1,P=1;for(this[c+k]=d&255;--k>=0&&(P*=256);)this[c+k]=d/P&255;return c+f},l.prototype.writeUint8=l.prototype.writeUInt8=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,1,255,0),this[c]=d&255,c+1},l.prototype.writeUint16LE=l.prototype.writeUInt16LE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,2,65535,0),this[c]=d&255,this[c+1]=d>>>8,c+2},l.prototype.writeUint16BE=l.prototype.writeUInt16BE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,2,65535,0),this[c]=d>>>8,this[c+1]=d&255,c+2},l.prototype.writeUint32LE=l.prototype.writeUInt32LE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,4,4294967295,0),this[c+3]=d>>>24,this[c+2]=d>>>16,this[c+1]=d>>>8,this[c]=d&255,c+4},l.prototype.writeUint32BE=l.prototype.writeUInt32BE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,4,4294967295,0),this[c]=d>>>24,this[c+1]=d>>>16,this[c+2]=d>>>8,this[c+3]=d&255,c+4};function pe(d,c,f,x,k){z(c,x,k,d,f,7);let P=Number(c&BigInt(4294967295));d[f++]=P,P=P>>8,d[f++]=P,P=P>>8,d[f++]=P,P=P>>8,d[f++]=P;let q=Number(c>>BigInt(32)&BigInt(4294967295));return d[f++]=q,q=q>>8,d[f++]=q,q=q>>8,d[f++]=q,q=q>>8,d[f++]=q,f}function $e(d,c,f,x,k){z(c,x,k,d,f,7);let P=Number(c&BigInt(4294967295));d[f+7]=P,P=P>>8,d[f+6]=P,P=P>>8,d[f+5]=P,P=P>>8,d[f+4]=P;let q=Number(c>>BigInt(32)&BigInt(4294967295));return d[f+3]=q,q=q>>8,d[f+2]=q,q=q>>8,d[f+1]=q,q=q>>8,d[f]=q,f+8}l.prototype.writeBigUInt64LE=De(function(d,c=0){return pe(this,d,c,BigInt(0),BigInt("0xffffffffffffffff"))}),l.prototype.writeBigUInt64BE=De(function(d,c=0){return $e(this,d,c,BigInt(0),BigInt("0xffffffffffffffff"))}),l.prototype.writeIntLE=function(d,c,f,x){if(d=+d,c=c>>>0,!x){const Oe=Math.pow(2,8*f-1);Pe(this,d,c,f,Oe-1,-Oe)}let k=0,P=1,q=0;for(this[c]=d&255;++k>0)-q&255;return c+f},l.prototype.writeIntBE=function(d,c,f,x){if(d=+d,c=c>>>0,!x){const Oe=Math.pow(2,8*f-1);Pe(this,d,c,f,Oe-1,-Oe)}let k=f-1,P=1,q=0;for(this[c+k]=d&255;--k>=0&&(P*=256);)d<0&&q===0&&this[c+k+1]!==0&&(q=1),this[c+k]=(d/P>>0)-q&255;return c+f},l.prototype.writeInt8=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,1,127,-128),d<0&&(d=255+d+1),this[c]=d&255,c+1},l.prototype.writeInt16LE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,2,32767,-32768),this[c]=d&255,this[c+1]=d>>>8,c+2},l.prototype.writeInt16BE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,2,32767,-32768),this[c]=d>>>8,this[c+1]=d&255,c+2},l.prototype.writeInt32LE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,4,2147483647,-2147483648),this[c]=d&255,this[c+1]=d>>>8,this[c+2]=d>>>16,this[c+3]=d>>>24,c+4},l.prototype.writeInt32BE=function(d,c,f){return d=+d,c=c>>>0,f||Pe(this,d,c,4,2147483647,-2147483648),d<0&&(d=4294967295+d+1),this[c]=d>>>24,this[c+1]=d>>>16,this[c+2]=d>>>8,this[c+3]=d&255,c+4},l.prototype.writeBigInt64LE=De(function(d,c=0){return pe(this,d,c,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),l.prototype.writeBigInt64BE=De(function(d,c=0){return $e(this,d,c,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Nu(d,c,f,x,k,P){if(f+x>d.length)throw new RangeError("Index out of range");if(f<0)throw new RangeError("Index out of range")}function tt(d,c,f,x,k){return c=+c,f=f>>>0,k||Nu(d,c,f,4),t.write(d,c,f,x,23,4),f+4}l.prototype.writeFloatLE=function(d,c,f){return tt(this,d,c,!0,f)},l.prototype.writeFloatBE=function(d,c,f){return tt(this,d,c,!1,f)};function $u(d,c,f,x,k){return c=+c,f=f>>>0,k||Nu(d,c,f,8),t.write(d,c,f,x,52,8),f+8}l.prototype.writeDoubleLE=function(d,c,f){return $u(this,d,c,!0,f)},l.prototype.writeDoubleBE=function(d,c,f){return $u(this,d,c,!1,f)},l.prototype.copy=function(d,c,f,x){if(!l.isBuffer(d))throw new TypeError("argument should be a Buffer");if(f||(f=0),!x&&x!==0&&(x=this.length),c>=d.length&&(c=d.length),c||(c=0),x>0&&x=this.length)throw new RangeError("Index out of range");if(x<0)throw new RangeError("sourceEnd out of bounds");x>this.length&&(x=this.length),d.length-c>>0,f=f===void 0?this.length:f>>>0,d||(d=0);let k;if(typeof d=="number")for(k=c;k2**32?k=_(String(f)):typeof f=="bigint"&&(k=String(f),(f>BigInt(2)**BigInt(32)||f<-(BigInt(2)**BigInt(32)))&&(k=_(k)),k+="n"),x+=` It must be ${c}. Received ${k}`,x},RangeError);function _(d){let c="",f=d.length;const x=d[0]==="-"?1:0;for(;f>=x+4;f-=3)c=`_${d.slice(f-3,f)}${c}`;return`${d.slice(0,f)}${c}`}function $(d,c,f){S(c,"offset"),(d[c]===void 0||d[c+f]===void 0)&&W(c,d.length-(f+1))}function z(d,c,f,x,k,P){if(d>f||d= 0${q} and < 2${q} ** ${(P+1)*8}${q}`:Oe=`>= -(2${q} ** ${(P+1)*8-1}${q}) and < 2 ** ${(P+1)*8-1}${q}`,new C.ERR_OUT_OF_RANGE("value",Oe,d)}$(x,k,P)}function S(d,c){if(typeof d!="number")throw new C.ERR_INVALID_ARG_TYPE(c,"number",d)}function W(d,c,f){throw Math.floor(d)!==d?(S(d,f),new C.ERR_OUT_OF_RANGE("offset","an integer",d)):c<0?new C.ERR_BUFFER_OUT_OF_BOUNDS:new C.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${c}`,d)}const U=/[^+/0-9A-Za-z-_]/g;function H(d){if(d=d.split("=")[0],d=d.trim().replace(U,""),d.length<2)return"";for(;d.length%4!==0;)d=d+"=";return d}function j(d,c){c=c||1/0;let f;const x=d.length;let k=null;const P=[];for(let q=0;q55295&&f<57344){if(!k){if(f>56319){(c-=3)>-1&&P.push(239,191,189);continue}else if(q+1===x){(c-=3)>-1&&P.push(239,191,189);continue}k=f;continue}if(f<56320){(c-=3)>-1&&P.push(239,191,189),k=f;continue}f=(k-55296<<10|f-56320)+65536}else k&&(c-=3)>-1&&P.push(239,191,189);if(k=null,f<128){if((c-=1)<0)break;P.push(f)}else if(f<2048){if((c-=2)<0)break;P.push(f>>6|192,f&63|128)}else if(f<65536){if((c-=3)<0)break;P.push(f>>12|224,f>>6&63|128,f&63|128)}else if(f<1114112){if((c-=4)<0)break;P.push(f>>18|240,f>>12&63|128,f>>6&63|128,f&63|128)}else throw new Error("Invalid code point")}return P}function re(d){const c=[];for(let f=0;f>8,k=f%256,P.push(k),P.push(x);return P}function oe(d){return u.toByteArray(H(d))}function ae(d,c,f,x){let k;for(k=0;k=c.length||k>=d.length);++k)c[k+f]=d[k];return k}function ge(d,c){return d instanceof c||d!=null&&d.constructor!=null&&d.constructor.name!=null&&d.constructor.name===c.name}function Ae(d){return d!==d}const _e=(function(){const d="0123456789abcdef",c=new Array(256);for(let f=0;f<16;++f){const x=f*16;for(let k=0;k<16;++k)c[x+k]=d[f]+d[k]}return c})();function De(d){return typeof BigInt>"u"?qe:d}function qe(){throw new Error("BigInt not supported")}})(qm);const Kl=qm.Buffer,[nv]=window.OC?.config?.version?.split(".")??[],Zm=Number.parseInt(nv??"34"),Jr=Zm<32,iv=Zm<34,ov=Symbol.for("NcFormBox:context");function rv(){return Zt(ov,{isInFormBox:!1,formBoxItemClass:void 0})}const qu=(e,u)=>{const t=e.__vccOpts||e;for(const[s,n]of u)t[s]=n;return t},av={class:"button-vue__wrapper"},lv={class:"button-vue__icon"},dv={class:"button-vue__text"},mv=yt({__name:"NcButton",props:{alignment:{default:"center"},ariaLabel:{default:void 0},disabled:{type:Boolean},download:{type:[String,Boolean],default:void 0},href:{default:void 0},pressed:{type:Boolean,default:void 0},size:{default:"normal"},target:{default:"_self"},text:{default:void 0},to:{default:void 0},type:{default:"button"},variant:{default:"secondary"},wide:{type:Boolean}},emits:["click","update:pressed"],setup(e,{emit:u}){const t=e,s=u,{formBoxItemClass:n}=rv(),i=Zt(Yh,null)!==null,o=Ge(()=>i&&t.to?"RouterLink":t.href?"a":"button"),r=Ge(()=>o.value==="button"&&typeof t.pressed=="boolean"),a=Ge(()=>t.pressed?"primary":t.pressed===!1&&t.variant==="primary"?"secondary":t.variant),m=Ge(()=>a.value.startsWith("tertiary")),l=Ge(()=>t.alignment.split("-")[0]),g=Ge(()=>t.alignment.includes("-")),p=Zt("NcPopover:trigger:attrs",()=>({}),!1),h=Ge(()=>p()),y=Ge(()=>{if(o.value==="RouterLink")return{to:t.to,activeClass:"active"};if(o.value==="a")return{href:t.href||"#",target:t.target,rel:"nofollow noreferrer noopener",download:t.download||void 0};if(o.value==="button")return{...h.value,"aria-pressed":t.pressed,type:t.type,disabled:t.disabled}});function E(F){r.value&&s("update:pressed",!t.pressed),s("click",F)}return(F,B)=>(me(),pu(Ri(o.value),_u({class:["button-vue",[`button-vue--size-${e.size}`,{[`button-vue--${a.value}`]:a.value,"button-vue--tertiary":m.value,"button-vue--wide":e.wide,[`button-vue--${l.value}`]:l.value!=="center","button-vue--reverse":g.value,"button-vue--legacy":Fe(Jr),"button-vue--legacy34":Fe(iv)},Fe(n)]],"aria-label":e.ariaLabel},y.value,{onClick:E}),{default:Me(()=>[Ce("span",av,[Ce("span",lv,[Ve(F.$slots,"icon",{},void 0,!0)]),Ce("span",dv,[Ve(F.$slots,"default",{},()=>[tn(Mu(e.text),1)],!0)])])]),_:3},16,["class","aria-label"]))}}),Bs=qu(mv,[["__scopeId","data-v-00a99684"]]),cv=["aria-hidden","aria-label"],gv={key:0,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},fv=["d"],pv=["innerHTML"],hv=yt({__name:"NcIconSvgWrapper",props:{directional:{type:Boolean},inline:{type:Boolean},svg:{default:""},name:{default:void 0},path:{default:""},size:{default:20}},setup(e){Nm(n=>({fb515064:t.value}));const u=e,t=Ge(()=>typeof u.size=="number"?`${u.size}px`:u.size),s=Ge(()=>{if(!u.svg||u.path)return;const n=ud.sanitize(u.svg),i=new DOMParser().parseFromString(n,"image/svg+xml");return i.querySelector("parsererror")?"":(i.documentElement.id&&i.documentElement.removeAttribute("id"),i.documentElement.outerHTML)});return(n,i)=>(me(),Be("span",{"aria-hidden":e.name?void 0:"true","aria-label":e.name||void 0,class:Iu(["icon-vue",{"icon-vue--directional":e.directional,"icon-vue--inline":e.inline}]),role:"img"},[s.value?(me(),Be("span",{key:1,innerHTML:s.value},null,8,pv)):(me(),Be("svg",gv,[Ce("path",{d:e.path},null,8,fv)]))],10,cv))}}),Ys=qu(hv,[["__scopeId","data-v-aaedb1c3"]]);Bv();function vv(){return globalThis._nc_auth_requestToken?globalThis._nc_auth_requestToken:globalThis.document?document.head.dataset.requesttoken??null:null}function Xm(e){if(!e||typeof e!="string")throw new Error("Invalid CSRF token given",{cause:{token:e}});globalThis._nc_auth_requestToken!==e&&(globalThis._nc_auth_requestToken=e,globalThis.document&&(document.head.dataset.requesttoken=e),vh("csrf-token-update",{token:e,_internal:!0}))}async function Ev(){const e=Z4("/csrftoken"),u=await fetch(e);if(!u.ok)throw new Error("Could not fetch CSRF token from API",{cause:u});try{const{token:t}=await u.json();return Xm(t),t}catch(t){throw new Error("Could not parse CSRF token from API response",{cause:t})}}function Cv(e){const u=async({token:t})=>{try{e(t)}catch(s){console.error("Error updating CSRF token observer",s)}};return $m("csrf-token-update",u),()=>hh("csrf-token-update",u)}function Bv(){$m("csrf-token-update",({token:e,_internal:u})=>{u||Xm(e)})}eh("public").persist().build();let Us;function ql(e,u){return e?e.getAttribute(u):null}function yv(){if(Us!==void 0)return Us;const e=document?.getElementsByTagName("head")[0];if(!e)return null;const u=ql(e,"data-user");return u===null?(Us=null,Us):(Us={uid:u,displayName:ql(e,"data-user-displayname"),isAdmin:!!window._oc_isadmin},Us)}var uu=(e=>(e[e.Debug=0]="Debug",e[e.Info=1]="Info",e[e.Warn=2]="Warn",e[e.Error=3]="Error",e[e.Fatal=4]="Fatal",e))(uu||{});class xv{context;constructor(u){this.context=u||{}}formatMessage(u,t,s){let n="["+uu[t].toUpperCase()+"] ";return s&&s.app&&(n+=s.app+": "),typeof u=="string"?n+u:(n+=`Unexpected ${u.name}`,u.message&&(n+=` "${u.message}"`),t===uu.Debug&&u.stack&&(n+=` + +Stack trace: +${u.stack}`),n)}log(u,t,s){if(!(typeof this.context?.level=="number"&&u{document.readyState==="complete"||document.readyState==="interactive"?(u.context.level=window._oc_config?.loglevel??uu.Warn,window._oc_debug&&(u.context.level=uu.Debug),document.removeEventListener("readystatechange",t)):document.addEventListener("readystatechange",t)};return t(),this}build(){return this.context.level===void 0&&this.detectLogLevel(),this.factory(this.context)}}function Jm(){return new wv(Av)}const bv=Jm().detectUser().setApp("@nextcloud/vue").build(),m0=ag();var Qm=["input:not([inert]):not([inert] *)","select:not([inert]):not([inert] *)","textarea:not([inert]):not([inert] *)","a[href]:not([inert]):not([inert] *)","area[href]:not([inert]):not([inert] *)","button:not([inert]):not([inert] *)","[tabindex]:not(slot):not([inert]):not([inert] *)","audio[controls]:not([inert]):not([inert] *)","video[controls]:not([inert]):not([inert] *)",'[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)',"details>summary:first-of-type:not([inert]):not([inert] *)","details:not([inert]):not([inert] *)"],c0=Qm.join(","),e3=typeof Element>"u",Ss=e3?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,g0=!e3&&Element.prototype.getRootNode?function(e){var u;return e==null||(u=e.getRootNode)===null||u===void 0?void 0:u.call(e)}:function(e){return e?.ownerDocument},f0=function(e,u){var t;u===void 0&&(u=!0);var s=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"inert"),n=s===""||s==="true",i=n||u&&e&&(typeof e.closest=="function"?e.closest("[inert]"):f0(e.parentNode));return i},Dv=function(e){var u,t=e==null||(u=e.getAttribute)===null||u===void 0?void 0:u.call(e,"contenteditable");return t===""||t==="true"},u3=function(e,u,t){if(f0(e))return[];var s=Array.prototype.slice.apply(e.querySelectorAll(c0));return u&&Ss.call(e,c0)&&s.unshift(e),s=s.filter(t),s},p0=function(e,u,t){for(var s=[],n=Array.from(e);n.length;){var i=n.shift();if(!f0(i,!1))if(i.tagName==="SLOT"){var o=i.assignedElements(),r=o.length?o:i.children,a=p0(r,!0,t);t.flatten?s.push.apply(s,a):s.push({scopeParent:i,candidates:a})}else{var m=Ss.call(i,c0);m&&t.filter(i)&&(u||!e.includes(i))&&s.push(i);var l=i.shadowRoot||typeof t.getShadowRoot=="function"&&t.getShadowRoot(i),g=!f0(l,!1)&&(!t.shadowRootFilter||t.shadowRootFilter(i));if(l&&g){var p=p0(l===!0?i.children:l.children,!0,t);t.flatten?s.push.apply(s,p):s.push({scopeParent:i,candidates:p})}else n.unshift.apply(n,i.children)}}return s},t3=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},vs=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||Dv(e))&&!t3(e)?0:e.tabIndex},Fv=function(e,u){var t=vs(e);return t<0&&u&&!t3(e)?0:t},kv=function(e,u){return e.tabIndex===u.tabIndex?e.documentOrder-u.documentOrder:e.tabIndex-u.tabIndex},s3=function(e){return e.tagName==="INPUT"},Nv=function(e){return s3(e)&&e.type==="hidden"},Sv=function(e){var u=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(t){return t.tagName==="SUMMARY"});return u},_v=function(e,u){for(var t=0;tsummary:first-of-type"),a=r?e.parentElement:e;if(Ss.call(a,"details:not([open]) *"))return!0;if(!t||t==="full"||t==="full-native"||t==="legacy-full"){if(typeof s=="function"){for(var m=e;e;){var l=e.parentElement,g=g0(e);if(l&&!l.shadowRoot&&s(l)===!0)return Yl(e);e.assignedSlot?e=e.assignedSlot:!l&&g!==e.ownerDocument?e=g.host:e=l}e=m}if(Pv(e))return!e.getClientRects().length;if(t!=="legacy-full")return!0}else if(t==="non-zero-area")return Yl(e);return!1},Lv=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var u=e.parentElement;u;){if(u.tagName==="FIELDSET"&&u.disabled){for(var t=0;t=0)},n3=function(e){var u=[],t=[];return e.forEach(function(s,n){var i=!!s.scopeParent,o=i?s.scopeParent:s,r=Fv(o,i),a=i?n3(s.candidates):o;r===0?i?u.push.apply(u,a):u.push(o):t.push({documentOrder:n,tabIndex:r,item:s,isScope:i,content:a})}),t.sort(kv).reduce(function(s,n){return n.isScope?s.push.apply(s,n.content):s.push(n.content),s},[]).concat(u)},Iv=function(e,u){u=u||{};var t;return u.getShadowRoot?t=p0([e],u.includeContainer,{filter:vr.bind(null,u),flatten:!1,getShadowRoot:u.getShadowRoot,shadowRootFilter:jv}):t=u3(e,u.includeContainer,vr.bind(null,u)),n3(t)},Mv=function(e,u){u=u||{};var t;return u.getShadowRoot?t=p0([e],u.includeContainer,{filter:h0.bind(null,u),flatten:!0,getShadowRoot:u.getShadowRoot}):t=u3(e,u.includeContainer,h0.bind(null,u)),t},Vs=function(e,u){if(u=u||{},!e)throw new Error("No node provided");return Ss.call(e,c0)===!1?!1:vr(u,e)},$v=Qm.concat("iframe:not([inert]):not([inert] *)").join(","),Mo=function(e,u){if(u=u||{},!e)throw new Error("No node provided");return Ss.call(e,$v)===!1?!1:h0(u,e)};function Er(e,u){(u==null||u>e.length)&&(u=e.length);for(var t=0,s=Array(u);t=e.length?{done:!0}:{done:!1,value:e[s++]}},e:function(a){throw a},f:n}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,o=!0,r=!1;return{s:function(){t=t.call(e)},n:function(){var a=t.next();return o=a.done,a},e:function(a){r=!0,i=a},f:function(){try{o||t.return==null||t.return()}finally{if(r)throw i}}}}function Vv(e,u,t){return(u=qv(u))in e?Object.defineProperty(e,u,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[u]=t,e}function Wv(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Hv(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Xl(e,u){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);u&&(s=s.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,s)}return t}function Jl(e){for(var u=1;u0?e[e.length-1]:null},activateTrap:function(e,u){var t=kt.getActiveTrap(e);u!==t&&kt.pauseTrap(e);var s=e.indexOf(u);s===-1||e.splice(s,1),e.push(u)},deactivateTrap:function(e,u){var t=e.indexOf(u);t!==-1&&e.splice(t,1),kt.unpauseTrap(e)},pauseTrap:function(e){var u=kt.getActiveTrap(e);u?._setPausedState(!0)},unpauseTrap:function(e){var u=kt.getActiveTrap(e);u&&!u._isManuallyPaused()&&u._setPausedState(!1)}},Yv=function(e){return e.tagName&&e.tagName.toLowerCase()==="input"&&typeof e.select=="function"},Zv=function(e){return e?.key==="Escape"||e?.key==="Esc"||e?.keyCode===27},Rn=function(e){return e?.key==="Tab"||e?.keyCode===9},Xv=function(e){return Rn(e)&&!e.shiftKey},Jv=function(e){return Rn(e)&&e.shiftKey},Ql=function(e){return setTimeout(e,0)},wn=function(e){for(var u=arguments.length,t=new Array(u>1?u-1:0),s=1;s1&&arguments[1]!==void 0?arguments[1]:{},V=T.hasFallback,ue=V===void 0?!1:V,Z=T.params,Q=Z===void 0?[]:Z,te=n[b];if(typeof te=="function"&&(te=te.apply(void 0,Gv(Q))),te===!0&&(te=void 0),!te){if(te===void 0||te===!1)return te;throw new Error("`".concat(b,"` was specified but was not a node, or did not return a node"))}var de=te;if(typeof te=="string"){try{de=t.querySelector(te)}catch(le){throw new Error("`".concat(b,'` appears to be an invalid selector; error="').concat(le.message,'"'))}if(!de&&!ue)throw new Error("`".concat(b,"` as selector refers to no known node"))}return de},l=function(b){var T=b.activeElement;return T?T.shadowRoot&&T.shadowRoot.activeElement!==null?l(T.shadowRoot):T:null},g=function(){var b=m("initialFocus",{hasFallback:!0});if(b===!1)return!1;if(b===void 0||b&&!Mo(b,n.tabbableOptions)){var T=l(t);if(a(T)>=0)b=T;else{var V=i.tabbableGroups[0],ue=V&&V.firstTabbableNode;b=ue||m("fallbackFocus")}}else b===null&&(b=m("fallbackFocus"));if(!b)throw new Error("Your focus-trap needs to have at least one focusable element");return b},p=function(){if(i.containerGroups=i.containers.map(function(b){var T=Iv(b,n.tabbableOptions),V=Mv(b,n.tabbableOptions),ue=T.length>0?T[0]:void 0,Z=T.length>0?T[T.length-1]:void 0,Q=V.find(function(le){return Vs(le)}),te=V.slice().reverse().find(function(le){return Vs(le)}),de=!!T.find(function(le){return vs(le)>0});return{container:b,tabbableNodes:T,focusableNodes:V,posTabIndexesFound:de,firstTabbableNode:ue,lastTabbableNode:Z,firstDomTabbableNode:Q,lastDomTabbableNode:te,nextTabbableNode:function(le){var ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,xe=T.indexOf(le);return xe<0?ie?V.slice(V.indexOf(le)+1).find(function(He){return Vs(He)}):V.slice(0,V.indexOf(le)).reverse().find(function(He){return Vs(He)}):T[xe+(ie?1:-1)]}}}),i.tabbableGroups=i.containerGroups.filter(function(b){return b.tabbableNodes.length>0}),i.tabbableGroups.length<=0&&!m("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(i.containerGroups.find(function(b){return b.posTabIndexesFound})&&i.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},h=function(b){if(b!==!1&&b!==l(document)){if(!b||!b.focus){h(g());return}b.focus({preventScroll:!!n.preventScroll}),i.mostRecentlyFocusedNode=b,Yv(b)&&b.select()}},y=function(b){var T=m("setReturnFocus",{params:[b]});return T||(T===!1?!1:b)},E=function(b){var T=b.target,V=b.event,ue=b.isBackward,Z=ue===void 0?!1:ue;T=T||Fi(V),p();var Q=null;if(i.tabbableGroups.length>0){var te=a(T,V),de=te>=0?i.containerGroups[te]:void 0;if(te<0)Z?Q=i.tabbableGroups[i.tabbableGroups.length-1].lastTabbableNode:Q=i.tabbableGroups[0].firstTabbableNode;else if(Z){var le=i.tabbableGroups.findIndex(function(pe){var $e=pe.firstTabbableNode;return T===$e});if(le<0&&(de.container===T||Mo(T,n.tabbableOptions)&&!Vs(T,n.tabbableOptions)&&!de.nextTabbableNode(T,!1))&&(le=te),le>=0){var ie=le===0?i.tabbableGroups.length-1:le-1,xe=i.tabbableGroups[ie];Q=vs(T)>=0?xe.lastTabbableNode:xe.lastDomTabbableNode}else Rn(V)||(Q=de.nextTabbableNode(T,!1))}else{var He=i.tabbableGroups.findIndex(function(pe){var $e=pe.lastTabbableNode;return T===$e});if(He<0&&(de.container===T||Mo(T,n.tabbableOptions)&&!Vs(T,n.tabbableOptions)&&!de.nextTabbableNode(T))&&(He=te),He>=0){var Se=He===i.tabbableGroups.length-1?0:He+1,Pe=i.tabbableGroups[Se];Q=vs(T)>=0?Pe.firstTabbableNode:Pe.firstDomTabbableNode}else Rn(V)||(Q=de.nextTabbableNode(T))}}else Q=m("fallbackFocus");return Q},F=function(b){var T=Fi(b);if(!(a(T,b)>=0)){if(wn(n.clickOutsideDeactivates,b)){o.deactivate({returnFocus:n.returnFocusOnDeactivate});return}wn(n.allowOutsideClick,b)||b.preventDefault()}},B=function(b){var T=Fi(b),V=a(T,b)>=0;if(V||T instanceof Document)V&&(i.mostRecentlyFocusedNode=T);else{b.stopImmediatePropagation();var ue,Z=!0;if(i.mostRecentlyFocusedNode)if(vs(i.mostRecentlyFocusedNode)>0){var Q=a(i.mostRecentlyFocusedNode),te=i.containerGroups[Q].tabbableNodes;if(te.length>0){var de=te.findIndex(function(le){return le===i.mostRecentlyFocusedNode});de>=0&&(n.isKeyForward(i.recentNavEvent)?de+1=0&&(ue=te[de-1],Z=!1))}}else i.containerGroups.some(function(le){return le.tabbableNodes.some(function(ie){return vs(ie)>0})})||(Z=!1);else Z=!1;Z&&(ue=E({target:i.mostRecentlyFocusedNode,isBackward:n.isKeyBackward(i.recentNavEvent)})),h(ue||i.mostRecentlyFocusedNode||g())}i.recentNavEvent=void 0},A=function(b){var T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;i.recentNavEvent=b;var V=E({event:b,isBackward:T});V&&(Rn(b)&&b.preventDefault(),h(V))},O=function(b){(n.isKeyForward(b)||n.isKeyBackward(b))&&A(b,n.isKeyBackward(b))},N=function(b){Zv(b)&&wn(n.escapeDeactivates,b)!==!1&&(b.preventDefault(),o.deactivate())},K=function(b){var T=Fi(b);a(T,b)>=0||wn(n.clickOutsideDeactivates,b)||wn(n.allowOutsideClick,b)||(b.preventDefault(),b.stopImmediatePropagation())},I=function(){if(i.active){kt.activateTrap(s,o);var b;return n.delayInitialFocus?b=new Promise(function(T){i.delayInitialFocusTimer=Ql(function(){h(g()),T()})}):h(g()),t.addEventListener("focusin",B,!0),t.addEventListener("mousedown",F,{capture:!0,passive:!1}),t.addEventListener("touchstart",F,{capture:!0,passive:!1}),t.addEventListener("click",K,{capture:!0,passive:!1}),t.addEventListener("keydown",O,{capture:!0,passive:!1}),t.addEventListener("keydown",N),b}},Y=function(b){i.active&&!i.paused&&o._setSubtreeIsolation(!1),i.adjacentElements.clear(),i.alreadySilent.clear();var T=new Set,V=new Set,ue=Zl(b),Z;try{for(ue.s();!(Z=ue.n()).done;){var Q=Z.value;T.add(Q);for(var te=typeof ShadowRoot<"u"&&Q.getRootNode()instanceof ShadowRoot,de=Q;de;){T.add(de);var le=de.parentElement,ie=[];le?ie=le.children:!le&&te&&(ie=de.getRootNode().children,le=de.getRootNode().host,te=typeof ShadowRoot<"u"&&le.getRootNode()instanceof ShadowRoot);var xe=Zl(ie),He;try{for(xe.s();!(He=xe.n()).done;){var Se=He.value;V.add(Se)}}catch(Pe){xe.e(Pe)}finally{xe.f()}de=le}}}catch(Pe){ue.e(Pe)}finally{ue.f()}T.forEach(function(Pe){V.delete(Pe)}),i.adjacentElements=V},se=function(){if(i.active)return t.removeEventListener("focusin",B,!0),t.removeEventListener("mousedown",F,!0),t.removeEventListener("touchstart",F,!0),t.removeEventListener("click",K,!0),t.removeEventListener("keydown",O,!0),t.removeEventListener("keydown",N),o},G=function(b){var T=i.mostRecentlyFocusedNode;if(T){var V=b.some(function(Z){var Q=Array.from(Z.removedNodes);return Q.some(function(te){return te===T||typeof te.contains=="function"&&te.contains(T)})});if(V&&i.containers.some(function(Z){return Z?.isConnected})){p();var ue=g();h(ue)}}},M=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(G):void 0,ne=function(){M&&(M.disconnect(),i.active&&!i.paused&&i.containers.map(function(b){M.observe(b,{subtree:!0,childList:!0})}))};return o={get active(){return i.active},get paused(){return i.paused},activate:function(b){if(i.active)return this;var T=r(b,"onActivate"),V=r(b,"onPostActivate"),ue=r(b,"checkCanFocusTrap"),Z=kt.getActiveTrap(s),Q=!1;if(Z&&!Z.paused){var te;(te=Z._setSubtreeIsolation)===null||te===void 0||te.call(Z,!1),Q=!0}try{ue||p(),i.active=!0,i.paused=!1,i.nodeFocusedBeforeActivation=l(t),T?.({trap:o});var de=function(){ue&&p();var ie=function(){o._setSubtreeIsolation(!0),ne(),V?.({trap:o})},xe=I();xe?xe.then(ie):ie()};if(ue)return ue(i.containers.concat()).then(de,de),this;de()}catch(ie){if(Z===kt.getActiveTrap(s)&&Q){var le;(le=Z._setSubtreeIsolation)===null||le===void 0||le.call(Z,!0)}throw ie}return this},deactivate:function(b){if(!i.active)return this;var T=Jl({onDeactivate:n.onDeactivate,onPostDeactivate:n.onPostDeactivate,checkCanReturnFocus:n.checkCanReturnFocus},b);clearTimeout(i.delayInitialFocusTimer),i.delayInitialFocusTimer=void 0,i.paused||o._setSubtreeIsolation(!1),i.alreadySilent.clear(),se(),i.active=!1,i.paused=!1,ne(),kt.deactivateTrap(s,o);var V=r(T,"onDeactivate"),ue=r(T,"onPostDeactivate"),Z=r(T,"checkCanReturnFocus"),Q=r(T,"delayReturnFocus"),te=r(T,"returnFocus","returnFocusOnDeactivate");V?.({trap:o});var de=function(){te&&h(y(i.nodeFocusedBeforeActivation)),ue?.({trap:o})},le=function(){Q&&te?Ql(de):de()};return te&&Z?(Z(y(i.nodeFocusedBeforeActivation)).then(le,le),this):(le(),this)},pause:function(b){return i.active?(i.manuallyPaused=!0,this._setPausedState(!0,b)):this},unpause:function(b){return i.active?(i.manuallyPaused=!1,s[s.length-1]!==this?this:this._setPausedState(!1,b)):this},updateContainerElements:function(b){var T=[].concat(b).filter(Boolean);return i.containers=T.map(function(V){return typeof V=="string"?t.querySelector(V):V}),n.isolateSubtrees&&Y(i.containers),i.active&&(p(),i.paused||o._setSubtreeIsolation(!0)),ne(),this}},Object.defineProperties(o,{_isManuallyPaused:{value:function(){return i.manuallyPaused}},_setPausedState:{value:function(b,T){if(i.paused===b)return this;if(i.paused=b,b){var V=r(T,"onPause"),ue=r(T,"onPostPause");V?.({trap:o}),se(),o._setSubtreeIsolation(!1),ne(),ue?.({trap:o})}else{var Z=r(T,"onUnpause"),Q=r(T,"onPostUnpause");Z?.({trap:o});var te=function(){p();var de=function(){o._setSubtreeIsolation(!0),ne(),Q?.({trap:o})},le=I();le?le.then(de):de()};te()}return this}},_setSubtreeIsolation:{value:function(b){n.isolateSubtrees&&i.adjacentElements.forEach(function(T){var V;b?n.isolateSubtrees==="aria-hidden"?((T.ariaHidden==="true"||((V=T.getAttribute("aria-hidden"))===null||V===void 0?void 0:V.toLowerCase())==="true")&&i.alreadySilent.add(T),T.setAttribute("aria-hidden","true")):((T.inert||T.hasAttribute("inert"))&&i.alreadySilent.add(T),T.setAttribute("inert",!0)):i.alreadySilent.has(T)||(n.isolateSubtrees==="aria-hidden"?T.removeAttribute("aria-hidden"):T.removeAttribute("inert"))})}}}),o.updateContainerElements(e),o};function Jn(){return window._nc_focus_trap??=[],window._nc_focus_trap}function eE(){let e=[];return{pause(){e=[...Jn()];for(const u of e)u.pause()},unpause(){if(e.length===Jn().length)for(const u of e)u.unpause();e=[]}}}function uE(e,u={}){const t=eE();St(e,()=>{Su(u.disabled)||(Su(e)?t.pause():t.unpause())}),an(()=>{t.unpause()})}window._nc_vue_element_id=window._nc_vue_element_id??0;function v0(){return`nc-vue-${window._nc_vue_element_id++}`}const tE=["top","right","bottom","left"],e4=["start","end"],u4=tE.reduce((e,u)=>e.concat(u,u+"-"+e4[0],u+"-"+e4[1]),[]),ts=Math.min,Ot=Math.max,E0=Math.round,ki=Math.floor,Tt=e=>({x:e,y:e}),sE={left:"right",right:"left",bottom:"top",top:"bottom"};function r3(e,u,t){return Ot(e,ts(u,t))}function Lt(e,u){return typeof e=="function"?e(u):e}function Et(e){return e.split("-")[0]}function Ju(e){return e.split("-")[1]}function Qr(e){return e==="x"?"y":"x"}function ea(e){return e==="y"?"height":"width"}function pt(e){const u=e[0];return u==="t"||u==="b"?"y":"x"}function ua(e){return Qr(pt(e))}function a3(e,u,t){t===void 0&&(t=!1);const s=Ju(e),n=ua(e),i=ea(n);let o=n==="x"?s===(t?"end":"start")?"right":"left":s==="start"?"bottom":"top";return u.reference[i]>u.floating[i]&&(o=B0(o)),[o,B0(o)]}function nE(e){const u=B0(e);return[C0(e),u,C0(u)]}function C0(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const t4=["left","right"],s4=["right","left"],iE=["top","bottom"],oE=["bottom","top"];function rE(e,u,t){switch(e){case"top":case"bottom":return t?u?s4:t4:u?t4:s4;case"left":case"right":return u?iE:oE;default:return[]}}function aE(e,u,t,s){const n=Ju(e);let i=rE(Et(e),t==="start",s);return n&&(i=i.map(o=>o+"-"+n),u&&(i=i.concat(i.map(C0)))),i}function B0(e){const u=Et(e);return sE[u]+e.slice(u.length)}function lE(e){var u,t,s,n;return{top:(u=e.top)!=null?u:0,right:(t=e.right)!=null?t:0,bottom:(s=e.bottom)!=null?s:0,left:(n=e.left)!=null?n:0}}function l3(e){return typeof e!="number"?lE(e):{top:e,right:e,bottom:e,left:e}}function Fs(e){const{x:u,y:t,width:s,height:n}=e;return{width:s,height:n,top:t,left:u,right:u+s,bottom:t+n,x:u,y:t}}function n4(e,u,t){let{reference:s,floating:n}=e;const i=pt(u),o=ua(u),r=ea(o),a=Et(u),m=i==="y",l=s.x+s.width/2-n.width/2,g=s.y+s.height/2-n.height/2,p=s[r]/2-n[r]/2;let h;switch(a){case"top":h={x:l,y:s.y-n.height};break;case"bottom":h={x:l,y:s.y+s.height};break;case"right":h={x:s.x+s.width,y:g};break;case"left":h={x:s.x-n.width,y:g};break;default:h={x:s.x,y:s.y}}const y=Ju(u);return y&&(h[o]+=p*(y==="end"?1:-1)*(t&&m?-1:1)),h}async function dE(e,u){var t;u===void 0&&(u={});const{x:s,y:n,platform:i,rects:o,elements:r,strategy:a}=e,{boundary:m="clippingAncestors",rootBoundary:l="viewport",elementContext:g="floating",altBoundary:p=!1,padding:h=0}=Lt(u,e),y=l3(h),E=r[p?g==="floating"?"reference":"floating":g],F=Fs(await i.getClippingRect({element:(t=await(i.isElement==null?void 0:i.isElement(E)))==null||t?E:E.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(r.floating)),boundary:m,rootBoundary:l,strategy:a})),B=g==="floating"?{x:s,y:n,width:o.floating.width,height:o.floating.height}:o.reference,A=await(i.getOffsetParent==null?void 0:i.getOffsetParent(r.floating)),O=await(i.isElement==null?void 0:i.isElement(A))&&await(i.getScale==null?void 0:i.getScale(A))||{x:1,y:1},N=Fs(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:r,rect:B,offsetParent:A,strategy:a}):B);return{top:(F.top-N.top+y.top)/O.y,bottom:(N.bottom-F.bottom+y.bottom)/O.y,left:(F.left-N.left+y.left)/O.x,right:(N.right-F.right+y.right)/O.x}}const mE=50,d3=async(e,u,t)=>{const{placement:s="bottom",strategy:n="absolute",middleware:i=[],platform:o}=t,r=o.detectOverflow?o:{...o,detectOverflow:dE},a=await(o.isRTL==null?void 0:o.isRTL(u));let m=await o.getElementRects({reference:e,floating:u,strategy:n}),{x:l,y:g}=n4(m,s,a),p=s,h=0;const y={};for(let E=0;E({name:"arrow",options:e,async fn(u){const{x:t,y:s,placement:n,rects:i,platform:o,elements:r,middlewareData:a}=u,{element:m,padding:l=0}=Lt(e,u)||{};if(m==null)return{};const g=l3(l),p={x:t,y:s},h=ua(n),y=ea(h),E=await o.getDimensions(m),F=h==="y",B=F?"top":"left",A=F?"bottom":"right",O=F?"clientHeight":"clientWidth",N=i.reference[y]+i.reference[h]-p[h]-i.floating[y],K=p[h]-i.reference[h],I=await(o.getOffsetParent==null?void 0:o.getOffsetParent(m));let Y=I?I[O]:0;(!Y||!await(o.isElement==null?void 0:o.isElement(I)))&&(Y=r.floating[O]||i.floating[y]);const se=N/2-K/2,G=Y/2-E[y]/2-1,M=ts(g[B],G),ne=ts(g[A],G),b=Y-E[y]-ne,T=Y/2-E[y]/2+se,V=r3(M,T,b),ue=!a.arrow&&Ju(n)!=null&&T!==V&&i.reference[y]/2-(TJu(s)===e),...t.filter(s=>Ju(s)!==e)]:t.filter(s=>Et(s)===s)).filter(s=>e?Ju(s)===e||(u?C0(s)!==s:!1):!0)}const fE=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(u){var t,s,n;const{rects:i,middlewareData:o,placement:r,platform:a,elements:m}=u,{crossAxis:l=!1,alignment:g,allowedPlacements:p=u4,autoAlignment:h=!0,...y}=Lt(e,u),E=g!==void 0||p===u4?gE(g||null,h,p):p,F=((t=o.autoPlacement)==null?void 0:t.index)||0,B=E[F];if(B==null)return{};if(r!==B)return{reset:{placement:E[0]}};const A=await a.detectOverflow(u,y),O=a3(B,i,await(a.isRTL==null?void 0:a.isRTL(m.floating))),N=[A[Et(B)],A[O[0]],A[O[1]]],K=[...((s=o.autoPlacement)==null?void 0:s.overflows)||[],{placement:B,overflows:N}],I=E[F+1];if(I)return{data:{index:F+1,overflows:K},reset:{placement:I}};const Y=K.map(G=>{const M=Ju(G.placement);return[G.placement,M&&l?G.overflows.slice(0,2).reduce((ne,b)=>ne+b,0):G.overflows[0],G.overflows]}).sort((G,M)=>G[1]-M[1]),se=((n=Y.filter(G=>G[2].slice(0,Ju(G[0])?2:3).every(M=>M<=0))[0])==null?void 0:n[0])||Y[0][0];return se!==r?{data:{index:F+1,overflows:K},reset:{placement:se}}:{}}}},m3=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(u){var t,s;const{placement:n,middlewareData:i,rects:o,initialPlacement:r,platform:a,elements:m}=u,{mainAxis:l=!0,crossAxis:g=!0,fallbackPlacements:p,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:y="none",flipAlignment:E=!0,...F}=Lt(e,u);if((t=i.arrow)!=null&&t.alignmentOffset)return{};const B=Et(n),A=pt(r),O=Et(r)===r,N=await(a.isRTL==null?void 0:a.isRTL(m.floating)),K=p||(O||!E?[B0(r)]:nE(r)),I=y!=="none";!p&&I&&K.push(...aE(r,E,y,N));const Y=[r,...K],se=await a.detectOverflow(u,F),G=[];let M=((s=i.flip)==null?void 0:s.overflows)||[];if(l&&G.push(se[B]),g){const V=a3(n,o,N);G.push(se[V[0]],se[V[1]])}if(M=[...M,{placement:n,overflows:G}],!G.every(V=>V<=0)){var ne,b;const V=(((ne=i.flip)==null?void 0:ne.index)||0)+1,ue=Y[V];if(ue&&(!(g==="alignment"&&A!==pt(ue))||M.every(Q=>pt(Q.placement)===A?Q.overflows[0]>0:!0)))return{data:{index:V,overflows:M},reset:{placement:ue}};let Z=(b=M.filter(Q=>Q.overflows[0]<=0).sort((Q,te)=>Q.overflows[1]-te.overflows[1])[0])==null?void 0:b.placement;if(!Z)switch(h){case"bestFit":{var T;const Q=(T=M.filter(te=>{if(I){const de=pt(te.placement);return de===A||de==="y"}return!0}).map(te=>[te.placement,te.overflows.filter(de=>de>0).reduce((de,le)=>de+le,0)]).sort((te,de)=>te[1]-de[1])[0])==null?void 0:T[0];Q&&(Z=Q);break}case"initialPlacement":Z=r;break}if(n!==Z)return{reset:{placement:Z}}}return{}}}},c3=new Set(["left","top"]);async function pE(e,u){const{placement:t,platform:s,elements:n}=e,i=await(s.isRTL==null?void 0:s.isRTL(n.floating)),o=Et(t),r=Ju(t),a=pt(t)==="y",m=c3.has(o)?-1:1,l=i&&a?-1:1,g=Lt(u,e);let{mainAxis:p,crossAxis:h,alignmentAxis:y}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return r&&typeof y=="number"&&(h=r==="end"?y*-1:y),a?{x:h*l,y:p*m}:{x:p*m,y:h*l}}const g3=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(u){var t,s;const{x:n,y:i,placement:o,middlewareData:r}=u,a=await pE(u,e);return o===((t=r.offset)==null?void 0:t.placement)&&(s=r.arrow)!=null&&s.alignmentOffset?{}:{x:n+a.x,y:i+a.y,data:{...a,placement:o}}}}},f3=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(u){const{x:t,y:s,placement:n,platform:i}=u,{mainAxis:o=!0,crossAxis:r=!1,limiter:a={fn:A=>{let{x:O,y:N}=A;return{x:O,y:N}}},...m}=Lt(e,u),l={x:t,y:s},g=await i.detectOverflow(u,m),p=pt(n),h=Qr(p);let y=l[h],E=l[p];const F=(A,O)=>r3(O+g[A==="y"?"top":"left"],O,O-g[A==="y"?"bottom":"right"]);o&&(y=F(h,y)),r&&(E=F(p,E));const B=a.fn({...u,[h]:y,[p]:E});return{...B,data:{x:B.x-t,y:B.y-s,enabled:{[h]:o,[p]:r}}}}}},hE=function(e){return e===void 0&&(e={}),{options:e,fn(u){var t,s;const{x:n,y:i,placement:o,rects:r,middlewareData:a}=u,{offset:m=0,mainAxis:l=!0,crossAxis:g=!0}=Lt(e,u),p={x:n,y:i},h=pt(o),y=Qr(h);let E=p[y],F=p[h];const B=Lt(m,u),A=typeof B=="number"?{mainAxis:B,crossAxis:0}:{mainAxis:(t=B.mainAxis)!=null?t:0,crossAxis:(s=B.crossAxis)!=null?s:0};if(l){const K=y==="y"?"height":"width",I=r.reference[y]-r.floating[K]+A.mainAxis,Y=r.reference[y]+r.reference[K]-A.mainAxis;EY&&(E=Y)}if(g){var O,N;const K=y==="y"?"width":"height",I=c3.has(Et(o)),Y=r.reference[h]-r.floating[K]+(I&&((O=a.offset)==null?void 0:O[h])||0)+(I?0:A.crossAxis),se=r.reference[h]+r.reference[K]+(I?0:((N=a.offset)==null?void 0:N[h])||0)-(I?A.crossAxis:0);Fse&&(F=se)}return{[y]:E,[h]:F}}}},vE=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(u){const{placement:t,rects:s,platform:n,elements:i}=u,{apply:o=()=>{},...r}=Lt(e,u),a=await n.detectOverflow(u,r),m=Et(t),l=Ju(t),g=pt(t)==="y",{width:p,height:h}=s.floating;let y,E;m==="top"||m==="bottom"?(y=m,E=l===(await(n.isRTL==null?void 0:n.isRTL(i.floating))?"start":"end")?"left":"right"):(E=m,y=l==="end"?"top":"bottom");const F=h-a.top-a.bottom,B=p-a.left-a.right,A=ts(h-a[y],F),O=ts(p-a[E],B),N=u.middlewareData.shift,K=!N;let I=A,Y=O;N!=null&&N.enabled.x&&(Y=B),N!=null&&N.enabled.y&&(I=F),K&&!l&&(g?Y=p-2*Ot(a.left,a.right):I=h-2*Ot(a.top,a.bottom)),await o({...u,availableWidth:Y,availableHeight:I});const se=await n.getDimensions(i.floating);return p!==se.width||h!==se.height?{reset:{rects:!0}}:{}}}};function Hu(e){var u;return((u=e.ownerDocument)==null?void 0:u.defaultView)||window}function ht(e){return Hu(e).getComputedStyle(e)}const i4=Math.min,Ln=Math.max,y0=Math.round;function p3(e){const u=ht(e);let t=parseFloat(u.width),s=parseFloat(u.height);const n=e.offsetWidth,i=e.offsetHeight,o=y0(t)!==n||y0(s)!==i;return o&&(t=n,s=i),{width:t,height:s,fallback:o}}function ss(e){return v3(e)?(e.nodeName||"").toLowerCase():""}let Ni;function h3(){if(Ni)return Ni;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(Ni=e.brands.map((u=>u.brand+"/"+u.version)).join(" "),Ni):navigator.userAgent}function vt(e){return e instanceof Hu(e).HTMLElement}function Jt(e){return e instanceof Hu(e).Element}function v3(e){return e instanceof Hu(e).Node}function o4(e){return typeof ShadowRoot>"u"?!1:e instanceof Hu(e).ShadowRoot||e instanceof ShadowRoot}function G0(e){const{overflow:u,overflowX:t,overflowY:s,display:n}=ht(e);return/auto|scroll|overlay|hidden|clip/.test(u+s+t)&&!["inline","contents"].includes(n)}function EE(e){return["table","td","th"].includes(ss(e))}function Cr(e){const u=/firefox/i.test(h3()),t=ht(e),s=t.backdropFilter||t.WebkitBackdropFilter;return t.transform!=="none"||t.perspective!=="none"||!!s&&s!=="none"||u&&t.willChange==="filter"||u&&!!t.filter&&t.filter!=="none"||["transform","perspective"].some((n=>t.willChange.includes(n)))||["paint","layout","strict","content"].some((n=>{const i=t.contain;return i!=null&&i.includes(n)}))}function E3(){return!/^((?!chrome|android).)*safari/i.test(h3())}function ta(e){return["html","body","#document"].includes(ss(e))}function C3(e){return Jt(e)?e:e.contextElement}const B3={x:1,y:1};function nn(e){const u=C3(e);if(!vt(u))return B3;const t=u.getBoundingClientRect(),{width:s,height:n,fallback:i}=p3(u);let o=(i?y0(t.width):t.width)/s,r=(i?y0(t.height):t.height)/n;return o&&Number.isFinite(o)||(o=1),r&&Number.isFinite(r)||(r=1),{x:o,y:r}}function Qn(e,u,t,s){var n,i;u===void 0&&(u=!1),t===void 0&&(t=!1);const o=e.getBoundingClientRect(),r=C3(e);let a=B3;u&&(s?Jt(s)&&(a=nn(s)):a=nn(e));const m=r?Hu(r):window,l=!E3()&&t;let g=(o.left+(l&&((n=m.visualViewport)==null?void 0:n.offsetLeft)||0))/a.x,p=(o.top+(l&&((i=m.visualViewport)==null?void 0:i.offsetTop)||0))/a.y,h=o.width/a.x,y=o.height/a.y;if(r){const E=Hu(r),F=s&&Jt(s)?Hu(s):s;let B=E.frameElement;for(;B&&s&&F!==E;){const A=nn(B),O=B.getBoundingClientRect(),N=getComputedStyle(B);O.x+=(B.clientLeft+parseFloat(N.paddingLeft))*A.x,O.y+=(B.clientTop+parseFloat(N.paddingTop))*A.y,g*=A.x,p*=A.y,h*=A.x,y*=A.y,g+=O.x,p+=O.y,B=Hu(B).frameElement}}return{width:h,height:y,top:p,right:g+h,bottom:p+y,left:g,x:g,y:p}}function Qt(e){return((v3(e)?e.ownerDocument:e.document)||window.document).documentElement}function K0(e){return Jt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function y3(e){return Qn(Qt(e)).left+K0(e).scrollLeft}function ei(e){if(ss(e)==="html")return e;const u=e.assignedSlot||e.parentNode||o4(e)&&e.host||Qt(e);return o4(u)?u.host:u}function x3(e){const u=ei(e);return ta(u)?u.ownerDocument.body:vt(u)&&G0(u)?u:x3(u)}function x0(e,u){var t;u===void 0&&(u=[]);const s=x3(e),n=s===((t=e.ownerDocument)==null?void 0:t.body),i=Hu(s);return n?u.concat(i,i.visualViewport||[],G0(s)?s:[]):u.concat(s,x0(s))}function r4(e,u,t){return u==="viewport"?Fs((function(s,n){const i=Hu(s),o=Qt(s),r=i.visualViewport;let a=o.clientWidth,m=o.clientHeight,l=0,g=0;if(r){a=r.width,m=r.height;const p=E3();(p||!p&&n==="fixed")&&(l=r.offsetLeft,g=r.offsetTop)}return{width:a,height:m,x:l,y:g}})(e,t)):Jt(u)?Fs((function(s,n){const i=Qn(s,!0,n==="fixed"),o=i.top+s.clientTop,r=i.left+s.clientLeft,a=vt(s)?nn(s):{x:1,y:1};return{width:s.clientWidth*a.x,height:s.clientHeight*a.y,x:r*a.x,y:o*a.y}})(u,t)):Fs((function(s){const n=Qt(s),i=K0(s),o=s.ownerDocument.body,r=Ln(n.scrollWidth,n.clientWidth,o.scrollWidth,o.clientWidth),a=Ln(n.scrollHeight,n.clientHeight,o.scrollHeight,o.clientHeight);let m=-i.scrollLeft+y3(s);const l=-i.scrollTop;return ht(o).direction==="rtl"&&(m+=Ln(n.clientWidth,o.clientWidth)-r),{width:r,height:a,x:m,y:l}})(Qt(e)))}function a4(e){return vt(e)&&ht(e).position!=="fixed"?e.offsetParent:null}function l4(e){const u=Hu(e);let t=a4(e);for(;t&&EE(t)&&ht(t).position==="static";)t=a4(t);return t&&(ss(t)==="html"||ss(t)==="body"&&ht(t).position==="static"&&!Cr(t))?u:t||(function(s){let n=ei(s);for(;vt(n)&&!ta(n);){if(Cr(n))return n;n=ei(n)}return null})(e)||u}function CE(e,u,t){const s=vt(u),n=Qt(u),i=Qn(e,!0,t==="fixed",u);let o={scrollLeft:0,scrollTop:0};const r={x:0,y:0};if(s||!s&&t!=="fixed")if((ss(u)!=="body"||G0(n))&&(o=K0(u)),vt(u)){const a=Qn(u,!0);r.x=a.x+u.clientLeft,r.y=a.y+u.clientTop}else n&&(r.x=y3(n));return{x:i.left+o.scrollLeft-r.x,y:i.top+o.scrollTop-r.y,width:i.width,height:i.height}}const BE={getClippingRect:function(e){let{element:u,boundary:t,rootBoundary:s,strategy:n}=e;const i=t==="clippingAncestors"?(function(m,l){const g=l.get(m);if(g)return g;let p=x0(m).filter((F=>Jt(F)&&ss(F)!=="body")),h=null;const y=ht(m).position==="fixed";let E=y?ei(m):m;for(;Jt(E)&&!ta(E);){const F=ht(E),B=Cr(E);(y?B||h:B||F.position!=="static"||!h||!["absolute","fixed"].includes(h.position))?h=F:p=p.filter((A=>A!==E)),E=ei(E)}return l.set(m,p),p})(u,this._c):[].concat(t),o=[...i,s],r=o[0],a=o.reduce(((m,l)=>{const g=r4(u,l,n);return m.top=Ln(g.top,m.top),m.right=i4(g.right,m.right),m.bottom=i4(g.bottom,m.bottom),m.left=Ln(g.left,m.left),m}),r4(u,r,n));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{rect:u,offsetParent:t,strategy:s}=e;const n=vt(t),i=Qt(t);if(t===i)return u;let o={scrollLeft:0,scrollTop:0},r={x:1,y:1};const a={x:0,y:0};if((n||!n&&s!=="fixed")&&((ss(t)!=="body"||G0(i))&&(o=K0(t)),vt(t))){const m=Qn(t);r=nn(t),a.x=m.x+t.clientLeft,a.y=m.y+t.clientTop}return{width:u.width*r.x,height:u.height*r.y,x:u.x*r.x-o.scrollLeft*r.x+a.x,y:u.y*r.y-o.scrollTop*r.y+a.y}},isElement:Jt,getDimensions:function(e){return vt(e)?p3(e):e.getBoundingClientRect()},getOffsetParent:l4,getDocumentElement:Qt,getScale:nn,async getElementRects(e){let{reference:u,floating:t,strategy:s}=e;const n=this.getOffsetParent||l4,i=this.getDimensions;return{reference:CE(u,await n(t),s),floating:{x:0,y:0,...await i(t)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>ht(e).direction==="rtl"},yE=(e,u,t)=>{const s=new Map,n={platform:BE,...t},i={...n.platform,_c:s};return d3(e,u,{...n,platform:i})},es={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function xE(e,u){let t=es.themes[e]||{},s;do s=t[u],typeof s>"u"?t.$extend?t=es.themes[t.$extend]||{}:(t=null,s=es[u]):t=null;while(t);return s}function AE(e){const u=[e];let t=es.themes[e]||{};do t.$extend&&!t.$resetCss?(u.push(t.$extend),t=es.themes[t.$extend]||{}):t=null;while(t);return u.map(s=>`v-popper--theme-${s}`)}function d4(e){const u=[e];let t=es.themes[e]||{};do t.$extend?(u.push(t.$extend),t=es.themes[t.$extend]||{}):t=null;while(t);return u}let ui=!1;if(typeof window<"u"){ui=!1;try{const e=Object.defineProperty({},"passive",{get(){ui=!0}});window.addEventListener("test",null,e)}catch{}}let A3=!1;typeof window<"u"&&typeof navigator<"u"&&(A3=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const wE=["auto","top","bottom","left","right"].reduce((e,u)=>e.concat([u,`${u}-start`,`${u}-end`]),[]),m4={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},c4={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function g4(e,u){const t=e.indexOf(u);t!==-1&&e.splice(t,1)}function $o(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const Zu=[];let ms=null;const f4={};function p4(e){let u=f4[e];return u||(u=f4[e]=[]),u}let Br=function(){};typeof window<"u"&&(Br=window.Element);function we(e){return function(u){return xE(u.theme,e)}}const Uo="__floating-vue__popper",w3=()=>yt({name:"VPopper",provide(){return{[Uo]:{parentPopper:this}}},inject:{[Uo]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:we("disabled")},positioningDisabled:{type:Boolean,default:we("positioningDisabled")},placement:{type:String,default:we("placement"),validator:e=>wE.includes(e)},delay:{type:[String,Number,Object],default:we("delay")},distance:{type:[Number,String],default:we("distance")},skidding:{type:[Number,String],default:we("skidding")},triggers:{type:Array,default:we("triggers")},showTriggers:{type:[Array,Function],default:we("showTriggers")},hideTriggers:{type:[Array,Function],default:we("hideTriggers")},popperTriggers:{type:Array,default:we("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:we("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:we("popperHideTriggers")},container:{type:[String,Object,Br,Boolean],default:we("container")},boundary:{type:[String,Br],default:we("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:we("strategy")},autoHide:{type:[Boolean,Function],default:we("autoHide")},handleResize:{type:Boolean,default:we("handleResize")},instantMove:{type:Boolean,default:we("instantMove")},eagerMount:{type:Boolean,default:we("eagerMount")},popperClass:{type:[String,Array,Object],default:we("popperClass")},computeTransformOrigin:{type:Boolean,default:we("computeTransformOrigin")},autoMinSize:{type:Boolean,default:we("autoMinSize")},autoSize:{type:[Boolean,String],default:we("autoSize")},autoMaxSize:{type:Boolean,default:we("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:we("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:we("preventOverflow")},overflowPadding:{type:[Number,String],default:we("overflowPadding")},arrowPadding:{type:[Number,String],default:we("arrowPadding")},arrowOverflow:{type:Boolean,default:we("arrowOverflow")},flip:{type:Boolean,default:we("flip")},shift:{type:Boolean,default:we("shift")},shiftCrossAxis:{type:Boolean,default:we("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:we("noAutoFocus")},disposeTimeout:{type:Number,default:we("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[Uo])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,u;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((u=this.popperShowTriggers)==null?void 0:u.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,u)=>(e[u]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:u=!1,force:t=!1}={}){var s,n;(s=this.parentPopper)!=null&&s.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(t||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,u),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:u=!1}={}){var t;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:u}),this.parentPopper.lockedChild=null)},1e3));return}((t=this.parentPopper)==null?void 0:t.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,u),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(u=>u.nodeType===u.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(g3({mainAxis:this.distance,crossAxis:this.skidding}));const u=this.placement.startsWith("auto");if(u?e.middleware.push(fE({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(f3({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!u&&this.flip&&e.middleware.push(m3({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(cE({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:s,rects:n,middlewareData:i})=>{let o;const{centerOffset:r}=i.arrow;return s.startsWith("top")||s.startsWith("bottom")?o=Math.abs(r)>n.reference.width/2:o=Math.abs(r)>n.reference.height/2,{data:{overflow:o}}}}),this.autoMinSize||this.autoSize){const s=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:i,middlewareData:o})=>{var r;if((r=o.autoSize)!=null&&r.skip)return{};let a,m;return i.startsWith("top")||i.startsWith("bottom")?a=n.reference.width:m=n.reference.height,this.$_innerNode.style[s==="min"?"minWidth":s==="max"?"maxWidth":"width"]=a!=null?`${a}px`:null,this.$_innerNode.style[s==="min"?"minHeight":s==="max"?"maxHeight":"height"]=m!=null?`${m}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(vE({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:s,availableHeight:n})=>{this.$_innerNode.style.maxWidth=s!=null?`${s}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const t=await yE(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:t.x,y:t.y,placement:t.placement,strategy:t.strategy,arrow:{...t.middlewareData.arrow,...t.middlewareData.arrowOverflow}})},$_scheduleShow(e,u=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),ms&&this.instantMove&&ms.instantMove&&ms!==this.parentPopper){ms.$_applyHide(!0),this.$_applyShow(!0);return}u?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,u=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(ms=this),u?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const u=this.delay;return parseInt(u&&u[e]||u||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await $o(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...x0(this.$_referenceNode),...x0(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const u=this.$_referenceNode.getBoundingClientRect(),t=this.$_popperNode.querySelector(".v-popper__wrapper"),s=t.parentNode.getBoundingClientRect(),n=u.x+u.width/2-(s.left+t.offsetLeft),i=u.y+u.height/2-(s.top+t.offsetTop);this.result.transformOrigin=`${n}px ${i}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let u;for(let t=0;t0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,g4(Zu,this),Zu.length===0&&document.body.classList.remove("v-popper--some-open");for(const t of d4(this.theme)){const s=p4(t);g4(s,this),s.length===0&&document.body.classList.remove(`v-popper--some-open--${t}`)}ms===this&&(ms=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const u=this.disposeTimeout;u!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},u)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await $o(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=t=>{this.isShown&&!this.$_hideInProgress||(t.usedByTooltip=!0,!this.$_preventShow&&this.show({event:t}))};this.$_registerTriggerListeners(this.$_targetNodes,m4,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],m4,this.popperTriggers,this.popperShowTriggers,e);const u=t=>{t.usedByTooltip||this.hide({event:t})};this.$_registerTriggerListeners(this.$_targetNodes,c4,this.triggers,this.hideTriggers,u),this.$_registerTriggerListeners([this.$_popperNode],c4,this.popperTriggers,this.popperHideTriggers,u)},$_registerEventListeners(e,u,t){this.$_events.push({targetNodes:e,eventType:u,handler:t}),e.forEach(s=>s.addEventListener(u,t,ui?{passive:!0}:void 0))},$_registerTriggerListeners(e,u,t,s,n){let i=t;s!=null&&(i=typeof s=="function"?s(i):s),i.forEach(o=>{const r=u[o];r&&this.$_registerEventListeners(e,r,n)})},$_removeEventListeners(e){const u=[];this.$_events.forEach(t=>{const{targetNodes:s,eventType:n,handler:i}=t;!e||e===n?s.forEach(o=>o.removeEventListener(n,i)):u.push(t)}),this.$_events=u},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,u=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),u&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,u){for(const t of this.$_targetNodes){const s=t.getAttribute(e);s&&(t.removeAttribute(e),t.setAttribute(u,s))}},$_applyAttrsToTarget(e){for(const u of this.$_targetNodes)for(const t in e){const s=e[t];s==null?u.removeAttribute(t):u.setAttribute(t,s)}},$_updateParentShownChildren(e){let u=this.parentPopper;for(;u;)e?u.shownChildren.add(this.randomId):(u.shownChildren.delete(this.randomId),u.pendingHide&&u.hide()),u=u.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(jn>=e.left&&jn<=e.right&&In>=e.top&&In<=e.bottom){const u=this.$_popperNode.getBoundingClientRect(),t=jn-Gt,s=In-Kt,n=u.left+u.width/2-Gt+(u.top+u.height/2)-Kt+u.width+u.height,i=Gt+t*n,o=Kt+s*n;return Si(Gt,Kt,i,o,u.left,u.top,u.left,u.bottom)||Si(Gt,Kt,i,o,u.left,u.top,u.right,u.top)||Si(Gt,Kt,i,o,u.right,u.top,u.right,u.bottom)||Si(Gt,Kt,i,o,u.left,u.bottom,u.right,u.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(A3){const e=ui?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",u=>h4(u),e),document.addEventListener("touchend",u=>v4(u,!0),e)}else window.addEventListener("mousedown",e=>h4(e),!0),window.addEventListener("click",e=>v4(e,!1),!0);window.addEventListener("resize",FE)}function h4(e,u){for(let t=0;t=0;s--){const n=Zu[s];try{const i=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!t[n.randomId]&&E4(n,i,e)){if(n.$_handleGlobalClose(e,u),!e.closeAllPopover&&e.closePopover&&i){let r=n.parentPopper;for(;r;)t[r.randomId]=!0,r=r.parentPopper;return}let o=n.parentPopper;for(;o&&E4(o,o.containsGlobalTarget,e);)o.$_handleGlobalClose(e,u),o=o.parentPopper}})}catch{}}}function E4(e,u,t){return t.closeAllPopover||t.closePopover&&u||DE(e,t)&&!u}function DE(e,u){if(typeof e.autoHide=="function"){const t=e.autoHide(u);return e.lastAutoHide=t,t}return e.autoHide}function FE(){for(let e=0;e{Gt=jn,Kt=In,jn=e.clientX,In=e.clientY},ui?{passive:!0}:void 0);function Si(e,u,t,s,n,i,o,r){const a=((o-n)*(u-i)-(r-i)*(e-n))/((r-i)*(t-e)-(o-n)*(s-u)),m=((t-e)*(u-i)-(s-u)*(e-n))/((r-i)*(t-e)-(o-n)*(s-u));return a>=0&&a<=1&&m>=0&&m<=1}const kE={extends:w3()},sa=(e,u)=>{const t=e.__vccOpts||e;for(const[s,n]of u)t[s]=n;return t};function NE(e,u,t,s,n,i){return me(),Be("div",{ref:"reference",class:Iu(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[Ve(e.$slots,"default",Fu(Eu(e.slotData)))],2)}const SE=sa(kE,[["render",NE]]);function _E(){var e=window.navigator.userAgent,u=e.indexOf("MSIE ");if(u>0)return parseInt(e.substring(u+5,e.indexOf(".",u)),10);var t=e.indexOf("Trident/");if(t>0){var s=e.indexOf("rv:");return parseInt(e.substring(s+3,e.indexOf(".",s)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let Ui;function yr(){yr.init||(yr.init=!0,Ui=_E()!==-1)}var Vi={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){yr(),Ir(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",Ui&&this.$el.appendChild(e),e.data="about:blank",Ui||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!Ui&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const OE=df();af("data-v-b329ee4c");const TE={class:"resize-observer",tabindex:"-1"};lf();const zE=OE((e,u,t,s,n,i)=>(me(),pu("div",TE)));Vi.render=zE,Vi.__scopeId="data-v-b329ee4c",Vi.__file="src/components/ResizeObserver.vue";const b3=(e="theme")=>({computed:{themeClass(){return AE(this[e])}}}),PE=yt({name:"VPopperContent",components:{ResizeObserver:Vi},mixins:[b3()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),RE=["id","aria-hidden","tabindex","data-popper-placement"],LE={ref:"inner",class:"v-popper__inner"},jE=Ce("div",{class:"v-popper__arrow-outer"},null,-1),IE=Ce("div",{class:"v-popper__arrow-inner"},null,-1),ME=[jE,IE];function $E(e,u,t,s,n,i){const o=ft("ResizeObserver");return me(),Be("div",{id:e.popperId,ref:"popover",class:Iu(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:xs(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:u[2]||(u[2]=Tm(r=>e.autoHide&&e.$emit("hide"),["esc"]))},[Ce("div",{class:"v-popper__backdrop",onClick:u[0]||(u[0]=r=>e.autoHide&&e.$emit("hide"))}),Ce("div",{class:"v-popper__wrapper",style:xs(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[Ce("div",LE,[e.mounted?(me(),Be(tu,{key:0},[Ce("div",null,[Ve(e.$slots,"default")]),e.handleResize?(me(),pu(o,{key:0,onNotify:u[1]||(u[1]=r=>e.$emit("resize",r))})):au("",!0)],64)):au("",!0)],512),Ce("div",{ref:"arrow",class:"v-popper__arrow-container",style:xs(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},ME,4)],4)],46,RE)}const UE=sa(PE,[["render",$E]]),VE={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let xr=function(){};typeof window<"u"&&(xr=window.Element);const WE=yt({name:"VPopperWrapper",components:{Popper:SE,PopperContent:UE},mixins:[VE,b3("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,xr,Boolean],default:void 0},boundary:{type:[String,xr],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function HE(e,u,t,s,n,i){const o=ft("PopperContent"),r=ft("Popper");return me(),pu(r,_u({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:u[0]||(u[0]=()=>e.$emit("show")),onHide:u[1]||(u[1]=()=>e.$emit("hide")),"onUpdate:shown":u[2]||(u[2]=a=>e.$emit("update:shown",a)),onApplyShow:u[3]||(u[3]=()=>e.$emit("apply-show")),onApplyHide:u[4]||(u[4]=()=>e.$emit("apply-hide")),onCloseGroup:u[5]||(u[5]=()=>e.$emit("close-group")),onCloseDirective:u[6]||(u[6]=()=>e.$emit("close-directive")),onAutoHide:u[7]||(u[7]=()=>e.$emit("auto-hide")),onResize:u[8]||(u[8]=()=>e.$emit("resize"))}),{default:Me(({popperId:a,isShown:m,shouldMountContent:l,skipTransition:g,autoHide:p,show:h,hide:y,handleResize:E,onResize:F,classes:B,result:A})=>[Ve(e.$slots,"default",{shown:m,show:h,hide:y}),Ee(o,{ref:"popperContent","popper-id":a,theme:e.finalTheme,shown:m,mounted:l,"skip-transition":g,"auto-hide":p,"handle-resize":E,classes:B,result:A,onHide:y,onResize:F},{default:Me(()=>[Ve(e.$slots,"popper",{shown:m,hide:y})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const Ar=sa(WE,[["render",HE]]),GE={...Ar,name:"VDropdown",vPopperTheme:"dropdown"};({...Ar},{...Ar}),w3();const C4=es,KE=GE,qE=yt({name:"NcPopoverTriggerProvider",provide(){return{"NcPopover:trigger:shown":()=>this.shown,"NcPopover:trigger:attrs":()=>this.triggerAttrs}},props:{shown:{type:Boolean,required:!0},popupRole:{type:String,default:void 0}},computed:{triggerAttrs(){return{"aria-haspopup":this.popupRole,"aria-expanded":this.shown.toString()}}},render(){return this.$slots.default?.({attrs:this.triggerAttrs})}}),YE="_ncPopover_zfWgY",ZE={"material-design-icon":"_material-design-icon_bkeq-",ncPopover:YE},D3="nc-popover-9";C4.themes[D3]=structuredClone(C4.themes.dropdown);const XE={name:"NcPopover",components:{Dropdown:KE,NcPopoverTriggerProvider:qE},props:{boundary:{type:[String,Object],default:""},closeOnClickOutside:{type:Boolean,default:!0},noCloseOnClickOutside:{type:Boolean,default:!1},container:{type:[Boolean,String],default:"body"},delay:{type:[Number,Object],default:0},noFocusTrap:{type:Boolean,default:!1},placement:{type:String,default:"bottom"},popoverBaseClass:{type:String,default:""},popoverTriggers:{type:[Array,Object],default:null},popupRole:{type:String,default:void 0,validator:e=>["menu","listbox","tree","grid","dialog","true"].includes(e)},setReturnFocus:{default:void 0,type:[Boolean,HTMLElement,SVGElement,String,Function]},shown:{type:Boolean,default:!1},triggers:{type:[Array,Object],default:()=>["click"]}},emits:["afterShow","afterHide","update:shown"],setup(){return{theme:D3}},data(){return{internalShown:this.shown}},computed:{popperTriggers(){if(this.popoverTriggers&&Array.isArray(this.popoverTriggers))return this.popoverTriggers},popperHideTriggers(){if(this.popoverTriggers&&typeof this.popoverTriggers=="object")return this.popoverTriggers.hide},popperShowTriggers(){if(this.popoverTriggers&&typeof this.popoverTriggers=="object")return this.popoverTriggers.show},internalTriggers(){if(this.triggers&&Array.isArray(this.triggers))return this.triggers},hideTriggers(){if(this.triggers&&typeof this.triggers=="object")return this.triggers.hide},showTriggers(){if(this.triggers&&typeof this.triggers=="object")return this.triggers.show},internalPlacement(){return this.placement==="start"?m0?"right":"left":this.placement==="end"?m0?"left":"right":this.placement}},watch:{shown(e){this.internalShown=e},internalShown(e){this.$emit("update:shown",e)}},mounted(){this.checkTriggerA11y()},beforeUnmount(){this.clearFocusTrap(),this.clearEscapeStopPropagation()},methods:{checkTriggerA11y(){window.OC?.debug&&this.getPopoverTriggerContainerElement().querySelector("[aria-expanded]")},removeFloatingVueAriaDescribedBy(){const e=this.getPopoverTriggerContainerElement().querySelectorAll("[data-popper-shown]");for(const u of e)u.removeAttribute("aria-describedby")},getPopoverContentElement(){return this.$refs.popover?.$refs.popperContent?.$el},getPopoverTriggerContainerElement(){return this.$refs.popover?.$refs.popper?.$refs.reference},async useFocusTrap(){if(await this.$nextTick(),this.noFocusTrap)return;const e=this.getPopoverContentElement();e.tabIndex=-1,e&&(this.$focusTrap=o3(e,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:Jn(),fallBackFocus:e}),this.$focusTrap.activate())},clearFocusTrap(e={}){try{this.$focusTrap?.deactivate(e),this.$focusTrap=null}catch(u){bv.warn("[NcPopover] Failed to clear focus trap",{error:u})}},addEscapeStopPropagation(){this.getPopoverContentElement()?.addEventListener("keydown",this.stopKeydownEscapeHandler)},clearEscapeStopPropagation(){this.getPopoverContentElement()?.removeEventListener("keydown",this.stopKeydownEscapeHandler)},stopKeydownEscapeHandler(e){e.type==="keydown"&&e.key==="Escape"&&e.stopPropagation()},async afterShow(){this.getPopoverContentElement().addEventListener("transitionend",()=>{this.$emit("afterShow")},{once:!0,passive:!0}),this.removeFloatingVueAriaDescribedBy(),await this.$nextTick(),await this.useFocusTrap(),this.addEscapeStopPropagation()},afterHide(){this.getPopoverContentElement()?.addEventListener("transitionend",()=>{this.$emit("afterHide")},{once:!0,passive:!0}),this.clearFocusTrap(),this.clearEscapeStopPropagation()}}};function JE(e,u,t,s,n,i){const o=ft("NcPopoverTriggerProvider"),r=ft("Dropdown");return me(),pu(r,{ref:"popover",shown:n.internalShown,"onUpdate:shown":[u[0]||(u[0]=a=>n.internalShown=a),u[1]||(u[1]=a=>n.internalShown=a)],arrowPadding:10,autoHide:!t.noCloseOnClickOutside&&t.closeOnClickOutside,boundary:t.boundary||void 0,container:t.container,delay:t.delay,distance:10,handleResize:"",noAutoFocus:!0,placement:i.internalPlacement,popperClass:[e.$style.ncPopover,t.popoverBaseClass],popperTriggers:i.popperTriggers,popperHideTriggers:i.popperHideTriggers,popperShowTriggers:i.popperShowTriggers,theme:s.theme,triggers:i.internalTriggers,hideTriggers:i.hideTriggers,showTriggers:i.showTriggers,onApplyShow:i.afterShow,onApplyHide:i.afterHide},{popper:Me(a=>[Ve(e.$slots,"default",Fu(Eu(a)))]),default:Me(()=>[Ee(o,{shown:n.internalShown,popupRole:t.popupRole},{default:Me(a=>[Ve(e.$slots,"trigger",Fu(Eu(a)))]),_:3},8,["shown","popupRole"])]),_:3},8,["shown","autoHide","boundary","container","delay","placement","popperClass","popperTriggers","popperHideTriggers","popperShowTriggers","theme","triggers","hideTriggers","showTriggers","onApplyShow","onApplyHide"])}const QE={$style:ZE},B4=qu(XE,[["render",JE],["__cssModules",QE]]),e1=Symbol.for("NcActions:isSemanticMenu"),u1=Symbol.for("NcActions:closeMenu"),t1={name:"DotsHorizontalIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},s1=["aria-hidden","aria-label"],n1=["fill","width","height"],i1={d:"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z"},o1={key:0};function r1(e,u,t,s,n,i){return me(),Be("span",_u(e.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon dots-horizontal-icon",role:"img",onClick:u[0]||(u[0]=o=>e.$emit("click",o))}),[(me(),Be("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[Ce("path",i1,[t.title?(me(),Be("title",o1,Mu(t.title),1)):au("",!0)])],8,n1))],16,s1)}const a1=qu(t1,[["render",r1]]);Xn($h);function F3(e){return Array.isArray(e)&&e.some(u=>{if(u===null)return!1;if(typeof u=="object"){const t=u;if(t.type===mu||t.type===tu&&!F3(t.children)||t.type===ai&&!t.children.trim())return!1}return!0})}const l1=".focusable",d1={name:"NcActions",components:{NcButton:Bs,NcPopover:B4},provide(){return{[e1]:Ge(()=>this.actionsMenuSemanticType==="menu"),[u1]:this.closeMenu}},props:{open:{type:Boolean,default:!1},manualOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceName:{type:Boolean,default:!1},menuName:{type:String,default:null},primary:{type:Boolean,default:!1},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:Cu("Actions")},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:()=>document.getElementById("content-vue")??document.querySelector("body")},container:{type:[Boolean,String,Object,Element],default:"body"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0},variant:{type:String,validator(e){return["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].includes(e)},default:null},wide:{type:Boolean,default:!1},size:{type:String,default:"normal",validator(e){return["small","normal","large"].includes(e)}}},emits:["click","blur","focus","close","closed","open","opened","update:open"],setup(){return{randomId:v0()}},data(){return{opened:this.open,focusIndex:0,actionsMenuSemanticType:"unknown"}},computed:{triggerButtonVariant(){return this.variant||(this.primary?"primary":this.menuName?"secondary":"tertiary")},config(){return{menu:{popupRole:"menu",withArrowNavigation:!0,withTabNavigation:!1,withFocusTrap:!1},navigation:{popupRole:void 0,withArrowNavigation:!1,withTabNavigation:!0,withFocusTrap:!1},dialog:{popupRole:"dialog",withArrowNavigation:!1,withTabNavigation:!0,withFocusTrap:!0},tooltip:{popupRole:void 0,withArrowNavigation:!1,withTabNavigation:!1,withFocusTrap:!1},unknown:{popupRole:void 0,role:void 0,withArrowNavigation:!0,withTabNavigation:!1,withFocusTrap:!0}}[this.actionsMenuSemanticType]},withFocusTrap(){return this.config.withFocusTrap}},watch:{open(e){e!==this.opened&&(this.opened=e)},opened(){this.opened?document.body.addEventListener("keydown",this.handleEscapePressed):document.body.removeEventListener("keydown",this.handleEscapePressed)}},created(){uE(()=>this.opened,{disabled:()=>this.config.withFocusTrap}),"ariaHidden"in this.$attrs},methods:{getActionName(e){return e?.type?.name},isValidSingleAction(e){return["NcActionButton","NcActionLink","NcActionRouter"].includes(this.getActionName(e))},isAction(e){return this.getActionName(e)?.startsWith?.("NcAction")},isIconUrl(e){try{return!!new URL(e,e.startsWith("/")?window.location.origin:void 0)}catch{return!1}},toggleMenu(e){e?this.openMenu():this.closeMenu()},openMenu(){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},async closeMenu(e=!0){this.opened&&(await this.$nextTick(),this.opened=!1,this.$refs.popover?.clearFocusTrap({returnFocus:e}),this.$emit("update:open",!1),this.$emit("close"),this.focusIndex=0,e&&this.$refs.triggerButton?.$el.focus())},onOpened(){this.$nextTick(()=>{this.focusFirstAction(null),this.$emit("opened")})},onClosed(){this.$emit("closed")},getCurrentActiveMenuItemElement(){return this.$refs.menu.querySelector("li.active")},getFocusableMenuItemElements(){return this.$refs.menu.querySelectorAll(l1)},onKeydown(e){if(e.key==="Tab"){if(this.config.withFocusTrap)return;if(!this.config.withTabNavigation){this.closeMenu(!0);return}e.preventDefault();const u=this.getFocusableMenuItemElements(),t=[...u].indexOf(document.activeElement);if(t===-1)return;const s=e.shiftKey?t-1:t+1;(s<0||s===u.length)&&this.closeMenu(!0),this.focusIndex=s,this.focusAction();return}this.config.withArrowNavigation&&(e.key==="ArrowUp"&&this.focusPreviousAction(e),e.key==="ArrowDown"&&this.focusNextAction(e),e.key==="PageUp"&&this.focusFirstAction(e),e.key==="PageDown"&&this.focusLastAction(e)),this.handleEscapePressed(e)},onTriggerKeydown(e){e.key==="Escape"&&this.actionsMenuSemanticType==="tooltip"&&this.closeMenu()},handleEscapePressed(e){e.key==="Escape"&&(this.closeMenu(),e.preventDefault())},removeCurrentActive(){const e=this.$refs.menu.querySelector("li.active");e&&e.classList.remove("active")},focusAction(){const e=this.getFocusableMenuItemElements()[this.focusIndex];if(e){this.removeCurrentActive();const u=e.closest("li.action");e.focus(),u&&u.classList.add("active")}},focusPreviousAction(e){this.opened&&(this.focusIndex===0?this.focusLastAction(e):(this.preventIfEvent(e),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction(e){if(this.opened){const u=this.getFocusableMenuItemElements().length-1;this.focusIndex===u?this.focusFirstAction(e):(this.preventIfEvent(e),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction(e){if(this.opened){this.preventIfEvent(e);const u=[...this.getFocusableMenuItemElements()].findIndex(t=>t.getAttribute("aria-checked")==="true"&&t.getAttribute("role")==="menuitemradio");this.focusIndex=u>-1?u:0,this.focusAction()}},focusLastAction(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=this.getFocusableMenuItemElements().length-1,this.focusAction())},preventIfEvent(e){e&&(e.preventDefault(),e.stopPropagation())},onFocus(e){this.$emit("focus",e)},onBlur(e){this.$emit("blur",e),this.actionsMenuSemanticType==="tooltip"&&this.$refs.menu&&this.getFocusableMenuItemElements().length===0&&this.closeMenu(!1)},onClick(e){this.$emit("click",e)}},render(){const e=[],u=(h,y)=>{h.forEach(E=>{if(this.isAction(E)){y.push(E);return}E.type===tu&&u(E.children,y)})};if(u(this.$slots.default?.(),e),e.length===0)return;let t=e.filter(this.isValidSingleAction);this.forceMenu&&t.length>0&&this.inline>0&&(t=[]);const s=t.slice(0,this.inline),n=e.filter(h=>!s.includes(h)),i=["NcActionButton","NcActionButtonGroup","NcActionCheckbox","NcActionRadio"],o=["NcActionInput","NcActionTextEditable"],r=["NcActionLink","NcActionRouter"],a=n.some(h=>o.includes(this.getActionName(h))),m=n.some(h=>i.includes(this.getActionName(h))),l=n.some(h=>r.includes(this.getActionName(h)));a?this.actionsMenuSemanticType="dialog":m?this.actionsMenuSemanticType="menu":l?this.actionsMenuSemanticType="navigation":e.filter(h=>this.getActionName(h).startsWith("NcAction")).length===e.length?this.actionsMenuSemanticType="tooltip":this.actionsMenuSemanticType="unknown";const g=h=>{const y=h?.props?.icon,E=h?.children?.icon?.()?.[0]??(this.isIconUrl(y)?lu("img",{class:"action-item__menutoggle__icon",src:y,alt:""}):lu("span",{class:["icon",y]})),F=h?.children?.default?.()?.[0]?.children?.trim(),B=this.forceName?F:"";let A=h?.props?.title;this.forceName||A||(A=F);const O={...h?.props??{}},N=["submit","reset"].includes(O.type)?O.modelValue:"button";return delete O.modelValue,delete O.type,lu(Bs,_u(O,{class:["action-item action-item--single",{"action-item--wide":this.wide}],"aria-label":h?.props?.["aria-label"]||F,title:A,disabled:this.disabled||h?.props?.disabled,pressed:h?.props?.modelValue,size:this.size,type:N,wide:this.wide,variant:this.variant||(B?"secondary":"tertiary"),onFocus:this.onFocus,onBlur:this.onBlur,"onUpdate:pressed":h?.props?.["onUpdate:modelValue"]??(()=>{})}),{default:()=>B,icon:()=>E})},p=h=>{const y=F3(this.$slots.icon?.())?this.$slots.icon?.():this.defaultIcon?lu("span",{class:["icon",this.defaultIcon]}):lu(a1,{size:20}),E=`${this.randomId}-trigger`;return lu(B4,{ref:"popover",delay:0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,autoBoundaryMaxSize:!0,container:this.container,...this.manualOpen&&{triggers:[]},noCloseOnClickOutside:this.manualOpen,popoverBaseClass:"action-item__popper",popupRole:this.config.popupRole,setReturnFocus:this.config.withFocusTrap?this.$refs.triggerButton?.$el:void 0,noFocusTrap:!this.config.withFocusTrap,"onUpdate:shown":this.toggleMenu,onAfterShow:this.onOpened,onAfterClose:this.onClosed},{trigger:()=>lu(Bs,{id:E,class:"action-item__menutoggle",disabled:this.disabled,size:this.size,variant:this.triggerButtonVariant,wide:this.wide,ref:"triggerButton","aria-label":this.menuName?null:this.ariaLabel,"aria-controls":this.opened&&this.config.popupRole?this.randomId:null,onFocus:this.onFocus,onBlur:this.onBlur,onClick:this.onClick,onKeydown:this.onTriggerKeydown},{icon:()=>y,default:()=>this.menuName}),default:()=>lu("div",{class:{open:this.opened},tabindex:"-1",onKeydown:this.onKeydown,ref:"menu"},[lu("ul",{id:this.randomId,tabindex:"-1",ref:"menuList",role:this.config.popupRole,"aria-labelledby":E,"aria-modal":this.actionsMenuSemanticType==="dialog"?"true":void 0},[h])])})};return e.length===1&&t.length===1&&!this.forceMenu?g(e[0]):(this.$nextTick(()=>{this.opened&&this.$refs.menu&&(this.$refs.menu.querySelector("li.active")||[]).length===0&&this.focusFirstAction()}),s.length>0&&this.inline>0?lu("div",{class:["action-items",`action-item--${this.triggerButtonVariant}`]},[...s.map(g),n.length>0?lu("div",{class:["action-item",{"action-item--open":this.opened}]},[p(n)]):null]):lu("div",{class:["action-item action-item--default-popover",`action-item--${this.triggerButtonVariant}`,{"action-item--open":this.opened,"action-item--wide":this.wide}]},[p(e)]))}},m1=qu(d1,[["__scopeId","data-v-23e5cae7"]]),c1={name:"ChevronDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},g1=["aria-hidden","aria-label"],f1=["fill","width","height"],p1={d:"M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"},h1={key:0};function v1(e,u,t,s,n,i){return me(),Be("span",_u(e.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon chevron-down-icon",role:"img",onClick:u[0]||(u[0]=o=>e.$emit("click",o))}),[(me(),Be("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[Ce("path",p1,[t.title?(me(),Be("title",h1,Mu(t.title),1)):au("",!0)])],8,f1))],16,g1)}const E1=qu(c1,[["render",v1]]),C1={name:"CloseIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},B1=["aria-hidden","aria-label"],y1=["fill","width","height"],x1={d:"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"},A1={key:0};function w1(e,u,t,s,n,i){return me(),Be("span",_u(e.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon close-icon",role:"img",onClick:u[0]||(u[0]=o=>e.$emit("click",o))}),[(me(),Be("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[Ce("path",x1,[t.title?(me(),Be("title",A1,Mu(t.title),1)):au("",!0)])],8,y1))],16,B1)}const b1=qu(C1,[["render",w1]]),D1=["aria-label"],F1=["width","height"],k1=["fill"],N1=["fill"],S1={key:0},_1=yt({__name:"NcLoadingIcon",props:{appearance:{default:"auto"},name:{default:""},size:{default:20}},setup(e){const u=e,t=Ge(()=>{const s=["#777","#CCC"];return u.appearance==="light"?s:u.appearance==="dark"?s.reverse():["var(--color-loading-light)","var(--color-loading-dark)"]});return(s,n)=>(me(),Be("span",{"aria-label":e.name,role:"img",class:"material-design-icon loading-icon"},[(me(),Be("svg",{width:e.size,height:e.size,viewBox:"0 0 24 24"},[Ce("path",{fill:t.value[0],d:"M12,4V2A10,10 0 1,0 22,12H20A8,8 0 1,1 12,4Z"},null,8,k1),Ce("path",{fill:t.value[1],d:"M12,4V2A10,10 0 0,1 22,12H20A8,8 0 0,0 12,4Z"},[e.name?(me(),Be("title",S1,Mu(e.name),1)):au("",!0)],8,N1)],8,F1))],8,D1))}}),O1=qu(_1,[["__scopeId","data-v-cf399190"]]),gy=(e,u)=>{const t=e.__vccOpts||e;for(const[s,n]of u)t[s]=n;return t},T1="modulepreload",z1=function(e,u){return new URL(e,u).href},y4={},na=function(e,u,t){let s=Promise.resolve();if(u&&u.length>0){let i=function(m){return Promise.all(m.map(l=>Promise.resolve(l).then(g=>({status:"fulfilled",value:g}),g=>({status:"rejected",reason:g}))))};const o=document.getElementsByTagName("link"),r=document.querySelector("meta[property=csp-nonce]"),a=r?.nonce||r?.getAttribute("nonce");s=i(u.map(m=>{if(m=z1(m,t),m in y4)return;y4[m]=!0;const l=m.endsWith(".css"),g=l?'[rel="stylesheet"]':"";if(t)for(let h=o.length-1;h>=0;h--){const y=o[h];if(y.href===m&&(!l||y.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${m}"]${g}`))return;const p=document.createElement("link");if(p.rel=l?"stylesheet":T1,l||(p.as="script"),p.crossOrigin="",p.href=m,a&&p.setAttribute("nonce",a),document.head.appendChild(p),l)return new Promise((h,y)=>{p.addEventListener("load",h),p.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${m}`)))})}))}function n(i){const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=i,window.dispatchEvent(o),!o.defaultPrevented)throw i}return s.then(i=>{for(const o of i||[])o.status==="rejected"&&n(o.reason);return e().catch(n)})};var wr={exports:{}},P1=wr.exports,x4;function R1(){return x4||(x4=1,(function(e){(function(u,t){e.exports?e.exports=t():u.Toastify=t()})(P1,function(u){var t=function(o){return new t.lib.init(o)},s="1.12.0";t.defaults={oldestFirst:!0,text:"Toastify is awesome!",node:void 0,duration:3e3,selector:void 0,callback:function(){},destination:void 0,newWindow:!1,close:!1,gravity:"toastify-top",positionLeft:!1,position:"",backgroundColor:"",avatar:"",className:"",stopOnFocus:!0,onClick:function(){},offset:{x:0,y:0},escapeMarkup:!0,ariaLive:"polite",style:{background:""}},t.lib=t.prototype={toastify:s,constructor:t,init:function(o){return o||(o={}),this.options={},this.toastElement=null,this.options.text=o.text||t.defaults.text,this.options.node=o.node||t.defaults.node,this.options.duration=o.duration===0?0:o.duration||t.defaults.duration,this.options.selector=o.selector||t.defaults.selector,this.options.callback=o.callback||t.defaults.callback,this.options.destination=o.destination||t.defaults.destination,this.options.newWindow=o.newWindow||t.defaults.newWindow,this.options.close=o.close||t.defaults.close,this.options.gravity=o.gravity==="bottom"?"toastify-bottom":t.defaults.gravity,this.options.positionLeft=o.positionLeft||t.defaults.positionLeft,this.options.position=o.position||t.defaults.position,this.options.backgroundColor=o.backgroundColor||t.defaults.backgroundColor,this.options.avatar=o.avatar||t.defaults.avatar,this.options.className=o.className||t.defaults.className,this.options.stopOnFocus=o.stopOnFocus===void 0?t.defaults.stopOnFocus:o.stopOnFocus,this.options.onClick=o.onClick||t.defaults.onClick,this.options.offset=o.offset||t.defaults.offset,this.options.escapeMarkup=o.escapeMarkup!==void 0?o.escapeMarkup:t.defaults.escapeMarkup,this.options.ariaLive=o.ariaLive||t.defaults.ariaLive,this.options.style=o.style||t.defaults.style,o.backgroundColor&&(this.options.style.background=o.backgroundColor),this},buildToast:function(){if(!this.options)throw"Toastify is not initialized";var o=document.createElement("div");o.className="toastify on "+this.options.className,this.options.position?o.className+=" toastify-"+this.options.position:this.options.positionLeft===!0?(o.className+=" toastify-left",console.warn("Property `positionLeft` will be depreciated in further versions. Please use `position` instead.")):o.className+=" toastify-right",o.className+=" "+this.options.gravity,this.options.backgroundColor&&console.warn('DEPRECATION NOTICE: "backgroundColor" is being deprecated. Please use the "style.background" property.');for(var r in this.options.style)o.style[r]=this.options.style[r];if(this.options.ariaLive&&o.setAttribute("aria-live",this.options.ariaLive),this.options.node&&this.options.node.nodeType===Node.ELEMENT_NODE)o.appendChild(this.options.node);else if(this.options.escapeMarkup?o.innerText=this.options.text:o.innerHTML=this.options.text,this.options.avatar!==""){var a=document.createElement("img");a.src=this.options.avatar,a.className="toastify-avatar",this.options.position=="left"||this.options.positionLeft===!0?o.appendChild(a):o.insertAdjacentElement("afterbegin",a)}if(this.options.close===!0){var m=document.createElement("button");m.type="button",m.setAttribute("aria-label","Close"),m.className="toast-close",m.innerHTML="✖",m.addEventListener("click",function(F){F.stopPropagation(),this.removeElement(this.toastElement),window.clearTimeout(this.toastElement.timeOutValue)}.bind(this));var l=window.innerWidth>0?window.innerWidth:screen.width;(this.options.position=="left"||this.options.positionLeft===!0)&&l>360?o.insertAdjacentElement("afterbegin",m):o.appendChild(m)}if(this.options.stopOnFocus&&this.options.duration>0){var g=this;o.addEventListener("mouseover",function(F){window.clearTimeout(o.timeOutValue)}),o.addEventListener("mouseleave",function(){o.timeOutValue=window.setTimeout(function(){g.removeElement(o)},g.options.duration)})}if(typeof this.options.destination<"u"&&o.addEventListener("click",function(F){F.stopPropagation(),this.options.newWindow===!0?window.open(this.options.destination,"_blank"):window.location=this.options.destination}.bind(this)),typeof this.options.onClick=="function"&&typeof this.options.destination>"u"&&o.addEventListener("click",function(F){F.stopPropagation(),this.options.onClick()}.bind(this)),typeof this.options.offset=="object"){var p=n("x",this.options),h=n("y",this.options),y=this.options.position=="left"?p:"-"+p,E=this.options.gravity=="toastify-top"?h:"-"+h;o.style.transform="translate("+y+","+E+")"}return o},showToast:function(){this.toastElement=this.buildToast();var o;if(typeof this.options.selector=="string"?o=document.getElementById(this.options.selector):this.options.selector instanceof HTMLElement||typeof ShadowRoot<"u"&&this.options.selector instanceof ShadowRoot?o=this.options.selector:o=document.body,!o)throw"Root element is not defined";var r=t.defaults.oldestFirst?o.firstChild:o.lastChild;return o.insertBefore(this.toastElement,r),t.reposition(),this.options.duration>0&&(this.toastElement.timeOutValue=window.setTimeout(function(){this.removeElement(this.toastElement)}.bind(this),this.options.duration)),this},hideToast:function(){this.toastElement.timeOutValue&&clearTimeout(this.toastElement.timeOutValue),this.removeElement(this.toastElement)},removeElement:function(o){o.className=o.className.replace(" on",""),window.setTimeout(function(){this.options.node&&this.options.node.parentNode&&this.options.node.parentNode.removeChild(this.options.node),o.parentNode&&o.parentNode.removeChild(o),this.options.callback.call(o),t.reposition()}.bind(this),400)}},t.reposition=function(){for(var o={top:15,bottom:15},r={top:15,bottom:15},a={top:15,bottom:15},m=document.getElementsByClassName("toastify"),l,g=0;g0?window.innerWidth:screen.width;y<=360?(m[g].style[l]=a[l]+"px",a[l]+=p+h):i(m[g],"toastify-left")===!0?(m[g].style[l]=o[l]+"px",o[l]+=p+h):(m[g].style[l]=r[l]+"px",r[l]+=p+h)}return this};function n(o,r){return r.offset[o]?isNaN(r.offset[o])?r.offset[o]:r.offset[o]+"px":"0px"}function i(o,r){return!o||typeof r!="string"?!1:!!(o.className&&o.className.trim().split(/\s+/gi).indexOf(r)>-1)}return t.lib.init.prototype=t.lib,t})})(wr)),wr.exports}var L1=R1();const j1=F0(L1);Xn(Wh),Xn(Mh),Cu("a few seconds ago"),Cu("seconds ago"),Cu("sec. ago");const I1=/mac|ipad|iphone|darwin/i.test(navigator.userAgent),M1=window.OCP?.Accessibility?.disableKeyboardShortcuts?.(),$1=/^[a-zA-Z0-9]$/,U1=/^[^\x20-\x7F]$/;function V1(e,u){return!(e.target instanceof HTMLElement)||e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement||e.target instanceof HTMLSelectElement||e.target.isContentEditable?!0:u.allowInModal?!1:Array.from(document.getElementsByClassName("modal-mask")).filter(t=>t.checkVisibility()).length>0}function A4(e,u){return t=>{if((I1?t.metaKey:t.ctrlKey)===!!u.ctrl){if(t.altKey!==!!u.alt||u.shift!==void 0&&t.shiftKey!==!!u.shift||V1(t,u))return;u.prevent&&t.preventDefault(),u.stop&&t.stopPropagation(),e(t)}}}function w4(e,u=()=>{},t={}){if(M1)return()=>{};const s=(r,a)=>{if(r.key===a)return!0;if(t.caseSensitive){const m=a===a.toLowerCase(),l=r.key===r.key.toLowerCase();if(m!==l)return!1}return $1.test(a)&&U1.test(r.key)?r.code.replace(/^(?:Key|Digit|Numpad)/,"")===a.toUpperCase():r.key.toLowerCase()===a.toLowerCase()},n=r=>typeof e=="function"?e(r):typeof e=="string"?s(r,e):Array.isArray(e)?e.some(a=>s(r,a)):!0,i=Hl(n,A4(u,t),{eventName:"keydown",dedupe:!0,passive:!t.prevent}),o=t.push?Hl(n,A4(u,t),{eventName:"keyup",passive:!t.prevent}):()=>{};return()=>{i(),o()}}function W1(e=document.body){const u=window.getComputedStyle(e).getPropertyValue("--background-invert-if-dark");return u!==void 0?u==="invert(100%)":!1}W1();const H1=rn(k3());window.addEventListener("resize",()=>{H1.value=k3()});function k3(){return window.outerHeight===window.screen.height}function b4(e){return!e.parent||"vapor"in e||"vapor"in e.parent||e.parent.subTree!==e.vnode?null:e.parent}function G1(e){const u=[e];let t=b4(e);for(;t;)u.push(t),t=b4(t);return u}function K1(){const e=et();if(!e)throw new Error("useScopeId must be called within a setup context");const u=G1(e).map(t=>t.vnode.scopeId).filter(Boolean);return Object.fromEntries(u.map(t=>[t,""]))}Xn(Vh,Hh);const q1=["aria-labelledby","aria-describedby"],Y1=["data-theme-light","data-theme-dark"],Z1=["id"],X1={class:"icons-menu"},J1=["title"],Q1=["id"],eC={class:"modal-container__content"},uC=yt({inheritAttrs:!1,__name:"NcModal",props:nl({name:{default:""},hasPrevious:{type:Boolean},hasNext:{type:Boolean},outTransition:{type:Boolean},enableSlideshow:{type:Boolean},slideshowDelay:{default:5e3},slideshowPaused:{type:Boolean},disableSwipe:{type:Boolean},spreadNavigation:{type:Boolean},size:{default:"normal"},noClose:{type:Boolean},closeOnClickOutside:{type:Boolean},dark:{type:Boolean},lightBackdrop:{type:Boolean},container:{default:"body"},closeButtonOutside:{type:Boolean},additionalTrapElements:{default:()=>[]},inlineActions:{default:0},labelId:{default:""},setReturnFocus:{default:void 0}},{show:{type:Boolean,default:!0},showModifiers:{}}),emits:nl(["next","previous","close","update:show"],["update:show"]),setup(e,{emit:u}){Nm(M=>({v046d2bb2:B.value,v71f7c020:y.value}));const t=Vf(e,"show"),s=e,n=u,i=K1(),o=v0(),r=xf("mask");let a;an(()=>G()),St(()=>s.additionalTrapElements,M=>{a&&a.updateContainerElements([r.value,...M])});const{isActive:m,pause:l,resume:g}=xh(A,Qg(()=>s.slideshowDelay),{immediate:!1}),p=rn(0),h=rn(!1);Ld(()=>{h.value&&!s.slideshowPaused?g():m.value&&l()});const y=Ge(()=>`${s.slideshowDelay}ms`),{stop:E}=Nh(r,{onSwipeEnd:N});an(E),w4("Escape",()=>{Jn().at(-1)===a&&I()},{allowInModal:!0}),w4(["ArrowLeft","ArrowRight"],M=>{document.activeElement&&!r.value.contains(document.activeElement)||(M.key==="ArrowLeft"!==m0?O():A())},{allowInModal:!0});const F=Pf(),B=Ge(()=>{let M=0;return s.hasNext&&s.enableSlideshow&&M++,!s.noClose&&s.closeButtonOutside&&M++,F.actions&&M++,M});ri(()=>{!s.name&&s.labelId});function A(M){if(!s.hasNext){h.value=!1;return}M&&m.value&&K(),n("next",M)}function O(M){s.hasPrevious&&(M&&m.value&&K(),n("previous",M))}function N(M,ne){if(!s.disableSwipe){if(ne!=="left"&&ne!=="right")return;ne==="left"!==m0?A(M):O(M)}}function K(){l(),g(),p.value++}function I(M){s.noClose||(t.value=!1,setTimeout(()=>{n("close",M)},300))}function Y(M){s.closeOnClickOutside&&I(M)}async function se(){if(a)return;await Ir();const M={allowOutsideClick:!0,fallbackFocus:r.value,trapStack:Jn(),escapeDeactivates:!1,setReturnFocus:s.setReturnFocus};a=o3([r.value,...s.additionalTrapElements],M),a.activate()}function G(){a&&(a?.deactivate(),a=void 0)}return(M,ne)=>(me(),pu(Cf,{disabled:e.container===null,to:e.container},[Ee(Ks,{name:"fade",appear:"",onAfterEnter:se,onBeforeLeave:G},{default:Me(()=>[Es(Ce("div",_u({...M.$attrs,...Fe(i)},{ref:"mask",class:["modal-mask",{"modal-mask--opaque":e.dark||e.closeButtonOutside||e.hasPrevious||e.hasNext,"modal-mask--light":e.lightBackdrop}],role:"dialog","aria-modal":"true","aria-labelledby":e.labelId||`modal-name-${Fe(o)}`,"aria-describedby":"modal-description-"+Fe(o),tabindex:"-1"}),[Ee(Ks,{name:"fade-visibility",appear:""},{default:Me(()=>[Ce("div",{class:"modal-header","data-theme-light":e.lightBackdrop,"data-theme-dark":!e.lightBackdrop},[e.name.trim()!==""?(me(),Be("h2",{key:0,id:"modal-name-"+Fe(o),class:"modal-header__name"},Mu(e.name),9,Z1)):au("",!0),Ce("div",X1,[e.hasNext&&e.enableSlideshow?(me(),Be("button",{key:0,class:Iu(["play-pause-icons",{"play-pause-icons--paused":e.slideshowPaused}]),title:Fe(m)?Fe(Cu)("Pause slideshow"):Fe(Cu)("Start slideshow"),type:"button",onClick:ne[0]||(ne[0]=b=>h.value=!h.value)},[Ee(Ys,{class:"play-pause-icons__icon",inline:"",name:Fe(m)?Fe(Cu)("Pause slideshow"):Fe(Cu)("Start slideshow"),path:Fe(m)?Fe(Rh):Fe(Lh)},null,8,["name","path"]),Fe(m)?(me(),Be("svg",{key:`${Fe(o)}-animation-${p.value}`,class:"progress-ring",height:"50",width:"50"},[...ne[1]||(ne[1]=[Ce("circle",{class:"progress-ring__circle",stroke:"white","stroke-width":"2",fill:"transparent",r:"15",cx:"25",cy:"25"},null,-1)])])):au("",!0)],10,J1)):au("",!0),Ee(m1,{class:"header-actions",inline:e.inlineActions},{default:Me(()=>[Ve(M.$slots,"actions",{},void 0,!0)]),_:3},8,["inline"]),!e.noClose&&e.closeButtonOutside?(me(),pu(Bs,{key:1,"aria-label":Fe(Cu)("Close"),class:"header-close",variant:"tertiary",onClick:I},{icon:Me(()=>[Ee(Ys,{path:Fe(Gl)},null,8,["path"])]),_:1},8,["aria-label"])):au("",!0)])],8,Y1)]),_:3}),Ee(Ks,{name:`modal-${e.outTransition?"out":"in"}`,appear:""},{default:Me(()=>[Es(Ce("div",{class:Iu(["modal-wrapper",[`modal-wrapper--${e.size}`,{"modal-wrapper--spread-navigation":e.spreadNavigation}]]),onMousedown:ji(Y,["self"])},[Ee(Ks,{name:"fade-visibility",appear:""},{default:Me(()=>[Es(Ee(Bs,{"aria-label":Fe(Cu)("Previous"),class:"prev",variant:"tertiary-no-background",onClick:O},{icon:Me(()=>[Ee(Ys,{directional:"",path:Fe(Th),size:40},null,8,["path"])]),_:1},8,["aria-label"]),[[Zs,e.hasPrevious]])]),_:1}),Ce("div",{id:"modal-description-"+Fe(o),class:"modal-container"},[Ce("div",eC,[Ve(M.$slots,"default",{},void 0,!0)]),!e.noClose&&!e.closeButtonOutside?(me(),pu(Bs,{key:0,"aria-label":Fe(Cu)("Close"),class:"modal-container__close",variant:"tertiary",onClick:I},{icon:Me(()=>[Ee(Ys,{path:Fe(Gl)},null,8,["path"])]),_:1},8,["aria-label"])):au("",!0)],8,Q1),Ee(Ks,{name:"fade-visibility",appear:""},{default:Me(()=>[Es(Ee(Bs,{"aria-label":Fe(Cu)("Next"),class:"next",variant:"tertiary-no-background",onClick:A},{icon:Me(()=>[Ee(Ys,{directional:"",path:Fe(zh),size:40},null,8,["path"])]),_:1},8,["aria-label"]),[[Zs,e.hasNext]])]),_:1})],34),[[Zs,t.value]])]),_:3},8,["name"])],16,q1),[[Zs,t.value]])]),_:3})],8,["disabled","to"]))}}),fy=qu(uC,[["__scopeId","data-v-3c357e2d"]]),tC=["role"],sC={key:0,class:"notecard__heading"},nC={class:"notecard__text"},iC=yt({__name:"NcNoteCard",props:{heading:{default:void 0},showAlert:{type:Boolean},text:{default:void 0},type:{default:"warning"}},setup(e){const u=e,t=Ge(()=>u.showAlert||u.type==="error"),s=Ge(()=>{switch(u.type){case"error":return _h;case"success":return Oh;case"info":return Ph;default:return Sh}});return(n,i)=>(me(),Be("div",{class:Iu(["notecard",{[`notecard--${e.type}`]:e.type,"notecard--legacy":Fe(Jr)}]),role:t.value?"alert":"note"},[Ve(n.$slots,"icon",{},()=>[Ee(Fe(Ys),{path:s.value,class:Iu(["notecard__icon",{"notecard__icon--heading":e.heading}]),inline:""},null,8,["path","class"])],!0),Ce("div",null,[e.heading?(me(),Be("p",sC,Mu(e.heading),1)):au("",!0),Ve(n.$slots,"default",{},()=>[Ce("p",nC,Mu(e.text),1)],!0)])],10,tC))}}),py=qu(iC,[["__scopeId","data-v-6be9fa31"]]),N3=Gm().detectLanguage();for(const e of[{language:"ar",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" لا يصلح كاسم مجلد.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" غير مسموح به كاسم مجلد']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" غير مسموح به داخل اسم مجلد.']},{msgid:"All files",msgstr:["كل الملفات"]},{msgid:"Choose",msgstr:["إختَر"]},{msgid:"Choose {file}",msgstr:["إختر {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["إختَر %n ملف","إختَر %n ملف","إختَر %n ملف","إختَر %n ملفات","إختَر %n ملف","إختر %n ملف"]},{msgid:"Copy",msgstr:["نسخ"]},{msgid:"Copy to {target}",msgstr:["نسخ إلى {target}"]},{msgid:"Could not create the new folder",msgstr:["تعذّر إنشاء المجلد الجديد"]},{msgid:"Could not load files settings",msgstr:["يتعذّر تحميل إعدادات الملفات"]},{msgid:"Could not load files views",msgstr:["تعذر تحميل عرض الملفات"]},{msgid:"Create directory",msgstr:["إنشاء مجلد"]},{msgid:"Current view selector",msgstr:["محدد العرض الحالي"]},{msgid:"Favorites",msgstr:["المفضلة"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["الملفات والمجلدات التي تحددها كمفضلة ستظهر هنا."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا."]},{msgid:"Filter file list",msgstr:["تصفية قائمة الملفات"]},{msgid:"Folder name cannot be empty.",msgstr:["اسم المجلد لا يمكن أن يكون فارغاً."]},{msgid:"Home",msgstr:["البداية"]},{msgid:"Modified",msgstr:["التعديل"]},{msgid:"Move",msgstr:["نقل"]},{msgid:"Move to {target}",msgstr:["نقل إلى {target}"]},{msgid:"Name",msgstr:["الاسم"]},{msgid:"New",msgstr:["جديد"]},{msgid:"New folder",msgstr:["مجلد جديد"]},{msgid:"New folder name",msgstr:["اسم المجلد الجديد"]},{msgid:"No files in here",msgstr:["لا توجد ملفات هنا"]},{msgid:"No files matching your filter were found.",msgstr:["لا توجد ملفات تتطابق مع عامل التصفية الذي وضعته"]},{msgid:"No matching files",msgstr:["لا توجد ملفات مطابقة"]},{msgid:"Recent",msgstr:["الحالي"]},{msgid:"Select all entries",msgstr:["حدد جميع الإدخالات"]},{msgid:"Select entry",msgstr:["إختَر المدخل"]},{msgid:"Select the row for {nodename}",msgstr:["إختر سطر الـ {nodename}"]},{msgid:"Size",msgstr:["الحجم"]},{msgid:"Undo",msgstr:["تراجع"]},{msgid:"Upload some content or sync with your devices!",msgstr:["قم برفع بعض المحتوى أو المزامنة مع أجهزتك!"]}]},{language:"ast",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» ye un nome de carpeta inválidu."]},{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» ye un nome de carpeta inválidu"]},{msgid:'"/" is not allowed inside a folder name.',msgstr:["Nun se permite'l caráuter «/» dientro'l nome de les carpetes."]},{msgid:"All files",msgstr:["Tolos ficheros"]},{msgid:"Choose",msgstr:["Escoyer"]},{msgid:"Choose {file}",msgstr:["Escoyer «{ficheru}»"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoyer %n ficheru","Escoyer %n ficheros"]},{msgid:"Copy",msgstr:["Copiar"]},{msgid:"Copy to {target}",msgstr:["Copiar en: {target}"]},{msgid:"Could not create the new folder",msgstr:["Nun se pudo crear la carpeta"]},{msgid:"Could not load files settings",msgstr:["Nun se pudo cargar la configuración de los ficheros"]},{msgid:"Could not load files views",msgstr:["Nun se pudieron cargar les vistes de los ficheros"]},{msgid:"Create directory",msgstr:["Crear un direutoriu"]},{msgid:"Current view selector",msgstr:["Selector de la vista actual"]},{msgid:"Favorites",msgstr:["Favoritos"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Equí apaecen los ficheros y les carpetes que metas en Favoritos."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Equí apaecen los fichero y les carpetes que modificares apocayá."]},{msgid:"Filter file list",msgstr:["Peñerar la llista de ficheros"]},{msgid:"Folder name cannot be empty.",msgstr:["El nome de la carpeta nun pue tar baleru."]},{msgid:"Home",msgstr:["Aniciu"]},{msgid:"Modified",msgstr:["Modificóse"]},{msgid:"Move",msgstr:["Mover"]},{msgid:"Move to {target}",msgstr:["Mover a {target}"]},{msgid:"Name",msgstr:["Nome"]},{msgid:"New",msgstr:["Nuevu"]},{msgid:"New folder",msgstr:["Carpeta nueva"]},{msgid:"New folder name",msgstr:["Nome de carpeta nuevu"]},{msgid:"No files in here",msgstr:["Equí nun hai nengún ficheru"]},{msgid:"No files matching your filter were found.",msgstr:["Nun s'atopó nengún ficheru que concasare cola peñera."]},{msgid:"No matching files",msgstr:["Nun hai nengún ficheru que concase"]},{msgid:"Recent",msgstr:["De recién"]},{msgid:"Select all entries",msgstr:["Seleicionar toles entraes"]},{msgid:"Select entry",msgstr:["Seleicionar la entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Seleicionar la filera de: {nodename}"]},{msgid:"Size",msgstr:["Tamañu"]},{msgid:"Undo",msgstr:["Desfacer"]},{msgid:"Upload some content or sync with your devices!",msgstr:["¡Xubi dalgún elementu o sincroniza colos tos preseos!"]}]},{language:"ca",translations:[{msgid:'"{char}" is not allowed inside a name.',msgstr:[`No és permès d'usar el caràcter "{char}" en un nom.`]},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" no és un nom permès.']},{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" no és vàlid com a nom de carpeta.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no és vàlid com a nom de carpeta']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" és un mot reservat i no està permès com a nom.']},{msgid:'"/" is not allowed inside a folder name.',msgstr:[`"/" no està permès en el nom d'una carpeta.`]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n conflicte de fitxers","%n conflictes de fitxers"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n onflicte de fitxers a {dirname}","%n conflictes de fitxers a {dirname}"]},{msgid:"All files",msgstr:["Tots els fitxers"]},{msgid:"Cancel",msgstr:["Cancel·lar"]},{msgid:"Cancel the entire operation",msgstr:["Cancel·lar tota l'operació"]},{msgid:"Choose",msgstr:["Tria"]},{msgid:"Choose {file}",msgstr:["Tria {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Tria %n fitxer","Tria %n fitxers"]},{msgid:"Confirm",msgstr:["Confirma"]},{msgid:"Continue",msgstr:["Continuar"]},{msgid:"Copy",msgstr:["Copia"]},{msgid:"Copy to {target}",msgstr:["Copia a {target}"]},{msgid:"Could not create the new folder",msgstr:["No s'ha pogut crear la carpeta nova"]},{msgid:"Could not load files settings",msgstr:["No es poden carregar fitxers de configuració"]},{msgid:"Could not load files views",msgstr:["No es poden carregar fitxers de vistes"]},{msgid:"Create directory",msgstr:["Crea un directori"]},{msgid:"Current view selector",msgstr:["Selector de visualització actual"]},{msgid:"Enter your name",msgstr:["Escriviu el vostre nom"]},{msgid:"Existing version",msgstr:["Versió existent"]},{msgid:"Failed to set nickname.",msgstr:["No s'ha pogut desar el sobrenom."]},{msgid:"Favorites",msgstr:["Preferits"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Els fitxers i les carpetes recentment modificats es mostraran aquí."]},{msgid:"Filter file list",msgstr:["Filtrar llistat de fitxers"]},{msgid:"Folder name cannot be empty.",msgstr:["El nom de la carpeta no pot estar buit."]},{msgid:"Guest identification",msgstr:["Identificació com a convidat"]},{msgid:"Home",msgstr:["Inici"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si seleccioneu les dues versions, el fitxer entrant tindrà un número afegit al seu nom."]},{msgid:"Invalid name.",msgstr:["Nom no vàlid."]},{msgid:"Last modified date unknown",msgstr:["Data de l'última modificació desconeguda"]},{msgid:"Modified",msgstr:["Data de modificació"]},{msgid:"Move",msgstr:["Desplaça"]},{msgid:"Move to {target}",msgstr:["Desplaça a {target}"]},{msgid:"Name",msgstr:["Nom"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Els noms poden tenir com a màxim 64 caràcters."]},{msgid:"Names must not be empty.",msgstr:["Els noms no poden ser buits."]},{msgid:'Names must not end with "{extension}".',msgstr:[`Els noms no poden acabar amb l'extensió "{extension}".`]},{msgid:"Names must not start with a dot.",msgstr:["Els noms no poden començar amb un punt."]},{msgid:"New",msgstr:["Crea"]},{msgid:"New folder",msgstr:["Carpeta nova"]},{msgid:"New folder name",msgstr:["Nom de la carpeta nova"]},{msgid:"New version",msgstr:["Nova versió"]},{msgid:"No files in here",msgstr:["No hi ha cap fitxer"]},{msgid:"No files matching your filter were found.",msgstr:["No s'ha trobat cap fitxer que coincideixi amb el filtre."]},{msgid:"No matching files",msgstr:["No hi ha cap fitxer que coincideixi"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Si us plau, escriu un nom amb 2 caràcters com a mínim."]},{msgid:"Recent",msgstr:["Recents"]},{msgid:"Select all checkboxes",msgstr:["Selecciona totes les caselles de selecció"]},{msgid:"Select all entries",msgstr:["Selecciona totes les entrades"]},{msgid:"Select all existing files",msgstr:["Selecciona tots els fitxers existents"]},{msgid:"Select all new files",msgstr:["Selecciona tots els fitxers nous"]},{msgid:"Select entry",msgstr:["Selecciona l'entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Selecciona la fila per a {nodename}"]},{msgid:"Size",msgstr:["Mida"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Omet %n fitxer","Omet %n fitxers"]},{msgid:"Skip this file",msgstr:["Omet aquest fitxer"]},{msgid:"Submit name",msgstr:["Entreu el nom"]},{msgid:"Undo",msgstr:["Desfés"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quan es selecciona una carpeta entrant, també se sobreescriuran els fitxers que hi entrin en conflicte."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quan es selecciona una carpeta entrant, el contingut s'escriu a la carpeta existent i es realitza una resolució recursiva de conflictes."]},{msgid:"Which files do you want to keep?",msgstr:["Quins fitxers voleu conservar?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Actualment se us mostra com a {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Actualment no esteu identificat."]},{msgid:"You cannot leave the name empty.",msgstr:["No podeu deixar el nom buit."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Heu de triar com a mínim una solució de conflicte"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Heu de seleccionar com a mínim una versió de cada fitxer per continuar."]}]},{language:"cs_CZ",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["znak „{char}“ není možné použít uvnitř názvu složky."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:["„{char}“ není možné použít uvnitř názvu."]},{msgid:'"{extension}" is not an allowed name.',msgstr:["„{extension}“ není možné použít jako název."]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["„{segment}“ je vyhrazeným názvem a není možné ho používat pro názvy složek."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["„{segment}“ je vyhrazeným názvem a není možné ho použít."]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n kolize souboru","%n kolize souborů","%n kolizí souborů","%n kolize souborů"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n kolize souborů v {dirname}","%n kolize souborů v {dirname}","%n kolizí souborů v {dirname}","%n kolize souborů v {dirname}"]},{msgid:"All files",msgstr:["Veškeré soubory"]},{msgid:"Cancel",msgstr:["Storno"]},{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},{msgid:"Choose",msgstr:["Zvolit"]},{msgid:"Choose {file}",msgstr:["Zvolit {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Zvolte %n soubor","Zvolte %n soubory","Zvolte %n souborů","Zvolte %n soubory"]},{msgid:"Confirm",msgstr:["Potvrdit"]},{msgid:"Continue",msgstr:["Pokračovat"]},{msgid:"Copy",msgstr:["Zkopírovat"]},{msgid:"Copy to {target}",msgstr:["Zkopírovat do {target}"]},{msgid:"Could not create the new folder",msgstr:["Novou složku se nepodařilo vytvořit"]},{msgid:"Could not load files settings",msgstr:["Nepodařilo se načíst nastavení pro soubory"]},{msgid:"Could not load files views",msgstr:["Nepodařilo se načíst pohledy souborů"]},{msgid:"Create directory",msgstr:["Vytvořit složku"]},{msgid:"Current view selector",msgstr:["Výběr stávajícího zobrazení"]},{msgid:"Enter your name",msgstr:["Zadejte své jméno"]},{msgid:"Existing version",msgstr:["Existující verze"]},{msgid:"Failed to set nickname.",msgstr:["Nepodařilo se nastavit přezdívku."]},{msgid:"Favorites",msgstr:["Oblíbené"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Zde se zobrazí soubory a složky, které označíte jako oblíbené."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Zde se zobrazí soubory a složky, které jste nedávno pozměnili."]},{msgid:"Filter file list",msgstr:["Filtrovat seznam souborů"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["Názvy složek nemohou končit na „{extension}“."]},{msgid:"Guest identification",msgstr:["Identifikace hosta"]},{msgid:"Home",msgstr:["Domů"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, pak k názvu příchozího souboru bude přidáno číslo."]},{msgid:"Invalid folder name.",msgstr:["Neplatný název složky."]},{msgid:"Invalid name.",msgstr:["Neplatný název."]},{msgid:"Last modified date unknown",msgstr:["Datum poslední změny neznámé"]},{msgid:"Modified",msgstr:["Změněno"]},{msgid:"Move",msgstr:["Přesounout"]},{msgid:"Move to {target}",msgstr:["Přesunout do {target}"]},{msgid:"Name",msgstr:["Název"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Je třeba, aby délka jmen nepřesahovala 64 znaků."]},{msgid:"Names must not be empty.",msgstr:["Názvy je třeba vyplnit."]},{msgid:'Names must not end with "{extension}".',msgstr:["Názvy nemohou končit na „{extension}“."]},{msgid:"Names must not start with a dot.",msgstr:["Názvy nemohou začínat tečkou."]},{msgid:"New",msgstr:["Nové"]},{msgid:"New folder",msgstr:["Nová složka"]},{msgid:"New folder name",msgstr:["Název pro novou složku"]},{msgid:"New version",msgstr:["Nová verze"]},{msgid:"No files in here",msgstr:["Nejsou zde žádné soubory"]},{msgid:"No files matching your filter were found.",msgstr:["Nenalezeny žádné soubory odpovídající vašemu filtru"]},{msgid:"No matching files",msgstr:["Žádné odpovídající soubory"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Zadejte jméno dlouhé alespoň 2 znaky."]},{msgid:"Recent",msgstr:["Nedávné"]},{msgid:"Select all checkboxes",msgstr:["Vybrat všechny zaškrtávací kolonky"]},{msgid:"Select all entries",msgstr:["Vybrat všechny položky"]},{msgid:"Select all existing files",msgstr:["Vybrat všechny existující soubory"]},{msgid:"Select all new files",msgstr:["Vybrat všechny nové soubory"]},{msgid:"Select entry",msgstr:["Vybrat položku"]},{msgid:"Select the row for {nodename}",msgstr:["Vybrat řádek pro {nodename}"]},{msgid:"Size",msgstr:["Velikost"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Přeskočit %n soubor","Přeskočit %n soubory","Přeskočit %n souborů","Přeskočit %n soubory"]},{msgid:"Skip this file",msgstr:["Přeskočit tento soubor"]},{msgid:"Submit name",msgstr:["Odeslat jméno"]},{msgid:"Undo",msgstr:["Zpět"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Pokud je vybrána příchozí složka, budou v ní také přepsány jakékoli kolidující soubory."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Když je vybrána příchozí složka, jakékoli soubory v ní budou také přepsány."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Pokud je vybrána příchozí složka, je obsah zapsán do existující složky a je provedeno rekurzivní vyřešení kolizí."]},{msgid:"Which files do you want to keep?",msgstr:["Které soubory chcete ponechat?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["V tuto chvíli jste identifikováni jako {nickname}."]},{msgid:"You are currently not identified.",msgstr:["V tuto chvíli nejste identifikovaní."]},{msgid:"You cannot leave the name empty.",msgstr:["Jméno nelze ponechat nevyplněné."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Je třeba zvolit alespoň jedno z řešení kolize"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}]},{language:"da",translations:[{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" er ikke tilladt i et navn.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" er ikke tilladt i et navn.']},{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldigt mappenavn.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tilladt mappenavn']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" er et reserveret navn og er derfor ikke tilladt.']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tilladt i et mappenavn.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n filkonflikt","%n filer konflikter"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n filkonflikt i {dirname}","%n filkonflikter i {dirname}"]},{msgid:"All files",msgstr:["Alle filer"]},{msgid:"Cancel",msgstr:["Fortryd"]},{msgid:"Cancel the entire operation",msgstr:["Annullér hele operationen"]},{msgid:"Choose",msgstr:["Vælg"]},{msgid:"Choose {file}",msgstr:["Vælg {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vælg %n fil","Vælg %n filer"]},{msgid:"Confirm",msgstr:["Bekræft"]},{msgid:"Continue",msgstr:["Fortsæt"]},{msgid:"Copy",msgstr:["Kopier"]},{msgid:"Copy to {target}",msgstr:["Kopier til {target}"]},{msgid:"Could not create the new folder",msgstr:["Kunne ikke oprette den nye mappe"]},{msgid:"Could not load files settings",msgstr:["Filindstillingerne kunne ikke indlæses"]},{msgid:"Could not load files views",msgstr:["Kunne ikke indlæse filvisninger"]},{msgid:"Create directory",msgstr:["Opret mappe"]},{msgid:"Current view selector",msgstr:["Aktuel visningsvælger"]},{msgid:"Enter your name",msgstr:["Indtast dit navn"]},{msgid:"Existing version",msgstr:["Eksisterende version"]},{msgid:"Failed to set nickname.",msgstr:["Forsøg på at gemme kaldenavn mislykkedes."]},{msgid:"Favorites",msgstr:["Favoritter"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper, du markerer som foretrukne, vises her."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper, du for nylig har ændret, vises her."]},{msgid:"Filter file list",msgstr:["Filtrer fil liste"]},{msgid:"Folder name cannot be empty.",msgstr:["Mappenavnet må ikke være tomt."]},{msgid:"Guest identification",msgstr:["Gæsteidentifikation"]},{msgid:"Home",msgstr:["Hjem"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn."]},{msgid:"Invalid name.",msgstr:["Ugyldigt navn."]},{msgid:"Last modified date unknown",msgstr:["Senest ændret dato ukendt"]},{msgid:"Modified",msgstr:["Ændret"]},{msgid:"Move",msgstr:["Flyt"]},{msgid:"Move to {target}",msgstr:["Flyt til {target}"]},{msgid:"Name",msgstr:["Navn"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Navne kan højst være 64 tegn lange."]},{msgid:"Names must not be empty.",msgstr:["Navne kan ikke være tomt."]},{msgid:'Names must not end with "{extension}".',msgstr:['Navne må ikke ende på "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Navne skal starte med et punktum."]},{msgid:"New",msgstr:["Ny"]},{msgid:"New folder",msgstr:["Ny mappe"]},{msgid:"New folder name",msgstr:["Ny mappe navn"]},{msgid:"New version",msgstr:["Ny version"]},{msgid:"No files in here",msgstr:["Ingen filer here"]},{msgid:"No files matching your filter were found.",msgstr:["Der blev ikke fundet nogen filer, der matcher dit filter."]},{msgid:"No matching files",msgstr:["Ingen matchende filer"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Indtast et navn med mindst 2 tegn."]},{msgid:"Recent",msgstr:["Seneste"]},{msgid:"Select all checkboxes",msgstr:["Markér alle afkrydsningsfelter"]},{msgid:"Select all entries",msgstr:["Vælg alle poster"]},{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},{msgid:"Select entry",msgstr:["Vælg post"]},{msgid:"Select the row for {nodename}",msgstr:["Vælg rækken for {nodenavn}"]},{msgid:"Size",msgstr:["Størelse"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Spring %n fil over","Spring %n filer over"]},{msgid:"Skip this file",msgstr:["Spring denne fil over"]},{msgid:"Submit name",msgstr:["Indsend navn"]},{msgid:"Undo",msgstr:["Fortryd"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Upload noget indhold eller synkroniser med dine enheder!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indkommende mappe er valgt, vil eventuelle modstridende filer i det også blive overskrevet."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en indkommende mappe er valgt, er indholdet skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres."]},{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du have?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Du er i øjeblikket identificeret som {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Du er ikke identificeret."]},{msgid:"You cannot leave the name empty.",msgstr:["Du kan ikke efterlade navnet tomt."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Du skal vælge mindst én konfliktløsning"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}]},{language:"de",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" ist innerhalb eines Ordnernamens nicht zulässig.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" ist innerhalb eines Namens nicht zulässig.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" ist kein zulässiger Name.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" ist ein reservierter Name und nicht zulässig für Ordnernamen.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" ist ein reservierter Name und nicht zulässig.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n Dateikonflikt","%n Dateikonflikte"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n Dateikonflikt in {dirname}","%n Dateikonflikte in {dirname}"]},{msgid:"All files",msgstr:["Alle Dateien"]},{msgid:"Cancel",msgstr:["Abbrechen"]},{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},{msgid:"Choose",msgstr:["Auswählen"]},{msgid:"Choose {file}",msgstr:["{file} auswählen"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},{msgid:"Confirm",msgstr:["Bestätigen"]},{msgid:"Continue",msgstr:["Fortsetzen"]},{msgid:"Copy",msgstr:["Kopieren"]},{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden"]},{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},{msgid:"Enter your name",msgstr:["Gib deinen Namen ein"]},{msgid:"Existing version",msgstr:["Vorhandene Version"]},{msgid:"Failed to set nickname.",msgstr:["Spitzname konnte nicht gespeichert werden."]},{msgid:"Favorites",msgstr:["Favoriten"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt."]},{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Ordnernamen dürfen nicht mit "{extension}" enden.']},{msgid:"Guest identification",msgstr:["Gast-Identifikation"]},{msgid:"Home",msgstr:["Home"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn beide Versionen ausgewählt werden, wird dem Namen der eingehenden Datei eine Nummer hinzugefügt."]},{msgid:"Invalid folder name.",msgstr:["Ungültiger Ordnername."]},{msgid:"Invalid name.",msgstr:["Ungültiger Name."]},{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},{msgid:"Modified",msgstr:["Geändert"]},{msgid:"Move",msgstr:["Verschieben"]},{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},{msgid:"Name",msgstr:["Name"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Namen dürfen maximal 64 Zeichen lang sein."]},{msgid:"Names must not be empty.",msgstr:["Namen dürfen nicht leer sein."]},{msgid:'Names must not end with "{extension}".',msgstr:['Namen dürfen nicht mit "{extension}" enden.']},{msgid:"Names must not start with a dot.",msgstr:["Namen dürfen nicht mit einem Punkt beginnen."]},{msgid:"New",msgstr:["Neu"]},{msgid:"New folder",msgstr:["Neuer Ordner"]},{msgid:"New folder name",msgstr:["Neuer Ordnername"]},{msgid:"New version",msgstr:["Neue Version"]},{msgid:"No files in here",msgstr:["Hier sind keine Dateien"]},{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die deinem Filter entsprechen."]},{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Bitte einen Namen mit mindestens zwei Zeichen eingeben."]},{msgid:"Recent",msgstr:["Neueste"]},{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},{msgid:"Select entry",msgstr:["Eintrag auswählen"]},{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},{msgid:"Size",msgstr:["Größe"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["%n Datei überspringen","%n Dateien überspringen"]},{msgid:"Skip this file",msgstr:["Diese Datei überspringen"]},{msgid:"Submit name",msgstr:["Namen senden"]},{msgid:"Undo",msgstr:["Rückgängig machen"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Lade Inhalte hoch oder synchronisiere diese mit deinen Geräten!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden auch alle darin enthaltenen Dateien mit Konflikten überschrieben."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden auch alle darin enthaltenen Dateien überschrieben."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien sollen behalten werden?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Du bist derzeit als {nickname} identifiziert."]},{msgid:"You are currently not identified.",msgstr:["Du bist momentan nicht identifiziert."]},{msgid:"You cannot leave the name empty.",msgstr:["Du kannst den Namen nicht leer lassen."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Es muss mindestens eine Konfliktlösung gewählt werden"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Es muss mindestens eine Version jeder Datei ausgewählt werden, um fortzufahren."]}]},{language:"de_DE",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" ist innerhalb eines Ordnernamens nicht zulässig.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" ist innerhalb eines Namens nicht zulässig.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" ist kein zulässiger Name.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" ist ein reservierter Name und nicht zulässig für Ordnernamen.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" ist ein reservierter Name und nicht zulässig.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n Dateikonflikt","%n Dateikonflikte"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n Dateikonflikt in {dirname}","%n Dateikonflikte in {dirname}"]},{msgid:"All files",msgstr:["Alle Dateien"]},{msgid:"Cancel",msgstr:["Abbrechen"]},{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},{msgid:"Choose",msgstr:["Auswählen"]},{msgid:"Choose {file}",msgstr:["{file} auswählen"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},{msgid:"Confirm",msgstr:["Bestätigen"]},{msgid:"Continue",msgstr:["Fortsetzen"]},{msgid:"Copy",msgstr:["Kopieren"]},{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden"]},{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},{msgid:"Enter your name",msgstr:["Geben Sie Ihren Namen ein"]},{msgid:"Existing version",msgstr:["Vorhandene Version"]},{msgid:"Failed to set nickname.",msgstr:["Spitzname konnte nicht gespeichert werden."]},{msgid:"Favorites",msgstr:["Favoriten"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt."]},{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Ordnernamen dürfen nicht mit "{extension}" enden.']},{msgid:"Guest identification",msgstr:["Gast-Identifikation"]},{msgid:"Home",msgstr:["Home"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn beide Versionen ausgewählt werden, wird dem Namen der eingehenden Datei eine Nummer hinzugefügt."]},{msgid:"Invalid folder name.",msgstr:["Ungültiger Ordnername."]},{msgid:"Invalid name.",msgstr:["Ungültiger Name."]},{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},{msgid:"Modified",msgstr:["Geändert"]},{msgid:"Move",msgstr:["Verschieben"]},{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},{msgid:"Name",msgstr:["Name"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Namen dürfen maximal 64 Zeichen lang sein."]},{msgid:"Names must not be empty.",msgstr:["Namen dürfen nicht leer sein."]},{msgid:'Names must not end with "{extension}".',msgstr:['Namen dürfen nicht mit "{extension}" enden.']},{msgid:"Names must not start with a dot.",msgstr:["Namen dürfen nicht mit einem Punkt beginnen."]},{msgid:"New",msgstr:["Neu"]},{msgid:"New folder",msgstr:["Neuer Ordner"]},{msgid:"New folder name",msgstr:["Neuer Ordnername"]},{msgid:"New version",msgstr:["Neue Version"]},{msgid:"No files in here",msgstr:["Hier sind keine Dateien"]},{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen."]},{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Bitte einen Namen mit mindestens zwei Zeichen eingeben."]},{msgid:"Recent",msgstr:["Neueste"]},{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},{msgid:"Select entry",msgstr:["Eintrag auswählen"]},{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},{msgid:"Size",msgstr:["Größe"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["%n Datei überspringen","%n Dateien überspringen"]},{msgid:"Skip this file",msgstr:["Diese Datei überspringen"]},{msgid:"Submit name",msgstr:["Namen senden"]},{msgid:"Undo",msgstr:["Rückgängig machen"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden auch alle darin enthaltenen Dateien mit Konflikten überschrieben."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden auch alle darin enthaltenen Dateien überschrieben."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien sollen behalten werden?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Sie sind derzeit als {nickname} identifiziert."]},{msgid:"You are currently not identified.",msgstr:["Sie sind momentan nicht identifiziert."]},{msgid:"You cannot leave the name empty.",msgstr:["Sie können den Namen nicht leer lassen."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Es muss mindestens eine Konfliktlösung gewählt werden"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Es muss mindestens eine Version jeder Datei ausgewählt werden, um fortzufahren."]}]},{language:"el",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["Το «{char}» δεν επιτρέπεται μέσα σε όνομα φακέλου."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" δεν επιτρέπεται μέσα σε ένα όνομα.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" δεν είναι επιτρεπτό όνομα.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["Το «{segment}» είναι ένα δεσμευμένο όνομα και δεν επιτρέπεται για ονόματα φακέλων."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" είναι ένα δεσμευμένο όνομα και δεν επιτρέπεται.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n σύγκρουση αρχείου","%n σύγκρουση αρχείων"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n σύγκρουση αρχείου στο {dirname}","%n σύγκρουση αρχείων στο {dirname}"]},{msgid:"All files",msgstr:["Όλα τα αρχεία"]},{msgid:"Cancel",msgstr:["Ακύρωση"]},{msgid:"Cancel the entire operation",msgstr:["Ακύρωση όλης της διαδικασίας"]},{msgid:"Choose",msgstr:["Επιλογή"]},{msgid:"Choose {file}",msgstr:["Επιλέξτε {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Επιλέξτε %n αρχείο","Επιλέξτε %n αρχεία"]},{msgid:"Confirm",msgstr:["Επιβεβαίωση"]},{msgid:"Continue",msgstr:["Συνέχεια"]},{msgid:"Copy",msgstr:["Αντιγραφή"]},{msgid:"Copy to {target}",msgstr:["Αντιγραφή στο {target}"]},{msgid:"Could not create the new folder",msgstr:["Αδυναμία δημιουργίας νέου φακέλου"]},{msgid:"Could not load files settings",msgstr:["Αδυναμία φόρτωσης ρυθμίσεων αρχείων"]},{msgid:"Could not load files views",msgstr:["Αδυναμία φόρτωσης προβολών αρχείων"]},{msgid:"Create directory",msgstr:["Δημιουργία καταλόγου"]},{msgid:"Current view selector",msgstr:["Επιλογέας τρέχουσας προβολής"]},{msgid:"Enter your name",msgstr:["Εισάγετε το όνομά σας"]},{msgid:"Existing version",msgstr:["Υφιστάμενη έκδοση"]},{msgid:"Failed to set nickname.",msgstr:["Αποτυχία στην ρύθμιση του ψευδώνυμου."]},{msgid:"Favorites",msgstr:["Αγαπημένα"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Τα αρχεία και οι φάκελοι που επισημάνετε ως αγαπημένα θα εμφανίζονται εδώ."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Τα αρχεία και οι φάκελοι που τροποποιήσατε πρόσφατα θα εμφανίζονται εδώ."]},{msgid:"Filter file list",msgstr:["Φιλτράρισμα λίστας αρχείων"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["Τα ονόματα των φακέλων δεν πρέπει να τελειώνουν με «{extension}»."]},{msgid:"Guest identification",msgstr:["Ταυτοποίηση επισκέπτη"]},{msgid:"Home",msgstr:["Αρχική"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Εάν επιλέξετε και τις δύο εκδόσεις, στο όνομα του εισερχόμενου αρχείου θα προστεθεί ένας αριθμός."]},{msgid:"Invalid folder name.",msgstr:["Μη έγκυρο όνομα φακέλου."]},{msgid:"Invalid name.",msgstr:["Μη έγκυρο όνομα."]},{msgid:"Last modified date unknown",msgstr:["Άγνωστη ημερομηνία τελευταίας τροποποίησης"]},{msgid:"Modified",msgstr:["Τροποποιήθηκε"]},{msgid:"Move",msgstr:["Μετακίνηση"]},{msgid:"Move to {target}",msgstr:["Μετακίνηση στο {target}"]},{msgid:"Name",msgstr:["Όνομα"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Τα ονόματα μπορούν να έχουν μέγιστο μήκος 64 χαρακτήρες."]},{msgid:"Names must not be empty.",msgstr:["Τα ονόματα δεν πρέπει να είναι κενά."]},{msgid:'Names must not end with "{extension}".',msgstr:['Τα ονόματα δεν πρέπει να τελειώνουν με "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Τα ονόματα δεν πρέπει να ξεκινούν με τελεία."]},{msgid:"New",msgstr:["Νέο"]},{msgid:"New folder",msgstr:["Νέος φάκελος"]},{msgid:"New folder name",msgstr:["Όνομα νέου φακέλου"]},{msgid:"New version",msgstr:["Νέα έκδοση"]},{msgid:"No files in here",msgstr:["Δεν υπάρχουν αρχεία εδώ"]},{msgid:"No files matching your filter were found.",msgstr:["Δεν βρέθηκαν αρχεία που να ταιριάζουν με το φίλτρο σας."]},{msgid:"No matching files",msgstr:["Κανένα αρχείο δεν ταιριάζει"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Παρακαλώ εισάγετε ένα όνομα με τουλάχιστον 2 χαρακτήρες."]},{msgid:"Recent",msgstr:["Πρόσφατα"]},{msgid:"Select all checkboxes",msgstr:["Επιλέξτε όλα τα πλαίσια ελέγχου"]},{msgid:"Select all entries",msgstr:["Επιλογή όλων των καταχωρήσεων"]},{msgid:"Select all existing files",msgstr:["Επιλογή όλων των υπάρχοντων αρχείων"]},{msgid:"Select all new files",msgstr:["Επιλογή όλων των νέων αρχείων"]},{msgid:"Select entry",msgstr:["Επιλογή εγγραφής"]},{msgid:"Select the row for {nodename}",msgstr:["Επιλέξτε τη γραμμή για το {nodename}"]},{msgid:"Size",msgstr:["Μέγεθος"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Παράλειψη ενός αρχείου","Παράλειψη %n αρχείων"]},{msgid:"Skip this file",msgstr:["Παράλειψη αυτού το αρχείου"]},{msgid:"Submit name",msgstr:["Υποβολή ονόματος"]},{msgid:"Undo",msgstr:["Αναίρεση"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Ανεβάστε κάποιο περιεχόμενο ή συγχρονίστε με τις συσκευές σας!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Όταν επιλέγεται ένας φάκελος εισερχομένων, όλα τα αρχεία που βρίσκονται σε σύγκρουση μέσα σε αυτόν θα αντικατασταθούν επίσης."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Όταν επιλέγεται ένας φάκελος εισερχομένων, το περιεχόμενο εγγράφεται στον υπάρχοντα φάκελο και εκτελείται μια αναδρομική επίλυση σύγκρουσης."]},{msgid:"Which files do you want to keep?",msgstr:["Ποια αρχεία θέλετε να διατηρήσετε;"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Αυτή τη στιγμή έχετε αναγνωριστεί ως {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Δεν έχετε ταυτοποιηθεί."]},{msgid:"You cannot leave the name empty.",msgstr:["Δεν μπορείτε να αφήσετε το όνομα κενό."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Πρέπει να επιλέξετε τουλάχιστον μία λύση σύγκρουσης"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Πρέπει να επιλέξετε τουλάχιστον μία έκδοση από κάθε αρχείο για να συνεχίσετε."]}]},{language:"en_GB",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" is not allowed inside a folder name.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" is not allowed inside a name.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" is not an allowed name.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" is a reserved name and cannot be used for folder names.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" is a reserved name and not allowed.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n file conflict","%n files conflict"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n file conflict in {dirname}","%n file conflicts in {dirname}"]},{msgid:"All files",msgstr:["All files"]},{msgid:"Cancel",msgstr:["Cancel"]},{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},{msgid:"Choose",msgstr:["Choose"]},{msgid:"Choose {file}",msgstr:["Choose {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choose %n file","Choose %n files"]},{msgid:"Confirm",msgstr:["Confirm"]},{msgid:"Continue",msgstr:["Continue"]},{msgid:"Copy",msgstr:["Copy"]},{msgid:"Copy to {target}",msgstr:["Copy to {target}"]},{msgid:"Could not create the new folder",msgstr:["Could not create the new folder"]},{msgid:"Could not load files settings",msgstr:["Could not load files settings"]},{msgid:"Could not load files views",msgstr:["Could not load files views"]},{msgid:"Create directory",msgstr:["Create directory"]},{msgid:"Current view selector",msgstr:["Current view selector"]},{msgid:"Enter your name",msgstr:["Enter your name"]},{msgid:"Existing version",msgstr:["Existing version"]},{msgid:"Failed to set nickname.",msgstr:["Failed to set nickname."]},{msgid:"Favorites",msgstr:["Favourites"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Files and folders you mark as favourite will show up here."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Files and folders you recently modified will show up here."]},{msgid:"Filter file list",msgstr:["Filter file list"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Folder names must not end with "{extension}".']},{msgid:"Guest identification",msgstr:["Guest identification"]},{msgid:"Home",msgstr:["Home"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},{msgid:"Invalid folder name.",msgstr:["Invalid folder name."]},{msgid:"Invalid name.",msgstr:["Invalid name."]},{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},{msgid:"Modified",msgstr:["Modified"]},{msgid:"Move",msgstr:["Move"]},{msgid:"Move to {target}",msgstr:["Move to {target}"]},{msgid:"Name",msgstr:["Name"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Names may be at most 64 characters long."]},{msgid:"Names must not be empty.",msgstr:["Names must not be empty."]},{msgid:'Names must not end with "{extension}".',msgstr:['Names must not end with "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Names must not start with a dot."]},{msgid:"New",msgstr:["New"]},{msgid:"New folder",msgstr:["New folder"]},{msgid:"New folder name",msgstr:["New folder name"]},{msgid:"New version",msgstr:["New version"]},{msgid:"No files in here",msgstr:["No files in here"]},{msgid:"No files matching your filter were found.",msgstr:["No files matching your filter were found."]},{msgid:"No matching files",msgstr:["No matching files"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Please enter a name with at least 2 characters."]},{msgid:"Recent",msgstr:["Recent"]},{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},{msgid:"Select all entries",msgstr:["Select all entries"]},{msgid:"Select all existing files",msgstr:["Select all existing files"]},{msgid:"Select all new files",msgstr:["Select all new files"]},{msgid:"Select entry",msgstr:["Select entry"]},{msgid:"Select the row for {nodename}",msgstr:["Select the row for {nodename}"]},{msgid:"Size",msgstr:["Size"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Skip %n file","Skip %n files"]},{msgid:"Skip this file",msgstr:["Skip this file"]},{msgid:"Submit name",msgstr:["Submit name"]},{msgid:"Undo",msgstr:["Undo"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Upload some content or sync with your devices!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any files within it will also be overwritten."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["You are currently identified as {nickname}."]},{msgid:"You are currently not identified.",msgstr:["You are currently not identified."]},{msgid:"You cannot leave the name empty.",msgstr:["You cannot leave the name empty."]},{msgid:"You need to choose at least one conflict solution",msgstr:["You need to choose at least one conflict solution"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}]},{language:"es",translations:[{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" no está permitido dentro de un nombre.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" no es un nombre permitido.']},{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta no válido.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" es un nombre reservado y no está permitido.']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido dentro del nombre de una carpeta.']},{msgid:"All files",msgstr:["Todos los archivos"]},{msgid:"Cancel",msgstr:["Cancelar"]},{msgid:"Choose",msgstr:["Seleccionar"]},{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elige %n archivo","Elige %n archivos","Seleccione %n archivos"]},{msgid:"Copy",msgstr:["Copiar"]},{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},{msgid:"Could not load files settings",msgstr:["No se pudieron cargar los ajustes de archivos"]},{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},{msgid:"Create directory",msgstr:["Crear directorio"]},{msgid:"Current view selector",msgstr:["Selector de vista actual"]},{msgid:"Enter your name",msgstr:["Ingrese su nombre"]},{msgid:"Failed to set nickname.",msgstr:["Fallo al establecer apodo."]},{msgid:"Favorites",msgstr:["Favoritos"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},{msgid:"Guest identification",msgstr:["Identificación de invitado"]},{msgid:"Home",msgstr:["Inicio"]},{msgid:"Invalid name.",msgstr:["Nombre inválido."]},{msgid:"Modified",msgstr:["Modificado"]},{msgid:"Move",msgstr:["Mover"]},{msgid:"Move to {target}",msgstr:["Mover a {target}"]},{msgid:"Name",msgstr:["Nombre"]},{msgid:"Names must not be empty.",msgstr:["Los nombres no deben estar vacíos."]},{msgid:'Names must not end with "{extension}".',msgstr:['Los nombres no deben terminar con "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Los nombres no deben iniciar con un punto."]},{msgid:"New",msgstr:["Nuevo"]},{msgid:"New folder",msgstr:[" Nueva carpeta"]},{msgid:"New folder name",msgstr:["Nuevo nombre de carpeta"]},{msgid:"No files in here",msgstr:["No hay archivos aquí"]},{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidiesen con su filtro."]},{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Por favor, ingrese un nombre con al menos 2 caracteres."]},{msgid:"Recent",msgstr:["Reciente"]},{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},{msgid:"Select entry",msgstr:["Seleccionar entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},{msgid:"Size",msgstr:["Tamaño"]},{msgid:"Submit name",msgstr:["Enviar nombre"]},{msgid:"Undo",msgstr:["Deshacer"]},{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Ud. se encuentra identificado actualmente como {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Ud. no se encuentra identificado actualmente."]},{msgid:"You cannot leave the name empty.",msgstr:["No puede dejar el nombre vacío."]}]},{language:"es_AR",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de una carpeta.']},{msgid:"All files",msgstr:["Todos los archivos"]},{msgid:"Choose",msgstr:["Elegir"]},{msgid:"Choose {file}",msgstr:["Elija {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elija %n archivo","Elija %n archivos","Elija %n archivos"]},{msgid:"Copy",msgstr:["Copiar"]},{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},{msgid:"Create directory",msgstr:["Crear directorio"]},{msgid:"Current view selector",msgstr:["Selector de vista actual"]},{msgid:"Favorites",msgstr:["Favoritos"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},{msgid:"Home",msgstr:["Inicio"]},{msgid:"Modified",msgstr:["Modificado"]},{msgid:"Move",msgstr:["Mover"]},{msgid:"Move to {target}",msgstr:["Mover a {target}"]},{msgid:"Name",msgstr:["Nombre"]},{msgid:"New",msgstr:["Nuevo"]},{msgid:"New folder",msgstr:["Nueva carpeta"]},{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},{msgid:"No files in here",msgstr:["No hay archivos aquí"]},{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},{msgid:"Recent",msgstr:["Reciente"]},{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},{msgid:"Select entry",msgstr:["Seleccionar entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},{msgid:"Size",msgstr:["Tamaño"]},{msgid:"Undo",msgstr:["Deshacer"]},{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}]},{language:"es_MX",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" no está permitido dentro de un nombre de carpeta']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" no está permitido dentro de un nombre']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" no es un nombre permitido']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" es un nombre reservado y no está permitido para nombres de carpetas']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" es un nombre reservado y no está permitido']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n conflicto de archivo","%n conflicto de archivos","%n conflicto de archivos"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n conflicto de archivo en {dirname}","%n conflictos de archivo en {dirname}","%n conflictos de archivo en {dirname}"]},{msgid:"All files",msgstr:["Todos los archivos"]},{msgid:"Cancel",msgstr:["Cancelar"]},{msgid:"Cancel the entire operation",msgstr:["Cancelar la operación completa"]},{msgid:"Choose",msgstr:["Seleccionar"]},{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleccionar %n archivo","Seleccionar %n archivos","Seleccionar %n archivos"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Continue",msgstr:["Continuar"]},{msgid:"Copy",msgstr:["Copiar"]},{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},{msgid:"Create directory",msgstr:["Crear carpeta"]},{msgid:"Current view selector",msgstr:["Selector de vista actual"]},{msgid:"Enter your name",msgstr:["Ingresa tu nombre"]},{msgid:"Existing version",msgstr:["Versión existente"]},{msgid:"Failed to set nickname.",msgstr:["No se pudo establecer el nickname"]},{msgid:"Favorites",msgstr:["Favoritos"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Los nombres para carpeta no deben terminar con "{extension}"']},{msgid:"Guest identification",msgstr:["Identificación de invitado"]},{msgid:"Home",msgstr:["Inicio"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si seleccionas ambas versiones, se le agregará al archivo que se está descargando, un número a su nombre."]},{msgid:"Invalid folder name.",msgstr:["Nombre de carpeta no válido"]},{msgid:"Invalid name.",msgstr:["Nombre no válido"]},{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},{msgid:"Modified",msgstr:["Modificado"]},{msgid:"Move",msgstr:["Mover"]},{msgid:"Move to {target}",msgstr:["Mover a {target}"]},{msgid:"Name",msgstr:["Nombre"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Los nombres pueden tener como máximo 64 caracteres."]},{msgid:"Names must not be empty.",msgstr:["Los nombres no deben estar vacíos."]},{msgid:'Names must not end with "{extension}".',msgstr:['Los nombres no deben terminar con "{extension}"']},{msgid:"Names must not start with a dot.",msgstr:["Los nombres no deben comenzar con un punto."]},{msgid:"New",msgstr:["Nuevo"]},{msgid:"New folder",msgstr:["Nueva carpeta"]},{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},{msgid:"New version",msgstr:["Versión nueva"]},{msgid:"No files in here",msgstr:["No hay archivos aquí"]},{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Por favor ingrese un nombre con al menos 2 caracteres."]},{msgid:"Recent",msgstr:["Reciente"]},{msgid:"Select all checkboxes",msgstr:["Seleccione todas las casillas de verificación"]},{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},{msgid:"Select all existing files",msgstr:["Seleccione todos los archivos que aparecen"]},{msgid:"Select all new files",msgstr:["Seleccione todos los archivos nuevos"]},{msgid:"Select entry",msgstr:["Seleccionar entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},{msgid:"Size",msgstr:["Tamaño"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Omitir %n archivo","Omitir %n archivos","Omitir %n archivos"]},{msgid:"Skip this file",msgstr:["Omitir este archivo"]},{msgid:"Submit name",msgstr:["Enviar nombre"]},{msgid:"Undo",msgstr:["Deshacer"]},{msgid:"Upload some content or sync with your devices!",msgstr:["¡Suba algún contenido o sincronice con sus dispositivos!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando se selecciona una carpeta en descarga, cualquier archivo conflictivo que contenga también se sobrescribirá."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando se selecciona una carpeta en descarga, el contenido se escribe en la carpeta existente y se realiza una resolución de conflicto recursiva."]},{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos deseas conservar?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Actualmente estás identificado como {nickname}"]},{msgid:"You are currently not identified.",msgstr:["No estás identificado actualmente."]},{msgid:"You cannot leave the name empty.",msgstr:["No puedes dejar el nombre vacío."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Necesitas elegir al menos una solución al conflicto."]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Necesitas seleccionar al menos una versión de cada archivo para continuar."]}]},{language:"et_EE",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["„{char}“ pole kausta nimes lubatud."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:["„{char}“ pole nimes lubatud."]},{msgid:'"{extension}" is not an allowed name.',msgstr:["„{extension}“ pole lubatud nimi."]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["„{segment}“ on reserveeritud nimi ja pole kausta nimes lubatud."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["„{segment}“ on reserveeritud nimi ja pole kasutamiseks lubatud."]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n fail on vastuolus","%n faili on omavahel vastuolus"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n fail on {dirname} kaustas vastuolus","%n faili on omavahel {dirname} kaustas vastuolus"]},{msgid:"All files",msgstr:["Kõik failid"]},{msgid:"Cancel",msgstr:["Katkesta"]},{msgid:"Cancel the entire operation",msgstr:["Katkesta kogu tegevus"]},{msgid:"Choose",msgstr:["Tee valik"]},{msgid:"Choose {file}",msgstr:["Vali {file} fail"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vali %n fail","Vali %n faili"]},{msgid:"Confirm",msgstr:["Kinnita"]},{msgid:"Continue",msgstr:["Jätka"]},{msgid:"Copy",msgstr:["Kopeeri"]},{msgid:"Copy to {target}",msgstr:["Kopeeri sihtkohta „{target}“"]},{msgid:"Could not create the new folder",msgstr:["Uue kausta loomine ei õnnestunud"]},{msgid:"Could not load files settings",msgstr:["Failide seadistusi ei õnnestunud laadida"]},{msgid:"Could not load files views",msgstr:["Failide vaatamiskordi ei õnnestunud laadida"]},{msgid:"Create directory",msgstr:["Loo kaust"]},{msgid:"Current view selector",msgstr:["Praeguse vaate valija"]},{msgid:"Enter your name",msgstr:["Sisesta oma nimi"]},{msgid:"Existing version",msgstr:["Olemasolev versioon"]},{msgid:"Failed to set nickname.",msgstr:["Hüüdnime sisestamine ei õnnestunud."]},{msgid:"Favorites",msgstr:["Lemmikud"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Failid ja kaustad, mida märgid lemmikuks, kuvatakse siin."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Siin kuvatakse hiljuti muudetud failid ja kaustad."]},{msgid:"Filter file list",msgstr:["Filtreeri faililoendit"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["Kausta nime lõpus ei tohi olla „{extension}“."]},{msgid:"Guest identification",msgstr:["Külalise tuvastamine"]},{msgid:"Home",msgstr:["Avaleht"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Kui valid mõlemad versioonid, siis uue faili nimele lisatakse number."]},{msgid:"Invalid folder name.",msgstr:["Vigane kausta nimi."]},{msgid:"Invalid name.",msgstr:["Vigane nimi."]},{msgid:"Last modified date unknown",msgstr:["Viimase muutmise kuupäev pole teada"]},{msgid:"Modified",msgstr:["Muudetud"]},{msgid:"Move",msgstr:["Teisalda"]},{msgid:"Move to {target}",msgstr:["Teisalda kausta „{target}“"]},{msgid:"Name",msgstr:["Nimi"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Nimed võivad olla vaid kuni 64 tähemärki pikad."]},{msgid:"Names must not be empty.",msgstr:["Nimi ei saa olla tühi."]},{msgid:'Names must not end with "{extension}".',msgstr:["Nime lõpus ei tohi olla „{extension}“."]},{msgid:"Names must not start with a dot.",msgstr:["Nime alguses ei tohi olla punkti."]},{msgid:"New",msgstr:["Uus"]},{msgid:"New folder",msgstr:["Uus kaust"]},{msgid:"New folder name",msgstr:["Uue kausta nimi"]},{msgid:"New version",msgstr:["Uus versioon"]},{msgid:"No files in here",msgstr:["Siin pole faile"]},{msgid:"No files matching your filter were found.",msgstr:["Sinu filtrile vastavaid faile ei leidunud."]},{msgid:"No matching files",msgstr:["Puuduvad sobivad failid"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Palun sisesta vähemalt 2 tähemärki pikk nimi."]},{msgid:"Recent",msgstr:["Hiljutine"]},{msgid:"Select all checkboxes",msgstr:["Vali kõik märkeruudud"]},{msgid:"Select all entries",msgstr:["Vali kõik kirjed"]},{msgid:"Select all existing files",msgstr:["Vali kõik olemasolevad failid"]},{msgid:"Select all new files",msgstr:["Vali kõik uued failid"]},{msgid:"Select entry",msgstr:["Vali kirje"]},{msgid:"Select the row for {nodename}",msgstr:["Vali rida „{nodename}“ jaoks"]},{msgid:"Size",msgstr:["Suurus"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Jäta %n fail vahele","Jäta %n faili vahele"]},{msgid:"Skip this file",msgstr:["Jäta see fail vahele"]},{msgid:"Submit name",msgstr:["Lisa nimi"]},{msgid:"Undo",msgstr:["Tühista"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Lisa mingit sisu või sünkrooni see oma seadmetest!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Kui uute failide kaust on valitud, siis kõik seal leiduvad vastuolus failid saavad üle kirjutatud."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Kui uute (saabuvate) failide kaust on valitud, siis kõik seal leiduvad failid saavad samuti üle kirjutatud."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Kui uute failide kaust on valitud, siis sisu kirjutatakse olemasolevasse kausta ja korraldatakse rekursiivne failikonfliktide lahendamine."]},{msgid:"Which files do you want to keep?",msgstr:["Missugused failid tahaksid alles jätta?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Sa oled hetkel tuvastatav kui {nickname}.."]},{msgid:"You are currently not identified.",msgstr:["Sa oled hetkel tuvastamata."]},{msgid:"You cannot leave the name empty.",msgstr:["Sa ei saa jätta nime tühjaks."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Sa pead valima vähemalt ühe failikonflikti lahenduse."]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Jätkamaks pead valima igast failist vähemalt ühe versiooni."]}]},{language:"fa",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} نام پوشه معتبر نیست"]},{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} نام پوشه مجاز نیست"]},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" نمی‌تواند در نام پوشه استفاده شود.']},{msgid:"All files",msgstr:["همه فایل‌ها"]},{msgid:"Cancel",msgstr:["لغو"]},{msgid:"Choose",msgstr:["انتخاب"]},{msgid:"Choose {file}",msgstr:["انتخاب {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["انتخاب %n فایل","انتخاب %n فایل"]},{msgid:"Copy",msgstr:["رونوشت"]},{msgid:"Copy to {target}",msgstr:["رونوشت از {target}"]},{msgid:"Could not create the new folder",msgstr:["پوشه جدید ایجاد نشد"]},{msgid:"Could not load files settings",msgstr:["تنظیمات فایل باز نشد"]},{msgid:"Could not load files views",msgstr:["نمای فایل‌ها بارگیری نشد"]},{msgid:"Create directory",msgstr:["ایجاد فهرست"]},{msgid:"Current view selector",msgstr:["انتخابگر نماگر فعلی"]},{msgid:"Enter your name",msgstr:["نام خود را وارد کنید"]},{msgid:"Failed to set nickname.",msgstr:["تنظیم نام مستعار ناموفق بود."]},{msgid:"Favorites",msgstr:["علایق"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند."]},{msgid:"Filter file list",msgstr:["فیلتر لیست فایل"]},{msgid:"Folder name cannot be empty.",msgstr:["نام پوشه نمی تواند خالی باشد."]},{msgid:"Guest identification",msgstr:["شناسایی مهمان"]},{msgid:"Home",msgstr:["خانه"]},{msgid:"Modified",msgstr:["اصلاح شده"]},{msgid:"Move",msgstr:["انتقال"]},{msgid:"Move to {target}",msgstr:["انتقال به {target}"]},{msgid:"Name",msgstr:["نام"]},{msgid:"New",msgstr:["جدید"]},{msgid:"New folder",msgstr:["پوشه جدید"]},{msgid:"New folder name",msgstr:["نام پوشه جدید"]},{msgid:"No files in here",msgstr:["فایلی اینجا نیست"]},{msgid:"No files matching your filter were found.",msgstr:["هیچ فایلی مطابق با فیلتر شما یافت نشد."]},{msgid:"No matching files",msgstr:["فایل منطبقی وجود ندارد"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["لطفاً نامی با حداقل ۲ کاراکتر وارد کنید."]},{msgid:"Recent",msgstr:["اخیر"]},{msgid:"Select all entries",msgstr:["انتخاب همه ورودی ها"]},{msgid:"Select entry",msgstr:["انتخاب ورودی"]},{msgid:"Select the row for {nodename}",msgstr:["انتخاب ردیف برای {nodename}"]},{msgid:"Size",msgstr:["اندازه"]},{msgid:"Submit name",msgstr:["ارسال نام"]},{msgid:"Undo",msgstr:["بازگردانی"]},{msgid:"Upload some content or sync with your devices!",msgstr:["مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!"]},{msgid:"You are currently not identified.",msgstr:["شما در حال حاضر شناسایی نشده‌اید."]},{msgid:"You cannot leave the name empty.",msgstr:["نمی‌توانید نام را خالی بگذارید."]}]},{language:"fi_FI",translations:[{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" ei ole sallittu nimessä.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" ei ole sallittu nimi.']},{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" on virheellinen kansion nimi.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ei ole sallittu kansion nimi']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" on varattu nimi eikä se ole sallittu.']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ei ole sallittu kansion nimessä.']},{msgid:"All files",msgstr:["Kaikki tiedostot"]},{msgid:"Cancel",msgstr:["Peruuta"]},{msgid:"Choose",msgstr:["Valitse"]},{msgid:"Choose {file}",msgstr:["Valitse {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Valitse %n tiedosto","Valitse %n tiedostoa"]},{msgid:"Copy",msgstr:["Kopioi"]},{msgid:"Copy to {target}",msgstr:["Kopioi sijaintiin {target}"]},{msgid:"Could not create the new folder",msgstr:["Uutta kansiota ei voitu luoda"]},{msgid:"Could not load files settings",msgstr:["Tiedoston asetuksia ei saa ladattua"]},{msgid:"Could not load files views",msgstr:["Tiedoston näkymiä ei saa ladattua"]},{msgid:"Create directory",msgstr:["Luo kansio"]},{msgid:"Current view selector",msgstr:["Nykyisen näkymän valinta"]},{msgid:"Enter your name",msgstr:["Kirjoita nimesi"]},{msgid:"Failed to set nickname.",msgstr:["Kutsumanimen asettaminen epäonnistui."]},{msgid:"Favorites",msgstr:["Suosikit"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä."]},{msgid:"Filter file list",msgstr:["Suodata tiedostolistaa"]},{msgid:"Folder name cannot be empty.",msgstr:["Kansion nimi ei voi olla tyhjä."]},{msgid:"Guest identification",msgstr:["Vieraan tunnistaminen"]},{msgid:"Home",msgstr:["Koti"]},{msgid:"Invalid name.",msgstr:["Virheellinen nimi."]},{msgid:"Modified",msgstr:["Muokattu"]},{msgid:"Move",msgstr:["Siirrä"]},{msgid:"Move to {target}",msgstr:["Siirrä sijaintiin {target}"]},{msgid:"Name",msgstr:["Nimi"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Nimissä voi olla enintään 64 merkkiä."]},{msgid:"Names must not be empty.",msgstr:["Nimet eivät saa olla tyhjiä."]},{msgid:'Names must not end with "{extension}".',msgstr:['Nimet eivät saa päättyä sanaan "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Nimet eivät saa alkaa pisteellä."]},{msgid:"New",msgstr:["Uusi"]},{msgid:"New folder",msgstr:["Uusi kansio"]},{msgid:"New folder name",msgstr:["Uuden kansion nimi"]},{msgid:"No files in here",msgstr:["Täällä ei ole tiedostoja"]},{msgid:"No files matching your filter were found.",msgstr:["Suodatinta vastaavia tiedostoja ei löytynyt."]},{msgid:"No matching files",msgstr:["Ei vastaavia tiedostoja"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Kirjoita vähintään kaksi merkkiä sisältävä nimi."]},{msgid:"Recent",msgstr:["Viimeisimmät"]},{msgid:"Select all entries",msgstr:["Valitse kaikki tietueet"]},{msgid:"Select entry",msgstr:["Valitse tietue"]},{msgid:"Select the row for {nodename}",msgstr:["Valitse rivi {nodename}:lle"]},{msgid:"Size",msgstr:["Koko"]},{msgid:"Submit name",msgstr:["Lähetä nimi"]},{msgid:"Undo",msgstr:["Kumoa"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Sinut tunnetaan tällä hetkellä nimellä {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Sinua ei ole tunnistettu."]},{msgid:"You cannot leave the name empty.",msgstr:["Nimeä ei voi jättää tyhjäksi."]}]},{language:"fr",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:[`"{char}" n'est pas autorisé dans un nom de dossier.`]},{msgid:'"{char}" is not allowed inside a name.',msgstr:[`"{char}" n'est pas autorisé dans un nom.`]},{msgid:'"{extension}" is not an allowed name.',msgstr:[`"{extension}" n'est pas un nom autorisé.`]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:[`"{segment}" est un nom réservé et n'est pas autorisé pour un nom de dossier.`]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:[`"{segment}" est un nom réservé et n'est pas autorisé.`]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n conflit de fichier","%n conflit de fichiers","%n conflit de fichiers"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%nconflit de fichier dans {dirname}","%n conflit de fichiers dans {dirname}","%nconflit de fichiers dans {dirname}"]},{msgid:"All files",msgstr:["Tous les fichiers"]},{msgid:"Cancel",msgstr:["Annuler"]},{msgid:"Cancel the entire operation",msgstr:["Tout annuler "]},{msgid:"Choose",msgstr:["Choisir"]},{msgid:"Choose {file}",msgstr:["Choisir {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choisir %n fichier","Choisir %n fichiers","Choisir %n fichiers "]},{msgid:"Confirm",msgstr:["Confirmer"]},{msgid:"Continue",msgstr:["Continuer"]},{msgid:"Copy",msgstr:["Copier"]},{msgid:"Copy to {target}",msgstr:["Copier vers {target}"]},{msgid:"Could not create the new folder",msgstr:["Impossible de créer le nouveau dossier"]},{msgid:"Could not load files settings",msgstr:["Les paramètres des fichiers n'ont pas pu être chargés"]},{msgid:"Could not load files views",msgstr:["Impossible de charger les vues des fichiers"]},{msgid:"Create directory",msgstr:["Créer un répertoire"]},{msgid:"Current view selector",msgstr:["Sélecteur d'affichage actuel"]},{msgid:"Enter your name",msgstr:["Entrez votre nom"]},{msgid:"Existing version",msgstr:["Version actuelle "]},{msgid:"Failed to set nickname.",msgstr:["Échec de définition du surnom."]},{msgid:"Favorites",msgstr:["Favoris"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Les fichiers et répertoires marqués en favoris apparaîtront ici."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Les fichiers et répertoires modifiés récemment apparaîtront ici."]},{msgid:"Filter file list",msgstr:["Filtrer la liste des fichiers"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Les noms de dossiers ne doivent pas se terminer par "{extension}".']},{msgid:"Guest identification",msgstr:["Identification d'invité"]},{msgid:"Home",msgstr:["Accueil"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si vous conservez les deux versions, le fichier reçu sera renommé avec un numéro."]},{msgid:"Invalid folder name.",msgstr:["Nom de dossier invalide."]},{msgid:"Invalid name.",msgstr:["Nom invalide."]},{msgid:"Last modified date unknown",msgstr:["Date de modification inconnue"]},{msgid:"Modified",msgstr:["Modifié"]},{msgid:"Move",msgstr:["Déplacer"]},{msgid:"Move to {target}",msgstr:["Déplacer vers {target}"]},{msgid:"Name",msgstr:["Nom"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Les noms peuvent comporter au maximum 64 caractères."]},{msgid:"Names must not be empty.",msgstr:["Les noms ne peuvent pas être vides."]},{msgid:'Names must not end with "{extension}".',msgstr:['Les noms ne doivent pas se terminer par "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Les noms ne peuvent pas commencer par un point."]},{msgid:"New",msgstr:["Nouveau"]},{msgid:"New folder",msgstr:["Nouveau dossier"]},{msgid:"New folder name",msgstr:["Nom du nouveau dossier"]},{msgid:"New version",msgstr:["Nouvelle version"]},{msgid:"No files in here",msgstr:["Aucun fichier ici"]},{msgid:"No files matching your filter were found.",msgstr:["Aucun fichier trouvé correspondant à votre filtre."]},{msgid:"No matching files",msgstr:["Aucun fichier correspondant"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Veuillez entrer un nom avec au moins 2 caractères."]},{msgid:"Recent",msgstr:["Récents"]},{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},{msgid:"Select all entries",msgstr:["Tout sélectionner"]},{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},{msgid:"Select entry",msgstr:["Sélectionner une entrée"]},{msgid:"Select the row for {nodename}",msgstr:["Sélectionner la ligne correspondant à {nodename}"]},{msgid:"Size",msgstr:["Taille"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Ignorer %n fichier","Ignorer %n fichiers ","Ignorer %n fichiers "]},{msgid:"Skip this file",msgstr:["Ignorer ce fichier"]},{msgid:"Submit name",msgstr:["Envoyer le nom"]},{msgid:"Undo",msgstr:["Annuler"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Chargez du contenu ou synchronisez avec vos équipements !"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["En sélectionnant un dossier entrant, les fichiers en conflit qu’il contient seront automatiquement écrasés."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Suite à la sélection d'un dossier en entrée, tout fichier présent dans ce dossier sera alors écrasé. "]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Lorsque vous sélectionnez un dossier entrant, son contenu est ajouté au dossier existant et les conflits sont résolus automatiquement."]},{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Vous êtes actuellement identifié comme {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Vous n'êtes pas identifié actuellement."]},{msgid:"You cannot leave the name empty.",msgstr:["Vous ne pouvez pas laisser le nom vide."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Vous devez choisir au moins une option pour résoudre le conflit"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sélectionnez au moins une version de chaque fichier pour continuer."]}]},{language:"ga",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:[`Ní cheadaítear "{char}" laistigh d'ainm fillteáin.`]},{msgid:'"{char}" is not allowed inside a name.',msgstr:[`Ní cheadaítear "{char}" laistigh d'ainm.`]},{msgid:'"{extension}" is not an allowed name.',msgstr:['Ní ainm ceadaithe é "{extension}".']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:[`Is ainm curtha in áirithe é "{segment}" agus ní cheadaítear é d'ainmneacha fillteán.`]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['Is ainm curtha in áirithe é "{segment}" agus ní cheadaítear é.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n coimhlint comhaid","%n coimhlint comhad","%n coimhlint comhad","%n coimhlint comhad","%n coimhlint comhad"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n coimhlint comhaid i {dirname}","%n coimhlintí comhaid i {dirname}","%n coimhlintí comhaid i {dirname}","%n coimhlintí comhaid i {dirname}","%n coimhlintí comhaid i {dirname}"]},{msgid:"All files",msgstr:["Gach comhad"]},{msgid:"Cancel",msgstr:["Cealaigh"]},{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht ar fad"]},{msgid:"Choose",msgstr:["Roghnaigh"]},{msgid:"Choose {file}",msgstr:["Roghnaigh {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Roghnaigh %n comhad","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid"]},{msgid:"Confirm",msgstr:["Deimhnigh"]},{msgid:"Continue",msgstr:["Lean ar aghaidh"]},{msgid:"Copy",msgstr:["Cóip"]},{msgid:"Copy to {target}",msgstr:["Cóipeáil chuig {target}"]},{msgid:"Could not create the new folder",msgstr:["Níorbh fhéidir an fillteán nua a chruthú"]},{msgid:"Could not load files settings",msgstr:["Níorbh fhéidir socruithe comhaid a lódáil"]},{msgid:"Could not load files views",msgstr:["Níorbh fhéidir radhairc comhad a lódáil"]},{msgid:"Create directory",msgstr:["Cruthaigh eolaire"]},{msgid:"Current view selector",msgstr:["Roghnóir amhairc reatha"]},{msgid:"Enter your name",msgstr:["Cuir isteach d'ainm"]},{msgid:"Existing version",msgstr:["Leagan atá ann cheana féin"]},{msgid:"Failed to set nickname.",msgstr:["Theip ar leasainm a shocrú."]},{msgid:"Favorites",msgstr:["Ceanáin"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo."]},{msgid:"Filter file list",msgstr:["Scag liosta comhad"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Ní féidir ainmneacha fillteán a chríochnú le "{extension}".']},{msgid:"Guest identification",msgstr:["Aitheantas aoi"]},{msgid:"Home",msgstr:["Baile"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir le hainm an chomhaid atá ag teacht isteach."]},{msgid:"Invalid folder name.",msgstr:["Ainm fillteáin neamhbhailí."]},{msgid:"Invalid name.",msgstr:["Ainm neamhbhailí."]},{msgid:"Last modified date unknown",msgstr:["Dáta an athraithe dheireanaigh anaithnid"]},{msgid:"Modified",msgstr:["Athraithe"]},{msgid:"Move",msgstr:["Bog"]},{msgid:"Move to {target}",msgstr:["Bog go{target}"]},{msgid:"Name",msgstr:["Ainm"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Ní fhéadfaidh ainmneacha a bheith níos mó ná 64 carachtar ar fhad."]},{msgid:"Names must not be empty.",msgstr:["Ní féidir ainmneacha a bheith folamh."]},{msgid:'Names must not end with "{extension}".',msgstr:['Ní féidir ainmneacha a chríochnú le "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Ní mór ainmneacha a bheith ag tosú le ponc."]},{msgid:"New",msgstr:["Nua"]},{msgid:"New folder",msgstr:["Fillteán nua"]},{msgid:"New folder name",msgstr:["Ainm fillteáin nua"]},{msgid:"New version",msgstr:["Leagan nua"]},{msgid:"No files in here",msgstr:["Níl aon chomhaid istigh anseo"]},{msgid:"No files matching your filter were found.",msgstr:["Níor aimsíodh aon chomhad a tháinig le do scagaire."]},{msgid:"No matching files",msgstr:["Gan comhaid meaitseála"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Cuir isteach ainm ina bhfuil 2 charachtar ar a laghad."]},{msgid:"Recent",msgstr:["le déanaí"]},{msgid:"Select all checkboxes",msgstr:["Roghnaigh na boscaí seiceála go léir"]},{msgid:"Select all entries",msgstr:["Roghnaigh gach iontráil"]},{msgid:"Select all existing files",msgstr:["Roghnaigh na comhaid uile atá ann cheana"]},{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},{msgid:"Select entry",msgstr:["Roghnaigh iontráil"]},{msgid:"Select the row for {nodename}",msgstr:["Roghnaigh an ró do {nodename}"]},{msgid:"Size",msgstr:["Méid"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Léim %n comhad","Léim %n comhaid","Léim %n comhaid","Léim %n comhaid","Léim %n comhaid"]},{msgid:"Skip this file",msgstr:["Scipeáil an comhad seo"]},{msgid:"Submit name",msgstr:["Cuir isteach ainm"]},{msgid:"Undo",msgstr:["Cealaigh"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhaid choimhlinteacha ann a athscríobh freisin."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhaid laistigh de a athscríobh freisin."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach sa fhillteán atá ann cheana féin agus déantar réiteach coinbhleachta athchúrsach."]},{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Is é {nickname} an ainm atá ort faoi láthair."]},{msgid:"You are currently not identified.",msgstr:["Níl aitheantas tugtha duit faoi láthair."]},{msgid:"You cannot leave the name empty.",msgstr:["Ní féidir leat an t-ainm a fhágáil folamh."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Ní mór duit réiteach coinbhleachta amháin ar a laghad a roghnú"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú le leanúint ar aghaidh."]}]},{language:"gl",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["«{char}» non está permitido no nome dun cartafol."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:["«{char}» non está permitido dentro dun nome."]},{msgid:'"{extension}" is not an allowed name.',msgstr:["«{extension}» non é un nome permitido."]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["«{segment}» é un nome reservado e non está permitido para nomes de cartafoles."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["«{segment}» é un nome reservado e non está permitido."]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n ficheiro en conflito","%n ficheiros en conflito"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n ficheiro en conflito en {dirname}","%n ficheiros en conflito en {dirname}"]},{msgid:"All files",msgstr:["Todos os ficheiros"]},{msgid:"Cancel",msgstr:["Cancelar"]},{msgid:"Cancel the entire operation",msgstr:["Cancelar toda a operación"]},{msgid:"Choose",msgstr:["Escoller"]},{msgid:"Choose {file}",msgstr:["Escoller {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoller %n ficheiro","Escoller %n ficheiros"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Continue",msgstr:["Continuar"]},{msgid:"Copy",msgstr:["Copiar"]},{msgid:"Copy to {target}",msgstr:["Copiar en {target}"]},{msgid:"Could not create the new folder",msgstr:["Non foi posíbel crear o novo cartafol"]},{msgid:"Could not load files settings",msgstr:["Non foi posíbel cargar os axustes dos ficheiros"]},{msgid:"Could not load files views",msgstr:["Non foi posíbel cargar as vistas dos ficheiros"]},{msgid:"Create directory",msgstr:["Crear un directorio"]},{msgid:"Current view selector",msgstr:["Selector de vista actual"]},{msgid:"Enter your name",msgstr:["Introduza o seu nome"]},{msgid:"Existing version",msgstr:["Versión existente"]},{msgid:"Failed to set nickname.",msgstr:["Produciuse un fallo ao definir o alcume."]},{msgid:"Favorites",msgstr:["Favoritos"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os ficheiros e cartafoles que marque como favoritos aparecerán aquí."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Os ficheiros e cartafoles que modificou recentemente aparecerán aquí."]},{msgid:"Filter file list",msgstr:["Filtrar a lista de ficheiros"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["Os nomes de cartafol non deben rematar en «{extension}»."]},{msgid:"Guest identification",msgstr:["Identificación do convidado"]},{msgid:"Home",msgstr:["Inicio"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},{msgid:"Invalid folder name.",msgstr:["O nome de cartafol non é válido."]},{msgid:"Invalid name.",msgstr:["Nome incorrecto"]},{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},{msgid:"Modified",msgstr:["Modificado"]},{msgid:"Move",msgstr:["Mover"]},{msgid:"Move to {target}",msgstr:["Mover cara a {target}"]},{msgid:"Name",msgstr:["Nome"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Os nomes poden ter unha lonxitude máxima de 64 caracteres."]},{msgid:"Names must not be empty.",msgstr:["Os nomes non deben estar baleiros."]},{msgid:'Names must not end with "{extension}".',msgstr:["Os nomes non deben rematar en «{extension}»."]},{msgid:"Names must not start with a dot.",msgstr:["Os nomes non deben comezar cun punto."]},{msgid:"New",msgstr:["Novo"]},{msgid:"New folder",msgstr:["Novo cartafol"]},{msgid:"New folder name",msgstr:["Novo nome do cartafol"]},{msgid:"New version",msgstr:["Nova versión"]},{msgid:"No files in here",msgstr:["Aquí non hai ficheiros"]},{msgid:"No files matching your filter were found.",msgstr:["Non se atopou ningún ficheiro que coincida co filtro."]},{msgid:"No matching files",msgstr:["Non hai ficheiros coincidentes"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Introduza un nome con polo menos 2 caracteres."]},{msgid:"Recent",msgstr:["Recente"]},{msgid:"Select all checkboxes",msgstr:["Seleccionar todas as caixas"]},{msgid:"Select all entries",msgstr:["Seleccionar todas as entradas"]},{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},{msgid:"Select entry",msgstr:["Seleccionar a entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Seleccionar a fila para {nodename}"]},{msgid:"Size",msgstr:["Tamaño"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Omitir %n ficheiro","Omitir %n ficheiros"]},{msgid:"Skip this file",msgstr:["Omitir este ficheiro"]},{msgid:"Submit name",msgstr:["Enviar o nome"]},{msgid:"Undo",msgstr:["Desfacer"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Enviar algún contido ou sincronizalo cos seus dispositivos!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, todos os ficheiros conflitivos dentro dela tamén serán sobrescritos."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e realízase unha resolución recursiva de conflitos."]},{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Vde. está identificado actualmente como {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Vde. non está identificado actualmente."]},{msgid:"You cannot leave the name empty.",msgstr:["Vde. non pode deixar o nome baleiro."]},{msgid:"You need to choose at least one conflict solution",msgstr:["É necesario escoller polo menos unha solución de conflito"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["É necesario seleccionar polo menos unha versión de cada ficheiro para continuar."]}]},{language:"hr",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["Znak „{char}” nije dopušten u nazivu mape."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:["Znak „{char}” nije dopušten u nazivu."]},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" nije dopušten u nazivu.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" je rezervirana riječ i nije dopušten u nazivu mape.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" je rezervirana riječ i nije dopušten.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["Sukobljava se %n datoteka","Sukobljava se %n datoteke","Sukobljava se %n datoteke"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n sukob datoteka u {dirname}","%n sukoba datoteka u {dirname}","%n sukoba datoteka u {dirname}"]},{msgid:"All files",msgstr:["Sve datoteke"]},{msgid:"Cancel",msgstr:["Odustani"]},{msgid:"Cancel the entire operation",msgstr:["Odustani od cijele operacije"]},{msgid:"Choose",msgstr:["Odaberi"]},{msgid:"Choose {file}",msgstr:["Odaberi {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Odaberi %n datoteku","Odaberi %n datoteka","Odaberi %n datoteke"]},{msgid:"Confirm",msgstr:["Potvrdi"]},{msgid:"Continue",msgstr:["Nastavi"]},{msgid:"Copy",msgstr:["Kopiraj"]},{msgid:"Copy to {target}",msgstr:["Kopiraj u {target}"]},{msgid:"Could not create the new folder",msgstr:["Nije moguće stvoriti novu mapu"]},{msgid:"Could not load files settings",msgstr:["Nije moguće učitati postavke datoteka"]},{msgid:"Could not load files views",msgstr:["Nije moguće učitati prikaze datoteka"]},{msgid:"Create directory",msgstr:["Stvori mapu"]},{msgid:"Current view selector",msgstr:["Odabir trenutačnog prikaza"]},{msgid:"Enter your name",msgstr:["Unesite vaše ime"]},{msgid:"Existing version",msgstr:["Postojeća verzija"]},{msgid:"Failed to set nickname.",msgstr:["Neuspjelo postavljanje nadimka."]},{msgid:"Favorites",msgstr:["Favoriti"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Ovdje se prikazuju datoteke i mape koje ste označili kao favoriti."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Ovdje se prikazuju datoteke i mape koje ste nedavno ažurirali."]},{msgid:"Filter file list",msgstr:["Filtriranje liste datoteka"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Nazivi mapa ne smiju završiti sa "{extension}".']},{msgid:"Guest identification",msgstr:["Identifikacija gosta"]},{msgid:"Home",msgstr:["Naslovna"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ako odaberete obje verzije, dolaznoj datoteci bit će dodan broj u nazivu."]},{msgid:"Invalid folder name.",msgstr:["Neispavan naziv mape."]},{msgid:"Invalid name.",msgstr:["Neispravan naziv."]},{msgid:"Last modified date unknown",msgstr:["Nepoznat datum zadnjeg ažuriranja"]},{msgid:"Modified",msgstr:["Ažurirano"]},{msgid:"Move",msgstr:["Premjesti"]},{msgid:"Move to {target}",msgstr:["Premjesti u {target}"]},{msgid:"Name",msgstr:["Naziv"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Nazivi mogu imati najviše 64 znaka."]},{msgid:"Names must not be empty.",msgstr:["Nazivi ne smiju biti prazni."]},{msgid:'Names must not end with "{extension}".',msgstr:['Nazivi ne smiju završiti sa "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Nazivi ne smiju započinjati točkom."]},{msgid:"New",msgstr:["Novo"]},{msgid:"New folder",msgstr:["Nova mapa"]},{msgid:"New folder name",msgstr:["Novi naziv mape"]},{msgid:"New version",msgstr:["Nova verzija"]},{msgid:"No files in here",msgstr:["Ovdje nema datoteka"]},{msgid:"No files matching your filter were found.",msgstr:["Nisu pronađene datoteke koje odgovaraju vašem filtru."]},{msgid:"No matching files",msgstr:["Nema odgovarajućih datoteka."]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Unesite naziv s najmanje 2 znaka."]},{msgid:"Recent",msgstr:["Nedavno"]},{msgid:"Select all checkboxes",msgstr:["Označi sve potvrdne okvire"]},{msgid:"Select all entries",msgstr:["Označi sve stavke"]},{msgid:"Select all existing files",msgstr:["Označi sve postojeće datoteke"]},{msgid:"Select all new files",msgstr:["Označi sve nove datoteke"]},{msgid:"Select entry",msgstr:["Označi stavku"]},{msgid:"Select the row for {nodename}",msgstr:["Označi red za{nodename}"]},{msgid:"Size",msgstr:["Veličina"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Preskoči %n datoteku","Preskoči %n datoteke","Preskoči %n datoteke"]},{msgid:"Skip this file",msgstr:["Preskoči ovu datoteku"]},{msgid:"Submit name",msgstr:["Pošalji naziv"]},{msgid:"Undo",msgstr:["Poništi"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Prenesite neki sadržaj ili sinkronizirajte sa svojim uređajima!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Kada je odabrana dolazna mapa, sve datoteke unutar nje koje su u sukobu također će biti prepisane."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Kada je odabrana dolazna mapa, sadržaj se upisuje u postojeću mapu i provodi se rekurzivno rješavanje sukoba."]},{msgid:"Which files do you want to keep?",msgstr:["Koje datoteke želite zadržati?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Trenutno ste identificirani kao {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Trenutno niste identificirani."]},{msgid:"You cannot leave the name empty.",msgstr:["Ne možete ostaviti naziv prazan."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Morate odabrati barem jedno rješenje sukoba"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Morate odabrati barem jednu verziju svake datoteke kako biste nastavili."]}]},{language:"hu_HU",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["A(z) „{char}” nem engedélyezett egy mappanévben."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:["A(z) „{char}” nem engedélyezett egy névben."]},{msgid:'"{extension}" is not an allowed name.',msgstr:["A(z) „{extension}” nem engedélyezett név."]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["A(z) „{segment}” foglalt név, és nem engedélyezett a mappanevekben."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["A(z) „{segment}” foglalt név, és nem engedélyezett."]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n ütköző fájl","%n ütköző fájl"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n ütköző fájl ebben: {dirname}","%n ütköző fájl ebben: {dirname}"]},{msgid:"All files",msgstr:["Összes fájl"]},{msgid:"Cancel",msgstr:["Mégse"]},{msgid:"Cancel the entire operation",msgstr:["Egész művelet megszakítása"]},{msgid:"Choose",msgstr:["Kiválasztás"]},{msgid:"Choose {file}",msgstr:["{file} kiválasztása"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n fájl kiválasztása","%n fájl kiválasztása"]},{msgid:"Confirm",msgstr:["Megerősítés"]},{msgid:"Continue",msgstr:["Folytatás"]},{msgid:"Copy",msgstr:["Másolás"]},{msgid:"Copy to {target}",msgstr:["Másolás ide: {target}"]},{msgid:"Could not create the new folder",msgstr:["Nem lehet létrehozni az új mappát"]},{msgid:"Could not load files settings",msgstr:["Nem lehet betölteni a fájlok beállításait"]},{msgid:"Could not load files views",msgstr:["Nem lehet betölteni a fájlok nézeteit"]},{msgid:"Create directory",msgstr:["Mappa létrehozása"]},{msgid:"Current view selector",msgstr:["Jelenlegi nézet választója"]},{msgid:"Enter your name",msgstr:["Adja meg a nevét"]},{msgid:"Existing version",msgstr:["Meglévő verzió"]},{msgid:"Failed to set nickname.",msgstr:["Nem sikerült a becenév beállítása."]},{msgid:"Favorites",msgstr:["Kedvencek"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["A kedvencként megjelölt fájlok és mappák itt jelennek meg."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["A nemrég módosított fájlok és mappák itt jelennek meg."]},{msgid:"Filter file list",msgstr:["Fájllista szűrése"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["A mappanevek nem végződhetnek ezzel: „{extension}”."]},{msgid:"Guest identification",msgstr:["Vendégazonosítás"]},{msgid:"Home",msgstr:["Kezdőlap"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ha mindkét verziót választja, akkor a bejövő fájl nevéhez egy szám lesz hozzáfűzve."]},{msgid:"Invalid folder name.",msgstr:["Érvénytelen mappanév."]},{msgid:"Invalid name.",msgstr:["Érvénytelen név."]},{msgid:"Last modified date unknown",msgstr:["Legutóbbi módosítás ideje ismeretlen"]},{msgid:"Modified",msgstr:["Módosítva"]},{msgid:"Move",msgstr:["Áthelyezés"]},{msgid:"Move to {target}",msgstr:["Áthelyezés ide: {target}"]},{msgid:"Name",msgstr:["Név"]},{msgid:"Names may be at most 64 characters long.",msgstr:["A nevek legfeljebb 64 karakter hosszúak lehetnek."]},{msgid:"Names must not be empty.",msgstr:["A nevek nem lehetnek üresek."]},{msgid:'Names must not end with "{extension}".',msgstr:["A nevek nem végződhetnek ezzel: „{extension}”."]},{msgid:"Names must not start with a dot.",msgstr:["A nevek nem kezdődhetnek ponttal."]},{msgid:"New",msgstr:["Új"]},{msgid:"New folder",msgstr:["Új mappa"]},{msgid:"New folder name",msgstr:["Új mappa neve"]},{msgid:"New version",msgstr:["Új verzió"]},{msgid:"No files in here",msgstr:["Itt nincsenek fájlok"]},{msgid:"No files matching your filter were found.",msgstr:["Nincs a szűrési feltételeknek megfelelő fájl."]},{msgid:"No matching files",msgstr:["Nincs ilyen fájl"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Legalább 2 karakteres nevet adjon meg."]},{msgid:"Recent",msgstr:["Legutóbbi"]},{msgid:"Select all checkboxes",msgstr:["Összes jelölőmező bepipálása"]},{msgid:"Select all entries",msgstr:["Összes bejegyzés kijelölése"]},{msgid:"Select all existing files",msgstr:["Összes meglévő fájl kijelölése"]},{msgid:"Select all new files",msgstr:["Összes új fájl kijelölése"]},{msgid:"Select entry",msgstr:["Bejegyzés kijelölése"]},{msgid:"Select the row for {nodename}",msgstr:["Válasszon sort a következőnek: {nodename}"]},{msgid:"Size",msgstr:["Méret"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["%n fájl kihagyása","%n fájl kihagyása"]},{msgid:"Skip this file",msgstr:["Fájl kihagyása"]},{msgid:"Submit name",msgstr:["Név beküldése"]},{msgid:"Undo",msgstr:["Visszavonás"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Töltsön fel tartalmat, vagy szinkronizáljon az eszközeivel!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ha egy bejövő mappa van kijelölve, akkor a benne lévő ütköző fájlok is felül lesznek írva."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Amikor egy bejövő mappát kiválaszt, a benne lévő fájlok is felülíródnak."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ha egy bejövő mappa van kijelölve, akkor a tartalom a meglévő mappába lesz írva, és rekurzív ütközéskezelés lesz végezve."]},{msgid:"Which files do you want to keep?",msgstr:["Mely fájlokat akarja megtartani?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Jelenleg ekként van azonosítva: {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Jelenleg nincs azonosítva."]},{msgid:"You cannot leave the name empty.",msgstr:["A nevet nem hagyhatja üresen."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Legalább egy ütközéskezelési megoldást kell választania"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["A folytatáshoz az összes fájlnak legalább egy verzióját ki kell választania."]}]},{language:"hy",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} սխալ թղթապանակի անվանում է"]},{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} համարվում է անթույլատրելի թղթապանակի անվանում"]},{msgid:'"/" is not allowed inside a folder name.',msgstr:["/ չի թույլատրվում օգտագործել անվանման մեջ"]},{msgid:"All files",msgstr:["Բոլոր ֆայլերը"]},{msgid:"Choose",msgstr:["Ընտրել"]},{msgid:"Choose {file}",msgstr:["Ընտրել {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Ընտրել %n ֆայլ","Ընտրել %n ֆայլեր"]},{msgid:"Copy",msgstr:["Պատճենել"]},{msgid:"Copy to {target}",msgstr:["Պատճենել {target}"]},{msgid:"Could not create the new folder",msgstr:["Չստացվեց ստեղծել նոր թղթապանակը"]},{msgid:"Could not load files settings",msgstr:["Չստացվեց բեռնել ֆայլի կարգավորումները"]},{msgid:"Could not load files views",msgstr:["Չստացվեց բեռնել ֆայլերի դիտումները"]},{msgid:"Create directory",msgstr:["Ստեղծել դիրեկտորիա"]},{msgid:"Current view selector",msgstr:["Ընթացիկ դիտման ընտրիչ"]},{msgid:"Favorites",msgstr:["Նախընտրելիներ"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Այստեղ կցուցադրվեն այն ֆայլերն ու պանակները, որոնք դուք նշել եք որպես նախընտրելիներ:"]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Այստեղ կցուցադրվեն այն ֆայլերն ու պանակները, որոնք վերջերս փոխել եք:"]},{msgid:"Filter file list",msgstr:["Ֆիլտրել ֆայլերի ցուցակը"]},{msgid:"Folder name cannot be empty.",msgstr:["Թղթապանակի անունը չի կարող դատարկ լինել:"]},{msgid:"Home",msgstr:["Սկիզբ"]},{msgid:"Modified",msgstr:["Փոփոխված"]},{msgid:"Move",msgstr:["Տեղափոխել"]},{msgid:"Move to {target}",msgstr:["Տեղափոխել {target}"]},{msgid:"Name",msgstr:["Անուն"]},{msgid:"New",msgstr:["Նոր"]},{msgid:"New folder",msgstr:["Նոր թղթապանակ"]},{msgid:"New folder name",msgstr:["Նոր թղթապանակի անվանում"]},{msgid:"No files in here",msgstr:["Այստեղ չկան ֆայլեր"]},{msgid:"No files matching your filter were found.",msgstr:["Ձեր ֆիլտրին համապատասխանող ֆայլերը չեն գտնվել:"]},{msgid:"No matching files",msgstr:["Չկան համապատասխան ֆայլեր"]},{msgid:"Recent",msgstr:["Վերջին"]},{msgid:"Select all entries",msgstr:["Ընտրել բոլոր գրառումները"]},{msgid:"Select entry",msgstr:["Ընտրել բոլոր գրառումը"]},{msgid:"Select the row for {nodename}",msgstr:["Ընտրեք տողը {nodename}-ի համար "]},{msgid:"Size",msgstr:["Չափ"]},{msgid:"Undo",msgstr:["Ետարկել"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Ներբեռնեք որոշ բովանդակություն կամ համաժամացրեք այն ձեր սարքերի հետ:"]}]},{language:"id",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" tidak diizinkan di dalam nama folder.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" tidak diizinkan di dalam nama.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" bukan nama yang diizinkan.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" adalah nama yang dicadangkan dan tidak diizinkan untuk nama folder.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" adalah nama yang dicadangkan dan tidak diizinkan.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n konflik file"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n konflik file di {dirname}"]},{msgid:"All files",msgstr:["Semua berkas"]},{msgid:"Cancel",msgstr:["Batal"]},{msgid:"Cancel the entire operation",msgstr:["Batalkan seluruh operasi"]},{msgid:"Choose",msgstr:["Pilih"]},{msgid:"Choose {file}",msgstr:["Pilih {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Pilih %n file"]},{msgid:"Confirm",msgstr:["Konfirmasi"]},{msgid:"Continue",msgstr:["Lanjutkan"]},{msgid:"Copy",msgstr:["Salin"]},{msgid:"Copy to {target}",msgstr:["Salin ke {target}"]},{msgid:"Could not create the new folder",msgstr:["Tidak dapat membuat folder baru"]},{msgid:"Could not load files settings",msgstr:["Tidak dapat memuat pengaturan file"]},{msgid:"Could not load files views",msgstr:["Tidak dapat memuat tampilan file"]},{msgid:"Create directory",msgstr:["Buat direktori"]},{msgid:"Current view selector",msgstr:["Pemilih tampilan saat ini"]},{msgid:"Enter your name",msgstr:["Masukkan nama Anda"]},{msgid:"Existing version",msgstr:["Versi yang ada"]},{msgid:"Failed to set nickname.",msgstr:["Gagal menetapkan nama panggilan."]},{msgid:"Favorites",msgstr:["Favorit"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini."]},{msgid:"Filter file list",msgstr:["Saring daftar berkas"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Nama folder tidak boleh diakhiri dengan "{extension}".']},{msgid:"Guest identification",msgstr:["Identifikasi tamu"]},{msgid:"Home",msgstr:["Beranda"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, file yang masuk akan ditambahkan angka pada namanya."]},{msgid:"Invalid folder name.",msgstr:["Nama folder tidak valid."]},{msgid:"Invalid name.",msgstr:["Nama tidak valid."]},{msgid:"Last modified date unknown",msgstr:["Tanggal modifikasi terakhir tidak diketahui"]},{msgid:"Modified",msgstr:["Diubah"]},{msgid:"Move",msgstr:["Pindahkan"]},{msgid:"Move to {target}",msgstr:["Pindahkan ke {target}"]},{msgid:"Name",msgstr:["Nama"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Panjang nama maksimal 64 karakter."]},{msgid:"Names must not be empty.",msgstr:["Nama tidak boleh kosong."]},{msgid:'Names must not end with "{extension}".',msgstr:['Nama tidak boleh diakhiri dengan "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Nama tidak boleh diawali dengan titik."]},{msgid:"New",msgstr:["Baru"]},{msgid:"New folder",msgstr:["Folder baru"]},{msgid:"New folder name",msgstr:["Nama folder baru"]},{msgid:"New version",msgstr:["Versi baru"]},{msgid:"No files in here",msgstr:["Tidak ada berkas di sini"]},{msgid:"No files matching your filter were found.",msgstr:["Tidak ada berkas yang cocok dengan penyaringan Anda."]},{msgid:"No matching files",msgstr:["Tidak ada berkas yang cocok"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Silakan masukkan nama dengan minimal 2 karakter."]},{msgid:"Recent",msgstr:["Terkini"]},{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},{msgid:"Select all entries",msgstr:["Pilih semua entri"]},{msgid:"Select all existing files",msgstr:["Pilih semua file yang ada"]},{msgid:"Select all new files",msgstr:["Pilih semua file baru"]},{msgid:"Select entry",msgstr:["Pilih entri"]},{msgid:"Select the row for {nodename}",msgstr:["Pilih baris untuk {nodename}"]},{msgid:"Size",msgstr:["Ukuran"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Lewati %n file"]},{msgid:"Skip this file",msgstr:["Lewati file ini"]},{msgid:"Submit name",msgstr:["Kirim nama"]},{msgid:"Undo",msgstr:["Tidak jadi"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Unggah beberapa konten atau sinkronkan dengan perangkat Anda!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Saat folder yang masuk dipilih, semua file yang konflik di dalamnya juga akan ditimpa."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Saat folder yang masuk dipilih, konten ditulis ke dalam folder yang ada dan penyelesaian konflik rekursif dilakukan."]},{msgid:"Which files do you want to keep?",msgstr:["File mana yang ingin Anda pertahankan?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Saat ini Anda teridentifikasi sebagai {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Saat ini Anda tidak teridentifikasi."]},{msgid:"You cannot leave the name empty.",msgstr:["Anda tidak dapat membiarkan nama kosong."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Anda perlu memilih setidaknya satu solusi konflik"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda perlu memilih setidaknya satu versi dari setiap file untuk melanjutkan."]}]},{language:"is",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er ógilt möppuheiti.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ekki leyfilegt möppuheiti']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er er ekki leyfilegt innan í skráarheiti.']},{msgid:"All files",msgstr:["Allar skrár"]},{msgid:"Choose",msgstr:["Veldu"]},{msgid:"Choose {file}",msgstr:["Veldu {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Veldu %n skrá","Veldu %n skrár"]},{msgid:"Copy",msgstr:["Afrita"]},{msgid:"Copy to {target}",msgstr:["Afrita í {target}"]},{msgid:"Could not create the new folder",msgstr:["Get ekki búið til nýju möppuna"]},{msgid:"Could not load files settings",msgstr:["Tókst ekki að hlaða inn stillingum skráa"]},{msgid:"Could not load files views",msgstr:["Tókst ekki að hlaða inn sýnum skráa"]},{msgid:"Create directory",msgstr:["Búa til möppu"]},{msgid:"Current view selector",msgstr:["Núverandi val sýnar"]},{msgid:"Favorites",msgstr:["Eftirlæti"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Skrár og möppur sem þú merkir sem eftirlæti birtast hér."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Skrár og möppur sem þú breyttir nýlega birtast hér."]},{msgid:"Filter file list",msgstr:["Sía skráalista"]},{msgid:"Folder name cannot be empty.",msgstr:["Möppuheiti má ekki vera tómt."]},{msgid:"Home",msgstr:["Heim"]},{msgid:"Modified",msgstr:["Breytt"]},{msgid:"Move",msgstr:["Færa"]},{msgid:"Move to {target}",msgstr:["Færa í {target}"]},{msgid:"Name",msgstr:["Heiti"]},{msgid:"New",msgstr:["Nýtt"]},{msgid:"New folder",msgstr:["Ný mappa"]},{msgid:"New folder name",msgstr:["Heiti nýrrar möppu"]},{msgid:"No files in here",msgstr:["Engar skrár hér"]},{msgid:"No files matching your filter were found.",msgstr:["Engar skrár fundust sem passa við síuna."]},{msgid:"No matching files",msgstr:["Engar samsvarandi skrár"]},{msgid:"Recent",msgstr:["Nýlegt"]},{msgid:"Select all entries",msgstr:["Velja allar færslur"]},{msgid:"Select entry",msgstr:["Velja færslu"]},{msgid:"Select the row for {nodename}",msgstr:["Veldu röðina fyrir {nodename}"]},{msgid:"Size",msgstr:["Stærð"]},{msgid:"Undo",msgstr:["Afturkalla"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Sendu inn eitthvað efni eða samstilltu við tækin þín!"]}]},{language:"it",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:[`"{char}" non è consentito all'interno di un nome di cartella.`]},{msgid:'"{char}" is not allowed inside a name.',msgstr:[`"{char}" non è consentito all'interno di un nome.`]},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" non è un nome consentito']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" è un nome riservato e non consentito per i nomi delle cartelle.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" è un nome riservato e non consentito.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n file in conflitto","%n file in conflitto","%n file in conflitto"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n file in conflitto in {dirname}","%n file in conflitto in {dirname}","%n file in conflitto in {dirname}"]},{msgid:"All files",msgstr:["Tutti i file"]},{msgid:"Cancel",msgstr:["Annulla"]},{msgid:"Cancel the entire operation",msgstr:["Annulla l'intera operazione"]},{msgid:"Choose",msgstr:["Scegli"]},{msgid:"Choose {file}",msgstr:["Scegli {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Scegli %n file","Scegli %n file","Scegli %n file"]},{msgid:"Confirm",msgstr:["Conferma"]},{msgid:"Continue",msgstr:["Continua"]},{msgid:"Copy",msgstr:["Copia"]},{msgid:"Copy to {target}",msgstr:["Copia in {target}"]},{msgid:"Could not create the new folder",msgstr:["Impossibile creare la nuova cartella"]},{msgid:"Could not load files settings",msgstr:["Impossibile caricare le impostazioni dei file"]},{msgid:"Could not load files views",msgstr:["Impossibile caricare le visualizzazioni dei file"]},{msgid:"Create directory",msgstr:["Crea cartella"]},{msgid:"Current view selector",msgstr:["Selettore della vista attuale"]},{msgid:"Enter your name",msgstr:["Inserisci il tuo nome"]},{msgid:"Existing version",msgstr:["Versione esistente"]},{msgid:"Failed to set nickname.",msgstr:["Impossibile impostare lo pseudonimo."]},{msgid:"Favorites",msgstr:["Preferiti"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["I file e le cartelle contrassegnate come preferite saranno mostrate qui."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["I file e le cartelle che hai modificato di recente saranno mostrate qui."]},{msgid:"Filter file list",msgstr:["Filtra l'elenco dei file"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['I nomi delle cartelle devono finire con "{extension}".']},{msgid:"Guest identification",msgstr:["Identificazione ospiti"]},{msgid:"Home",msgstr:["Home"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, al nome del file in arrivo verrà aggiunto un numero."]},{msgid:"Invalid folder name.",msgstr:["Nome cartella non valido."]},{msgid:"Invalid name.",msgstr:["Nome non valido."]},{msgid:"Last modified date unknown",msgstr:["Data di ultima modifica sconosciuta"]},{msgid:"Modified",msgstr:["Modificato"]},{msgid:"Move",msgstr:["Sposta"]},{msgid:"Move to {target}",msgstr:["Sposta in {target}"]},{msgid:"Name",msgstr:["Nome"]},{msgid:"Names may be at most 64 characters long.",msgstr:["I nomi dovrebbero avere una lunghezza massima di 64 caratteri."]},{msgid:"Names must not be empty.",msgstr:["I nomi non devono essere vuoti."]},{msgid:'Names must not end with "{extension}".',msgstr:['I nomi devono finire con "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["I nomi non possono iniziare con un punto."]},{msgid:"New",msgstr:["Nuovo"]},{msgid:"New folder",msgstr:["Nuova cartella"]},{msgid:"New folder name",msgstr:["Nome della nuova cartella"]},{msgid:"New version",msgstr:["Nuova versione"]},{msgid:"No files in here",msgstr:["Nessun file qui"]},{msgid:"No files matching your filter were found.",msgstr:["Nessun file che corrisponde al tuo filtro è stato trovato."]},{msgid:"No matching files",msgstr:["Nessun file corrispondente"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Digita un nome con almeno 2 caratteri."]},{msgid:"Recent",msgstr:["Recente"]},{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},{msgid:"Select all entries",msgstr:["Scegli tutte le voci"]},{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},{msgid:"Select entry",msgstr:["Seleziona la voce"]},{msgid:"Select the row for {nodename}",msgstr:["Seleziona la riga per {nodename}"]},{msgid:"Size",msgstr:["Dimensioni"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Salta %n file","Salta %n file","Salta %n file"]},{msgid:"Skip this file",msgstr:["Salta questo file"]},{msgid:"Submit name",msgstr:["Invia nome"]},{msgid:"Undo",msgstr:["Annulla"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Carica qualche contenuto o sincronizza con i tuoi dispositivi!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno saranno sovrascritti."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Quando si seleziona una cartella in arrivo, anche i documenti all'interno verranno sovrascritti."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti."]},{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi conservare?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Sei attualmente identificato come {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Attualmente non sei identificato."]},{msgid:"You cannot leave the name empty.",msgstr:["Non puoi lasciare il nome vuoto."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Devi scegliere almeno una soluzione al conflitto"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Per continuare, è necessario selezionare almeno una versione di ciascun file."]}]},{language:"ja_JP",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['フォルダー名に "{char}" を使用することはできません。']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['名前に "{char}" を使用することはできません。']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" は許可された名前ではありません。']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" は予約名のため、使用できません。']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" は予約名のため、使用できません。']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%nファイルが競合しています"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%nディレクトリ{dirname}内のファイル競合"]},{msgid:"All files",msgstr:["すべてのファイル"]},{msgid:"Cancel",msgstr:["キャンセル"]},{msgid:"Cancel the entire operation",msgstr:["すべての操作をキャンセル"]},{msgid:"Choose",msgstr:["選択"]},{msgid:"Choose {file}",msgstr:["{file} を選択"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n 個のファイルを選択"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Continue",msgstr:["続行"]},{msgid:"Copy",msgstr:["コピー"]},{msgid:"Copy to {target}",msgstr:["{target} にコピー"]},{msgid:"Could not create the new folder",msgstr:["新しいフォルダーを作成できませんでした"]},{msgid:"Could not load files settings",msgstr:["ファイル設定を読み込めませんでした"]},{msgid:"Could not load files views",msgstr:["ファイルビューを読み込めませんでした"]},{msgid:"Create directory",msgstr:["ディレクトリを作成"]},{msgid:"Current view selector",msgstr:["現在のビュー選択"]},{msgid:"Enter your name",msgstr:["名前を入力してください"]},{msgid:"Existing version",msgstr:["現行バージョン"]},{msgid:"Failed to set nickname.",msgstr:["ニックネームの設定に失敗しました。"]},{msgid:"Favorites",msgstr:["お気に入り"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["お気に入りとしてマークしたファイルとフォルダーがここに表示されます。"]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["最近変更したファイルとフォルダーがここに表示されます。"]},{msgid:"Filter file list",msgstr:["ファイルのリストをフィルター"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['フォルダー名の末尾に "{extension}" を使用できません。']},{msgid:"Guest identification",msgstr:["ゲスト識別"]},{msgid:"Home",msgstr:["ホーム"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["両方のバージョンを選択した場合、受信ファイル名には番号が追加されます。"]},{msgid:"Invalid folder name.",msgstr:["フォルダー名が無効です。"]},{msgid:"Invalid name.",msgstr:["無効な名前です。"]},{msgid:"Last modified date unknown",msgstr:["最終更新日不明"]},{msgid:"Modified",msgstr:["変更済み"]},{msgid:"Move",msgstr:["移動"]},{msgid:"Move to {target}",msgstr:["{target} に移動"]},{msgid:"Name",msgstr:["名前"]},{msgid:"Names may be at most 64 characters long.",msgstr:["名前は最大64文字です。"]},{msgid:"Names must not be empty.",msgstr:["名前は空にできません。"]},{msgid:'Names must not end with "{extension}".',msgstr:['名前の末尾に "{extension}" を使用できません。']},{msgid:"Names must not start with a dot.",msgstr:["ドットで始まる名前は使用できません。"]},{msgid:"New",msgstr:["新規作成"]},{msgid:"New folder",msgstr:["新しいフォルダー"]},{msgid:"New folder name",msgstr:["新しいフォルダーの名前"]},{msgid:"New version",msgstr:["新バージョン"]},{msgid:"No files in here",msgstr:["ファイルがありません"]},{msgid:"No files matching your filter were found.",msgstr:["フィルターに一致するファイルは見つかりませんでした。"]},{msgid:"No matching files",msgstr:["一致するファイルはありません"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["名前は2文字以上を入力してください。"]},{msgid:"Recent",msgstr:["最近"]},{msgid:"Select all checkboxes",msgstr:["すべてのチェックボックスを選択"]},{msgid:"Select all entries",msgstr:["すべてのエントリを選択"]},{msgid:"Select all existing files",msgstr:["既存のファイルをすべて選択"]},{msgid:"Select all new files",msgstr:["すべての新規ファイルを選択"]},{msgid:"Select entry",msgstr:["エントリを選択"]},{msgid:"Select the row for {nodename}",msgstr:["{nodename} の行を選択"]},{msgid:"Size",msgstr:["サイズ"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["%n 個のファイルをスキップ"]},{msgid:"Skip this file",msgstr:["このファイルをスキップ"]},{msgid:"Submit name",msgstr:["名前を送信する"]},{msgid:"Undo",msgstr:["元に戻す"]},{msgid:"Upload some content or sync with your devices!",msgstr:["コンテンツをアップロードするか、デバイスと同期してください!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["受信フォルダーを選択すると、そのフォルダー内の競合ファイルも上書きされます。"]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["受信フォルダを選択すると、その中のファイルも上書きされます。"]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["受信フォルダーを選択すると、内容は既存のフォルダーに書き込まれ、再帰的な競合解決が実行されます。"]},{msgid:"Which files do you want to keep?",msgstr:["どのファイルを残しますか?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["現在、{nickname}として識別されています。"]},{msgid:"You are currently not identified.",msgstr:["現在あなたは識別されていません。"]},{msgid:"You cannot leave the name empty.",msgstr:["名前を空にすることはできません。"]},{msgid:"You need to choose at least one conflict solution",msgstr:["少なくとも1つの競合ソリューションを選択する必要があります"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["続行するには、各ファイルのバージョンを少なくとも1つ選択する必要があります。"]}]},{language:"ko",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["문자 '{char}'은(는) 폴더 이름에 사용할 수 없습니다."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:["문자 '{char}'은(는) 이름에 사용할 수 없습니다."]},{msgid:'"{extension}" is not an allowed name.',msgstr:["'{extension}'은(는) 사용 불가능한 이름입니다."]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["'{segment}'은(는) 예약된 이름이므로 폴더 이름으로 사용할 수 없습니다."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["'{segment}'은(는) 예약된 이름이므로 사용할 수 없습니다."]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n개의 파일이 충돌함"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["{dirname}에서 %n개의 파일이 충돌함"]},{msgid:"All files",msgstr:["모든 파일"]},{msgid:"Cancel",msgstr:["취소"]},{msgid:"Cancel the entire operation",msgstr:["전체 작업 취소"]},{msgid:"Choose",msgstr:["선택"]},{msgid:"Choose {file}",msgstr:["{file} 선택"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["파일 %n개 선택"]},{msgid:"Confirm",msgstr:["확인"]},{msgid:"Continue",msgstr:["계속"]},{msgid:"Copy",msgstr:["복사"]},{msgid:"Copy to {target}",msgstr:["{target}(으)로 복사"]},{msgid:"Could not create the new folder",msgstr:["새 폴더를 만들 수 없음"]},{msgid:"Could not load files settings",msgstr:["파일 설정을 불러오지 못함"]},{msgid:"Could not load files views",msgstr:["파일 보기를 불러오지 못함"]},{msgid:"Create directory",msgstr:["디렉토리 만들기"]},{msgid:"Current view selector",msgstr:["현재 보기 방식"]},{msgid:"Enter your name",msgstr:["이름을 입력하세요"]},{msgid:"Existing version",msgstr:["기존 버전"]},{msgid:"Failed to set nickname.",msgstr:[`닉네임을 설정하지 못했습니다. + `]},{msgid:"Favorites",msgstr:["즐겨찾기"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["즐겨찾기 한 파일 및 폴더가 이곳에 표시됩니다."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["최근 수정된 파일 및 폴더가 이곳에 표시됩니다."]},{msgid:"Filter file list",msgstr:["파일 목록 필터링"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["폴더 이름은 '{extension}'(으)로 끝날 수 없습니다."]},{msgid:"Guest identification",msgstr:["게스트 확인"]},{msgid:"Home",msgstr:["홈"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 버전을 모두 선택할 경우 새로 추가되는 파일의 이름에 숫자가 붙게 됩니다."]},{msgid:"Invalid folder name.",msgstr:["잘못된 폴더 이름입니다."]},{msgid:"Invalid name.",msgstr:["잘못된 이름입니다. "]},{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},{msgid:"Modified",msgstr:["수정됨"]},{msgid:"Move",msgstr:["이동"]},{msgid:"Move to {target}",msgstr:["{target}(으)로 이동"]},{msgid:"Name",msgstr:["이름"]},{msgid:"Names may be at most 64 characters long.",msgstr:["이름은 최대 64글자까지 지정할 수 있습니다."]},{msgid:"Names must not be empty.",msgstr:["이름은 비어 있을 수 없습니다."]},{msgid:'Names must not end with "{extension}".',msgstr:["이름은 '{extension}'(으)로 끝날 수 없습니다."]},{msgid:"Names must not start with a dot.",msgstr:["이름은 마침표로 시작될 수 없습니다."]},{msgid:"New",msgstr:["새로 만들기"]},{msgid:"New folder",msgstr:["새 폴더"]},{msgid:"New folder name",msgstr:["새 폴더명"]},{msgid:"New version",msgstr:["새로운 버전"]},{msgid:"No files in here",msgstr:["파일이 없습니다"]},{msgid:"No files matching your filter were found.",msgstr:["선택된 필터에 해당하는 파일이 없습니다."]},{msgid:"No matching files",msgstr:["해당하는 파일 없음"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["최소 두 글자 이상의 이름을 입력해주세요."]},{msgid:"Recent",msgstr:["최근"]},{msgid:"Select all checkboxes",msgstr:["체크박스 모두 선택"]},{msgid:"Select all entries",msgstr:["모두 선택"]},{msgid:"Select all existing files",msgstr:["기존 파일 모두 선택"]},{msgid:"Select all new files",msgstr:["새 파일 모두 선택"]},{msgid:"Select entry",msgstr:["항목 선택"]},{msgid:"Select the row for {nodename}",msgstr:["{nodename}의 행 선택"]},{msgid:"Size",msgstr:["크기"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["%n개 파일 건너뛰기"]},{msgid:"Skip this file",msgstr:["이 파일 건너뛰기"]},{msgid:"Submit name",msgstr:["이름 제출"]},{msgid:"Undo",msgstr:["되돌리기"]},{msgid:"Upload some content or sync with your devices!",msgstr:["기기에서 파일을 업로드 또는 동기화하세요!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["새 폴더를 선택할 경우, 해당 폴더 내의 충돌 파일들도 덮어쓰기 됩니다."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["새 폴더를 선택할 경우 내용물이 기존 폴더에 기록되며 재귀적 충돌 해결이 수행됩니다."]},{msgid:"Which files do you want to keep?",msgstr:["어떤 파일들을 유지하시겠습니까?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["{nickname}(으)로 인증된 상태 입니다."]},{msgid:"You are currently not identified.",msgstr:["현재 인증 정보가 없습니다."]},{msgid:"You cannot leave the name empty.",msgstr:["이름은 비워 둘 수 없습니다. "]},{msgid:"You need to choose at least one conflict solution",msgstr:["최소한 하나의 충돌 해결 방안을 선택해야 합니다."]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}]},{language:"lb",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} ass en ongëlteg Dossier"]},{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ass net en erlaabten Dossiernumm"]},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ass net an engem Dossier Numm erlaabt']},{msgid:"All files",msgstr:["All Dateien"]},{msgid:"Choose",msgstr:["Wielt"]},{msgid:"Choose {file}",msgstr:["Wielt {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wielt %n Fichieren","Wielt %n Fichier"]},{msgid:"Copy",msgstr:["Kopie"]},{msgid:"Copy to {target}",msgstr:["Kopie op {target}"]},{msgid:"Could not create the new folder",msgstr:["Konnt den neien Dossier net erstellen"]},{msgid:"Could not load files settings",msgstr:["Konnt d'Dateienastellungen net lueden"]},{msgid:"Could not load files views",msgstr:["Konnt d'Dateien net lueden"]},{msgid:"Create directory",msgstr:["Erstellt Verzeechnes"]},{msgid:"Current view selector",msgstr:["Aktuell Vue selector"]},{msgid:"Favorites",msgstr:["Favoritten"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen"]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op"]},{msgid:"Filter file list",msgstr:["Filter Datei Lëscht"]},{msgid:"Folder name cannot be empty.",msgstr:["Dossier Numm kann net eidel sinn"]},{msgid:"Home",msgstr:["Wëllkomm"]},{msgid:"Modified",msgstr:["Geännert"]},{msgid:"Move",msgstr:["Plënne"]},{msgid:"Move to {target}",msgstr:["Plënneren {target}"]},{msgid:"Name",msgstr:["Numm"]},{msgid:"New",msgstr:["Nei"]},{msgid:"New folder",msgstr:["Neien dossier"]},{msgid:"New folder name",msgstr:["Neien dossier numm"]},{msgid:"No files in here",msgstr:["Kee fichier hei"]},{msgid:"No files matching your filter were found.",msgstr:["Kee fichier deen äre filter passt gouf fonnt"]},{msgid:"No matching files",msgstr:["Keng passende dateien"]},{msgid:"Recent",msgstr:["Rezent"]},{msgid:"Select all entries",msgstr:["Wielt all entréen"]},{msgid:"Select entry",msgstr:["Wielt entrée"]},{msgid:"Select the row for {nodename}",msgstr:["Wielt d'zeil fir {nodename}"]},{msgid:"Size",msgstr:["Gréisst"]},{msgid:"Undo",msgstr:["Undoen"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Luet en inhalt erop oder synchroniséiert mat ären apparater"]}]},{language:"lo",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" ບໍ່ອະນຸຍາດໃຫ້ມີຢູ່ໃນຊື່ໂຟນເດີ.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['ບໍ່ອະນຸຍາດໃຫ້ມີ "{char}" ພາຍໃນຊື່.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" ບໍ່ແມ່ນຊື່ທີ່ໄດ້ຮັບອະນຸຍາດ.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" ແມ່ນຊື່ທີ່ສະຫງວນໄວ້ ແລະ ບໍ່ອະນຸຍາດໃຫ້ໃຊ້ເປັນຊື່ໂຟນເດີ.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" ແມ່ນຊື່ທີ່ສະຫງວນໄວ້ ແລະ ບໍ່ໄດ້ຮັບອະນຸຍາດ.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["ໄຟລ໌ຂັດກັນ %n ລາຍການ"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["ໄຟລ໌ຂັດກັນ %n ລາຍການໃນ {dirname}"]},{msgid:"All files",msgstr:["ໄຟລ໌ທັງໝົດ"]},{msgid:"Cancel",msgstr:["ຍົກເລີກ"]},{msgid:"Cancel the entire operation",msgstr:["ຍົກເລີກການດຳເນີນການທັງໝົດ"]},{msgid:"Choose",msgstr:["ເລືອກ"]},{msgid:"Choose {file}",msgstr:["ເລືອກ {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["ເລືອກ %n ໄຟລ໌"]},{msgid:"Confirm",msgstr:["ຢືນຢັນ"]},{msgid:"Continue",msgstr:["ດຳເນີນການຕໍ່"]},{msgid:"Copy",msgstr:["ຄັດລອກ"]},{msgid:"Copy to {target}",msgstr:["ຄັດລອກໄປທີ່ {target}"]},{msgid:"Could not create the new folder",msgstr:["ບໍ່ສາມາດສ້າງໂຟນເດີໃໝ່ໄດ້"]},{msgid:"Could not load files settings",msgstr:["ບໍ່ສາມາດໂຫຼດການຕັ້ງຄ່າໄຟລ໌ໄດ້"]},{msgid:"Could not load files views",msgstr:["ບໍ່ສາມາດໂຫຼດມຸມມອງໄຟລ໌ໄດ້"]},{msgid:"Create directory",msgstr:["ສ້າງໄດເຣັກທໍຣີ"]},{msgid:"Current view selector",msgstr:["ຕົວເລືອກມຸມມອງປັດຈຸບັນ"]},{msgid:"Enter your name",msgstr:["ປ້ອນຊື່ຂອງທ່ານ"]},{msgid:"Existing version",msgstr:["ເວີຊັນທີ່ມີຢູ່"]},{msgid:"Failed to set nickname.",msgstr:["ຕັ້ງຊື່ຫຼິ້ນບໍ່ສຳເລັດ."]},{msgid:"Favorites",msgstr:["ລາຍການທີ່ມັກ"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["ໄຟລ໌ ແລະ ໂຟນເດີທີ່ທ່ານໝາຍວ່າເປັນລາຍການທີ່ມັກຈະສະແດງຢູ່ບ່ອນນີ້."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["ໄຟລ໌ ແລະ ໂຟນເດີທີ່ທ່ານແກ້ໄຂລ່າສຸດຈະສະແດງຢູ່ບ່ອນນີ້."]},{msgid:"Filter file list",msgstr:["ກັ່ນຕອງລາຍການໄຟລ໌"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['ຊື່ໂຟນເດີຕ້ອງບໍ່ລົງທ້າຍດ້ວຍ "{extension}".']},{msgid:"Guest identification",msgstr:["ການລະບຸຕົວຕົນຂອງແຂກ"]},{msgid:"Home",msgstr:["ໜ້າຫຼັກ"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["ຖ້າທ່ານເລືອກທັງສອງເວີຊັນ, ໄຟລ໌ທີ່ເຂົ້າມາຈະມີຕົວເລກເພີ່ມໃສ່ຊື່ຂອງມັນ."]},{msgid:"Invalid folder name.",msgstr:["ຊື່ໂຟນເດີບໍ່ຖືກຕ້ອງ."]},{msgid:"Invalid name.",msgstr:["ຊື່ບໍ່ຖືກຕ້ອງ."]},{msgid:"Last modified date unknown",msgstr:["ບໍ່ຮູ້ວັນທີແກ້ໄຂລ່າສຸດ"]},{msgid:"Modified",msgstr:["ແກ້ໄຂເມື່ອ"]},{msgid:"Move",msgstr:["ຍ້າຍ"]},{msgid:"Move to {target}",msgstr:["ຍ້າຍໄປທີ່ {target}"]},{msgid:"Name",msgstr:["ຊື່"]},{msgid:"Names may be at most 64 characters long.",msgstr:["ຊື່ອາດມີຄວາມຍາວສູງສຸດ 64 ຕົວອັກສອນ."]},{msgid:"Names must not be empty.",msgstr:["ຊື່ຕ້ອງບໍ່ຫວ່າງເປົ່າ."]},{msgid:'Names must not end with "{extension}".',msgstr:['ຊື່ຕ້ອງບໍ່ລົງທ້າຍດ້ວຍ "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["ຊື່ຕ້ອງບໍ່ຂຶ້ນຕົ້ນດ້ວຍຈຸດ."]},{msgid:"New",msgstr:["ໃໝ່"]},{msgid:"New folder",msgstr:["ໂຟນເດີໃໝ່"]},{msgid:"New folder name",msgstr:["ຊື່ໂຟນເດີໃໝ່"]},{msgid:"New version",msgstr:["ເວີຊັນໃໝ່"]},{msgid:"No files in here",msgstr:["ບໍ່ມີໄຟລ໌ຢູ່ບ່ອນນີ້"]},{msgid:"No files matching your filter were found.",msgstr:["ບໍ່ພົບໄຟລ໌ທີ່ກົງກັບການກັ່ນຕອງຂອງທ່ານ."]},{msgid:"No matching files",msgstr:["ບໍ່ມີໄຟລ໌ທີ່ກົງກັນ"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["ກະລຸນາປ້ອນຊື່ທີ່ມີຢ່າງໜ້ອຍ 2 ຕົວອັກສອນ."]},{msgid:"Recent",msgstr:["ລ່າສຸດ"]},{msgid:"Select all checkboxes",msgstr:["ເລືອກກ່ອງໝາຍທັງໝົດ"]},{msgid:"Select all entries",msgstr:["ເລືອກທຸກລາຍການ"]},{msgid:"Select all existing files",msgstr:["ເລືອກໄຟລ໌ທີ່ມີຢູ່ທັງໝົດ"]},{msgid:"Select all new files",msgstr:["ເລືອກໄຟລ໌ໃໝ່ທັງໝົດ"]},{msgid:"Select entry",msgstr:["ເລືອກລາຍການ"]},{msgid:"Select the row for {nodename}",msgstr:["ເລືອກແຖວສຳລັບ {nodename}"]},{msgid:"Size",msgstr:["ຂະໜາດ"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["ຂ້າມ %n ໄຟລ໌"]},{msgid:"Skip this file",msgstr:["ຂ້າມໄຟລ໌ນີ້"]},{msgid:"Submit name",msgstr:["ສົ່ງຊື່"]},{msgid:"Undo",msgstr:["ເອົາຄືນ"]},{msgid:"Upload some content or sync with your devices!",msgstr:["ອັບໂຫຼດເນື້ອຫາ ຫຼື ຊິງຄ໌ກັບອຸປະກອນຂອງທ່ານ!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["ເມື່ອເລືອກໂຟນເດີທີ່ເຂົ້າມາ, ໄຟລ໌ໃດໆທີ່ຂັດກັນພາຍໃນໂຟນເດີນັ້ນກໍຈະຖືກຂຽນທັບເຊັ່ນກັນ."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["ເມື່ອເລືອກໂຟນເດີທີ່ເຂົ້າມາ, ເນື້ອຫາຈະຖືກຂຽນລົງໃນໂຟນເດີທີ່ມີຢູ່ ແລະ ຈະມີການແກ້ໄຂຂໍ້ຂັດແຍ່ງແບບຕໍ່ເນື່ອງ."]},{msgid:"Which files do you want to keep?",msgstr:["ທ່ານຕ້ອງການເກັບໄຟລ໌ໃດໄວ້?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["ຕອນນີ້ທ່ານຖືກລະບຸວ່າເປັນ {nickname}."]},{msgid:"You are currently not identified.",msgstr:["ຕອນນີ້ທ່ານຍັງບໍ່ໄດ້ຖືກລະບຸຕົວຕົນ."]},{msgid:"You cannot leave the name empty.",msgstr:["ທ່ານບໍ່ສາມາດປະຊື່ໃຫ້ຫວ່າງເປົ່າໄດ້."]},{msgid:"You need to choose at least one conflict solution",msgstr:["ທ່ານຈຳເປັນຕ້ອງເລືອກວິທີແກ້ໄຂຂໍ້ຂັດແຍ່ງຢ່າງໜ້ອຍໜຶ່ງຢ່າງ"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["ທ່ານຈຳເປັນຕ້ອງເລືອກຢ່າງໜ້ອຍໜຶ່ງເວີຊັນຂອງແຕ່ລະໄຟລ໌ເພື່ອດຳເນີນການຕໍ່."]}]},{language:"lt_LT",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["„{char}“ negalima naudoti aplanko pavadinime."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:["„{char}“ negalima naudoti vardo sudėtyje."]},{msgid:'"{extension}" is not an allowed name.',msgstr:["„{extension}“ nėra leidžiamas vardas."]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["„{segment}“ yra rezervuotas vardas, kurio negalima naudoti aplankų pavadinimuose."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["„{segment}“ yra rezervuotas vardas, todėl jo naudoti negalima."]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n failo konfliktas","%n failų konfliktas","%n failų konfliktas","%n failų konfliktas"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n failo konfliktas {dirname}","%n failų konfliktas {dirname}","%n failų konfliktas {dirname}","%n failų konfliktas {dirname}"]},{msgid:"All files",msgstr:["Visi failai"]},{msgid:"Cancel",msgstr:["Atsisakyti"]},{msgid:"Cancel the entire operation",msgstr:["Atsisakyti visos operacijos"]},{msgid:"Choose",msgstr:["Pasirinkti"]},{msgid:"Choose {file}",msgstr:["Pasirinkti {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Pasirinkti %n failą","Pasirinkti %n failus","Pasirinkti %n failų","Pasirinkti %n failą"]},{msgid:"Confirm",msgstr:["Patvirtinti"]},{msgid:"Continue",msgstr:["Tęsti"]},{msgid:"Copy",msgstr:["Kopijuoti"]},{msgid:"Copy to {target}",msgstr:["Kopijuoti į {target}"]},{msgid:"Could not create the new folder",msgstr:["Nepavyko sukurti naujo aplanko"]},{msgid:"Could not load files settings",msgstr:["Nepavyko įkelti failų nustatymų"]},{msgid:"Could not load files views",msgstr:["Nepavyko įkelti failų peržiūrų"]},{msgid:"Create directory",msgstr:["Sukurti katalogą"]},{msgid:"Current view selector",msgstr:["Dabartinis peržiūros pasirinkimas"]},{msgid:"Enter your name",msgstr:["Įrašykite savo vardą"]},{msgid:"Existing version",msgstr:["Esama versija"]},{msgid:"Failed to set nickname.",msgstr:["Nepavyko nustatyti slapyvardžio"]},{msgid:"Favorites",msgstr:["Populiariausi"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Failai ir aplankai, kuriuos pažymėsite kaip mėgstamiausius, bus rodomi čia."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Čia bus rodomi failai ir aplankai, kuriuos neseniai pakeitėte."]},{msgid:"Filter file list",msgstr:["Filtruoti failų sąrašą"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["Aplankų pavadinimai neturi baigtis simboliu „{extension}“."]},{msgid:"Guest identification",msgstr:["Svečio identifikacija"]},{msgid:"Home",msgstr:["Pradžia"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jei pasirinksite abi versijas, prie gaunamo failo pavadinimo bus pridėtas numeris."]},{msgid:"Invalid folder name.",msgstr:["Netinkamas aplanko pavadinimas."]},{msgid:"Invalid name.",msgstr:["Netinkamas pavadinimas."]},{msgid:"Last modified date unknown",msgstr:["Paskutinio atnaujinimo data nežinoma"]},{msgid:"Modified",msgstr:["Pakeista"]},{msgid:"Move",msgstr:["Perkelti"]},{msgid:"Move to {target}",msgstr:["Perkelti į {target}"]},{msgid:"Name",msgstr:["Vardas"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Vardų ilgis negali viršyti 64 simbolių."]},{msgid:"Names must not be empty.",msgstr:["Pavadinimai negali būti tušti."]},{msgid:'Names must not end with "{extension}".',msgstr:["Vardai neturi baigtis simboliu „{extension}“."]},{msgid:"Names must not start with a dot.",msgstr:["Vardai negali prasidėti tašku."]},{msgid:"New",msgstr:["Naujas"]},{msgid:"New folder",msgstr:["Naujas aplankas"]},{msgid:"New folder name",msgstr:["Naujas aplanko pavadinimas"]},{msgid:"New version",msgstr:["Nauja versija"]},{msgid:"No files in here",msgstr:["Čia failų nėra"]},{msgid:"No files matching your filter were found.",msgstr:["Nepavyko rasti failų pagal filtro nustatymus"]},{msgid:"No matching files",msgstr:["Nėra atitinkančių failų"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Įrašykite vardą iš mažiausiai dviejų ženklų."]},{msgid:"Recent",msgstr:["Nauji"]},{msgid:"Select all checkboxes",msgstr:["Pažymėti visus langelius"]},{msgid:"Select all entries",msgstr:["Žymėti visus įrašus"]},{msgid:"Select all existing files",msgstr:["Pažymėti visus esamus failus"]},{msgid:"Select all new files",msgstr:["Pažymėti visus naujus failus"]},{msgid:"Select entry",msgstr:["Žymėti įrašą"]},{msgid:"Select the row for {nodename}",msgstr:["Pasirinkite eilutę {nodename}"]},{msgid:"Size",msgstr:["Dydis"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Praleisti %n failą","Praleisti %n failus","Praleisti %n failų","Praleisti %n failą"]},{msgid:"Skip this file",msgstr:["Praleisti šį failą"]},{msgid:"Submit name",msgstr:["Pateikti pavadinimą"]},{msgid:"Undo",msgstr:["Atšaukti"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Įkelkite turinio arba sinchronizuokite su savo įrenginiais!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Pasirinkus įeinančių failų aplanką, jame esantys failai, su kuriais kyla konfliktas, taip pat bus perrašyti."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Pasirinkus gaunamų laiškų aplanką, visi jame esantys failai taip pat bus perrašyti."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Pasirinkus įeinančių failų aplanką, jo turinys įrašomas į esamą aplanką ir atliekamas rekursyvus konfliktų sprendimas."]},{msgid:"Which files do you want to keep?",msgstr:["Kokius failus norite išsaugoti?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Šiuo metu esate identifikuotas kaip {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Šiuo metu nesate identifikuotas."]},{msgid:"You cannot leave the name empty.",msgstr:["Negalite palikti tuščio vardo lauko."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Turite pasirinkti bent vieną konflikto sprendimo būdą"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Norėdami tęsti, turite pasirinkti bent vieną kiekvieno failo versiją."]}]},{language:"lv",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" nav derīgs mapes nosaukums.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nav atļauts mapes nosaukums']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nav atļauts mapes nosaukuma izmantošanā.']},{msgid:"All files",msgstr:["Visas datnes"]},{msgid:"Choose",msgstr:["Izvēlieties"]},{msgid:"Choose {file}",msgstr:["Izvēlieties {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izvēlēties %n datņu","Izvēlēties %n datni","Izvēlēties %n datnes"]},{msgid:"Copy",msgstr:["Kopēt"]},{msgid:"Copy to {target}",msgstr:["Kopēt uz {target}"]},{msgid:"Could not create the new folder",msgstr:["Nevarēja izveidot jaunu mapi"]},{msgid:"Could not load files settings",msgstr:["Nevarēja ielādēt datņu iestatījumus"]},{msgid:"Could not load files views",msgstr:["Nevarēja ielādēt datņu apskatījumus"]},{msgid:"Create directory",msgstr:["Izveidot direktoriju"]},{msgid:"Current view selector",msgstr:["Pašreizēja skata atlasītājs"]},{msgid:"Favorites",msgstr:["Favorīti"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Šeit parādīsies datnes un mapes, kas tiks atzīmētas kā iecienītas."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Šeit parādīsies datnes un mapes, kuras nesen tika izmainītas."]},{msgid:"Filter file list",msgstr:["Atlasīt datņu sarakstu"]},{msgid:"Folder name cannot be empty.",msgstr:["Mapes nosaukums nevar būt tukšs."]},{msgid:"Home",msgstr:["Sākums"]},{msgid:"Modified",msgstr:["Izmaninīta"]},{msgid:"Move",msgstr:["Pārvietot"]},{msgid:"Move to {target}",msgstr:["Pārvietot uz {target}"]},{msgid:"Name",msgstr:["Nosaukums"]},{msgid:"New",msgstr:["Jauns"]},{msgid:"New folder",msgstr:["Jauna mape"]},{msgid:"New folder name",msgstr:["Jaunas mapes nosaukums"]},{msgid:"No files in here",msgstr:["Šeit nav datņu"]},{msgid:"No files matching your filter were found.",msgstr:["Netika atrasta neviena datne, kas atbilst atlasei."]},{msgid:"No matching files",msgstr:["Nav atbilstošu datņu"]},{msgid:"Recent",msgstr:["Nesenās"]},{msgid:"Select all entries",msgstr:["Atlasīt visus ierakstus"]},{msgid:"Select entry",msgstr:["Atlasīt ierakstu"]},{msgid:"Select the row for {nodename}",msgstr:["Atlasīt rindu {nodename}"]},{msgid:"Size",msgstr:["Izmērs"]},{msgid:"Undo",msgstr:["Atsaukt"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Augšupielādē kādu saturu vai sinhronizē savās iekārtās!"]}]},{language:"mk",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" не е дозволен во име на папка.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" не е дозволено во име.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" не е дозволено име.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" е резервирано име и не е дозволено за име на папка.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" е резервирано име и не е дозволено.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n конфликт со датотекa","%n конфликти со датотеки"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n конфликт со датотека во {dirname}","%n конфликти со датотеки vo {dirname}"]},{msgid:"All files",msgstr:["Сите датотеки"]},{msgid:"Cancel",msgstr:["Откажи"]},{msgid:"Cancel the entire operation",msgstr:["Прекини ја целата операција"]},{msgid:"Choose",msgstr:["Избери"]},{msgid:"Choose {file}",msgstr:["Избери {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Избери %n датотека","Избери %n датотеки"]},{msgid:"Confirm",msgstr:["Потврди"]},{msgid:"Continue",msgstr:["Продолжи"]},{msgid:"Copy",msgstr:["Копирај"]},{msgid:"Copy to {target}",msgstr:["Копирај во {target}"]},{msgid:"Could not create the new folder",msgstr:["Неможе да се креира нова папка"]},{msgid:"Could not load files settings",msgstr:["Неможе да се вчиаат параметрите за датотеките"]},{msgid:"Could not load files views",msgstr:["Неможе да се вчитаат погледите за датотеките"]},{msgid:"Create directory",msgstr:["Креирај папка"]},{msgid:"Current view selector",msgstr:["Избирач на тековен приказ"]},{msgid:"Enter your name",msgstr:["Внесете го вашето име"]},{msgid:"Existing version",msgstr:["Моментална верзија"]},{msgid:"Failed to set nickname.",msgstr:["Неуспешно поставување прекар."]},{msgid:"Favorites",msgstr:["Фаворити"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Датотеките и папките кој ќе ги означите за омилени ќе се појават овде."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Датотеките и папките кој неодамна сте ги измениле ќе се појават овде."]},{msgid:"Filter file list",msgstr:["Филтрирај листа на датотеки"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Имињата на папките неможе да завршуваат со "{extension}".']},{msgid:"Guest identification",msgstr:["Гостинска идентификација"]},{msgid:"Home",msgstr:["Почетна"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ако ги избереш двете верзии, влезната датотека ќе добие број додаден на нејзиното име."]},{msgid:"Invalid folder name.",msgstr:["Невалидно име на папка."]},{msgid:"Invalid name.",msgstr:["Невалидно име."]},{msgid:"Last modified date unknown",msgstr:["Датумот на последна измена е непознат"]},{msgid:"Modified",msgstr:["Променето"]},{msgid:"Move",msgstr:["Премести"]},{msgid:"Move to {target}",msgstr:["Премести во {target}"]},{msgid:"Name",msgstr:["Име"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Имињата можат да бидат најмногу со 64 карактери."]},{msgid:"Names must not be empty.",msgstr:["Имињата неможе да бидат празни."]},{msgid:'Names must not end with "{extension}".',msgstr:['Имињата неможе да завршуваат со "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Имињата неможе да започнуваат со точка."]},{msgid:"New",msgstr:["Нова"]},{msgid:"New folder",msgstr:["Нова папка"]},{msgid:"New folder name",msgstr:["Ново име на папка"]},{msgid:"New version",msgstr:["Нова верзија"]},{msgid:"No files in here",msgstr:["Овде нема датотеки"]},{msgid:"No files matching your filter were found.",msgstr:["Не се пронајдени датотеки што одговараат на вашиот филтер."]},{msgid:"No matching files",msgstr:["Нема датотеки што се совпаѓаат"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Внесете име со најмалку 2 карактери."]},{msgid:"Recent",msgstr:["Неодамнешни"]},{msgid:"Select all checkboxes",msgstr:["Избери ги сите полиња за избор"]},{msgid:"Select all entries",msgstr:["Изберете ги сите записи"]},{msgid:"Select all existing files",msgstr:["Изберете ги сите постоечки датотеки"]},{msgid:"Select all new files",msgstr:["Изберете ги сите нови датотеки"]},{msgid:"Select entry",msgstr:["Избери запис"]},{msgid:"Select the row for {nodename}",msgstr:["Избери ред за {nodename}"]},{msgid:"Size",msgstr:["Големина"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Прескокни %n датотека","Прескокни %n датотеки"]},{msgid:"Skip this file",msgstr:["Прескокни ја оваа датотека"]},{msgid:"Submit name",msgstr:["Испрати име"]},{msgid:"Undo",msgstr:["Врати"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Прикачи содржина или синхронизирај со ваши уреди!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Кога е избрана влезна папка, сите конфликтни датотеки во неа исто така ќе бидат препишани."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Кога е избрана влезна папка, содржината се запишува во постоечката папка и се извршува рекурсивно решавање на конфликти."]},{msgid:"Which files do you want to keep?",msgstr:["Кој датотеки сакаш да ги зачуваш?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Моментално сте идентификувани како {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Моментално не сте идентификувани."]},{msgid:"You cannot leave the name empty.",msgstr:["Не можете да го оставите името празно."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Треба да избереш најмалку едно решение за конфликт"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Треба да избереш најмалку една верзија за секоја датотека за да продолжи."]}]},{language:"ms_MY",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" adalah nama folder yang tidak sesuai ']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nama folder yang tidak dibenarkan']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" tidak dibenarkan dalam nama folder']},{msgid:"All files",msgstr:["Semua fail"]},{msgid:"Choose",msgstr:["Pilih"]},{msgid:"Choose {file}",msgstr:["Pilih {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Pilih fail %n"]},{msgid:"Copy",msgstr:["menyalin"]},{msgid:"Copy to {target}",msgstr:["menyalin ke {target}"]},{msgid:"Could not create the new folder",msgstr:["Tidak dapat mewujudkan folder baharu"]},{msgid:"Could not load files settings",msgstr:["Tidak dapat memuatkan tetapan fail"]},{msgid:"Could not load files views",msgstr:["Tidak dapat memuatkan paparan fail"]},{msgid:"Create directory",msgstr:["mewujudkan direktori"]},{msgid:"Current view selector",msgstr:["pemilih pandangan semasa"]},{msgid:"Favorites",msgstr:["Pilihan"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Fail dan folder yang anda tanda sebagai pilihan akan dipaparkan di sini."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Fail dan folder yang anda telah ubah suai baru-baru ini dipaparkan di sini."]},{msgid:"Filter file list",msgstr:["Menapis senarai fail"]},{msgid:"Folder name cannot be empty.",msgstr:["Nama folder tidak boleh kosong."]},{msgid:"Home",msgstr:["Utama"]},{msgid:"Modified",msgstr:["Ubah suai"]},{msgid:"Move",msgstr:["pindah"]},{msgid:"Move to {target}",msgstr:["pindah ke {target}"]},{msgid:"Name",msgstr:["Nama"]},{msgid:"New",msgstr:["Baru"]},{msgid:"New folder",msgstr:["Folder Baharu"]},{msgid:"New folder name",msgstr:["Nama folder baharu"]},{msgid:"No files in here",msgstr:["Tiada fail di sini"]},{msgid:"No files matching your filter were found.",msgstr:["Tiada fail yang sepadan dengan tapisan anda."]},{msgid:"No matching files",msgstr:["Tiada fail yang sepadan"]},{msgid:"Recent",msgstr:["baru-baru ini"]},{msgid:"Select all entries",msgstr:["Pilih semua entri"]},{msgid:"Select entry",msgstr:["Pilih entri"]},{msgid:"Select the row for {nodename}",msgstr:["memilih baris {nodename}"]},{msgid:"Size",msgstr:["Saiz"]},{msgid:"Undo",msgstr:["buat asal"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Muat naik beberapa kandungan atau selaras dengan peranti anda!"]}]},{language:"nb_NO",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" er ikke tillatt i et mappenavn.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" er ikke tillatt i et navn.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" er ikke et tillatt navn.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" er et reservert navn og er ikke tillatt for mappenavn.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" er et reservert navn og er ikke tillatt.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n filkonflikt","%n files conflict"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n fil konflikter i {dirname}","%n fil konflikter i {dirname}"]},{msgid:"All files",msgstr:["Alle filer"]},{msgid:"Cancel",msgstr:["Avbryt"]},{msgid:"Cancel the entire operation",msgstr:["Avbryt hele operasjonen"]},{msgid:"Choose",msgstr:["Velg"]},{msgid:"Choose {file}",msgstr:["Velg {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Velg %n fil","Velg %n filer"]},{msgid:"Confirm",msgstr:["Bekreft"]},{msgid:"Continue",msgstr:["Fortsett"]},{msgid:"Copy",msgstr:["Kopier"]},{msgid:"Copy to {target}",msgstr:["Kopier til {target}"]},{msgid:"Could not create the new folder",msgstr:["Kunne ikke opprette den nye mappen"]},{msgid:"Could not load files settings",msgstr:["Kunne ikke laste filinnstillinger"]},{msgid:"Could not load files views",msgstr:["Kunne ikke laste filvisninger"]},{msgid:"Create directory",msgstr:["Opprett mappe"]},{msgid:"Current view selector",msgstr:["Nåværende visningsvelger"]},{msgid:"Enter your name",msgstr:["Skriv inn navnet ditt"]},{msgid:"Existing version",msgstr:["Eksisterende versjon"]},{msgid:"Failed to set nickname.",msgstr:["Kunne ikke lagre kallenavnet."]},{msgid:"Favorites",msgstr:["Favoritter"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper du markerer som favoritter vil vises her."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper du nylig har endret, vil vises her."]},{msgid:"Filter file list",msgstr:["Filtrer filliste"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Mappenavn må ikke slutte med "{extension}".']},{msgid:"Guest identification",msgstr:["Gjesteidentifikasjon"]},{msgid:"Home",msgstr:["Hjem"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du velger begge versjonene, vil den innkommende filen få et nummer lagt til navnet sitt."]},{msgid:"Invalid folder name.",msgstr:["Ugyldig mappenavn."]},{msgid:"Invalid name.",msgstr:["Ugyldig navn."]},{msgid:"Last modified date unknown",msgstr:["Sist endret dato ukjent"]},{msgid:"Modified",msgstr:["Modifisert"]},{msgid:"Move",msgstr:["Flytt"]},{msgid:"Move to {target}",msgstr:["Flytt til {target}"]},{msgid:"Name",msgstr:["Navn"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Navn kan maksimalt være 64 tegn lange."]},{msgid:"Names must not be empty.",msgstr:["Navn kan ikke være tomme."]},{msgid:'Names must not end with "{extension}".',msgstr:['Navn kan ikke ende med "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Navn kan ikke starte med et punktum."]},{msgid:"New",msgstr:["Ny"]},{msgid:"New folder",msgstr:["Ny mappe"]},{msgid:"New folder name",msgstr:["Nytt mappenavn"]},{msgid:"New version",msgstr:["Ny versjon"]},{msgid:"No files in here",msgstr:["Ingen filer her"]},{msgid:"No files matching your filter were found.",msgstr:["Ingen filer funnet med ditt filter."]},{msgid:"No matching files",msgstr:["Ingen filer samsvarer"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Vennligst angi et navn som har minst 2 tegn."]},{msgid:"Recent",msgstr:["Nylige"]},{msgid:"Select all checkboxes",msgstr:["Merk av i alle avmerkingsboksene"]},{msgid:"Select all entries",msgstr:["Velg alle oppføringer"]},{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},{msgid:"Select entry",msgstr:["Velg oppføring"]},{msgid:"Select the row for {nodename}",msgstr:["Velg raden for {nodename}"]},{msgid:"Size",msgstr:["Størrelse"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Hopp over %n fil","Hopp over %nfiler"]},{msgid:"Skip this file",msgstr:["Hopp over denne filen"]},{msgid:"Submit name",msgstr:["Bekreft navn"]},{msgid:"Undo",msgstr:["Angre"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Last opp innhold eller synkroniser med enhetene dine!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en innkommende mappe velges, vil eventuelle motstridende filer i den også bli overskrevet."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Når en innkommende mappe velges, vil eventuelle filer i den også bli overskrevet."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres."]},{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Du er akkurat nå identifisert som {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Du er akkurat nå ikke identifisert."]},{msgid:"You cannot leave the name empty.",msgstr:["Du kan ikke la navnet være blankt."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Du må velge minst én konfliktløsning"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst én versjon av hver fil for å fortsette."]}]},{language:"nl",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" is niet toegestaan in een mapnaam.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" kan niet gebruikt worden in de benaming.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" is geen toegestane naam.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" is een gereserveerde naam en niet toegestaan in mapnamen.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" is een gereserveerde naam en niet toegestaan.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n bestanden conflicteren","%nbestand bestanden conflicteren"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n bestand conflicteerd in {dirname}","%nbestanden conflicteert in {dirname}"]},{msgid:"All files",msgstr:["Alle bestanden"]},{msgid:"Cancel",msgstr:["Annuleren"]},{msgid:"Cancel the entire operation",msgstr:["Annuleer de hele bewerking"]},{msgid:"Choose",msgstr:["Kiezen"]},{msgid:"Choose {file}",msgstr:["Kies {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Kies %n bestand","Kies %n bestanden"]},{msgid:"Confirm",msgstr:["Bevestigen"]},{msgid:"Continue",msgstr:["Doorgaan"]},{msgid:"Copy",msgstr:["Kopiëren"]},{msgid:"Copy to {target}",msgstr:["Kopiëren naar {target}"]},{msgid:"Could not create the new folder",msgstr:["Kon de nieuwe map niet maken"]},{msgid:"Could not load files settings",msgstr:["Kon de bestandsinstellingen niet laden"]},{msgid:"Could not load files views",msgstr:["Kon de bestandsweergaves niet laden"]},{msgid:"Create directory",msgstr:["Map aanmaken"]},{msgid:"Current view selector",msgstr:["Huidige weergave keuze"]},{msgid:"Enter your name",msgstr:["Voer je naam in"]},{msgid:"Existing version",msgstr:["Bestaande versie"]},{msgid:"Failed to set nickname.",msgstr:["Kon geen bijnaam instellen."]},{msgid:"Favorites",msgstr:["Favorieten"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Bestanden en mappen die je als favoriet markeert, verschijnen hier."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Bestanden en mappen die je recentelijk hebt gewijzigd, verschijnen hier."]},{msgid:"Filter file list",msgstr:["Bestandslijst filteren"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Mapnamen mogen niet eindigen op "{extension}".']},{msgid:"Guest identification",msgstr:["Gastenidentificatie"]},{msgid:"Home",msgstr:["Thuis"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Als u beide versies selecteert wordt een nummer toegevoegd aan de naam van het binnenkomende bestand."]},{msgid:"Invalid folder name.",msgstr:["Ongeldige mapnaam."]},{msgid:"Invalid name.",msgstr:["Ongeldige naam."]},{msgid:"Last modified date unknown",msgstr:["Laatste wijzigingsdatum onbekend"]},{msgid:"Modified",msgstr:["Gewijzigd"]},{msgid:"Move",msgstr:["Verplaatsen"]},{msgid:"Move to {target}",msgstr:["Verplaatsen naar {target}"]},{msgid:"Name",msgstr:["Naam"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Namen mogen maximaal 64 tekens lang zijn."]},{msgid:"Names must not be empty.",msgstr:["Namen mogen niet leeg zijn."]},{msgid:'Names must not end with "{extension}".',msgstr:['Namen mogen niet eindigen met "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Namen mogen niet begonnen met een punt."]},{msgid:"New",msgstr:["Nieuw"]},{msgid:"New folder",msgstr:["Nieuwe map"]},{msgid:"New folder name",msgstr:["Nieuwe mapnaam"]},{msgid:"New version",msgstr:["Nieuwe versie"]},{msgid:"No files in here",msgstr:["Geen bestanden hier"]},{msgid:"No files matching your filter were found.",msgstr:["Geen bestanden gevonden die voldoen aan je filter."]},{msgid:"No matching files",msgstr:["Geen overeenkomende bestanden"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Voer een naam in met minimaal 2 tekens."]},{msgid:"Recent",msgstr:["Recent"]},{msgid:"Select all checkboxes",msgstr:["Selecteer alle aanvinkopties"]},{msgid:"Select all entries",msgstr:["Alle invoer selecteren"]},{msgid:"Select all existing files",msgstr:["Selecteer alle bestaande bestanden"]},{msgid:"Select all new files",msgstr:["Selecteer alle nieuwe bestanden"]},{msgid:"Select entry",msgstr:["Invoer selecteren"]},{msgid:"Select the row for {nodename}",msgstr:["Selecteer de rij voor {nodename}"]},{msgid:"Size",msgstr:["Grootte"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Sla %n bestand over","Sla %n bestanden over"]},{msgid:"Skip this file",msgstr:["Sla dit bestand over"]},{msgid:"Submit name",msgstr:["Naam indienen"]},{msgid:"Undo",msgstr:["Ongedaan maken"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Upload inhoud of synchroniseer met je apparaten!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Als een inkomende map wordt geselecteerd, worden alle conflicterende bestanden daarin overschreven."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Wanneer een inkomende folder is geselecteerd, worden bestanden in deze folder ook overschreven."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Als een inkomende map wordt geselecteerd, wordt de inhoud naar de bestaande map geschreven en wordt een recursieve conflict-oplossing uitgevoerd."]},{msgid:"Which files do you want to keep?",msgstr:["Welke bestanden wilt u bewaren?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Je wordt momenteel geïdentificeerd als {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Je bent momenteel niet geïdentificeerd."]},{msgid:"You cannot leave the name empty.",msgstr:["Je kunt de naam niet leeg laten."]},{msgid:"You need to choose at least one conflict solution",msgstr:["U moet in elk geval een conflictoplossing kiezen"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["U moet minstens een versie van elk bestand kiezen om door te gaan. "]}]},{language:"pl",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['Znak "{char}" nie jest dozwolony w nazwie folderu.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" nie jest dozwolone w nazwie.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" nie jest dozwoloną nazwą.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" jest nazwą zastrzeżoną i nie jest dozwolona jako nazwa folderu.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" jest zastrzeżoną nazwą i nie jest dozwolone.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["Konflikt pliku","Konflikt %n plików","Konflikt %n plików","Konflikt %n plików"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n konfliktów pliku w {dirname}","%n konfliktów plików w {dirname}","%n konfliktów plików w {dirname}","%n konfliktów plików w {dirname}"]},{msgid:"All files",msgstr:["Wszystkie pliki"]},{msgid:"Cancel",msgstr:["Anuluj"]},{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},{msgid:"Choose",msgstr:["Wybierz"]},{msgid:"Choose {file}",msgstr:["Wybierz {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wybierz %n plik","Wybierz %n pliki","Wybierz %n plików","Wybierz %n plików"]},{msgid:"Confirm",msgstr:["Potwierdź"]},{msgid:"Continue",msgstr:["Kontynuuj"]},{msgid:"Copy",msgstr:["Kopiuj"]},{msgid:"Copy to {target}",msgstr:["Skopiuj do {target}"]},{msgid:"Could not create the new folder",msgstr:["Nie można utworzyć nowego folderu"]},{msgid:"Could not load files settings",msgstr:["Nie można wczytać ustawień plików"]},{msgid:"Could not load files views",msgstr:["Nie można wczytać widoków plików"]},{msgid:"Create directory",msgstr:["Utwórz katalog"]},{msgid:"Current view selector",msgstr:["Bieżący selektor widoku"]},{msgid:"Enter your name",msgstr:["Wprowadź nazwę"]},{msgid:"Existing version",msgstr:["Istniejąca wersja"]},{msgid:"Failed to set nickname.",msgstr:["Nie udało się utworzyć pseudonimu."]},{msgid:"Favorites",msgstr:["Ulubione"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj"]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj"]},{msgid:"Filter file list",msgstr:["Filtruj listę plików"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Nazwy folderów nie mogą kończyć się na "{extension}".']},{msgid:"Guest identification",msgstr:["Identyfikacja gościa"]},{msgid:"Home",msgstr:["Strona główna"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy przychodzącego pliku zostanie dodany numer."]},{msgid:"Invalid folder name.",msgstr:["Nieprawidłowa nazwa folderu."]},{msgid:"Invalid name.",msgstr:["Nieprawidłowa nazwa."]},{msgid:"Last modified date unknown",msgstr:["Data ostatniej modyfikacji nieznana"]},{msgid:"Modified",msgstr:["Zmodyfikowano"]},{msgid:"Move",msgstr:["Przenieś"]},{msgid:"Move to {target}",msgstr:["Przejdź do {target}"]},{msgid:"Name",msgstr:["Nazwa"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Nazwy mogą mieć maksymalnie 64 znaki."]},{msgid:"Names must not be empty.",msgstr:["Nazwy nie mogą być puste."]},{msgid:'Names must not end with "{extension}".',msgstr:['Nazwy nie mogą kończyć się na "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Nazwy nie mogą zaczynać się od kropki."]},{msgid:"New",msgstr:["Nowy"]},{msgid:"New folder",msgstr:["Nowy folder"]},{msgid:"New folder name",msgstr:["Nowa nazwa folderu"]},{msgid:"New version",msgstr:["Nowa wersja"]},{msgid:"No files in here",msgstr:["Brak plików"]},{msgid:"No files matching your filter were found.",msgstr:["Nie znaleziono plików spełniających warunki filtru"]},{msgid:"No matching files",msgstr:["Brak pasujących plików"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Wprowadź nazwę zawierającą minimum 2 znaki."]},{msgid:"Recent",msgstr:["Ostatni"]},{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie pola wyboru"]},{msgid:"Select all entries",msgstr:["Wybierz wszystkie wpisy"]},{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},{msgid:"Select entry",msgstr:["Wybierz wpis"]},{msgid:"Select the row for {nodename}",msgstr:["Wybierz wiersz dla {nodename}"]},{msgid:"Size",msgstr:["Rozmiar"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Pomiń %n plik","Pomiń %n plików","Pomiń %n plików","Pomiń %n plików"]},{msgid:"Skip this file",msgstr:["Pomiń ten plik"]},{msgid:"Submit name",msgstr:["Zatwierdź nazwę"]},{msgid:"Undo",msgstr:["Cofnij"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu przychodzącego folderu wszystkie konfliktujące pliki w jego obrębie również zostaną nadpisane."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu przychodzącego folderu jego zawartość zostanie zapisana w istniejącym folderze i zostanie przeprowadzone rekursywne rozwiązywanie konfliktów."]},{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Obecnie jesteś zidentyfikowany jako {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Użytkownik nie został uwierzytelniony."]},{msgid:"You cannot leave the name empty.",msgstr:["Nazwa nie może być pusta."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Musisz wybrać co najmniej jedno rozwiązanie konfliktu"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}]},{language:"pt_BR",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" não é permitido dentro de um nome de pasta.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" não é permitido dentro de um nome.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" não é um nome permitido.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" é um nome reservado e não permitido para nomes de pasta.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" é um nome reservado e não permitido.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n arquivo conflita","%n de arquivos conflitam","%n arquivos conflitam"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n conflito de arquivo em {dirname}","%n de conflitos de arquivos em {dirname}","%n conflitos de arquivos em {dirname}"]},{msgid:"All files",msgstr:["Todos os arquivos"]},{msgid:"Cancel",msgstr:["Cancelar"]},{msgid:"Cancel the entire operation",msgstr:["Cancelar toda a operação"]},{msgid:"Choose",msgstr:["Escolher"]},{msgid:"Choose {file}",msgstr:["Escolher {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escolher %n arquivo","Escolher %n arquivos","Escolher %n arquivos"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Continue",msgstr:["Continuar"]},{msgid:"Copy",msgstr:["Copiar"]},{msgid:"Copy to {target}",msgstr:["Copiar para {target}"]},{msgid:"Could not create the new folder",msgstr:["Não foi possível criar a nova pasta"]},{msgid:"Could not load files settings",msgstr:["Não foi possível carregar configurações de arquivos"]},{msgid:"Could not load files views",msgstr:["Não foi possível carregar visualições de arquivos"]},{msgid:"Create directory",msgstr:["Criar diretório"]},{msgid:"Current view selector",msgstr:["Seletor de visualização atual"]},{msgid:"Enter your name",msgstr:["Digite seu nome"]},{msgid:"Existing version",msgstr:["Versão existente"]},{msgid:"Failed to set nickname.",msgstr:["Falha ao definir apelido."]},{msgid:"Favorites",msgstr:["Favoritos"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os arquivos e pastas que você marca como favoritos aparecerão aqui."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Arquivos e pastas que você modificou recentemente aparecerão aqui."]},{msgid:"Filter file list",msgstr:["Filtrar lista de arquivos"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Nomes de pasta não podem terminar com "{extension}".']},{msgid:"Guest identification",msgstr:["Identificação de convidados"]},{msgid:"Home",msgstr:["Início"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, um número será adicionado ao nome do arquivo recebido."]},{msgid:"Invalid folder name.",msgstr:["Nome de pasta inválido."]},{msgid:"Invalid name.",msgstr:["Nome inválido."]},{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},{msgid:"Modified",msgstr:["Modificado"]},{msgid:"Move",msgstr:["Mover"]},{msgid:"Move to {target}",msgstr:["Mover para {target}"]},{msgid:"Name",msgstr:["Nome"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Os nomes podem ter no máximo 64 caracteres."]},{msgid:"Names must not be empty.",msgstr:["Nomes não podem estar vazios."]},{msgid:'Names must not end with "{extension}".',msgstr:['Nomes não podem terminar com "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Nomes não podem começar com um ponto."]},{msgid:"New",msgstr:["Novo"]},{msgid:"New folder",msgstr:["Nova pasta"]},{msgid:"New folder name",msgstr:["Novo nome de pasta"]},{msgid:"New version",msgstr:["Nova versão"]},{msgid:"No files in here",msgstr:["Nenhum arquivo aqui"]},{msgid:"No files matching your filter were found.",msgstr:["Nenhum arquivo correspondente ao seu filtro foi encontrado."]},{msgid:"No matching files",msgstr:["Nenhum arquivo correspondente"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Digite um nome com pelo menos 2 caracteres."]},{msgid:"Recent",msgstr:["Recente"]},{msgid:"Select all checkboxes",msgstr:["Selecione todas as caixas de seleção"]},{msgid:"Select all entries",msgstr:["Selecionar todas as entradas"]},{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},{msgid:"Select entry",msgstr:["Selecionar entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Selecionar a linha para {nodename}"]},{msgid:"Size",msgstr:["Tamanho"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Ignorar %n arquivo","Ignorar %n de arquivos","Ignorar %n arquivos"]},{msgid:"Skip this file",msgstr:["Ignorar este arquivo"]},{msgid:"Submit name",msgstr:["Enviar nome"]},{msgid:"Undo",msgstr:["Desfazer"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Faça upload de algum conteúdo ou sincronize com seus dispositivos!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ao selecionar uma pasta de entrada, quaisquer arquivos conflitantes dentro dela também serão sobrescritos."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Quando uma pasta de entrada for selecionada, todos os arquivos nela contidos também serão substituídos."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução recursiva de conflitos é realizada."]},{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Você está atualmente identificado como {nickname}."]},{msgid:"You are currently not identified.",msgstr:["No momento, você não está identificado."]},{msgid:"You cannot leave the name empty.",msgstr:["Você não pode deixar o nome vazio."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Você precisa escolher pelo menos uma solução para o conflito"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}]},{language:"pt_PT",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" não é permitido dentro de um nome de pasta.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" não é permitido dentro de um nome.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" não é um nome permitido.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" é um nome reservado e não é permitido para nomes de pasta.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" é um nome reservado e não é permitido.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n ficheiro em conflito","%n ficheiros em conflito","%n ficheiros em conflito"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n ficheiro em conflito em {dirname}","%n ficheiros em conflito em {dirname}","%n ficheiros em conflito em {dirname}"]},{msgid:"All files",msgstr:["Todos os ficheiros"]},{msgid:"Cancel",msgstr:["Cancelar"]},{msgid:"Cancel the entire operation",msgstr:["Cancelar toda a operação"]},{msgid:"Choose",msgstr:["Escolher"]},{msgid:"Choose {file}",msgstr:["Escolher {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escolha %n ficheiro","Escolha %n ficheiros","Escolha %n ficheiros"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Continue",msgstr:["Continuar"]},{msgid:"Copy",msgstr:["Copiar"]},{msgid:"Copy to {target}",msgstr:["Copiar para {target}"]},{msgid:"Could not create the new folder",msgstr:["Não foi possível criar a nova pasta "]},{msgid:"Could not load files settings",msgstr:["Não foi possível carregar as definições dos ficheiros"]},{msgid:"Could not load files views",msgstr:["Não foi possível carregar as visualizações dos ficheiros"]},{msgid:"Create directory",msgstr:["Criar pasta"]},{msgid:"Current view selector",msgstr:["Seletor de visualização atual"]},{msgid:"Enter your name",msgstr:["Introduza o seu nome"]},{msgid:"Existing version",msgstr:["Versão existente"]},{msgid:"Failed to set nickname.",msgstr:["Falha ao definir o nome alternativo."]},{msgid:"Favorites",msgstr:["Favoritos"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os ficheiros e as pastas que marcar como favoritos aparecerão aqui."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Os ficheiros e as pastas que modificou recentemente aparecerão aqui."]},{msgid:"Filter file list",msgstr:["Filtrar lista de ficheiros"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Nomes de pasta não podem terminar em "{extension}".']},{msgid:"Guest identification",msgstr:["Identificação de convidado"]},{msgid:"Home",msgstr:["Início"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, um número será adicionado ao nome do ficheiro recebido."]},{msgid:"Invalid folder name.",msgstr:["Nome de pasta inválido."]},{msgid:"Invalid name.",msgstr:["Nome inválido."]},{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},{msgid:"Modified",msgstr:["Modificado"]},{msgid:"Move",msgstr:["Mover"]},{msgid:"Move to {target}",msgstr:["Mover para {target}"]},{msgid:"Name",msgstr:["Nome"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Os nomes podem ter no máximo 64 caracteres."]},{msgid:"Names must not be empty.",msgstr:["O nome não pode ficar em branco."]},{msgid:'Names must not end with "{extension}".',msgstr:['Nomes não podem terminar em "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Os nomes não podem começar por um ponto."]},{msgid:"New",msgstr:["Novo"]},{msgid:"New folder",msgstr:["Nova pasta"]},{msgid:"New folder name",msgstr:["Novo nome da pasta"]},{msgid:"New version",msgstr:["Nova versão"]},{msgid:"No files in here",msgstr:["Sem ficheiros aqui"]},{msgid:"No files matching your filter were found.",msgstr:["Não foi encontrado nenhum ficheiro correspondente ao seu filtro."]},{msgid:"No matching files",msgstr:["Nenhum ficheiro correspondente"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Introduza um nome com, pelo menos, 2 caracteres."]},{msgid:"Recent",msgstr:["Recentes"]},{msgid:"Select all checkboxes",msgstr:["Selecione todas as caixas de seleção"]},{msgid:"Select all entries",msgstr:["Selecionar todas as entradas"]},{msgid:"Select all existing files",msgstr:["Selecione todos os ficheiros existentes"]},{msgid:"Select all new files",msgstr:["Selecione todos os novos ficheiros"]},{msgid:"Select entry",msgstr:["Selecionar entrada"]},{msgid:"Select the row for {nodename}",msgstr:["Selecione a linha para {nodename}"]},{msgid:"Size",msgstr:["Tamanho"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Ignorar %n ficheiro","Ignorar %n ficheiros","Ignorar %n ficheiros"]},{msgid:"Skip this file",msgstr:["Ignorar este ficheiro"]},{msgid:"Submit name",msgstr:["Submeter nome"]},{msgid:"Undo",msgstr:["Anular"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Envie algum conteúdo ou sincronize com os seus dispositivos!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ao selecionar uma pasta de entrada, quaisquer ficheiros conflituantes dentro da mesma serão também sobrescritos."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Ao selecionar uma pasta de entrada, todos os ficheiros nela contidos serão também sobrescritos."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e é realizada uma resolução recursiva de conflitos."]},{msgid:"Which files do you want to keep?",msgstr:["Quais os ficheiros que deseja manter?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Atualmente está identificado como {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Atualmente, não está identificado."]},{msgid:"You cannot leave the name empty.",msgstr:["Não pode deixar o nome em branco."]},{msgid:"You need to choose at least one conflict solution",msgstr:["É preciso escolher pelo menos uma solução para o conflito."]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["É necessário selecionar pelo menos uma versão de cada ficheiro para continuar."]}]},{language:"ro",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" este un nume de director invalid.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nu este un nume de director permis']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nu este permis în numele unui director.']},{msgid:"All files",msgstr:["Toate fișierele"]},{msgid:"Choose",msgstr:["Alege"]},{msgid:"Choose {file}",msgstr:["Alege {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Alege %n fișier","Alege %n fișiere","Alege %n fișiere"]},{msgid:"Copy",msgstr:["Copiază"]},{msgid:"Copy to {target}",msgstr:["Copiază în {target}"]},{msgid:"Could not create the new folder",msgstr:["Nu s-a putut crea noul director"]},{msgid:"Could not load files settings",msgstr:["Nu s-au putut încărca setările fișierelor"]},{msgid:"Could not load files views",msgstr:["Nu s-au putut încărca vizualizările fișierelor"]},{msgid:"Create directory",msgstr:["Creează director"]},{msgid:"Current view selector",msgstr:["Selectorul curent al vizualizării"]},{msgid:"Favorites",msgstr:["Favorite"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Fișiere și directoare pe care le marcați ca favorite vor apărea aici."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Fișiere și directoare pe care le-ați modificat recent vor apărea aici."]},{msgid:"Filter file list",msgstr:["Filtrează lista de fișiere"]},{msgid:"Folder name cannot be empty.",msgstr:["Numele de director nu poate fi necompletat."]},{msgid:"Home",msgstr:["Acasă"]},{msgid:"Modified",msgstr:["Modificat"]},{msgid:"Move",msgstr:["Mută"]},{msgid:"Move to {target}",msgstr:["Mută către {target}"]},{msgid:"Name",msgstr:["Nume"]},{msgid:"New",msgstr:["Nou"]},{msgid:"New folder",msgstr:["Director nou"]},{msgid:"New folder name",msgstr:["Numele noului director"]},{msgid:"No files in here",msgstr:["Nu există fișiere"]},{msgid:"No files matching your filter were found.",msgstr:["Nu există fișiere potrivite pentru filtrul selectat"]},{msgid:"No matching files",msgstr:["Nu există fișiere potrivite"]},{msgid:"Recent",msgstr:["Recente"]},{msgid:"Select all entries",msgstr:["Selectează toate înregistrările"]},{msgid:"Select entry",msgstr:["Selectează înregistrarea"]},{msgid:"Select the row for {nodename}",msgstr:["Selectează rândul pentru {nodename}"]},{msgid:"Size",msgstr:["Mărime"]},{msgid:"Undo",msgstr:["Anulează"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!"]}]},{language:"ru",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" не допускается в названии папки.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" не допускается внутри имени.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" — недопустимое имя.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" — зарезервированное имя, недопустимое для имени папки.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" — зарезервированное и недопустимое имя.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n конфликт файла","%n конфликта файлов","%n конфликтов файлов","%n конфликтов файлов"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n конфликт файлов в {dirname}","%n конфликта файлов в {dirname}","%n конфликтов файлов в {dirname}","%n конфликтов файлов в {dirname}"]},{msgid:"All files",msgstr:["Все файлы"]},{msgid:"Cancel",msgstr:["Отмена"]},{msgid:"Cancel the entire operation",msgstr:["Отменить всю операцию"]},{msgid:"Choose",msgstr:["Выбрать"]},{msgid:"Choose {file}",msgstr:["Выбрать «{file}»"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Выбрать %n файл","Выбрать %n файла","Выбрать %n файлов","Выбрать %n файлов"]},{msgid:"Confirm",msgstr:["Подтвердить"]},{msgid:"Continue",msgstr:["Продолжить"]},{msgid:"Copy",msgstr:["Копировать"]},{msgid:"Copy to {target}",msgstr:["Копировать в «{target}»"]},{msgid:"Could not create the new folder",msgstr:["Не удалось создать новую папку"]},{msgid:"Could not load files settings",msgstr:["Не удалось загрузить настройки файлов"]},{msgid:"Could not load files views",msgstr:["Не удалось загрузить конфигурацию просмотра файлов"]},{msgid:"Create directory",msgstr:["Создать папку"]},{msgid:"Current view selector",msgstr:["Переключатель текущего вида"]},{msgid:"Enter your name",msgstr:["Введите ваше имя"]},{msgid:"Existing version",msgstr:["Текущая версия"]},{msgid:"Failed to set nickname.",msgstr:["Не удалось задать никнейм."]},{msgid:"Favorites",msgstr:["Избранное"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Здесь будут отображаться файлы и папки, которые вы пометили как избранные."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Здесь будут отображаться файлы и папки, которые вы недавно изменили."]},{msgid:"Filter file list",msgstr:["Фильтровать список файлов"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Имена папок не могут оканчиваться на "{extension}".']},{msgid:"Guest identification",msgstr:["Гостевая идентификация"]},{msgid:"Home",msgstr:["Домой"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},{msgid:"Invalid folder name.",msgstr:["Недопустимое имя папки."]},{msgid:"Invalid name.",msgstr:["Недопустимое имя."]},{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},{msgid:"Modified",msgstr:["Изменен"]},{msgid:"Move",msgstr:["Переместить"]},{msgid:"Move to {target}",msgstr:["Переместить в «{target}»"]},{msgid:"Name",msgstr:["Имя"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Имена не могут быть длиннее 64 символов."]},{msgid:"Names must not be empty.",msgstr:["Имена не могут быть пустыми."]},{msgid:'Names must not end with "{extension}".',msgstr:['Имена не могут оканчиваться на "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Имена не должны начинаться с точки."]},{msgid:"New",msgstr:["Новый"]},{msgid:"New folder",msgstr:["Новая папка"]},{msgid:"New folder name",msgstr:["Имя новой папки"]},{msgid:"New version",msgstr:["Новая версия"]},{msgid:"No files in here",msgstr:["Здесь нет файлов"]},{msgid:"No files matching your filter were found.",msgstr:["Файлы, соответствующие вашему фильтру, не найдены."]},{msgid:"No matching files",msgstr:["Нет подходящих файлов"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Введите имя длиной не менее 2 символов."]},{msgid:"Recent",msgstr:["Недавний"]},{msgid:"Select all checkboxes",msgstr:["Выбрать все флажки"]},{msgid:"Select all entries",msgstr:["Выбрать все записи"]},{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},{msgid:"Select entry",msgstr:["Выбрать запись"]},{msgid:"Select the row for {nodename}",msgstr:["Выбрать строку для «{nodename}»"]},{msgid:"Size",msgstr:["Размер"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Пропустить %n файл","Пропустить %n файла","Пропустить %n файлов","Пропустить %n файлов"]},{msgid:"Skip this file",msgstr:["Пропустить файл"]},{msgid:"Submit name",msgstr:["Отправить имя"]},{msgid:"Undo",msgstr:["Отменить"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Загрузите контент или синхронизируйте его со своими устройствами!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все файлы в ней также будут перезаписаны."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Вы идентифицированы как {nickname}."]},{msgid:"You are currently not identified.",msgstr:["В данный момент вы не идентифицированы."]},{msgid:"You cannot leave the name empty.",msgstr:["Вы не можете оставить имя пустым."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Вам нужно выбрать хотя бы одно решение конфликта"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать хотя бы одну версию каждого файла."]}]},{language:"sk_SK",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" nie je povolené v názve priečinka.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" nie je povolené v rámci mena.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" nie je povolený názov.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["„{segment}“ je rezervované meno a nie je povolené na názvy priečinkov."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" je rezervované meno a nie je povolené.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n konflikt súborov","%n konflikty súborov","%n konfliktov súborov","%n konflikty súborov"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n konflikt súborov v {dirname}","%n konflikty súborov v {dirname}","%n konfliktov súborov v {dirname}","%n konfliktov súborov v {dirname}"]},{msgid:"All files",msgstr:["Všetky súbory"]},{msgid:"Cancel",msgstr:["Zrušiť"]},{msgid:"Cancel the entire operation",msgstr:["Zrušiť celú operáciu"]},{msgid:"Choose",msgstr:["Vybrať"]},{msgid:"Choose {file}",msgstr:["Vybrať {súbor}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vybraný %n súbor","Vybrané %n súbory","Vybraných %n súborov","Vybraných %n súborov"]},{msgid:"Confirm",msgstr:["Potvrdiť"]},{msgid:"Continue",msgstr:["Pokračovať"]},{msgid:"Copy",msgstr:["Kopírovať"]},{msgid:"Copy to {target}",msgstr:["Kopírovať do {umiestnenia}"]},{msgid:"Could not create the new folder",msgstr:["Nepodarilo sa vytvoriť nový priečinok"]},{msgid:"Could not load files settings",msgstr:["Nepodarilo sa načítať nastavenia súborov"]},{msgid:"Could not load files views",msgstr:["Nepodarilo sa načítať pohľady súborov"]},{msgid:"Create directory",msgstr:["Vytvoriť adresár"]},{msgid:"Current view selector",msgstr:["Výber aktuálneho zobrazenia"]},{msgid:"Enter your name",msgstr:["Zadajte svoje meno"]},{msgid:"Existing version",msgstr:["Existujúca verzia"]},{msgid:"Failed to set nickname.",msgstr:["Nepodarilo sa nastaviť prezývku."]},{msgid:"Favorites",msgstr:["Obľúbené"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili."]},{msgid:"Filter file list",msgstr:["Filtrovať zoznam súborov"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Názvy priečinkov nesmú končiť na "{extension}".']},{msgid:"Guest identification",msgstr:["Identifikácia hosťa"]},{msgid:"Home",msgstr:["Domov"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ak vyberiete obe verzie, prichádzajúci súbor bude mať k svojmu názvu pridané číslo."]},{msgid:"Invalid folder name.",msgstr:["Neplatný názov priečinka."]},{msgid:"Invalid name.",msgstr:["Neplatné meno."]},{msgid:"Last modified date unknown",msgstr:["Posledná zmena dátumu neznáma"]},{msgid:"Modified",msgstr:["Upravené"]},{msgid:"Move",msgstr:["Prejsť"]},{msgid:"Move to {target}",msgstr:["Prejsť na {umiestnenie}"]},{msgid:"Name",msgstr:["Názov"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Mená môžu mať maximálne 64 znakov."]},{msgid:"Names must not be empty.",msgstr:["Mená nesmú byť prázdne."]},{msgid:'Names must not end with "{extension}".',msgstr:['Mená nesmú končiť "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Mená nesmú začínať bodkou."]},{msgid:"New",msgstr:["Pridať"]},{msgid:"New folder",msgstr:["Pridať priečinok"]},{msgid:"New folder name",msgstr:["Pridať názov priečinka"]},{msgid:"New version",msgstr:["Nová verzia"]},{msgid:"No files in here",msgstr:["Nie sú tu žiadne súbory"]},{msgid:"No files matching your filter were found.",msgstr:["Nenašli sa žiadne súbory zodpovedajúce vášmu filtru."]},{msgid:"No matching files",msgstr:["Žiadne zodpovedajúce súbory"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Zadajte meno s aspoň 2 znakmi."]},{msgid:"Recent",msgstr:["Nedávne"]},{msgid:"Select all checkboxes",msgstr:["Vyberte všetky zaškrtávacie políčka"]},{msgid:"Select all entries",msgstr:["Vybrať všetky položky"]},{msgid:"Select all existing files",msgstr:["Vybrať všetky existujúce súbory"]},{msgid:"Select all new files",msgstr:["Vybrať všetky nové súbory"]},{msgid:"Select entry",msgstr:["Vybrať položku"]},{msgid:"Select the row for {nodename}",msgstr:["Vyberte riadok pre {názov uzla}"]},{msgid:"Size",msgstr:["Veľkosť"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Preskočiť %n súbor","Preskočiť %n súbory","Preskočiť %n súborov","Preskočiť %n súbory"]},{msgid:"Skip this file",msgstr:["Preskočiť tento súbor"]},{msgid:"Submit name",msgstr:["Zadať meno"]},{msgid:"Undo",msgstr:["Späť"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Keď je vybraná prichádzajúca složka, všetky konfliktné súbory v nej budú taktiež prepísané."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Keď je vybraná prichádzajúca zložka, obsah sa zapíše do existujúcej zložky a vykoná sa rekurzívne riešenie konfliktov."]},{msgid:"Which files do you want to keep?",msgstr:["Ktoré súbory chcete zachovať?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Momentálne ste identifikovaný ako {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Momentálne nie ste identifikovaný."]},{msgid:"You cannot leave the name empty.",msgstr:["Nemôžete nechať meno prázdne."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Musíte si vybrať aspoň jedno riešenie konfliktu."]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Musíte vybrať aspoň jednu verziu každého súboru, aby ste mohli pokračovať."]}]},{language:"sl",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} je neveljavno ime mape."]},{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ni dovoljeno ime mape"]},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ni dovoljen v imenu mape.']},{msgid:"All files",msgstr:["Vse datoteke"]},{msgid:"Choose",msgstr:["Izberi"]},{msgid:"Choose {file}",msgstr:["Izberi {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izberi %n datoteko","Izberi %n datoteki","Izberi %n datotek","Izberi %n datotek"]},{msgid:"Copy",msgstr:["Kopiraj"]},{msgid:"Copy to {target}",msgstr:["Kopiraj v {target}"]},{msgid:"Could not create the new folder",msgstr:["Nisem mogel ustvariti nove mape"]},{msgid:"Could not load files settings",msgstr:["NIsem mogel naložiti nastavitev datotek"]},{msgid:"Could not load files views",msgstr:["Nisem mogel naložiti pogledov datotek"]},{msgid:"Create directory",msgstr:["Ustvari mapo"]},{msgid:"Current view selector",msgstr:["Izbirnik trenutnega pogleda"]},{msgid:"Favorites",msgstr:["Priljubljene"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj."]},{msgid:"Filter file list",msgstr:["Filtriraj seznam datotek"]},{msgid:"Folder name cannot be empty.",msgstr:["Ime mape ne more biti prazno"]},{msgid:"Home",msgstr:["Domov"]},{msgid:"Modified",msgstr:["Spremenjeno"]},{msgid:"Move",msgstr:["Premakni"]},{msgid:"Move to {target}",msgstr:["Premakni v {target}"]},{msgid:"Name",msgstr:["Ime"]},{msgid:"New",msgstr:["Nov"]},{msgid:"New folder",msgstr:["Nova mapa"]},{msgid:"New folder name",msgstr:["Novo ime mape"]},{msgid:"No files in here",msgstr:["Tukaj ni datotek"]},{msgid:"No files matching your filter were found.",msgstr:["Ni bilo najdenih ujemajočih datotek glede na vaš filter."]},{msgid:"No matching files",msgstr:["Ni ujemajočih datotek"]},{msgid:"Recent",msgstr:["Nedavne"]},{msgid:"Select all entries",msgstr:["Izberi vse vnose"]},{msgid:"Select entry",msgstr:["Izberi vnos"]},{msgid:"Select the row for {nodename}",msgstr:["Izberi vrstico za {nodename}"]},{msgid:"Size",msgstr:["Velikost"]},{msgid:"Undo",msgstr:["Razveljavi"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!"]}]},{language:"sr",translations:[{msgid:'"{char}" is not allowed inside a name.',msgstr:["„{char}” није дозвољено унутар имена."]},{msgid:'"{extension}" is not an allowed name.',msgstr:["„{extension}” није дозвољено име."]},{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” није исправно име фолдера."]},{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” није дозвољено име за фолдер."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["„{segment}” је резервисано име и није дозвољено."]},{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” није дозвољено унутар имена фолдера."]},{msgid:"All files",msgstr:["Сви фајлови"]},{msgid:"Cancel",msgstr:["Откажи"]},{msgid:"Choose",msgstr:["Изаберите"]},{msgid:"Choose {file}",msgstr:["Изаберите {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Изаберите %n фајл","Изаберите %n фајла","Изаберите %n фајлова"]},{msgid:"Copy",msgstr:["Копирај"]},{msgid:"Copy to {target}",msgstr:["Копирај у {target}"]},{msgid:"Could not create the new folder",msgstr:["Није могао да се креира нови фолдер"]},{msgid:"Could not load files settings",msgstr:["Не могу да се учитају подешавања фајлова"]},{msgid:"Could not load files views",msgstr:["Не могу да се учитају прикази фајлова"]},{msgid:"Create directory",msgstr:["Креирај директоријум"]},{msgid:"Current view selector",msgstr:["Бирач тренутног приказа"]},{msgid:"Enter your name",msgstr:["Унесите своје име"]},{msgid:"Failed to set nickname.",msgstr:["Није успело постављање надимка."]},{msgid:"Favorites",msgstr:["Омиљено"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери које сте означили као омиљене."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери који се се недавно изменили."]},{msgid:"Filter file list",msgstr:["Фитрирање листе фајлова"]},{msgid:"Folder name cannot be empty.",msgstr:["Име фолдера не може бити празно."]},{msgid:"Guest identification",msgstr:["Идентификација госта"]},{msgid:"Home",msgstr:["Почетак"]},{msgid:"Invalid name.",msgstr:["Неисправно име."]},{msgid:"Modified",msgstr:["Измењено"]},{msgid:"Move",msgstr:["Премести"]},{msgid:"Move to {target}",msgstr:["Премести у {target}"]},{msgid:"Name",msgstr:["Име"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Највећа дужина имена може бити 64 карактера."]},{msgid:"Names must not be empty.",msgstr:["Имена не смеју да буду празна."]},{msgid:'Names must not end with "{extension}".',msgstr:["Имена не смеју да се завршавају на „{extension}”."]},{msgid:"Names must not start with a dot.",msgstr:["Имена не смеју да почињу тачком."]},{msgid:"New",msgstr:["Ново"]},{msgid:"New folder",msgstr:["Нови фолдер"]},{msgid:"New folder name",msgstr:["Име новог фолдера"]},{msgid:"No files in here",msgstr:["Овде нема фајлова"]},{msgid:"No files matching your filter were found.",msgstr:["Није пронађен ниједан фајл који задовољава ваш филтер."]},{msgid:"No matching files",msgstr:["Нема таквих фајлова"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Молимо вас да унесете име од барем два карактера."]},{msgid:"Recent",msgstr:["Скорашње"]},{msgid:"Select all entries",msgstr:["Изаберите све ставке"]},{msgid:"Select entry",msgstr:["Изаберите ставку"]},{msgid:"Select the row for {nodename}",msgstr:["Изаберите ред за {nodename}"]},{msgid:"Size",msgstr:["Величина"]},{msgid:"Submit name",msgstr:["Предај име"]},{msgid:"Undo",msgstr:["Поништи"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Отпремите нешто или синхронизујте са својим уређајима!"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Тренутно се идентификујете као {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Тренутно немате идентификацију."]},{msgid:"You cannot leave the name empty.",msgstr:["Име не можете да оставите празно."]}]},{language:"sr@latin",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” je neispravan naziv foldera."]},{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” je nedozvoljen naziv foldera."]},{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” se ne može koristiti unutar naziva foldera."]},{msgid:"All files",msgstr:["Svi fajlovi"]},{msgid:"Choose",msgstr:["Izaberite"]},{msgid:"Choose {file}",msgstr:["Izaberite {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izaberite %n fajl","Izaberite %n fajla","Izaberite %n fajlova"]},{msgid:"Copy",msgstr:["Kopiraj"]},{msgid:"Copy to {target}",msgstr:["Kopiraj u {target}"]},{msgid:"Could not create the new folder",msgstr:["Neuspešno kreiranje novog foldera"]},{msgid:"Could not load files settings",msgstr:["Neuspešno učitavanje podešavanja fajlova"]},{msgid:"Could not load files views",msgstr:["Neuspešno učitavanje prikaza fajlova"]},{msgid:"Create directory",msgstr:["Kreiraj direktorijum"]},{msgid:"Current view selector",msgstr:["Birač trenutnog prikaza"]},{msgid:"Favorites",msgstr:["Omiljeno"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Lista omiljenih fajlova i foldera."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Lista fajlova i foldera sa skorašnjim izmenama."]},{msgid:"Filter file list",msgstr:["Fitriranje liste fajlova"]},{msgid:"Folder name cannot be empty.",msgstr:["Naziv foldera ne može biti prazan."]},{msgid:"Home",msgstr:["Početak"]},{msgid:"Modified",msgstr:["Izmenjeno"]},{msgid:"Move",msgstr:["Premesti"]},{msgid:"Move to {target}",msgstr:["Premesti u {target}"]},{msgid:"Name",msgstr:["Naziv"]},{msgid:"New",msgstr:["Novo"]},{msgid:"New folder",msgstr:["Novi folder"]},{msgid:"New folder name",msgstr:["Naziv novog foldera"]},{msgid:"No files in here",msgstr:["Bez fajlova"]},{msgid:"No files matching your filter were found.",msgstr:["Nema fajlova koji zadovoljavaju uslove filtera."]},{msgid:"No matching files",msgstr:["Nema takvih fajlova"]},{msgid:"Recent",msgstr:["Skorašnje"]},{msgid:"Select all entries",msgstr:["Izaberite sve stavke"]},{msgid:"Select entry",msgstr:["Izaberite stavku"]},{msgid:"Select the row for {nodename}",msgstr:["Izaberite red za {nodename}"]},{msgid:"Size",msgstr:["Veličina"]},{msgid:"Undo",msgstr:["Vrati"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Otpremite sadržaj ili sinhronizujte sa svojim uređajima!"]}]},{language:"sv",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" är inte tillåtet i ett mappnamn.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" är inte tillåtet i ett namn.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" är inte ett tillåtet namn.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" är ett reserverat namn och inte tillåtet mappnamn.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" är ett reserverat namn och inte tillåtet.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n fil är i konflikt","%n filer är i konflikt"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n fil är i konflikt i {dirname}","%n filer är i konflikt i {dirname}"]},{msgid:"All files",msgstr:["Alla filer"]},{msgid:"Cancel",msgstr:["Avbryt"]},{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},{msgid:"Choose",msgstr:["Välj"]},{msgid:"Choose {file}",msgstr:["Välj {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Välj %n fil","Välj %n filer"]},{msgid:"Confirm",msgstr:["Bekräfta"]},{msgid:"Continue",msgstr:["Fortsätt"]},{msgid:"Copy",msgstr:["Kopiera"]},{msgid:"Copy to {target}",msgstr:["Kopiera till {target}"]},{msgid:"Could not create the new folder",msgstr:["Kunde inte skapa den nya mappen"]},{msgid:"Could not load files settings",msgstr:["Kunde inte ladda filinställningar"]},{msgid:"Could not load files views",msgstr:["Kunde inte ladda filvyer"]},{msgid:"Create directory",msgstr:["Skapa katalog"]},{msgid:"Current view selector",msgstr:["Aktuell vyväljare"]},{msgid:"Enter your name",msgstr:["Ange ditt namn"]},{msgid:"Existing version",msgstr:["Nuvarande version"]},{msgid:"Failed to set nickname.",msgstr:["Kunde inte ställa in smeknamn."]},{msgid:"Favorites",msgstr:["Favoriter"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer och mappar som du markerar som favorit kommer att visas här."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer och mappar som du nyligen ändrat kommer att visas här."]},{msgid:"Filter file list",msgstr:["Filtrera fillistan"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Mappnamn får inte sluta med "{extension}".']},{msgid:"Guest identification",msgstr:["Gästidentifiering"]},{msgid:"Home",msgstr:["Hem"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att få ett nummer tillagt i sitt namn."]},{msgid:"Invalid folder name.",msgstr:["Ogiltigt mappnamn."]},{msgid:"Invalid name.",msgstr:["Ogiltigt namn."]},{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},{msgid:"Modified",msgstr:["Ändrad"]},{msgid:"Move",msgstr:["Flytta"]},{msgid:"Move to {target}",msgstr:["Flytta till {target}"]},{msgid:"Name",msgstr:["Namn"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Namnen kan vara högst 64 tecken långa."]},{msgid:"Names must not be empty.",msgstr:["Namn får inte vara tomt."]},{msgid:'Names must not end with "{extension}".',msgstr:['Namn får inte sluta med "{extension}".']},{msgid:"Names must not start with a dot.",msgstr:["Namn får inte börja med en punkt."]},{msgid:"New",msgstr:["Ny"]},{msgid:"New folder",msgstr:["Ny mapp"]},{msgid:"New folder name",msgstr:["Nytt mappnamn"]},{msgid:"New version",msgstr:["Ny version"]},{msgid:"No files in here",msgstr:["Inga filer här"]},{msgid:"No files matching your filter were found.",msgstr:["Inga filer som matchar ditt filter hittades."]},{msgid:"No matching files",msgstr:["Inga matchande filer"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Ange ett namn med minst 2 tecken."]},{msgid:"Recent",msgstr:["Nyligen"]},{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},{msgid:"Select all entries",msgstr:["Välj alla poster"]},{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},{msgid:"Select entry",msgstr:["Välj post"]},{msgid:"Select the row for {nodename}",msgstr:["Välj raden för {nodename}"]},{msgid:"Size",msgstr:["Storlek"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Hoppa över %n fil","Hoppa över %n filer"]},{msgid:"Skip this file",msgstr:["Hoppa över den här filen"]},{msgid:"Submit name",msgstr:["Skicka namn"]},{msgid:"Undo",msgstr:["Ångra"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Ladda upp lite innehåll eller synkronisera med dina enheter!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs kommer eventuella konflikterande filer i den också att skrivas över."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs kommer även filer i den att skrivas över."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Du är för närvarande identifierad som {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Du är för närvarande inte identifierad."]},{msgid:"You cannot leave the name empty.",msgstr:["Du kan inte lämna namnet tomt."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Du måste välja minst en konfliktlösning"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}]},{language:"tr",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['"{char}" karakteri bir klasör adında kullanılamaz.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['Bir ad içinde "{char}" karakteri kullanılamaz.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" adına izin verilmiyor.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:['"{segment}" adı sistem için ayrılmış olduğundan klasör adlarında kullanılamaz.']},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" adı sistem için ayrılmış olduğundan kullanılamaz.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n dosya çakışıyor","%n dosya çakışıyor"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["{dirname} içindeki %n dosya çakışıyor","{dirname} içindeki %n dosya çakışıyor"]},{msgid:"All files",msgstr:["Tüm dosyalar"]},{msgid:"Cancel",msgstr:["İptal"]},{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},{msgid:"Choose",msgstr:["Seçin"]},{msgid:"Choose {file}",msgstr:["{file} seçin"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n dosya seçin","%n dosya seçin"]},{msgid:"Confirm",msgstr:["Onayla"]},{msgid:"Continue",msgstr:["İlerle"]},{msgid:"Copy",msgstr:["Kopyala"]},{msgid:"Copy to {target}",msgstr:["{target} üzerine kopyala"]},{msgid:"Could not create the new folder",msgstr:["Yeni klasör oluşturulamadı"]},{msgid:"Could not load files settings",msgstr:["Dosyalar uygulamasının ayarları yüklenemedi"]},{msgid:"Could not load files views",msgstr:["Dosyalar uygulamasının görünümleri yüklenemedi"]},{msgid:"Create directory",msgstr:["Klasör oluştur"]},{msgid:"Current view selector",msgstr:["Geçerli görünüm seçici"]},{msgid:"Enter your name",msgstr:["Adınızı yazın"]},{msgid:"Existing version",msgstr:["Var olan sürüm"]},{msgid:"Failed to set nickname.",msgstr:["Takma ad ayarlanamadı."]},{msgid:"Favorites",msgstr:["Sık kullanılanlar"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir."]},{msgid:"Filter file list",msgstr:["Dosya listesini süz"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Klasör adları "{extension}" ile bitemez.']},{msgid:"Guest identification",msgstr:["Konuk kimliği"]},{msgid:"Home",msgstr:["Giriş"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},{msgid:"Invalid folder name.",msgstr:["Klasör adı geçersiz."]},{msgid:"Invalid name.",msgstr:["Ad geçersiz."]},{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor."]},{msgid:"Modified",msgstr:["Değiştirilme"]},{msgid:"Move",msgstr:["Taşı"]},{msgid:"Move to {target}",msgstr:["{target} üzerine taşı"]},{msgid:"Name",msgstr:["Ad"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Adlar en fazla 64 karakter uzunluğunda olabilir."]},{msgid:"Names must not be empty.",msgstr:["Ad boş olamaz."]},{msgid:'Names must not end with "{extension}".',msgstr:['Ad "{extension}" ile bitemez.']},{msgid:"Names must not start with a dot.",msgstr:["Ad nokta karakteri ile başlayamaz."]},{msgid:"New",msgstr:["Yeni"]},{msgid:"New folder",msgstr:["Yeni klasör"]},{msgid:"New folder name",msgstr:["Yeni klasör adı"]},{msgid:"New version",msgstr:["Yeni sürüm"]},{msgid:"No files in here",msgstr:["Burada herhangi bir dosya yok"]},{msgid:"No files matching your filter were found.",msgstr:["Süzgece uyan bir dosya bulunamadı."]},{msgid:"No matching files",msgstr:["Eşleşen bir dosya yok"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Ad en az 2 karakter uzunluğunda olmalıdır."]},{msgid:"Recent",msgstr:["Son kullanılanlar"]},{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},{msgid:"Select all entries",msgstr:["Tüm kayıtları seç"]},{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},{msgid:"Select entry",msgstr:["Kaydı seç"]},{msgid:"Select the row for {nodename}",msgstr:["{nodename} satırını seçin"]},{msgid:"Size",msgstr:["Boyut"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["%n dosyayı atla","%n dosyayı atla"]},{msgid:"Skip this file",msgstr:["Bu dosyayı atla"]},{msgid:"Submit name",msgstr:["Adı gönder"]},{msgid:"Undo",msgstr:["Geri al"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki dosyaların da üzerine yazılır."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasör seçildiğinde, içerik var olan klasöre yazılır ve alt klasörlerle bir çakışma çözümü uygulanır."]},{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["{nickname} olarak tanınıyorsunuz."]},{msgid:"You are currently not identified.",msgstr:["Henüz kendinizi tanıtmadınız."]},{msgid:"You cannot leave the name empty.",msgstr:["Ad boş bırakılamaz."]},{msgid:"You need to choose at least one conflict solution",msgstr:["En az bir çakışma çözümü seçmelisiniz"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosaynın en az bir sürümünü seçmelisiniz."]}]},{language:"uk",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["{char} не дозволено всередині назви каталогу."]},{msgid:'"{char}" is not allowed inside a name.',msgstr:['"{char}" не дозволено всередині імени.']},{msgid:'"{extension}" is not an allowed name.',msgstr:[`"{extension}" недозволене ім'я.`]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["{segment} є зарезервованим ім'ям і не дозволено для назви каталогу."]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:[`"{segment}" зарезервоване ім'я і не дозволено для використання.`]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n конфлікт файлів","%n конфлікти файлів","%n конфліктів файлів","%n конфліктів файлів"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["%n конфлікт файлів у каталозі {dirname}","%n конфлікти файлів у каталозі {dirname}","%n конфліктів файлів у каталозі {dirname}","%n конфліктів файлів у каталозі {dirname}"]},{msgid:"All files",msgstr:["Всі файли"]},{msgid:"Cancel",msgstr:["Скасувати"]},{msgid:"Cancel the entire operation",msgstr:["Скасувати всю операцію"]},{msgid:"Choose",msgstr:["Вибрати"]},{msgid:"Choose {file}",msgstr:["Вибрати {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Вибрати %n файл","Вибрати %n файли","Вибрати %n файлів","Вибрати %n файлів"]},{msgid:"Confirm",msgstr:["Підтвердити"]},{msgid:"Continue",msgstr:["Продовжити"]},{msgid:"Copy",msgstr:["Копіювати"]},{msgid:"Copy to {target}",msgstr:["Копіювати до {target}"]},{msgid:"Could not create the new folder",msgstr:["Не вдалося створити новий каталог"]},{msgid:"Could not load files settings",msgstr:["Не вдалося завантажити налаштування файлів"]},{msgid:"Could not load files views",msgstr:["Не вдалося завантажити подання файлів"]},{msgid:"Create directory",msgstr:["Створити каталог"]},{msgid:"Current view selector",msgstr:["Вибір подання"]},{msgid:"Enter your name",msgstr:["Зазначте ваше ім'я"]},{msgid:"Existing version",msgstr:["Наявна версія"]},{msgid:"Failed to set nickname.",msgstr:["Не вдалося встановити псевдо."]},{msgid:"Favorites",msgstr:["Із зірочкою"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які ви позначите зірочкою."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які було нещодавно змінено."]},{msgid:"Filter file list",msgstr:["Фільтрувати список файлів"]},{msgid:'Folder names must not end with "{extension}".',msgstr:[`Ім'я каталогу не може закінчуватися на "{extension}".`]},{msgid:"Guest identification",msgstr:["Ім'я для гостя"]},{msgid:"Home",msgstr:["Домівка"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо вибрати обидві версії, до назви вхідного файлу буде додано цифру. "]},{msgid:"Invalid folder name.",msgstr:["Недійсне ім'я каталогу."]},{msgid:"Invalid name.",msgstr:["Недійсне ім'я."]},{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},{msgid:"Modified",msgstr:["Змінено"]},{msgid:"Move",msgstr:["Перемістити"]},{msgid:"Move to {target}",msgstr:["Перемістити до {target}"]},{msgid:"Name",msgstr:["Ім'я"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Імена мають мати довжину не більше 64 символів."]},{msgid:"Names must not be empty.",msgstr:["Ім'я не може бути порожнє."]},{msgid:'Names must not end with "{extension}".',msgstr:[`Ім'я не може закінчуватися на "{extension}".`]},{msgid:"Names must not start with a dot.",msgstr:["Ім'я не може починатися з крапки."]},{msgid:"New",msgstr:["Новий"]},{msgid:"New folder",msgstr:["Новий каталог"]},{msgid:"New folder name",msgstr:["Ім'я нового каталогу"]},{msgid:"New version",msgstr:["Нова версія"]},{msgid:"No files in here",msgstr:["Тут відсутні файли"]},{msgid:"No files matching your filter were found.",msgstr:["Відсутні збіги за фільтром."]},{msgid:"No matching files",msgstr:["Відсутні збіги файлів."]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Зазначте ім'я довжиною не менше 2 символів"]},{msgid:"Recent",msgstr:["Останні"]},{msgid:"Select all checkboxes",msgstr:["Вибрати всі прапорці"]},{msgid:"Select all entries",msgstr:["Вибрати всі записи"]},{msgid:"Select all existing files",msgstr:["Вибрати всі наявні файли"]},{msgid:"Select all new files",msgstr:["Вибрати всі нові файли"]},{msgid:"Select entry",msgstr:["Вибрати запис"]},{msgid:"Select the row for {nodename}",msgstr:["Вибрати рядок для {nodename}"]},{msgid:"Size",msgstr:["Розмір"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["Пропустити %n файл","Пропустити %n файли","Пропустити %n файлів","Пропустити %n файлів"]},{msgid:"Skip this file",msgstr:["Пропустити цей файл"]},{msgid:"Submit name",msgstr:["Встановити ім'я"]},{msgid:"Undo",msgstr:["Повернути"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Завантажте вміст або синхронізуйте з вашим пристроєм!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Коли вибрано вхідний каталог, будь-які файли з конфліктами буде також перезаписано."]},{msgid:"When an incoming folder is selected, any files within it will also be overwritten.",msgstr:["Якщо буде вибрано вхідний каталог, будь-який файл в ньому буде також перезаписано."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Коли вибрано вхідний каталог, вміст буде записано до існуючого каталогу, а також виконано вирішення конфліктів всередині каталогу."]},{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Вас визначено як {nickname}."]},{msgid:"You are currently not identified.",msgstr:["Вас не ідентифіковано."]},{msgid:"You cannot leave the name empty.",msgstr:["Потрібно зазначити ім'я."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Треб вибрати щонайменше одне розв'язання конфлікту"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Треба вибрати щонайменше одну версію кожного файлу, щоби продовжити."]}]},{language:"uz",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:['Papka nomi ichida "{char}" ga ruxsat berilmaydi.']},{msgid:'"{char}" is not allowed inside a name.',msgstr:['Nom ichida "{char}" ga ruxsat berilmagan.']},{msgid:'"{extension}" is not an allowed name.',msgstr:['"{extension}" ruxsat etilgan nom emas.']},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:[`"{segment}" ajratilgan nom bo'lib, papka nomlari uchun ruxsat berilmagan.`]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:['"{segment}" - zaxiralangan nom va ruxsat berilmaydi.']},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n fayl ziddiyatli"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["{dirname} da %n fayl ziddiyati"]},{msgid:"All files",msgstr:["Barcha fayllar"]},{msgid:"Cancel",msgstr:["Bekor qilish"]},{msgid:"Cancel the entire operation",msgstr:["Butun operatsiyani bekor qiling"]},{msgid:"Choose",msgstr:["Tanlang"]},{msgid:"Choose {file}",msgstr:["Tanlang {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Tanlang %n faylni"]},{msgid:"Confirm",msgstr:["Tasdiqlang"]},{msgid:"Continue",msgstr:["Davom eting"]},{msgid:"Copy",msgstr:["Nusxa"]},{msgid:"Copy to {target}",msgstr:[" {target} ga nusxa"]},{msgid:"Could not create the new folder",msgstr:["Yangi jild yaratib bo‘lmadi"]},{msgid:"Could not load files settings",msgstr:["Fayl sozlamalari yuklanmadi"]},{msgid:"Could not load files views",msgstr:["Fayllarni koʻrishni yuklab boʻlmadi"]},{msgid:"Create directory",msgstr:["Katalog yaratish"]},{msgid:"Current view selector",msgstr:["Joriy ko'rinish selektori"]},{msgid:"Enter your name",msgstr:["Ismingizni kiriting"]},{msgid:"Existing version",msgstr:["Mavjud versiya"]},{msgid:"Failed to set nickname.",msgstr:["Taxallusni o‘rnatib bo‘lmadi."]},{msgid:"Favorites",msgstr:["Tanlanganlar"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tanlangan deb belgilagan fayl va papkalar shu yerda koʻrinadi."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Siz yaqinda oʻzgartirgan fayl va papkalar shu yerda koʻrinadi."]},{msgid:"Filter file list",msgstr:["Fayl ro'yxatini filtrlash"]},{msgid:'Folder names must not end with "{extension}".',msgstr:['Papka nomlari "{extension}" bilan tugamasligi kerak.']},{msgid:"Guest identification",msgstr:["Foydalanuvchini identifikatsiyalash"]},{msgid:"Home",msgstr:["Uy"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Agar siz ikkala versiyani tanlasangiz, kiruvchi fayl nomiga qo'shilgan raqamga ega bo'ladi."]},{msgid:"Invalid folder name.",msgstr:["Jild nomi noto'g'ri."]},{msgid:"Invalid name.",msgstr:["Nomi noto‘g‘ri."]},{msgid:"Last modified date unknown",msgstr:["Oxirgi tahrirlangan sana noma'lum"]},{msgid:"Modified",msgstr:["Modifikatsiyalangan"]},{msgid:"Move",msgstr:["Ko'chirish"]},{msgid:"Move to {target}",msgstr:[" {target} ga ko'chirish"]},{msgid:"Name",msgstr:["Nomi"]},{msgid:"Names may be at most 64 characters long.",msgstr:["Ismlar ko'pi bilan 64 ta belgidan iborat bo'lishi mumkin."]},{msgid:"Names must not be empty.",msgstr:["Ismlar bo'sh bo'lmasligi kerak."]},{msgid:'Names must not end with "{extension}".',msgstr:['Ismlar "{extension}" bilan tugamasligi kerak.']},{msgid:"Names must not start with a dot.",msgstr:["Ismlar nuqta bilan boshlanmasligi kerak."]},{msgid:"New",msgstr:["Yangi"]},{msgid:"New folder",msgstr:["Yangi jild"]},{msgid:"New folder name",msgstr:["Yangi jild nomi"]},{msgid:"New version",msgstr:["Yangi versiya"]},{msgid:"No files in here",msgstr:["Fayl mavjud emas"]},{msgid:"No files matching your filter were found.",msgstr:["Filtringizga mos keladigan fayl topilmadi."]},{msgid:"No matching files",msgstr:["Mos fayllar yo'q"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["Kamida 2 ta belgidan iborat nom kiriting."]},{msgid:"Recent",msgstr:["Yaqinda"]},{msgid:"Select all checkboxes",msgstr:["Barcha katakchalarni belgilang"]},{msgid:"Select all entries",msgstr:["Barcha yozuvlarni tanlang"]},{msgid:"Select all existing files",msgstr:["Barcha mavjud fayllarni tanlang"]},{msgid:"Select all new files",msgstr:["Barcha yangi fayllarni tanlang"]},{msgid:"Select entry",msgstr:["Yozuvni tanlang"]},{msgid:"Select the row for {nodename}",msgstr:["{nodename} uchun qatorni tanlang"]},{msgid:"Size",msgstr:["O`lcham"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["%n faylni oʻtkazib yuborish"]},{msgid:"Skip this file",msgstr:["Ushbu faylni o'tkazib yuboring"]},{msgid:"Submit name",msgstr:["Ismni tasdiqlang"]},{msgid:"Undo",msgstr:["Bekor qilish"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Qurilmangizga ba'zi kontentni yuklang yoki sinxronlang!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Kiruvchi papka tanlanganda, undagi har qanday ziddiyatli fayllar ham ustiga yoziladi."]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Kiruvchi papka tanlanganda, kontent mavjud jildga yoziladi va nizolarni rekursiv hal qilish amalga oshiriladi."]},{msgid:"Which files do you want to keep?",msgstr:["Qaysi fayllarni saqlamoqchisiz?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["Siz hozirda {nickname} sifatida aniqlangansiz."]},{msgid:"You are currently not identified.",msgstr:["Siz hozirda identifikatsiyadan o'tmagansiz"]},{msgid:"You cannot leave the name empty.",msgstr:["Ism katagini bo'sh qoldirib bo'lmaydi."]},{msgid:"You need to choose at least one conflict solution",msgstr:["Siz kamida bitta mojaro yechimini tanlashingiz kerak"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["Davom etish uchun har bir faylning kamida bitta versiyasini tanlashingiz kerak."]}]},{language:"vi",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" là tên thư mục không hợp lệ.']},{msgid:'"{name}" is not an allowed folder name',msgstr:['"1{name}"không phải là tên thư mục được cho phép']},{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/"không được phép đặt trong tên thư mục.']},{msgid:"All files",msgstr:["Tất cả tệp"]},{msgid:"Choose",msgstr:["Chọn"]},{msgid:"Choose {file}",msgstr:["Chọn {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Chọn %n tệp"]},{msgid:"Copy",msgstr:["Sao chép"]},{msgid:"Copy to {target}",msgstr:["Sao chép đến {target}"]},{msgid:"Could not create the new folder",msgstr:["Không thể tạo thư mục mới"]},{msgid:"Could not load files settings",msgstr:["Không thể tải tập tin cài đặt"]},{msgid:"Could not load files views",msgstr:["Không thể tải xuống tệp xem"]},{msgid:"Create directory",msgstr:["Tạo thư mục"]},{msgid:"Current view selector",msgstr:["Hiện tại chế độ xem của bộ chọn"]},{msgid:"Favorites",msgstr:["Yêu cầu thích"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây."]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây."]},{msgid:"Filter file list",msgstr:["Filter list file"]},{msgid:"Folder name cannot be empty.",msgstr:["Thư mục tên không được để trống."]},{msgid:"Home",msgstr:["Trang chủ"]},{msgid:"Modified",msgstr:["Đã sửa đổi"]},{msgid:"Move",msgstr:["Di chuyển"]},{msgid:"Move to {target}",msgstr:["Di chuyển đến{target}"]},{msgid:"Name",msgstr:["Tên"]},{msgid:"New",msgstr:["Mới"]},{msgid:"New folder",msgstr:["New thư mục"]},{msgid:"New folder name",msgstr:["New thư mục tên"]},{msgid:"No files in here",msgstr:["No file at here"]},{msgid:"No files matching your filter were found.",msgstr:["Không tìm thấy tệp nào phù hợp với bộ lọc của bạn."]},{msgid:"No matching files",msgstr:["No file phù hợp"]},{msgid:"Recent",msgstr:["Gần đây"]},{msgid:"Select all entries",msgstr:["Choose all items"]},{msgid:"Select entry",msgstr:["Chọn mục nhập"]},{msgid:"Select the row for {nodename}",msgstr:["Choose hang cho{nodename}"]},{msgid:"Size",msgstr:["Kích cỡ"]},{msgid:"Undo",msgstr:["Hoàn tác"]},{msgid:"Upload some content or sync with your devices!",msgstr:["Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!"]}]},{language:"zh_CN",translations:[{msgid:'"{name}" is an invalid folder name.',msgstr:["“{name}” 是无效的文件夹名称。"]},{msgid:'"{name}" is not an allowed folder name',msgstr:["“{name}” 不是允许的文件夹名称"]},{msgid:'"/" is not allowed inside a folder name.',msgstr:["文件夹名称中不允许包含 “/”。"]},{msgid:"All files",msgstr:["所有文件"]},{msgid:"Choose",msgstr:["选择"]},{msgid:"Choose {file}",msgstr:["选择 {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["选择 %n 个文件"]},{msgid:"Copy",msgstr:["复制"]},{msgid:"Copy to {target}",msgstr:["复制到 {target}"]},{msgid:"Could not create the new folder",msgstr:["无法创建新文件夹"]},{msgid:"Could not load files settings",msgstr:["无法加载文件设置"]},{msgid:"Could not load files views",msgstr:["无法加载文件视图"]},{msgid:"Create directory",msgstr:["创建目录"]},{msgid:"Current view selector",msgstr:["当前视图选择器"]},{msgid:"Favorites",msgstr:["最爱"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您标记为最爱的文件与文件夹会显示在这里"]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的文件与文件夹会显示在这里"]},{msgid:"Filter file list",msgstr:["过滤文件列表"]},{msgid:"Folder name cannot be empty.",msgstr:["文件夹名称不能为空。"]},{msgid:"Home",msgstr:["主目录"]},{msgid:"Modified",msgstr:["已修改"]},{msgid:"Move",msgstr:["移动"]},{msgid:"Move to {target}",msgstr:["移动至 {target}"]},{msgid:"Name",msgstr:["名称"]},{msgid:"New",msgstr:["新建"]},{msgid:"New folder",msgstr:["新文件夹"]},{msgid:"New folder name",msgstr:["新文件夹名称"]},{msgid:"No files in here",msgstr:["此处无文件"]},{msgid:"No files matching your filter were found.",msgstr:["找不到符合您过滤条件的文件"]},{msgid:"No matching files",msgstr:["无符合的文件"]},{msgid:"Recent",msgstr:["最近"]},{msgid:"Select all entries",msgstr:["选择所有条目"]},{msgid:"Select entry",msgstr:["选择条目"]},{msgid:"Select the row for {nodename}",msgstr:["选择 {nodename} 的列"]},{msgid:"Size",msgstr:["大小"]},{msgid:"Undo",msgstr:[" 撤消"]},{msgid:"Upload some content or sync with your devices!",msgstr:["上传一些项目或与您的设备同步!"]}]},{language:"zh_HK",translations:[{msgid:'"{char}" is not allowed inside a folder name.',msgstr:["資料夾名稱中不允許使用「{char}」。"]},{msgid:'"{char}" is not allowed inside a name.',msgstr:['名稱中不能使用 "{char}"。']},{msgid:'"{extension}" is not an allowed name.',msgstr:["「{extension}」並非允許的名稱。"]},{msgid:'"{segment}" is a reserved name and not allowed for folder names.',msgstr:["「{segment}」為保留名稱,不能用作資料夾名稱。"]},{msgid:'"{segment}" is a reserved name and not allowed.',msgstr:["「{segment}」是一個保留名稱,不能使用。"]},{msgid:"%n file conflict",msgid_plural:"%n files conflict",msgstr:["%n 檔案衝突"]},{msgid:"%n file conflict in {dirname}",msgid_plural:"%n file conflicts in {dirname}",msgstr:["{dirname} 中有 %n 個檔案衝突"]},{msgid:"All files",msgstr:["所有檔案"]},{msgid:"Cancel",msgstr:["取消"]},{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},{msgid:"Choose",msgstr:["選擇"]},{msgid:"Choose {file}",msgstr:["選擇 {file}"]},{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["選擇 %n 個檔案"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Continue",msgstr:["繼續"]},{msgid:"Copy",msgstr:["複製"]},{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},{msgid:"Could not load files settings",msgstr:["無法載入檔案設定"]},{msgid:"Could not load files views",msgstr:["無法載入檔案視圖"]},{msgid:"Create directory",msgstr:["建立目錄"]},{msgid:"Current view selector",msgstr:["目前視圖選擇器"]},{msgid:"Enter your name",msgstr:["輸入您的名字"]},{msgid:"Existing version",msgstr:["現有的版本"]},{msgid:"Failed to set nickname.",msgstr:["無法設置暱稱。"]},{msgid:"Favorites",msgstr:["最愛"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},{msgid:"Filter file list",msgstr:["過濾檔案清單"]},{msgid:'Folder names must not end with "{extension}".',msgstr:["資料夾名稱不得以「{extension}」結尾。"]},{msgid:"Guest identification",msgstr:["訪客身份識別"]},{msgid:"Home",msgstr:["首頁"]},{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["如果您選擇兩個版本,傳入的檔案名稱將會附加一個數字。"]},{msgid:"Invalid folder name.",msgstr:["無效的資料夾名稱。"]},{msgid:"Invalid name.",msgstr:["無效的名字。"]},{msgid:"Last modified date unknown",msgstr:["最後的修改日期不詳"]},{msgid:"Modified",msgstr:["已修改"]},{msgid:"Move",msgstr:["移動"]},{msgid:"Move to {target}",msgstr:["移動至 {target}"]},{msgid:"Name",msgstr:["名稱"]},{msgid:"Names may be at most 64 characters long.",msgstr:["名稱長度最多為 64 個字元。"]},{msgid:"Names must not be empty.",msgstr:["名稱不能為空。"]},{msgid:'Names must not end with "{extension}".',msgstr:["名稱不得以「{extension}」結尾。"]},{msgid:"Names must not start with a dot.",msgstr:["名稱不得以點開頭。"]},{msgid:"New",msgstr:["新"]},{msgid:"New folder",msgstr:["新資料夾"]},{msgid:"New folder name",msgstr:["新資料夾名稱"]},{msgid:"New version",msgstr:["新版本"]},{msgid:"No files in here",msgstr:["此處無檔案"]},{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},{msgid:"No matching files",msgstr:["沒有匹配的檔案"]},{msgid:"Please enter a name with at least 2 characters.",msgstr:["請輸入至少 2 個字符的名稱。"]},{msgid:"Recent",msgstr:["最近"]},{msgid:"Select all checkboxes",msgstr:["選擇所有復選框"]},{msgid:"Select all entries",msgstr:["選擇所有項目"]},{msgid:"Select all existing files",msgstr:["選擇所有現有的檔案"]},{msgid:"Select all new files",msgstr:["選擇所有新檔案"]},{msgid:"Select entry",msgstr:["選擇項目"]},{msgid:"Select the row for {nodename}",msgstr:["選擇 {nodename} 的列"]},{msgid:"Size",msgstr:["大小"]},{msgid:"Skip %n file",msgid_plural:"Skip %n files",msgstr:["跳過 %n 個檔案"]},{msgid:"Skip this file",msgstr:["跳過此檔案"]},{msgid:"Submit name",msgstr:["遞交名字"]},{msgid:"Undo",msgstr:["還原"]},{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步!"]},{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾時,其中任何衝突的檔案也將被覆蓋。"]},{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["當選取傳入資料夾時,內容將寫入現有資料夾,並執行遞歸衝突解決。"]},{msgid:"Which files do you want to keep?",msgstr:["你想保留哪些檔案?"]},{msgid:"You are currently identified as {nickname}.",msgstr:["您目前被識別為 {nickname}。"]},{msgid:"You are currently not identified.",msgstr:["您目前尚未被識別。"]},{msgid:"You cannot leave the name empty.",msgstr:["名稱不能留空。"]},{msgid:"You need to choose at least one conflict solution",msgstr:["你需要選擇至少一種衝突解決方案。"]},{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須選擇每個文件的至少一個版本才能繼續。"]}]},{language:"zh_TW",translations:[{msgid:'"{name}" is an invalid file name.',msgstr:["「{name}」是無效的檔案名稱。"]},{msgid:'"{name}" is not an allowed filetype',msgstr:["「{name}」並非允許的檔案類型"]},{msgid:'"/" is not allowed inside a file name.',msgstr:["檔案名稱中不允許使用「/」。"]},{msgid:"All files",msgstr:["所有檔案"]},{msgid:"Choose",msgstr:["選擇"]},{msgid:"Choose {file}",msgstr:["選擇 {file}"]},{msgid:"Copy",msgstr:["複製"]},{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},{msgid:"Create directory",msgstr:["建立目錄"]},{msgid:"Current view selector",msgstr:["目前檢視選取器"]},{msgid:"Favorites",msgstr:["最愛"]},{msgid:"File name cannot be empty.",msgstr:["檔案名稱不能為空。"]},{msgid:"Filepicker sections",msgstr:["檔案挑選器選取"]},{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},{msgid:"Filter file list",msgstr:["過濾檔案清單"]},{msgid:"Home",msgstr:["家"]},{msgid:"Mime type {mime}",msgstr:["Mime type {mime}"]},{msgid:"Modified",msgstr:["已修改"]},{msgid:"Move",msgstr:["移動"]},{msgid:"Move to {target}",msgstr:["移動至 {target}"]},{msgid:"Name",msgstr:["名稱"]},{msgid:"New",msgstr:["新"]},{msgid:"New folder",msgstr:["新資料夾"]},{msgid:"New folder name",msgstr:["新資料夾名稱"]},{msgid:"No files in here",msgstr:["此處無檔案"]},{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},{msgid:"No matching files",msgstr:["無符合的檔案"]},{msgid:"Recent",msgstr:["最近"]},{msgid:"Select all entries",msgstr:["選取所有條目"]},{msgid:"Select entry",msgstr:["選取條目"]},{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},{msgid:"Size",msgstr:["大小"]},{msgid:"Undo",msgstr:["復原"]},{msgid:"unknown",msgstr:["未知"]},{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}]}]){const{language:u,translations:t}=e,s={headers:{},translations:{"":Object.fromEntries(t.map(n=>[n.msgid,n]))}};N3.addTranslation(u,s)}const _i=N3.build();_i.ngettext.bind(_i),_i.gettext.bind(_i);Jm().setApp("@nextcloud/dialogs").detectLogLevel().build();const oC="off",rC="polite",aC="assertive";var br=(e=>(e[e.OFF=oC]="OFF",e[e.POLITE=rC]="POLITE",e[e.ASSERTIVE=aC]="ASSERTIVE",e))(br||{});const lC=7e3;function S3(e,u){if(u={timeout:lC,isHTML:!1,type:void 0,selector:void 0,onRemove:()=>{},onClick:void 0,close:!0,...u},typeof e=="string"&&!u.isHTML){const o=document.createElement("div");o.innerHTML=e,e=o.innerText}let t=u.type??"";typeof u.onClick=="function"&&(t+=" toast-with-click ");const s=e instanceof Node;let n=br.POLITE;u.ariaLive?n=u.ariaLive:(u.type==="toast-error"||u.type==="toast-undo")&&(n=br.ASSERTIVE);const i=j1({[s?"node":"text"]:e,duration:u.timeout,callback:u.onRemove,onClick:u.onClick,close:u.close,gravity:"top",selector:u.selector,position:"right",backgroundColor:"",className:"dialogs "+t,escapeMarkup:!u.isHTML,ariaLive:n});return i.showToast(),i}function hy(e,u){return S3(e,{...u,type:"toast-error"})}function vy(e,u){return S3(e,{...u,type:"toast-success"})}function q0(){return typeof window<"u"}function cn(e){return _3(e)?(e.nodeName||"").toLowerCase():"#document"}function Ou(e){var u;return(e==null||(u=e.ownerDocument)==null?void 0:u.defaultView)||window}function Mt(e){var u;return(u=(_3(e)?e.ownerDocument:e.document)||window.document)==null?void 0:u.documentElement}function _3(e){return q0()?e instanceof Node||e instanceof Ou(e).Node:!1}function Ct(e){return q0()?e instanceof Element||e instanceof Ou(e).Element:!1}function ns(e){return q0()?e instanceof HTMLElement||e instanceof Ou(e).HTMLElement:!1}function D4(e){return!q0()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Ou(e).ShadowRoot}function Y0(e){const{overflow:u,overflowX:t,overflowY:s,display:n}=Bt(e);return/auto|scroll|overlay|hidden|clip/.test(u+s+t)&&n!=="inline"&&n!=="contents"}function dC(e){return/^(table|td|th)$/.test(cn(e))}function Z0(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const mC=/transform|translate|scale|rotate|perspective|filter/,cC=/paint|layout|strict|content/,cs=e=>!!e&&e!=="none";let Vo;function ia(e){const u=Ct(e)?Bt(e):e;return cs(u.transform)||cs(u.translate)||cs(u.scale)||cs(u.rotate)||cs(u.perspective)||!oa()&&(cs(u.backdropFilter)||cs(u.filter))||mC.test(u.willChange||"")||cC.test(u.contain||"")}function gC(e){let u=_s(e);for(;ns(u)&&!ti(u);){if(ia(u))return u;if(Z0(u))return null;u=_s(u)}return null}function oa(){return Vo==null&&(Vo=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),Vo}function ti(e){return/^(html|body|#document)$/.test(cn(e))}function Bt(e){return Ou(e).getComputedStyle(e)}function X0(e){return Ct(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function _s(e){if(cn(e)==="html")return e;const u=e.assignedSlot||e.parentNode||D4(e)&&e.host||Mt(e);return D4(u)?u.host:u}function O3(e){const u=_s(e);return ti(u)?(e.ownerDocument||e).body:ns(u)&&Y0(u)?u:O3(u)}function si(e,u,t){var s;u===void 0&&(u=[]),t===void 0&&(t=!0);const n=O3(e),i=n===((s=e.ownerDocument)==null?void 0:s.body),o=Ou(n);if(i){const r=Dr(o);return u.concat(o,o.visualViewport||[],Y0(n)?n:[],r&&t?si(r):[])}else return u.concat(n,si(n,[],t))}function Dr(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function T3(e){const u=Bt(e);let t=parseFloat(u.width)||0,s=parseFloat(u.height)||0;const n=ns(e),i=n?e.offsetWidth:t,o=n?e.offsetHeight:s,r=E0(t)!==i||E0(s)!==o;return r&&(t=i,s=o),{width:t,height:s,$:r}}function ra(e){return Ct(e)?e:e.contextElement}function on(e){const u=ra(e);if(!ns(u))return Tt(1);const t=u.getBoundingClientRect(),{width:s,height:n,$:i}=T3(u);let o=(i?E0(t.width):t.width)/s,r=(i?E0(t.height):t.height)/n;return(!o||!Number.isFinite(o))&&(o=1),(!r||!Number.isFinite(r))&&(r=1),{x:o,y:r}}const fC=Tt(0);function z3(e){const u=Ou(e);return!oa()||!u.visualViewport?fC:{x:u.visualViewport.offsetLeft,y:u.visualViewport.offsetTop}}function pC(e,u,t){return u===void 0&&(u=!1),!!t&&u&&t===Ou(e)}function Os(e,u,t,s){u===void 0&&(u=!1),t===void 0&&(t=!1);const n=e.getBoundingClientRect(),i=ra(e);let o=Tt(1);u&&(s?Ct(s)&&(o=on(s)):o=on(e));const r=pC(i,t,s)?z3(i):Tt(0);let a=(n.left+r.x)/o.x,m=(n.top+r.y)/o.y,l=n.width/o.x,g=n.height/o.y;if(i&&s){const p=Ou(i),h=Ct(s)?Ou(s):s;let y=p,E=Dr(y);for(;E&&h!==y;){const F=on(E),B=E.getBoundingClientRect(),A=Bt(E),O=B.left+(E.clientLeft+parseFloat(A.paddingLeft))*F.x,N=B.top+(E.clientTop+parseFloat(A.paddingTop))*F.y;a*=F.x,m*=F.y,l*=F.x,g*=F.y,a+=O,m+=N,y=Ou(E),E=Dr(y)}}return Fs({width:l,height:g,x:a,y:m})}function J0(e,u){const t=X0(e).scrollLeft;return u?u.left+t:Os(Mt(e)).left+t}function P3(e,u){const t=e.getBoundingClientRect(),s=t.left+u.scrollLeft-J0(e,t),n=t.top+u.scrollTop;return{x:s,y:n}}function hC(e){let{elements:u,rect:t,offsetParent:s,strategy:n}=e;const i=n==="fixed",o=Mt(s),r=u?Z0(u.floating):!1;if(s===o||r&&i)return t;let a={scrollLeft:0,scrollTop:0},m=Tt(1);const l=Tt(0),g=ns(s);if((g||!i)&&((cn(s)!=="body"||Y0(o))&&(a=X0(s)),g)){const h=Os(s);m=on(s),l.x=h.x+s.clientLeft,l.y=h.y+s.clientTop}const p=o&&!g&&!i?P3(o,a):Tt(0);return{width:t.width*m.x,height:t.height*m.y,x:t.x*m.x-a.scrollLeft*m.x+l.x+p.x,y:t.y*m.y-a.scrollTop*m.y+l.y+p.y}}function vC(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function EC(e){const u=X0(e),t=e.ownerDocument.body,s=Ot(e.scrollWidth,e.clientWidth,t.scrollWidth,t.clientWidth),n=Ot(e.scrollHeight,e.clientHeight,t.scrollHeight,t.clientHeight);let i=-u.scrollLeft+J0(e);const o=-u.scrollTop;return Bt(t).direction==="rtl"&&(i+=Ot(e.clientWidth,t.clientWidth)-s),{width:s,height:n,x:i,y:o}}const CC=25;function BC(e,u,t){t===void 0&&(t="viewport");const s=t==="layoutViewport",n=Ou(e),i=Mt(e),o=n.visualViewport;let r=i.clientWidth,a=i.clientHeight,m=0,l=0;if(o){const g=!oa()||u==="fixed";s?g||(m=-o.offsetLeft,l=-o.offsetTop):(r=o.width,a=o.height,g&&(m=o.offsetLeft,l=o.offsetTop))}if(J0(i)<=0){const g=i.ownerDocument,p=g.body,h=getComputedStyle(p),y=g.compatMode==="CSS1Compat"&&parseFloat(h.marginLeft)+parseFloat(h.marginRight)||0,E=Math.abs(i.clientWidth-p.clientWidth-y),F=getComputedStyle(i).scrollbarGutter==="stable both-edges"?E/2:E;F<=CC&&(r-=F)}return{width:r,height:a,x:m,y:l}}function yC(e,u){const t=Os(e,!0,u==="fixed"),s=t.top+e.clientTop,n=t.left+e.clientLeft,i=on(e),o=e.clientWidth*i.x,r=e.clientHeight*i.y,a=n*i.x,m=s*i.y;return{width:o,height:r,x:a,y:m}}function F4(e,u,t){let s;if(u==="viewport"||u==="layoutViewport")s=BC(e,t,u);else if(u==="document")s=EC(Mt(e));else if(Ct(u))s=yC(u,t);else{const n=z3(e);s={x:u.x-n.x,y:u.y-n.y,width:u.width,height:u.height}}return Fs(s)}function xC(e,u){const t=u.get(e);if(t)return t;let s=si(e,[],!1).filter(r=>Ct(r)&&cn(r)!=="body"),n=null;const i=Bt(e).position==="fixed";let o=i?_s(e):e;for(;Ct(o)&&!ti(o);){const r=Bt(o),a=ia(o),m=n?n.position:i?"fixed":"";!a&&(m==="fixed"||m==="absolute"&&r.position==="static")?s=s.filter(l=>l!==o):n=r,o=_s(o)}return u.set(e,s),s}function AC(e){let{element:u,boundary:t,rootBoundary:s,strategy:n}=e;const i=[...t==="clippingAncestors"?Z0(u)?[]:xC(u,this._c):[].concat(t),s],o=F4(u,i[0],n);let r=o.top,a=o.right,m=o.bottom,l=o.left;for(let g=1;g{r(!1,1e-7)},1e3)}I=!1}try{s=new IntersectionObserver(Y,{...K,root:i.ownerDocument})}catch{s=new IntersectionObserver(Y,K)}s.observe(e)}const a=Ou(e),m=()=>r(t);return a.addEventListener("resize",m),r(!0),()=>{a.removeEventListener("resize",m),o()}}function SC(e,u,t,s){s===void 0&&(s={});const{ancestorScroll:n=!0,ancestorResize:i=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:r=typeof IntersectionObserver=="function",animationFrame:a=!1}=s,m=ra(e),l=n||i?[...m?si(m):[],...u?si(u):[]]:[];l.forEach(B=>{n&&B.addEventListener("scroll",t),i&&B.addEventListener("resize",t)});const g=m&&r?NC(m,t,i):null;let p=-1,h=null;o&&(h=new ResizeObserver(B=>{let[A]=B;A&&A.target===m&&h&&u&&(h.unobserve(u),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var O;(O=h)==null||O.observe(u)})),t()}),m&&!a&&h.observe(m),u&&h.observe(u));let y,E=a?Os(e):null;a&&F();function F(){const B=Os(e);E&&!L3(E,B)&&t(),E=B,y=requestAnimationFrame(F)}return t(),()=>{var B;l.forEach(A=>{n&&A.removeEventListener("scroll",t),i&&A.removeEventListener("resize",t)}),g?.(),(B=h)==null||B.disconnect(),h=null,a&&cancelAnimationFrame(y)}}const _C=g3,OC=f3,TC=m3,zC=hE,PC=(e,u,t)=>{const s=new Map,n=t??{},i={...kC,...n.platform,_c:s};return d3(e,u,{...n,platform:i})},RC={mounted(e,{instance:u}){if(u.appendToBody){document.body.appendChild(e);const{height:t,top:s,left:n,width:i}=u.$refs.toggle.getBoundingClientRect(),o=window.scrollX||window.pageXOffset,r=window.scrollY||window.pageYOffset;e.unbindPosition=u.calculatePosition(e,u,{width:i+"px",left:o+n+"px",top:r+s+t+"px"})}},unmounted(e,{instance:u}){u.appendToBody&&(e.unbindPosition&&typeof e.unbindPosition=="function"&&e.unbindPosition(),e.parentNode&&e.parentNode.removeChild(e))}},LC={props:{loading:{type:Boolean,default:!1}},data(){return{mutableLoading:!1}},watch:{search(){this.$emit("search",this.search,this.toggleLoading)},loading(e){this.mutableLoading=e}},methods:{toggleLoading(e=null){return e==null?this.mutableLoading=!this.mutableLoading:this.mutableLoading=e}}},jC={props:{autoscroll:{type:Boolean,default:!0}},watch:{typeAheadPointer(){this.autoscroll&&this.maybeAdjustScroll()},open(e){this.autoscroll&&e&&this.$nextTick(()=>this.maybeAdjustScroll())}},methods:{maybeAdjustScroll(){const e=this.$refs.dropdownMenu?.children[this.typeAheadPointer]||!1;if(e){const u=this.getDropdownViewport(),{top:t,bottom:s,height:n}=e.getBoundingClientRect();if(tu.bottom)return this.$refs.dropdownMenu.scrollTop=e.offsetTop-(u.height-n)}},getDropdownViewport(){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.getBoundingClientRect():{height:0,top:0,bottom:0}}}},IC={data(){return{typeAheadPointer:-1}},watch:{filteredOptions(){if(this.resetFocusOnOptionsChange){for(let e=0;e=0;e--)if(this.selectable(this.filteredOptions[e])){this.typeAheadPointer=e;break}},typeAheadDown(){for(let e=this.typeAheadPointer+1;e{u[t]=e[t]}),JSON.stringify(u)}let $C=0;function UC(){return++$C}const aa=(e,u)=>{const t=e.__vccOpts||e;for(const[s,n]of u)t[s]=n;return t},VC={},WC={xmlns:"http://www.w3.org/2000/svg",width:"10",height:"10"};function HC(e,u){return me(),Be("svg",WC,[...u[0]||(u[0]=[Ce("path",{d:"M6.895455 5l2.842897-2.842898c.348864-.348863.348864-.914488 0-1.263636L9.106534.261648c-.348864-.348864-.914489-.348864-1.263636 0L5 3.104545 2.157102.261648c-.348863-.348864-.914488-.348864-1.263636 0L.261648.893466c-.348864.348864-.348864.914489 0 1.263636L3.104545 5 .261648 7.842898c-.348864.348863-.348864.914488 0 1.263636l.631818.631818c.348864.348864.914773.348864 1.263636 0L5 6.895455l2.842898 2.842897c.348863.348864.914772.348864 1.263636 0l.631818-.631818c.348864-.348864.348864-.914489 0-1.263636L6.895455 5z"},null,-1)])])}const GC=aa(VC,[["render",HC]]),KC={},qC={xmlns:"http://www.w3.org/2000/svg",width:"14",height:"10"};function YC(e,u){return me(),Be("svg",qC,[...u[0]||(u[0]=[Ce("path",{d:"M9.211364 7.59931l4.48338-4.867229c.407008-.441854.407008-1.158247 0-1.60046l-.73712-.80023c-.407008-.441854-1.066904-.441854-1.474243 0L7 5.198617 2.51662.33139c-.407008-.441853-1.066904-.441853-1.474243 0l-.737121.80023c-.407008.441854-.407008 1.158248 0 1.600461l4.48338 4.867228L7 10l2.211364-2.40069z"},null,-1)])])}const ZC=aa(KC,[["render",YC]]),N4={Deselect:GC,OpenIndicator:ZC},XC={components:{...N4},directives:{appendToBody:RC},mixins:[jC,IC,LC],props:{modelValue:{},components:{type:Object,default:()=>({})},options:{type:Array,default(){return[]}},limit:{type:Number,default:null},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},deselectFromDropdown:{type:Boolean,default:!1},searchable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},placeholder:{type:String,default:""},transition:{type:String,default:"vs__fade"},clearSearchOnSelect:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},label:{type:String,default:"label"},ariaLabelCombobox:{type:String,default:"Search for options"},ariaLabelListbox:{type:String,default:"Options"},ariaLabelClearSelected:{type:String,default:"Clear selected"},ariaLabelDeselectOption:{type:Function,default:e=>`Deselect ${e}`},autocomplete:{type:String,default:"off"},reduce:{type:Function,default:e=>e},selectable:{type:Function,default:()=>!0},getOptionLabel:{type:Function,default(e){return typeof e=="object"?Object.hasOwn(e,this.label)?e[this.label]:fl(`[vue-select warn]: Label key "option.${this.label}" does not exist in options object ${JSON.stringify(e)}. +https://vue-select.org/api/props.html#getoptionlabel`):e}},getOptionKey:{type:Function,default(e){if(typeof e!="object")return e;try{return Object.hasOwn(e,"id")?e.id:MC(e)}catch{return fl()}}},onTab:{type:Function,default(){this.selectOnTab&&!this.isComposing&&this.typeAheadSelect()}},taggable:{type:Boolean,default:!1},tabindex:{type:Number,default:null},pushTags:{type:Boolean,default:!1},filterable:{type:Boolean,default:!0},filterBy:{type:Function,default(e,u,t){return(u||"").toLocaleLowerCase().indexOf(t.toLocaleLowerCase())>-1}},filter:{type:Function,default(e,u){return e.filter(t=>{let s=this.getOptionLabel(t);return typeof s=="number"&&(s=s.toString()),this.filterBy(t,s,u)})}},createOption:{type:Function,default(e){return typeof this.optionList[0]=="object"?{[this.label]:e}:e}},resetFocusOnOptionsChange:{type:Boolean,default:!0},resetOnOptionsChange:{default:!1,validator:e=>["function","boolean"].includes(typeof e)},clearSearchOnBlur:{type:Function,default({clearSearchOnSelect:e,multiple:u}){return e&&!u}},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:"auto"},selectOnTab:{type:Boolean,default:!1},selectOnKeyCodes:{type:Array,default:()=>[13]},searchInputQuerySelector:{type:String,default:"[type=search]"},mapKeydown:{type:Function,default:e=>e},appendToBody:{type:Boolean,default:!1},calculatePosition:{type:Function,default(e,u,{width:t,top:s,left:n}){e.style.top=s,e.style.left=n,e.style.width=t}},dropdownShouldOpen:{type:Function,default({noDrop:e,open:u,mutableLoading:t}){return e?!1:u&&!t}},keyboardFocusBorder:{type:Boolean,default:!1},uid:{type:[String,Number],default:()=>UC()}},emits:["open","close","update:modelValue","search","search:compositionstart","search:compositionend","search:keydown","search:blur","search:focus","search:input","option:created","option:selecting","option:selected","option:deselecting","option:deselected"],data(){return{search:"",open:!1,isComposing:!1,isKeyboardNavigation:!1,pushedTags:[],_value:[],deselectButtons:[]}},computed:{isReducingValues(){return this.$props.reduce!==this.$options.props.reduce.default},isTrackingValues(){return typeof this.modelValue>"u"||this.isReducingValues},selectedValue(){let e=this.modelValue;return this.isTrackingValues&&(e=this.$data._value),e!=null&&e!==""?[].concat(e):[]},optionList(){return this.options.concat(this.pushTags?this.pushedTags:[])},searchEl(){return this.$slots.search?this.$refs.selectedOptions.querySelector(this.searchInputQuerySelector):this.$refs.search},scope(){const e={search:this.search,loading:this.loading,searching:this.searching,filteredOptions:this.filteredOptions};return{search:{attributes:{id:this.inputId,disabled:this.disabled,placeholder:this.searchPlaceholder,tabindex:this.tabindex,readonly:!this.searchable,role:"combobox","aria-autocomplete":"list","aria-label":this.ariaLabelCombobox,"aria-controls":`vs-${this.uid}__listbox`,"aria-owns":`vs-${this.uid}__listbox`,"aria-expanded":this.dropdownOpen.toString(),ref:"search",type:"search",autocomplete:this.autocomplete,value:this.search,...this.dropdownOpen&&this.filteredOptions[this.typeAheadPointer]?{"aria-activedescendant":`vs-${this.uid}__option-${this.typeAheadPointer}`}:{}},events:{compositionstart:()=>this.isComposing=!0,compositionend:()=>this.isComposing=!1,keydown:this.onSearchKeyDown,keypress:this.onSearchKeyPress,blur:this.onSearchBlur,focus:this.onSearchFocus,input:u=>this.search=u.target.value}},spinner:{loading:this.mutableLoading},noOptions:{search:this.search,loading:this.mutableLoading,searching:this.searching},openIndicator:{attributes:{ref:"openIndicator",role:"presentation",class:"vs__open-indicator"}},listHeader:e,listFooter:e,header:{...e,deselect:this.deselect},footer:{...e,deselect:this.deselect}}},childComponents(){return{...N4,...this.components}},stateClasses(){return{"vs--open":this.dropdownOpen,"vs--single":!this.multiple,"vs--multiple":this.multiple,"vs--searching":this.searching&&!this.noDrop,"vs--searchable":this.searchable&&!this.noDrop,"vs--unsearchable":!this.searchable,"vs--loading":this.mutableLoading,"vs--disabled":this.disabled}},searching(){return!!this.search},dropdownOpen(){return this.dropdownShouldOpen(this)},searchPlaceholder(){return this.isValueEmpty&&this.placeholder?this.placeholder:void 0},filteredOptions(){const e=s=>this.limit!==null?s.slice(0,this.limit):s,u=[].concat(this.optionList);if(!this.filterable&&!this.taggable)return e(u);const t=this.search.length?this.filter(u,this.search,this):u;if(this.taggable&&this.search.length)try{const s=this.createOption(this.search);this.optionExists(s)||t.unshift(s)}catch{}return e(t)},isValueEmpty(){return this.selectedValue.length===0},showClearButton(){return!this.multiple&&this.clearable&&!this.open&&!this.isValueEmpty}},watch:{options(e,u){const t=()=>typeof this.resetOnOptionsChange=="function"?this.resetOnOptionsChange(e,u,this.selectedValue):this.resetOnOptionsChange;!this.taggable&&t()&&this.clearSelection(),this.modelValue&&this.isTrackingValues&&this.setInternalValueFromOptions(this.modelValue)},modelValue:{immediate:!0,handler(e){this.isTrackingValues&&this.setInternalValueFromOptions(e)}},multiple(){this.clearSelection()},open(e){this.$emit(e?"open":"close")},search(e){e.length&&(this.open=!0)}},created(){this.mutableLoading=this.loading},methods:{setInternalValueFromOptions(e){Array.isArray(e)?this.$data._value=e.map(u=>this.findOptionFromReducedValue(u)):this.$data._value=this.findOptionFromReducedValue(e)},select(e){this.$emit("option:selecting",e),this.isOptionSelected(e)?this.deselectFromDropdown&&(this.clearable||this.multiple&&this.selectedValue.length>1)&&this.deselect(e):(this.taggable&&!this.optionExists(e)&&(this.$emit("option:created",e),this.pushTag(e)),this.multiple&&(e=this.selectedValue.concat(e)),this.updateValue(e),this.$emit("option:selected",e)),this.onAfterSelect(e)},deselect(e){this.$emit("option:deselecting",e),this.updateValue(this.selectedValue.filter(u=>!this.optionComparator(u,e))),this.$emit("option:deselected",e)},keyboardDeselect(e,u){this.deselect(e);const t=this.deselectButtons?.[u+1],s=this.deselectButtons?.[u-1],n=t??s;n?n.focus():this.searchEl.focus()},clearSelection(){this.updateValue(this.multiple?[]:null),this.searchEl.focus()},onAfterSelect(){this.closeOnSelect&&(this.open=!this.open),this.clearSearchOnSelect&&(this.search=""),this.noDrop&&this.multiple&&this.$nextTick(()=>this.$refs.search.focus())},updateValue(e){typeof this.modelValue>"u"&&(this.$data._value=e),e!==null&&(Array.isArray(e)?e=e.map(u=>this.reduce(u)):e=this.reduce(e)),this.$emit("update:modelValue",e)},toggleDropdown(e){const u=e.target!==this.searchEl;u&&e.preventDefault();const t=[...this.deselectButtons||[],...this.$refs.clearButton?[this.$refs.clearButton]:[]];if(this.searchEl===void 0||t.filter(Boolean).some(s=>s.contains(e.target)||s===e.target)){e.preventDefault();return}this.open&&u?(this.open=!1,this.searchEl.blur()):this.disabled||(this.open=!0,this.searchEl.focus())},isOptionSelected(e){return this.selectedValue.some(u=>this.optionComparator(u,e))},isOptionDeselectable(e){return this.isOptionSelected(e)&&this.deselectFromDropdown},hasKeyboardFocusBorder(e){return this.keyboardFocusBorder&&this.isKeyboardNavigation?e===this.typeAheadPointer:!1},optionComparator(e,u){return this.getOptionKey(e)===this.getOptionKey(u)},findOptionFromReducedValue(e){const u=s=>JSON.stringify(this.reduce(s))===JSON.stringify(e),t=[...this.options,...this.pushedTags].filter(u);return t.length===1?t[0]:t.find(s=>this.optionComparator(s,this.$data._value))||e},closeSearchOptions(){this.open=!1,this.$emit("search:blur")},maybeDeleteValue(){if(!this.searchEl.value.length&&this.selectedValue&&this.selectedValue.length&&this.clearable){let e=null;this.multiple&&(e=[...this.selectedValue.slice(0,this.selectedValue.length-1)]),this.updateValue(e)}},optionExists(e){return this.optionList.some(u=>this.optionComparator(u,e))},optionAriaSelected(e){return this.selectable(e)?String(this.isOptionSelected(e)):null},normalizeOptionForSlot(e){return typeof e=="object"?e:{[this.label]:e}},pushTag(e){this.pushedTags.push(e)},onEscape(){this.search.length?this.search="":this.open=!1},onSearchBlur(){if(this.mousedown&&!this.searching)this.mousedown=!1;else{const{clearSearchOnSelect:e,multiple:u}=this;this.clearSearchOnBlur({clearSearchOnSelect:e,multiple:u})&&(this.search=""),this.closeSearchOptions();return}this.search.length===0&&this.options.length===0&&this.closeSearchOptions()},onSearchFocus(){this.$emit("search:focus")},onMousedown(){this.mousedown=!0},onMouseUp(){this.mousedown=!1},onMouseMove(e,u){this.isKeyboardNavigation=!1,this.selectable(e)&&(this.typeAheadPointer=u)},onSearchKeyDown(e){const u=n=>{if(n.preventDefault(),!this.open){this.open=!0;return}return!this.isComposing&&this.typeAheadSelect()},t={8:()=>this.maybeDeleteValue(),9:()=>this.onTab(),27:()=>this.onEscape(),38:n=>{if(n.preventDefault(),this.isKeyboardNavigation=!0,!this.open){this.open=!0;return}return this.typeAheadUp()},40:n=>{if(n.preventDefault(),this.isKeyboardNavigation=!0,!this.open){this.open=!0;return}return this.typeAheadDown()}};this.selectOnKeyCodes.forEach(n=>t[n]=u);const s=this.mapKeydown(t,this);if(typeof s[e.keyCode]=="function")return s[e.keyCode](e)},onSearchKeyPress(e){!this.open&&e.keyCode===32&&(e.preventDefault(),this.open=!0)}}},JC=["id","dir"],QC={ref:"toggle",class:"vs__dropdown-toggle"},e6=["disabled","title","aria-label","onMousedown","onKeydown"],u6={ref:"actions",class:"vs__actions"},t6=["disabled","title","aria-label"],s6={class:"vs__spinner"},n6=["id","aria-label","aria-multiselectable"],i6=["id","aria-selected","onMousemove","onClick"],o6={key:0,class:"vs__no-options"},r6=["id","aria-label"];function a6(e,u,t,s,n,i){const o=Of("append-to-body");return me(),Be("div",{id:`v-select-${t.uid}`,dir:t.dir,class:Iu(["v-select",i.stateClasses])},[Ve(e.$slots,"header",Fu(Eu(i.scope.header))),Ce("div",QC,[Ce("div",{ref:"selectedOptions",class:"vs__selected-options",onMousedown:u[0]||(u[0]=(...r)=>i.toggleDropdown&&i.toggleDropdown(...r))},[(me(!0),Be(tu,null,nr(i.selectedValue,(r,a)=>Ve(e.$slots,"selected-option-container",{option:i.normalizeOptionForSlot(r),deselect:i.deselect,multiple:t.multiple,disabled:t.disabled},()=>[(me(),Be("span",{key:t.getOptionKey(r),class:"vs__selected"},[Ve(e.$slots,"selected-option",_u({ref_for:!0},i.normalizeOptionForSlot(r)),()=>[tn(Mu(t.getOptionLabel(r)),1)]),t.multiple?(me(),Be("button",{key:0,ref_for:!0,ref:m=>n.deselectButtons[a]=m,disabled:t.disabled,type:"button",class:"vs__deselect",title:t.ariaLabelDeselectOption(t.getOptionLabel(r)),"aria-label":t.ariaLabelDeselectOption(t.getOptionLabel(r)),onMousedown:ji(m=>i.deselect(r),["stop"]),onKeydown:Tm(m=>i.keyboardDeselect(r,a),["enter"])},[(me(),pu(Ri(i.childComponents.Deselect)))],40,e6)):au("",!0)]))])),256)),Ve(e.$slots,"search",Fu(Eu(i.scope.search)),()=>[Ce("input",_u({class:"vs__search"},i.scope.search.attributes,Qd(i.scope.search.events,!0)),null,16)])],544),Ce("div",u6,[Es(Ce("button",{ref:"clearButton",disabled:t.disabled,type:"button",class:"vs__clear",title:t.ariaLabelClearSelected,"aria-label":t.ariaLabelClearSelected,onClick:u[1]||(u[1]=(...r)=>i.clearSelection&&i.clearSelection(...r))},[(me(),pu(Ri(i.childComponents.Deselect)))],8,t6),[[Zs,i.showClearButton]]),t.noDrop?au("",!0):(me(),Be("button",{key:0,ref:"openIndicatorButton",class:"vs__open-indicator-button",type:"button",tabindex:"-1","aria-hidden":"true",onMousedown:u[2]||(u[2]=(...r)=>i.toggleDropdown&&i.toggleDropdown(...r))},[Ve(e.$slots,"open-indicator",Fu(Eu(i.scope.openIndicator)),()=>[(me(),pu(Ri(i.childComponents.OpenIndicator),Fu(Eu(i.scope.openIndicator.attributes)),null,16))])],544)),Ve(e.$slots,"spinner",Fu(Eu(i.scope.spinner)),()=>[Es(Ce("div",s6," Loading... ",512),[[Zs,e.mutableLoading]])])],512)],512),Ee(Ks,{name:t.transition},{default:Me(()=>[i.dropdownOpen?Es((me(),Be("ul",{id:`vs-${t.uid}__listbox`,ref:"dropdownMenu",key:`vs-${t.uid}__listbox`,class:"vs__dropdown-menu",role:"listbox","aria-label":t.ariaLabelListbox,"aria-multiselectable":t.multiple?"true":null,tabindex:"-1",onMousedown:u[3]||(u[3]=ji((...r)=>i.onMousedown&&i.onMousedown(...r),["prevent"])),onMouseup:u[4]||(u[4]=(...r)=>i.onMouseUp&&i.onMouseUp(...r))},[Ve(e.$slots,"list-header",Fu(Eu(i.scope.listHeader))),(me(!0),Be(tu,null,nr(i.filteredOptions,(r,a)=>(me(),Be("li",{id:`vs-${t.uid}__option-${a}`,key:t.getOptionKey(r),role:"option",class:Iu(["vs__dropdown-option",{"vs__dropdown-option--deselect":i.isOptionDeselectable(r)&&a===e.typeAheadPointer,"vs__dropdown-option--selected":i.isOptionSelected(r),"vs__dropdown-option--highlight":a===e.typeAheadPointer,"vs__dropdown-option--kb-focus":i.hasKeyboardFocusBorder(a),"vs__dropdown-option--disabled":!t.selectable(r)}]),"aria-selected":i.optionAriaSelected(r),onMousemove:m=>i.onMouseMove(r,a),onClick:ji(m=>t.selectable(r)?i.select(r):null,["prevent","stop"])},[Ve(e.$slots,"option",_u({ref_for:!0},i.normalizeOptionForSlot(r)),()=>[tn(Mu(t.getOptionLabel(r)),1)])],42,i6))),128)),i.filteredOptions.length===0?(me(),Be("li",o6,[Ve(e.$slots,"no-options",Fu(Eu(i.scope.noOptions)),()=>[u[5]||(u[5]=tn(" Sorry, no matching options. ",-1))])])):au("",!0),Ve(e.$slots,"list-footer",Fu(Eu(i.scope.listFooter)))],40,n6)),[[o]]):(me(),Be("ul",{key:1,id:`vs-${t.uid}__listbox`,role:"listbox","aria-label":t.ariaLabelListbox,style:{display:"none",visibility:"hidden"}},null,8,r6))]),_:3},8,["name"]),Ve(e.$slots,"footer",Fu(Eu(i.scope.footer)))],10,JC)}const gs=aa(XC,[["render",a6]]);function j3(e,u){const t=[];let s=0,n=e.toLowerCase().indexOf(u.toLowerCase(),s),i=0;for(;n>-1&&i++[]}},computed:{ranges(){let e=[];return!this.search&&this.highlight.length===0||(this.highlight.length>0?e=this.highlight:e=j3(this.text,this.search),e.forEach((u,t)=>{u.end(t.start0&&u.push({start:t.start<0?0:t.start,end:t.end>this.text.length?this.text.length:t.end}),u),[]),e.sort((u,t)=>u.start-t.start),e=e.reduce((u,t)=>{if(!u.length)u.push(t);else{const s=u.length-1;u[s].end>=t.start?u[s]={start:u[s].start,end:Math.max(u[s].end,t.end)}:u.push(t)}return u},[])),e},chunks(){if(this.ranges.length===0)return[{start:0,end:this.text.length,highlight:!1,text:this.text}];const e=[];let u=0,t=0;for(;u=this.ranges.length&&ue.highlight?lu("strong",{},e.text):e.text)):lu("span",{},this.text)}}),d6={name:"NcEllipsisedOption",components:{NcHighlight:l6},props:{name:{type:String,default:""},search:{type:String,default:""}},computed:{needsTruncate(){return this.name&&this.name.length>=10},split(){return this.name.length-Math.min(Math.floor(this.name.length/2),10)},part1(){return this.needsTruncate?this.name.slice(0,this.split):this.name},part2(){return this.needsTruncate?this.name.slice(this.split):""},highlight1(){return this.search?j3(this.name,this.search):[]},highlight2(){return this.highlight1.map(e=>({start:e.start-this.split,end:e.end-this.split}))}}},m6=["title"];function c6(e,u,t,s,n,i){const o=ft("NcHighlight");return me(),Be("span",{dir:"auto",class:"name-parts",title:t.name},[Ee(o,{class:"name-parts__first",text:i.part1,search:t.search,highlight:i.highlight1},null,8,["text","search","highlight"]),i.part2?(me(),pu(o,{key:0,class:"name-parts__last",text:i.part2,search:t.search,highlight:i.highlight2},null,8,["text","search","highlight"])):au("",!0)],8,m6)}const g6=qu(d6,[["render",c6],["__scopeId","data-v-a612f185"]]);Xn(Uh);const f6={name:"NcSelect",components:{ChevronDown:E1,NcEllipsisedOption:g6,NcLoadingIcon:O1,VueSelect:gs},props:{...gs.props,...gs.mixins.reduce((e,u)=>({...e,...u.props}),{}),ariaLabelClearSelected:{type:String,default:Cu("Clear selected")},ariaLabelCombobox:{type:String,default:null},ariaLabelListbox:{type:String,default:Cu("Options")},ariaLabelDeselectOption:{type:Function,default:e=>Cu("Deselect {option}",{option:e})},appendToBody:{type:Boolean,default:!0},calculatePosition:{type:Function,default:null},keepOpen:{type:Boolean,default:!1},components:{type:Object,default:()=>({Deselect:{render:()=>lu(b1,{size:20,fillColor:"var(--vs-controls-color)",style:[{cursor:"pointer"}]})}})},limit:{type:Number,default:null},disabled:{type:Boolean,default:!1},dropdownShouldOpen:{type:Function,default:({noDrop:e,open:u})=>e?!1:u},filterBy:{type:Function,default:null},inputClass:{type:[String,Object],default:null},inputId:{type:String,default:()=>v0()},inputLabel:{type:String,default:null},labelOutside:{type:Boolean,default:!1},keyboardFocusBorder:{type:Boolean,default:!0},label:{type:String,default:null},loading:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noWrap:{type:Boolean,default:!1},options:{type:Array,default:()=>[]},placeholder:{type:String,default:""},mapKeydown:{type:Function,default(e,u){return{...e,27:t=>{u.open&&t.stopPropagation(),e[27](t)}}}},uid:{type:String,default:()=>v0()},placement:{type:String,default:"bottom"},resetFocusOnOptionsChange:{type:Boolean,default:!0},modelValue:{type:[String,Number,Object,Array],default:null},required:{type:Boolean,default:!1}," ":{}},emits:[" ","update:modelValue"],setup(){const e=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-clickable-area")),u=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-grid-baseline"));return{avatarSize:e-2*u,isLegacy:Jr}},data(){return{search:""}},computed:{inputRequired(){return this.required?this.modelValue===null||Array.isArray(this.modelValue)&&this.modelValue.length===0:null},localCalculatePosition(){return this.calculatePosition!==null?this.calculatePosition:(e,u,{width:t})=>{e.style.width=t;const s={name:"addClass",fn(){return e.classList.add("vs__dropdown-menu--floating"),{}}},n={name:"togglePlacementClass",fn({placement:o}){return u.$el.classList.toggle("select--drop-up",o==="top"),e.classList.toggle("vs__dropdown-menu--floating-placement-top",o==="top"),{}}},i=()=>{PC(u.$refs.toggle,e,{placement:this.placement,middleware:[_C(-1),s,n,TC(),OC({limiter:zC()})]}).then(({x:o,y:r})=>{Object.assign(e.style,{left:`${o}px`,top:`${r}px`,width:`${u.$refs.toggle.getBoundingClientRect().width}px`})})};return SC(u.$refs.toggle,e,i)}},localFilterBy(){return this.filterBy??gs.props.filterBy.default},localLabel(){return this.label??gs.props.label.default},propsToForward(){const e=[...Object.keys(gs.props),...gs.mixins.flatMap(u=>Object.keys(u.props??{}))];return{...Object.fromEntries(Object.entries(this.$props).filter(([u,t])=>e.includes(u))),calculatePosition:this.localCalculatePosition,closeOnSelect:!this.keepOpen,filterBy:this.localFilterBy,label:this.localLabel}}},mounted(){!this.labelOutside&&!this.inputLabel&&this.ariaLabelCombobox,this.inputLabel&&this.ariaLabelCombobox},methods:{t:Cu}},p6=["for"],h6=["required"];function v6(e,u,t,s,n,i){const o=ft("ChevronDown"),r=ft("NcEllipsisedOption"),a=ft("NcLoadingIcon"),m=ft("VueSelect");return me(),pu(m,_u({class:["select",{"select--legacy":s.isLegacy,"select--no-wrap":t.noWrap}]},i.propsToForward,{onSearch:u[0]||(u[0]=l=>n.search=l),"onUpdate:modelValue":u[1]||(u[1]=l=>e.$emit("update:modelValue",l))}),Tf({search:Me(({attributes:l,events:g})=>[Ce("input",_u({class:["vs__search",[t.inputClass]]},l,{required:i.inputRequired,dir:"auto"},Qd(g,!0)),null,16,h6)]),"open-indicator":Me(({attributes:l})=>[Ee(o,_u(l,{fillColor:"var(--vs-controls-color)",style:{cursor:t.disabled?null:"pointer"},size:26}),null,16,["style"])]),option:Me(l=>[Ve(e.$slots,"option",Fu(Eu(l)),()=>[Ee(r,{name:String(l[i.localLabel]),search:n.search},null,8,["name","search"])])]),"selected-option":Me(l=>[Ve(e.$slots,"selected-option",Fu(Eu(l)),()=>[Ee(r,{name:String(l[i.localLabel]),search:n.search},null,8,["name","search"])])]),spinner:Me(l=>[l.loading?(me(),pu(a,{key:0})):au("",!0)]),"no-options":Me(()=>[tn(Mu(i.t("No results")),1)]),_:2},[!t.labelOutside&&t.inputLabel?{name:"header",fn:Me(()=>[Ce("label",{for:t.inputId,class:"select__label"},Mu(t.inputLabel),9,p6)]),key:"0"}:void 0,nr(e.$slots,(l,g)=>({name:g,fn:Me(p=>[Ve(e.$slots,g,Fu(Eu(p)))])}))]),1040,["class"])}const Ey=qu(f6,[["render",v6]]);function I3(e,u){return function(){return e.apply(u,arguments)}}const{toString:E6}=Object.prototype,{getPrototypeOf:dn}=Object,{iterator:mi,toStringTag:M3}=Symbol,A0=(({hasOwnProperty:e})=>(u,t)=>e.call(u,t))(Object.prototype),ni=(e,u)=>{let t=e;const s=[];for(;t!=null&&t!==Object.prototype;){if(s.indexOf(t)!==-1)return!1;if(s.push(t),A0(t,u))return!0;t=dn(t)}return!1},C6=(e,u)=>e!=null&&ni(e,u)?e[u]:void 0,la=(e=>u=>{const t=E6.call(u);return e[t]||(e[t]=t.slice(8,-1).toLowerCase())})(Object.create(null)),ut=e=>(e=e.toLowerCase(),u=>la(u)===e),Q0=e=>u=>typeof u===e,{isArray:Ts}=Array,mn=Q0("undefined");function gn(e){return e!==null&&!mn(e)&&e.constructor!==null&&!mn(e.constructor)&&Tu(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const $3=ut("ArrayBuffer");function B6(e){let u;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?u=ArrayBuffer.isView(e):u=e&&e.buffer&&$3(e.buffer),u}const y6=Q0("string"),Tu=Q0("function"),U3=Q0("number"),fn=e=>e!==null&&typeof e=="object",x6=e=>e===!0||e===!1,Wi=e=>{if(!fn(e))return!1;const u=dn(e);return(u===null||u===Object.prototype||dn(u)===null)&&!ni(e,M3)&&!ni(e,mi)},A6=e=>{if(!fn(e)||gn(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},w6=ut("Date"),b6=ut("File"),D6=e=>!!(e&&typeof e.uri<"u"),F6=e=>e&&typeof e.getParts<"u",k6=ut("Blob"),N6=ut("FileList"),S6=e=>fn(e)&&Tu(e.pipe);function _6(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof Mn<"u"?Mn:{}}const S4=_6(),_4=typeof S4.FormData<"u"?S4.FormData:void 0,O6=e=>{if(!e)return!1;if(_4&&e instanceof _4)return!0;const u=dn(e);if(!u||u===Object.prototype||!Tu(e.append))return!1;const t=la(e);return t==="formdata"||t==="object"&&Tu(e.toString)&&e.toString()==="[object FormData]"},T6=ut("URLSearchParams"),[z6,P6,R6,L6]=["ReadableStream","Request","Response","Headers"].map(ut),j6=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ci(e,u,{allOwnKeys:t=!1}={}){if(e===null||typeof e>"u")return;let s,n;if(typeof e!="object"&&(e=[e]),Ts(e))for(s=0,n=e.length;s0;)if(n=t[s],u===n.toLowerCase())return n;return null}const ys=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:Mn,W3=e=>!mn(e)&&e!==ys;function Fr(...e){const{caseless:u,skipUndefined:t}=W3(this)&&this||{},s={},n=(i,o)=>{if(o==="__proto__"||o==="constructor"||o==="prototype")return;const r=u&&typeof o=="string"&&V3(s,o)||o,a=A0(s,r)?s[r]:void 0;Wi(a)&&Wi(i)?s[r]=Fr(a,i):Wi(i)?s[r]=Fr({},i):Ts(i)?s[r]=i.slice():(!t||!mn(i))&&(s[r]=i)};for(let i=0,o=e.length;i(ci(u,(n,i)=>{t&&Tu(n)?Object.defineProperty(e,i,{__proto__:null,value:I3(n,t),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,i,{__proto__:null,value:n,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:s}),e),M6=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),$6=(e,u,t,s)=>{e.prototype=Object.create(u.prototype,s),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:u.prototype}),t&&Object.assign(e.prototype,t)},U6=(e,u,t,s)=>{let n,i,o;const r={};if(u=u||{},e==null)return u;do{for(n=Object.getOwnPropertyNames(e),i=n.length;i-- >0;)o=n[i],(!s||s(o,e,u))&&!r[o]&&(u[o]=e[o],r[o]=!0);e=t!==!1&&dn(e)}while(e&&(!t||t(e,u))&&e!==Object.prototype);return u},V6=(e,u,t)=>{e=String(e),(t===void 0||t>e.length)&&(t=e.length),t-=u.length;const s=e.indexOf(u,t);return s!==-1&&s===t},W6=e=>{if(!e)return null;if(Ts(e))return e;let u=e.length;if(!U3(u))return null;const t=new Array(u);for(;u-- >0;)t[u]=e[u];return t},H6=(e=>u=>e&&u instanceof e)(typeof Uint8Array<"u"&&dn(Uint8Array)),G6=(e,u)=>{const t=(e&&e[mi]).call(e);let s;for(;(s=t.next())&&!s.done;){const n=s.value;u.call(e,n[0],n[1])}},K6=(e,u)=>{let t;const s=[];for(;(t=e.exec(u))!==null;)s.push(t);return s},q6=ut("HTMLFormElement"),Y6=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(u,t,s){return t.toUpperCase()+s}),{propertyIsEnumerable:Z6}=Object.prototype,X6=ut("RegExp"),H3=(e,u)=>{const t=Object.getOwnPropertyDescriptors(e),s={};ci(t,(n,i)=>{let o;(o=u(n,i,e))!==!1&&(s[i]=o||n)}),Object.defineProperties(e,s)},J6=e=>{H3(e,(u,t)=>{if(Tu(e)&&["arguments","caller","callee"].includes(t))return!1;const s=e[t];if(Tu(s)){if(u.enumerable=!1,"writable"in u){u.writable=!1;return}u.set||(u.set=()=>{throw Error("Can not rewrite read-only method '"+t+"'")})}})},Q6=(e,u)=>{const t={},s=n=>{n.forEach(i=>{t[i]=!0})};return Ts(e)?s(e):s(String(e).split(u)),t},e5=()=>{},u5=(e,u)=>e!=null&&Number.isFinite(e=+e)?e:u;function t5(e){return!!(e&&Tu(e.append)&&e[M3]==="FormData"&&e[mi])}const s5=e=>{const u=new WeakSet,t=s=>{if(fn(s)){if(u.has(s))return;if(gn(s))return s;if(!("toJSON"in s)){u.add(s);const n=Ts(s)?[]:{};return ci(s,(i,o)=>{const r=t(i);!mn(r)&&(n[o]=r)}),u.delete(s),n}}return s};return t(e)},n5=ut("AsyncFunction"),i5=e=>e&&(fn(e)||Tu(e))&&Tu(e.then)&&Tu(e.catch),G3=((e,u)=>e?setImmediate:u?((t,s)=>(ys.addEventListener("message",({source:n,data:i})=>{n===ys&&i===t&&s.length&&s.shift()()},!1),n=>{s.push(n),ys.postMessage(t,"*")}))(`axios@${Math.random()}`,[]):t=>setTimeout(t))(typeof setImmediate=="function",Tu(ys.postMessage)),o5=typeof queueMicrotask<"u"?queueMicrotask.bind(ys):typeof pr<"u"&&pr.nextTick||G3,K3=e=>e!=null&&Tu(e[mi]),r5=e=>e!=null&&ni(e,mi)&&K3(e),D={isArray:Ts,isArrayBuffer:$3,isBuffer:gn,isFormData:O6,isArrayBufferView:B6,isString:y6,isNumber:U3,isBoolean:x6,isObject:fn,isPlainObject:Wi,isEmptyObject:A6,isReadableStream:z6,isRequest:P6,isResponse:R6,isHeaders:L6,isUndefined:mn,isDate:w6,isFile:b6,isReactNativeBlob:D6,isReactNative:F6,isBlob:k6,isRegExp:X6,isFunction:Tu,isStream:S6,isURLSearchParams:T6,isTypedArray:H6,isFileList:N6,forEach:ci,merge:Fr,extend:I6,trim:j6,stripBOM:M6,inherits:$6,toFlatObject:U6,kindOf:la,kindOfTest:ut,endsWith:V6,toArray:W6,forEachEntry:G6,matchAll:K6,isHTMLForm:q6,hasOwnProperty:A0,hasOwnProp:A0,hasOwnInPrototypeChain:ni,getSafeProp:C6,reduceDescriptors:H3,freezeMethods:J6,toObjectSet:Q6,toCamelCase:Y6,noop:e5,toFiniteNumber:u5,findKey:V3,global:ys,isContextDefined:W3,isSpecCompliantForm:t5,toJSONObject:s5,isAsyncFn:n5,isThenable:i5,setImmediate:G3,asap:o5,isIterable:K3,isSafeIterable:r5},a5=D.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"]),l5=e=>{const u={};let t,s,n;return e&&e.split(` +`).forEach(function(i){n=i.indexOf(":"),t=i.substring(0,n).trim().toLowerCase(),s=i.substring(n+1).trim(),!(!t||u[t]&&a5[t])&&(t==="set-cookie"?u[t]?u[t].push(s):u[t]=[s]:u[t]=u[t]?u[t]+", "+s:s)}),u};function d5(e){let u=0,t=e.length;for(;uu;){const s=e.charCodeAt(t-1);if(s!==9&&s!==32)break;t-=1}return u===0&&t===e.length?e:e.slice(u,t)}const m5=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),c5=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function da(e,u){return D.isArray(e)?e.map(t=>da(t,u)):d5(String(e).replace(u,""))}const g5=e=>da(e,m5),f5=e=>da(e,c5);function q3(e){const u=Object.create(null);return D.forEach(e.toJSON(),(t,s)=>{u[s]=f5(t)}),u}const O4=Symbol("internals");function bn(e){return e&&String(e).trim().toLowerCase()}function Hi(e){return e===!1||e==null?e:D.isArray(e)?e.map(Hi):g5(String(e))}function p5(e){const u=Object.create(null),t=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=t.exec(e);)u[s[1]]=s[2];return u}const h5=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Ho(e,u,t,s,n){if(D.isFunction(s))return s.call(this,u,t);if(n&&(u=t),!!D.isString(u)){if(D.isString(s))return u.indexOf(s)!==-1;if(D.isRegExp(s))return s.test(u)}}function v5(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(u,t,s)=>t.toUpperCase()+s)}function E5(e,u){const t=D.toCamelCase(" "+u);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+t,{__proto__:null,value:function(n,i,o){return this[s].call(this,u,n,i,o)},configurable:!0})})}let Au=class{constructor(e){e&&this.set(e)}set(e,u,t){const s=this;function n(o,r,a){const m=bn(r);if(!m)return;const l=D.findKey(s,m);(!l||s[l]===void 0||a===!0||a===void 0&&s[l]!==!1)&&(s[l||r]=Hi(o))}const i=(o,r)=>D.forEach(o,(a,m)=>n(a,m,r));if(D.isPlainObject(e)||e instanceof this.constructor)i(e,u);else if(D.isString(e)&&(e=e.trim())&&!h5(e))i(l5(e),u);else if(D.isObject(e)&&D.isSafeIterable(e)){let o=Object.create(null),r,a;for(const m of e){if(!D.isArray(m))throw new TypeError("Object iterator must return a key-value pair");a=m[0],D.hasOwnProp(o,a)?(r=o[a],o[a]=D.isArray(r)?[...r,m[1]]:[r,m[1]]):o[a]=m[1]}i(o,u)}else e!=null&&n(u,e,t);return this}get(e,u){if(e=bn(e),e){const t=D.findKey(this,e);if(t){const s=this[t];if(!u)return s;if(u===!0)return p5(s);if(D.isFunction(u))return u.call(this,s,t);if(D.isRegExp(u))return u.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,u){if(e=bn(e),e){const t=D.findKey(this,e);return!!(t&&this[t]!==void 0&&(!u||Ho(this,this[t],t,u)))}return!1}delete(e,u){const t=this;let s=!1;function n(i){if(i=bn(i),i){const o=D.findKey(t,i);o&&(!u||Ho(t,t[o],o,u))&&(delete t[o],s=!0)}}return D.isArray(e)?e.forEach(n):n(e),s}clear(e){const u=Object.keys(this);let t=u.length,s=!1;for(;t--;){const n=u[t];(!e||Ho(this,this[n],n,e,!0))&&(delete this[n],s=!0)}return s}normalize(e){const u=this,t={};return D.forEach(this,(s,n)=>{const i=D.findKey(t,n);if(i){u[i]=Hi(s),delete u[n];return}const o=e?v5(n):String(n).trim();o!==n&&delete u[n],u[o]=Hi(s),t[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const u=Object.create(null);return D.forEach(this,(t,s)=>{t!=null&&t!==!1&&(u[s]=e&&D.isArray(t)?t.join(", "):t)}),u}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,u])=>e+": "+u).join(` +`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...u){const t=new this(e);return u.forEach(s=>t.set(s)),t}static accessor(e){const u=(this[O4]=this[O4]={accessors:{}}).accessors,t=this.prototype;function s(n){const i=bn(n);u[i]||(E5(t,n),u[i]=!0)}return D.isArray(e)?e.forEach(s):s(e),this}};Au.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),D.reduceDescriptors(Au.prototype,({value:e},u)=>{let t=u[0].toUpperCase()+u.slice(1);return{get:()=>e,set(s){this[t]=s}}}),D.freezeMethods(Au);const C5="[REDACTED ****]";function B5(e){if(D.hasOwnProp(e,"toJSON"))return!0;let u=Object.getPrototypeOf(e);for(;u&&u!==Object.prototype;){if(D.hasOwnProp(u,"toJSON"))return!0;u=Object.getPrototypeOf(u)}return!1}function y5(e,u){const t=new Set(u.map(i=>String(i).toLowerCase())),s=[],n=i=>{if(i===null||typeof i!="object"||D.isBuffer(i))return i;if(s.indexOf(i)!==-1)return;i instanceof Au&&(i=i.toJSON()),s.push(i);let o;if(D.isArray(i))o=[],i.forEach((r,a)=>{const m=n(r);D.isUndefined(m)||(o[a]=m)});else{if(!D.isPlainObject(i)&&B5(i))return s.pop(),i;o=Object.create(null);for(const[r,a]of Object.entries(i)){const m=t.has(r.toLowerCase())?C5:n(a);D.isUndefined(m)||(o[r]=m)}}return s.pop(),o};return n(e)}let ee=class Y3 extends Error{static from(u,t,s,n,i,o){const r=new Y3(u.message,t||u.code,s,n,i);return Object.defineProperty(r,"cause",{__proto__:null,value:u,writable:!0,enumerable:!1,configurable:!0}),r.name=u.name,u.status!=null&&r.status==null&&(r.status=u.status),o&&Object.assign(r,o),r}constructor(u,t,s,n,i){super(u),Object.defineProperty(this,"message",{__proto__:null,value:u,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,t&&(this.code=t),s&&(this.config=s),n&&(this.request=n),i&&(this.response=i,this.status=i.status)}toJSON(){const u=this.config,t=u&&D.hasOwnProp(u,"redact")?u.redact:void 0,s=D.isArray(t)&&t.length>0?y5(u,t):D.toJSONObject(u);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:s,code:this.code,status:this.status}}};ee.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",ee.ERR_BAD_OPTION="ERR_BAD_OPTION",ee.ECONNABORTED="ECONNABORTED",ee.ETIMEDOUT="ETIMEDOUT",ee.ECONNREFUSED="ECONNREFUSED",ee.ERR_NETWORK="ERR_NETWORK",ee.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",ee.ERR_DEPRECATED="ERR_DEPRECATED",ee.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",ee.ERR_BAD_REQUEST="ERR_BAD_REQUEST",ee.ERR_CANCELED="ERR_CANCELED",ee.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",ee.ERR_INVALID_URL="ERR_INVALID_URL",ee.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const x5=null,Z3=100;function kr(e){return D.isPlainObject(e)||D.isArray(e)}function X3(e){return D.endsWith(e,"[]")?e.slice(0,-2):e}function Go(e,u,t){return e?e.concat(u).map(function(s,n){return s=X3(s),!t&&n?"["+s+"]":s}).join(t?".":""):u}function A5(e){return D.isArray(e)&&!e.some(kr)}const w5=D.toFlatObject(D,{},null,function(e){return/^is[A-Z]/.test(e)});function eo(e,u,t){if(!D.isObject(e))throw new TypeError("target must be an object");u=u||new FormData,t=D.toFlatObject(t,{metaTokens:!0,dots:!1,indexes:!1},!1,function(B,A){return!D.isUndefined(A[B])});const s=t.metaTokens,n=t.visitor||y,i=t.dots,o=t.indexes,r=t.Blob||typeof Blob<"u"&&Blob,a=t.maxDepth===void 0?Z3:t.maxDepth,m=r&&D.isSpecCompliantForm(u),l=[];if(!D.isFunction(n))throw new TypeError("visitor must be a function");function g(B){if(B===null)return"";if(D.isDate(B))return B.toISOString();if(D.isBoolean(B))return B.toString();if(!m&&D.isBlob(B))throw new ee("Blob is not supported. Use a Buffer instead.");if(D.isArrayBuffer(B)||D.isTypedArray(B)){if(m&&typeof r=="function")return new r([B]);if(typeof Kl<"u")return Kl.from(B);throw new ee("Blob is not supported. Use a Buffer instead.",ee.ERR_NOT_SUPPORT)}return B}function p(B){if(B>a)throw new ee("Object is too deeply nested ("+B+" levels). Max depth: "+a,ee.ERR_FORM_DATA_DEPTH_EXCEEDED)}function h(B,A){if(a===1/0)return JSON.stringify(B);const O=[];return JSON.stringify(B,function(N,K){if(!D.isObject(K))return K;for(;O.length&&O[O.length-1]!==this;)O.pop();return O.push(K),p(A+O.length-1),K})}function y(B,A,O){let N=B;if(D.isReactNative(u)&&D.isReactNativeBlob(B))return u.append(Go(O,A,i),g(B)),!1;if(B&&!O&&typeof B=="object"){if(D.endsWith(A,"{}"))A=s?A:A.slice(0,-2),B=h(B,1);else if(D.isArray(B)&&A5(B)||(D.isFileList(B)||D.endsWith(A,"[]"))&&(N=D.toArray(B)))return A=X3(A),N.forEach(function(K,I){!(D.isUndefined(K)||K===null)&&u.append(o===!0?Go([A],I,i):o===null?A:A+"[]",g(K))}),!1}return kr(B)?!0:(u.append(Go(O,A,i),g(B)),!1)}const E=Object.assign(w5,{defaultVisitor:y,convertValue:g,isVisitable:kr});function F(B,A,O=0){if(!D.isUndefined(B)){if(p(O),l.indexOf(B)!==-1)throw new Error("Circular reference detected in "+A.join("."));l.push(B),D.forEach(B,function(N,K){(!(D.isUndefined(N)||N===null)&&n.call(u,N,D.isString(K)?K.trim():K,A,E))===!0&&F(N,A?A.concat(K):[K],O+1)}),l.pop()}}if(!D.isObject(e))throw new TypeError("data must be an object");return F(e),u}function T4(e){const u={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(t){return u[t]})}function ma(e,u){this._pairs=[],e&&eo(e,this,u)}const z4=ma.prototype;z4.append=function(e,u){this._pairs.push([e,u])},z4.toString=function(e){const u=e?t=>e.call(this,t,T4):T4;return this._pairs.map(function(t){return u(t[0])+"="+u(t[1])},"").join("&")};function b5(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function J3(e,u,t){if(!u)return e;e=e||"";const s=D.isFunction(t)?{serialize:t}:t,n=D.getSafeProp(s,"encode")||b5,i=D.getSafeProp(s,"serialize");let o;if(i?o=i(u,s):o=D.isURLSearchParams(u)?u.toString():new ma(u,s).toString(n),o){const r=e.indexOf("#");r!==-1&&(e=e.slice(0,r)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class P4{constructor(){this.handlers=[]}use(u,t,s){return this.handlers.push({fulfilled:u,rejected:t,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(u){this.handlers[u]&&(this.handlers[u]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(u){D.forEach(this.handlers,function(t){t!==null&&u(t)})}}const ca={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},D5=typeof URLSearchParams<"u"?URLSearchParams:ma,F5=typeof FormData<"u"?FormData:null,k5=typeof Blob<"u"?Blob:null,N5={isBrowser:!0,classes:{URLSearchParams:D5,FormData:F5,Blob:k5},protocols:["http","https","file","blob","url","data"]},ga=typeof window<"u"&&typeof document<"u",Nr=typeof navigator=="object"&&navigator||void 0,S5=ga&&(!Nr||["ReactNative","NativeScript","NS"].indexOf(Nr.product)<0),_5=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",O5=ga&&window.location.href||"http://localhost",T5=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ga,hasStandardBrowserEnv:S5,hasStandardBrowserWebWorkerEnv:_5,navigator:Nr,origin:O5},Symbol.toStringTag,{value:"Module"})),cu={...T5,...N5};function z5(e,u){return eo(e,new cu.classes.URLSearchParams,{visitor:function(t,s,n,i){return cu.isNode&&D.isBuffer(t)?(this.append(s,t.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...u})}const R4=Z3;function Q3(e){if(e>R4)throw new ee("FormData field is too deeply nested ("+e+" levels). Max depth: "+R4,ee.ERR_FORM_DATA_DEPTH_EXCEEDED)}function P5(e){const u=[],t=/\w+|\[(\w*)]/g;let s;for(;(s=t.exec(e))!==null;)Q3(u.length),u.push(s[0]==="[]"?"":s[1]||s[0]);return u}function R5(e){const u={},t=Object.keys(e);let s;const n=t.length;let i;for(s=0;s=t.length;return o=!o&&D.isArray(n)?n.length:o,a?(D.hasOwnProp(n,o)?n[o]=D.isArray(n[o])?n[o].concat(s):[n[o],s]:n[o]=s,!r):((!D.hasOwnProp(n,o)||!D.isObject(n[o]))&&(n[o]=[]),u(t,s,n[o],i)&&D.isArray(n[o])&&(n[o]=R5(n[o])),!r)}if(D.isFormData(e)&&D.isFunction(e.entries)){const t={};return D.forEachEntry(e,(s,n)=>{u(P5(s),n,t,0)}),t}return null}const Ws=(e,u)=>e!=null&&D.hasOwnProp(e,u)?e[u]:void 0;function L5(e,u,t){if(D.isString(e))try{return(u||JSON.parse)(e),D.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(t||JSON.stringify)(e)}const gi={transitional:ca,adapter:["xhr","http","fetch"],transformRequest:[function(e,u){const t=u.getContentType()||"",s=t.indexOf("application/json")>-1,n=D.isObject(e);if(n&&D.isHTMLForm(e)&&(e=new FormData(e)),D.isFormData(e))return s?JSON.stringify(ec(e)):e;if(D.isArrayBuffer(e)||D.isBuffer(e)||D.isStream(e)||D.isFile(e)||D.isBlob(e)||D.isReadableStream(e))return e;if(D.isArrayBufferView(e))return e.buffer;if(D.isURLSearchParams(e))return u.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(n){const o=Ws(this,"formSerializer");if(t.indexOf("application/x-www-form-urlencoded")>-1)return z5(e,o).toString();if((i=D.isFileList(e))||t.indexOf("multipart/form-data")>-1){const r=Ws(this,"env"),a=r&&r.FormData;return eo(i?{"files[]":e}:e,a&&new a,o)}}return n||s?(u.setContentType("application/json",!1),L5(e)):e}],transformResponse:[function(e){const u=Ws(this,"transitional")||gi.transitional,t=u&&u.forcedJSONParsing,s=Ws(this,"responseType"),n=s==="json";if(D.isResponse(e)||D.isReadableStream(e))return e;if(e&&D.isString(e)&&(t&&!s||n)){const i=!(u&&u.silentJSONParsing)&&n;try{return JSON.parse(e,Ws(this,"parseReviver"))}catch(o){if(i)throw o.name==="SyntaxError"?ee.from(o,ee.ERR_BAD_RESPONSE,this,null,Ws(this,"response")):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:cu.classes.FormData,Blob:cu.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};D.forEach(["delete","get","head","post","put","patch","query"],e=>{gi.headers[e]={}});function Ko(e,u){const t=this||gi,s=u||t,n=Au.from(s.headers);let i=s.data;return D.forEach(e,function(o){i=o.call(t,i,n.normalize(),u?u.status:void 0)}),n.normalize(),i}function uc(e){return!!(e&&e.__CANCEL__)}let fi=class extends ee{constructor(e,u,t){super(e??"canceled",ee.ERR_CANCELED,u,t),this.name="CanceledError",this.__CANCEL__=!0}};function tc(e,u,t){const s=t.config.validateStatus;!t.status||!s||s(t.status)?e(t):u(new ee("Request failed with status code "+t.status,t.status>=400&&t.status<500?ee.ERR_BAD_REQUEST:ee.ERR_BAD_RESPONSE,t.config,t.request,t))}function j5(e){const u=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return u&&u[1]||""}function I5(e,u){e=e||10;const t=new Array(e),s=new Array(e);let n=0,i=0,o;return u=u!==void 0?u:1e3,function(r){const a=Date.now(),m=s[i];o||(o=a),t[n]=r,s[n]=a;let l=i,g=0;for(;l!==n;)g+=t[l++],l=l%e;if(n=(n+1)%e,n===i&&(i=(i+1)%e),a-o{t=a,n=null,i&&(clearTimeout(i),i=null),e(...r)};return[(...r)=>{const a=Date.now(),m=a-t;m>=s?o(r,a):(n=r,i||(i=setTimeout(()=>{i=null,o(n)},s-m)))},()=>n&&o(n)]}const w0=(e,u,t=3)=>{let s=0;const n=I5(50,250);return M5(i=>{if(!i||typeof i.loaded!="number")return;const o=i.loaded,r=i.lengthComputable?i.total:void 0,a=r!=null?Math.min(o,r):o,m=Math.max(0,a-s),l=n(m);s=Math.max(s,a);const g={loaded:a,total:r,progress:r?a/r:void 0,bytes:m,rate:l||void 0,estimated:l&&r?(r-a)/l:void 0,event:i,lengthComputable:r!=null,[u?"download":"upload"]:!0};e(g)},t)},L4=(e,u)=>{const t=e!=null;return[s=>u[0]({lengthComputable:t,total:e,loaded:s}),u[1]]},j4=e=>(...u)=>D.asap(()=>e(...u)),$5=cu.hasStandardBrowserEnv?((e,u)=>t=>(t=new URL(t,cu.origin),e.protocol===t.protocol&&e.host===t.host&&(u||e.port===t.port)))(new URL(cu.origin),cu.navigator&&/(msie|trident)/i.test(cu.navigator.userAgent)):()=>!0,U5=cu.hasStandardBrowserEnv?{write(e,u,t,s,n,i,o){if(typeof document>"u")return;const r=[`${e}=${encodeURIComponent(u)}`];D.isNumber(t)&&r.push(`expires=${new Date(t).toUTCString()}`),D.isString(s)&&r.push(`path=${s}`),D.isString(n)&&r.push(`domain=${n}`),i===!0&&r.push("secure"),D.isString(o)&&r.push(`SameSite=${o}`),document.cookie=r.join("; ")},read(e){if(typeof document>"u")return null;const u=document.cookie.split(";");for(let t=0;te instanceof Au?{...e}:e;function zs(e,u){e=e||{},u=u||{};const t=Object.create(null);Object.defineProperty(t,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function s(l,g,p,h){return D.isPlainObject(l)&&D.isPlainObject(g)?D.merge.call({caseless:h},l,g):D.isPlainObject(g)?D.merge({},g):D.isArray(g)?g.slice():g}function n(l,g,p,h){if(D.isUndefined(g)){if(!D.isUndefined(l))return s(void 0,l,p,h)}else return s(l,g,p,h)}function i(l,g){if(!D.isUndefined(g))return s(void 0,g)}function o(l,g){if(D.isUndefined(g)){if(!D.isUndefined(l))return s(void 0,l)}else return s(void 0,g)}function r(l){const g=D.hasOwnProp(u,"transitional")?u.transitional:void 0;if(!D.isUndefined(g))if(D.isPlainObject(g)){if(D.hasOwnProp(g,l))return g[l]}else return;const p=D.hasOwnProp(e,"transitional")?e.transitional:void 0;if(D.isPlainObject(p)&&D.hasOwnProp(p,l))return p[l]}function a(l,g,p){if(D.hasOwnProp(u,p))return s(l,g);if(D.hasOwnProp(e,p))return s(void 0,l)}const m={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,allowedSocketPaths:o,responseEncoding:o,validateStatus:a,headers:(l,g,p)=>n(M4(l),M4(g),p,!0)};return D.forEach(Object.keys({...e,...u}),function(l){if(l==="__proto__"||l==="constructor"||l==="prototype")return;const g=D.hasOwnProp(m,l)?m[l]:n,p=D.hasOwnProp(e,l)?e[l]:void 0,h=D.hasOwnProp(u,l)?u[l]:void 0,y=g(p,h,l);D.isUndefined(y)&&g!==a||(t[l]=y)}),D.hasOwnProp(u,"validateStatus")&&D.isUndefined(u.validateStatus)&&r("validateStatusUndefinedResolves")===!1&&(D.hasOwnProp(e,"validateStatus")?t.validateStatus=s(void 0,e.validateStatus):delete t.validateStatus),t}const Y5=["content-type","content-length"];function Z5(e,u,t){if(t!=="content-only"){e.set(u);return}Object.entries(u||{}).forEach(([s,n])=>{Y5.includes(s.toLowerCase())&&e.set(s,n)})}const X5=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(u,t)=>String.fromCharCode(parseInt(t,16)));function nc(e){const u=zs({},e),t=p=>D.hasOwnProp(u,p)?u[p]:void 0,s=t("data");let n=t("withXSRFToken");const i=t("xsrfHeaderName"),o=t("xsrfCookieName");let r=t("headers");const a=t("auth"),m=t("baseURL"),l=t("allowAbsoluteUrls"),g=t("url");if(u.headers=r=Au.from(r),u.url=J3(sc(m,g,l,u),t("params"),t("paramsSerializer")),a){const p=D.getSafeProp(a,"username")||"",h=D.getSafeProp(a,"password")||"";try{r.set("Authorization","Basic "+btoa(p+":"+(h?X5(h):"")))}catch(y){throw ee.from(y,ee.ERR_BAD_OPTION_VALUE,e)}}if(D.isFormData(s)&&(cu.hasStandardBrowserEnv||cu.hasStandardBrowserWebWorkerEnv||D.isReactNative(s)?r.setContentType(void 0):D.isFunction(s.getHeaders)&&Z5(r,s.getHeaders(),t("formDataHeaderPolicy"))),cu.hasStandardBrowserEnv&&(D.isFunction(n)&&(n=n(u)),n===!0||n==null&&$5(u.url))){const p=i&&o&&U5.read(o);p&&r.set(i,p)}return u}const J5=typeof XMLHttpRequest<"u",Q5=J5&&function(e){return new Promise(function(u,t){const s=nc(e);let n=s.data;const i=Au.from(s.headers).normalize();let{responseType:o,onUploadProgress:r,onDownloadProgress:a}=s,m,l,g,p,h;function y(){p&&p(),h&&h(),s.cancelToken&&s.cancelToken.unsubscribe(m),s.signal&&s.signal.removeEventListener("abort",m)}let E=new XMLHttpRequest;E.open(s.method.toUpperCase(),s.url,!0),E.timeout=s.timeout;function F(){if(!E)return;const A=Au.from("getAllResponseHeaders"in E&&E.getAllResponseHeaders()),O={data:!o||o==="text"||o==="json"?E.responseText:E.response,status:E.status,statusText:E.statusText,headers:A,config:e,request:E};tc(function(N){u(N),y()},function(N){t(N),y()},O),E=null}"onloadend"in E?E.onloadend=F:E.onreadystatechange=function(){!E||E.readyState!==4||E.status===0&&!(E.responseURL&&E.responseURL.startsWith("file:"))||setTimeout(F)},E.onabort=function(){E&&(t(new ee("Request aborted",ee.ECONNABORTED,e,E)),y(),E=null)},E.onerror=function(A){const O=A&&A.message?A.message:"Network Error",N=new ee(O,ee.ERR_NETWORK,e,E);N.event=A||null,t(N),y(),E=null},E.ontimeout=function(){let A=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const O=s.transitional||ca;s.timeoutErrorMessage&&(A=s.timeoutErrorMessage),t(new ee(A,O.clarifyTimeoutError?ee.ETIMEDOUT:ee.ECONNABORTED,e,E)),y(),E=null},n===void 0&&i.setContentType(null),"setRequestHeader"in E&&D.forEach(q3(i),function(A,O){E.setRequestHeader(O,A)}),D.isUndefined(s.withCredentials)||(E.withCredentials=!!s.withCredentials),o&&o!=="json"&&(E.responseType=s.responseType),a&&([g,h]=w0(a,!0),E.addEventListener("progress",g)),r&&E.upload&&([l,p]=w0(r),E.upload.addEventListener("progress",l),E.upload.addEventListener("loadend",p)),(s.cancelToken||s.signal)&&(m=A=>{E&&(t(!A||A.type?new fi(null,e,E):A),E.abort(),y(),E=null)},s.cancelToken&&s.cancelToken.subscribe(m),s.signal&&(s.signal.aborted?m():s.signal.addEventListener("abort",m)));const B=j5(s.url);if(B&&!cu.protocols.includes(B)){t(new ee("Unsupported protocol "+B+":",ee.ERR_BAD_REQUEST,e)),y();return}E.send(n||null)})},eB=(e,u)=>{if(e=e?e.filter(Boolean):[],!u&&!e.length)return;const t=new AbortController;let s=!1;const n=function(a){if(!s){s=!0,o();const m=a instanceof Error?a:this.reason;t.abort(m instanceof ee?m:new fi(m instanceof Error?m.message:m))}};let i=u&&setTimeout(()=>{i=null,n(new ee(`timeout of ${u}ms exceeded`,ee.ETIMEDOUT))},u);const o=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(a=>{a.unsubscribe?a.unsubscribe(n):a.removeEventListener("abort",n)}),e=null)};e.forEach(a=>a.addEventListener("abort",n,{once:!0}));const{signal:r}=t;return r.unsubscribe=()=>D.asap(o),r},uB=function*(e,u){let t=e.byteLength;if(t{const n=tB(e,u);let i=0,o,r=a=>{o||(o=!0,s&&s(a))};return new ReadableStream({async pull(a){try{const{done:m,value:l}=await n.next();if(m){r(),a.close();return}let g=l.byteLength;if(t){let p=i+=g;t(p)}a.enqueue(new Uint8Array(l))}catch(m){throw r(m),m}},cancel(a){return r(a),n.return()}},{highWaterMark:2})},b0=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,nB=(e,u,t)=>u+2g>=2&&s.charCodeAt(g-2)===37&&s.charCodeAt(g-1)===51&&(s.charCodeAt(g)===68||s.charCodeAt(g)===100);a>=0&&(s.charCodeAt(a)===61?(r++,a--):m(a)&&(r++,a-=3)),r===1&&a>=0&&(s.charCodeAt(a)===61||m(a))&&r++;const l=Math.floor(i/4)*3-(r||0);return l>0?l:0}let n=0;for(let i=0,o=s.length;i=55296&&r<=56319&&i+1=56320&&a<=57343?(n+=4,i++):n+=3}else n+=3}return n}const fa="1.18.1",U4=64*1024,{isFunction:Oi}=D,oB=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(u,t)=>String.fromCharCode(parseInt(t,16))),V4=e=>{if(!D.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},W4=(e,...u)=>{try{return!!e(...u)}catch{return!1}},rB=e=>{const u=e.indexOf("://");let t=e;return u!==-1&&(t=t.slice(u+3)),t.includes("@")||t.includes(":")},aB=e=>{const u=D.global!==void 0&&D.global!==null?D.global:globalThis,{ReadableStream:t,TextEncoder:s}=u;e=D.merge.call({skipUndefined:!0},{Request:u.Request,Response:u.Response},e);const{fetch:n,Request:i,Response:o}=e,r=n?Oi(n):typeof fetch=="function",a=Oi(i),m=Oi(o);if(!r)return!1;const l=r&&Oi(t),g=r&&(typeof s=="function"?(B=>A=>B.encode(A))(new s):async B=>new Uint8Array(await new i(B).arrayBuffer())),p=a&&l&&W4(()=>{let B=!1;const A=new i(cu.origin,{body:new t,method:"POST",get duplex(){return B=!0,"half"}}),O=A.headers.has("Content-Type");return A.body!=null&&A.body.cancel(),B&&!O}),h=m&&l&&W4(()=>D.isReadableStream(new o("").body)),y={stream:h&&(B=>B.body)};r&&["text","arrayBuffer","blob","formData","stream"].forEach(B=>{!y[B]&&(y[B]=(A,O)=>{let N=A&&A[B];if(N)return N.call(A);throw new ee(`Response type '${B}' is not supported`,ee.ERR_NOT_SUPPORT,O)})});const E=async B=>{if(B==null)return 0;if(D.isBlob(B))return B.size;if(D.isSpecCompliantForm(B))return(await new i(cu.origin,{method:"POST",body:B}).arrayBuffer()).byteLength;if(D.isArrayBufferView(B)||D.isArrayBuffer(B))return B.byteLength;if(D.isURLSearchParams(B)&&(B=B+""),D.isString(B))return(await g(B)).byteLength},F=async(B,A)=>D.toFiniteNumber(B.getContentLength())??E(A);return async B=>{let{url:A,method:O,data:N,signal:K,cancelToken:I,timeout:Y,onDownloadProgress:se,onUploadProgress:G,responseType:M,headers:ne,withCredentials:b="same-origin",fetchOptions:T,maxContentLength:V,maxBodyLength:ue}=nc(B);const Z=D.isNumber(V)&&V>-1,Q=D.isNumber(ue)&&ue>-1,te=pe=>D.hasOwnProp(B,pe)?B[pe]:void 0;let de=n||fetch;M=M?(M+"").toLowerCase():"text";let le=eB([K,I&&I.toAbortSignal()],Y),ie=null;const xe=le&&le.unsubscribe&&(()=>{le.unsubscribe()});let He,Se=null;const Pe=()=>new ee("Request body larger than maxBodyLength limit",ee.ERR_BAD_REQUEST,B,ie);try{let pe;const $e=te("auth");if($e){const S=D.getSafeProp($e,"username")||"",W=D.getSafeProp($e,"password")||"";pe={username:S,password:W}}if(rB(A)){const S=new URL(A,cu.origin);if(!pe&&(S.username||S.password)){const W=V4(S.username),U=V4(S.password);pe={username:W,password:U}}(S.username||S.password)&&(S.username="",S.password="",A=S.href)}if(pe&&(ne.delete("authorization"),ne.set("Authorization","Basic "+btoa(oB((pe.username||"")+":"+(pe.password||""))))),Z&&typeof A=="string"&&A.startsWith("data:")&&iB(A)>V)throw new ee("maxContentLength size of "+V+" exceeded",ee.ERR_BAD_RESPONSE,B,ie);if(Q&&O!=="get"&&O!=="head"){const S=await E(N);if(typeof S=="number"&&isFinite(S)&&(He=S,S>ue))throw Pe()}const Nu=Q&&(D.isReadableStream(N)||D.isStream(N)),tt=(S,W,U)=>$4(S,U4,H=>{if(Q&&H>ue)throw Se=Pe();W&&W(H)},U);if(p&&O!=="get"&&O!=="head"&&(G||Nu)){if(He=He??await F(ne,N),He!==0||Nu){let S=new i(A,{method:"POST",body:N,duplex:"half"}),W;if(D.isFormData(N)&&(W=S.headers.get("content-type"))&&ne.setContentType(W),S.body){const[U,H]=G&&L4(He,w0(j4(G)))||[];N=tt(S.body,U,H)}}}else if(Nu&&!a&&l&&O!=="get"&&O!=="head")N=tt(N);else if(Nu&&a&&!p&&O!=="get"&&O!=="head")throw new ee("Stream request bodies are not supported by the current fetch implementation",ee.ERR_NOT_SUPPORT,B,ie);D.isString(b)||(b=b?"include":"omit");const $u=a&&"credentials"in i.prototype;if(D.isFormData(N)){const S=ne.getContentType();S&&/^multipart\/form-data/i.test(S)&&!/boundary=/i.test(S)&&ne.delete("content-type")}ne.set("User-Agent","axios/"+fa,!1);const C={...T,signal:le,method:O.toUpperCase(),headers:q3(ne.normalize()),body:N,duplex:"half",credentials:$u?b:void 0};ie=a&&new i(A,C);let w=await(a?de(ie,T):de(A,C));const _=Au.from(w.headers);if(Z){const S=D.toFiniteNumber(_.getContentLength());if(S!=null&&S>V)throw new ee("maxContentLength size of "+V+" exceeded",ee.ERR_BAD_RESPONSE,B,ie)}const $=h&&(M==="stream"||M==="response");if(h&&w.body&&(se||Z||$&&xe)){const S={};["status","statusText","headers"].forEach(X=>{S[X]=w[X]});const W=D.toFiniteNumber(_.getContentLength()),[U,H]=se&&L4(W,w0(j4(se),!0))||[];let j=0;const re=X=>{if(Z&&(j=X,j>V))throw new ee("maxContentLength size of "+V+" exceeded",ee.ERR_BAD_RESPONSE,B,ie);U&&U(X)};w=new o($4(w.body,U4,re,()=>{H&&H(),xe&&xe()}),S)}M=M||"text";let z=await y[D.findKey(y,M)||"text"](w,B);if(Z&&!h&&!$){let S;if(z!=null&&(typeof z.byteLength=="number"?S=z.byteLength:typeof z.size=="number"?S=z.size:typeof z=="string"&&(S=typeof s=="function"?new s().encode(z).byteLength:z.length)),typeof S=="number"&&S>V)throw new ee("maxContentLength size of "+V+" exceeded",ee.ERR_BAD_RESPONSE,B,ie)}return!$&&xe&&xe(),await new Promise((S,W)=>{tc(S,W,{data:z,headers:Au.from(w.headers),status:w.status,statusText:w.statusText,config:B,request:ie})})}catch(pe){if(xe&&xe(),le&&le.aborted&&le.reason instanceof ee){const $e=le.reason;throw $e.config=B,ie&&($e.request=ie),pe!==$e&&Object.defineProperty($e,"cause",{__proto__:null,value:pe,writable:!0,enumerable:!1,configurable:!0}),$e}if(Se)throw ie&&!Se.request&&(Se.request=ie),Se;if(pe instanceof ee)throw ie&&!pe.request&&(pe.request=ie),pe;if(pe&&pe.name==="TypeError"&&/Load failed|fetch/i.test(pe.message)){const $e=new ee("Network Error",ee.ERR_NETWORK,B,ie,pe&&pe.response);throw Object.defineProperty($e,"cause",{__proto__:null,value:pe.cause||pe,writable:!0,enumerable:!1,configurable:!0}),$e}throw ee.from(pe,pe&&pe.code,B,ie,pe&&pe.response)}}},lB=new Map,ic=e=>{let u=e&&e.env||{};const{fetch:t,Request:s,Response:n}=u,i=[s,n,t];let o=i.length,r=o,a,m,l=lB;for(;r--;)a=i[r],m=l.get(a),m===void 0&&l.set(a,m=r?new Map:aB(u)),l=m;return m};ic();const pa={http:x5,xhr:Q5,fetch:{get:ic}};D.forEach(pa,(e,u)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:u})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:u})}});const H4=e=>`- ${e}`,dB=e=>D.isFunction(e)||e===null||e===!1;function mB(e,u){e=D.isArray(e)?e:[e];const{length:t}=e;let s,n;const i={};for(let o=0;o`adapter ${a} `+(m===!1?"is not supported by the environment":"is not available in the build"));let r=t?o.length>1?`since : +`+o.map(H4).join(` +`):" "+H4(o[0]):"as no adapter specified";throw new ee("There is no suitable adapter to dispatch the request "+r,ee.ERR_NOT_SUPPORT)}return n}const oc={getAdapter:mB,adapters:pa};function qo(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new fi(null,e)}function G4(e){return qo(e),e.headers=Au.from(e.headers),e.data=Ko.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),oc.getAdapter(e.adapter||gi.adapter,e)(e).then(function(u){qo(e),e.response=u;try{u.data=Ko.call(e,e.transformResponse,u)}finally{delete e.response}return u.headers=Au.from(u.headers),u},function(u){if(!uc(u)&&(qo(e),u&&u.response)){e.response=u.response;try{u.response.data=Ko.call(e,e.transformResponse,u.response)}finally{delete e.response}u.response.headers=Au.from(u.response.headers)}return Promise.reject(u)})}const D0={};["object","boolean","number","function","string","symbol"].forEach((e,u)=>{D0[e]=function(t){return typeof t===e||"a"+(u<1?"n ":" ")+e}});const K4={};D0.transitional=function(e,u,t){function s(n,i){return"[Axios v"+fa+"] Transitional option '"+n+"'"+i+(t?". "+t:"")}return(n,i,o)=>{if(e===!1)throw new ee(s(i," has been removed"+(u?" in "+u:"")),ee.ERR_DEPRECATED);return u&&!K4[i]&&(K4[i]=!0,console.warn(s(i," has been deprecated since v"+u+" and will be removed in the near future"))),e?e(n,i,o):!0}},D0.spelling=function(e){return(u,t)=>(console.warn(`${t} is likely a misspelling of ${e}`),!0)};function cB(e,u,t){if(typeof e!="object"||e===null)throw new ee("options must be an object",ee.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let n=s.length;for(;n-- >0;){const i=s[n],o=Object.prototype.hasOwnProperty.call(u,i)?u[i]:void 0;if(o){const r=e[i],a=r===void 0||o(r,i,e);if(a!==!0)throw new ee("option "+i+" must be "+a,ee.ERR_BAD_OPTION_VALUE);continue}if(t!==!0)throw new ee("Unknown option "+i,ee.ERR_BAD_OPTION)}}const Gi={assertOptions:cB,validators:D0},vu=Gi.validators;let ks=class{constructor(e){this.defaults=e||{},this.interceptors={request:new P4,response:new P4}}async request(e,u){try{return await this._request(e,u)}catch(t){if(t instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const n=(()=>{if(!s.stack)return"";const i=s.stack.indexOf(` +`);return i===-1?"":s.stack.slice(i+1)})();try{if(!t.stack)t.stack=n;else if(n){const i=n.indexOf(` +`),o=i===-1?-1:n.indexOf(` +`,i+1),r=o===-1?"":n.slice(o+1);String(t.stack).endsWith(r)||(t.stack+=` +`+n)}}catch{}}throw t}}_request(e,u){typeof e=="string"?(u=u||{},u.url=e):u=e||{},u=zs(this.defaults,u);const{transitional:t,paramsSerializer:s,headers:n}=u;t!==void 0&&Gi.assertOptions(t,{silentJSONParsing:vu.transitional(vu.boolean),forcedJSONParsing:vu.transitional(vu.boolean),clarifyTimeoutError:vu.transitional(vu.boolean),legacyInterceptorReqResOrdering:vu.transitional(vu.boolean),advertiseZstdAcceptEncoding:vu.transitional(vu.boolean),validateStatusUndefinedResolves:vu.transitional(vu.boolean)},!1),s!=null&&(D.isFunction(s)?u.paramsSerializer={serialize:s}:Gi.assertOptions(s,{encode:vu.function,serialize:vu.function},!0)),u.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?u.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:u.allowAbsoluteUrls=!0),Gi.assertOptions(u,{baseUrl:vu.spelling("baseURL"),withXsrfToken:vu.spelling("withXSRFToken")},!0),u.method=(u.method||this.defaults.method||"get").toLowerCase();let i=n&&D.merge(n.common,n[u.method]);n&&D.forEach(["delete","get","head","post","put","patch","query","common"],h=>{delete n[h]}),u.headers=Au.concat(i,n);const o=[];let r=!0;this.interceptors.request.forEach(function(h){if(typeof h.runWhen=="function"&&h.runWhen(u)===!1)return;r=r&&h.synchronous;const y=u.transitional||ca;y&&y.legacyInterceptorReqResOrdering?o.unshift(h.fulfilled,h.rejected):o.push(h.fulfilled,h.rejected)});const a=[];this.interceptors.response.forEach(function(h){a.push(h.fulfilled,h.rejected)});let m,l=0,g;if(!r){const h=[G4.bind(this),void 0];for(h.unshift(...o),h.push(...a),g=h.length,m=Promise.resolve(u);l{if(!s._listeners)return;let i=s._listeners.length;for(;i-- >0;)s._listeners[i](n);s._listeners=null}),this.promise.then=n=>{let i;const o=new Promise(r=>{s.subscribe(r),i=r}).then(n);return o.cancel=function(){s.unsubscribe(i)},o},u(function(n,i,o){s.reason||(s.reason=new fi(n,i,o),t(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(u){if(this.reason){u(this.reason);return}this._listeners?this._listeners.push(u):this._listeners=[u]}unsubscribe(u){if(!this._listeners)return;const t=this._listeners.indexOf(u);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){const u=new AbortController,t=s=>{u.abort(s)};return this.subscribe(t),u.signal.unsubscribe=()=>this.unsubscribe(t),u.signal}static source(){let u;return{token:new rc(function(t){u=t}),cancel:u}}};function fB(e){return function(u){return e.apply(null,u)}}function pB(e){return D.isObject(e)&&e.isAxiosError===!0}const Sr={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,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Sr).forEach(([e,u])=>{Sr[u]=e});function ac(e){const u=new ks(e),t=I3(ks.prototype.request,u);return D.extend(t,ks.prototype,u,{allOwnKeys:!0}),D.extend(t,u,null,{allOwnKeys:!0}),t.create=function(s){return ac(zs(e,s))},t}const Je=ac(gi);Je.Axios=ks,Je.CanceledError=fi,Je.CancelToken=gB,Je.isCancel=uc,Je.VERSION=fa,Je.toFormData=eo,Je.AxiosError=ee,Je.Cancel=Je.CanceledError,Je.all=function(e){return Promise.all(e)},Je.spread=fB,Je.isAxiosError=pB,Je.mergeConfig=zs,Je.AxiosHeaders=Au,Je.formToJSON=e=>ec(D.isHTMLForm(e)?new FormData(e):e),Je.getAdapter=oc.getAdapter,Je.HttpStatusCode=Sr,Je.default=Je;const{Axios:Cy,AxiosError:By,CanceledError:yy,isCancel:xy,CancelToken:Ay,VERSION:wy,all:by,Cancel:Dy,isAxiosError:ha,spread:Fy,toFormData:ky,AxiosHeaders:Ny,HttpStatusCode:Sy,formToJSON:_y,getAdapter:Oy,mergeConfig:Ty,create:zy}=Je;function hB(){const e=Je.create({headers:{requesttoken:vv()??"","X-Requested-With":"XMLHttpRequest"}});return Cv(u=>{e.defaults.headers.requesttoken=u}),Object.assign(e,{CancelToken:Je.CancelToken,isCancel:Je.isCancel})}const q4="_nextcloudCsrfTokenReloaded";function vB(e){return async u=>{if(!ha(u))throw u;const{config:t,response:s,request:n}=u,i=n?.responseURL;if(t&&!(q4 in t)&&s?.status===412&&s?.data?.message==="CSRF check failed"){console.warn(`Request to ${i} failed because of a CSRF mismatch. Fetching a new token.`);const o=await Ev();return e.defaults.headers.requesttoken=o,e({...t,[q4]:!0,headers:{...t.headers,requesttoken:o}})}throw u}}const Y4="_nextcloudMaintenanceModeRetryDelay";function EB(e){return async u=>{if(!ha(u))throw u;const{config:t,response:s,request:n}=u,i=n?.responseURL,o=s?.status,r=s?.headers;let a=t?.[Y4]??1;if(o===503&&r?.["x-nextcloud-maintenance-mode"]==="1"&&t?.retryIfMaintenanceMode){if(a*=2,a>32)throw console.error("Retry delay exceeded one minute, giving up.",{responseURL:i}),u;return console.warn(`Request to ${i} failed because of maintenance mode. Retrying in ${a}s`),await new Promise(m=>{setTimeout(m,a*1e3)}),e({...t,[Y4]:a})}throw u}}async function CB(e){if(ha(e)){const{config:u,response:t,request:s}=e,n=s?.responseURL;t?.status===401&&t?.data?.message==="Current user is not logged in"&&u?.reloadExpiredSession&&globalThis.location?.reload&&(console.error(`Request to ${n} failed because the user session expired. Reloading the page …`),globalThis.OC?.reload?globalThis.OC.reload():globalThis.location.reload())}throw e}const Te=hB();Te.interceptors.response.use(e=>e,vB(Te)),Te.interceptors.response.use(e=>e,EB(Te)),Te.interceptors.response.use(e=>e,CB);const Ie=e=>Z4("/apps/absence"+e),Py={getSession:()=>Te.get(Ie("/api/session")).then(e=>e.data),getPersonalConfig:()=>Te.get(Ie("/api/personal/config")).then(e=>e.data),updatePersonalConfig:e=>Te.put(Ie("/api/personal/config"),{values:e}).then(u=>u.data),listRequests:e=>Te.get(Ie("/api/requests"),{params:e}).then(u=>u.data),getRequest:e=>Te.get(Ie(`/api/requests/${e}`)).then(u=>u.data),createRequest:e=>Te.post(Ie("/api/requests"),e).then(u=>u.data),updateRequest:(e,u)=>Te.put(Ie(`/api/requests/${e}`),u).then(t=>t.data),cancelRequest:e=>Te.post(Ie(`/api/requests/${e}/cancel`)).then(u=>u.data),approveRequest:(e,u)=>Te.post(Ie(`/api/requests/${e}/approve`),{comment:u}).then(t=>t.data),rejectRequest:(e,u)=>Te.post(Ie(`/api/requests/${e}/reject`),{comment:u}).then(t=>t.data),addComment:(e,u)=>Te.post(Ie(`/api/requests/${e}/comments`),{body:u}).then(t=>t.data),getMyBalance:e=>Te.get(Ie("/api/balance"),{params:{year:e}}).then(u=>u.data),getEmployeeBalance:(e,u)=>Te.get(Ie(`/api/employees/${encodeURIComponent(e)}/balance`),{params:{year:u}}).then(t=>t.data),listEntitlements:(e,u)=>Te.get(Ie("/api/entitlements"),{params:{employeeUid:e,year:u}}).then(t=>t.data),createEntitlement:e=>Te.post(Ie("/api/entitlements"),e).then(u=>u.data),updateEntitlement:(e,u)=>Te.put(Ie(`/api/entitlements/${e}`),u).then(t=>t.data),bulkEntitlements:e=>Te.post(Ie("/api/entitlements/bulk"),e).then(u=>u.data),getCoverage:(e,u,t)=>Te.get(Ie("/api/coverage"),{params:{from:e,to:u,scope:t}}).then(s=>s.data),getCalendar:(e,u,t)=>Te.get(Ie("/api/calendar"),{params:{from:e,to:u,scope:t}}).then(s=>s.data),listLeaveTypes:e=>Te.get(Ie("/api/leave-types"),{params:{onlyEnabled:e}}).then(u=>u.data),createLeaveType:e=>Te.post(Ie("/api/leave-types"),e).then(u=>u.data),updateLeaveType:(e,u)=>Te.put(Ie(`/api/leave-types/${e}`),u).then(t=>t.data),deleteLeaveType:e=>Te.delete(Ie(`/api/leave-types/${e}`)).then(u=>u.data),searchUsers:e=>Te.get(bc("core/autocomplete/get"),{params:{search:e,itemType:" ",itemId:" ",shareTypes:[0],limit:20}}).then(u=>(u.data.ocs?.data||[]).map(t=>({uid:t.id,displayName:t.label}))),reportBalances:(e,u)=>Te.get(Ie("/api/reports/balances"),{params:{year:e,group:u}}).then(t=>t.data),reportTrends:(e,u)=>Te.get(Ie("/api/reports/trends"),{params:{from:e,to:u}}).then(t=>t.data),exportRequestsUrl:(e,u)=>Ie(`/api/export/requests?from=${e}&to=${u}`),exportBalancesUrl:e=>Ie(`/api/export/balances?year=${e}`)};function BB(e){const u=e.getFullYear(),t=String(e.getMonth()+1).padStart(2,"0"),s=String(e.getDate()).padStart(2,"0");return`${u}-${t}-${s}`}function Ry(e){const u=new Set;for(const t of String(e||"").split(",")){const s=parseInt(t,10);s>=1&&s<=7&&u.add(s)}return u}function Ly(e,u,t,s){if(!e||!u||!t||t.size===0)return 0;const n=new Date(u+"T00:00:00");let i=0;for(const o=new Date(e+"T00:00:00");o<=n;o.setDate(o.getDate()+1)){const r=o.getDay()===0?7:o.getDay();t.has(r)&&!(s&&s(BB(o)))&&i++}return i}function Yo(e){return e?new Date(e+"T00:00:00").toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"}):""}function jy(e,u){return e===u?Yo(e):`${Yo(e)} – ${Yo(u)}`}function Iy(e,u,t,s,n){const i=new Date(u+"T00:00:00"),o=new Date(t+"T00:00:00"),r=Math.round((o-i)/864e5)+1;if(!(r<=0||!s))for(let a=0;a<12;a++){const m=new Date(n,a,1),l=new Date(n,a+1,0),g=i>m?i:m,p=o0&&(e[a]+=s*(h/r))}}async function My(e,u){if(!e)return null;const{default:t}=await na(async()=>{const{default:n}=await import("./index-RBNm1VLy.chunk.mjs");return{default:n}},[],import.meta.url),s=u?new t(e,u):new t(e);return n=>{const i=s.isHoliday(new Date(n+"T12:00:00"));return Array.isArray(i)&&i.some(o=>o.type==="public")}}async function $y(){const{default:e}=await na(async()=>{const{default:t}=await import("./index-RBNm1VLy.chunk.mjs");return{default:t}},[],import.meta.url),u=new e().getCountries();return Object.keys(u).map(t=>({id:t,label:u[t]}))}async function Uy(e){if(!e)return[];const{default:u}=await na(async()=>{const{default:s}=await import("./index-RBNm1VLy.chunk.mjs");return{default:s}},[],import.meta.url),t=new u().getStates(e)||{};return Object.keys(t).map(s=>({id:s,label:t[s]}))}export{Nh as $,Yh as A,my as B,Wg as C,cy as D,Kh as E,bs as F,iy as G,yt as H,Vn as I,ay as J,dy as K,ly as L,bv as M,Xn as N,eh as O,Mu as P,au as Q,tu as R,Iu as S,ji as T,Es as U,Zs as V,Ce as W,Ee as X,Me as Y,vh as Z,qu as _,Pf as a,py as a$,m0 as a0,IB as a1,ft as a2,Ys as a3,zB as a4,Cu as a5,Bs as a6,JB as a7,qB as a8,Ld as a9,ZB as aA,O1 as aB,v0 as aC,E1 as aD,QB as aE,Df as aF,Cf as aG,xB as aH,gy as aI,NB as aJ,W1 as aK,_B as aL,Wn as aM,Su as aN,OB as aO,ey as aP,nl as aQ,Jr as aR,TB as aS,KB as aT,Tf as aU,jB as aV,Gl as aW,Py as aX,vy as aY,Ti as aZ,hy as a_,$m as aa,o3 as ab,Jn as ac,an as ad,hh as ae,Tm as af,iv as ag,fl as ah,xf as ai,Vf as aj,LB as ak,RB as al,m1 as am,tn as an,Fu as ao,Eu as ap,_u as aq,HB as ar,b1 as as,DB as at,u1 as au,e1 as av,zh as aw,PB as ax,YB as ay,uy as az,Zd as b,Ey as b0,fy as b1,BB as b2,Ry as b3,Ly as b4,My as b5,Z4 as b6,SB as b7,Ga as b8,GB as b9,$y as bA,yB as bB,F0 as bC,F3 as ba,Ks as bb,MB as bc,nr as bd,Of as be,Dc as bf,X4 as bg,UB as bh,ty as bi,WB as bj,Te as bk,bc as bl,VB as bm,a1 as bn,yv as bo,jy as bp,lg as bq,wB as br,bB as bs,Iy as bt,FB as bu,Nm as bv,$B as bw,Qd as bx,XB as by,Uy as bz,pu as c,Be as d,Ve as e,Fe as f,rn as g,Ge as h,Zt as i,et as j,Ir as k,kB as l,me as m,xs as n,ri as o,lu as p,mf as q,Ri as r,qh as s,Gh as t,AB as u,sy as v,St as w,ry as x,ny as y,oy as z}; +//# sourceMappingURL=holidays-BoDDj6rx.chunk.mjs.map diff --git a/js/holidays-CFk3bEGH.chunk.mjs.license b/js/holidays-BoDDj6rx.chunk.mjs.license similarity index 91% rename from js/holidays-CFk3bEGH.chunk.mjs.license rename to js/holidays-BoDDj6rx.chunk.mjs.license index ad8a630..35b2874 100644 --- a/js/holidays-CFk3bEGH.chunk.mjs.license +++ b/js/holidays-BoDDj6rx.chunk.mjs.license @@ -5,7 +5,6 @@ SPDX-License-Identifier: ISC SPDX-License-Identifier: MIT SPDX-FileCopyrightText: @nextcloud/dialogs developers SPDX-FileCopyrightText: Anthony Fu -SPDX-FileCopyrightText: Christoph Wurst SPDX-FileCopyrightText: David Clark SPDX-FileCopyrightText: David Myers SPDX-FileCopyrightText: Dr.-Ing. Mario Heiderich, Cure53 (https://cure53.de/) @@ -23,16 +22,16 @@ SPDX-FileCopyrightText: escape-html developers This file is generated from multiple sources. Included packages: - @floating-ui/core - - version: 1.7.5 + - version: 1.8.0 - license: MIT - @floating-ui/dom - version: 1.1.1 - license: MIT - @floating-ui/dom - - version: 1.7.6 + - version: 1.8.0 - license: MIT - @floating-ui/utils - - version: 0.2.11 + - version: 0.2.12 - license: MIT - @nextcloud/auth - version: 2.6.0 @@ -44,13 +43,13 @@ This file is generated from multiple sources. Included packages: - version: 0.5.0 - license: GPL-3.0-or-later - @nextcloud/dialogs - - version: 6.4.2 + - version: 7.4.1 - license: AGPL-3.0-or-later - @nextcloud/event-bus - version: 3.3.3 - license: GPL-3.0-or-later - @nextcloud/initial-state - - version: 2.2.0 + - version: 3.0.0 - license: GPL-3.0-or-later - @nextcloud/l10n - version: 3.4.1 @@ -62,7 +61,7 @@ This file is generated from multiple sources. Included packages: - version: 3.1.0 - license: GPL-3.0-or-later - @nextcloud/vue - - version: 9.8.2 + - version: 9.9.0 - license: AGPL-3.0-or-later - @nextcloud/vue-select - version: 4.1.0 @@ -71,16 +70,16 @@ This file is generated from multiple sources. Included packages: - version: 6.0.7 - license: MIT - @vue/reactivity - - version: 3.5.39 + - version: 3.5.40 - license: MIT - @vue/runtime-core - - version: 3.5.39 + - version: 3.5.40 - license: MIT - @vue/runtime-dom - - version: 3.5.39 + - version: 3.5.40 - license: MIT - @vue/shared - - version: 3.5.39 + - version: 3.5.40 - license: MIT - @vueuse/core - version: 14.3.0 @@ -95,7 +94,7 @@ This file is generated from multiple sources. Included packages: - version: 1.18.1 - license: MIT - dompurify - - version: 3.4.11 + - version: 3.4.12 - license: (MPL-2.0 OR Apache-2.0) - escape-html - version: 1.0.3 @@ -122,5 +121,5 @@ This file is generated from multiple sources. Included packages: - version: 0.28.0 - license: MIT - vue-router - - version: 5.1.0 + - version: 5.2.0 - license: MIT diff --git a/js/holidays-BoDDj6rx.chunk.mjs.map b/js/holidays-BoDDj6rx.chunk.mjs.map new file mode 100644 index 0000000..60c9370 --- /dev/null +++ b/js/holidays-BoDDj6rx.chunk.mjs.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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","names":["url","params","options","version","getBaseUrl","_build","text","vars","r","a","allOptions","baseOrRootURL","getRootUrl","webroot","pos","index","_arrayLikeToArray","e","n","_arrayWithHoles","_iterableToArrayLimit","t","f","i","l","o","u","_nonIterableRest","serializedHTML","SAFE_FOR_TEMPLATES","_stripTemplateExpressions","RETURN_TRUSTED_TYPE","_createTrustedHTML","DOMPurify","message","msg","context","level","LogLevel","buildConsoleLogger","LoggerBuilder","factory","appId","user","self","onLoaded","getLoggerBuilder","isRtl","candidateSelector","candidateSelectors","NoElement","matches","_element$getRootNode","element","_isInert","node","lookUp","_node$getAttribute","inertAtt","inert","result","attValue","_node$getAttribute2","getCandidates","filter","candidates","includeContainer","_getCandidatesIteratively","elements","assigned","nestedCandidates","content","shadowRoot","validShadowRoot","_nestedCandidates","elementsToCheck","isContentEditable","getSortOrderTabIndex","isScope","getTabIndex","tabIndex","hasTabIndex","sortOrderedTabbables","b","isHiddenInput","isDetailsWithSummary","child","getCheckedRadio","nodes","radioScope","getRootNode","queryRadios","name","radioSet","err","checked","isInput","isRadio","isTabbableRadio","nodeRoot","_nodeRoot","_nodeRootHost","_nodeRootHost$ownerDo","attached","nodeRootHost","_node$ownerDocument","_nodeRoot2","_nodeRootHost2","_nodeRootHost2$ownerD","_node$getBoundingClie","width","isHidden","_ref","displayCheck","visible","_getComputedStyle","visibility","isDirectSummary","getShadowRoot","parentElement","rootNode","isZeroArea","isNodeAttached","isDisabledFromFieldset","parentNode","isNodeMatchingSelectorFocusable","isNodeMatchingSelectorTabbable","isNonTabbableRadio","shadowHostNode","_sortByOrder","orderedTabbables","item","candidateTabindex","regularTabbables","acc","sortable","tabbable","isShadowRootTabbable","focusable","container","focusableCandidateSelector","_arrayWithoutHoles","F","_iterableToArray","option","sortAndStringify","warn","label","search","value","clearSearchOnSelect","component","top","left","dropdownList","open","uniqueId","listSlot","limitOptions","options2","optionList","createdOption","newOptions","shouldReset","val","isOpen","nextDeselect","index2","deselectToFocus","event","targetIsNotSearch","ref","predicate","match","_option","line","key","ignoreDuplicateOf","parsed","start","end","str","code","INVALID_UNICODE_HEADER_VALUE_CHARS","invalidChars","utils","sanitizeValue","trimSPorHTAB","thing","first","targets","target","$internals","defineAccessor","_header","accessors","buildAccessors","prototype","lHeader","AxiosHeaders","REDACTED","hasOwnOrPrototypeToJSON","source","config","lowerKeys","visit","seen","v","reducedValue","AxiosError","customProps","axiosError","error","response","request","redactKeys","serializedConfig","redactConfig","DEFAULT_FORM_DATA_MAX_DEPTH","isVisitable","removeBrackets","renderKey","path","token","dots","arr","predicates","prop","toFormData","obj","formData","metaTokens","indexes","_Blob","maxDepth","useBlob","visitor","convertValue","Buffer","depth","currentValue","ancestors","defaultVisitor","stringifyWithDepthLimit","exposedHelpers","build","throwIfMaxDepthExceeded","stack","el","encode","charMap","AxiosURLSearchParams","encoder","pair","_encode","buildURL","_options","serializeFn","serializedParams","hashmarkIndex","InterceptorManager","fulfilled","rejected","id","fn","h","transitionalDefaults","URLSearchParams$1","FormData$1","Blob$1","platform$1","FormData","Blob","hasBrowserEnv","_navigator","hasStandardBrowserWebWorkerEnv","platform","toURLEncodedForm","helpers","MAX_DEPTH","pattern","throwIfDepthExceeded","keys","len","formDataToJSON","isLast","isNumericKey","buildPath","rawValue","parser","defaults","contentType","headers","hasJSONContentType","isObjectPayload","data","isFileList","env","own","_FormData","stringifySafely","transitional","responseType","strictJSONParsing","JSONRequested","status","method","transformData","fns","isCancel","settle","resolve","reject","validateStatus","parseProtocol","samplesCount","firstSampleTS","min","tail","bytesCount","head","now","startedAt","passed","freq","timestamp","invoke","args","lastArgs","timer","threshold","progressEventReducer","listener","bytesNotified","_speedometer","speedometer","throttle","rawLoaded","total","loaded","progressBytes","rate","lengthComputable","asyncDecorator","origin","isMSIE","cookies","domain","secure","sameSite","cookie","expires","eq","baseURL","relativeURL","stripLeadingC0ControlOrSpace","normalizeURLForProtocolCheck","httpProtocolControlCharacters","assertValidHttpProtocolURL","malformedHttpProtocol","buildFullPath","allowAbsoluteUrls","isRelativeUrl","isAbsoluteURL","requestedURL","mergeConfig","config1","config2","getMergedValue","caseless","valueFromConfig2","defaultToConfig2","transitional2","transitional1","mergeDirectKeys","mergeMap","headersToObject","merge","configValue","getMergedTransitionalOption","FORM_DATA_CONTENT_HEADERS","formHeaders","policy","encodeUTF8","_","hex","xsrfCookieName","newConfig","username","password","setFormDataHeaders","withXSRFToken","xhrAdapter","isXHRAdapterSupported","_config","requestData","requestHeaders","onUploadProgress","onDownloadProgress","downloadThrottled","flushUpload","flushDownload","onloadend","responseHeaders","done","timeoutErrorMessage","toByteStringHeaderObject","uploadThrottled","onCanceled","cancel","protocol","timeout","signals","aborted","reason","unsubscribe","controller","CanceledError","signal","onabort","streamChunk","chunk","chunkSize","readBytes","iterable","readStream","stream","reader","trackStream","onProgress","onFinish","iterator","bytes","_onFinish","isHexDigit","charCode","isPercentEncodedByte","estimateDataURLDecodedBytes","comma","meta","effectiveLen","body","pad","idx","tailIsPct3D","j","c","next","VERSION","decodeURIComponentSafe","maybeWithAuthCredentials","protocolIndex","urlToCheck","globalObject","TextEncoder","envFetch","Request","Response","isFunction","isRequestSupported","isFetchSupported","isReadableStreamSupported","ReadableStream","supportsRequestStream","test","duplexAccessed","hasContentType","supportsResponseStream","isResponseSupported","resolvers","res","type","encodeText","resolveBodyLength","getBodyLength","cancelToken","maxContentLength","maxBodyLength","resolveConfig","hasMaxContentLength","hasMaxBodyLength","_fetch","composedSignal","composeSignals","requestContentLength","maxBodyLengthError","configAuth","auth","parsedURL","urlUsername","urlPassword","outboundLength","trackRequestStream","flush","loadedBytes","mustEnforceStreamBody","_request","contentTypeHeader","progressEventDecorator","withCredentials","isCredentialsSupported","resolvedOptions","fetchOptions","declaredLength","isStreamResponse","bytesRead","DEFAULT_CHUNK_SIZE","onChunkProgress","materializedSize","responseData","canceledError","pendingBodyError","networkError","fetch","map","seedCache","seed","knownAdapters","httpAdapter","fetchAdapter.getFetch","renderReason","isResolvedHandle","adapter","adapters","length","nameOrAdapter","rejectedReasons","reasons","state","s","getAdapter","throwIfCancellationRequested","dispatchRequest","validators","deprecatedWarnings","opt","validator","opts","correctSpelling","assertOptions","schema","allowUnknown","Axios$1","instanceConfig","configOrUrl","dummy","firstNewlineIndex","secondNewlineIndex","stackWithoutTwoTopLines","paramsSerializer","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","chain","promise","onRejected","onFulfilled","fullPath","Axios","generateHTTPMethod","isForm"],"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],"sources":["../node_modules/@nextcloud/router/dist/index.mjs","../node_modules/dompurify/dist/purify.es.mjs","../node_modules/@nextcloud/logger/dist/index.mjs","../node_modules/@nextcloud/vue/dist/chunks/logger-D3RVzcfQ.mjs","../node_modules/@nextcloud/vue/dist/chunks/rtl-v0UOPAM7.mjs","../node_modules/tabbable/dist/index.esm.js","../node_modules/focus-trap/dist/focus-trap.esm.js","../node_modules/@nextcloud/dialogs/dist/chunks/index.mjs","../node_modules/@nextcloud/vue-select/dist/index.mjs","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/helpers/sanitizeHeaderValue.js","../node_modules/axios/lib/core/AxiosHeaders.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/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/helpers/estimateDataURLDecodedBytes.js","../node_modules/axios/lib/env/data.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/helpers/validator.js","../node_modules/axios/lib/core/Axios.js"],"sourcesContent":["function linkTo(app, file) {\n return generateFilePath(app, \"\", file);\n}\nconst linkToRemoteBase = (service) => \"/remote.php/\" + service;\nconst generateRemoteUrl = (service, options) => {\n const baseURL = options?.baseURL ?? getBaseUrl();\n return baseURL + linkToRemoteBase(service);\n};\nconst generateOcsUrl = (url, params, options) => {\n const allOptions = Object.assign({\n ocsVersion: 2\n }, options || {});\n const version = allOptions.ocsVersion === 1 ? 1 : 2;\n const baseURL = options?.baseURL ?? getBaseUrl();\n return baseURL + \"/ocs/v\" + version + \".php\" + _generateUrlPath(url, params, options);\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(\n /{([^{}]*)}/g,\n function(a, b) {\n const 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 };\n if (url.charAt(0) !== \"/\") {\n url = \"/\" + url;\n }\n return _build(url, params || {});\n};\nconst generateUrl = (url, params, options) => {\n const allOptions = Object.assign({\n noRewrite: false\n }, options || {});\n const baseOrRootURL = options?.baseURL ?? getRootUrl();\n if (window?.OC?.config?.modRewriteWorking === true && !allOptions.noRewrite) {\n return baseOrRootURL + _generateUrlPath(url, params, options);\n }\n return baseOrRootURL + \"/index.php\" + _generateUrlPath(url, params, options);\n};\nconst imagePath = (app, file) => {\n if (!file.includes(\".\")) {\n return generateFilePath(app, \"img\", `${file}.svg`);\n }\n return generateFilePath(app, \"img\", file);\n};\nconst generateFilePath = (app, type, file) => {\n const isCore = window?.OC?.coreApps?.includes(app) ?? false;\n const isPHP = file.slice(-3) === \"php\";\n let link = getRootUrl();\n if (isPHP && !isCore) {\n link += `/index.php/apps/${app}`;\n if (type) {\n link += `/${encodeURI(type)}`;\n }\n if (file !== \"index.php\") {\n link += `/${file}`;\n }\n } else if (!isPHP && !isCore) {\n link = getAppRootUrl(app);\n if (type) {\n link += `/${type}/`;\n }\n if (link.at(-1) !== \"/\") {\n link += \"/\";\n }\n link += file;\n } else {\n if ((app === \"settings\" || app === \"core\" || app === \"search\") && type === \"ajax\") {\n link += \"/index.php\";\n }\n if (app) {\n link += `/${app}`;\n }\n if (type) {\n link += `/${type}`;\n }\n link += `/${file}`;\n }\n return link;\n};\nconst getBaseUrl = () => window.location.protocol + \"//\" + window.location.host + getRootUrl();\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.slice(0, pos);\n } else {\n const index = webroot.indexOf(\"/\", 1);\n webroot = webroot.slice(0, index > 0 ? index : void 0);\n }\n }\n return webroot;\n}\nfunction getAppRootUrl(app) {\n const webroots = window._oc_appswebroots ?? {};\n return webroots[app] ?? \"\";\n}\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nfunction generateAvatarUrl(user, options) {\n const size = (options?.size || 64) <= 64 ? 64 : 512;\n const guestUrl = options?.isGuestUser ? \"/guest\" : \"\";\n const themeUrl = options?.isDarkTheme ? \"/dark\" : \"\";\n return generateUrl(`/avatar${guestUrl}/{user}/{size}${themeUrl}`, {\n user,\n size\n });\n}\nexport {\n generateAvatarUrl,\n generateFilePath,\n generateOcsUrl,\n generateRemoteUrl,\n generateUrl,\n getAppRootUrl,\n getBaseUrl,\n getRootUrl,\n imagePath,\n linkTo\n};\n//# sourceMappingURL=index.mjs.map\n","/*! @license DOMPurify 3.4.12 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.12/LICENSE */\n\nfunction _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = true,\n o = false;\n try {\n if (i = (t = t.call(r)).next, 0 === l) ; else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = true, n = r;\n } finally {\n try {\n if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\n\nconst entries = Object.entries,\n setPrototypeOf = Object.setPrototypeOf,\n isFrozen = Object.isFrozen,\n getPrototypeOf = Object.getPrototypeOf,\n getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nlet freeze = Object.freeze,\n seal = Object.seal,\n create = Object.create; // eslint-disable-line import/no-mutable-exports\nlet _ref = typeof Reflect !== 'undefined' && Reflect,\n apply = _ref.apply,\n construct = _ref.construct;\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(func, thisArg) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n return func.apply(thisArg, args);\n };\n}\nif (!construct) {\n construct = function construct(Func) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n return new Func(...args);\n };\n}\nconst arrayForEach = unapply(Array.prototype.forEach);\nconst arrayLastIndexOf = unapply(Array.prototype.lastIndexOf);\nconst arrayPop = unapply(Array.prototype.pop);\nconst arrayPush = unapply(Array.prototype.push);\nconst arraySplice = unapply(Array.prototype.splice);\nconst arrayIsArray = Array.isArray;\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 numberToString = unapply(Number.prototype.toString);\nconst booleanToString = unapply(Boolean.prototype.toString);\nconst bigintToString = typeof BigInt === 'undefined' ? null : unapply(BigInt.prototype.toString);\nconst symbolToString = typeof Symbol === 'undefined' ? null : unapply(Symbol.prototype.toString);\nconst objectHasOwnProperty = unapply(Object.prototype.hasOwnProperty);\nconst objectToString = unapply(Object.prototype.toString);\nconst regExpTest = unapply(RegExp.prototype.test);\nconst typeErrorCreate = unconstruct(TypeError);\n/**\n * Creates a new function that calls the given function with a specified thisArg and arguments.\n *\n * @param func - The function to be wrapped and called.\n * @returns A new function that calls the given function with a specified thisArg and arguments.\n */\nfunction unapply(func) {\n return function (thisArg) {\n if (thisArg instanceof RegExp) {\n thisArg.lastIndex = 0;\n }\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n return apply(func, thisArg, args);\n };\n}\n/**\n * Creates a new function that constructs an instance of the given constructor function with the provided arguments.\n *\n * @param func - The constructor function to be wrapped and called.\n * @returns 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 _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return construct(Func, args);\n };\n}\n/**\n * Add properties to a lookup table\n *\n * @param set - The set to which elements will be added.\n * @param array - The array containing elements to be added to the set.\n * @param transformCaseFunc - An optional function to transform the case of each element before adding to the set.\n * @returns 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 if (!arrayIsArray(array)) {\n return set;\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 * Clean up an array to harden against CSPP\n *\n * @param array - The array to be cleaned.\n * @returns 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 * Shallow clone an object\n *\n * @param object - The object to be cloned.\n * @returns A new object that copies the original.\n */\nfunction clone(object) {\n const newObject = create(null);\n for (const _ref2 of entries(object)) {\n var _ref3 = _slicedToArray(_ref2, 2);\n const property = _ref3[0];\n const value = _ref3[1];\n const isPropertyExist = objectHasOwnProperty(object, property);\n if (isPropertyExist) {\n if (arrayIsArray(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 * Convert non-node values into strings without depending on direct property access.\n *\n * @param value - The value to stringify.\n * @returns A string representation of the provided value.\n */\nfunction stringifyValue(value) {\n switch (typeof value) {\n case 'string':\n {\n return value;\n }\n case 'number':\n {\n return numberToString(value);\n }\n case 'boolean':\n {\n return booleanToString(value);\n }\n case 'bigint':\n {\n return bigintToString ? bigintToString(value) : '0';\n }\n case 'symbol':\n {\n return symbolToString ? symbolToString(value) : 'Symbol()';\n }\n case 'undefined':\n {\n return objectToString(value);\n }\n case 'function':\n case 'object':\n {\n if (value === null) {\n return objectToString(value);\n }\n const valueAsRecord = value;\n const valueToString = lookupGetter(valueAsRecord, 'toString');\n if (typeof valueToString === 'function') {\n const stringified = valueToString(valueAsRecord);\n return typeof stringified === 'string' ? stringified : objectToString(stringified);\n }\n return objectToString(value);\n }\n default:\n {\n return objectToString(value);\n }\n }\n}\n/**\n * This method automatically checks if the prop is function or getter and behaves accordingly.\n *\n * @param object - The object to look up the getter function in its prototype chain.\n * @param prop - The property name for which to find the getter function.\n * @returns 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}\nfunction isRegex(value) {\n try {\n regExpTest(value, '');\n return true;\n } catch (_unused) {\n return false;\n }\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', 'search', 'section', 'select', 'shadow', 'slot', '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']);\nconst svg$1 = freeze(['svg', 'a', 'altglyph', 'altglyphdef', 'altglyphitem', 'animatecolor', 'animatemotion', 'animatetransform', 'circle', 'clippath', 'defs', 'desc', 'ellipse', 'enterkeyhint', 'exportparts', 'filter', 'font', 'g', 'glyph', 'glyphref', 'hkern', 'image', 'inputmode', 'line', 'lineargradient', 'marker', 'mask', 'metadata', 'mpath', 'part', '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// 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// 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', 'command', 'commandfor', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'exportparts', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inert', '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', 'part', 'pattern', 'placeholder', 'playsinline', 'popover', 'popovertarget', 'popovertargetaction', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'slot', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'wrap', 'xmlns']);\nconst svg = freeze(['accent-height', 'accumulate', 'additive', 'alignment-baseline', 'amplitude', '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', 'dominant-baseline', 'dur', 'edgemode', 'elevation', 'end', 'exponent', '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', 'intercept', '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', 'mask-type', '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', 'slope', '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', 'tablevalues', 'targetx', 'targety', 'transform', 'transform-origin', 'text-anchor', 'text-decoration', 'text-orientation', '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', 'columnalign', 'columnlines', 'columnspacing', 'columnspan', 'denomalign', 'depth', 'dir', 'display', 'displaystyle', 'encoding', 'fence', 'frame', 'height', 'href', 'id', 'largeop', 'length', 'linethickness', 'lquote', 'lspace', '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\nconst MUSTACHE_EXPR = seal(/{{[\\w\\W]*|^[\\w\\W]*}}/g);\nconst ERB_EXPR = seal(/<%[\\w\\W]*|^[\\w\\W]*%>/g);\nconst TMPLIT_EXPR = seal(/\\${[\\w\\W]*/g);\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|matrix):|[^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// Markup-significant character probes used by _sanitizeElements.\n// Shared module-level instances are safe despite the sticky /g flags:\n// unapply() resets lastIndex for RegExp receivers before every call.\nconst ELEMENT_MARKUP_PROBE = seal(/<[/\\w!]/g);\nconst COMMENT_MARKUP_PROBE = seal(/<[/\\w]/g);\nconst FALLBACK_TAG_CLOSE = seal(/<\\/no(script|embed|frames)/i);\nconst SELF_CLOSING_TAG = seal(/\\/>/i);\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 processingInstruction: 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 * Creates a no-op policy for internal use only.\n * Don't export this function outside this module!\n * @param trustedTypes The policy factory.\n * @param purifyHostElement The Script element used to load DOMPurify (to determine policy name suffix).\n * @return 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 // 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};\nconst _createHooksMap = function _createHooksMap() {\n return {\n afterSanitizeAttributes: [],\n afterSanitizeElements: [],\n afterSanitizeShadowDOM: [],\n beforeSanitizeAttributes: [],\n beforeSanitizeElements: [],\n beforeSanitizeShadowDOM: [],\n uponSanitizeAttribute: [],\n uponSanitizeElement: [],\n uponSanitizeShadowNode: []\n };\n};\n/**\n * Resolve a set-valued configuration option: a fresh set built from\n * cfg[key] when it is an own array property (seeded with a clone of\n * options.base when given, case-normalized via options.transform),\n * the fallback set otherwise.\n *\n * @param cfg the cloned, prototype-free configuration object\n * @param key the configuration property to read\n * @param fallback the set to use when the option is absent or not an array\n * @param options transform and optional base set to merge into\n * @returns the resolved set\n */\nconst _resolveSetOption = function _resolveSetOption(cfg, key, fallback, options) {\n return objectHasOwnProperty(cfg, key) && arrayIsArray(cfg[key]) ? addToSet(options.base ? clone(options.base) : {}, cfg[key], options.transform) : fallback;\n};\nfunction createDOMPurify() {\n let window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getGlobal();\n const DOMPurify = root => createDOMPurify(root);\n DOMPurify.version = '3.4.12';\n DOMPurify.removed = [];\n if (!window || !window.document || window.document.nodeType !== NODE_TYPE.document || !window.Element) {\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 document = window.document;\n const originalDocument = document;\n const currentScript = originalDocument.currentScript;\n window.DocumentFragment;\n const HTMLTemplateElement = window.HTMLTemplateElement,\n Node = window.Node,\n Element = window.Element,\n NodeFilter = window.NodeFilter,\n _window$NamedNodeMap = window.NamedNodeMap;\n _window$NamedNodeMap === void 0 ? window.NamedNodeMap || window.MozNamedAttrMap : _window$NamedNodeMap;\n window.HTMLFormElement;\n const DOMParser = window.DOMParser,\n trustedTypes = window.trustedTypes;\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 const getShadowRoot = lookupGetter(ElementPrototype, 'shadowRoot');\n const getAttributes = lookupGetter(ElementPrototype, 'attributes');\n const getNodeType = Node && Node.prototype ? lookupGetter(Node.prototype, 'nodeType') : null;\n const getNodeName = Node && Node.prototype ? lookupGetter(Node.prototype, 'nodeName') : null;\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 // The instance's own internal Trusted Types policy. Unlike a caller-supplied\n // `TRUSTED_TYPES_POLICY`, this is created at most once — Trusted Types throws\n // on duplicate policy names — and is the only policy allowed to persist\n // across configurations and survive `clearConfig()`.\n let defaultTrustedTypesPolicy;\n let defaultTrustedTypesPolicyResolved = false;\n // Tracks whether we are already inside a call to the configured Trusted Types\n // policy (`createHTML` or `createScriptURL`). If a supplied policy callback\n // itself calls `DOMPurify.sanitize` (the cause of #1422), `sanitize` would\n // re-enter the policy and recurse until the stack overflows. We detect that\n // re-entry and throw a clear, actionable error instead. The guard is shared\n // across both callbacks, because either one re-entering `sanitize` triggers\n // the same unbounded recursion.\n let IN_TRUSTED_TYPES_POLICY = 0;\n const _assertNotInTrustedTypesPolicy = function _assertNotInTrustedTypesPolicy() {\n if (IN_TRUSTED_TYPES_POLICY > 0) {\n throw typeErrorCreate('A configured TRUSTED_TYPES_POLICY callback (createHTML or ' + 'createScriptURL) must not call DOMPurify.sanitize, as that causes ' + 'infinite recursion. Do not pass a policy whose callbacks wrap ' + 'DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted ' + 'Types\" section of the README.');\n }\n };\n const _createTrustedHTML = function _createTrustedHTML(html) {\n _assertNotInTrustedTypesPolicy();\n IN_TRUSTED_TYPES_POLICY++;\n try {\n return trustedTypesPolicy.createHTML(html);\n } finally {\n IN_TRUSTED_TYPES_POLICY--;\n }\n };\n const _createTrustedScriptURL = function _createTrustedScriptURL(scriptUrl) {\n _assertNotInTrustedTypesPolicy();\n IN_TRUSTED_TYPES_POLICY++;\n try {\n return trustedTypesPolicy.createScriptURL(scriptUrl);\n } finally {\n IN_TRUSTED_TYPES_POLICY--;\n }\n };\n // Lazily resolve (and cache) the instance's internal default policy.\n // Resolution is attempted at most once: a successful `createPolicy` cannot be\n // repeated (Trusted Types throws on duplicate names), and a failed or\n // unsupported attempt must not be retried on every parse.\n const _getDefaultTrustedTypesPolicy = function _getDefaultTrustedTypesPolicy() {\n if (!defaultTrustedTypesPolicyResolved) {\n defaultTrustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript);\n defaultTrustedTypesPolicyResolved = true;\n }\n return defaultTrustedTypesPolicy;\n };\n const _document = document,\n implementation = _document.implementation,\n createNodeIterator = _document.createNodeIterator,\n createDocumentFragment = _document.createDocumentFragment,\n getElementsByTagName = _document.getElementsByTagName;\n const importNode = originalDocument.importNode;\n let hooks = _createHooksMap();\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 MUSTACHE_EXPR$1 = MUSTACHE_EXPR,\n ERB_EXPR$1 = ERB_EXPR,\n TMPLIT_EXPR$1 = TMPLIT_EXPR,\n DATA_ATTR$1 = DATA_ATTR,\n ARIA_ATTR$1 = ARIA_ATTR,\n IS_SCRIPT_OR_DATA$1 = IS_SCRIPT_OR_DATA,\n ATTR_WHITESPACE$1 = ATTR_WHITESPACE,\n CUSTOM_ELEMENT$1 = CUSTOM_ELEMENT;\n let IS_ALLOWED_URI$1 = IS_ALLOWED_URI;\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 /* allowed element names */\n let ALLOWED_TAGS = null;\n const DEFAULT_ALLOWED_TAGS = addToSet({}, [...html$1, ...svg$1, ...svgFilters, ...mathMl$1, ...text]);\n /* Allowed attribute names */\n let ALLOWED_ATTR = null;\n const DEFAULT_ALLOWED_ATTR = addToSet({}, [...html, ...svg, ...mathMl, ...xml]);\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 /* Explicitly forbidden tags (overrides ALLOWED_TAGS/ADD_TAGS) */\n let FORBID_TAGS = null;\n /* Explicitly forbidden attributes (overrides ALLOWED_ATTR/ADD_ATTR) */\n let FORBID_ATTR = null;\n /* Config object to store ADD_TAGS/ADD_ATTR functions (when used as functions) */\n const EXTRA_ELEMENT_HANDLING = Object.seal(create(null, {\n tagCheck: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: null\n },\n attributeCheck: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: null\n }\n }));\n /* Decide if ARIA attributes are okay */\n let ALLOW_ARIA_ATTR = true;\n /* Decide if custom data attributes are okay */\n let ALLOW_DATA_ATTR = true;\n /* Decide if unknown protocols are okay */\n let ALLOW_UNKNOWN_PROTOCOLS = false;\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 /* 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 /* 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 /* Decide if document with ... should be returned */\n let WHOLE_DOCUMENT = false;\n /* Track whether config is already set on this instance of DOMPurify. */\n let SET_CONFIG = false;\n /* Pristine allowlist bindings captured at setConfig() time. On the\n * persistent-config path sanitize() restores the sets from these before\n * the per-walk hook clone-guard, so a hook's in-call widening cannot\n * carry across calls. Null until setConfig() is called; reset by\n * clearConfig(). */\n let SET_CONFIG_ALLOWED_TAGS = null;\n let SET_CONFIG_ALLOWED_ATTR = null;\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 /* 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 /* 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 /* 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 /* 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 /* 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 /* Keep element content when removing element? */\n let KEEP_CONTENT = true;\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 /* Allow usage of profiles like html, svg and mathMl */\n let USE_PROFILES = {};\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',\n // mirrors the selected