From 34be5bccabb7531afdcc6ebaf1dd39e4dfbe0677 Mon Sep 17 00:00:00 2001 From: Yassine Doghri Date: Mon, 23 Dec 2024 15:35:47 +0000 Subject: [PATCH] refactor(plugins): create Field objects per field type in settings forms + handle rendering in class update manifest.schema.json to have defaultValue type differ based on field type --- ...170000_drop_deprecated_podcasts_fields.php | 2 + app/Entities/Podcast.php | 16 +- app/Validation/OtherRules.php | 5 + app/Views/Components/Forms/CodeEditor.php | 5 +- app/Views/Components/Forms/FormComponent.php | 22 +- app/Views/Components/Forms/SelectMulti.php | 8 +- app/Views/Components/Forms/Textarea.php | 4 + composer.json | 6 +- composer.lock | 64 +- docs/package.json | 17 +- docs/pnpm-lock.yaml | 4622 +++++++++-------- docs/src/content.config.ts | 8 + docs/src/content/config.ts | 7 - docs/src/content/docs/en/plugins/manifest.mdx | 55 +- modules/Plugins/Commands/CreatePlugin.php | 6 +- .../Plugins/Controllers/PluginController.php | 31 +- modules/Plugins/Core/Plugins.php | 15 +- modules/Plugins/Manifest/Field.php | 132 +- modules/Plugins/Manifest/FieldInterface.php | 10 + modules/Plugins/Manifest/Fields/Checkbox.php | 34 + modules/Plugins/Manifest/Fields/Datetime.php | 37 + modules/Plugins/Manifest/Fields/Email.php | 38 + modules/Plugins/Manifest/Fields/Group.php | 36 + modules/Plugins/Manifest/Fields/Html.php | 39 + modules/Plugins/Manifest/Fields/Markdown.php | 37 + modules/Plugins/Manifest/Fields/Number.php | 38 + .../Plugins/Manifest/Fields/RadioGroup.php | 57 + modules/Plugins/Manifest/Fields/Rss.php | 40 + modules/Plugins/Manifest/Fields/Select.php | 64 + .../Manifest/Fields/SelectMultiple.php | 63 + modules/Plugins/Manifest/Fields/Text.php | 37 + modules/Plugins/Manifest/Fields/Textarea.php | 37 + modules/Plugins/Manifest/Fields/Toggler.php | 34 + modules/Plugins/Manifest/Fields/Url.php | 39 + modules/Plugins/Manifest/Manifest.php | 7 +- modules/Plugins/Manifest/ManifestObject.php | 70 +- modules/Plugins/Manifest/Option.php | 2 +- modules/Plugins/Manifest/Person.php | 8 +- modules/Plugins/Manifest/Repository.php | 4 +- modules/Plugins/Manifest/Settings.php | 4 +- modules/Plugins/Manifest/WithFieldsTrait.php | 45 + modules/Plugins/Manifest/WithOptionsTrait.php | 69 + modules/Plugins/Manifest/manifest.schema.json | 193 +- package.json | 10 +- pnpm-lock.yaml | 116 +- themes/cp_admin/plugins/_field.php | 184 - themes/cp_admin/plugins/_settings_form.php | 61 +- themes/cp_admin/podcast/edit.php | 2 +- 48 files changed, 3881 insertions(+), 2559 deletions(-) create mode 100644 docs/src/content.config.ts delete mode 100644 docs/src/content/config.ts create mode 100644 modules/Plugins/Manifest/FieldInterface.php create mode 100644 modules/Plugins/Manifest/Fields/Checkbox.php create mode 100644 modules/Plugins/Manifest/Fields/Datetime.php create mode 100644 modules/Plugins/Manifest/Fields/Email.php create mode 100644 modules/Plugins/Manifest/Fields/Group.php create mode 100644 modules/Plugins/Manifest/Fields/Html.php create mode 100644 modules/Plugins/Manifest/Fields/Markdown.php create mode 100644 modules/Plugins/Manifest/Fields/Number.php create mode 100644 modules/Plugins/Manifest/Fields/RadioGroup.php create mode 100644 modules/Plugins/Manifest/Fields/Rss.php create mode 100644 modules/Plugins/Manifest/Fields/Select.php create mode 100644 modules/Plugins/Manifest/Fields/SelectMultiple.php create mode 100644 modules/Plugins/Manifest/Fields/Text.php create mode 100644 modules/Plugins/Manifest/Fields/Textarea.php create mode 100644 modules/Plugins/Manifest/Fields/Toggler.php create mode 100644 modules/Plugins/Manifest/Fields/Url.php create mode 100644 modules/Plugins/Manifest/WithFieldsTrait.php create mode 100644 modules/Plugins/Manifest/WithOptionsTrait.php delete mode 100644 themes/cp_admin/plugins/_field.php diff --git a/app/Database/Migrations/2024-12-10-170000_drop_deprecated_podcasts_fields.php b/app/Database/Migrations/2024-12-10-170000_drop_deprecated_podcasts_fields.php index 99cde454..559f8333 100644 --- a/app/Database/Migrations/2024-12-10-170000_drop_deprecated_podcasts_fields.php +++ b/app/Database/Migrations/2024-12-10-170000_drop_deprecated_podcasts_fields.php @@ -19,6 +19,8 @@ class DropDeprecatedPodcastsFields extends BaseMigration #[Override] public function up(): void { + // TODO: migrate data + $this->forge->dropColumn( 'podcasts', 'episode_description_footer_markdown,episode_description_footer_html,is_owner_email_removed_from_feed,medium,payment_pointer,verify_txt,custom_rss,partner_id,partner_link_url,partner_image_url' diff --git a/app/Entities/Podcast.php b/app/Entities/Podcast.php index eebefc77..52ac8656 100644 --- a/app/Entities/Podcast.php +++ b/app/Entities/Podcast.php @@ -55,7 +55,7 @@ use RuntimeException; * @property string $language_code * @property int $category_id * @property Category|null $category - * @property string $other_categories_ids + * @property int[] $other_categories_ids * @property Category[] $other_categories * @property string|null $parental_advisory * @property string|null $publisher @@ -111,7 +111,10 @@ class Podcast extends Entity */ protected ?array $other_categories = null; - protected string $other_categories_ids = ''; + /** + * @var int[] + */ + protected array $other_categories_ids = []; /** * @var Episode[]|null @@ -523,10 +526,13 @@ class Podcast extends Entity return $this->other_categories; } - public function getOtherCategoriesIds(): string + /** + * @return int[] + */ + public function getOtherCategoriesIds(): array { - if ($this->other_categories_ids === '') { - $this->other_categories_ids = implode(',', array_column($this->getOtherCategories(), 'id')); + if ($this->other_categories_ids === []) { + $this->other_categories_ids = array_column($this->getOtherCategories(), 'id'); } return $this->other_categories_ids; diff --git a/app/Validation/OtherRules.php b/app/Validation/OtherRules.php index 390388d7..74782809 100644 --- a/app/Validation/OtherRules.php +++ b/app/Validation/OtherRules.php @@ -21,4 +21,9 @@ class OtherRules { return is_array($str); } + + public function is_string_or_list(mixed $str = null): bool + { + return is_string($str) || is_array($str); + } } diff --git a/app/Views/Components/Forms/CodeEditor.php b/app/Views/Components/Forms/CodeEditor.php index dfbbd727..ab20988f 100644 --- a/app/Views/Components/Forms/CodeEditor.php +++ b/app/Views/Components/Forms/CodeEditor.php @@ -10,12 +10,9 @@ class CodeEditor extends FormComponent { protected array $props = ['content', 'lang']; - /** - * @var array - */ protected array $attributes = [ 'rows' => '6', - 'class' => 'textarea', + 'class' => 'bg-elevated w-full rounded-lg border-3 border-contrast focus:border-contrast focus-within:ring-accent transition', ]; protected string $lang = ''; diff --git a/app/Views/Components/Forms/FormComponent.php b/app/Views/Components/Forms/FormComponent.php index 7e19f45b..58cb30d0 100644 --- a/app/Views/Components/Forms/FormComponent.php +++ b/app/Views/Components/Forms/FormComponent.php @@ -26,9 +26,15 @@ abstract class FormComponent extends Component protected string $name; - protected string $value = ''; + /** + * @var string|string[]|null + */ + protected string|array|null $value = null; - protected string $defaultValue = ''; + /** + * @var string|string[] + */ + protected string|array $defaultValue = ''; protected bool $isRequired = false; @@ -61,8 +67,16 @@ abstract class FormComponent extends Component } } - protected function getValue(): string + protected function getValue(): string|array { - return old($this->name, $this->value === '' ? $this->defaultValue : $this->value); + $valueCast = $this->casts['value'] ?? ''; + if ($valueCast === 'array') { + return old($this->name, in_array($this->value, [[], null], true) ? $this->defaultValue : $this->value) ?? []; + } + + return old( + $this->name, + in_array($this->value, ['', null], true) ? $this->defaultValue : $this->value + ) ?? ''; } } diff --git a/app/Views/Components/Forms/SelectMulti.php b/app/Views/Components/Forms/SelectMulti.php index 7f785dd9..6c09619b 100644 --- a/app/Views/Components/Forms/SelectMulti.php +++ b/app/Views/Components/Forms/SelectMulti.php @@ -11,7 +11,9 @@ class SelectMulti extends FormComponent protected array $props = ['options']; protected array $casts = [ - 'options' => 'array', + 'value' => 'array', + 'defaultValue' => 'array', + 'options' => 'array', ]; /** @@ -36,9 +38,9 @@ class SelectMulti extends FormComponent $this->attributes = [...$defaultAttributes, ...$this->attributes]; $options = ''; - $selected = explode(',', $this->getValue()) ?? []; + $selected = $this->getValue(); foreach ($this->options as $option) { - $options .= ''; + $options .= ''; } $this->attributes['name'] = $this->name . '[]'; diff --git a/app/Views/Components/Forms/Textarea.php b/app/Views/Components/Forms/Textarea.php index b6a6d5a1..f58e3b98 100644 --- a/app/Views/Components/Forms/Textarea.php +++ b/app/Views/Components/Forms/Textarea.php @@ -8,6 +8,10 @@ use Override; class Textarea extends FormComponent { + protected array $attributes = [ + 'rows' => '6', + ]; + public function setValue(string $value): void { $this->value = htmlspecialchars_decode($value); diff --git a/composer.json b/composer.json index 136f9004..9fac8709 100644 --- a/composer.json +++ b/composer.json @@ -9,7 +9,7 @@ "php": "^8.3", "adaures/ipcat-php": "^v1.0.0", "adaures/podcast-persons-taxonomy": "^v1.0.1", - "aws/aws-sdk-php": "^3.334.7", + "aws/aws-sdk-php": "^3.336.2", "chrisjean/php-ico": "^1.0.4", "cocur/slugify": "^v4.6.0", "codeigniter4/framework": "v4.5.5", @@ -35,8 +35,8 @@ "codeigniter/phpstan-codeigniter": "v1.5.1", "mikey179/vfsstream": "^v1.6.12", "phpstan/extension-installer": "^1.4.3", - "phpstan/phpstan": "^2.0.3", - "phpunit/phpunit": "^11.5.1", + "phpstan/phpstan": "^2.0.4", + "phpunit/phpunit": "^11.5.2", "rector/rector": "^2.0.3", "symplify/coding-standard": "^12.2.3", "symplify/easy-coding-standard": "^12.5.4" diff --git a/composer.lock b/composer.lock index 3241e924..a60b42f9 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "8bdf144f383531caa188f1c211ec092a", + "content-hash": "f95311413c714e2dcef9364da4348b30", "packages": [ { "name": "adaures/ipcat-php", @@ -189,16 +189,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.334.7", + "version": "3.336.2", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "8e0104e95a1edba209e077e6c4212b8cca04686f" + "reference": "954bfdfc048840ca34afe2a2e1cbcff6681989c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/8e0104e95a1edba209e077e6c4212b8cca04686f", - "reference": "8e0104e95a1edba209e077e6c4212b8cca04686f", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/954bfdfc048840ca34afe2a2e1cbcff6681989c4", + "reference": "954bfdfc048840ca34afe2a2e1cbcff6681989c4", "shasum": "" }, "require": { @@ -275,9 +275,9 @@ "support": { "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", "issues": "https://github.com/aws/aws-sdk-php/issues", - "source": "https://github.com/aws/aws-sdk-php/tree/3.334.7" + "source": "https://github.com/aws/aws-sdk-php/tree/3.336.2" }, - "time": "2024-12-16T19:09:36+00:00" + "time": "2024-12-20T19:05:10+00:00" }, { "name": "brick/math", @@ -1354,16 +1354,16 @@ }, { "name": "laminas/laminas-escaper", - "version": "2.14.0", + "version": "2.15.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-escaper.git", - "reference": "0f7cb975f4443cf22f33408925c231225cfba8cb" + "reference": "c612b0488ae486284c39885efca494c180f16351" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/0f7cb975f4443cf22f33408925c231225cfba8cb", - "reference": "0f7cb975f4443cf22f33408925c231225cfba8cb", + "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/c612b0488ae486284c39885efca494c180f16351", + "reference": "c612b0488ae486284c39885efca494c180f16351", "shasum": "" }, "require": { @@ -1375,12 +1375,12 @@ "zendframework/zend-escaper": "*" }, "require-dev": { - "infection/infection": "^0.27.9", - "laminas/laminas-coding-standard": "~3.0.0", + "infection/infection": "^0.27.11", + "laminas/laminas-coding-standard": "~3.0.1", "maglnet/composer-require-checker": "^3.8.0", - "phpunit/phpunit": "^9.6.16", + "phpunit/phpunit": "^9.6.22", "psalm/plugin-phpunit": "^0.19.0", - "vimeo/psalm": "^5.21.1" + "vimeo/psalm": "^5.26.1" }, "type": "library", "autoload": { @@ -1407,7 +1407,7 @@ "type": "community_bridge" } ], - "time": "2024-10-24T10:12:53+00:00" + "time": "2024-12-17T19:39:54+00:00" }, { "name": "league/commonmark", @@ -3637,11 +3637,11 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - }, "phpstan": { "includes": ["extension.neon"] + }, + "branch-alias": { + "dev-main": "3.x-dev" } }, "autoload": { @@ -4316,16 +4316,16 @@ }, { "name": "phpstan/phpstan", - "version": "2.0.3", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "46b4d3529b12178112d9008337beda0cc2a1a6b4" + "reference": "50d276fc3bf1430ec315f2f109bbde2769821524" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/46b4d3529b12178112d9008337beda0cc2a1a6b4", - "reference": "46b4d3529b12178112d9008337beda0cc2a1a6b4", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/50d276fc3bf1430ec315f2f109bbde2769821524", + "reference": "50d276fc3bf1430ec315f2f109bbde2769821524", "shasum": "" }, "require": { @@ -4360,7 +4360,7 @@ "type": "github" } ], - "time": "2024-11-28T22:19:37+00:00" + "time": "2024-12-17T17:14:01+00:00" }, { "name": "phpunit/php-code-coverage", @@ -4654,16 +4654,16 @@ }, { "name": "phpunit/phpunit", - "version": "11.5.1", + "version": "11.5.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "2b94d4f2450b9869fa64a46fd8a6a41997aef56a" + "reference": "153d0531b9f7e883c5053160cad6dd5ac28140b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2b94d4f2450b9869fa64a46fd8a6a41997aef56a", - "reference": "2b94d4f2450b9869fa64a46fd8a6a41997aef56a", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/153d0531b9f7e883c5053160cad6dd5ac28140b3", + "reference": "153d0531b9f7e883c5053160cad6dd5ac28140b3", "shasum": "" }, "require": { @@ -4677,13 +4677,13 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=8.2", - "phpunit/php-code-coverage": "^11.0.7", + "phpunit/php-code-coverage": "^11.0.8", "phpunit/php-file-iterator": "^5.1.0", "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.1", + "sebastian/code-unit": "^3.0.2", "sebastian/comparator": "^6.2.1", "sebastian/diff": "^6.0.2", "sebastian/environment": "^7.2.0", @@ -4723,7 +4723,7 @@ "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.1" + "source": "https://github.com/sebastianbergmann/phpunit/tree/11.5.2" }, "funding": [ { @@ -4739,7 +4739,7 @@ "type": "tidelift" } ], - "time": "2024-12-11T10:52:48+00:00" + "time": "2024-12-21T05:51:08+00:00" }, { "name": "psr/container", diff --git a/docs/package.json b/docs/package.json index 8b5c3980..778bab39 100644 --- a/docs/package.json +++ b/docs/package.json @@ -11,18 +11,19 @@ "prepare": "astro telemetry disable" }, "dependencies": { - "@astrojs/check": "^0.9.3", - "@astrojs/starlight": "^0.28.2", - "@astrojs/starlight-tailwind": "^2.0.3", - "@astrojs/tailwind": "^5.1.1", + "@astrojs/check": "^0.9.4", + "@astrojs/starlight": "^0.30.3", + "@astrojs/starlight-tailwind": "^3.0.0", + "@astrojs/tailwind": "^5.1.3", "@fontsource/inter": "^5.1.0", "@fontsource/rubik": "^5.1.0", - "astro": "^4.15.9", + "astro": "^5.1.0", "autoprefixer": "^10.4.20", "cssnano": "^7.0.6", - "postcss-preset-env": "^10.0.5", + "postcss-preset-env": "^10.1.2", "sharp": "^0.33.5", - "tailwindcss": "^3.4.13", - "typescript": "^5.6.2" + "tailwindcss": "^3.4.17", + "typescript": "^5.7.2", + "zod": "3.24.1" } } diff --git a/docs/pnpm-lock.yaml b/docs/pnpm-lock.yaml index 481267ef..0e068ba3 100644 --- a/docs/pnpm-lock.yaml +++ b/docs/pnpm-lock.yaml @@ -8,17 +8,17 @@ importers: .: dependencies: "@astrojs/check": - specifier: ^0.9.3 - version: 0.9.3(typescript@5.6.2) + specifier: ^0.9.4 + version: 0.9.4(typescript@5.7.2) "@astrojs/starlight": - specifier: ^0.28.2 - version: 0.28.2(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2)) + specifier: ^0.30.3 + version: 0.30.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1)) "@astrojs/starlight-tailwind": - specifier: ^2.0.3 - version: 2.0.3(@astrojs/starlight@0.28.2(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2)))(@astrojs/tailwind@5.1.1(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2))(tailwindcss@3.4.13))(tailwindcss@3.4.13) + specifier: ^3.0.0 + version: 3.0.0(@astrojs/starlight@0.30.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1)))(@astrojs/tailwind@5.1.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1))(tailwindcss@3.4.17))(tailwindcss@3.4.17) "@astrojs/tailwind": - specifier: ^5.1.1 - version: 5.1.1(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2))(tailwindcss@3.4.13) + specifier: ^5.1.3 + version: 5.1.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1))(tailwindcss@3.4.17) "@fontsource/inter": specifier: ^5.1.0 version: 5.1.0 @@ -26,26 +26,29 @@ importers: specifier: ^5.1.0 version: 5.1.0 astro: - specifier: ^4.15.9 - version: 4.15.9(rollup@4.22.5)(typescript@5.6.2) + specifier: ^5.1.0 + version: 5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1) autoprefixer: specifier: ^10.4.20 - version: 10.4.20(postcss@8.4.38) + version: 10.4.20(postcss@8.4.47) cssnano: specifier: ^7.0.6 - version: 7.0.6(postcss@8.4.38) + version: 7.0.6(postcss@8.4.47) postcss-preset-env: - specifier: ^10.0.5 - version: 10.0.5(postcss@8.4.38) + specifier: ^10.1.2 + version: 10.1.2(postcss@8.4.47) sharp: specifier: ^0.33.5 version: 0.33.5 tailwindcss: - specifier: ^3.4.13 - version: 3.4.13 + specifier: ^3.4.17 + version: 3.4.17 typescript: - specifier: ^5.6.2 - version: 5.6.2 + specifier: ^5.7.2 + version: 5.7.2 + zod: + specifier: 3.24.1 + version: 3.24.1 packages: "@alloc/quick-lru@5.2.0": @@ -55,17 +58,10 @@ packages: } engines: { node: ">=10" } - "@ampproject/remapping@2.2.1": + "@astrojs/check@0.9.4": resolution: { - integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==, - } - engines: { node: ">=6.0.0" } - - "@astrojs/check@0.9.3": - resolution: - { - integrity: sha512-I6Dz45bMI5YRbp4yK2LKWsHH3/kkHRGdPGruGkLap6pqxhdcNh7oCgN04Ac+haDfc9ow5BYPGPmEhkwef15GQQ==, + integrity: sha512-IOheHwCtpUfvogHHsvu0AbeRZEnjJg3MopdLddkJE70mULItS/Vh37BHcI00mcOJcH1vhD3odbpvWokpxam7xA==, } hasBin: true peerDependencies: @@ -77,16 +73,16 @@ packages: integrity: sha512-bL/O7YBxsFt55YHU021oL+xz+B/9HvGNId3F9xURN16aeqDK9juHGktdkCSXz+U4nqFACq6ZFvWomOzhV+zfPw==, } - "@astrojs/internal-helpers@0.4.1": + "@astrojs/internal-helpers@0.4.2": resolution: { - integrity: sha512-bMf9jFihO8YP940uD70SI/RDzIhUHJAolWVcO1v5PUivxGKvfLZTLTVVxEYzGYyPsA3ivdLNqMnL5VgmQySa+g==, + integrity: sha512-EdDWkC3JJVcpGpqJAU/5hSk2LKXyG3mNGkzGoAuyK+xoPHbaVdSuIWoN1QTnmK3N/gGfaaAfM8gO2KDCAW7S3w==, } - "@astrojs/language-server@2.14.2": + "@astrojs/language-server@2.15.4": resolution: { - integrity: sha512-daUJ/+/2pPF3eGG4tVdXKyw0tabUDrJKwLzU8VTuNhEHIn3VZAIES6VT3+mX0lmKcMiKM8/bjZdfY+fPfmnsMA==, + integrity: sha512-JivzASqTPR2bao9BWsSc/woPHH7OGSGc9aMxXL4U6egVTqBycB3ZHdBJPuOCVtcGLrzdWTosAqVPz1BVoxE0+A==, } hasBin: true peerDependencies: @@ -98,27 +94,27 @@ packages: prettier-plugin-astro: optional: true - "@astrojs/markdown-remark@5.2.0": + "@astrojs/markdown-remark@6.0.1": resolution: { - integrity: sha512-vWGM24KZXz11jR3JO+oqYU3T2qpuOi4uGivJ9SQLCAI01+vEkHC60YJMRvHPc+hwd60F7euNs1PeOEixIIiNQw==, + integrity: sha512-CTSYijj25NfxgZi15TU3CwPwgyD1/7yA3FcdcNmB9p94nydupiUbrIiq3IqeTp2m5kCVzxbPZeC7fTwEOaNyGw==, } - "@astrojs/mdx@3.1.7": + "@astrojs/mdx@4.0.2": resolution: { - integrity: sha512-8lGdCt+S0TrZgQpbcP3fQJc4cTeacAirtz9TpAMtHCWrQGW8slKt3WG4/0N+bhZgYRC4h5AT5drzFz+y3wvmsg==, + integrity: sha512-uBoXNSSAUqhf2dVtJWFbSapwNkcnCzbISW98EcybFXvNgYt9g8yPJ7+lYnf+sH5pv0c/JEW8HlBvPSi81AVRlw==, } - engines: { node: ^18.17.1 || ^20.3.0 || >=21.0.0 } + engines: { node: ^18.17.1 || ^20.3.0 || >=22.0.0 } peerDependencies: - astro: ^4.8.0 + astro: ^5.0.0 - "@astrojs/prism@3.1.0": + "@astrojs/prism@3.2.0": resolution: { - integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==, + integrity: sha512-GilTHKGCW6HMq7y3BUv9Ac7GMe/MO9gi9GW62GzKtth0SwukCu/qp2wLiGpEujhY+VVhaG9v7kv/5vFzvf4NYw==, } - engines: { node: ^18.17.1 || ^20.3.0 || >=21.0.0 } + engines: { node: ^18.17.1 || ^20.3.0 || >=22.0.0 } "@astrojs/sitemap@3.1.6": resolution: @@ -126,153 +122,46 @@ packages: integrity: sha512-1Qp2NvAzVImqA6y+LubKi1DVhve/hXXgFvB0szxiipzh7BvtuKe4oJJ9dXSqaubaTkt4nMa6dv6RCCAYeB6xaQ==, } - "@astrojs/starlight-tailwind@2.0.3": + "@astrojs/starlight-tailwind@3.0.0": resolution: { - integrity: sha512-ZwbdXS/9rxYlo3tKZoTZoBPUnaaqek02b341dHwOkmMT0lIR2w+8k0mRUGxnRaYtPdMcaL+nYFd8RUa8sjdyRg==, + integrity: sha512-oYHG9RY+VaOSeAhheVZfm9HDA892qvcQA82VT86POYmg1OsgBuWwdf1ZbofV8iq/z5kO06ajcSdzhPE8lhEx8g==, } peerDependencies: - "@astrojs/starlight": ">=0.9.0" - "@astrojs/tailwind": ^5.0.0 + "@astrojs/starlight": ">=0.30.0" + "@astrojs/tailwind": ^5.1.3 tailwindcss: ^3.3.3 - "@astrojs/starlight@0.28.2": + "@astrojs/starlight@0.30.3": resolution: { - integrity: sha512-Q1/Ujl2EzWX71qwqdt/0KP3wOyX6Rvyzcep/zD3hRCtw/Vi2TReh4Q2wLwz7mnbuYU9H7YvBKYknbkmjC+K/0w==, + integrity: sha512-HbGYYIR2Rnrvvc2jD0dUpp8zUzv3jQYtG5im3aulDgE4Jo21Ahw0yXlb/Y134G3LALLbqhImmlbt/h/nDV3yMA==, } peerDependencies: - astro: ^4.14.0 + astro: ^5.0.0 - "@astrojs/tailwind@5.1.1": + "@astrojs/tailwind@5.1.3": resolution: { - integrity: sha512-LwurA10uIKcGRxQP2R81RvAnBT0WPKzBntXZBF4hrAefDgM5Uumn0nsGr6tdIjSARgYz4X+Cq/Vh78t3bql3yw==, + integrity: sha512-XF7WhXRhqEHGvADqc0kDtF7Yv/g4wAWTaj91jBBTBaYnc4+MQLH94duFfFa4NlTkRG40VQd012eF3MhO3Kk+bg==, } peerDependencies: - astro: ^3.0.0 || ^4.0.0 || ^5.0.0-beta.0 + astro: ^3.0.0 || ^4.0.0 || ^5.0.0 tailwindcss: ^3.0.24 - "@astrojs/telemetry@3.1.0": + "@astrojs/telemetry@3.2.0": resolution: { - integrity: sha512-/ca/+D8MIKEC8/A9cSaPUqQNZm+Es/ZinRv0ZAzvu2ios7POQSsVD+VOj7/hypWNsNM3T7RpfgNq7H2TU1KEHA==, + integrity: sha512-wxhSKRfKugLwLlr4OFfcqovk+LIFtKwLyGPqMsv+9/ibqqnW3Gv7tBhtKEb0gAyUAC4G9BTVQeQahqnQAhd6IQ==, } - engines: { node: ^18.17.1 || ^20.3.0 || >=21.0.0 } + engines: { node: ^18.17.1 || ^20.3.0 || >=22.0.0 } - "@astrojs/yaml2ts@0.2.1": + "@astrojs/yaml2ts@0.2.2": resolution: { - integrity: sha512-CBaNwDQJz20E5WxzQh4thLVfhB3JEEGz72wRA+oJp6fQR37QLAqXZJU0mHC+yqMOQ6oj0GfRPJrz6hjf+zm6zA==, + integrity: sha512-GOfvSr5Nqy2z5XiwqTouBBpy5FyI6DEe+/g/Mk5am9SjILN1S5fOEvYK0GuWHg98yS/dobP4m8qyqw/URW35fQ==, } - "@babel/code-frame@7.24.7": - resolution: - { - integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==, - } - engines: { node: ">=6.9.0" } - - "@babel/compat-data@7.25.4": - resolution: - { - integrity: sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==, - } - engines: { node: ">=6.9.0" } - - "@babel/core@7.25.2": - resolution: - { - integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==, - } - engines: { node: ">=6.9.0" } - - "@babel/generator@7.24.7": - resolution: - { - integrity: sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==, - } - engines: { node: ">=6.9.0" } - - "@babel/generator@7.25.6": - resolution: - { - integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-annotate-as-pure@7.24.7": - resolution: - { - integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-compilation-targets@7.25.2": - resolution: - { - integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-environment-visitor@7.24.7": - resolution: - { - integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-function-name@7.24.7": - resolution: - { - integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-hoist-variables@7.24.7": - resolution: - { - integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-module-imports@7.24.7": - resolution: - { - integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-module-transforms@7.25.2": - resolution: - { - integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==, - } - engines: { node: ">=6.9.0" } - peerDependencies: - "@babel/core": ^7.0.0 - - "@babel/helper-plugin-utils@7.24.8": - resolution: - { - integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-simple-access@7.24.7": - resolution: - { - integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==, - } - engines: { node: ">=6.9.0" } - - "@babel/helper-split-export-declaration@7.24.7": - resolution: - { - integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==, - } - engines: { node: ">=6.9.0" } - "@babel/helper-string-parser@7.24.8": resolution: { @@ -287,35 +176,6 @@ packages: } engines: { node: ">=6.9.0" } - "@babel/helper-validator-option@7.24.8": - resolution: - { - integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==, - } - engines: { node: ">=6.9.0" } - - "@babel/helpers@7.25.6": - resolution: - { - integrity: sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==, - } - engines: { node: ">=6.9.0" } - - "@babel/highlight@7.24.7": - resolution: - { - integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==, - } - engines: { node: ">=6.9.0" } - - "@babel/parser@7.24.7": - resolution: - { - integrity: sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==, - } - engines: { node: ">=6.0.0" } - hasBin: true - "@babel/parser@7.25.6": resolution: { @@ -324,24 +184,6 @@ packages: engines: { node: ">=6.0.0" } hasBin: true - "@babel/plugin-syntax-jsx@7.24.7": - resolution: - { - integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==, - } - engines: { node: ">=6.9.0" } - peerDependencies: - "@babel/core": ^7.0.0-0 - - "@babel/plugin-transform-react-jsx@7.25.2": - resolution: - { - integrity: sha512-KQsqEAVBpU82NM/B/N9j9WOdphom1SZH3R+2V7INrQUH+V9EBFwZsEJl8eBIVeQE62FxJCc70jzEZwqU7RcVqA==, - } - engines: { node: ">=6.9.0" } - peerDependencies: - "@babel/core": ^7.0.0-0 - "@babel/runtime@7.25.6": resolution: { @@ -349,34 +191,6 @@ packages: } engines: { node: ">=6.9.0" } - "@babel/template@7.24.7": - resolution: - { - integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==, - } - engines: { node: ">=6.9.0" } - - "@babel/template@7.25.0": - resolution: - { - integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==, - } - engines: { node: ">=6.9.0" } - - "@babel/traverse@7.24.7": - resolution: - { - integrity: sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==, - } - engines: { node: ">=6.9.0" } - - "@babel/traverse@7.25.6": - resolution: - { - integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==, - } - engines: { node: ">=6.9.0" } - "@babel/types@7.25.6": resolution: { @@ -384,15 +198,15 @@ packages: } engines: { node: ">=6.9.0" } - "@csstools/cascade-layer-name-parser@2.0.1": + "@csstools/cascade-layer-name-parser@2.0.4": resolution: { - integrity: sha512-G9ZYN5+yr/E6xYSiy1BwOEFP5p88ZtWo8sL4NztKBkRRAwRkzVGa70M+D+fYHugMID5jkLeNt5X9jYd5EaVuyg==, + integrity: sha512-7DFHlPuIxviKYZrOiwVU/PiHLm3lLUR23OMuEEtfEOQTOp9hzQ2JjdY6X5H18RVuUPJqSCI+qNnD5iOLMVE0bA==, } engines: { node: ">=18" } peerDependencies: - "@csstools/css-parser-algorithms": ^3.0.1 - "@csstools/css-tokenizer": ^3.0.1 + "@csstools/css-parser-algorithms": ^3.0.4 + "@csstools/css-tokenizer": ^3.0.3 "@csstools/color-helpers@5.0.1": resolution: @@ -401,92 +215,92 @@ packages: } engines: { node: ">=18" } - "@csstools/css-calc@2.0.1": + "@csstools/css-calc@2.1.0": resolution: { - integrity: sha512-e59V+sNp6e5m+9WnTUydA1DQO70WuKUdseflRpWmXxocF/h5wWGIxUjxfvLtajcmwstH0vm6l0reKMzcyI757Q==, + integrity: sha512-X69PmFOrjTZfN5ijxtI8hZ9kRADFSLrmmQ6hgDJ272Il049WGKpDY64KhrFm/7rbWve0z81QepawzjkKlqkNGw==, } engines: { node: ">=18" } peerDependencies: - "@csstools/css-parser-algorithms": ^3.0.1 - "@csstools/css-tokenizer": ^3.0.1 + "@csstools/css-parser-algorithms": ^3.0.4 + "@csstools/css-tokenizer": ^3.0.3 - "@csstools/css-color-parser@3.0.2": + "@csstools/css-color-parser@3.0.6": resolution: { - integrity: sha512-mNg7A6HnNjlm0we/pDS9dUafOuBxcanN0TBhEGeIk6zZincuk0+mAbnBqfVs29NlvWHZ8diwTG6g5FeU8246sA==, + integrity: sha512-S/IjXqTHdpI4EtzGoNCHfqraXF37x12ZZHA1Lk7zoT5pm2lMjFuqhX/89L7dqX4CcMacKK+6ZCs5TmEGb/+wKw==, } engines: { node: ">=18" } peerDependencies: - "@csstools/css-parser-algorithms": ^3.0.1 - "@csstools/css-tokenizer": ^3.0.1 + "@csstools/css-parser-algorithms": ^3.0.4 + "@csstools/css-tokenizer": ^3.0.3 - "@csstools/css-parser-algorithms@3.0.1": + "@csstools/css-parser-algorithms@3.0.4": resolution: { - integrity: sha512-lSquqZCHxDfuTg/Sk2hiS0mcSFCEBuj49JfzPHJogDBT0mGCyY5A1AQzBWngitrp7i1/HAZpIgzF/VjhOEIJIg==, + integrity: sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==, } engines: { node: ">=18" } peerDependencies: - "@csstools/css-tokenizer": ^3.0.1 + "@csstools/css-tokenizer": ^3.0.3 - "@csstools/css-tokenizer@3.0.1": + "@csstools/css-tokenizer@3.0.3": resolution: { - integrity: sha512-UBqaiu7kU0lfvaP982/o3khfXccVlHPWp0/vwwiIgDF0GmqqqxoiXC/6FCjlS9u92f7CoEz6nXKQnrn1kIAkOw==, + integrity: sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==, } engines: { node: ">=18" } - "@csstools/media-query-list-parser@3.0.1": + "@csstools/media-query-list-parser@4.0.2": resolution: { - integrity: sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==, + integrity: sha512-EUos465uvVvMJehckATTlNqGj4UJWkTmdWuDMjqvSUkjGpmOyFZBVwb4knxCm/k2GMTXY+c/5RkdndzFYWeX5A==, } engines: { node: ">=18" } peerDependencies: - "@csstools/css-parser-algorithms": ^3.0.1 - "@csstools/css-tokenizer": ^3.0.1 + "@csstools/css-parser-algorithms": ^3.0.4 + "@csstools/css-tokenizer": ^3.0.3 - "@csstools/postcss-cascade-layers@5.0.0": + "@csstools/postcss-cascade-layers@5.0.1": resolution: { - integrity: sha512-h+VunB3KXaoWTWEPBcdVk8Kz1eZ/CtDD+HXgKw5JLdbsViLEQdKUtFYH73VIQigdodng8s5DCrrwNQY7pnuWBA==, + integrity: sha512-XOfhI7GShVcKiKwmPAnWSqd2tBR0uxt+runAxttbSp/LY2U16yAVPmAf7e9q4JJ0d+xMNmpwNDLBXnmRCl3HMQ==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-color-function@4.0.2": + "@csstools/postcss-color-function@4.0.6": resolution: { - integrity: sha512-q/W3RXh66SM7WqxW3/KU6koL8nOgqyB/wrcU3+ThXnNtXY2+k8UgdE301ISJpMt6PDyYgC7eMaIBo535RvFIgw==, + integrity: sha512-EcvXfC60cTIumzpsxWuvVjb7rsJEHPvqn3jeMEBUaE3JSc4FRuP7mEQ+1eicxWmIrs3FtzMH9gR3sgA5TH+ebQ==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-color-mix-function@3.0.2": + "@csstools/postcss-color-mix-function@3.0.6": resolution: { - integrity: sha512-zG9PHNzZVCRk6eprm+T/ybrnuiwLdO+RR7+GCtNut+NZJGtPJj6bfPOEX23aOlMslLcRAlN6QOpxH3tovn+WpA==, + integrity: sha512-jVKdJn4+JkASYGhyPO+Wa5WXSx1+oUgaXb3JsjJn/BlrtFh5zjocCY7pwWi0nuP24V1fY7glQsxEYcYNy0dMFg==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-content-alt-text@2.0.1": + "@csstools/postcss-content-alt-text@2.0.4": resolution: { - integrity: sha512-TWjjewVZqdkjavsi8a2THuXgkhUum1k/m4QJpZpzOv72q6WnaoQZGSj5t5uCs7ymJr0H3qj6JcXMwMApSWUOGQ==, + integrity: sha512-YItlZUOuZJCBlRaCf8Aucc1lgN41qYGALMly0qQllrxYJhiyzlI6RxOTMUvtWk+KhS8GphMDsDhKQ7KTPfEMSw==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-exponential-functions@2.0.1": + "@csstools/postcss-exponential-functions@2.0.5": resolution: { - integrity: sha512-A/MG8es3ylFzZ30oYIQUyJcMOfTfCs0dqqBMzeuzaPRlx4q/72WG+BbKe/pL9BUNIWsM0Q8jn3e3la8enjHJJA==, + integrity: sha512-mi8R6dVfA2nDoKM3wcEi64I8vOYEgQVtVKCfmLHXupeLpACfGAided5ddMt5f+CnEodNu4DifuVwb0I6fQDGGQ==, } engines: { node: ">=18" } peerDependencies: @@ -501,28 +315,28 @@ packages: peerDependencies: postcss: ^8.4 - "@csstools/postcss-gamut-mapping@2.0.2": + "@csstools/postcss-gamut-mapping@2.0.6": resolution: { - integrity: sha512-/1ur3ca9RWg/KnbLlxaDswyjLSGoaHNDruAzrVhkn5axgd7LOH6JHCBRhrKDafdMw9bf4MQrYFoaLfHAPekLFg==, + integrity: sha512-0ke7fmXfc8H+kysZz246yjirAH6JFhyX9GTlyRnM0exHO80XcA9zeJpy5pOp5zo/AZiC/q5Pf+Hw7Pd6/uAoYA==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-gradients-interpolation-method@5.0.2": + "@csstools/postcss-gradients-interpolation-method@5.0.6": resolution: { - integrity: sha512-qRpvA4sduAfiV9yZG4OM7q/h2Qhr3lg+GrHe9NZwuzWnfSDLGh+Dh4Ea6fQ+1++jdKXW/Cb4/vHRp0ssQYra4w==, + integrity: sha512-Itrbx6SLUzsZ6Mz3VuOlxhbfuyLTogG5DwEF1V8dAi24iMuvQPIHd7Ti+pNDp7j6WixndJGZaoNR0f9VSzwuTg==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-hwb-function@4.0.2": + "@csstools/postcss-hwb-function@4.0.6": resolution: { - integrity: sha512-RUBVCyJE1hTsf9vGp3zrALeMollkAlHRFKm+T36y67nLfOOf+6GNQsdTGFAyLrY65skcm8ddC26Jp1n9ZIauEA==, + integrity: sha512-927Pqy3a1uBP7U8sTfaNdZVB0mNXzIrJO/GZ8us9219q9n06gOqCdfZ0E6d1P66Fm0fYHvxfDbfcUuwAn5UwhQ==, } engines: { node: ">=18" } peerDependencies: @@ -546,19 +360,19 @@ packages: peerDependencies: postcss: ^8.4 - "@csstools/postcss-is-pseudo-class@5.0.0": + "@csstools/postcss-is-pseudo-class@5.0.1": resolution: { - integrity: sha512-E/CjrT03BL06WmrjupnrT0VUBTvxJdoW1hRVeXFa9qatWtvcLLw0j8hP372G4A9PpSGEMXi3/AoHzPf7DNryCQ==, + integrity: sha512-JLp3POui4S1auhDR0n8wHd/zTOWmMsmK3nQd3hhL6FhWPaox5W7j1se6zXOG/aP07wV2ww0lxbKYGwbBszOtfQ==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-light-dark-function@2.0.4": + "@csstools/postcss-light-dark-function@2.0.7": resolution: { - integrity: sha512-yHUt5DZ61Irvp72notmAl3Zt4Me50EWToWNocazyIFTVYFwwo/EucmV3hWi9zJehu3rOSvMclL7DzvRDfbak/A==, + integrity: sha512-ZZ0rwlanYKOHekyIPaU+sVm3BEHCe+Ha0/px+bmHe62n0Uc1lL34vbwrLYn6ote8PHlsqzKeTQdIejQCJ05tfw==, } engines: { node: ">=18" } peerDependencies: @@ -600,28 +414,28 @@ packages: peerDependencies: postcss: ^8.4 - "@csstools/postcss-logical-viewport-units@3.0.1": + "@csstools/postcss-logical-viewport-units@3.0.3": resolution: { - integrity: sha512-JsfaoTiBqIuRE+CYL4ZpYKOqJ965GyiMH4b8UrY0Z7i5GfMiHZrK7xtTB29piuyKQzrW+Z8w3PAExhwND9cuAQ==, + integrity: sha512-OC1IlG/yoGJdi0Y+7duz/kU/beCwO+Gua01sD6GtOtLi7ByQUpcIqs7UE/xuRPay4cHgOMatWdnDdsIDjnWpPw==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-media-minmax@2.0.1": + "@csstools/postcss-media-minmax@2.0.5": resolution: { - integrity: sha512-EMa3IgUip+F/MwH4r2KfIA9ym9hQkT2PpR9MOukdomfGGCFuw9V3n/iIOBKziN1qfeddsYoOvtYOKQcHU2yIjg==, + integrity: sha512-sdh5i5GToZOIAiwhdntRWv77QDtsxP2r2gXW/WbLSCoLr00KTq/yiF1qlQ5XX2+lmiFa8rATKMcbwl3oXDMNew==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.1": + "@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.4": resolution: { - integrity: sha512-JTzMQz//INahTALkvXnC5lC2fJKzwb5PY443T2zaM9hAzM7nzHMLIlEfFgdtBahVIBtBSalMefdxNr99LGW1lQ==, + integrity: sha512-AnGjVslHMm5xw9keusQYvjVWvuS7KWK+OJagaG0+m9QnIjZsrysD2kJP/tr/UJIyYtMCtu8OkUd+Rajb4DqtIQ==, } engines: { node: ">=18" } peerDependencies: @@ -645,10 +459,10 @@ packages: peerDependencies: postcss: ^8.4 - "@csstools/postcss-oklab-function@4.0.2": + "@csstools/postcss-oklab-function@4.0.6": resolution: { - integrity: sha512-2iSK/T77PHMeorakBAk/WLxSodfIJ/lmi6nxEkuruXfhGH7fByZim4Fw6ZJf4B73SVieRSH2ep8zvYkA2ZfRtA==, + integrity: sha512-Hptoa0uX+XsNacFBCIQKTUBrFKDiplHan42X73EklG6XmQLG7/aIvxoNhvZ7PvOWMt67Pw3bIlUY2nD6p5vL8A==, } engines: { node: ">=18" } peerDependencies: @@ -663,28 +477,46 @@ packages: peerDependencies: postcss: ^8.4 - "@csstools/postcss-relative-color-syntax@3.0.2": + "@csstools/postcss-random-function@1.0.1": resolution: { - integrity: sha512-aBpuUdpJBswNGfw6lOkhown2cZ0YXrMjASye56nkoRpgRe9yDF4BM1fvEuakrCDiaeoUzVaI4SF6+344BflXfQ==, + integrity: sha512-Ab/tF8/RXktQlFwVhiC70UNfpFQRhtE5fQQoP2pO+KCPGLsLdWFiOuHgSRtBOqEshCVAzR4H6o38nhvRZq8deA==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-scope-pseudo-class@4.0.0": + "@csstools/postcss-relative-color-syntax@3.0.6": resolution: { - integrity: sha512-+ZUOBtVMDcmHZcZqsP/jcNRriEILfWQflTI3tCTA+/RheXAg57VkFGyPDAilpQSqlCpxWLWG8VUFKFtZJPwuOg==, + integrity: sha512-yxP618Xb+ji1I624jILaYM62uEmZcmbdmFoZHoaThw896sq0vU39kqTTF+ZNic9XyPtPMvq0vyvbgmHaszq8xg==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - "@csstools/postcss-stepped-value-functions@4.0.1": + "@csstools/postcss-scope-pseudo-class@4.0.1": resolution: { - integrity: sha512-dk3KqVcIEYzy9Mvx8amoBbk123BWgd5DfjXDiPrEqxGma37PG7m/MoMmHQhuVHIjvPDHoJwyIZi2yy7j0RA5fw==, + integrity: sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q==, + } + engines: { node: ">=18" } + peerDependencies: + postcss: ^8.4 + + "@csstools/postcss-sign-functions@1.1.0": + resolution: + { + integrity: sha512-SLcc20Nujx/kqbSwDmj6oaXgpy3UjFhBy1sfcqPgDkHfOIfUtUVH7OXO+j7BU4v/At5s61N5ZX6shvgPwluhsA==, + } + engines: { node: ">=18" } + peerDependencies: + postcss: ^8.4 + + "@csstools/postcss-stepped-value-functions@4.0.5": + resolution: + { + integrity: sha512-G6SJ6hZJkhxo6UZojVlLo14MohH4J5J7z8CRBrxxUYy9JuZiIqUo5TBYyDGcE0PLdzpg63a7mHSJz3VD+gMwqw==, } engines: { node: ">=18" } peerDependencies: @@ -699,10 +531,10 @@ packages: peerDependencies: postcss: ^8.4 - "@csstools/postcss-trigonometric-functions@4.0.1": + "@csstools/postcss-trigonometric-functions@4.0.5": resolution: { - integrity: sha512-QHOYuN3bzS/rcpAygFhJxJUtD8GuJEWF6f9Zm518Tq/cSMlcTgU+v0geyi5EqbmYxKMig2oKCKUSGqOj9gehkg==, + integrity: sha512-/YQThYkt5MLvAmVu7zxjhceCYlKrYddK6LEmK5I4ojlS6BmO9u2yO4+xjXzu2+NPYmHSTtP4NFSamBCMmJ1NJA==, } engines: { node: ">=18" } peerDependencies: @@ -717,23 +549,23 @@ packages: peerDependencies: postcss: ^8.4 - "@csstools/selector-resolve-nested@2.0.0": + "@csstools/selector-resolve-nested@3.0.0": resolution: { - integrity: sha512-oklSrRvOxNeeOW1yARd4WNCs/D09cQjunGZUgSq6vM8GpzFswN+8rBZyJA29YFZhOTQ6GFzxgLDNtVbt9wPZMA==, + integrity: sha512-ZoK24Yku6VJU1gS79a5PFmC8yn3wIapiKmPgun0hZgEI5AOqgH2kiPRsPz1qkGv4HL+wuDLH83yQyk6inMYrJQ==, } engines: { node: ">=18" } peerDependencies: - postcss-selector-parser: ^6.1.0 + postcss-selector-parser: ^7.0.0 - "@csstools/selector-specificity@4.0.0": + "@csstools/selector-specificity@5.0.0": resolution: { - integrity: sha512-189nelqtPd8++phaHNwYovKZI0FOzH1vQEE3QhHHkNIGrg5fSs9CbYP3RvfEH5geztnIA9Jwq91wyOIwAW5JIQ==, + integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==, } engines: { node: ">=18" } peerDependencies: - postcss-selector-parser: ^6.1.0 + postcss-selector-parser: ^7.0.0 "@csstools/utilities@2.0.0": resolution: @@ -808,6 +640,15 @@ packages: cpu: [ppc64] os: [aix] + "@esbuild/aix-ppc64@0.24.0": + resolution: + { + integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==, + } + engines: { node: ">=18" } + cpu: [ppc64] + os: [aix] + "@esbuild/android-arm64@0.21.5": resolution: { @@ -817,6 +658,15 @@ packages: cpu: [arm64] os: [android] + "@esbuild/android-arm64@0.24.0": + resolution: + { + integrity: sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [android] + "@esbuild/android-arm@0.21.5": resolution: { @@ -826,6 +676,15 @@ packages: cpu: [arm] os: [android] + "@esbuild/android-arm@0.24.0": + resolution: + { + integrity: sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==, + } + engines: { node: ">=18" } + cpu: [arm] + os: [android] + "@esbuild/android-x64@0.21.5": resolution: { @@ -835,6 +694,15 @@ packages: cpu: [x64] os: [android] + "@esbuild/android-x64@0.24.0": + resolution: + { + integrity: sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [android] + "@esbuild/darwin-arm64@0.21.5": resolution: { @@ -844,6 +712,15 @@ packages: cpu: [arm64] os: [darwin] + "@esbuild/darwin-arm64@0.24.0": + resolution: + { + integrity: sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [darwin] + "@esbuild/darwin-x64@0.21.5": resolution: { @@ -853,6 +730,15 @@ packages: cpu: [x64] os: [darwin] + "@esbuild/darwin-x64@0.24.0": + resolution: + { + integrity: sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [darwin] + "@esbuild/freebsd-arm64@0.21.5": resolution: { @@ -862,6 +748,15 @@ packages: cpu: [arm64] os: [freebsd] + "@esbuild/freebsd-arm64@0.24.0": + resolution: + { + integrity: sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [freebsd] + "@esbuild/freebsd-x64@0.21.5": resolution: { @@ -871,6 +766,15 @@ packages: cpu: [x64] os: [freebsd] + "@esbuild/freebsd-x64@0.24.0": + resolution: + { + integrity: sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [freebsd] + "@esbuild/linux-arm64@0.21.5": resolution: { @@ -880,6 +784,15 @@ packages: cpu: [arm64] os: [linux] + "@esbuild/linux-arm64@0.24.0": + resolution: + { + integrity: sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [linux] + "@esbuild/linux-arm@0.21.5": resolution: { @@ -889,6 +802,15 @@ packages: cpu: [arm] os: [linux] + "@esbuild/linux-arm@0.24.0": + resolution: + { + integrity: sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==, + } + engines: { node: ">=18" } + cpu: [arm] + os: [linux] + "@esbuild/linux-ia32@0.21.5": resolution: { @@ -898,6 +820,15 @@ packages: cpu: [ia32] os: [linux] + "@esbuild/linux-ia32@0.24.0": + resolution: + { + integrity: sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==, + } + engines: { node: ">=18" } + cpu: [ia32] + os: [linux] + "@esbuild/linux-loong64@0.21.5": resolution: { @@ -907,6 +838,15 @@ packages: cpu: [loong64] os: [linux] + "@esbuild/linux-loong64@0.24.0": + resolution: + { + integrity: sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==, + } + engines: { node: ">=18" } + cpu: [loong64] + os: [linux] + "@esbuild/linux-mips64el@0.21.5": resolution: { @@ -916,6 +856,15 @@ packages: cpu: [mips64el] os: [linux] + "@esbuild/linux-mips64el@0.24.0": + resolution: + { + integrity: sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==, + } + engines: { node: ">=18" } + cpu: [mips64el] + os: [linux] + "@esbuild/linux-ppc64@0.21.5": resolution: { @@ -925,6 +874,15 @@ packages: cpu: [ppc64] os: [linux] + "@esbuild/linux-ppc64@0.24.0": + resolution: + { + integrity: sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==, + } + engines: { node: ">=18" } + cpu: [ppc64] + os: [linux] + "@esbuild/linux-riscv64@0.21.5": resolution: { @@ -934,6 +892,15 @@ packages: cpu: [riscv64] os: [linux] + "@esbuild/linux-riscv64@0.24.0": + resolution: + { + integrity: sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==, + } + engines: { node: ">=18" } + cpu: [riscv64] + os: [linux] + "@esbuild/linux-s390x@0.21.5": resolution: { @@ -943,6 +910,15 @@ packages: cpu: [s390x] os: [linux] + "@esbuild/linux-s390x@0.24.0": + resolution: + { + integrity: sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==, + } + engines: { node: ">=18" } + cpu: [s390x] + os: [linux] + "@esbuild/linux-x64@0.21.5": resolution: { @@ -952,6 +928,15 @@ packages: cpu: [x64] os: [linux] + "@esbuild/linux-x64@0.24.0": + resolution: + { + integrity: sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [linux] + "@esbuild/netbsd-x64@0.21.5": resolution: { @@ -961,6 +946,24 @@ packages: cpu: [x64] os: [netbsd] + "@esbuild/netbsd-x64@0.24.0": + resolution: + { + integrity: sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [netbsd] + + "@esbuild/openbsd-arm64@0.24.0": + resolution: + { + integrity: sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [openbsd] + "@esbuild/openbsd-x64@0.21.5": resolution: { @@ -970,6 +973,15 @@ packages: cpu: [x64] os: [openbsd] + "@esbuild/openbsd-x64@0.24.0": + resolution: + { + integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [openbsd] + "@esbuild/sunos-x64@0.21.5": resolution: { @@ -979,6 +991,15 @@ packages: cpu: [x64] os: [sunos] + "@esbuild/sunos-x64@0.24.0": + resolution: + { + integrity: sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [sunos] + "@esbuild/win32-arm64@0.21.5": resolution: { @@ -988,6 +1009,15 @@ packages: cpu: [arm64] os: [win32] + "@esbuild/win32-arm64@0.24.0": + resolution: + { + integrity: sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==, + } + engines: { node: ">=18" } + cpu: [arm64] + os: [win32] + "@esbuild/win32-ia32@0.21.5": resolution: { @@ -997,6 +1027,15 @@ packages: cpu: [ia32] os: [win32] + "@esbuild/win32-ia32@0.24.0": + resolution: + { + integrity: sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==, + } + engines: { node: ">=18" } + cpu: [ia32] + os: [win32] + "@esbuild/win32-x64@0.21.5": resolution: { @@ -1006,28 +1045,37 @@ packages: cpu: [x64] os: [win32] - "@expressive-code/core@0.35.6": + "@esbuild/win32-x64@0.24.0": resolution: { - integrity: sha512-xGqCkmfkgT7lr/rvmfnYdDSeTdCSp1otAHgoFS6wNEeO7wGDPpxdosVqYiIcQ8CfWUABh/pGqWG90q+MV3824A==, + integrity: sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==, + } + engines: { node: ">=18" } + cpu: [x64] + os: [win32] + + "@expressive-code/core@0.38.3": + resolution: + { + integrity: sha512-s0/OtdRpBONwcn23O8nVwDNQqpBGKscysejkeBkwlIeHRLZWgiTVrusT5Idrdz1d8cW5wRk9iGsAIQmwDPXgJg==, } - "@expressive-code/plugin-frames@0.35.6": + "@expressive-code/plugin-frames@0.38.3": resolution: { - integrity: sha512-CqjSWjDJ3wabMJZfL9ZAzH5UAGKg7KWsf1TBzr4xvUbZvWoBtLA/TboBML0U1Ls8h/4TRCIvR4VEb8dv5+QG3w==, + integrity: sha512-qL2oC6FplmHNQfZ8ZkTR64/wKo9x0c8uP2WDftR/ydwN/yhe1ed7ZWYb8r3dezxsls+tDokCnN4zYR594jbpvg==, } - "@expressive-code/plugin-shiki@0.35.6": + "@expressive-code/plugin-shiki@0.38.3": resolution: { - integrity: sha512-xm+hzi9BsmhkDUGuyAWIydOAWer7Cs9cj8FM0t4HXaQ+qCubprT6wJZSKUxuvFJIUsIOqk1xXFaJzGJGnWtKMg==, + integrity: sha512-kqHnglZeesqG3UKrb6e9Fq5W36AZ05Y9tCREmSN2lw8LVTqENIeCIkLDdWtQ5VoHlKqwUEQFTVlRehdwoY7Gmw==, } - "@expressive-code/plugin-text-markers@0.35.6": + "@expressive-code/plugin-text-markers@0.38.3": resolution: { - integrity: sha512-/k9eWVZSCs+uEKHR++22Uu6eIbHWEciVHbIuD8frT8DlqTtHYaaiwHPncO6KFWnGDz5i/gL7oyl6XmOi/E6GVg==, + integrity: sha512-dPK3+BVGTbTmGQGU3Fkj3jZ3OltWUAlxetMHI6limUGCWBCucZiwoZeFM/WmqQa71GyKRzhBT+iEov6kkz2xVA==, } "@fontsource/inter@5.1.0": @@ -1204,6 +1252,13 @@ packages: cpu: [x64] os: [win32] + "@isaacs/cliui@8.0.2": + resolution: + { + integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==, + } + engines: { node: ">=12" } + "@jridgewell/gen-mapping@0.3.5": resolution: { @@ -1225,12 +1280,6 @@ packages: } engines: { node: ">=6.0.0" } - "@jridgewell/sourcemap-codec@1.4.15": - resolution: - { - integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==, - } - "@jridgewell/sourcemap-codec@1.5.0": resolution: { @@ -1243,10 +1292,10 @@ packages: integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==, } - "@mdx-js/mdx@3.0.1": + "@mdx-js/mdx@3.1.0": resolution: { - integrity: sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==, + integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==, } "@nodelib/fs.scandir@2.1.5": @@ -1322,10 +1371,150 @@ packages: cpu: [x64] os: [win32] - "@rollup/pluginutils@5.1.2": + "@parcel/watcher-android-arm64@2.5.0": resolution: { - integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==, + integrity: sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==, + } + engines: { node: ">= 10.0.0" } + cpu: [arm64] + os: [android] + + "@parcel/watcher-darwin-arm64@2.5.0": + resolution: + { + integrity: sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==, + } + engines: { node: ">= 10.0.0" } + cpu: [arm64] + os: [darwin] + + "@parcel/watcher-darwin-x64@2.5.0": + resolution: + { + integrity: sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==, + } + engines: { node: ">= 10.0.0" } + cpu: [x64] + os: [darwin] + + "@parcel/watcher-freebsd-x64@2.5.0": + resolution: + { + integrity: sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==, + } + engines: { node: ">= 10.0.0" } + cpu: [x64] + os: [freebsd] + + "@parcel/watcher-linux-arm-glibc@2.5.0": + resolution: + { + integrity: sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==, + } + engines: { node: ">= 10.0.0" } + cpu: [arm] + os: [linux] + + "@parcel/watcher-linux-arm-musl@2.5.0": + resolution: + { + integrity: sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==, + } + engines: { node: ">= 10.0.0" } + cpu: [arm] + os: [linux] + + "@parcel/watcher-linux-arm64-glibc@2.5.0": + resolution: + { + integrity: sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==, + } + engines: { node: ">= 10.0.0" } + cpu: [arm64] + os: [linux] + + "@parcel/watcher-linux-arm64-musl@2.5.0": + resolution: + { + integrity: sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==, + } + engines: { node: ">= 10.0.0" } + cpu: [arm64] + os: [linux] + + "@parcel/watcher-linux-x64-glibc@2.5.0": + resolution: + { + integrity: sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==, + } + engines: { node: ">= 10.0.0" } + cpu: [x64] + os: [linux] + + "@parcel/watcher-linux-x64-musl@2.5.0": + resolution: + { + integrity: sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==, + } + engines: { node: ">= 10.0.0" } + cpu: [x64] + os: [linux] + + "@parcel/watcher-wasm@2.5.0": + resolution: + { + integrity: sha512-Z4ouuR8Pfggk1EYYbTaIoxc+Yv4o7cGQnH0Xy8+pQ+HbiW+ZnwhcD2LPf/prfq1nIWpAxjOkQ8uSMFWMtBLiVQ==, + } + engines: { node: ">= 10.0.0" } + bundledDependencies: + - napi-wasm + + "@parcel/watcher-win32-arm64@2.5.0": + resolution: + { + integrity: sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==, + } + engines: { node: ">= 10.0.0" } + cpu: [arm64] + os: [win32] + + "@parcel/watcher-win32-ia32@2.5.0": + resolution: + { + integrity: sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==, + } + engines: { node: ">= 10.0.0" } + cpu: [ia32] + os: [win32] + + "@parcel/watcher-win32-x64@2.5.0": + resolution: + { + integrity: sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw==, + } + engines: { node: ">= 10.0.0" } + cpu: [x64] + os: [win32] + + "@parcel/watcher@2.5.0": + resolution: + { + integrity: sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==, + } + engines: { node: ">= 10.0.0" } + + "@pkgjs/parseargs@0.11.0": + resolution: + { + integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==, + } + engines: { node: ">=14" } + + "@rollup/pluginutils@5.1.4": + resolution: + { + integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==, } engines: { node: ">=14.0.0" } peerDependencies: @@ -1334,168 +1523,186 @@ packages: rollup: optional: true - "@rollup/rollup-android-arm-eabi@4.22.5": + "@rollup/rollup-android-arm-eabi@4.28.1": resolution: { - integrity: sha512-SU5cvamg0Eyu/F+kLeMXS7GoahL+OoizlclVFX3l5Ql6yNlywJJ0OuqTzUx0v+aHhPHEB/56CT06GQrRrGNYww==, + integrity: sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==, } cpu: [arm] os: [android] - "@rollup/rollup-android-arm64@4.22.5": + "@rollup/rollup-android-arm64@4.28.1": resolution: { - integrity: sha512-S4pit5BP6E5R5C8S6tgU/drvgjtYW76FBuG6+ibG3tMvlD1h9LHVF9KmlmaUBQ8Obou7hEyS+0w+IR/VtxwNMQ==, + integrity: sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==, } cpu: [arm64] os: [android] - "@rollup/rollup-darwin-arm64@4.22.5": + "@rollup/rollup-darwin-arm64@4.28.1": resolution: { - integrity: sha512-250ZGg4ipTL0TGvLlfACkIxS9+KLtIbn7BCZjsZj88zSg2Lvu3Xdw6dhAhfe/FjjXPVNCtcSp+WZjVsD3a/Zlw==, + integrity: sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==, } cpu: [arm64] os: [darwin] - "@rollup/rollup-darwin-x64@4.22.5": + "@rollup/rollup-darwin-x64@4.28.1": resolution: { - integrity: sha512-D8brJEFg5D+QxFcW6jYANu+Rr9SlKtTenmsX5hOSzNYVrK5oLAEMTUgKWYJP+wdKyCdeSwnapLsn+OVRFycuQg==, + integrity: sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==, } cpu: [x64] os: [darwin] - "@rollup/rollup-linux-arm-gnueabihf@4.22.5": + "@rollup/rollup-freebsd-arm64@4.28.1": resolution: { - integrity: sha512-PNqXYmdNFyWNg0ma5LdY8wP+eQfdvyaBAojAXgO7/gs0Q/6TQJVXAXe8gwW9URjbS0YAammur0fynYGiWsKlXw==, + integrity: sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==, + } + cpu: [arm64] + os: [freebsd] + + "@rollup/rollup-freebsd-x64@4.28.1": + resolution: + { + integrity: sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==, + } + cpu: [x64] + os: [freebsd] + + "@rollup/rollup-linux-arm-gnueabihf@4.28.1": + resolution: + { + integrity: sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==, } cpu: [arm] os: [linux] - "@rollup/rollup-linux-arm-musleabihf@4.22.5": + "@rollup/rollup-linux-arm-musleabihf@4.28.1": resolution: { - integrity: sha512-kSSCZOKz3HqlrEuwKd9TYv7vxPYD77vHSUvM2y0YaTGnFc8AdI5TTQRrM1yIp3tXCKrSL9A7JLoILjtad5t8pQ==, + integrity: sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==, } cpu: [arm] os: [linux] - "@rollup/rollup-linux-arm64-gnu@4.22.5": + "@rollup/rollup-linux-arm64-gnu@4.28.1": resolution: { - integrity: sha512-oTXQeJHRbOnwRnRffb6bmqmUugz0glXaPyspp4gbQOPVApdpRrY/j7KP3lr7M8kTfQTyrBUzFjj5EuHAhqH4/w==, + integrity: sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==, } cpu: [arm64] os: [linux] - "@rollup/rollup-linux-arm64-musl@4.22.5": + "@rollup/rollup-linux-arm64-musl@4.28.1": resolution: { - integrity: sha512-qnOTIIs6tIGFKCHdhYitgC2XQ2X25InIbZFor5wh+mALH84qnFHvc+vmWUpyX97B0hNvwNUL4B+MB8vJvH65Fw==, + integrity: sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==, } cpu: [arm64] os: [linux] - "@rollup/rollup-linux-powerpc64le-gnu@4.22.5": + "@rollup/rollup-linux-loongarch64-gnu@4.28.1": resolution: { - integrity: sha512-TMYu+DUdNlgBXING13rHSfUc3Ky5nLPbWs4bFnT+R6Vu3OvXkTkixvvBKk8uO4MT5Ab6lC3U7x8S8El2q5o56w==, + integrity: sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==, + } + cpu: [loong64] + os: [linux] + + "@rollup/rollup-linux-powerpc64le-gnu@4.28.1": + resolution: + { + integrity: sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==, } cpu: [ppc64] os: [linux] - "@rollup/rollup-linux-riscv64-gnu@4.22.5": + "@rollup/rollup-linux-riscv64-gnu@4.28.1": resolution: { - integrity: sha512-PTQq1Kz22ZRvuhr3uURH+U/Q/a0pbxJoICGSprNLAoBEkyD3Sh9qP5I0Asn0y0wejXQBbsVMRZRxlbGFD9OK4A==, + integrity: sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==, } cpu: [riscv64] os: [linux] - "@rollup/rollup-linux-s390x-gnu@4.22.5": + "@rollup/rollup-linux-s390x-gnu@4.28.1": resolution: { - integrity: sha512-bR5nCojtpuMss6TDEmf/jnBnzlo+6n1UhgwqUvRoe4VIotC7FG1IKkyJbwsT7JDsF2jxR+NTnuOwiGv0hLyDoQ==, + integrity: sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==, } cpu: [s390x] os: [linux] - "@rollup/rollup-linux-x64-gnu@4.22.5": + "@rollup/rollup-linux-x64-gnu@4.28.1": resolution: { - integrity: sha512-N0jPPhHjGShcB9/XXZQWuWBKZQnC1F36Ce3sDqWpujsGjDz/CQtOL9LgTrJ+rJC8MJeesMWrMWVLKKNR/tMOCA==, + integrity: sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==, } cpu: [x64] os: [linux] - "@rollup/rollup-linux-x64-musl@4.22.5": + "@rollup/rollup-linux-x64-musl@4.28.1": resolution: { - integrity: sha512-uBa2e28ohzNNwjr6Uxm4XyaA1M/8aTgfF2T7UIlElLaeXkgpmIJ2EitVNQxjO9xLLLy60YqAgKn/AqSpCUkE9g==, + integrity: sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==, } cpu: [x64] os: [linux] - "@rollup/rollup-win32-arm64-msvc@4.22.5": + "@rollup/rollup-win32-arm64-msvc@4.28.1": resolution: { - integrity: sha512-RXT8S1HP8AFN/Kr3tg4fuYrNxZ/pZf1HemC5Tsddc6HzgGnJm0+Lh5rAHJkDuW3StI0ynNXukidROMXYl6ew8w==, + integrity: sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==, } cpu: [arm64] os: [win32] - "@rollup/rollup-win32-ia32-msvc@4.22.5": + "@rollup/rollup-win32-ia32-msvc@4.28.1": resolution: { - integrity: sha512-ElTYOh50InL8kzyUD6XsnPit7jYCKrphmddKAe1/Ytt74apOxDq5YEcbsiKs0fR3vff3jEneMM+3I7jbqaMyBg==, + integrity: sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==, } cpu: [ia32] os: [win32] - "@rollup/rollup-win32-x64-msvc@4.22.5": + "@rollup/rollup-win32-x64-msvc@4.28.1": resolution: { - integrity: sha512-+lvL/4mQxSV8MukpkKyyvfwhH266COcWlXE/1qxwN08ajovta3459zrjLghYMgDerlzNwLAcFpvU+WWE5y6nAQ==, + integrity: sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==, } cpu: [x64] os: [win32] - "@shikijs/core@1.20.0": + "@shikijs/core@1.24.3": resolution: { - integrity: sha512-KlO3iE0THzSdYkzDFugt8SHe6FR3qNYTkmpbdW1d6xo8juQkMjybxAw/cBi2npL2eb2F4PbbnSs5Z9tDusfvyg==, + integrity: sha512-VRcf4GYUIkxIchGM9DrapRcxtgojg4IWKUtX5EtW+4PJiGzF2xQqZSv27PJt+WLc18KT3CNLpNWow9JYV5n+Rg==, } - "@shikijs/core@1.6.3": + "@shikijs/engine-javascript@1.24.3": resolution: { - integrity: sha512-QnJKHFUW95GnlJLJGP6QLx4M69HM0KlXk+R2Y8lr/x4nAx1Yb/lsuxq4XwybuUjTxbJk+BT0g/kvn0bcsjGGHg==, + integrity: sha512-De8tNLvYjeK6V0Gb47jIH2M+OKkw+lWnSV1j3HVDFMlNIglmVcTMG2fASc29W0zuFbfEEwKjO8Fe4KYSO6Ce3w==, } - "@shikijs/engine-javascript@1.20.0": + "@shikijs/engine-oniguruma@1.24.3": resolution: { - integrity: sha512-ZUMo758uduM0Tfgzi/kd+0IKMbNdumCxxWjY36uf1DIs2Qyg9HIq3vA1Wfa/vc6HE7tHWFpANRi3mv7UzJ68MQ==, + integrity: sha512-iNnx950gs/5Nk+zrp1LuF+S+L7SKEhn8k9eXgFYPGhVshKppsYwRmW8tpmAMvILIMSDfrgqZ0w+3xWVQB//1Xw==, } - "@shikijs/engine-oniguruma@1.20.0": + "@shikijs/types@1.24.3": resolution: { - integrity: sha512-MQ40WkVTZk7by33ces4PGK6XNFSo6PYvKTSAr2kTWdRNhFmOcnaX+1XzvFwB26eySXR7U74t91czZ1qJkEgxTA==, + integrity: sha512-FPMrJ69MNxhRtldRk69CghvaGlbbN3pKRuvko0zvbfa2dXp4pAngByToqS5OY5jvN8D7LKR4RJE8UvzlCOuViw==, } - "@shikijs/types@1.20.0": + "@shikijs/vscode-textmate@9.3.1": resolution: { - integrity: sha512-y+EaDvU2K6/GaXOKXxJaGnr1XtmZMF7MfS0pSEDdxEq66gCtKsLwQvVwoQFdp7R7dLlNAro3ijEE19sMZ0pzqg==, - } - - "@shikijs/vscode-textmate@9.2.2": - resolution: - { - integrity: sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg==, + integrity: sha512-79QfK1393x9Ho60QFyLti+QfdJzRQCVLFb97kOIV7Eo9vQU/roINgk7m24uv0a7AUvN//RDH36FLjjK48v0s9g==, } "@trysound/sax@0.2.0": @@ -1511,30 +1718,6 @@ packages: integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==, } - "@types/babel__core@7.20.5": - resolution: - { - integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==, - } - - "@types/babel__generator@7.6.7": - resolution: - { - integrity: sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==, - } - - "@types/babel__template@7.4.4": - resolution: - { - integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==, - } - - "@types/babel__traverse@7.20.4": - resolution: - { - integrity: sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==, - } - "@types/cookie@0.6.0": resolution: { @@ -1553,34 +1736,22 @@ packages: integrity: sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==, } - "@types/estree@1.0.5": - resolution: - { - integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==, - } - "@types/estree@1.0.6": resolution: { integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==, } - "@types/hast@3.0.3": - resolution: - { - integrity: sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==, - } - "@types/hast@3.0.4": resolution: { integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==, } - "@types/mdast@4.0.3": + "@types/js-yaml@4.0.9": resolution: { - integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==, + integrity: sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==, } "@types/mdast@4.0.4": @@ -1637,42 +1808,42 @@ packages: integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==, } - "@volar/kit@2.4.5": + "@volar/kit@2.4.11": resolution: { - integrity: sha512-ZzyErW5UiDfiIuJ/lpqc2Kx5PHDGDZ/bPlPJYpRcxlrn8Z8aDhRlsLHkNKcNiH65TmNahk2kbLaiejiqu6BD3A==, + integrity: sha512-ups5RKbMzMCr6RKafcCqDRnJhJDNWqo2vfekwOAj6psZ15v5TlcQFQAyokQJ3wZxVkzxrQM+TqTRDENfQEXpmA==, } peerDependencies: typescript: "*" - "@volar/language-core@2.4.5": + "@volar/language-core@2.4.11": resolution: { - integrity: sha512-F4tA0DCO5Q1F5mScHmca0umsi2ufKULAnMOVBfMsZdT4myhVl4WdKRwCaKcfOkIEuyrAVvtq1ESBdZ+rSyLVww==, + integrity: sha512-lN2C1+ByfW9/JRPpqScuZt/4OrUUse57GLI6TbLgTIqBVemdl1wNcZ1qYGEo2+Gw8coYLgCy7SuKqn6IrQcQgg==, } - "@volar/language-server@2.4.5": + "@volar/language-server@2.4.11": resolution: { - integrity: sha512-l5PswE0JzCtstTlwBUpikeSa3lNUBJhTuWtj9KclZTGi2Uex4RcqGOhTiDsUUtvdv/hEuYCxGq1EdJJPlQsD/g==, + integrity: sha512-W9P8glH1M8LGREJ7yHRCANI5vOvTrRO15EMLdmh5WNF9sZYSEbQxiHKckZhvGIkbeR1WAlTl3ORTrJXUghjk7g==, } - "@volar/language-service@2.4.5": + "@volar/language-service@2.4.11": resolution: { - integrity: sha512-xiFlL0aViGg6JhwAXyohPrdlID13uom8WQg6DWYaV8ob8RRy+zoLlBUI8SpQctwlWEO9poyrYK01revijAwkcw==, + integrity: sha512-KIb6g8gjUkS2LzAJ9bJCLIjfsJjeRtmXlu7b2pDFGD3fNqdbC53cCAKzgWDs64xtQVKYBU13DLWbtSNFtGuMLQ==, } - "@volar/source-map@2.4.5": + "@volar/source-map@2.4.11": resolution: { - integrity: sha512-varwD7RaKE2J/Z+Zu6j3mNNJbNT394qIxXwdvz/4ao/vxOfyClZpSDtLKkwWmecinkOVos5+PWkWraelfMLfpw==, + integrity: sha512-ZQpmafIGvaZMn/8iuvCFGrW3smeqkq/IIh9F1SdSx9aUl0J4Iurzd6/FhmjNO5g2ejF3rT45dKskgXWiofqlZQ==, } - "@volar/typescript@2.4.5": + "@volar/typescript@2.4.11": resolution: { - integrity: sha512-mcT1mHvLljAEtHviVcBuOyAwwMKz1ibXTi5uYtP/pf4XxoAzpdkQ+Br2IC0NPCvLCbjPZmbf3I0udndkfB1CDg==, + integrity: sha512-2DT+Tdh88Spp5PyPbqhyoYavYCPDsqbHLFwcUI9K1NlY1YgUJvujGdrqUp0zWxnW7KWNTr3xSpMuv2WnaTKDAw==, } "@vscode/emmet-helper@2.9.3": @@ -1695,10 +1866,10 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.12.1: + acorn@8.14.0: resolution: { - integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==, + integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==, } engines: { node: ">=0.4.0" } hasBin: true @@ -1729,13 +1900,6 @@ packages: } engines: { node: ">=12" } - ansi-styles@3.2.1: - resolution: - { - integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, - } - engines: { node: ">=4" } - ansi-styles@4.3.0: resolution: { @@ -1781,11 +1945,12 @@ packages: integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, } - aria-query@5.3.0: + aria-query@5.3.2: resolution: { - integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==, + integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==, } + engines: { node: ">= 0.4" } array-iterate@2.0.1: resolution: @@ -1800,21 +1965,21 @@ packages: } hasBin: true - astro-expressive-code@0.35.6: + astro-expressive-code@0.38.3: resolution: { - integrity: sha512-1U4KrvFuodaCV3z4I1bIR16SdhQlPkolGsYTtiANxPZUVv/KitGSCTjzksrkPonn1XuwVqvnwmUUVzTLWngnBA==, + integrity: sha512-Tvdc7RV0G92BbtyEOsfJtXU35w41CkM94fOAzxbQP67Wj5jArfserJ321FO4XA7WG9QMV0GIBmQq77NBIRDzpQ==, } peerDependencies: - astro: ^4.0.0-beta || ^3.3.0 + astro: ^4.0.0-beta || ^5.0.0-beta || ^3.3.0 - astro@4.15.9: + astro@5.1.0: resolution: { - integrity: sha512-51oXq9qrZ5OPWYmEXt1kGrvWmVeWsx28SgBTzi2XW6iwcnW/wC5ONm6ol6qBGSCF93tQvZplXvuzpaw1injECA==, + integrity: sha512-g/cqwGK84Ozp5jyW45c3+2KQ4BeJtigbfwO8EA3lr7AC+XjE6/5dMvX4/bBaWf3gJVghd0L6cdqwlWikq+/Rrw==, } engines: - { node: ^18.17.1 || ^20.3.0 || >=21.0.0, npm: ">=9.6.5", pnpm: ">=7.1.0" } + { node: ^18.17.1 || ^20.3.0 || >=22.0.0, npm: ">=9.6.5", pnpm: ">=7.1.0" } hasBin: true autoprefixer@10.4.20: @@ -1877,26 +2042,19 @@ packages: integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==, } - boxen@7.1.1: + boxen@8.0.1: resolution: { - integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==, + integrity: sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==, } - engines: { node: ">=14.16" } + engines: { node: ">=18" } - brace-expansion@1.1.11: + brace-expansion@2.0.1: resolution: { - integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, + integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, } - braces@3.0.2: - resolution: - { - integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, - } - engines: { node: ">=8" } - braces@3.0.3: resolution: { @@ -1919,12 +2077,12 @@ packages: } engines: { node: ">= 6" } - camelcase@7.0.1: + camelcase@8.0.0: resolution: { - integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==, + integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==, } - engines: { node: ">=14.16" } + engines: { node: ">=16" } caniuse-api@3.0.0: resolution: @@ -1950,13 +2108,6 @@ packages: integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==, } - chalk@2.4.2: - resolution: - { - integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, - } - engines: { node: ">=4" } - chalk@5.3.0: resolution: { @@ -1995,13 +2146,26 @@ packages: } engines: { node: ">= 8.10.0" } - ci-info@4.0.0: + chokidar@4.0.3: resolution: { - integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==, + integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==, + } + engines: { node: ">= 14.16.0" } + + ci-info@4.1.0: + resolution: + { + integrity: sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==, } engines: { node: ">=8" } + citty@0.1.6: + resolution: + { + integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==, + } + cli-boxes@3.0.0: resolution: { @@ -2009,20 +2173,13 @@ packages: } engines: { node: ">=10" } - cli-cursor@5.0.0: + clipboardy@4.0.0: resolution: { - integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==, + integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==, } engines: { node: ">=18" } - cli-spinners@2.9.2: - resolution: - { - integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==, - } - engines: { node: ">=6" } - cliui@8.0.1: resolution: { @@ -2043,12 +2200,6 @@ packages: integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==, } - color-convert@1.9.3: - resolution: - { - integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, - } - color-convert@2.0.1: resolution: { @@ -2056,12 +2207,6 @@ packages: } engines: { node: ">=7.0.0" } - color-name@1.1.3: - resolution: - { - integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, - } - color-name@1.1.4: resolution: { @@ -2113,29 +2258,49 @@ packages: integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==, } - concat-map@0.0.1: + confbox@0.1.8: resolution: { - integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, + integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==, } - convert-source-map@2.0.0: + consola@3.2.3: resolution: { - integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==, + integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==, + } + engines: { node: ^14.18.0 || >=16.10.0 } + + cookie-es@1.2.2: + resolution: + { + integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==, } - cookie@0.6.0: + cookie@0.7.2: resolution: { - integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==, + integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==, } engines: { node: ">= 0.6" } - css-blank-pseudo@7.0.0: + cross-spawn@7.0.6: resolution: { - integrity: sha512-v9xXYGdm6LIn4iHEfu3egk/PM1g/yJr8uwTIj6E44kurv5dE/4y3QW7WdVmZ0PVnqfTuK+C0ClZcEEiaKWBL9Q==, + integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==, + } + engines: { node: ">= 8" } + + crossws@0.3.1: + resolution: + { + integrity: sha512-HsZgeVYaG+b5zA+9PbIPGq4+J/CJynJuearykPsXx4V/eMhyQ5EDVg3Ak2FBZtVXCiOLu/U7IiwDHTr9MA+IKw==, + } + + css-blank-pseudo@7.0.1: + resolution: + { + integrity: sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==, } engines: { node: ">=18" } peerDependencies: @@ -2150,10 +2315,10 @@ packages: peerDependencies: postcss: ^8.0.9 - css-has-pseudo@7.0.0: + css-has-pseudo@7.0.2: resolution: { - integrity: sha512-vO6k9bBt4/eEZ2PeHmS2VXjJga5SBy6O1ESyaOkse5/lvp6piFqg8Sh5KTU7X33M7Uh/oqo+M3EeMktQrZoTCQ==, + integrity: sha512-nzol/h+E0bId46Kn2dQH5VElaknX2Sr0hFuB/1EomdC7j+OISt2ZzK7EHX9DZDY53WbIVAR7FYKSO2XnSf07MQ==, } engines: { node: ">=18" } peerDependencies: @@ -2201,10 +2366,10 @@ packages: } engines: { node: ">= 6" } - cssdb@8.1.1: + cssdb@8.2.3: resolution: { - integrity: sha512-kRbSRgZoxtZNl5snb3nOzBkFOt5AwnephcUTIEFc2DebKG9PN50/cHarlwOooTxYQ/gxsnKs3BxykhNLmfvyLg==, + integrity: sha512-9BDG5XmJrJQQnJ51VFxXCAtpZ5ebDlAREmO8sxMOVU0aSxN/gocbctjIG5LMh3WBUq+xTlb/jw2LoljBEqraTA==, } cssesc@3.0.0: @@ -2249,18 +2414,6 @@ packages: } engines: { node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: ">=7.0.0" } - debug@4.3.4: - resolution: - { - integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, - } - engines: { node: ">=6.0" } - peerDependencies: - supports-color: "*" - peerDependenciesMeta: - supports-color: - optional: true - debug@4.3.7: resolution: { @@ -2279,6 +2432,12 @@ packages: integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==, } + defu@6.1.4: + resolution: + { + integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==, + } + dequal@2.0.3: resolution: { @@ -2286,6 +2445,20 @@ packages: } engines: { node: ">=6" } + destr@2.0.3: + resolution: + { + integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==, + } + + detect-libc@1.0.3: + resolution: + { + integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==, + } + engines: { node: ">=0.10" } + hasBin: true + detect-libc@2.0.3: resolution: { @@ -2300,10 +2473,10 @@ packages: } engines: { node: ">=18" } - devalue@5.0.0: + devalue@5.1.1: resolution: { - integrity: sha512-gO+/OMXF7488D+u3ue+G7Y4AA3ZmUnB3eHJXmBTgNHvr4ZNzl36A0ZtG+XCRNYCkYx/bFmw4qtkoFLa+wSrwAA==, + integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==, } devlop@1.1.0: @@ -2363,10 +2536,10 @@ packages: integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==, } - dset@3.1.3: + dset@3.1.4: resolution: { - integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==, + integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==, } engines: { node: ">=4" } @@ -2388,6 +2561,12 @@ packages: integrity: sha512-dJfbdY/hfeTyf/Ef7Y7ubLYzkBvPQ912wPaeVYpAxvFxkEBf/+hJu4H6vhAvFN6HlxqedlfVn2x1S44FfQ97pg==, } + emoji-regex-xs@1.0.0: + resolution: + { + integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==, + } + emoji-regex@10.3.0: resolution: { @@ -2419,6 +2598,18 @@ packages: integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==, } + esast-util-from-estree@2.0.0: + resolution: + { + integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==, + } + + esast-util-from-js@2.0.1: + resolution: + { + integrity: sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==, + } + esbuild@0.21.5: resolution: { @@ -2427,12 +2618,13 @@ packages: engines: { node: ">=12" } hasBin: true - escalade@3.1.1: + esbuild@0.24.0: resolution: { - integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==, + integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==, } - engines: { node: ">=6" } + engines: { node: ">=18" } + hasBin: true escalade@3.2.0: resolution: @@ -2441,13 +2633,6 @@ packages: } engines: { node: ">=6" } - escape-string-regexp@1.0.5: - resolution: - { - integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, - } - engines: { node: ">=0.8.0" } - escape-string-regexp@5.0.0: resolution: { @@ -2481,6 +2666,12 @@ packages: integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==, } + estree-util-scope@1.0.0: + resolution: + { + integrity: sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==, + } + estree-util-to-js@2.0.0: resolution: { @@ -2511,18 +2702,18 @@ packages: integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==, } - expressive-code@0.35.6: + execa@8.0.1: resolution: { - integrity: sha512-+mx+TPTbMqgo0mL92Xh9QgjW0kSQIsEivMgEcOnaqKqL7qCw8Vkqc5Rg/di7ZYw4aMUSr74VTc+w8GQWu05j1g==, + integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==, } + engines: { node: ">=16.17" } - extend-shallow@2.0.1: + expressive-code@0.38.3: resolution: { - integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==, + integrity: sha512-COM04AiUotHCKJgWdn7NtW2lqu8OW8owAidMpkXt1qxrZ9Q2iC7+tok/1qIn2ocGnczvr9paIySgGnEwFeEQ8Q==, } - engines: { node: ">=0.10.0" } extend@3.0.2: resolution: @@ -2549,25 +2740,12 @@ packages: integrity: sha512-GR6f0hD7XXyNJa25Tb9BuIdN0tdr+0BMi6/CJPH3wJO1JjNG3n/VsSw38AwRdKZABm8lGbPfakLRkYzx2V9row==, } - fastq@1.15.0: - resolution: - { - integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, - } - fastq@1.17.1: resolution: { integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==, } - fill-range@7.0.1: - resolution: - { - integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, - } - engines: { node: ">=8" } - fill-range@7.1.1: resolution: { @@ -2602,18 +2780,19 @@ packages: } engines: { node: ">=8" } + foreground-child@3.3.0: + resolution: + { + integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==, + } + engines: { node: ">=14" } + fraction.js@4.3.7: resolution: { integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==, } - fs.realpath@1.0.0: - resolution: - { - integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, - } - fsevents@2.3.3: resolution: { @@ -2628,13 +2807,6 @@ packages: integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, } - gensync@1.0.0-beta.2: - resolution: - { - integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, - } - engines: { node: ">=6.9.0" } - get-caller-file@2.0.5: resolution: { @@ -2649,6 +2821,19 @@ packages: } engines: { node: ">=18" } + get-port-please@3.1.2: + resolution: + { + integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==, + } + + get-stream@8.0.1: + resolution: + { + integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==, + } + engines: { node: ">=16" } + github-slugger@2.0.0: resolution: { @@ -2669,19 +2854,12 @@ packages: } engines: { node: ">=10.13.0" } - glob@7.1.6: + glob@10.4.5: resolution: { - integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==, + integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==, } - deprecated: Glob versions prior to v9 are no longer supported - - globals@11.12.0: - resolution: - { - integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==, - } - engines: { node: ">=4" } + hasBin: true graceful-fs@4.2.11: resolution: @@ -2689,19 +2867,11 @@ packages: integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, } - gray-matter@4.0.3: + h3@1.13.0: resolution: { - integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==, + integrity: sha512-vFEAu/yf8UMUcB4s43OaDaigcqpQd14yanmOsn+NcRX3/guSKncyE2rOYhq8RIchgJrPSs/QiIddnTTR1ddiAg==, } - engines: { node: ">=6.0" } - - has-flag@3.0.0: - resolution: - { - integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, - } - engines: { node: ">=4" } hasown@2.0.0: resolution: @@ -2722,6 +2892,12 @@ packages: integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==, } + hast-util-from-html@2.0.3: + resolution: + { + integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==, + } + hast-util-from-parse5@8.0.1: resolution: { @@ -2776,18 +2952,18 @@ packages: integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==, } - hast-util-to-html@9.0.1: - resolution: - { - integrity: sha512-hZOofyZANbyWo+9RP75xIDV/gq+OUKx+T46IlwERnKmfpwp81XBFbT9mi26ws+SJchA4RVUQwIBJpqEOBhMzEQ==, - } - hast-util-to-html@9.0.3: resolution: { integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==, } + hast-util-to-html@9.0.4: + resolution: + { + integrity: sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==, + } + hast-util-to-jsx-runtime@2.3.0: resolution: { @@ -2854,6 +3030,20 @@ packages: integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==, } + http-shutdown@1.2.2: + resolution: + { + integrity: sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==, + } + engines: { iojs: ">= 1.0.0", node: ">= 0.12.0" } + + human-signals@5.0.0: + resolution: + { + integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==, + } + engines: { node: ">=16.17.0" } + i18next@23.15.1: resolution: { @@ -2866,19 +3056,6 @@ packages: integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==, } - inflight@1.0.6: - resolution: - { - integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, - } - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. - - inherits@2.0.4: - resolution: - { - integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, - } - inline-style-parser@0.1.1: resolution: { @@ -2891,6 +3068,12 @@ packages: integrity: sha512-EcKzdTHVe8wFVOGEYXiW9WmJXPjqi1T+234YpJr98RiFYKHV3cdy1+3mkTE+KHTHxFFLH51SfaGOoUdW+v7ViQ==, } + iron-webcrypto@1.2.1: + resolution: + { + integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==, + } + is-alphabetical@2.0.1: resolution: { @@ -2936,13 +3119,6 @@ packages: engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } hasBin: true - is-extendable@0.1.1: - resolution: - { - integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==, - } - engines: { node: ">=0.10.0" } - is-extglob@2.1.1: resolution: { @@ -2978,13 +3154,6 @@ packages: engines: { node: ">=14.16" } hasBin: true - is-interactive@2.0.0: - resolution: - { - integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==, - } - engines: { node: ">=12" } - is-number@7.0.0: resolution: { @@ -2999,25 +3168,12 @@ packages: } engines: { node: ">=12" } - is-reference@3.0.2: + is-stream@3.0.0: resolution: { - integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==, + integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==, } - - is-unicode-supported@1.3.0: - resolution: - { - integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==, - } - engines: { node: ">=12" } - - is-unicode-supported@2.0.0: - resolution: - { - integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==, - } - engines: { node: ">=18" } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } is-wsl@3.1.0: resolution: @@ -3026,18 +3182,38 @@ packages: } engines: { node: ">=16" } - jiti@1.21.0: + is64bit@2.0.0: resolution: { - integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==, + integrity: sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==, + } + engines: { node: ">=18" } + + isexe@2.0.0: + resolution: + { + integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, + } + + jackspeak@3.4.3: + resolution: + { + integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==, + } + + jiti@1.21.7: + resolution: + { + integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==, } hasBin: true - js-tokens@4.0.0: + jiti@2.4.2: resolution: { - integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, + integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==, } + hasBin: true js-yaml@3.14.1: resolution: @@ -3053,28 +3229,12 @@ packages: } hasBin: true - jsesc@2.5.2: - resolution: - { - integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==, - } - engines: { node: ">=4" } - hasBin: true - json-schema-traverse@1.0.0: resolution: { integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==, } - json5@2.2.3: - resolution: - { - integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==, - } - engines: { node: ">=6" } - hasBin: true - jsonc-parser@2.3.1: resolution: { @@ -3087,13 +3247,6 @@ packages: integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==, } - kind-of@6.0.3: - resolution: - { - integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==, - } - engines: { node: ">=0.10.0" } - kleur@3.0.3: resolution: { @@ -3108,20 +3261,6 @@ packages: } engines: { node: ">=6" } - lilconfig@2.1.0: - resolution: - { - integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==, - } - engines: { node: ">=10" } - - lilconfig@3.1.1: - resolution: - { - integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==, - } - engines: { node: ">=14" } - lilconfig@3.1.2: resolution: { @@ -3129,12 +3268,26 @@ packages: } engines: { node: ">=14" } + lilconfig@3.1.3: + resolution: + { + integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==, + } + engines: { node: ">=14" } + lines-and-columns@1.2.4: resolution: { integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==, } + listhen@1.9.0: + resolution: + { + integrity: sha512-I8oW2+QL5KJo8zXNWX046M134WchxsXC7SawLPvRQpogCbkyQIaFxPE89A2HiwR7vAK2Dm2ERBAmyjTYGYEpBg==, + } + hasBin: true + load-yaml-file@0.2.0: resolution: { @@ -3167,29 +3320,22 @@ packages: integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==, } - log-symbols@6.0.0: - resolution: - { - integrity: sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==, - } - engines: { node: ">=18" } - longest-streak@3.1.0: resolution: { integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==, } - lru-cache@5.1.1: + lru-cache@10.4.3: resolution: { - integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==, + integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==, } - magic-string@0.30.11: + magic-string@0.30.17: resolution: { - integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==, + integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==, } magicast@0.3.5: @@ -3331,6 +3477,12 @@ packages: integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==, } + merge-stream@2.0.0: + resolution: + { + integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, + } + merge2@1.4.1: resolution: { @@ -3554,13 +3706,6 @@ packages: integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==, } - micromatch@4.0.5: - resolution: - { - integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, - } - engines: { node: ">=8.6" } - micromatch@4.0.8: resolution: { @@ -3568,17 +3713,39 @@ packages: } engines: { node: ">=8.6" } - mimic-function@5.0.1: + mime@3.0.0: resolution: { - integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==, + integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==, } - engines: { node: ">=18" } + engines: { node: ">=10.0.0" } + hasBin: true - minimatch@3.1.2: + mimic-fn@4.0.0: resolution: { - integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, + integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==, + } + engines: { node: ">=12" } + + minimatch@9.0.5: + resolution: + { + integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==, + } + engines: { node: ">=16 || 14 >=14.17" } + + minipass@7.1.2: + resolution: + { + integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==, + } + engines: { node: ">=16 || 14 >=14.17" } + + mlly@1.7.3: + resolution: + { + integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==, } mrmime@2.0.0: @@ -3588,12 +3755,6 @@ packages: } engines: { node: ">=10" } - ms@2.1.2: - resolution: - { - integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, - } - ms@2.1.3: resolution: { @@ -3633,6 +3794,25 @@ packages: integrity: sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==, } + node-addon-api@7.1.1: + resolution: + { + integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==, + } + + node-fetch-native@1.6.4: + resolution: + { + integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==, + } + + node-forge@1.3.1: + resolution: + { + integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==, + } + engines: { node: ">= 6.13.0" } + node-releases@2.0.18: resolution: { @@ -3659,6 +3839,13 @@ packages: integrity: sha512-5PDmaAsVfnWUgTUbJ3ERwn7u79Z0dYxN9ErxCpVJJqe2RK0PJ3z+iFUxuqjwtlDDegXvtWoxD/3Fzxox7tFGWA==, } + npm-run-path@5.3.0: + resolution: + { + integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==, + } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + nth-check@2.1.1: resolution: { @@ -3679,31 +3866,30 @@ packages: } engines: { node: ">= 6" } - once@1.4.0: + ofetch@1.4.1: resolution: { - integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, + integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==, } - onetime@7.0.0: + ohash@1.1.4: resolution: { - integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==, - } - engines: { node: ">=18" } - - oniguruma-to-js@0.4.3: - resolution: - { - integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==, + integrity: sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==, } - ora@8.1.0: + onetime@6.0.0: resolution: { - integrity: sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==, + integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==, + } + engines: { node: ">=12" } + + oniguruma-to-es@0.8.0: + resolution: + { + integrity: sha512-rY+/a6b+uCgoYIL9itjY0x99UUDHXmGaw7Jjk5ZvM/3cxDJifyxFr/Zm4tTmF6Tre18gAakJo7AzhKUeMNLgHA==, } - engines: { node: ">=18" } p-limit@2.3.0: resolution: @@ -3747,6 +3933,12 @@ packages: } engines: { node: ">=6" } + package-json-from-dist@1.0.1: + resolution: + { + integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==, + } + pagefind@1.0.4: resolution: { @@ -3785,12 +3977,19 @@ packages: } engines: { node: ">=8" } - path-is-absolute@1.0.1: + path-key@3.1.1: resolution: { - integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, + integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, } - engines: { node: ">=0.10.0" } + engines: { node: ">=8" } + + path-key@4.0.0: + resolution: + { + integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==, + } + engines: { node: ">=12" } path-parse@1.0.7: resolution: @@ -3798,10 +3997,17 @@ packages: integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, } - periscopic@3.1.0: + path-scurry@1.11.1: resolution: { - integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==, + integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==, + } + engines: { node: ">=16 || 14 >=14.18" } + + pathe@1.1.2: + resolution: + { + integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==, } picocolors@1.0.0: @@ -3816,6 +4022,12 @@ packages: integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==, } + picocolors@1.1.1: + resolution: + { + integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==, + } + picomatch@2.3.1: resolution: { @@ -3823,6 +4035,13 @@ packages: } engines: { node: ">=8.6" } + picomatch@4.0.2: + resolution: + { + integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==, + } + engines: { node: ">=12" } + pify@2.3.0: resolution: { @@ -3851,10 +4070,16 @@ packages: } engines: { node: ">=8" } - postcss-attribute-case-insensitive@7.0.0: + pkg-types@1.2.1: resolution: { - integrity: sha512-ETMUHIw67Kyv9Q81nden/NuJbRh+4/S963giXpfSLd5eaKK8kd1UdAHMVRV/NG/w/N6Cq8B0qZIZbZZWU/67+A==, + integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==, + } + + postcss-attribute-case-insensitive@7.0.1: + resolution: + { + integrity: sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw==, } engines: { node: ">=18" } peerDependencies: @@ -3878,10 +4103,10 @@ packages: peerDependencies: postcss: ^8.4.6 - postcss-color-functional-notation@7.0.2: + postcss-color-functional-notation@7.0.6: resolution: { - integrity: sha512-c2WkR0MS73s+P5SgY1KBaSEE61Rj+miW095rkWDnMQxbTCQkp6y/jft8U0QMxEsI4k1Pd4PdV+TP9/1zIDR6XQ==, + integrity: sha512-wLXvm8RmLs14Z2nVpB4CWlnvaWPRcOZFltJSlcbYwSJ1EDZKsKDhPKIMecCnuU054KSmlmubkqczmm6qBPCBhA==, } engines: { node: ">=18" } peerDependencies: @@ -3923,37 +4148,37 @@ packages: peerDependencies: postcss: ^8.4.31 - postcss-custom-media@11.0.1: + postcss-custom-media@11.0.5: resolution: { - integrity: sha512-vfBliYVgEEJUFXCRPQ7jYt1wlD322u+/5GT0tZqMVYFInkpDHfjhU3nk2quTRW4uFc/umOOqLlxvrEOZRvloMw==, + integrity: sha512-SQHhayVNgDvSAdX9NQ/ygcDQGEY+aSF4b/96z7QUX6mqL5yl/JgG/DywcF6fW9XbnCRE+aVYk+9/nqGuzOPWeQ==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - postcss-custom-properties@14.0.1: + postcss-custom-properties@14.0.4: resolution: { - integrity: sha512-SB4GjuZjIq5GQFNbxFrirQPbkdbJooyNy8bh+fcJ8ZG0oasJTflTTtR4geb56h+FBVDIb9Hx4v/NiG2caOj8nQ==, + integrity: sha512-QnW8FCCK6q+4ierwjnmXF9Y9KF8q0JkbgVfvQEMa93x1GT8FvOiUevWCN2YLaOWyByeDX8S6VFbZEeWoAoXs2A==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - postcss-custom-selectors@8.0.1: + postcss-custom-selectors@8.0.4: resolution: { - integrity: sha512-2McIpyhAeKhUzVqrP4ZyMBpK5FuD+Y9tpQwhcof49652s7gez8057cSaOg/epYcKlztSYxb0GHfi7W5h3JoGUg==, + integrity: sha512-ASOXqNvDCE0dAJ/5qixxPeL1aOVGHGW2JwSy7HyjWNbnWTQCl+fDc968HY1jCmZI0+BaYT5CxsOiUhavpG/7eg==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - postcss-dir-pseudo-class@9.0.0: + postcss-dir-pseudo-class@9.0.1: resolution: { - integrity: sha512-T59BG9lURiXmhcJMyKbyjNAK3KCyEQYEhaz9GAETHXfIy9XbGQeyz+H0zIwRJlrP4KKRPJolNYe3QjQPemMjBA==, + integrity: sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA==, } engines: { node: ">=18" } peerDependencies: @@ -4004,19 +4229,19 @@ packages: peerDependencies: postcss: ^8.4 - postcss-focus-visible@10.0.0: + postcss-focus-visible@10.0.1: resolution: { - integrity: sha512-GJjzvTj7JY+zN7wVBQ4osdKX53QLUdr6r2rSEkBUqrEMDKu3fHMHKOY9rirdirbHCx3IETnK25EtpPARR2KWNw==, + integrity: sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - postcss-focus-within@9.0.0: + postcss-focus-within@9.0.1: resolution: { - integrity: sha512-QwflAWUToNZvQLGbc4qJhrQO8yZ5617L6hSNzNWDoqRX4FoIh9fbJbEjy0nvFPciaaOoCaeqcxBwYPbFU0HvBw==, + integrity: sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw==, } engines: { node: ">=18" } peerDependencies: @@ -4066,10 +4291,10 @@ packages: peerDependencies: postcss: ^8.4.21 - postcss-lab-function@7.0.2: + postcss-lab-function@7.0.6: resolution: { - integrity: sha512-h4ARGLIBtC1PmCHsLgTWWj8j1i1CXoaht4A5RlITDX2z9AeFBak0YlY6sdF4oJGljrep+Dg2SSccIj4QnFbRDg==, + integrity: sha512-HPwvsoK7C949vBZ+eMyvH2cQeMr3UREoHvbtra76/UhDuiViZH6pir+z71UaJQohd7VDSVUdR6TkWYKExEc9aQ==, } engines: { node: ">=18" } peerDependencies: @@ -4162,10 +4387,19 @@ packages: peerDependencies: postcss: ^8.2.14 - postcss-nesting@13.0.0: + postcss-nested@6.2.0: resolution: { - integrity: sha512-TCGQOizyqvEkdeTPM+t6NYwJ3EJszYE/8t8ILxw/YoeUvz2rz7aM8XTAmBWh9/DJjfaaabL88fWrsVHSPF2zgA==, + integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==, + } + engines: { node: ">=12.0" } + peerDependencies: + postcss: ^8.2.14 + + postcss-nesting@13.0.1: + resolution: + { + integrity: sha512-VbqqHkOBOt4Uu3G8Dm8n6lU5+9cJFxiuty9+4rcoyRPO9zZS1JIs6td49VIoix3qYqELHlJIn46Oih9SAKo+yQ==, } engines: { node: ">=18" } peerDependencies: @@ -4296,19 +4530,19 @@ packages: peerDependencies: postcss: ^8.4 - postcss-preset-env@10.0.5: + postcss-preset-env@10.1.2: resolution: { - integrity: sha512-ipPOgr3RY0utgJDbNoCX2dxKoQ4e4WO1pC21QhDlxCAX8+qC8O2Ezkzb54fd+8XtZ1UveA5gLjBsVo6dJDoWIg==, + integrity: sha512-OqUBZ9ByVfngWhMNuBEMy52Izj07oIFA6K/EOGBlaSv+P12MiE1+S2cqXtS1VuW82demQ/Tzc7typYk3uHunkA==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - postcss-pseudo-class-any-link@10.0.0: + postcss-pseudo-class-any-link@10.0.1: resolution: { - integrity: sha512-bde8VE08Gq3ekKDq2BQ0ESOjNX54lrFDK3U9zABPINaqHblbZL/4Wfo5Y2vk6U64yVd/sjDwTzuiisFBpGNNIQ==, + integrity: sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==, } engines: { node: ">=18" } peerDependencies: @@ -4340,22 +4574,15 @@ packages: peerDependencies: postcss: ^8.0.3 - postcss-selector-not@8.0.0: + postcss-selector-not@8.0.1: resolution: { - integrity: sha512-g/juh7A83GWc3+kWL8BiS3YUIJb3XNqIVKz1kGvgN3OhoGCsPncy1qo/+q61tjy5r87OxBhSY1+hcH3yOhEW+g==, + integrity: sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==, } engines: { node: ">=18" } peerDependencies: postcss: ^8.4 - postcss-selector-parser@6.1.0: - resolution: - { - integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==, - } - engines: { node: ">=4" } - postcss-selector-parser@6.1.2: resolution: { @@ -4363,6 +4590,13 @@ packages: } engines: { node: ">=4" } + postcss-selector-parser@7.0.0: + resolution: + { + integrity: sha512-9RbEr1Y7FFfptd/1eEdntyjMwLeghW1bHX9GWjXo19vx4ytPQhANltvVxDggzJl7mnWM+dX28kb6cyS/4iQjlQ==, + } + engines: { node: ">=4" } + postcss-svgo@7.0.1: resolution: { @@ -4387,13 +4621,6 @@ packages: integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==, } - postcss@8.4.38: - resolution: - { - integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==, - } - engines: { node: ^10 || ^12 || >=14 } - postcss@8.4.47: resolution: { @@ -4401,6 +4628,13 @@ packages: } engines: { node: ^10 || ^12 || >=14 } + postcss@8.4.49: + resolution: + { + integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==, + } + engines: { node: ^10 || ^12 || >=14 } + preferred-pm@4.0.0: resolution: { @@ -4442,6 +4676,12 @@ packages: integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, } + radix3@1.1.2: + resolution: + { + integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==, + } + read-cache@1.0.0: resolution: { @@ -4455,22 +4695,65 @@ packages: } engines: { node: ">=8.10.0" } + readdirp@4.0.2: + resolution: + { + integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==, + } + engines: { node: ">= 14.16.0" } + + recma-build-jsx@1.0.0: + resolution: + { + integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==, + } + + recma-jsx@1.0.0: + resolution: + { + integrity: sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q==, + } + + recma-parse@1.0.0: + resolution: + { + integrity: sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==, + } + + recma-stringify@1.0.0: + resolution: + { + integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==, + } + regenerator-runtime@0.14.1: resolution: { integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==, } - regex@4.3.2: + regex-recursion@5.0.0: resolution: { - integrity: sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw==, + integrity: sha512-UwyOqeobrCCqTXPcsSqH4gDhOjD5cI/b8kjngWgSZbxYh5yVjAwTjO5+hAuPRNiuR70+5RlWSs+U9PVcVcW9Lw==, } - rehype-expressive-code@0.35.6: + regex-utilities@2.3.0: resolution: { - integrity: sha512-pPdE+pRcRw01kxMOwHQjuRxgwlblZt5+wAc3w2aPGgmcnn57wYjn07iKO7zaznDxYVxMYVvYlnL+R3vWFQS4Gw==, + integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==, + } + + regex@5.0.2: + resolution: + { + integrity: sha512-/pczGbKIQgfTMRV0XjABvc5RzLqQmwqxLHdQao2RTXPk+pmTXB2P0IaUHYdYyk412YLwUIkaeMd5T+RzVgTqnQ==, + } + + rehype-expressive-code@0.38.3: + resolution: + { + integrity: sha512-RYSSDkMBikoTbycZPkcWp6ELneANT4eTpND1DSRJ6nI2eVFUwTBDCvE2vO6jOOTaavwnPiydi4i/87NRyjpdOA==, } rehype-format@5.0.0: @@ -4497,18 +4780,36 @@ packages: integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==, } + rehype-recma@1.0.0: + resolution: + { + integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==, + } + rehype-stringify@10.0.0: resolution: { integrity: sha512-1TX1i048LooI9QoecrXy7nGFFbFSufxVRAfc6Y9YMRAi56l+oB0zP51mLSV312uRuvVLPV1opSlJmslozR1XHQ==, } + rehype-stringify@10.0.1: + resolution: + { + integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==, + } + rehype@13.0.1: resolution: { integrity: sha512-AcSLS2mItY+0fYu9xKxOu1LhUZeBZZBx8//5HKzF+0XP+eP8+6a5MXn2+DW2kfXR6Dtp1FEXMVrjyKAcvcU8vg==, } + rehype@13.0.2: + resolution: + { + integrity: sha512-j31mdaRFrwFRUIlxGeuPXXKWQxet52RBQRvCmzl5eCefn/KGbomK5GMHNMsOJf55fgo3qw5tST5neDuarDYR2A==, + } + remark-directive@3.0.0: resolution: { @@ -4539,6 +4840,12 @@ packages: integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==, } + remark-rehype@11.1.1: + resolution: + { + integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==, + } + remark-smartypants@3.0.2: resolution: { @@ -4585,13 +4892,6 @@ packages: } hasBin: true - restore-cursor@5.1.0: - resolution: - { - integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==, - } - engines: { node: ">=18" } - retext-latin@4.0.0: resolution: { @@ -4623,10 +4923,10 @@ packages: } engines: { iojs: ">=1.0.0", node: ">=0.10.0" } - rollup@4.22.5: + rollup@4.28.1: resolution: { - integrity: sha512-WoinX7GeQOFMGznEcWA1WrTQCd/tpEbMkc3nuMs9BT0CPjMdSjPMTVClwWd4pgSQwJdP65SK9mTCNvItlr5o7w==, + integrity: sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==, } engines: { node: ">=18.0.0", npm: ">=8.0.0" } hasBin: true @@ -4643,28 +4943,6 @@ packages: integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==, } - section-matter@1.0.0: - resolution: - { - integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==, - } - engines: { node: ">=4" } - - semver@6.3.1: - resolution: - { - integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==, - } - hasBin: true - - semver@7.6.2: - resolution: - { - integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==, - } - engines: { node: ">=10" } - hasBin: true - semver@7.6.3: resolution: { @@ -4680,16 +4958,24 @@ packages: } engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } - shiki@1.20.0: + shebang-command@2.0.0: resolution: { - integrity: sha512-MZJJ1PCFsQB1Piq+25wiz0a75yUv8Q3/fzy7SzRx5ONdjdtGdyiKwYn8vb/FnK5kjS0voWGnPpjG16POauUR+g==, + integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, } + engines: { node: ">=8" } - shiki@1.6.3: + shebang-regex@3.0.0: resolution: { - integrity: sha512-lE1/YGlzFY0hQSyEfsZj18xGrTWxyhFQkaiILALqTBZPbJeYFWpbUhlmTGPOupYB/qC+H6sV4UznJzcEh3WMHQ==, + integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, + } + engines: { node: ">=8" } + + shiki@1.24.3: + resolution: + { + integrity: sha512-eMeX/ehE2IDKVs71kB4zVcDHjutNcOtm+yIRuR4sA6ThBbdFI0DffGJiyoKCodj0xRGxIoWC3pk/Anmm5mzHmA==, } signal-exit@4.1.0: @@ -4752,12 +5038,11 @@ packages: integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==, } - stdin-discarder@0.2.2: + std-env@3.8.0: resolution: { - integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==, + integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==, } - engines: { node: ">=18" } stream-replace-string@2.0.0: resolution: @@ -4806,13 +5091,6 @@ packages: } engines: { node: ">=12" } - strip-bom-string@1.0.0: - resolution: - { - integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==, - } - engines: { node: ">=0.10.0" } - strip-bom@3.0.0: resolution: { @@ -4820,6 +5098,13 @@ packages: } engines: { node: ">=4" } + strip-final-newline@3.0.0: + resolution: + { + integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==, + } + engines: { node: ">=12" } + style-to-object@0.4.4: resolution: { @@ -4841,21 +5126,14 @@ packages: peerDependencies: postcss: ^8.4.31 - sucrase@3.34.0: + sucrase@3.35.0: resolution: { - integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==, + integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==, } - engines: { node: ">=8" } + engines: { node: ">=16 || 14 >=14.17" } hasBin: true - supports-color@5.5.0: - resolution: - { - integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, - } - engines: { node: ">=4" } - supports-preserve-symlinks-flag@1.0.0: resolution: { @@ -4871,10 +5149,17 @@ packages: engines: { node: ">=14.0.0" } hasBin: true - tailwindcss@3.4.13: + system-architecture@0.1.0: resolution: { - integrity: sha512-KqjHOJKogOUt5Bs752ykCeiwvi0fKVkr5oqsFNt/8px/tA8scFPIlkygsf6jXrfCqGHz7VflA6+yytWuM+XhFw==, + integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==, + } + engines: { node: ">=18" } + + tailwindcss@3.4.17: + resolution: + { + integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==, } engines: { node: ">=14.0.0" } hasBin: true @@ -4892,10 +5177,10 @@ packages: integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==, } - tinyexec@0.3.0: + tinyexec@0.3.1: resolution: { - integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==, + integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==, } to-fast-properties@2.0.0: @@ -4930,10 +5215,10 @@ packages: integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==, } - tsconfck@3.1.3: + tsconfck@3.1.4: resolution: { - integrity: sha512-ulNZP1SVpRDesxeMLON/LtWM8HIgAJEIVpVVhBM6gsmvQ8+Rh+ZG7FWGvHh7Ah3pRABwVJWklWCr/BTZSv0xnQ==, + integrity: sha512-kdqWFGVJqe+KGYvlSO9NIaWn9jT1Ny4oKVzAJsKii5eoE9snzTJzL4+MMVOMn+fikWGFmKEylcXL710V/kIPJQ==, } engines: { node: ^18 || >=20 } hasBin: true @@ -4949,12 +5234,12 @@ packages: integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==, } - type-fest@2.19.0: + type-fest@4.30.2: resolution: { - integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==, + integrity: sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==, } - engines: { node: ">=12.20" } + engines: { node: ">=16" } typesafe-path@0.2.2: resolution: @@ -4968,14 +5253,38 @@ packages: integrity: sha512-ojEC7+Ci1ij9eE6hp8Jl9VUNnsEKzztktP5gtYNRMrTmfXVwA1PITYYAkpxCvvupdSYa/Re51B6KMcv1CTZEUA==, } - typescript@5.6.2: + typescript@5.7.2: resolution: { - integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==, + integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==, } engines: { node: ">=14.17" } hasBin: true + ufo@1.5.4: + resolution: + { + integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==, + } + + ultrahtml@1.5.3: + resolution: + { + integrity: sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==, + } + + uncrypto@0.1.3: + resolution: + { + integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==, + } + + unenv@1.10.0: + resolution: + { + integrity: sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==, + } + unified@11.0.5: resolution: { @@ -5042,6 +5351,75 @@ packages: integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==, } + unstorage@1.14.0: + resolution: + { + integrity: sha512-FjkD8JSdZyktjzPUR9KbR1Pc2tD9b+rEMMNMyvrlpBwQCftL9WgU7iAvb95QDBi5wDL75SQyTovQASBPzt3a9g==, + } + peerDependencies: + "@azure/app-configuration": ^1.8.0 + "@azure/cosmos": ^4.2.0 + "@azure/data-tables": ^13.3.0 + "@azure/identity": ^4.5.0 + "@azure/keyvault-secrets": ^4.9.0 + "@azure/storage-blob": ^12.26.0 + "@capacitor/preferences": ^6.0.3 + "@deno/kv": ">=0.8.4" + "@netlify/blobs": ^6.5.0 || ^7.0.0 || ^8.1.0 + "@planetscale/database": ^1.19.0 + "@upstash/redis": ^1.34.3 + "@vercel/blob": ">=0.27.0" + "@vercel/kv": ^1.0.1 + aws4fetch: ^1.0.20 + db0: ">=0.2.1" + idb-keyval: ^6.2.1 + ioredis: ^5.4.1 + uploadthing: ^7.4.1 + peerDependenciesMeta: + "@azure/app-configuration": + optional: true + "@azure/cosmos": + optional: true + "@azure/data-tables": + optional: true + "@azure/identity": + optional: true + "@azure/keyvault-secrets": + optional: true + "@azure/storage-blob": + optional: true + "@capacitor/preferences": + optional: true + "@deno/kv": + optional: true + "@netlify/blobs": + optional: true + "@planetscale/database": + optional: true + "@upstash/redis": + optional: true + "@vercel/blob": + optional: true + "@vercel/kv": + optional: true + aws4fetch: + optional: true + db0: + optional: true + idb-keyval: + optional: true + ioredis: + optional: true + uploadthing: + optional: true + + untun@0.1.3: + resolution: + { + integrity: sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==, + } + hasBin: true + update-browserslist-db@1.1.1: resolution: { @@ -5051,6 +5429,12 @@ packages: peerDependencies: browserslist: ">= 4.21.0" + uqr@0.1.2: + resolution: + { + integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==, + } + util-deprecate@1.0.2: resolution: { @@ -5075,25 +5459,30 @@ packages: integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==, } - vite@5.4.8: + vite@6.0.4: resolution: { - integrity: sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==, + integrity: sha512-zwlH6ar+6o6b4Wp+ydhtIKLrGM/LoqZzcdVmkGAFun0KHTzIzjh+h0kungEx7KJg/PYnC80I4TII9WkjciSR6Q==, } - engines: { node: ^18.0.0 || >=20.0.0 } + engines: { node: ^18.0.0 || ^20.0.0 || >=22.0.0 } hasBin: true peerDependencies: - "@types/node": ^18.0.0 || >=20.0.0 + "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: ">=1.21.0" less: "*" lightningcss: ^1.21.0 sass: "*" sass-embedded: "*" stylus: "*" sugarss: "*" - terser: ^5.4.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: @@ -5108,22 +5497,26 @@ packages: optional: true terser: optional: true + tsx: + optional: true + yaml: + optional: true - vitefu@1.0.2: + vitefu@1.0.4: resolution: { - integrity: sha512-0/iAvbXyM3RiPPJ4lyD4w6Mjgtf4ejTK6TPvTNG3H32PLwuT0N/ZjJLiXug7ETE/LWtTeHw9WRv7uX/tIKYyKg==, + integrity: sha512-y6zEE3PQf6uu/Mt6DTJ9ih+kyJLr4XcSgHR2zUkM8SWDhuixEJxfJ6CZGMHh1Ec3vPLoEA0IHU5oWzVqw8ulow==, } peerDependencies: - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 peerDependenciesMeta: vite: optional: true - volar-service-css@0.0.61: + volar-service-css@0.0.62: resolution: { - integrity: sha512-Ct9L/w+IB1JU8F4jofcNCGoHy6TF83aiapfZq9A0qYYpq+Kk5dH+ONS+rVZSsuhsunq8UvAuF8Gk6B8IFLfniw==, + integrity: sha512-JwNyKsH3F8PuzZYuqPf+2e+4CTU8YoyUHEHVnoXNlrLe7wy9U3biomZ56llN69Ris7TTy/+DEX41yVxQpM4qvg==, } peerDependencies: "@volar/language-service": ~2.4.0 @@ -5131,10 +5524,10 @@ packages: "@volar/language-service": optional: true - volar-service-emmet@0.0.61: + volar-service-emmet@0.0.62: resolution: { - integrity: sha512-iiYqBxjjcekqrRruw4COQHZME6EZYWVbkHjHDbULpml3g8HGJHzpAMkj9tXNCPxf36A+f1oUYjsvZt36qPg4cg==, + integrity: sha512-U4dxWDBWz7Pi4plpbXf4J4Z/ss6kBO3TYrACxWNsE29abu75QzVS0paxDDhI6bhqpbDFXlpsDhZ9aXVFpnfGRQ==, } peerDependencies: "@volar/language-service": ~2.4.0 @@ -5142,10 +5535,10 @@ packages: "@volar/language-service": optional: true - volar-service-html@0.0.61: + volar-service-html@0.0.62: resolution: { - integrity: sha512-yFE+YmmgqIL5HI4ORqP++IYb1QaGcv+xBboI0WkCxJJ/M35HZj7f5rbT3eQ24ECLXFbFCFanckwyWJVz5KmN3Q==, + integrity: sha512-Zw01aJsZRh4GTGUjveyfEzEqpULQUdQH79KNEiKVYHZyuGtdBRYCHlrus1sueSNMxwwkuF5WnOHfvBzafs8yyQ==, } peerDependencies: "@volar/language-service": ~2.4.0 @@ -5153,10 +5546,10 @@ packages: "@volar/language-service": optional: true - volar-service-prettier@0.0.61: + volar-service-prettier@0.0.62: resolution: { - integrity: sha512-F612nql5I0IS8HxXemCGvOR2Uxd4XooIwqYVUvk7WSBxP/+xu1jYvE3QJ7EVpl8Ty3S4SxPXYiYTsG3bi+gzIQ==, + integrity: sha512-h2yk1RqRTE+vkYZaI9KYuwpDfOQRrTEMvoHol0yW4GFKc75wWQRrb5n/5abDrzMPrkQbSip8JH2AXbvrRtYh4w==, } peerDependencies: "@volar/language-service": ~2.4.0 @@ -5167,10 +5560,10 @@ packages: prettier: optional: true - volar-service-typescript-twoslash-queries@0.0.61: + volar-service-typescript-twoslash-queries@0.0.62: resolution: { - integrity: sha512-99FICGrEF0r1E2tV+SvprHPw9Knyg7BdW2fUch0tf59kG+KG+Tj4tL6tUg+cy8f23O/VXlmsWFMIE+bx1dXPnQ==, + integrity: sha512-KxFt4zydyJYYI0kFAcWPTh4u0Ha36TASPZkAnNY784GtgajerUqM80nX/W1d0wVhmcOFfAxkVsf/Ed+tiYU7ng==, } peerDependencies: "@volar/language-service": ~2.4.0 @@ -5178,10 +5571,10 @@ packages: "@volar/language-service": optional: true - volar-service-typescript@0.0.61: + volar-service-typescript@0.0.62: resolution: { - integrity: sha512-4kRHxVbW7wFBHZWRU6yWxTgiKETBDIJNwmJUAWeP0mHaKpnDGj/astdRFKqGFRYVeEYl45lcUPhdJyrzanjsdQ==, + integrity: sha512-p7MPi71q7KOsH0eAbZwPBiKPp9B2+qrdHAd6VY5oTo9BUXatsOAdakTm9Yf0DUj6uWBAaOT01BSeVOPwucMV1g==, } peerDependencies: "@volar/language-service": ~2.4.0 @@ -5189,10 +5582,10 @@ packages: "@volar/language-service": optional: true - volar-service-yaml@0.0.61: + volar-service-yaml@0.0.62: resolution: { - integrity: sha512-L+gbDiLDQQ1rZUbJ3mf3doDsoQUa8OZM/xdpk/unMg1Vz24Zmi2Ign8GrZyBD7bRoIQDwOH9gdktGDKzRPpUNw==, + integrity: sha512-k7gvv7sk3wa+nGll3MaSKyjwQsJjIGCHFjVkl3wjaSP2nouKyn9aokGmqjrl39mi88Oy49giog2GkZH526wjig==, } peerDependencies: "@volar/language-service": ~2.4.0 @@ -5206,12 +5599,6 @@ packages: integrity: sha512-1BzTBuJfwMc3A0uX4JBdJgoxp74cjj4q2mDJdp49yD/GuAq4X0k5WtK6fNcMYr+FfJ9nqgR6lpfCSZDkARJ5qQ==, } - vscode-html-languageservice@5.2.0: - resolution: - { - integrity: sha512-cdNMhyw57/SQzgUUGSIMQ66jikqEN6nBNyhx5YuOyj9310+eY9zw8Q0cXpiKzDX8aHYFewQEXRnigl06j/TVwQ==, - } - vscode-html-languageservice@5.3.1: resolution: { @@ -5251,12 +5638,6 @@ packages: integrity: sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==, } - vscode-languageserver-textdocument@1.0.11: - resolution: - { - integrity: sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==, - } - vscode-languageserver-textdocument@1.0.12: resolution: { @@ -5327,12 +5708,20 @@ packages: } engines: { node: ">=18.12" } - widest-line@4.0.1: + which@2.0.2: resolution: { - integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==, + integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, } - engines: { node: ">=12" } + engines: { node: ">= 8" } + hasBin: true + + widest-line@5.0.0: + resolution: + { + integrity: sha512-c9bZp7b5YtRj2wOe6dlj32MK+Bx/M/d+9VB2SHM1OtsUHR0aV0tdP6DWh/iMt0kWi1t5g1Iudu6hQRNd1A4PVA==, + } + engines: { node: ">=18" } wrap-ansi@7.0.0: resolution: @@ -5348,16 +5737,17 @@ packages: } engines: { node: ">=12" } - wrappy@1.0.2: + wrap-ansi@9.0.0: resolution: { - integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, + integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==, } + engines: { node: ">=18" } - xxhash-wasm@1.0.2: + xxhash-wasm@1.1.0: resolution: { - integrity: sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==, + integrity: sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==, } y18n@5.0.8: @@ -5367,12 +5757,6 @@ packages: } engines: { node: ">=10" } - yallist@3.1.1: - resolution: - { - integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==, - } - yaml-language-server@1.15.0: resolution: { @@ -5387,13 +5771,6 @@ packages: } engines: { node: ">= 14" } - yaml@2.3.4: - resolution: - { - integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==, - } - engines: { node: ">= 14" } - yaml@2.5.1: resolution: { @@ -5423,13 +5800,27 @@ packages: } engines: { node: ">=12.20" } - zod-to-json-schema@3.23.3: + yocto-spinner@0.1.2: resolution: { - integrity: sha512-TYWChTxKQbRJp5ST22o/Irt9KC5nj7CdBKYB/AosCRdj/wxEMvv4NNaj9XVUHDOIp53ZxArGhnw5HMZziPFjog==, + integrity: sha512-VfmLIh/ZSZOJnVRQZc/dvpPP90lWL4G0bmxQMP0+U/2vKBA8GSpcBuWv17y7F+CZItRuO97HN1wdbb4p10uhOg==, + } + engines: { node: ">=18.19" } + + yoctocolors@2.1.1: + resolution: + { + integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==, + } + engines: { node: ">=18" } + + zod-to-json-schema@3.24.1: + resolution: + { + integrity: sha512-3h08nf3Vw3Wl3PK+q3ow/lIil81IT2Oa7YpQyUUDsEWbXveMesdfK1xBd2RhCkynwZndAxixji/7SYJJowr62w==, } peerDependencies: - zod: ^3.23.3 + zod: ^3.24.1 zod-to-ts@1.2.0: resolution: @@ -5440,10 +5831,10 @@ packages: typescript: ^4.9.4 || ^5.0.2 zod: ^3 - zod@3.23.8: + zod@3.24.1: resolution: { - integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==, + integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==, } zwitch@2.0.4: @@ -5455,18 +5846,12 @@ packages: snapshots: "@alloc/quick-lru@5.2.0": {} - "@ampproject/remapping@2.2.1": + "@astrojs/check@0.9.4(typescript@5.7.2)": dependencies: - "@jridgewell/gen-mapping": 0.3.5 - "@jridgewell/trace-mapping": 0.3.25 - - "@astrojs/check@0.9.3(typescript@5.6.2)": - dependencies: - "@astrojs/language-server": 2.14.2(typescript@5.6.2) - chokidar: 3.6.0 - fast-glob: 3.3.2 + "@astrojs/language-server": 2.15.4(typescript@5.7.2) + chokidar: 4.0.3 kleur: 4.1.5 - typescript: 5.6.2 + typescript: 5.7.2 yargs: 17.7.2 transitivePeerDependencies: - prettier @@ -5474,47 +5859,47 @@ snapshots: "@astrojs/compiler@2.10.3": {} - "@astrojs/internal-helpers@0.4.1": {} + "@astrojs/internal-helpers@0.4.2": {} - "@astrojs/language-server@2.14.2(typescript@5.6.2)": + "@astrojs/language-server@2.15.4(typescript@5.7.2)": dependencies: "@astrojs/compiler": 2.10.3 - "@astrojs/yaml2ts": 0.2.1 - "@jridgewell/sourcemap-codec": 1.4.15 - "@volar/kit": 2.4.5(typescript@5.6.2) - "@volar/language-core": 2.4.5 - "@volar/language-server": 2.4.5 - "@volar/language-service": 2.4.5 - "@volar/typescript": 2.4.5 + "@astrojs/yaml2ts": 0.2.2 + "@jridgewell/sourcemap-codec": 1.5.0 + "@volar/kit": 2.4.11(typescript@5.7.2) + "@volar/language-core": 2.4.11 + "@volar/language-server": 2.4.11 + "@volar/language-service": 2.4.11 fast-glob: 3.3.2 muggle-string: 0.4.1 - volar-service-css: 0.0.61(@volar/language-service@2.4.5) - volar-service-emmet: 0.0.61(@volar/language-service@2.4.5) - volar-service-html: 0.0.61(@volar/language-service@2.4.5) - volar-service-prettier: 0.0.61(@volar/language-service@2.4.5) - volar-service-typescript: 0.0.61(@volar/language-service@2.4.5) - volar-service-typescript-twoslash-queries: 0.0.61(@volar/language-service@2.4.5) - volar-service-yaml: 0.0.61(@volar/language-service@2.4.5) - vscode-html-languageservice: 5.2.0 + volar-service-css: 0.0.62(@volar/language-service@2.4.11) + volar-service-emmet: 0.0.62(@volar/language-service@2.4.11) + volar-service-html: 0.0.62(@volar/language-service@2.4.11) + volar-service-prettier: 0.0.62(@volar/language-service@2.4.11) + volar-service-typescript: 0.0.62(@volar/language-service@2.4.11) + volar-service-typescript-twoslash-queries: 0.0.62(@volar/language-service@2.4.11) + volar-service-yaml: 0.0.62(@volar/language-service@2.4.11) + vscode-html-languageservice: 5.3.1 vscode-uri: 3.0.8 transitivePeerDependencies: - typescript - "@astrojs/markdown-remark@5.2.0": + "@astrojs/markdown-remark@6.0.1": dependencies: - "@astrojs/prism": 3.1.0 + "@astrojs/prism": 3.2.0 github-slugger: 2.0.0 - hast-util-from-html: 2.0.1 + hast-util-from-html: 2.0.3 hast-util-to-text: 4.0.2 import-meta-resolve: 4.1.0 + js-yaml: 4.1.0 mdast-util-definitions: 6.0.0 rehype-raw: 7.0.0 - rehype-stringify: 10.0.0 + rehype-stringify: 10.0.1 remark-gfm: 4.0.0 remark-parse: 11.0.0 - remark-rehype: 11.1.0 + remark-rehype: 11.1.1 remark-smartypants: 3.0.2 - shiki: 1.20.0 + shiki: 1.24.3 unified: 11.0.5 unist-util-remove-position: 5.0.0 unist-util-visit: 5.0.0 @@ -5523,15 +5908,14 @@ snapshots: transitivePeerDependencies: - supports-color - "@astrojs/mdx@3.1.7(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2))": + "@astrojs/mdx@4.0.2(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1))": dependencies: - "@astrojs/markdown-remark": 5.2.0 - "@mdx-js/mdx": 3.0.1 - acorn: 8.12.1 - astro: 4.15.9(rollup@4.22.5)(typescript@5.6.2) + "@astrojs/markdown-remark": 6.0.1 + "@mdx-js/mdx": 3.1.0(acorn@8.14.0) + acorn: 8.14.0 + astro: 5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1) es-module-lexer: 1.5.4 estree-util-visit: 2.0.0 - gray-matter: 4.0.3 hast-util-to-html: 9.0.3 kleur: 4.1.5 rehype-raw: 7.0.0 @@ -5543,7 +5927,7 @@ snapshots: transitivePeerDependencies: - supports-color - "@astrojs/prism@3.1.0": + "@astrojs/prism@3.2.0": dependencies: prismjs: 1.29.0 @@ -5551,29 +5935,31 @@ snapshots: dependencies: sitemap: 7.1.2 stream-replace-string: 2.0.0 - zod: 3.23.8 + zod: 3.24.1 - "@astrojs/starlight-tailwind@2.0.3(@astrojs/starlight@0.28.2(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2)))(@astrojs/tailwind@5.1.1(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2))(tailwindcss@3.4.13))(tailwindcss@3.4.13)": + "@astrojs/starlight-tailwind@3.0.0(@astrojs/starlight@0.30.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1)))(@astrojs/tailwind@5.1.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1))(tailwindcss@3.4.17))(tailwindcss@3.4.17)": dependencies: - "@astrojs/starlight": 0.28.2(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2)) - "@astrojs/tailwind": 5.1.1(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2))(tailwindcss@3.4.13) - tailwindcss: 3.4.13 + "@astrojs/starlight": 0.30.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1)) + "@astrojs/tailwind": 5.1.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1))(tailwindcss@3.4.17) + tailwindcss: 3.4.17 - "@astrojs/starlight@0.28.2(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2))": + "@astrojs/starlight@0.30.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1))": dependencies: - "@astrojs/mdx": 3.1.7(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2)) + "@astrojs/mdx": 4.0.2(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1)) "@astrojs/sitemap": 3.1.6 "@pagefind/default-ui": 1.0.4 "@types/hast": 3.0.4 + "@types/js-yaml": 4.0.9 "@types/mdast": 4.0.4 - astro: 4.15.9(rollup@4.22.5)(typescript@5.6.2) - astro-expressive-code: 0.35.6(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2)) + astro: 5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1) + astro-expressive-code: 0.38.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1)) bcp-47: 2.1.0 hast-util-from-html: 2.0.1 hast-util-select: 6.0.2 hast-util-to-string: 3.0.0 hastscript: 9.0.0 i18next: 23.15.1 + js-yaml: 4.1.0 mdast-util-directive: 3.0.0 mdast-util-to-markdown: 2.1.0 mdast-util-to-string: 4.0.0 @@ -5587,456 +5973,301 @@ snapshots: transitivePeerDependencies: - supports-color - "@astrojs/tailwind@5.1.1(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2))(tailwindcss@3.4.13)": + "@astrojs/tailwind@5.1.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1))(tailwindcss@3.4.17)": dependencies: - astro: 4.15.9(rollup@4.22.5)(typescript@5.6.2) - autoprefixer: 10.4.20(postcss@8.4.47) - postcss: 8.4.47 - postcss-load-config: 4.0.2(postcss@8.4.47) - tailwindcss: 3.4.13 + astro: 5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1) + autoprefixer: 10.4.20(postcss@8.4.49) + postcss: 8.4.49 + postcss-load-config: 4.0.2(postcss@8.4.49) + tailwindcss: 3.4.17 transitivePeerDependencies: - ts-node - "@astrojs/telemetry@3.1.0": + "@astrojs/telemetry@3.2.0": dependencies: - ci-info: 4.0.0 + ci-info: 4.1.0 debug: 4.3.7 dlv: 1.1.3 - dset: 3.1.3 + dset: 3.1.4 is-docker: 3.0.0 is-wsl: 3.1.0 which-pm-runs: 1.1.0 transitivePeerDependencies: - supports-color - "@astrojs/yaml2ts@0.2.1": + "@astrojs/yaml2ts@0.2.2": dependencies: yaml: 2.5.1 - "@babel/code-frame@7.24.7": - dependencies: - "@babel/highlight": 7.24.7 - picocolors: 1.0.0 - - "@babel/compat-data@7.25.4": {} - - "@babel/core@7.25.2": - dependencies: - "@ampproject/remapping": 2.2.1 - "@babel/code-frame": 7.24.7 - "@babel/generator": 7.25.6 - "@babel/helper-compilation-targets": 7.25.2 - "@babel/helper-module-transforms": 7.25.2(@babel/core@7.25.2) - "@babel/helpers": 7.25.6 - "@babel/parser": 7.25.6 - "@babel/template": 7.25.0 - "@babel/traverse": 7.25.6 - "@babel/types": 7.25.6 - convert-source-map: 2.0.0 - debug: 4.3.7 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - "@babel/generator@7.24.7": - dependencies: - "@babel/types": 7.25.6 - "@jridgewell/gen-mapping": 0.3.5 - "@jridgewell/trace-mapping": 0.3.25 - jsesc: 2.5.2 - - "@babel/generator@7.25.6": - dependencies: - "@babel/types": 7.25.6 - "@jridgewell/gen-mapping": 0.3.5 - "@jridgewell/trace-mapping": 0.3.25 - jsesc: 2.5.2 - - "@babel/helper-annotate-as-pure@7.24.7": - dependencies: - "@babel/types": 7.25.6 - - "@babel/helper-compilation-targets@7.25.2": - dependencies: - "@babel/compat-data": 7.25.4 - "@babel/helper-validator-option": 7.24.8 - browserslist: 4.24.0 - lru-cache: 5.1.1 - semver: 6.3.1 - - "@babel/helper-environment-visitor@7.24.7": - dependencies: - "@babel/types": 7.25.6 - - "@babel/helper-function-name@7.24.7": - dependencies: - "@babel/template": 7.24.7 - "@babel/types": 7.25.6 - - "@babel/helper-hoist-variables@7.24.7": - dependencies: - "@babel/types": 7.25.6 - - "@babel/helper-module-imports@7.24.7": - dependencies: - "@babel/traverse": 7.24.7 - "@babel/types": 7.25.6 - transitivePeerDependencies: - - supports-color - - "@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)": - dependencies: - "@babel/core": 7.25.2 - "@babel/helper-module-imports": 7.24.7 - "@babel/helper-simple-access": 7.24.7 - "@babel/helper-validator-identifier": 7.24.7 - "@babel/traverse": 7.25.6 - transitivePeerDependencies: - - supports-color - - "@babel/helper-plugin-utils@7.24.8": {} - - "@babel/helper-simple-access@7.24.7": - dependencies: - "@babel/traverse": 7.25.6 - "@babel/types": 7.25.6 - transitivePeerDependencies: - - supports-color - - "@babel/helper-split-export-declaration@7.24.7": - dependencies: - "@babel/types": 7.25.6 - "@babel/helper-string-parser@7.24.8": {} "@babel/helper-validator-identifier@7.24.7": {} - "@babel/helper-validator-option@7.24.8": {} - - "@babel/helpers@7.25.6": - dependencies: - "@babel/template": 7.25.0 - "@babel/types": 7.25.6 - - "@babel/highlight@7.24.7": - dependencies: - "@babel/helper-validator-identifier": 7.24.7 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.0.0 - - "@babel/parser@7.24.7": - dependencies: - "@babel/types": 7.25.6 - "@babel/parser@7.25.6": dependencies: "@babel/types": 7.25.6 - "@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.2)": - dependencies: - "@babel/core": 7.25.2 - "@babel/helper-plugin-utils": 7.24.8 - - "@babel/plugin-transform-react-jsx@7.25.2(@babel/core@7.25.2)": - dependencies: - "@babel/core": 7.25.2 - "@babel/helper-annotate-as-pure": 7.24.7 - "@babel/helper-module-imports": 7.24.7 - "@babel/helper-plugin-utils": 7.24.8 - "@babel/plugin-syntax-jsx": 7.24.7(@babel/core@7.25.2) - "@babel/types": 7.25.6 - transitivePeerDependencies: - - supports-color - "@babel/runtime@7.25.6": dependencies: regenerator-runtime: 0.14.1 - "@babel/template@7.24.7": - dependencies: - "@babel/code-frame": 7.24.7 - "@babel/parser": 7.24.7 - "@babel/types": 7.25.6 - - "@babel/template@7.25.0": - dependencies: - "@babel/code-frame": 7.24.7 - "@babel/parser": 7.25.6 - "@babel/types": 7.25.6 - - "@babel/traverse@7.24.7": - dependencies: - "@babel/code-frame": 7.24.7 - "@babel/generator": 7.24.7 - "@babel/helper-environment-visitor": 7.24.7 - "@babel/helper-function-name": 7.24.7 - "@babel/helper-hoist-variables": 7.24.7 - "@babel/helper-split-export-declaration": 7.24.7 - "@babel/parser": 7.24.7 - "@babel/types": 7.25.6 - debug: 4.3.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - "@babel/traverse@7.25.6": - dependencies: - "@babel/code-frame": 7.24.7 - "@babel/generator": 7.25.6 - "@babel/parser": 7.25.6 - "@babel/template": 7.25.0 - "@babel/types": 7.25.6 - debug: 4.3.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - "@babel/types@7.25.6": dependencies: "@babel/helper-string-parser": 7.24.8 "@babel/helper-validator-identifier": 7.24.7 to-fast-properties: 2.0.0 - "@csstools/cascade-layer-name-parser@2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1)": + "@csstools/cascade-layer-name-parser@2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)": dependencies: - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 "@csstools/color-helpers@5.0.1": {} - "@csstools/css-calc@2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1)": + "@csstools/css-calc@2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)": dependencies: - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 - "@csstools/css-color-parser@3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1)": + "@csstools/css-color-parser@3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)": dependencies: "@csstools/color-helpers": 5.0.1 - "@csstools/css-calc": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 + "@csstools/css-calc": 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 - "@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1)": + "@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3)": dependencies: - "@csstools/css-tokenizer": 3.0.1 + "@csstools/css-tokenizer": 3.0.3 - "@csstools/css-tokenizer@3.0.1": {} + "@csstools/css-tokenizer@3.0.3": {} - "@csstools/media-query-list-parser@3.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1)": + "@csstools/media-query-list-parser@4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)": dependencies: - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 - "@csstools/postcss-cascade-layers@5.0.0(postcss@8.4.38)": + "@csstools/postcss-cascade-layers@5.0.1(postcss@8.4.47)": dependencies: - "@csstools/selector-specificity": 4.0.0(postcss-selector-parser@6.1.0) - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + "@csstools/selector-specificity": 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - "@csstools/postcss-color-function@4.0.2(postcss@8.4.38)": + "@csstools/postcss-color-function@4.0.6(postcss@8.4.47)": dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-color-mix-function@3.0.2(postcss@8.4.38)": + "@csstools/postcss-color-mix-function@3.0.6(postcss@8.4.47)": dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-content-alt-text@2.0.1(postcss@8.4.38)": + "@csstools/postcss-content-alt-text@2.0.4(postcss@8.4.47)": dependencies: - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-exponential-functions@2.0.1(postcss@8.4.38)": + "@csstools/postcss-exponential-functions@2.0.5(postcss@8.4.47)": dependencies: - "@csstools/css-calc": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - postcss: 8.4.38 + "@csstools/css-calc": 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + postcss: 8.4.47 - "@csstools/postcss-font-format-keywords@4.0.0(postcss@8.4.38)": + "@csstools/postcss-font-format-keywords@4.0.0(postcss@8.4.47)": dependencies: - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - "@csstools/postcss-gamut-mapping@2.0.2(postcss@8.4.38)": + "@csstools/postcss-gamut-mapping@2.0.6(postcss@8.4.47)": dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + postcss: 8.4.47 - "@csstools/postcss-gradients-interpolation-method@5.0.2(postcss@8.4.38)": + "@csstools/postcss-gradients-interpolation-method@5.0.6(postcss@8.4.47)": dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-hwb-function@4.0.2(postcss@8.4.38)": + "@csstools/postcss-hwb-function@4.0.6(postcss@8.4.47)": dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-ic-unit@4.0.0(postcss@8.4.38)": + "@csstools/postcss-ic-unit@4.0.0(postcss@8.4.47)": dependencies: - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - "@csstools/postcss-initial@2.0.0(postcss@8.4.38)": + "@csstools/postcss-initial@2.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - "@csstools/postcss-is-pseudo-class@5.0.0(postcss@8.4.38)": + "@csstools/postcss-is-pseudo-class@5.0.1(postcss@8.4.47)": dependencies: - "@csstools/selector-specificity": 4.0.0(postcss-selector-parser@6.1.0) - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + "@csstools/selector-specificity": 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - "@csstools/postcss-light-dark-function@2.0.4(postcss@8.4.38)": + "@csstools/postcss-light-dark-function@2.0.7(postcss@8.4.47)": dependencies: - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-logical-float-and-clear@3.0.0(postcss@8.4.38)": + "@csstools/postcss-logical-float-and-clear@3.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - "@csstools/postcss-logical-overflow@2.0.0(postcss@8.4.38)": + "@csstools/postcss-logical-overflow@2.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - "@csstools/postcss-logical-overscroll-behavior@2.0.0(postcss@8.4.38)": + "@csstools/postcss-logical-overscroll-behavior@2.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - "@csstools/postcss-logical-resize@3.0.0(postcss@8.4.38)": + "@csstools/postcss-logical-resize@3.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - "@csstools/postcss-logical-viewport-units@3.0.1(postcss@8.4.38)": + "@csstools/postcss-logical-viewport-units@3.0.3(postcss@8.4.47)": dependencies: - "@csstools/css-tokenizer": 3.0.1 - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-tokenizer": 3.0.3 + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-media-minmax@2.0.1(postcss@8.4.38)": + "@csstools/postcss-media-minmax@2.0.5(postcss@8.4.47)": dependencies: - "@csstools/css-calc": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/media-query-list-parser": 3.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - postcss: 8.4.38 + "@csstools/css-calc": 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/media-query-list-parser": 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + postcss: 8.4.47 - "@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.1(postcss@8.4.38)": + "@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.4(postcss@8.4.47)": dependencies: - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/media-query-list-parser": 3.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - postcss: 8.4.38 + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/media-query-list-parser": 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + postcss: 8.4.47 - "@csstools/postcss-nested-calc@4.0.0(postcss@8.4.38)": + "@csstools/postcss-nested-calc@4.0.0(postcss@8.4.47)": dependencies: - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - "@csstools/postcss-normalize-display-values@4.0.0(postcss@8.4.38)": + "@csstools/postcss-normalize-display-values@4.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - "@csstools/postcss-oklab-function@4.0.2(postcss@8.4.38)": + "@csstools/postcss-oklab-function@4.0.6(postcss@8.4.47)": dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-progressive-custom-properties@4.0.0(postcss@8.4.38)": + "@csstools/postcss-progressive-custom-properties@4.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - "@csstools/postcss-relative-color-syntax@3.0.2(postcss@8.4.38)": + "@csstools/postcss-random-function@1.0.1(postcss@8.4.47)": dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-calc": 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + postcss: 8.4.47 - "@csstools/postcss-scope-pseudo-class@4.0.0(postcss@8.4.38)": + "@csstools/postcss-relative-color-syntax@3.0.6(postcss@8.4.47)": dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - "@csstools/postcss-stepped-value-functions@4.0.1(postcss@8.4.38)": + "@csstools/postcss-scope-pseudo-class@4.0.1(postcss@8.4.47)": dependencies: - "@csstools/css-calc": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - postcss: 8.4.38 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - "@csstools/postcss-text-decoration-shorthand@4.0.1(postcss@8.4.38)": + "@csstools/postcss-sign-functions@1.1.0(postcss@8.4.47)": + dependencies: + "@csstools/css-calc": 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + postcss: 8.4.47 + + "@csstools/postcss-stepped-value-functions@4.0.5(postcss@8.4.47)": + dependencies: + "@csstools/css-calc": 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + postcss: 8.4.47 + + "@csstools/postcss-text-decoration-shorthand@4.0.1(postcss@8.4.47)": dependencies: "@csstools/color-helpers": 5.0.1 - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - "@csstools/postcss-trigonometric-functions@4.0.1(postcss@8.4.38)": + "@csstools/postcss-trigonometric-functions@4.0.5(postcss@8.4.47)": dependencies: - "@csstools/css-calc": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - postcss: 8.4.38 + "@csstools/css-calc": 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + postcss: 8.4.47 - "@csstools/postcss-unset-value@4.0.0(postcss@8.4.38)": + "@csstools/postcss-unset-value@4.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - "@csstools/selector-resolve-nested@2.0.0(postcss-selector-parser@6.1.0)": + "@csstools/selector-resolve-nested@3.0.0(postcss-selector-parser@7.0.0)": dependencies: - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 7.0.0 - "@csstools/selector-specificity@4.0.0(postcss-selector-parser@6.1.0)": + "@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.0.0)": dependencies: - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 7.0.0 - "@csstools/utilities@2.0.0(postcss@8.4.38)": + "@csstools/utilities@2.0.0(postcss@8.4.47)": dependencies: - postcss: 8.4.38 + postcss: 8.4.47 "@ctrl/tinycolor@4.1.0": {} @@ -6071,96 +6302,168 @@ snapshots: "@esbuild/aix-ppc64@0.21.5": optional: true + "@esbuild/aix-ppc64@0.24.0": + optional: true + "@esbuild/android-arm64@0.21.5": optional: true + "@esbuild/android-arm64@0.24.0": + optional: true + "@esbuild/android-arm@0.21.5": optional: true + "@esbuild/android-arm@0.24.0": + optional: true + "@esbuild/android-x64@0.21.5": optional: true + "@esbuild/android-x64@0.24.0": + optional: true + "@esbuild/darwin-arm64@0.21.5": optional: true + "@esbuild/darwin-arm64@0.24.0": + optional: true + "@esbuild/darwin-x64@0.21.5": optional: true + "@esbuild/darwin-x64@0.24.0": + optional: true + "@esbuild/freebsd-arm64@0.21.5": optional: true + "@esbuild/freebsd-arm64@0.24.0": + optional: true + "@esbuild/freebsd-x64@0.21.5": optional: true + "@esbuild/freebsd-x64@0.24.0": + optional: true + "@esbuild/linux-arm64@0.21.5": optional: true + "@esbuild/linux-arm64@0.24.0": + optional: true + "@esbuild/linux-arm@0.21.5": optional: true + "@esbuild/linux-arm@0.24.0": + optional: true + "@esbuild/linux-ia32@0.21.5": optional: true + "@esbuild/linux-ia32@0.24.0": + optional: true + "@esbuild/linux-loong64@0.21.5": optional: true + "@esbuild/linux-loong64@0.24.0": + optional: true + "@esbuild/linux-mips64el@0.21.5": optional: true + "@esbuild/linux-mips64el@0.24.0": + optional: true + "@esbuild/linux-ppc64@0.21.5": optional: true + "@esbuild/linux-ppc64@0.24.0": + optional: true + "@esbuild/linux-riscv64@0.21.5": optional: true + "@esbuild/linux-riscv64@0.24.0": + optional: true + "@esbuild/linux-s390x@0.21.5": optional: true + "@esbuild/linux-s390x@0.24.0": + optional: true + "@esbuild/linux-x64@0.21.5": optional: true + "@esbuild/linux-x64@0.24.0": + optional: true + "@esbuild/netbsd-x64@0.21.5": optional: true + "@esbuild/netbsd-x64@0.24.0": + optional: true + + "@esbuild/openbsd-arm64@0.24.0": + optional: true + "@esbuild/openbsd-x64@0.21.5": optional: true + "@esbuild/openbsd-x64@0.24.0": + optional: true + "@esbuild/sunos-x64@0.21.5": optional: true + "@esbuild/sunos-x64@0.24.0": + optional: true + "@esbuild/win32-arm64@0.21.5": optional: true + "@esbuild/win32-arm64@0.24.0": + optional: true + "@esbuild/win32-ia32@0.21.5": optional: true + "@esbuild/win32-ia32@0.24.0": + optional: true + "@esbuild/win32-x64@0.21.5": optional: true - "@expressive-code/core@0.35.6": + "@esbuild/win32-x64@0.24.0": + optional: true + + "@expressive-code/core@0.38.3": dependencies: "@ctrl/tinycolor": 4.1.0 hast-util-select: 6.0.2 - hast-util-to-html: 9.0.1 + hast-util-to-html: 9.0.3 hast-util-to-text: 4.0.2 hastscript: 9.0.0 - postcss: 8.4.38 - postcss-nested: 6.0.1(postcss@8.4.38) + postcss: 8.4.47 + postcss-nested: 6.0.1(postcss@8.4.47) unist-util-visit: 5.0.0 unist-util-visit-parents: 6.0.1 - "@expressive-code/plugin-frames@0.35.6": + "@expressive-code/plugin-frames@0.38.3": dependencies: - "@expressive-code/core": 0.35.6 + "@expressive-code/core": 0.38.3 - "@expressive-code/plugin-shiki@0.35.6": + "@expressive-code/plugin-shiki@0.38.3": dependencies: - "@expressive-code/core": 0.35.6 - shiki: 1.6.3 + "@expressive-code/core": 0.38.3 + shiki: 1.24.3 - "@expressive-code/plugin-text-markers@0.35.6": + "@expressive-code/plugin-text-markers@0.38.3": dependencies: - "@expressive-code/core": 0.35.6 + "@expressive-code/core": 0.38.3 "@fontsource/inter@5.1.0": {} @@ -6241,41 +6544,49 @@ snapshots: "@img/sharp-win32-x64@0.33.5": optional: true + "@isaacs/cliui@8.0.2": + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + "@jridgewell/gen-mapping@0.3.5": dependencies: "@jridgewell/set-array": 1.2.1 - "@jridgewell/sourcemap-codec": 1.4.15 + "@jridgewell/sourcemap-codec": 1.5.0 "@jridgewell/trace-mapping": 0.3.25 "@jridgewell/resolve-uri@3.1.1": {} "@jridgewell/set-array@1.2.1": {} - "@jridgewell/sourcemap-codec@1.4.15": {} - "@jridgewell/sourcemap-codec@1.5.0": {} "@jridgewell/trace-mapping@0.3.25": dependencies: "@jridgewell/resolve-uri": 3.1.1 - "@jridgewell/sourcemap-codec": 1.4.15 + "@jridgewell/sourcemap-codec": 1.5.0 - "@mdx-js/mdx@3.0.1": + "@mdx-js/mdx@3.1.0(acorn@8.14.0)": dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 "@types/estree-jsx": 1.0.3 "@types/hast": 3.0.4 "@types/mdx": 2.0.10 collapse-white-space: 2.1.0 devlop: 1.1.0 - estree-util-build-jsx: 3.0.1 estree-util-is-identifier-name: 3.0.0 - estree-util-to-js: 2.0.0 + estree-util-scope: 1.0.0 estree-walker: 3.0.3 - hast-util-to-estree: 3.1.0 hast-util-to-jsx-runtime: 2.3.0 markdown-extensions: 2.0.0 - periscopic: 3.1.0 + recma-build-jsx: 1.0.0 + recma-jsx: 1.0.0(acorn@8.14.0) + recma-stringify: 1.0.0 + rehype-recma: 1.0.0 remark-mdx: 3.0.0 remark-parse: 11.0.0 remark-rehype: 11.1.0 @@ -6286,6 +6597,7 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 transitivePeerDependencies: + - acorn - supports-color "@nodelib/fs.scandir@2.1.5": @@ -6298,7 +6610,7 @@ snapshots: "@nodelib/fs.walk@1.2.8": dependencies: "@nodelib/fs.scandir": 2.1.5 - fastq: 1.15.0 + fastq: 1.17.1 "@oslojs/encoding@1.1.0": {} @@ -6319,117 +6631,171 @@ snapshots: "@pagefind/windows-x64@1.0.4": optional: true - "@rollup/pluginutils@5.1.2(rollup@4.22.5)": + "@parcel/watcher-android-arm64@2.5.0": + optional: true + + "@parcel/watcher-darwin-arm64@2.5.0": + optional: true + + "@parcel/watcher-darwin-x64@2.5.0": + optional: true + + "@parcel/watcher-freebsd-x64@2.5.0": + optional: true + + "@parcel/watcher-linux-arm-glibc@2.5.0": + optional: true + + "@parcel/watcher-linux-arm-musl@2.5.0": + optional: true + + "@parcel/watcher-linux-arm64-glibc@2.5.0": + optional: true + + "@parcel/watcher-linux-arm64-musl@2.5.0": + optional: true + + "@parcel/watcher-linux-x64-glibc@2.5.0": + optional: true + + "@parcel/watcher-linux-x64-musl@2.5.0": + optional: true + + "@parcel/watcher-wasm@2.5.0": dependencies: - "@types/estree": 1.0.5 - estree-walker: 2.0.2 - picomatch: 2.3.1 + is-glob: 4.0.3 + micromatch: 4.0.8 + + "@parcel/watcher-win32-arm64@2.5.0": + optional: true + + "@parcel/watcher-win32-ia32@2.5.0": + optional: true + + "@parcel/watcher-win32-x64@2.5.0": + optional: true + + "@parcel/watcher@2.5.0": + dependencies: + detect-libc: 1.0.3 + is-glob: 4.0.3 + micromatch: 4.0.8 + node-addon-api: 7.1.1 optionalDependencies: - rollup: 4.22.5 + "@parcel/watcher-android-arm64": 2.5.0 + "@parcel/watcher-darwin-arm64": 2.5.0 + "@parcel/watcher-darwin-x64": 2.5.0 + "@parcel/watcher-freebsd-x64": 2.5.0 + "@parcel/watcher-linux-arm-glibc": 2.5.0 + "@parcel/watcher-linux-arm-musl": 2.5.0 + "@parcel/watcher-linux-arm64-glibc": 2.5.0 + "@parcel/watcher-linux-arm64-musl": 2.5.0 + "@parcel/watcher-linux-x64-glibc": 2.5.0 + "@parcel/watcher-linux-x64-musl": 2.5.0 + "@parcel/watcher-win32-arm64": 2.5.0 + "@parcel/watcher-win32-ia32": 2.5.0 + "@parcel/watcher-win32-x64": 2.5.0 - "@rollup/rollup-android-arm-eabi@4.22.5": + "@pkgjs/parseargs@0.11.0": optional: true - "@rollup/rollup-android-arm64@4.22.5": - optional: true - - "@rollup/rollup-darwin-arm64@4.22.5": - optional: true - - "@rollup/rollup-darwin-x64@4.22.5": - optional: true - - "@rollup/rollup-linux-arm-gnueabihf@4.22.5": - optional: true - - "@rollup/rollup-linux-arm-musleabihf@4.22.5": - optional: true - - "@rollup/rollup-linux-arm64-gnu@4.22.5": - optional: true - - "@rollup/rollup-linux-arm64-musl@4.22.5": - optional: true - - "@rollup/rollup-linux-powerpc64le-gnu@4.22.5": - optional: true - - "@rollup/rollup-linux-riscv64-gnu@4.22.5": - optional: true - - "@rollup/rollup-linux-s390x-gnu@4.22.5": - optional: true - - "@rollup/rollup-linux-x64-gnu@4.22.5": - optional: true - - "@rollup/rollup-linux-x64-musl@4.22.5": - optional: true - - "@rollup/rollup-win32-arm64-msvc@4.22.5": - optional: true - - "@rollup/rollup-win32-ia32-msvc@4.22.5": - optional: true - - "@rollup/rollup-win32-x64-msvc@4.22.5": - optional: true - - "@shikijs/core@1.20.0": + "@rollup/pluginutils@5.1.4(rollup@4.28.1)": dependencies: - "@shikijs/engine-javascript": 1.20.0 - "@shikijs/engine-oniguruma": 1.20.0 - "@shikijs/types": 1.20.0 - "@shikijs/vscode-textmate": 9.2.2 + "@types/estree": 1.0.6 + estree-walker: 2.0.2 + picomatch: 4.0.2 + optionalDependencies: + rollup: 4.28.1 + + "@rollup/rollup-android-arm-eabi@4.28.1": + optional: true + + "@rollup/rollup-android-arm64@4.28.1": + optional: true + + "@rollup/rollup-darwin-arm64@4.28.1": + optional: true + + "@rollup/rollup-darwin-x64@4.28.1": + optional: true + + "@rollup/rollup-freebsd-arm64@4.28.1": + optional: true + + "@rollup/rollup-freebsd-x64@4.28.1": + optional: true + + "@rollup/rollup-linux-arm-gnueabihf@4.28.1": + optional: true + + "@rollup/rollup-linux-arm-musleabihf@4.28.1": + optional: true + + "@rollup/rollup-linux-arm64-gnu@4.28.1": + optional: true + + "@rollup/rollup-linux-arm64-musl@4.28.1": + optional: true + + "@rollup/rollup-linux-loongarch64-gnu@4.28.1": + optional: true + + "@rollup/rollup-linux-powerpc64le-gnu@4.28.1": + optional: true + + "@rollup/rollup-linux-riscv64-gnu@4.28.1": + optional: true + + "@rollup/rollup-linux-s390x-gnu@4.28.1": + optional: true + + "@rollup/rollup-linux-x64-gnu@4.28.1": + optional: true + + "@rollup/rollup-linux-x64-musl@4.28.1": + optional: true + + "@rollup/rollup-win32-arm64-msvc@4.28.1": + optional: true + + "@rollup/rollup-win32-ia32-msvc@4.28.1": + optional: true + + "@rollup/rollup-win32-x64-msvc@4.28.1": + optional: true + + "@shikijs/core@1.24.3": + dependencies: + "@shikijs/engine-javascript": 1.24.3 + "@shikijs/engine-oniguruma": 1.24.3 + "@shikijs/types": 1.24.3 + "@shikijs/vscode-textmate": 9.3.1 "@types/hast": 3.0.4 - hast-util-to-html: 9.0.3 + hast-util-to-html: 9.0.4 - "@shikijs/core@1.6.3": {} - - "@shikijs/engine-javascript@1.20.0": + "@shikijs/engine-javascript@1.24.3": dependencies: - "@shikijs/types": 1.20.0 - "@shikijs/vscode-textmate": 9.2.2 - oniguruma-to-js: 0.4.3 + "@shikijs/types": 1.24.3 + "@shikijs/vscode-textmate": 9.3.1 + oniguruma-to-es: 0.8.0 - "@shikijs/engine-oniguruma@1.20.0": + "@shikijs/engine-oniguruma@1.24.3": dependencies: - "@shikijs/types": 1.20.0 - "@shikijs/vscode-textmate": 9.2.2 + "@shikijs/types": 1.24.3 + "@shikijs/vscode-textmate": 9.3.1 - "@shikijs/types@1.20.0": + "@shikijs/types@1.24.3": dependencies: - "@shikijs/vscode-textmate": 9.2.2 + "@shikijs/vscode-textmate": 9.3.1 "@types/hast": 3.0.4 - "@shikijs/vscode-textmate@9.2.2": {} + "@shikijs/vscode-textmate@9.3.1": {} "@trysound/sax@0.2.0": {} "@types/acorn@4.0.6": dependencies: - "@types/estree": 1.0.5 - - "@types/babel__core@7.20.5": - dependencies: - "@babel/parser": 7.24.7 - "@babel/types": 7.25.6 - "@types/babel__generator": 7.6.7 - "@types/babel__template": 7.4.4 - "@types/babel__traverse": 7.20.4 - - "@types/babel__generator@7.6.7": - dependencies: - "@babel/types": 7.25.6 - - "@types/babel__template@7.4.4": - dependencies: - "@babel/parser": 7.24.7 - "@babel/types": 7.25.6 - - "@types/babel__traverse@7.20.4": - dependencies: - "@babel/types": 7.25.6 + "@types/estree": 1.0.6 "@types/cookie@0.6.0": {} @@ -6439,23 +6805,15 @@ snapshots: "@types/estree-jsx@1.0.3": dependencies: - "@types/estree": 1.0.5 - - "@types/estree@1.0.5": {} + "@types/estree": 1.0.6 "@types/estree@1.0.6": {} - "@types/hast@3.0.3": - dependencies: - "@types/unist": 3.0.2 - "@types/hast@3.0.4": dependencies: "@types/unist": 3.0.2 - "@types/mdast@4.0.3": - dependencies: - "@types/unist": 3.0.2 + "@types/js-yaml@4.0.9": {} "@types/mdast@4.0.4": dependencies: @@ -6481,43 +6839,43 @@ snapshots: "@ungap/structured-clone@1.2.0": {} - "@volar/kit@2.4.5(typescript@5.6.2)": + "@volar/kit@2.4.11(typescript@5.7.2)": dependencies: - "@volar/language-service": 2.4.5 - "@volar/typescript": 2.4.5 + "@volar/language-service": 2.4.11 + "@volar/typescript": 2.4.11 typesafe-path: 0.2.2 - typescript: 5.6.2 - vscode-languageserver-textdocument: 1.0.11 + typescript: 5.7.2 + vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 - "@volar/language-core@2.4.5": + "@volar/language-core@2.4.11": dependencies: - "@volar/source-map": 2.4.5 + "@volar/source-map": 2.4.11 - "@volar/language-server@2.4.5": + "@volar/language-server@2.4.11": dependencies: - "@volar/language-core": 2.4.5 - "@volar/language-service": 2.4.5 - "@volar/typescript": 2.4.5 + "@volar/language-core": 2.4.11 + "@volar/language-service": 2.4.11 + "@volar/typescript": 2.4.11 path-browserify: 1.0.1 request-light: 0.7.0 vscode-languageserver: 9.0.1 vscode-languageserver-protocol: 3.17.5 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 - "@volar/language-service@2.4.5": + "@volar/language-service@2.4.11": dependencies: - "@volar/language-core": 2.4.5 + "@volar/language-core": 2.4.11 vscode-languageserver-protocol: 3.17.5 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 - "@volar/source-map@2.4.5": {} + "@volar/source-map@2.4.11": {} - "@volar/typescript@2.4.5": + "@volar/typescript@2.4.11": dependencies: - "@volar/language-core": 2.4.5 + "@volar/language-core": 2.4.11 path-browserify: 1.0.1 vscode-uri: 3.0.8 @@ -6525,17 +6883,17 @@ snapshots: dependencies: emmet: 2.4.6 jsonc-parser: 2.3.1 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-languageserver-types: 3.17.5 vscode-uri: 2.1.2 "@vscode/l10n@0.0.18": {} - acorn-jsx@5.3.2(acorn@8.12.1): + acorn-jsx@5.3.2(acorn@8.14.0): dependencies: - acorn: 8.12.1 + acorn: 8.14.0 - acorn@8.12.1: {} + acorn@8.14.0: {} ajv@8.17.1: dependencies: @@ -6552,10 +6910,6 @@ snapshots: ansi-regex@6.0.1: {} - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 @@ -6577,90 +6931,100 @@ snapshots: argparse@2.0.1: {} - aria-query@5.3.0: - dependencies: - dequal: 2.0.3 + aria-query@5.3.2: {} array-iterate@2.0.1: {} astring@1.8.6: {} - astro-expressive-code@0.35.6(astro@4.15.9(rollup@4.22.5)(typescript@5.6.2)): + astro-expressive-code@0.38.3(astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1)): dependencies: - astro: 4.15.9(rollup@4.22.5)(typescript@5.6.2) - rehype-expressive-code: 0.35.6 + astro: 5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1) + rehype-expressive-code: 0.38.3 - astro@4.15.9(rollup@4.22.5)(typescript@5.6.2): + astro@5.1.0(jiti@2.4.2)(rollup@4.28.1)(typescript@5.7.2)(yaml@2.5.1): dependencies: "@astrojs/compiler": 2.10.3 - "@astrojs/internal-helpers": 0.4.1 - "@astrojs/markdown-remark": 5.2.0 - "@astrojs/telemetry": 3.1.0 - "@babel/core": 7.25.2 - "@babel/plugin-transform-react-jsx": 7.25.2(@babel/core@7.25.2) - "@babel/types": 7.25.6 + "@astrojs/internal-helpers": 0.4.2 + "@astrojs/markdown-remark": 6.0.1 + "@astrojs/telemetry": 3.2.0 "@oslojs/encoding": 1.1.0 - "@rollup/pluginutils": 5.1.2(rollup@4.22.5) - "@types/babel__core": 7.20.5 + "@rollup/pluginutils": 5.1.4(rollup@4.28.1) "@types/cookie": 0.6.0 - acorn: 8.12.1 - aria-query: 5.3.0 + acorn: 8.14.0 + aria-query: 5.3.2 axobject-query: 4.1.0 - boxen: 7.1.1 - ci-info: 4.0.0 + boxen: 8.0.1 + ci-info: 4.1.0 clsx: 2.1.1 common-ancestor-path: 1.0.1 - cookie: 0.6.0 + cookie: 0.7.2 cssesc: 3.0.0 debug: 4.3.7 deterministic-object-hash: 2.0.2 - devalue: 5.0.0 + devalue: 5.1.1 diff: 5.2.0 dlv: 1.1.3 - dset: 3.1.3 + dset: 3.1.4 es-module-lexer: 1.5.4 esbuild: 0.21.5 estree-walker: 3.0.3 fast-glob: 3.3.2 - fastq: 1.17.1 flattie: 1.1.1 github-slugger: 2.0.0 - gray-matter: 4.0.3 html-escaper: 3.0.3 http-cache-semantics: 4.1.1 js-yaml: 4.1.0 kleur: 4.1.5 - magic-string: 0.30.11 + magic-string: 0.30.17 magicast: 0.3.5 micromatch: 4.0.8 mrmime: 2.0.0 neotraverse: 0.6.18 - ora: 8.1.0 p-limit: 6.1.0 p-queue: 8.0.1 preferred-pm: 4.0.0 prompts: 2.4.2 - rehype: 13.0.1 + rehype: 13.0.2 semver: 7.6.3 - shiki: 1.20.0 - string-width: 7.2.0 - strip-ansi: 7.1.0 - tinyexec: 0.3.0 - tsconfck: 3.1.3(typescript@5.6.2) + shiki: 1.24.3 + tinyexec: 0.3.1 + tsconfck: 3.1.4(typescript@5.7.2) + ultrahtml: 1.5.3 unist-util-visit: 5.0.0 + unstorage: 1.14.0 vfile: 6.0.3 - vite: 5.4.8 - vitefu: 1.0.2(vite@5.4.8) + vite: 6.0.4(jiti@2.4.2)(yaml@2.5.1) + vitefu: 1.0.4(vite@6.0.4(jiti@2.4.2)(yaml@2.5.1)) which-pm: 3.0.0 - xxhash-wasm: 1.0.2 + xxhash-wasm: 1.1.0 yargs-parser: 21.1.1 - zod: 3.23.8 - zod-to-json-schema: 3.23.3(zod@3.23.8) - zod-to-ts: 1.2.0(typescript@5.6.2)(zod@3.23.8) + yocto-spinner: 0.1.2 + zod: 3.24.1 + zod-to-json-schema: 3.24.1(zod@3.24.1) + zod-to-ts: 1.2.0(typescript@5.7.2)(zod@3.24.1) optionalDependencies: sharp: 0.33.5 transitivePeerDependencies: + - "@azure/app-configuration" + - "@azure/cosmos" + - "@azure/data-tables" + - "@azure/identity" + - "@azure/keyvault-secrets" + - "@azure/storage-blob" + - "@capacitor/preferences" + - "@deno/kv" + - "@netlify/blobs" + - "@planetscale/database" - "@types/node" + - "@upstash/redis" + - "@vercel/blob" + - "@vercel/kv" + - aws4fetch + - db0 + - idb-keyval + - ioredis + - jiti - less - lightningcss - rollup @@ -6670,17 +7034,10 @@ snapshots: - sugarss - supports-color - terser + - tsx - typescript - - autoprefixer@10.4.20(postcss@8.4.38): - dependencies: - browserslist: 4.24.0 - caniuse-lite: 1.0.30001664 - fraction.js: 4.3.7 - normalize-range: 0.1.2 - picocolors: 1.1.0 - postcss: 8.4.38 - postcss-value-parser: 4.2.0 + - uploadthing + - yaml autoprefixer@10.4.20(postcss@8.4.47): dependencies: @@ -6692,6 +7049,16 @@ snapshots: postcss: 8.4.47 postcss-value-parser: 4.2.0 + autoprefixer@10.4.20(postcss@8.4.49): + dependencies: + browserslist: 4.24.0 + caniuse-lite: 1.0.30001664 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.1.0 + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + axobject-query@4.1.0: {} bail@2.0.2: {} @@ -6712,25 +7079,20 @@ snapshots: boolbase@1.0.0: {} - boxen@7.1.1: + boxen@8.0.1: dependencies: ansi-align: 3.0.1 - camelcase: 7.0.1 + camelcase: 8.0.0 chalk: 5.3.0 cli-boxes: 3.0.0 - string-width: 5.1.2 - type-fest: 2.19.0 - widest-line: 4.0.1 - wrap-ansi: 8.1.0 + string-width: 7.2.0 + type-fest: 4.30.2 + widest-line: 5.0.0 + wrap-ansi: 9.0.0 - brace-expansion@1.1.11: + brace-expansion@2.0.1: dependencies: balanced-match: 1.0.2 - concat-map: 0.0.1 - - braces@3.0.2: - dependencies: - fill-range: 7.0.1 braces@3.0.3: dependencies: @@ -6745,7 +7107,7 @@ snapshots: camelcase-css@2.0.1: {} - camelcase@7.0.1: {} + camelcase@8.0.0: {} caniuse-api@3.0.0: dependencies: @@ -6760,12 +7122,6 @@ snapshots: ccount@2.0.1: {} - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - chalk@5.3.0: {} character-entities-html4@2.1.0: {} @@ -6779,7 +7135,7 @@ snapshots: chokidar@3.6.0: dependencies: anymatch: 3.1.3 - braces: 3.0.2 + braces: 3.0.3 glob-parent: 5.1.2 is-binary-path: 2.1.0 is-glob: 4.0.3 @@ -6788,15 +7144,23 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - ci-info@4.0.0: {} + chokidar@4.0.3: + dependencies: + readdirp: 4.0.2 + + ci-info@4.1.0: {} + + citty@0.1.6: + dependencies: + consola: 3.2.3 cli-boxes@3.0.0: {} - cli-cursor@5.0.0: + clipboardy@4.0.0: dependencies: - restore-cursor: 5.1.0 - - cli-spinners@2.9.2: {} + execa: 8.0.1 + is-wsl: 3.1.0 + is64bit: 2.0.0 cliui@8.0.1: dependencies: @@ -6808,16 +7172,10 @@ snapshots: collapse-white-space@2.1.0: {} - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - color-convert@2.0.1: dependencies: color-name: 1.1.4 - color-name@1.1.3: {} - color-name@1.1.4: {} color-string@1.9.1: @@ -6840,31 +7198,43 @@ snapshots: common-ancestor-path@1.0.1: {} - concat-map@0.0.1: {} + confbox@0.1.8: {} - convert-source-map@2.0.0: {} + consola@3.2.3: {} - cookie@0.6.0: {} + cookie-es@1.2.2: {} - css-blank-pseudo@7.0.0(postcss@8.4.38): + cookie@0.7.2: {} + + cross-spawn@7.0.6: dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 - css-declaration-sorter@7.2.0(postcss@8.4.38): + crossws@0.3.1: dependencies: - postcss: 8.4.38 + uncrypto: 0.1.3 - css-has-pseudo@7.0.0(postcss@8.4.38): + css-blank-pseudo@7.0.1(postcss@8.4.47): dependencies: - "@csstools/selector-specificity": 4.0.0(postcss-selector-parser@6.1.0) - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 + + css-declaration-sorter@7.2.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + + css-has-pseudo@7.0.2(postcss@8.4.47): + dependencies: + "@csstools/selector-specificity": 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 postcss-value-parser: 4.2.0 - css-prefers-color-scheme@10.0.0(postcss@8.4.38): + css-prefers-color-scheme@10.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 css-select@5.1.0: dependencies: @@ -6888,62 +7258,58 @@ snapshots: css-what@6.1.0: {} - cssdb@8.1.1: {} + cssdb@8.2.3: {} cssesc@3.0.0: {} - cssnano-preset-default@7.0.6(postcss@8.4.38): + cssnano-preset-default@7.0.6(postcss@8.4.47): dependencies: browserslist: 4.24.0 - css-declaration-sorter: 7.2.0(postcss@8.4.38) - cssnano-utils: 5.0.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-calc: 10.0.2(postcss@8.4.38) - postcss-colormin: 7.0.2(postcss@8.4.38) - postcss-convert-values: 7.0.4(postcss@8.4.38) - postcss-discard-comments: 7.0.3(postcss@8.4.38) - postcss-discard-duplicates: 7.0.1(postcss@8.4.38) - postcss-discard-empty: 7.0.0(postcss@8.4.38) - postcss-discard-overridden: 7.0.0(postcss@8.4.38) - postcss-merge-longhand: 7.0.4(postcss@8.4.38) - postcss-merge-rules: 7.0.4(postcss@8.4.38) - postcss-minify-font-values: 7.0.0(postcss@8.4.38) - postcss-minify-gradients: 7.0.0(postcss@8.4.38) - postcss-minify-params: 7.0.2(postcss@8.4.38) - postcss-minify-selectors: 7.0.4(postcss@8.4.38) - postcss-normalize-charset: 7.0.0(postcss@8.4.38) - postcss-normalize-display-values: 7.0.0(postcss@8.4.38) - postcss-normalize-positions: 7.0.0(postcss@8.4.38) - postcss-normalize-repeat-style: 7.0.0(postcss@8.4.38) - postcss-normalize-string: 7.0.0(postcss@8.4.38) - postcss-normalize-timing-functions: 7.0.0(postcss@8.4.38) - postcss-normalize-unicode: 7.0.2(postcss@8.4.38) - postcss-normalize-url: 7.0.0(postcss@8.4.38) - postcss-normalize-whitespace: 7.0.0(postcss@8.4.38) - postcss-ordered-values: 7.0.1(postcss@8.4.38) - postcss-reduce-initial: 7.0.2(postcss@8.4.38) - postcss-reduce-transforms: 7.0.0(postcss@8.4.38) - postcss-svgo: 7.0.1(postcss@8.4.38) - postcss-unique-selectors: 7.0.3(postcss@8.4.38) + css-declaration-sorter: 7.2.0(postcss@8.4.47) + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 + postcss-calc: 10.0.2(postcss@8.4.47) + postcss-colormin: 7.0.2(postcss@8.4.47) + postcss-convert-values: 7.0.4(postcss@8.4.47) + postcss-discard-comments: 7.0.3(postcss@8.4.47) + postcss-discard-duplicates: 7.0.1(postcss@8.4.47) + postcss-discard-empty: 7.0.0(postcss@8.4.47) + postcss-discard-overridden: 7.0.0(postcss@8.4.47) + postcss-merge-longhand: 7.0.4(postcss@8.4.47) + postcss-merge-rules: 7.0.4(postcss@8.4.47) + postcss-minify-font-values: 7.0.0(postcss@8.4.47) + postcss-minify-gradients: 7.0.0(postcss@8.4.47) + postcss-minify-params: 7.0.2(postcss@8.4.47) + postcss-minify-selectors: 7.0.4(postcss@8.4.47) + postcss-normalize-charset: 7.0.0(postcss@8.4.47) + postcss-normalize-display-values: 7.0.0(postcss@8.4.47) + postcss-normalize-positions: 7.0.0(postcss@8.4.47) + postcss-normalize-repeat-style: 7.0.0(postcss@8.4.47) + postcss-normalize-string: 7.0.0(postcss@8.4.47) + postcss-normalize-timing-functions: 7.0.0(postcss@8.4.47) + postcss-normalize-unicode: 7.0.2(postcss@8.4.47) + postcss-normalize-url: 7.0.0(postcss@8.4.47) + postcss-normalize-whitespace: 7.0.0(postcss@8.4.47) + postcss-ordered-values: 7.0.1(postcss@8.4.47) + postcss-reduce-initial: 7.0.2(postcss@8.4.47) + postcss-reduce-transforms: 7.0.0(postcss@8.4.47) + postcss-svgo: 7.0.1(postcss@8.4.47) + postcss-unique-selectors: 7.0.3(postcss@8.4.47) - cssnano-utils@5.0.0(postcss@8.4.38): + cssnano-utils@5.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - cssnano@7.0.6(postcss@8.4.38): + cssnano@7.0.6(postcss@8.4.47): dependencies: - cssnano-preset-default: 7.0.6(postcss@8.4.38) + cssnano-preset-default: 7.0.6(postcss@8.4.47) lilconfig: 3.1.2 - postcss: 8.4.38 + postcss: 8.4.47 csso@5.0.5: dependencies: css-tree: 2.2.1 - debug@4.3.4: - dependencies: - ms: 2.1.2 - debug@4.3.7: dependencies: ms: 2.1.3 @@ -6952,15 +7318,21 @@ snapshots: dependencies: character-entities: 2.0.2 + defu@6.1.4: {} + dequal@2.0.3: {} + destr@2.0.3: {} + + detect-libc@1.0.3: {} + detect-libc@2.0.3: {} deterministic-object-hash@2.0.2: dependencies: base-64: 1.0.0 - devalue@5.0.0: {} + devalue@5.1.1: {} devlop@1.1.0: dependencies: @@ -6992,7 +7364,7 @@ snapshots: domelementtype: 2.3.0 domhandler: 5.0.3 - dset@3.1.3: {} + dset@3.1.4: {} eastasianwidth@0.2.0: {} @@ -7003,6 +7375,8 @@ snapshots: "@emmetio/abbreviation": 2.3.3 "@emmetio/css-abbreviation": 2.1.8 + emoji-regex-xs@1.0.0: {} + emoji-regex@10.3.0: {} emoji-regex@8.0.0: {} @@ -7013,6 +7387,20 @@ snapshots: es-module-lexer@1.5.4: {} + esast-util-from-estree@2.0.0: + dependencies: + "@types/estree-jsx": 1.0.3 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + unist-util-position-from-estree: 2.0.0 + + esast-util-from-js@2.0.1: + dependencies: + "@types/estree-jsx": 1.0.3 + acorn: 8.14.0 + esast-util-from-estree: 2.0.0 + vfile-message: 4.0.2 + esbuild@0.21.5: optionalDependencies: "@esbuild/aix-ppc64": 0.21.5 @@ -7039,19 +7427,42 @@ snapshots: "@esbuild/win32-ia32": 0.21.5 "@esbuild/win32-x64": 0.21.5 - escalade@3.1.1: {} + esbuild@0.24.0: + optionalDependencies: + "@esbuild/aix-ppc64": 0.24.0 + "@esbuild/android-arm": 0.24.0 + "@esbuild/android-arm64": 0.24.0 + "@esbuild/android-x64": 0.24.0 + "@esbuild/darwin-arm64": 0.24.0 + "@esbuild/darwin-x64": 0.24.0 + "@esbuild/freebsd-arm64": 0.24.0 + "@esbuild/freebsd-x64": 0.24.0 + "@esbuild/linux-arm": 0.24.0 + "@esbuild/linux-arm64": 0.24.0 + "@esbuild/linux-ia32": 0.24.0 + "@esbuild/linux-loong64": 0.24.0 + "@esbuild/linux-mips64el": 0.24.0 + "@esbuild/linux-ppc64": 0.24.0 + "@esbuild/linux-riscv64": 0.24.0 + "@esbuild/linux-s390x": 0.24.0 + "@esbuild/linux-x64": 0.24.0 + "@esbuild/netbsd-x64": 0.24.0 + "@esbuild/openbsd-arm64": 0.24.0 + "@esbuild/openbsd-x64": 0.24.0 + "@esbuild/sunos-x64": 0.24.0 + "@esbuild/win32-arm64": 0.24.0 + "@esbuild/win32-ia32": 0.24.0 + "@esbuild/win32-x64": 0.24.0 escalade@3.2.0: {} - escape-string-regexp@1.0.5: {} - escape-string-regexp@5.0.0: {} esprima@4.0.1: {} estree-util-attach-comments@3.0.0: dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 estree-util-build-jsx@3.0.1: dependencies: @@ -7062,6 +7473,11 @@ snapshots: estree-util-is-identifier-name@3.0.0: {} + estree-util-scope@1.0.0: + dependencies: + "@types/estree": 1.0.6 + devlop: 1.1.0 + estree-util-to-js@2.0.0: dependencies: "@types/estree-jsx": 1.0.3 @@ -7077,20 +7493,28 @@ snapshots: estree-walker@3.0.3: dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 eventemitter3@5.0.1: {} - expressive-code@0.35.6: + execa@8.0.1: dependencies: - "@expressive-code/core": 0.35.6 - "@expressive-code/plugin-frames": 0.35.6 - "@expressive-code/plugin-shiki": 0.35.6 - "@expressive-code/plugin-text-markers": 0.35.6 + cross-spawn: 7.0.6 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.3.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 - extend-shallow@2.0.1: + expressive-code@0.38.3: dependencies: - is-extendable: 0.1.1 + "@expressive-code/core": 0.38.3 + "@expressive-code/plugin-frames": 0.38.3 + "@expressive-code/plugin-shiki": 0.38.3 + "@expressive-code/plugin-text-markers": 0.38.3 extend@3.0.2: {} @@ -7102,22 +7526,14 @@ snapshots: "@nodelib/fs.walk": 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.5 + micromatch: 4.0.8 fast-uri@3.0.2: {} - fastq@1.15.0: - dependencies: - reusify: 1.0.4 - fastq@1.17.1: dependencies: reusify: 1.0.4 - fill-range@7.0.1: - dependencies: - to-regex-range: 5.0.1 - fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -7136,21 +7552,26 @@ snapshots: flattie@1.1.1: {} - fraction.js@4.3.7: {} + foreground-child@3.3.0: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 - fs.realpath@1.0.0: {} + fraction.js@4.3.7: {} fsevents@2.3.3: optional: true function-bind@1.1.2: {} - gensync@1.0.0-beta.2: {} - get-caller-file@2.0.5: {} get-east-asian-width@1.2.0: {} + get-port-please@3.1.2: {} + + get-stream@8.0.1: {} + github-slugger@2.0.0: {} glob-parent@5.1.2: @@ -7161,27 +7582,29 @@ snapshots: dependencies: is-glob: 4.0.3 - glob@7.1.6: + glob@10.4.5: dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - globals@11.12.0: {} + foreground-child: 3.3.0 + jackspeak: 3.4.3 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 graceful-fs@4.2.11: {} - gray-matter@4.0.3: + h3@1.13.0: dependencies: - js-yaml: 3.14.1 - kind-of: 6.0.3 - section-matter: 1.0.0 - strip-bom-string: 1.0.0 - - has-flag@3.0.0: {} + cookie-es: 1.2.2 + crossws: 0.3.1 + defu: 6.1.4 + destr: 2.0.3 + iron-webcrypto: 1.2.1 + ohash: 1.1.4 + radix3: 1.1.2 + ufo: 1.5.4 + uncrypto: 0.1.3 + unenv: 1.10.0 hasown@2.0.0: dependencies: @@ -7201,6 +7624,15 @@ snapshots: vfile: 6.0.3 vfile-message: 4.0.2 + hast-util-from-html@2.0.3: + dependencies: + "@types/hast": 3.0.4 + devlop: 1.1.0 + hast-util-from-parse5: 8.0.1 + parse5: 7.1.2 + vfile: 6.0.3 + vfile-message: 4.0.2 + hast-util-from-parse5@8.0.1: dependencies: "@types/hast": 3.0.4 @@ -7273,7 +7705,7 @@ snapshots: hast-util-to-estree@3.1.0: dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 "@types/estree-jsx": 1.0.3 "@types/hast": 3.0.4 comma-separated-tokens: 2.0.3 @@ -7292,13 +7724,12 @@ snapshots: transitivePeerDependencies: - supports-color - hast-util-to-html@9.0.1: + hast-util-to-html@9.0.3: dependencies: "@types/hast": 3.0.4 "@types/unist": 3.0.2 ccount: 2.0.1 comma-separated-tokens: 2.0.3 - hast-util-raw: 9.0.1 hast-util-whitespace: 3.0.0 html-void-elements: 3.0.0 mdast-util-to-hast: 13.0.2 @@ -7307,7 +7738,7 @@ snapshots: stringify-entities: 4.0.3 zwitch: 2.0.4 - hast-util-to-html@9.0.3: + hast-util-to-html@9.0.4: dependencies: "@types/hast": 3.0.4 "@types/unist": 3.0.2 @@ -7323,7 +7754,7 @@ snapshots: hast-util-to-jsx-runtime@2.3.0: dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 "@types/hast": 3.0.4 "@types/unist": 3.0.2 comma-separated-tokens: 2.0.3 @@ -7357,7 +7788,7 @@ snapshots: hast-util-to-text@4.0.2: dependencies: - "@types/hast": 3.0.3 + "@types/hast": 3.0.4 "@types/unist": 3.0.2 hast-util-is-element: 3.0.0 unist-util-find-after: 5.0.0 @@ -7390,23 +7821,22 @@ snapshots: http-cache-semantics@4.1.1: {} + http-shutdown@1.2.2: {} + + human-signals@5.0.0: {} + i18next@23.15.1: dependencies: "@babel/runtime": 7.25.6 import-meta-resolve@4.1.0: {} - inflight@1.0.6: - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - inherits@2.0.4: {} - inline-style-parser@0.1.1: {} inline-style-parser@0.2.2: {} + iron-webcrypto@1.2.1: {} + is-alphabetical@2.0.1: {} is-alphanumerical@2.0.1: @@ -7428,8 +7858,6 @@ snapshots: is-docker@3.0.0: {} - is-extendable@0.1.1: {} - is-extglob@2.1.1: {} is-fullwidth-code-point@3.0.0: {} @@ -7444,27 +7872,31 @@ snapshots: dependencies: is-docker: 3.0.0 - is-interactive@2.0.0: {} - is-number@7.0.0: {} is-plain-obj@4.1.0: {} - is-reference@3.0.2: - dependencies: - "@types/estree": 1.0.5 - - is-unicode-supported@1.3.0: {} - - is-unicode-supported@2.0.0: {} + is-stream@3.0.0: {} is-wsl@3.1.0: dependencies: is-inside-container: 1.0.0 - jiti@1.21.0: {} + is64bit@2.0.0: + dependencies: + system-architecture: 0.1.0 - js-tokens@4.0.0: {} + isexe@2.0.0: {} + + jackspeak@3.4.3: + dependencies: + "@isaacs/cliui": 8.0.2 + optionalDependencies: + "@pkgjs/parseargs": 0.11.0 + + jiti@1.21.7: {} + + jiti@2.4.2: {} js-yaml@3.14.1: dependencies: @@ -7475,30 +7907,43 @@ snapshots: dependencies: argparse: 2.0.1 - jsesc@2.5.2: {} - json-schema-traverse@1.0.0: {} - json5@2.2.3: {} - jsonc-parser@2.3.1: {} jsonc-parser@3.3.1: {} - kind-of@6.0.3: {} - kleur@3.0.3: {} kleur@4.1.5: {} - lilconfig@2.1.0: {} - - lilconfig@3.1.1: {} - lilconfig@3.1.2: {} + lilconfig@3.1.3: {} + lines-and-columns@1.2.4: {} + listhen@1.9.0: + dependencies: + "@parcel/watcher": 2.5.0 + "@parcel/watcher-wasm": 2.5.0 + citty: 0.1.6 + clipboardy: 4.0.0 + consola: 3.2.3 + crossws: 0.3.1 + defu: 6.1.4 + get-port-please: 3.1.2 + h3: 1.13.0 + http-shutdown: 1.2.2 + jiti: 2.4.2 + mlly: 1.7.3 + node-forge: 1.3.1 + pathe: 1.1.2 + std-env: 3.8.0 + ufo: 1.5.4 + untun: 0.1.3 + uqr: 0.1.2 + load-yaml-file@0.2.0: dependencies: graceful-fs: 4.2.11 @@ -7516,18 +7961,11 @@ snapshots: lodash@4.17.21: {} - log-symbols@6.0.0: - dependencies: - chalk: 5.3.0 - is-unicode-supported: 1.3.0 - longest-streak@3.1.0: {} - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 + lru-cache@10.4.3: {} - magic-string@0.30.11: + magic-string@0.30.17: dependencies: "@jridgewell/sourcemap-codec": 1.5.0 @@ -7535,7 +7973,7 @@ snapshots: dependencies: "@babel/parser": 7.25.6 "@babel/types": 7.25.6 - source-map-js: 1.2.0 + source-map-js: 1.2.1 markdown-extensions@2.0.0: {} @@ -7543,7 +7981,7 @@ snapshots: mdast-util-definitions@6.0.0: dependencies: - "@types/mdast": 4.0.3 + "@types/mdast": 4.0.4 "@types/unist": 3.0.2 unist-util-visit: 5.0.0 @@ -7726,6 +8164,8 @@ snapshots: mdn-data@2.0.30: {} + merge-stream@2.0.0: {} + merge2@1.4.1: {} micromark-core-commonmark@2.0.0: @@ -7817,7 +8257,7 @@ snapshots: micromark-extension-mdx-expression@3.0.0: dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 devlop: 1.1.0 micromark-factory-mdx-expression: 2.0.1 micromark-factory-space: 2.0.0 @@ -7829,7 +8269,7 @@ snapshots: micromark-extension-mdx-jsx@3.0.0: dependencies: "@types/acorn": 4.0.6 - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 micromark-factory-mdx-expression: 2.0.1 @@ -7845,7 +8285,7 @@ snapshots: micromark-extension-mdxjs-esm@3.0.0: dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 devlop: 1.1.0 micromark-core-commonmark: 2.0.0 micromark-util-character: 2.0.1 @@ -7857,8 +8297,8 @@ snapshots: micromark-extension-mdxjs@3.0.0: dependencies: - acorn: 8.12.1 - acorn-jsx: 5.3.2(acorn@8.12.1) + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) micromark-extension-mdx-expression: 3.0.0 micromark-extension-mdx-jsx: 3.0.0 micromark-extension-mdx-md: 2.0.0 @@ -7881,7 +8321,7 @@ snapshots: micromark-factory-mdx-expression@2.0.1: dependencies: - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 devlop: 1.1.0 micromark-util-character: 2.0.1 micromark-util-events-to-acorn: 2.0.2 @@ -7945,7 +8385,7 @@ snapshots: micromark-util-events-to-acorn@2.0.2: dependencies: "@types/acorn": 4.0.6 - "@types/estree": 1.0.5 + "@types/estree": 1.0.6 "@types/unist": 3.0.2 devlop: 1.1.0 estree-util-visit: 2.0.0 @@ -7983,7 +8423,7 @@ snapshots: micromark@4.0.0: dependencies: "@types/debug": 4.1.12 - debug: 4.3.4 + debug: 4.3.7 decode-named-character-reference: 1.0.2 devlop: 1.1.0 micromark-core-commonmark: 2.0.0 @@ -8002,26 +8442,30 @@ snapshots: transitivePeerDependencies: - supports-color - micromatch@4.0.5: - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - micromatch@4.0.8: dependencies: braces: 3.0.3 picomatch: 2.3.1 - mimic-function@5.0.1: {} + mime@3.0.0: {} - minimatch@3.1.2: + mimic-fn@4.0.0: {} + + minimatch@9.0.5: dependencies: - brace-expansion: 1.1.11 + brace-expansion: 2.0.1 + + minipass@7.1.2: {} + + mlly@1.7.3: + dependencies: + acorn: 8.14.0 + pathe: 1.1.2 + pkg-types: 1.2.1 + ufo: 1.5.4 mrmime@2.0.0: {} - ms@2.1.2: {} - ms@2.1.3: {} muggle-string@0.4.1: {} @@ -8040,6 +8484,12 @@ snapshots: dependencies: "@types/nlcst": 2.0.3 + node-addon-api@7.1.1: {} + + node-fetch-native@1.6.4: {} + + node-forge@1.3.1: {} + node-releases@2.0.18: {} normalize-path@3.0.0: {} @@ -8048,6 +8498,10 @@ snapshots: not@0.1.0: {} + npm-run-path@5.3.0: + dependencies: + path-key: 4.0.0 + nth-check@2.1.1: dependencies: boolbase: 1.0.0 @@ -8056,29 +8510,23 @@ snapshots: object-hash@3.0.0: {} - once@1.4.0: + ofetch@1.4.1: dependencies: - wrappy: 1.0.2 + destr: 2.0.3 + node-fetch-native: 1.6.4 + ufo: 1.5.4 - onetime@7.0.0: - dependencies: - mimic-function: 5.0.1 + ohash@1.1.4: {} - oniguruma-to-js@0.4.3: + onetime@6.0.0: dependencies: - regex: 4.3.2 + mimic-fn: 4.0.0 - ora@8.1.0: + oniguruma-to-es@0.8.0: dependencies: - chalk: 5.3.0 - cli-cursor: 5.0.0 - cli-spinners: 2.9.2 - is-interactive: 2.0.0 - is-unicode-supported: 2.0.0 - log-symbols: 6.0.0 - stdin-discarder: 0.2.2 - string-width: 7.2.0 - strip-ansi: 7.1.0 + emoji-regex-xs: 1.0.0 + regex: 5.0.2 + regex-recursion: 5.0.0 p-limit@2.3.0: dependencies: @@ -8101,6 +8549,8 @@ snapshots: p-try@2.2.0: {} + package-json-from-dist@1.0.1: {} + pagefind@1.0.4: optionalDependencies: "@pagefind/darwin-arm64": 1.0.4 @@ -8137,22 +8587,29 @@ snapshots: path-exists@4.0.0: {} - path-is-absolute@1.0.1: {} + path-key@3.1.1: {} + + path-key@4.0.0: {} path-parse@1.0.7: {} - periscopic@3.1.0: + path-scurry@1.11.1: dependencies: - "@types/estree": 1.0.5 - estree-walker: 3.0.3 - is-reference: 3.0.2 + lru-cache: 10.4.3 + minipass: 7.1.2 + + pathe@1.1.2: {} picocolors@1.0.0: {} picocolors@1.1.0: {} + picocolors@1.1.1: {} + picomatch@2.3.1: {} + picomatch@4.0.2: {} + pify@2.3.0: {} pify@4.0.1: {} @@ -8163,418 +8620,431 @@ snapshots: dependencies: find-up: 4.1.0 - postcss-attribute-case-insensitive@7.0.0(postcss@8.4.38): + pkg-types@1.2.1: dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + confbox: 0.1.8 + mlly: 1.7.3 + pathe: 1.1.2 - postcss-calc@10.0.2(postcss@8.4.38): + postcss-attribute-case-insensitive@7.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 + + postcss-calc@10.0.2(postcss@8.4.47): + dependencies: + postcss: 8.4.47 postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 - postcss-clamp@4.1.0(postcss@8.4.38): + postcss-clamp@4.1.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-color-functional-notation@7.0.2(postcss@8.4.38): + postcss-color-functional-notation@7.0.6(postcss@8.4.47): dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 - postcss-color-hex-alpha@10.0.0(postcss@8.4.38): + postcss-color-hex-alpha@10.0.0(postcss@8.4.47): dependencies: - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-color-rebeccapurple@10.0.0(postcss@8.4.38): + postcss-color-rebeccapurple@10.0.0(postcss@8.4.47): dependencies: - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-colormin@7.0.2(postcss@8.4.38): + postcss-colormin@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.24.0 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-convert-values@7.0.4(postcss@8.4.38): + postcss-convert-values@7.0.4(postcss@8.4.47): dependencies: browserslist: 4.24.0 - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-custom-media@11.0.1(postcss@8.4.38): + postcss-custom-media@11.0.5(postcss@8.4.47): dependencies: - "@csstools/cascade-layer-name-parser": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/media-query-list-parser": 3.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - postcss: 8.4.38 + "@csstools/cascade-layer-name-parser": 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/media-query-list-parser": 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + postcss: 8.4.47 - postcss-custom-properties@14.0.1(postcss@8.4.38): + postcss-custom-properties@14.0.4(postcss@8.4.47): dependencies: - "@csstools/cascade-layer-name-parser": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/cascade-layer-name-parser": 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-custom-selectors@8.0.1(postcss@8.4.38): + postcss-custom-selectors@8.0.4(postcss@8.4.47): dependencies: - "@csstools/cascade-layer-name-parser": 2.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + "@csstools/cascade-layer-name-parser": 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - postcss-dir-pseudo-class@9.0.0(postcss@8.4.38): + postcss-dir-pseudo-class@9.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - postcss-discard-comments@7.0.3(postcss@8.4.38): + postcss-discard-comments@7.0.3(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-discard-duplicates@7.0.1(postcss@8.4.38): + postcss-discard-duplicates@7.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-discard-empty@7.0.0(postcss@8.4.38): + postcss-discard-empty@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-discard-overridden@7.0.0(postcss@8.4.38): + postcss-discard-overridden@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-double-position-gradients@6.0.0(postcss@8.4.38): + postcss-double-position-gradients@6.0.0(postcss@8.4.47): dependencies: - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-focus-visible@10.0.0(postcss@8.4.38): + postcss-focus-visible@10.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - postcss-focus-within@9.0.0(postcss@8.4.38): + postcss-focus-within@9.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - postcss-font-variant@5.0.0(postcss@8.4.38): + postcss-font-variant@5.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-gap-properties@6.0.0(postcss@8.4.38): + postcss-gap-properties@6.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-image-set-function@7.0.0(postcss@8.4.38): + postcss-image-set-function@7.0.0(postcss@8.4.47): dependencies: - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-import@15.1.0(postcss@8.4.38): + postcss-import@15.1.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 - postcss-js@4.0.1(postcss@8.4.38): + postcss-js@4.0.1(postcss@8.4.47): dependencies: camelcase-css: 2.0.1 - postcss: 8.4.38 + postcss: 8.4.47 - postcss-lab-function@7.0.2(postcss@8.4.38): + postcss-lab-function@7.0.6(postcss@8.4.47): dependencies: - "@csstools/css-color-parser": 3.0.2(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1) - "@csstools/css-parser-algorithms": 3.0.1(@csstools/css-tokenizer@3.0.1) - "@csstools/css-tokenizer": 3.0.1 - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/utilities": 2.0.0(postcss@8.4.38) - postcss: 8.4.38 - - postcss-load-config@4.0.2(postcss@8.4.38): - dependencies: - lilconfig: 3.1.1 - yaml: 2.3.4 - optionalDependencies: - postcss: 8.4.38 + "@csstools/css-color-parser": 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + "@csstools/css-parser-algorithms": 3.0.4(@csstools/css-tokenizer@3.0.3) + "@csstools/css-tokenizer": 3.0.3 + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/utilities": 2.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-load-config@4.0.2(postcss@8.4.47): dependencies: - lilconfig: 3.1.1 - yaml: 2.3.4 + lilconfig: 3.1.2 + yaml: 2.5.1 optionalDependencies: postcss: 8.4.47 - postcss-logical@8.0.0(postcss@8.4.38): + postcss-load-config@4.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.38 + lilconfig: 3.1.2 + yaml: 2.5.1 + optionalDependencies: + postcss: 8.4.49 + + postcss-logical@8.0.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-merge-longhand@7.0.4(postcss@8.4.38): + postcss-merge-longhand@7.0.4(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - stylehacks: 7.0.4(postcss@8.4.38) + stylehacks: 7.0.4(postcss@8.4.47) - postcss-merge-rules@7.0.4(postcss@8.4.38): + postcss-merge-rules@7.0.4(postcss@8.4.47): dependencies: browserslist: 4.24.0 caniuse-api: 3.0.0 - cssnano-utils: 5.0.0(postcss@8.4.38) - postcss: 8.4.38 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-minify-font-values@7.0.0(postcss@8.4.38): + postcss-minify-font-values@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-minify-gradients@7.0.0(postcss@8.4.38): + postcss-minify-gradients@7.0.0(postcss@8.4.47): dependencies: colord: 2.9.3 - cssnano-utils: 5.0.0(postcss@8.4.38) - postcss: 8.4.38 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-minify-params@7.0.2(postcss@8.4.38): + postcss-minify-params@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.24.0 - cssnano-utils: 5.0.0(postcss@8.4.38) - postcss: 8.4.38 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-minify-selectors@7.0.4(postcss@8.4.38): + postcss-minify-selectors@7.0.4(postcss@8.4.47): dependencies: cssesc: 3.0.0 - postcss: 8.4.38 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-nested@6.0.1(postcss@8.4.38): + postcss-nested@6.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + postcss: 8.4.47 + postcss-selector-parser: 6.1.2 - postcss-nesting@13.0.0(postcss@8.4.38): + postcss-nested@6.2.0(postcss@8.4.47): dependencies: - "@csstools/selector-resolve-nested": 2.0.0(postcss-selector-parser@6.1.0) - "@csstools/selector-specificity": 4.0.0(postcss-selector-parser@6.1.0) - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + postcss: 8.4.47 + postcss-selector-parser: 6.1.2 - postcss-normalize-charset@7.0.0(postcss@8.4.38): + postcss-nesting@13.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 + "@csstools/selector-resolve-nested": 3.0.0(postcss-selector-parser@7.0.0) + "@csstools/selector-specificity": 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - postcss-normalize-display-values@7.0.0(postcss@8.4.38): + postcss-normalize-charset@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 + + postcss-normalize-display-values@7.0.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-positions@7.0.0(postcss@8.4.38): + postcss-normalize-positions@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@7.0.0(postcss@8.4.38): + postcss-normalize-repeat-style@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-string@7.0.0(postcss@8.4.38): + postcss-normalize-string@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@7.0.0(postcss@8.4.38): + postcss-normalize-timing-functions@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-unicode@7.0.2(postcss@8.4.38): + postcss-normalize-unicode@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.24.0 - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-url@7.0.0(postcss@8.4.38): + postcss-normalize-url@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@7.0.0(postcss@8.4.38): + postcss-normalize-whitespace@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-opacity-percentage@3.0.0(postcss@8.4.38): + postcss-opacity-percentage@3.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-ordered-values@7.0.1(postcss@8.4.38): + postcss-ordered-values@7.0.1(postcss@8.4.47): dependencies: - cssnano-utils: 5.0.0(postcss@8.4.38) - postcss: 8.4.38 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-overflow-shorthand@6.0.0(postcss@8.4.38): + postcss-overflow-shorthand@6.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-page-break@3.0.4(postcss@8.4.38): + postcss-page-break@3.0.4(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-place@10.0.0(postcss@8.4.38): + postcss-place@10.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-preset-env@10.0.5(postcss@8.4.38): + postcss-preset-env@10.1.2(postcss@8.4.47): dependencies: - "@csstools/postcss-cascade-layers": 5.0.0(postcss@8.4.38) - "@csstools/postcss-color-function": 4.0.2(postcss@8.4.38) - "@csstools/postcss-color-mix-function": 3.0.2(postcss@8.4.38) - "@csstools/postcss-content-alt-text": 2.0.1(postcss@8.4.38) - "@csstools/postcss-exponential-functions": 2.0.1(postcss@8.4.38) - "@csstools/postcss-font-format-keywords": 4.0.0(postcss@8.4.38) - "@csstools/postcss-gamut-mapping": 2.0.2(postcss@8.4.38) - "@csstools/postcss-gradients-interpolation-method": 5.0.2(postcss@8.4.38) - "@csstools/postcss-hwb-function": 4.0.2(postcss@8.4.38) - "@csstools/postcss-ic-unit": 4.0.0(postcss@8.4.38) - "@csstools/postcss-initial": 2.0.0(postcss@8.4.38) - "@csstools/postcss-is-pseudo-class": 5.0.0(postcss@8.4.38) - "@csstools/postcss-light-dark-function": 2.0.4(postcss@8.4.38) - "@csstools/postcss-logical-float-and-clear": 3.0.0(postcss@8.4.38) - "@csstools/postcss-logical-overflow": 2.0.0(postcss@8.4.38) - "@csstools/postcss-logical-overscroll-behavior": 2.0.0(postcss@8.4.38) - "@csstools/postcss-logical-resize": 3.0.0(postcss@8.4.38) - "@csstools/postcss-logical-viewport-units": 3.0.1(postcss@8.4.38) - "@csstools/postcss-media-minmax": 2.0.1(postcss@8.4.38) - "@csstools/postcss-media-queries-aspect-ratio-number-values": 3.0.1(postcss@8.4.38) - "@csstools/postcss-nested-calc": 4.0.0(postcss@8.4.38) - "@csstools/postcss-normalize-display-values": 4.0.0(postcss@8.4.38) - "@csstools/postcss-oklab-function": 4.0.2(postcss@8.4.38) - "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.38) - "@csstools/postcss-relative-color-syntax": 3.0.2(postcss@8.4.38) - "@csstools/postcss-scope-pseudo-class": 4.0.0(postcss@8.4.38) - "@csstools/postcss-stepped-value-functions": 4.0.1(postcss@8.4.38) - "@csstools/postcss-text-decoration-shorthand": 4.0.1(postcss@8.4.38) - "@csstools/postcss-trigonometric-functions": 4.0.1(postcss@8.4.38) - "@csstools/postcss-unset-value": 4.0.0(postcss@8.4.38) - autoprefixer: 10.4.20(postcss@8.4.38) + "@csstools/postcss-cascade-layers": 5.0.1(postcss@8.4.47) + "@csstools/postcss-color-function": 4.0.6(postcss@8.4.47) + "@csstools/postcss-color-mix-function": 3.0.6(postcss@8.4.47) + "@csstools/postcss-content-alt-text": 2.0.4(postcss@8.4.47) + "@csstools/postcss-exponential-functions": 2.0.5(postcss@8.4.47) + "@csstools/postcss-font-format-keywords": 4.0.0(postcss@8.4.47) + "@csstools/postcss-gamut-mapping": 2.0.6(postcss@8.4.47) + "@csstools/postcss-gradients-interpolation-method": 5.0.6(postcss@8.4.47) + "@csstools/postcss-hwb-function": 4.0.6(postcss@8.4.47) + "@csstools/postcss-ic-unit": 4.0.0(postcss@8.4.47) + "@csstools/postcss-initial": 2.0.0(postcss@8.4.47) + "@csstools/postcss-is-pseudo-class": 5.0.1(postcss@8.4.47) + "@csstools/postcss-light-dark-function": 2.0.7(postcss@8.4.47) + "@csstools/postcss-logical-float-and-clear": 3.0.0(postcss@8.4.47) + "@csstools/postcss-logical-overflow": 2.0.0(postcss@8.4.47) + "@csstools/postcss-logical-overscroll-behavior": 2.0.0(postcss@8.4.47) + "@csstools/postcss-logical-resize": 3.0.0(postcss@8.4.47) + "@csstools/postcss-logical-viewport-units": 3.0.3(postcss@8.4.47) + "@csstools/postcss-media-minmax": 2.0.5(postcss@8.4.47) + "@csstools/postcss-media-queries-aspect-ratio-number-values": 3.0.4(postcss@8.4.47) + "@csstools/postcss-nested-calc": 4.0.0(postcss@8.4.47) + "@csstools/postcss-normalize-display-values": 4.0.0(postcss@8.4.47) + "@csstools/postcss-oklab-function": 4.0.6(postcss@8.4.47) + "@csstools/postcss-progressive-custom-properties": 4.0.0(postcss@8.4.47) + "@csstools/postcss-random-function": 1.0.1(postcss@8.4.47) + "@csstools/postcss-relative-color-syntax": 3.0.6(postcss@8.4.47) + "@csstools/postcss-scope-pseudo-class": 4.0.1(postcss@8.4.47) + "@csstools/postcss-sign-functions": 1.1.0(postcss@8.4.47) + "@csstools/postcss-stepped-value-functions": 4.0.5(postcss@8.4.47) + "@csstools/postcss-text-decoration-shorthand": 4.0.1(postcss@8.4.47) + "@csstools/postcss-trigonometric-functions": 4.0.5(postcss@8.4.47) + "@csstools/postcss-unset-value": 4.0.0(postcss@8.4.47) + autoprefixer: 10.4.20(postcss@8.4.47) browserslist: 4.24.0 - css-blank-pseudo: 7.0.0(postcss@8.4.38) - css-has-pseudo: 7.0.0(postcss@8.4.38) - css-prefers-color-scheme: 10.0.0(postcss@8.4.38) - cssdb: 8.1.1 - postcss: 8.4.38 - postcss-attribute-case-insensitive: 7.0.0(postcss@8.4.38) - postcss-clamp: 4.1.0(postcss@8.4.38) - postcss-color-functional-notation: 7.0.2(postcss@8.4.38) - postcss-color-hex-alpha: 10.0.0(postcss@8.4.38) - postcss-color-rebeccapurple: 10.0.0(postcss@8.4.38) - postcss-custom-media: 11.0.1(postcss@8.4.38) - postcss-custom-properties: 14.0.1(postcss@8.4.38) - postcss-custom-selectors: 8.0.1(postcss@8.4.38) - postcss-dir-pseudo-class: 9.0.0(postcss@8.4.38) - postcss-double-position-gradients: 6.0.0(postcss@8.4.38) - postcss-focus-visible: 10.0.0(postcss@8.4.38) - postcss-focus-within: 9.0.0(postcss@8.4.38) - postcss-font-variant: 5.0.0(postcss@8.4.38) - postcss-gap-properties: 6.0.0(postcss@8.4.38) - postcss-image-set-function: 7.0.0(postcss@8.4.38) - postcss-lab-function: 7.0.2(postcss@8.4.38) - postcss-logical: 8.0.0(postcss@8.4.38) - postcss-nesting: 13.0.0(postcss@8.4.38) - postcss-opacity-percentage: 3.0.0(postcss@8.4.38) - postcss-overflow-shorthand: 6.0.0(postcss@8.4.38) - postcss-page-break: 3.0.4(postcss@8.4.38) - postcss-place: 10.0.0(postcss@8.4.38) - postcss-pseudo-class-any-link: 10.0.0(postcss@8.4.38) - postcss-replace-overflow-wrap: 4.0.0(postcss@8.4.38) - postcss-selector-not: 8.0.0(postcss@8.4.38) + css-blank-pseudo: 7.0.1(postcss@8.4.47) + css-has-pseudo: 7.0.2(postcss@8.4.47) + css-prefers-color-scheme: 10.0.0(postcss@8.4.47) + cssdb: 8.2.3 + postcss: 8.4.47 + postcss-attribute-case-insensitive: 7.0.1(postcss@8.4.47) + postcss-clamp: 4.1.0(postcss@8.4.47) + postcss-color-functional-notation: 7.0.6(postcss@8.4.47) + postcss-color-hex-alpha: 10.0.0(postcss@8.4.47) + postcss-color-rebeccapurple: 10.0.0(postcss@8.4.47) + postcss-custom-media: 11.0.5(postcss@8.4.47) + postcss-custom-properties: 14.0.4(postcss@8.4.47) + postcss-custom-selectors: 8.0.4(postcss@8.4.47) + postcss-dir-pseudo-class: 9.0.1(postcss@8.4.47) + postcss-double-position-gradients: 6.0.0(postcss@8.4.47) + postcss-focus-visible: 10.0.1(postcss@8.4.47) + postcss-focus-within: 9.0.1(postcss@8.4.47) + postcss-font-variant: 5.0.0(postcss@8.4.47) + postcss-gap-properties: 6.0.0(postcss@8.4.47) + postcss-image-set-function: 7.0.0(postcss@8.4.47) + postcss-lab-function: 7.0.6(postcss@8.4.47) + postcss-logical: 8.0.0(postcss@8.4.47) + postcss-nesting: 13.0.1(postcss@8.4.47) + postcss-opacity-percentage: 3.0.0(postcss@8.4.47) + postcss-overflow-shorthand: 6.0.0(postcss@8.4.47) + postcss-page-break: 3.0.4(postcss@8.4.47) + postcss-place: 10.0.0(postcss@8.4.47) + postcss-pseudo-class-any-link: 10.0.1(postcss@8.4.47) + postcss-replace-overflow-wrap: 4.0.0(postcss@8.4.47) + postcss-selector-not: 8.0.1(postcss@8.4.47) - postcss-pseudo-class-any-link@10.0.0(postcss@8.4.38): + postcss-pseudo-class-any-link@10.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 - postcss-reduce-initial@7.0.2(postcss@8.4.38): + postcss-reduce-initial@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.24.0 caniuse-api: 3.0.0 - postcss: 8.4.38 + postcss: 8.4.47 - postcss-reduce-transforms@7.0.0(postcss@8.4.38): + postcss-reduce-transforms@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-replace-overflow-wrap@4.0.0(postcss@8.4.38): + postcss-replace-overflow-wrap@4.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 - postcss-selector-not@8.0.0(postcss@8.4.38): + postcss-selector-not@8.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 - - postcss-selector-parser@6.1.0: - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 + postcss: 8.4.47 + postcss-selector-parser: 7.0.0 postcss-selector-parser@6.1.2: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-svgo@7.0.1(postcss@8.4.38): + postcss-selector-parser@7.0.0: dependencies: - postcss: 8.4.38 + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-svgo@7.0.1(postcss@8.4.47): + dependencies: + postcss: 8.4.47 postcss-value-parser: 4.2.0 svgo: 3.3.2 - postcss-unique-selectors@7.0.3(postcss@8.4.38): + postcss-unique-selectors@7.0.3(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 postcss-value-parser@4.2.0: {} - postcss@8.4.38: - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - source-map-js: 1.2.0 - postcss@8.4.47: dependencies: nanoid: 3.3.7 - picocolors: 1.1.0 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + postcss@8.4.49: + dependencies: + nanoid: 3.3.7 + picocolors: 1.1.1 source-map-js: 1.2.1 preferred-pm@4.0.0: @@ -8597,6 +9067,8 @@ snapshots: queue-microtask@1.2.3: {} + radix3@1.1.2: {} + read-cache@1.0.0: dependencies: pify: 2.3.0 @@ -8605,13 +9077,53 @@ snapshots: dependencies: picomatch: 2.3.1 + readdirp@4.0.2: {} + + recma-build-jsx@1.0.0: + dependencies: + "@types/estree": 1.0.6 + estree-util-build-jsx: 3.0.1 + vfile: 6.0.3 + + recma-jsx@1.0.0(acorn@8.14.0): + dependencies: + acorn-jsx: 5.3.2(acorn@8.14.0) + estree-util-to-js: 2.0.0 + recma-parse: 1.0.0 + recma-stringify: 1.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - acorn + + recma-parse@1.0.0: + dependencies: + "@types/estree": 1.0.6 + esast-util-from-js: 2.0.1 + unified: 11.0.5 + vfile: 6.0.3 + + recma-stringify@1.0.0: + dependencies: + "@types/estree": 1.0.6 + estree-util-to-js: 2.0.0 + unified: 11.0.5 + vfile: 6.0.3 + regenerator-runtime@0.14.1: {} - regex@4.3.2: {} - - rehype-expressive-code@0.35.6: + regex-recursion@5.0.0: dependencies: - expressive-code: 0.35.6 + regex-utilities: 2.3.0 + + regex-utilities@2.3.0: {} + + regex@5.0.2: + dependencies: + regex-utilities: 2.3.0 + + rehype-expressive-code@0.38.3: + dependencies: + expressive-code: 0.38.3 rehype-format@5.0.0: dependencies: @@ -8644,10 +9156,24 @@ snapshots: hast-util-raw: 9.0.1 vfile: 6.0.3 + rehype-recma@1.0.0: + dependencies: + "@types/estree": 1.0.6 + "@types/hast": 3.0.4 + hast-util-to-estree: 3.1.0 + transitivePeerDependencies: + - supports-color + rehype-stringify@10.0.0: dependencies: "@types/hast": 3.0.4 - hast-util-to-html: 9.0.1 + hast-util-to-html: 9.0.3 + unified: 11.0.5 + + rehype-stringify@10.0.1: + dependencies: + "@types/hast": 3.0.4 + hast-util-to-html: 9.0.3 unified: 11.0.5 rehype@13.0.1: @@ -8657,6 +9183,13 @@ snapshots: rehype-stringify: 10.0.0 unified: 11.0.5 + rehype@13.0.2: + dependencies: + "@types/hast": 3.0.4 + rehype-parse: 9.0.0 + rehype-stringify: 10.0.0 + unified: 11.0.5 + remark-directive@3.0.0: dependencies: "@types/mdast": 4.0.4 @@ -8686,7 +9219,7 @@ snapshots: remark-parse@11.0.0: dependencies: - "@types/mdast": 4.0.3 + "@types/mdast": 4.0.4 mdast-util-from-markdown: 2.0.0 micromark-util-types: 2.0.0 unified: 11.0.5 @@ -8695,8 +9228,16 @@ snapshots: remark-rehype@11.1.0: dependencies: - "@types/hast": 3.0.3 - "@types/mdast": 4.0.3 + "@types/hast": 3.0.4 + "@types/mdast": 4.0.4 + mdast-util-to-hast: 13.0.2 + unified: 11.0.5 + vfile: 6.0.3 + + remark-rehype@11.1.1: + dependencies: + "@types/hast": 3.0.4 + "@types/mdast": 4.0.4 mdast-util-to-hast: 13.0.2 unified: 11.0.5 vfile: 6.0.3 @@ -8728,11 +9269,6 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - restore-cursor@5.1.0: - dependencies: - onetime: 7.0.0 - signal-exit: 4.1.0 - retext-latin@4.0.0: dependencies: "@types/nlcst": 2.0.3 @@ -8760,26 +9296,29 @@ snapshots: reusify@1.0.4: {} - rollup@4.22.5: + rollup@4.28.1: dependencies: "@types/estree": 1.0.6 optionalDependencies: - "@rollup/rollup-android-arm-eabi": 4.22.5 - "@rollup/rollup-android-arm64": 4.22.5 - "@rollup/rollup-darwin-arm64": 4.22.5 - "@rollup/rollup-darwin-x64": 4.22.5 - "@rollup/rollup-linux-arm-gnueabihf": 4.22.5 - "@rollup/rollup-linux-arm-musleabihf": 4.22.5 - "@rollup/rollup-linux-arm64-gnu": 4.22.5 - "@rollup/rollup-linux-arm64-musl": 4.22.5 - "@rollup/rollup-linux-powerpc64le-gnu": 4.22.5 - "@rollup/rollup-linux-riscv64-gnu": 4.22.5 - "@rollup/rollup-linux-s390x-gnu": 4.22.5 - "@rollup/rollup-linux-x64-gnu": 4.22.5 - "@rollup/rollup-linux-x64-musl": 4.22.5 - "@rollup/rollup-win32-arm64-msvc": 4.22.5 - "@rollup/rollup-win32-ia32-msvc": 4.22.5 - "@rollup/rollup-win32-x64-msvc": 4.22.5 + "@rollup/rollup-android-arm-eabi": 4.28.1 + "@rollup/rollup-android-arm64": 4.28.1 + "@rollup/rollup-darwin-arm64": 4.28.1 + "@rollup/rollup-darwin-x64": 4.28.1 + "@rollup/rollup-freebsd-arm64": 4.28.1 + "@rollup/rollup-freebsd-x64": 4.28.1 + "@rollup/rollup-linux-arm-gnueabihf": 4.28.1 + "@rollup/rollup-linux-arm-musleabihf": 4.28.1 + "@rollup/rollup-linux-arm64-gnu": 4.28.1 + "@rollup/rollup-linux-arm64-musl": 4.28.1 + "@rollup/rollup-linux-loongarch64-gnu": 4.28.1 + "@rollup/rollup-linux-powerpc64le-gnu": 4.28.1 + "@rollup/rollup-linux-riscv64-gnu": 4.28.1 + "@rollup/rollup-linux-s390x-gnu": 4.28.1 + "@rollup/rollup-linux-x64-gnu": 4.28.1 + "@rollup/rollup-linux-x64-musl": 4.28.1 + "@rollup/rollup-win32-arm64-msvc": 4.28.1 + "@rollup/rollup-win32-ia32-msvc": 4.28.1 + "@rollup/rollup-win32-x64-msvc": 4.28.1 fsevents: 2.3.3 run-parallel@1.2.0: @@ -8788,15 +9327,6 @@ snapshots: sax@1.3.0: {} - section-matter@1.0.0: - dependencies: - extend-shallow: 2.0.1 - kind-of: 6.0.3 - - semver@6.3.1: {} - - semver@7.6.2: {} - semver@7.6.3: {} sharp@0.33.5: @@ -8825,18 +9355,20 @@ snapshots: "@img/sharp-win32-ia32": 0.33.5 "@img/sharp-win32-x64": 0.33.5 - shiki@1.20.0: + shebang-command@2.0.0: dependencies: - "@shikijs/core": 1.20.0 - "@shikijs/engine-javascript": 1.20.0 - "@shikijs/engine-oniguruma": 1.20.0 - "@shikijs/types": 1.20.0 - "@shikijs/vscode-textmate": 9.2.2 - "@types/hast": 3.0.4 + shebang-regex: 3.0.0 - shiki@1.6.3: + shebang-regex@3.0.0: {} + + shiki@1.24.3: dependencies: - "@shikijs/core": 1.6.3 + "@shikijs/core": 1.24.3 + "@shikijs/engine-javascript": 1.24.3 + "@shikijs/engine-oniguruma": 1.24.3 + "@shikijs/types": 1.24.3 + "@shikijs/vscode-textmate": 9.3.1 + "@types/hast": 3.0.4 signal-exit@4.1.0: {} @@ -8863,7 +9395,7 @@ snapshots: sprintf-js@1.0.3: {} - stdin-discarder@0.2.2: {} + std-env@3.8.0: {} stream-replace-string@2.0.0: {} @@ -8898,10 +9430,10 @@ snapshots: dependencies: ansi-regex: 6.0.1 - strip-bom-string@1.0.0: {} - strip-bom@3.0.0: {} + strip-final-newline@3.0.0: {} + style-to-object@0.4.4: dependencies: inline-style-parser: 0.1.1 @@ -8910,26 +9442,22 @@ snapshots: dependencies: inline-style-parser: 0.2.2 - stylehacks@7.0.4(postcss@8.4.38): + stylehacks@7.0.4(postcss@8.4.47): dependencies: browserslist: 4.24.0 - postcss: 8.4.38 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - sucrase@3.34.0: + sucrase@3.35.0: dependencies: "@jridgewell/gen-mapping": 0.3.5 commander: 4.1.1 - glob: 7.1.6 + glob: 10.4.5 lines-and-columns: 1.2.4 mz: 2.7.0 pirates: 4.0.6 ts-interface-checker: 0.1.13 - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - supports-preserve-symlinks-flag@1.0.0: {} svgo@3.3.2: @@ -8942,7 +9470,9 @@ snapshots: csso: 5.0.5 picocolors: 1.0.0 - tailwindcss@3.4.13: + system-architecture@0.1.0: {} + + tailwindcss@3.4.17: dependencies: "@alloc/quick-lru": 5.2.0 arg: 5.0.2 @@ -8952,20 +9482,20 @@ snapshots: fast-glob: 3.3.2 glob-parent: 6.0.2 is-glob: 4.0.3 - jiti: 1.21.0 - lilconfig: 2.1.0 - micromatch: 4.0.5 + jiti: 1.21.7 + lilconfig: 3.1.3 + micromatch: 4.0.8 normalize-path: 3.0.0 object-hash: 3.0.0 - picocolors: 1.0.0 - postcss: 8.4.38 - postcss-import: 15.1.0(postcss@8.4.38) - postcss-js: 4.0.1(postcss@8.4.38) - postcss-load-config: 4.0.2(postcss@8.4.38) - postcss-nested: 6.0.1(postcss@8.4.38) - postcss-selector-parser: 6.1.0 + picocolors: 1.1.1 + postcss: 8.4.47 + postcss-import: 15.1.0(postcss@8.4.47) + postcss-js: 4.0.1(postcss@8.4.47) + postcss-load-config: 4.0.2(postcss@8.4.47) + postcss-nested: 6.2.0(postcss@8.4.47) + postcss-selector-parser: 6.1.2 resolve: 1.22.8 - sucrase: 3.34.0 + sucrase: 3.35.0 transitivePeerDependencies: - ts-node @@ -8977,7 +9507,7 @@ snapshots: dependencies: any-promise: 1.3.0 - tinyexec@0.3.0: {} + tinyexec@0.3.1: {} to-fast-properties@2.0.0: {} @@ -8991,22 +9521,36 @@ snapshots: ts-interface-checker@0.1.13: {} - tsconfck@3.1.3(typescript@5.6.2): + tsconfck@3.1.4(typescript@5.7.2): optionalDependencies: - typescript: 5.6.2 + typescript: 5.7.2 tslib@2.6.2: optional: true - type-fest@2.19.0: {} + type-fest@4.30.2: {} typesafe-path@0.2.2: {} typescript-auto-import-cache@0.3.3: dependencies: - semver: 7.6.2 + semver: 7.6.3 - typescript@5.6.2: {} + typescript@5.7.2: {} + + ufo@1.5.4: {} + + ultrahtml@1.5.3: {} + + uncrypto@0.1.3: {} + + unenv@1.10.0: + dependencies: + consola: 3.2.3 + defu: 6.1.4 + mime: 3.0.0 + node-fetch-native: 1.6.4 + pathe: 1.1.2 unified@11.0.5: dependencies: @@ -9064,12 +9608,33 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 + unstorage@1.14.0: + dependencies: + anymatch: 3.1.3 + chokidar: 3.6.0 + citty: 0.1.6 + destr: 2.0.3 + h3: 1.13.0 + listhen: 1.9.0 + lru-cache: 10.4.3 + node-fetch-native: 1.6.4 + ofetch: 1.4.1 + ufo: 1.5.4 + + untun@0.1.3: + dependencies: + citty: 0.1.6 + consola: 3.2.3 + pathe: 1.1.2 + update-browserslist-db@1.1.1(browserslist@4.24.0): dependencies: browserslist: 4.24.0 escalade: 3.2.0 picocolors: 1.1.0 + uqr@0.1.2: {} + util-deprecate@1.0.2: {} vfile-location@5.0.2: @@ -9087,72 +9652,74 @@ snapshots: "@types/unist": 3.0.2 vfile-message: 4.0.2 - vite@5.4.8: + vite@6.0.4(jiti@2.4.2)(yaml@2.5.1): dependencies: - esbuild: 0.21.5 - postcss: 8.4.47 - rollup: 4.22.5 + esbuild: 0.24.0 + postcss: 8.4.49 + rollup: 4.28.1 optionalDependencies: fsevents: 2.3.3 + jiti: 2.4.2 + yaml: 2.5.1 - vitefu@1.0.2(vite@5.4.8): + vitefu@1.0.4(vite@6.0.4(jiti@2.4.2)(yaml@2.5.1)): optionalDependencies: - vite: 5.4.8 + vite: 6.0.4(jiti@2.4.2)(yaml@2.5.1) - volar-service-css@0.0.61(@volar/language-service@2.4.5): + volar-service-css@0.0.62(@volar/language-service@2.4.11): dependencies: vscode-css-languageservice: 6.3.1 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 optionalDependencies: - "@volar/language-service": 2.4.5 + "@volar/language-service": 2.4.11 - volar-service-emmet@0.0.61(@volar/language-service@2.4.5): + volar-service-emmet@0.0.62(@volar/language-service@2.4.11): dependencies: "@emmetio/css-parser": 0.4.0 "@emmetio/html-matcher": 1.3.0 "@vscode/emmet-helper": 2.9.3 vscode-uri: 3.0.8 optionalDependencies: - "@volar/language-service": 2.4.5 + "@volar/language-service": 2.4.11 - volar-service-html@0.0.61(@volar/language-service@2.4.5): + volar-service-html@0.0.62(@volar/language-service@2.4.11): dependencies: vscode-html-languageservice: 5.3.1 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 optionalDependencies: - "@volar/language-service": 2.4.5 + "@volar/language-service": 2.4.11 - volar-service-prettier@0.0.61(@volar/language-service@2.4.5): + volar-service-prettier@0.0.62(@volar/language-service@2.4.11): dependencies: vscode-uri: 3.0.8 optionalDependencies: - "@volar/language-service": 2.4.5 + "@volar/language-service": 2.4.11 - volar-service-typescript-twoslash-queries@0.0.61(@volar/language-service@2.4.5): + volar-service-typescript-twoslash-queries@0.0.62(@volar/language-service@2.4.11): dependencies: vscode-uri: 3.0.8 optionalDependencies: - "@volar/language-service": 2.4.5 + "@volar/language-service": 2.4.11 - volar-service-typescript@0.0.61(@volar/language-service@2.4.5): + volar-service-typescript@0.0.62(@volar/language-service@2.4.11): dependencies: path-browserify: 1.0.1 - semver: 7.6.2 + semver: 7.6.3 typescript-auto-import-cache: 0.3.3 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-nls: 5.2.0 vscode-uri: 3.0.8 optionalDependencies: - "@volar/language-service": 2.4.5 + "@volar/language-service": 2.4.11 - volar-service-yaml@0.0.61(@volar/language-service@2.4.5): + volar-service-yaml@0.0.62(@volar/language-service@2.4.11): dependencies: vscode-uri: 3.0.8 yaml-language-server: 1.15.0 optionalDependencies: - "@volar/language-service": 2.4.5 + "@volar/language-service": 2.4.11 vscode-css-languageservice@6.3.1: dependencies: @@ -9161,13 +9728,6 @@ snapshots: vscode-languageserver-types: 3.17.5 vscode-uri: 3.0.8 - vscode-html-languageservice@5.2.0: - dependencies: - "@vscode/l10n": 0.0.18 - vscode-languageserver-textdocument: 1.0.11 - vscode-languageserver-types: 3.17.5 - vscode-uri: 3.0.8 - vscode-html-languageservice@5.3.1: dependencies: "@vscode/l10n": 0.0.18 @@ -9178,7 +9738,7 @@ snapshots: vscode-json-languageservice@4.1.8: dependencies: jsonc-parser: 3.3.1 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-languageserver-types: 3.17.5 vscode-nls: 5.2.0 vscode-uri: 3.0.8 @@ -9197,8 +9757,6 @@ snapshots: vscode-jsonrpc: 8.2.0 vscode-languageserver-types: 3.17.5 - vscode-languageserver-textdocument@1.0.11: {} - vscode-languageserver-textdocument@1.0.12: {} vscode-languageserver-types@3.16.0: {} @@ -9227,9 +9785,13 @@ snapshots: dependencies: load-yaml-file: 0.2.0 - widest-line@4.0.1: + which@2.0.2: dependencies: - string-width: 5.1.2 + isexe: 2.0.0 + + widest-line@5.0.0: + dependencies: + string-width: 7.2.0 wrap-ansi@7.0.0: dependencies: @@ -9243,14 +9805,16 @@ snapshots: string-width: 5.1.2 strip-ansi: 7.1.0 - wrappy@1.0.2: {} + wrap-ansi@9.0.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 7.2.0 + strip-ansi: 7.1.0 - xxhash-wasm@1.0.2: {} + xxhash-wasm@1.1.0: {} y18n@5.0.8: {} - yallist@3.1.1: {} - yaml-language-server@1.15.0: dependencies: ajv: 8.17.1 @@ -9258,7 +9822,7 @@ snapshots: request-light: 0.5.8 vscode-json-languageservice: 4.1.8 vscode-languageserver: 7.0.0 - vscode-languageserver-textdocument: 1.0.11 + vscode-languageserver-textdocument: 1.0.12 vscode-languageserver-types: 3.17.5 vscode-nls: 5.2.0 vscode-uri: 3.0.8 @@ -9268,8 +9832,6 @@ snapshots: yaml@2.2.2: {} - yaml@2.3.4: {} - yaml@2.5.1: {} yargs-parser@21.1.1: {} @@ -9277,7 +9839,7 @@ snapshots: yargs@17.7.2: dependencies: cliui: 8.0.1 - escalade: 3.1.1 + escalade: 3.2.0 get-caller-file: 2.0.5 require-directory: 2.1.1 string-width: 4.2.3 @@ -9286,15 +9848,21 @@ snapshots: yocto-queue@1.1.1: {} - zod-to-json-schema@3.23.3(zod@3.23.8): + yocto-spinner@0.1.2: dependencies: - zod: 3.23.8 + yoctocolors: 2.1.1 - zod-to-ts@1.2.0(typescript@5.6.2)(zod@3.23.8): + yoctocolors@2.1.1: {} + + zod-to-json-schema@3.24.1(zod@3.24.1): dependencies: - typescript: 5.6.2 - zod: 3.23.8 + zod: 3.24.1 - zod@3.23.8: {} + zod-to-ts@1.2.0(typescript@5.7.2)(zod@3.24.1): + dependencies: + typescript: 5.7.2 + zod: 3.24.1 + + zod@3.24.1: {} zwitch@2.0.4: {} diff --git a/docs/src/content.config.ts b/docs/src/content.config.ts new file mode 100644 index 00000000..2588d18b --- /dev/null +++ b/docs/src/content.config.ts @@ -0,0 +1,8 @@ +import { defineCollection } from "astro:content"; +import { docsLoader, i18nLoader } from "@astrojs/starlight/loaders"; +import { docsSchema, i18nSchema } from "@astrojs/starlight/schema"; + +export const collections = { + docs: defineCollection({ loader: docsLoader(), schema: docsSchema() }), + i18n: defineCollection({ loader: i18nLoader(), schema: i18nSchema() }), +}; diff --git a/docs/src/content/config.ts b/docs/src/content/config.ts deleted file mode 100644 index f043fb40..00000000 --- a/docs/src/content/config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineCollection } from "astro:content"; -import { docsSchema, i18nSchema } from "@astrojs/starlight/schema"; - -export const collections = { - docs: defineCollection({ schema: docsSchema() }), - i18n: defineCollection({ type: "data", schema: i18nSchema() }), -}; diff --git a/docs/src/content/docs/en/plugins/manifest.mdx b/docs/src/content/docs/en/plugins/manifest.mdx index c6051b38..ecf315c1 100644 --- a/docs/src/content/docs/en/plugins/manifest.mdx +++ b/docs/src/content/docs/en/plugins/manifest.mdx @@ -101,17 +101,18 @@ each property being a field key and the value being a `Field` object. A field is a form element: -| Property | Type | Note | -| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `type` | `checkbox` \| `datetime` \| `email` \| `group` \| `html` \| `markdown` \| `number` \| `radio-group` \| `rss` \| `select-multiple` \| `select` \| `text` \| `textarea` \| `toggler` \| `url` | Default is `text` | -| `label` (required) | `string` | Can be translated (see i18n) | -| `hint` | `string` | Can be translated (see i18n) | -| `helper` | `string` | Can be translated (see i18n) | -| `defaultValue` | `string` | You can specify multiple comma separated values for `select-multiple` | -| `optional` | `boolean` | Default is `false` | -| `options` | `Options` | Required for `radio-group`, `select-multiple`, and `select` types. | -| `multiple` | `boolean` | Default is `false` | -| `fields` | `Array` | Required for `group` type | +| Property | Type | Note | +| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | +| `type` | `checkbox`, `datetime`, `email`, `group`, `html`, `markdown`, `number`, `radio-group`, `rss`, `select-multiple`, `select`, `text`, `textarea`, `toggler`, `url` | Default is `text` | +| `label` (required) | `string` | Can be translated (see i18n) | +| `hint` | `string` | Can be translated (see i18n) | +| `helper` | `string` | Can be translated (see i18n) | +| `defaultValue` | `string` | You can specify multiple comma separated values for `select-multiple` | +| `validationRules` | `string` \| `array` | See [available validation rules](#available-validation-rules) | +| `optional` | `boolean` | Default is `false` | +| `options` | `Options` | Required for `radio-group`, `select-multiple`, and `select` types. | +| `multiple` | `boolean` | Default is `false` | +| `fields` | `Array` | Required for `group` type | #### Options object @@ -133,3 +134,35 @@ plugin is installed. Repository where the plugin's code lives. Helpful for people who want to contribute. + +#### Available validation rules + +The following rules are a subset of +[CodeIgniter4's validation rules](https://codeigniter.com/user_guide/libraries/validation.html#available-rules). + +| Rule | Parameter | Description | Example | +| --------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- | +| alpha | No | Fails if field has anything other than alphabetic characters in ASCII. | | +| alpha_dash | No | Fails if field contains anything other than alphanumeric characters, underscores or dashes in ASCII. | | +| alpha_numeric | No | Fails if field contains anything other than alphanumeric characters in ASCII. | | +| alpha_numeric_punct | No | Fails if field contains anything other than alphanumeric, space, or this limited set of punctuation characters: `~` (tilde), `!` (exclamation), `#` (number), `$` (dollar), `%` (percent), `&` (ampersand), `*` (asterisk), `-` (dash), `_` (underscore), `+` (plus), `=` (equals), `\|` (vertical bar),`:`(colon),`.` (period). | | +| alpha_numeric_space | No | Fails if field contains anything other than alphanumeric or space characters in ASCII. | | +| alpha_space | No | Fails if field contains anything other than alphabetic characters or spaces in ASCII. | | +| decimal | No | Fails if field contains anything other than a decimal number. Also accepts a `+` or `-` sign for the number. | | +| differs | Yes | Fails if field does not differ from the one in the parameter. | `differs[field_name]` | +| exact_length | Yes | Fails if field length is not exactly the parameter value. One or more comma-separated values are possible. | `exact_length[5]` or `exact_length[5,8,12]` | +| greater_than | Yes | Fails if field is less than or equal to the parameter value or not numeric. | `greater_than[8]` | +| greater_than_equal_to | Yes | Fails if field is less than the parameter value, or not numeric. | `greater_than_equal_to[5]` | +| hex | No | Fails if field contains anything other than hexadecimal characters. | | +| in_list | Yes | Fails if field is not within a predetermined list. | `in_list[red,blue,green]` | +| integer | No | Fails if field contains anything other than an integer. | | +| is_natural | No | Fails if field contains anything other than a natural number: `0`, `1`, `2`, `3`, etc. | | +| is_natural_no_zero | No | Fails if field contains anything other than a natural number, except zero: `1`, `2`, `3`, etc. | | +| less_than | Yes | Fails if field is greater than or equal to the parameter value or not numeric. | `less_than[8]` | +| less_than_equal_to | Yes | Fails if field is greater than the parameter value or not numeric. | `less_than_equal_to[8]` | +| max_length | Yes | Fails if field is longer than the parameter value. | `max_length[8]` | +| min_length | Yes | Fails if field is shorter than the parameter value. | `min_length[3]` | +| not_in_list | Yes | Fails if field is within a predetermined list. | `not_in_list[red,blue,green]` | +| regex_match | Yes | Fails if field does not match the regular expression. | `regex_match[/regex/]` | +| valid_base64 | No | Fails if field contains anything other than valid Base64 characters. | | +| valid_date | Yes | Fails if field does not contain a valid date. Any string that `strtotime()` accepts is valid if you don't specify an optional parameter that matches a date format. | `valid_date[d/m/Y]` | diff --git a/modules/Plugins/Commands/CreatePlugin.php b/modules/Plugins/Commands/CreatePlugin.php index d81807f8..8a6e28ce 100644 --- a/modules/Plugins/Commands/CreatePlugin.php +++ b/modules/Plugins/Commands/CreatePlugin.php @@ -71,12 +71,12 @@ class CreatePlugin extends BaseCommand $pluginName = CLI::prompt( 'Plugin name (/)', 'acme/hello-world', - Manifest::VALIDATION_RULES['name'] + Manifest::$validation_rules['name'] ); CLI::newLine(); - $description = CLI::prompt('Description', '', Manifest::VALIDATION_RULES['description']); + $description = CLI::prompt('Description', '', Manifest::$validation_rules['description']); CLI::newLine(); - $license = CLI::prompt('License', 'UNLICENSED', Manifest::VALIDATION_RULES['license']); + $license = CLI::prompt('License', 'UNLICENSED', Manifest::$validation_rules['license']); CLI::newLine(); $hooks = CLI::promptByMultipleKeys('Which hooks do you want to implement?', Plugins::HOOKS); diff --git a/modules/Plugins/Controllers/PluginController.php b/modules/Plugins/Controllers/PluginController.php index 027b9a39..81fe086b 100644 --- a/modules/Plugins/Controllers/PluginController.php +++ b/modules/Plugins/Controllers/PluginController.php @@ -18,6 +18,7 @@ use Modules\Plugins\Core\Markdown; use Modules\Plugins\Core\Plugins; use Modules\Plugins\Core\RSS; use Modules\Plugins\Manifest\Field; +use Modules\Plugins\Manifest\Fields\Group; class PluginController extends BaseController { @@ -154,7 +155,6 @@ class PluginController extends BaseController string $podcastId = null, string $episodeId = null ): RedirectResponse { - $plugin = $this->plugins->getPlugin($vendor, $package); if (! $plugin instanceof BasePlugin) { @@ -182,29 +182,35 @@ class PluginController extends BaseController } if ($field->multiple) { - if ($field->type === 'group') { + if ($field instanceof Group) { foreach ($field->fields as $subField) { $typeRules = $this->plugins::FIELDS_VALIDATIONS[$subField->type]; if (! in_array('permit_empty', $typeRules, true)) { $typeRules[] = $subField->optional ? 'permit_empty' : 'required'; } - $rules[sprintf('%s.*.%s', $field->key, $subField->key)] = $typeRules; + $rules[sprintf('%s.*.%s', $field->key, $subField->key)] = [ + ...$typeRules, + ...$subField->validationRules, + ]; } } else { - $rules[$field->key . '.*'] = $typeRules; + $rules[$field->key . '.*'] = [...$typeRules, ...$field->validationRules]; } - } elseif ($field->type === 'group') { + } elseif ($field instanceof Group) { foreach ($field->fields as $subField) { $typeRules = $this->plugins::FIELDS_VALIDATIONS[$subField->type]; if (! in_array('permit_empty', $typeRules, true)) { $typeRules[] = $subField->optional ? 'permit_empty' : 'required'; } - $rules[sprintf('%s.%s', $field->key, $subField->key)] = $typeRules; + $rules[sprintf('%s.%s', $field->key, $subField->key)] = [ + ...$typeRules, + ...$subField->validationRules, + ]; } } else { - $rules[$field->key] = $typeRules; + $rules[$field->key] = [...$typeRules, ...$field->validationRules]; } } @@ -288,7 +294,7 @@ class PluginController extends BaseController continue; } - if ($field->type === 'group') { + if ($field instanceof Group) { foreach ($val as $subKey => $subVal) { /** @var Field|false $subField */ $subField = array_column($field->fields, null, 'key')[$subKey] ?? false; @@ -305,7 +311,7 @@ class PluginController extends BaseController $value[$key] = $this->castValue($val, $field->type); } } - } elseif ($field->type === 'group') { + } elseif ($field instanceof Group) { foreach ($fieldValue as $subKey => $subVal) { /** @var Field|false $subField */ $subField = array_column($field->fields, null, 'key')[$subKey] ?? false; @@ -340,10 +346,9 @@ class PluginController extends BaseController $value, $this->request->getPost('client_timezone') )->setTimezone(app_timezone()), - 'markdown' => new Markdown($value), - 'rss' => new RSS($value), - 'comma-separated-string' => implode(',', $value), - default => $value, + 'markdown' => new Markdown($value), + 'rss' => new RSS($value), + default => $value, }; } } diff --git a/modules/Plugins/Core/Plugins.php b/modules/Plugins/Core/Plugins.php index 466f07a0..29b9eb0f 100644 --- a/modules/Plugins/Core/Plugins.php +++ b/modules/Plugins/Core/Plugins.php @@ -52,14 +52,13 @@ class Plugins ]; public const FIELDS_CASTS = [ - 'checkbox' => 'bool', - 'datetime' => 'datetime', - 'markdown' => 'markdown', - 'number' => 'int', - 'rss' => 'rss', - 'toggler' => 'bool', - 'url' => 'uri', - 'select-multiple' => 'comma-separated-string', + 'checkbox' => 'bool', + 'datetime' => 'datetime', + 'markdown' => 'markdown', + 'number' => 'int', + 'rss' => 'rss', + 'toggler' => 'bool', + 'url' => 'uri', ]; /** diff --git a/modules/Plugins/Manifest/Field.php b/modules/Plugins/Manifest/Field.php index 1bc2b94c..b19586ed 100644 --- a/modules/Plugins/Manifest/Field.php +++ b/modules/Plugins/Manifest/Field.php @@ -4,7 +4,7 @@ declare(strict_types=1); namespace Modules\Plugins\Manifest; -use Override; +use RuntimeException; /** * @property 'checkbox'|'datetime'|'email'|'group'|'html'|'markdown'|'number'|'radio-group'|'rss'|'select-multiple'|'select'|'text'|'textarea'|'toggler'|'url' $type @@ -14,28 +14,20 @@ use Override; * @property string $helper * @property string $defaultValue * @property bool $optional - * @property Option[] $options * @property bool $multiple - * @property Field[] $fields + * @property string[] $validationRules */ -class Field extends ManifestObject +class Field extends ManifestObject implements FieldInterface { - protected const VALIDATION_RULES = [ - 'type' => 'permit_empty|in_list[checkbox,datetime,email,group,html,markdown,number,radio-group,rss,select-multiple,select,text,textarea,toggler,url]', - 'key' => 'required|alpha_dash', - 'label' => 'required|string', - 'hint' => 'permit_empty|string', - 'helper' => 'permit_empty|string', - 'defaultValue' => 'permit_empty|string', - 'optional' => 'permit_empty|is_boolean', - 'options' => 'permit_empty|is_list', - 'multiple' => 'permit_empty|is_boolean', - 'fields' => 'permit_empty|is_list', - ]; - - protected const CASTS = [ - 'options' => [Option::class], - 'fields' => [self::class], + public static array $validation_rules = [ + 'type' => 'permit_empty|in_list[checkbox,datetime,email,group,html,markdown,number,radio-group,rss,select-multiple,select,text,textarea,toggler,url]', + 'key' => 'required|alpha_dash', + 'label' => 'required|string', + 'hint' => 'permit_empty|string', + 'helper' => 'permit_empty|string', + 'validationRules' => 'permit_empty|is_string_or_list', + 'optional' => 'permit_empty|is_boolean', + 'multiple' => 'permit_empty|is_boolean', ]; protected string $type = 'text'; @@ -48,65 +40,83 @@ class Field extends ManifestObject protected string $helper = ''; - protected string $defaultValue = ''; + /** + * @var string[] + */ + protected array $validationRules = []; protected bool $optional = false; protected bool $multiple = false; - /** - * @var Option[] - */ - protected array $options = []; - - #[Override] - public function loadData(array $data): void + public function getLabel(): string { - if (array_key_exists('options', $data)) { - $newOptions = []; - foreach ($data['options'] as $key => $option) { - $option['value'] = $key; - $newOptions[] = $option; - } + return $this->getTranslated('label'); + } - $data['options'] = $newOptions; - } + public function getHint(): string + { + return $this->getTranslated('hint'); + } - if (array_key_exists('fields', $data)) { - $newFields = []; - foreach ($data['fields'] as $key => $field) { - $field['key'] = $key; - $newFields[] = $field; - } - - $data['fields'] = $newFields; - } - - parent::loadData($data); + public function getHelper(): string + { + return $this->getTranslated('helper'); } /** - * @return array{label:string,value:string,description:string}[] + * @param string|list $values */ - public function getOptionsArray(string $pluginKey): array + public function setValidationRules(string|array $values): void { - $i18nKey = sprintf('%s.settings.%s.%s.options', $pluginKey, $this->type, $this->key); - - $optionsArray = []; - foreach ($this->options as $option) { - $optionsArray[] = [ - 'value' => $option->value, - 'label' => $option->getTranslated($i18nKey, 'label'), - 'description' => $option->getTranslated($i18nKey, 'description'), - ]; + $validationRules = []; + if (is_string($values)) { + $validationRules = explode('|', $values); } - return $optionsArray; + $allowedRules = [ + 'alpha', + 'alpha_dash', + 'alpha_numeric', + 'alpha_numeric_punct', + 'alpha_numeric_space', + 'alpha_space', + 'decimal', + 'differs', + 'exact_length', + 'greater_than', + 'greater_than_equal_to', + 'hex', + 'in_list', + 'integer', + 'is_natural', + 'is_natural_no_zero', + 'less_than', + 'less_than_equal_to', + 'max_length', + 'min_length', + 'not_in_list', + 'regex_match', + 'valid_base64', + 'valid_date', + ]; + foreach ($validationRules as $rule) { + foreach ($allowedRules as $allowedRule) { + if (str_starts_with($rule, $allowedRule)) { + $this->validationRules[] = $rule; + } + } + } } - public function getTranslated(string $pluginKey, string $property): string + public function render(string $name, mixed $value, string $class = ''): string { - $key = sprintf('Plugin.%s.settings.%s.%s.%s', $pluginKey, $this->type, $this->key, $property); + throw new RuntimeException('Render function not defined in parent Field class'); + } + + private function getTranslated(string $property): string + { + $key = sprintf('Plugin.%s.settings.%s.%s.%s', $this->pluginKey, $this->type, $this->key, $property); /** @var string $i18nField */ $i18nField = lang($key); diff --git a/modules/Plugins/Manifest/FieldInterface.php b/modules/Plugins/Manifest/FieldInterface.php new file mode 100644 index 00000000..2fcbaa23 --- /dev/null +++ b/modules/Plugins/Manifest/FieldInterface.php @@ -0,0 +1,10 @@ + 'permit_empty|is_boolean', + ]; + + protected bool $defaultValue = false; + + public function render(string $name, mixed $value, string $class = ''): string + { + $value = $value ? 'yes' : ''; + return <<{$this->label} + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Datetime.php b/modules/Plugins/Manifest/Fields/Datetime.php new file mode 100644 index 00000000..d7a5826f --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Datetime.php @@ -0,0 +1,37 @@ + 'permit_empty|valid_date', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Email.php b/modules/Plugins/Manifest/Fields/Email.php new file mode 100644 index 00000000..50f215f0 --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Email.php @@ -0,0 +1,38 @@ + 'permit_empty|valid_email', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Group.php b/modules/Plugins/Manifest/Fields/Group.php new file mode 100644 index 00000000..2cb89f7d --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Group.php @@ -0,0 +1,36 @@ +injectRules(); + + parent::__construct($pluginKey); + } + + #[Override] + public function loadData(array $data): void + { + $data = $this->transformData($data); + + parent::loadData($data); + } + + public function render(string $name, mixed $value, string $class = ''): string + { + // TODO: render group, depending on multiple + throw new RuntimeException('Render function not defined in Group Field class'); + } +} diff --git a/modules/Plugins/Manifest/Fields/Html.php b/modules/Plugins/Manifest/Fields/Html.php new file mode 100644 index 00000000..f5f112cd --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Html.php @@ -0,0 +1,39 @@ + 'permit_empty|string', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + $value = htmlspecialchars($value ?? ''); + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Markdown.php b/modules/Plugins/Manifest/Fields/Markdown.php new file mode 100644 index 00000000..4105a628 --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Markdown.php @@ -0,0 +1,37 @@ + 'permit_empty|string', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Number.php b/modules/Plugins/Manifest/Fields/Number.php new file mode 100644 index 00000000..949eea5a --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Number.php @@ -0,0 +1,38 @@ + 'permit_empty|numeric', + ]; + + protected ?int $defaultValue = null; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/RadioGroup.php b/modules/Plugins/Manifest/Fields/RadioGroup.php new file mode 100644 index 00000000..d7b38229 --- /dev/null +++ b/modules/Plugins/Manifest/Fields/RadioGroup.php @@ -0,0 +1,57 @@ + 'permit_empty|string', + ]; + + protected string $defaultValue = ''; + + public function __construct(string $pluginKey) + { + $this->injectRules(); + + parent::__construct($pluginKey); + } + + #[Override] + public function loadData(array $data): void + { + $data = $this->transformData($data); + + parent::loadData($data); + } + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + $options = esc(json_encode($this->getOptionsArray())); + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Rss.php b/modules/Plugins/Manifest/Fields/Rss.php new file mode 100644 index 00000000..3e085317 --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Rss.php @@ -0,0 +1,40 @@ + 'permit_empty|string', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + $value = htmlspecialchars((string) $value); + $defaultValue = esc($this->defaultValue); + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Select.php b/modules/Plugins/Manifest/Fields/Select.php new file mode 100644 index 00000000..7fa8f9d2 --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Select.php @@ -0,0 +1,64 @@ + 'permit_empty|string', + 'options' => 'is_list', + ]; + + protected array $casts = [ + 'options' => [Option::class], + ]; + + protected string $defaultValue = ''; + + public function __construct(string $pluginKey) + { + $this->injectRules(); + + parent::__construct($pluginKey); + } + + #[Override] + public function loadData(array $data): void + { + $data = $this->transformData($data); + + parent::loadData($data); + } + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + $options = esc(json_encode($this->getOptionsArray())); + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/SelectMultiple.php b/modules/Plugins/Manifest/Fields/SelectMultiple.php new file mode 100644 index 00000000..7a2e6e7f --- /dev/null +++ b/modules/Plugins/Manifest/Fields/SelectMultiple.php @@ -0,0 +1,63 @@ + $defaultValue + */ +class SelectMultiple extends Field +{ + use WithOptionsTrait; + + public static array $validation_rules = [ + 'defaultValue' => 'permit_empty|is_list', + ]; + + /** + * @var list + */ + protected array $defaultValue = []; + + public function __construct(string $pluginKey) + { + $this->injectRules(); + + parent::__construct($pluginKey); + } + + #[Override] + public function loadData(array $data): void + { + $data = $this->transformData($data); + + parent::loadData($data); + } + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + $options = esc(json_encode($this->getOptionsArray())); + $value = esc(json_encode($value)); + $defaultValue = esc(json_encode($this->defaultValue)); + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Text.php b/modules/Plugins/Manifest/Fields/Text.php new file mode 100644 index 00000000..67ee93aa --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Text.php @@ -0,0 +1,37 @@ + 'permit_empty|string', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Textarea.php b/modules/Plugins/Manifest/Fields/Textarea.php new file mode 100644 index 00000000..afb025a5 --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Textarea.php @@ -0,0 +1,37 @@ + 'permit_empty|string', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Toggler.php b/modules/Plugins/Manifest/Fields/Toggler.php new file mode 100644 index 00000000..655dc8df --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Toggler.php @@ -0,0 +1,34 @@ + 'permit_empty|is_boolean', + ]; + + protected bool $defaultValue = false; + + public function render(string $name, mixed $value, string $class = ''): string + { + $value = $value ? 'yes' : ''; + return <<{$this->label} + HTML; + } +} diff --git a/modules/Plugins/Manifest/Fields/Url.php b/modules/Plugins/Manifest/Fields/Url.php new file mode 100644 index 00000000..3d712d62 --- /dev/null +++ b/modules/Plugins/Manifest/Fields/Url.php @@ -0,0 +1,39 @@ + 'permit_empty|valid_url_strict', + ]; + + protected string $defaultValue = ''; + + public function render(string $name, mixed $value, string $class = ''): string + { + $isRequired = $this->optional ? 'false' : 'true'; + return << + HTML; + } +} diff --git a/modules/Plugins/Manifest/Manifest.php b/modules/Plugins/Manifest/Manifest.php index d183176b..59c65ab3 100644 --- a/modules/Plugins/Manifest/Manifest.php +++ b/modules/Plugins/Manifest/Manifest.php @@ -23,10 +23,7 @@ use CodeIgniter\HTTP\URI; */ class Manifest extends ManifestObject { - /** - * @var array - */ - public const VALIDATION_RULES = [ + public static array $validation_rules = [ 'name' => 'required|max_length[128]|regex_match[/^[a-z0-9]([_.-]?[a-z0-9]+)*\/[a-z0-9]([_.-]?[a-z0-9]+)*$/]', 'version' => 'required|regex_match[/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/]', 'description' => 'permit_empty|max_length[256]', @@ -41,7 +38,7 @@ class Manifest extends ManifestObject 'repository' => 'permit_empty|is_list', ]; - protected const CASTS = [ + protected array $casts = [ 'authors' => [Person::class], 'homepage' => URI::class, 'settings' => Settings::class, diff --git a/modules/Plugins/Manifest/ManifestObject.php b/modules/Plugins/Manifest/ManifestObject.php index 4ae097a9..a5f46113 100644 --- a/modules/Plugins/Manifest/ManifestObject.php +++ b/modules/Plugins/Manifest/ManifestObject.php @@ -9,12 +9,15 @@ use Exception; abstract class ManifestObject { - protected const VALIDATION_RULES = []; + /** + * @var array + */ + public static array $validation_rules = []; /** * @var array */ - protected const CASTS = []; + protected array $casts = []; /** * @var array> @@ -25,11 +28,28 @@ abstract class ManifestObject protected readonly string $pluginKey, ) { self::$errors[$pluginKey] = []; + + $class = static::class; + $validation_rules = []; + $casts = []; + while ($class = get_parent_class($class)) { + $validation_rules = [...$validation_rules, ...get_class_vars($class)['validation_rules']]; + $casts = [...$casts, ...get_class_vars($class)['casts']]; + } + + $this::$validation_rules = [...$validation_rules, ...$this::$validation_rules]; + $this->casts = [...$casts, ...$this->casts]; } public function __get(string $name): mixed { if (property_exists($this, $name)) { + // if a get method exists for this property, return that + $method = 'get' . str_replace(' ', '', ucwords(str_replace(['-', '_'], ' ', $name))); + if (method_exists($this, $method)) { + return $this->{$method}(); + } + return $this->{$name}; } @@ -73,7 +93,7 @@ abstract class ManifestObject /** @var Validation $validation */ $validation = service('validation'); - $validation->setRules($this::VALIDATION_RULES); + $validation->setRules($this::$validation_rules); if (! $validation->run($data)) { foreach ($validation->getErrors() as $key => $message) { @@ -84,23 +104,30 @@ abstract class ManifestObject } foreach ($validation->getValidated() as $key => $value) { - if (array_key_exists($key, $this::CASTS)) { - $cast = $this::CASTS[$key]; + $method = 'set' . str_replace(' ', '', ucwords(str_replace('_', ' ', $key))); + if (is_callable([$this, $method])) { + $this->{$method}($value); + continue; + } - if (is_array($cast)) { - if (is_array($value)) { - foreach ($value as $valueKey => $valueElement) { - if (is_subclass_of($cast[0], self::class)) { - $value[$valueKey] = new $cast[0]($this->pluginKey); - $value[$valueKey]->loadData($valueElement); - } else { - $value[$valueKey] = new $cast[0]($valueElement); - } + if (array_key_exists($key, $this->casts)) { + $cast = $this->casts[$key]; + if (is_array($cast) && is_array($value)) { + foreach ($value as $valueKey => $valueElement) { + if (is_subclass_of($cast[0], self::class)) { + $manifestClass = $cast[0] === Field::class ? $this->getFieldClass( + $valueElement + ) : $cast[0]; + $value[$valueKey] = new $manifestClass($this->pluginKey); + $value[$valueKey]->loadData($valueElement); + } else { + $value[$valueKey] = new $cast[0]($valueElement); } } } elseif (is_subclass_of($cast, self::class)) { + $manifestClass = $cast === Field::class ? $this->getFieldClass($value) : $cast; $valueElement = $value; - $value = new $cast($this->pluginKey); + $value = new $manifestClass($this->pluginKey); $value->loadData($valueElement ?? []); } else { $value = new $cast($value ?? []); @@ -123,4 +150,17 @@ abstract class ManifestObject { self::$errors[$this->pluginKey][$errorKey] = $errorMessage; } + + /** + * @param array $data + */ + private function getFieldClass(array $data): string + { + $fieldType = $data['type'] ?? 'text'; + return rtrim(Field::class, "\Field") . '\\Fields\\' . str_replace( + ' ', + '', + ucwords(str_replace('-', ' ', $fieldType)) + ); + } } diff --git a/modules/Plugins/Manifest/Option.php b/modules/Plugins/Manifest/Option.php index 043be88b..ff15180b 100644 --- a/modules/Plugins/Manifest/Option.php +++ b/modules/Plugins/Manifest/Option.php @@ -11,7 +11,7 @@ namespace Modules\Plugins\Manifest; */ class Option extends ManifestObject { - protected const VALIDATION_RULES = [ + public static array $validation_rules = [ 'label' => 'required|string', 'value' => 'required|alpha_numeric_punct', 'description' => 'permit_empty|string', diff --git a/modules/Plugins/Manifest/Person.php b/modules/Plugins/Manifest/Person.php index 581c8a90..1a11c931 100644 --- a/modules/Plugins/Manifest/Person.php +++ b/modules/Plugins/Manifest/Person.php @@ -15,18 +15,18 @@ use Override; */ class Person extends ManifestObject { - protected const VALIDATION_RULES = [ + protected const AUTHOR_STRING_PATTERN = '/^(?[^<>()]*)\s*(<(?.*)>)?\s*(\((?.*)\))?$/'; + + public static array $validation_rules = [ 'name' => 'required', 'email' => 'permit_empty|valid_email', 'url' => 'permit_empty|valid_url_strict', ]; - protected const AUTHOR_STRING_PATTERN = '/^(?[^<>()]*)\s*(<(?.*)>)?\s*(\((?.*)\))?$/'; - /** * @var array */ - protected const CASTS = [ + protected array $casts = [ 'url' => URI::class, ]; diff --git a/modules/Plugins/Manifest/Repository.php b/modules/Plugins/Manifest/Repository.php index b439bcd2..9a50398e 100644 --- a/modules/Plugins/Manifest/Repository.php +++ b/modules/Plugins/Manifest/Repository.php @@ -13,7 +13,7 @@ use CodeIgniter\HTTP\URI; */ class Repository extends ManifestObject { - protected const VALIDATION_RULES = [ + public static array $validation_rules = [ 'type' => 'permit_empty|in_list[git]', 'url' => 'required|valid_url_strict', 'directory' => 'permit_empty', @@ -22,7 +22,7 @@ class Repository extends ManifestObject /** * @var array */ - protected const CASTS = [ + protected array $casts = [ 'url' => URI::class, ]; diff --git a/modules/Plugins/Manifest/Settings.php b/modules/Plugins/Manifest/Settings.php index 46d8ab3a..a30f3635 100644 --- a/modules/Plugins/Manifest/Settings.php +++ b/modules/Plugins/Manifest/Settings.php @@ -13,7 +13,7 @@ use Override; */ class Settings extends ManifestObject { - protected const VALIDATION_RULES = [ + public static array $validation_rules = [ 'general' => 'permit_empty|is_list', 'podcast' => 'permit_empty|is_list', 'episode' => 'permit_empty|is_list', @@ -22,7 +22,7 @@ class Settings extends ManifestObject /** * @var array */ - protected const CASTS = [ + protected array $casts = [ 'general' => [Field::class], 'podcast' => [Field::class], 'episode' => [Field::class], diff --git a/modules/Plugins/Manifest/WithFieldsTrait.php b/modules/Plugins/Manifest/WithFieldsTrait.php new file mode 100644 index 00000000..72ac75a2 --- /dev/null +++ b/modules/Plugins/Manifest/WithFieldsTrait.php @@ -0,0 +1,45 @@ + 'is_list', + ]]; + $this->casts = [...$this->casts, ...[ + 'fields' => [Field::class], + ]]; + } + + /** + * @param array $data + * @return array + */ + public function transformData(array $data): array + { + if (array_key_exists('fields', $data)) { + $newFields = []; + foreach ($data['fields'] as $key => $field) { + $field['key'] = $key; + $newFields[] = $field; + } + + $data['fields'] = $newFields; + } + + return $data; + } +} diff --git a/modules/Plugins/Manifest/WithOptionsTrait.php b/modules/Plugins/Manifest/WithOptionsTrait.php new file mode 100644 index 00000000..a88b0ad3 --- /dev/null +++ b/modules/Plugins/Manifest/WithOptionsTrait.php @@ -0,0 +1,69 @@ + 'is_list', + ]]; + } + + if (isset($this->casts)) { + $this->casts = [...$this->casts, ...[ + 'options' => [Option::class], + ]]; + } + } + + /** + * @param array $data + * @return array + */ + public function transformData(array $data): array + { + if (array_key_exists('options', $data)) { + $newOptions = []; + foreach ($data['options'] as $key => $option) { + $option['value'] = $key; + $newOptions[] = $option; + } + + $data['options'] = $newOptions; + } + + return $data; + } + + /** + * @return array{label:string,value:string,description:string}[] + */ + public function getOptionsArray(): array + { + $i18nKey = sprintf('%s.settings.%s.%s.options', $this->pluginKey, $this->type, $this->key); + + $optionsArray = []; + foreach ($this->options as $option) { + $optionsArray[] = [ + 'value' => $option->value, + 'label' => $option->getTranslated($i18nKey, 'label'), + 'description' => $option->getTranslated($i18nKey, 'description'), + ]; + } + + return $optionsArray; + } +} diff --git a/modules/Plugins/Manifest/manifest.schema.json b/modules/Plugins/Manifest/manifest.schema.json index eaaa27d4..fe474390 100644 --- a/modules/Plugins/Manifest/manifest.schema.json +++ b/modules/Plugins/Manifest/manifest.schema.json @@ -204,32 +204,30 @@ "optional": { "type": "boolean" }, - "defaultValue": { - "type": "string" - }, - "options": { - "type": "object", - "patternProperties": { - "^[A-Za-z0-9]+[\\w\\-\\:\\.]*$": { "$ref": "#/$defs/option" } - }, - "additionalProperties": false + + "validationRules": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "array", + "items": { + "type": "string" + } + } + ] }, "multiple": { "type": "boolean" - }, - "fields": { - "type": "object", - "patternProperties": { - "^[A-Za-z]+[\\w\\-\\:\\.]*$": { "$ref": "#/$defs/field" } - }, - "additionalProperties": false } }, "required": ["label"], - "additionalProperties": false, + "unevaluatedProperties": false, "allOf": [ { "$ref": "#/$defs/field-multiple-implies-options-is-required" }, - { "$ref": "#/$defs/field-group-type-implies-fields-is-required" } + { "$ref": "#/$defs/require-fields-for-group-type" }, + { "$ref": "#/$defs/default-value-based-on-type" } ] }, "option": { @@ -246,37 +244,160 @@ "additionalProperties": false }, "field-multiple-implies-options-is-required": { - "anyOf": [ + "if": { + "properties": { + "type": { + "enum": ["radio-group", "select", "select-multiple"] + } + } + }, + "then": { + "properties": { + "options": { + "type": "object", + "patternProperties": { + "^[A-Za-z0-9]+[\\w\\-\\:\\.]*$": { "$ref": "#/$defs/option" } + }, + "additionalProperties": false + } + }, + "required": ["options"] + } + }, + "require-fields-for-group-type": { + "if": { + "properties": { + "type": { + "const": "group" + } + } + }, + "then": { + "properties": { + "fields": { + "type": "object", + "patternProperties": { + "^[A-Za-z]+[\\w\\-\\:\\.]*$": { "$ref": "#/$defs/field" } + }, + "additionalProperties": false + } + }, + "required": ["fields"] + } + }, + "default-value-based-on-type": { + "allOf": [ { - "not": { + "if": { "properties": { "type": { - "anyOf": [ - { "const": "radio-group" }, - { "const": "select" }, - { "const": "select-multiple" } + "enum": [ + "html", + "markdown", + "radio-group", + "rss", + "select", + "text", + "textarea" ] } - }, - "required": ["type"] + } + }, + "then": { + "properties": { + "defaultValue": { "type": "string" } + } } }, - { "required": ["options"] } - ] - }, - "field-group-type-implies-fields-is-required": { - "anyOf": [ { - "not": { + "if": { "properties": { "type": { - "anyOf": [{ "const": "group" }] + "enum": ["checkbox", "toggler"] } - }, - "required": ["type"] + } + }, + "then": { + "properties": { + "defaultValue": { "type": "boolean" } + } } }, - { "required": ["fields"] } + { + "if": { + "properties": { + "type": { + "const": "datetime" + } + } + }, + "then": { + "properties": { + "defaultValue": { "type": "string", "format": "date-time" } + } + } + }, + { + "if": { + "properties": { + "type": { + "const": "email" + } + } + }, + "then": { + "properties": { + "defaultValue": { "type": "string", "format": "email" } + } + } + }, + { + "if": { + "properties": { + "type": { + "const": "number" + } + } + }, + "then": { + "properties": { + "defaultValue": { "type": "number" } + } + } + }, + { + "if": { + "properties": { + "type": { + "const": "select-multiple" + } + } + }, + "then": { + "properties": { + "defaultValue": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + { + "if": { + "properties": { + "type": { + "const": "url" + } + } + }, + "then": { + "properties": { + "defaultValue": { "type": "string", "format": "uri" } + } + } + } ] } } diff --git a/package.json b/package.json index 36cc5a50..91e53210 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "@codemirror/lang-xml": "^6.1.0", "@codemirror/language": "^6.10.7", "@codemirror/state": "^6.5.0", - "@codemirror/view": "^6.35.3", + "@codemirror/view": "^6.36.1", "@floating-ui/dom": "^1.6.12", "@github/clipboard-copy-element": "^1.3.0", "@github/hotkey": "^3.1.1", @@ -51,7 +51,7 @@ "leaflet.markercluster": "^1.5.3", "lit": "^3.2.1", "marked": "^15.0.4", - "wavesurfer.js": "^7.8.11", + "wavesurfer.js": "^7.8.12", "xml-formatter": "^3.6.3" }, "devDependencies": { @@ -76,7 +76,7 @@ "eslint": "^9.17.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.2.1", - "globals": "^15.13.0", + "globals": "^15.14.0", "husky": "^9.1.7", "is-ci": "^4.1.0", "lint-staged": "^15.2.11", @@ -91,10 +91,10 @@ "stylelint": "^16.12.0", "stylelint-config-standard": "^36.0.1", "svgo": "^3.3.2", - "tailwindcss": "^3.4.16", + "tailwindcss": "^3.4.17", "typescript": "~5.7.2", "typescript-eslint": "^8.18.1", - "vite": "^6.0.3", + "vite": "^6.0.5", "vite-plugin-pwa": "^0.21.1", "workbox-build": "^7.3.0", "workbox-core": "^7.3.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f08d739e..a57e6e39 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -29,8 +29,8 @@ importers: specifier: ^6.5.0 version: 6.5.0 "@codemirror/view": - specifier: ^6.35.3 - version: 6.35.3 + specifier: ^6.36.1 + version: 6.36.1 "@floating-ui/dom": specifier: ^1.6.12 version: 1.6.12 @@ -77,8 +77,8 @@ importers: specifier: ^15.0.4 version: 15.0.4 wavesurfer.js: - specifier: ^7.8.11 - version: 7.8.11 + specifier: ^7.8.12 + version: 7.8.12 xml-formatter: specifier: ^3.6.3 version: 3.6.3 @@ -112,10 +112,10 @@ importers: version: 13.2.3(semantic-release@24.2.0(typescript@5.7.2)) "@tailwindcss/forms": specifier: ^0.5.9 - version: 0.5.9(tailwindcss@3.4.16) + version: 0.5.9(tailwindcss@3.4.17) "@tailwindcss/typography": specifier: ^0.5.15 - version: 0.5.15(tailwindcss@3.4.16) + version: 0.5.15(tailwindcss@3.4.17) "@types/eslint__js": specifier: ^8.42.3 version: 8.42.3 @@ -147,8 +147,8 @@ importers: specifier: ^5.2.1 version: 5.2.1(@types/eslint@9.6.1)(eslint-config-prettier@9.1.0(eslint@9.17.0(jiti@2.4.1)))(eslint@9.17.0(jiti@2.4.1))(prettier@3.4.2) globals: - specifier: ^15.13.0 - version: 15.13.0 + specifier: ^15.14.0 + version: 15.14.0 husky: specifier: ^9.1.7 version: 9.1.7 @@ -192,8 +192,8 @@ importers: specifier: ^3.3.2 version: 3.3.2 tailwindcss: - specifier: ^3.4.16 - version: 3.4.16 + specifier: ^3.4.17 + version: 3.4.17 typescript: specifier: ~5.7.2 version: 5.7.2 @@ -201,11 +201,11 @@ importers: specifier: ^8.18.1 version: 8.18.1(eslint@9.17.0(jiti@2.4.1))(typescript@5.7.2) vite: - specifier: ^6.0.3 - version: 6.0.3(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1) + specifier: ^6.0.5 + version: 6.0.5(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1) vite-plugin-pwa: specifier: ^0.21.1 - version: 0.21.1(vite@6.0.3(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1))(workbox-build@7.3.0)(workbox-window@7.3.0) + version: 0.21.1(vite@6.0.5(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1))(workbox-build@7.3.0)(workbox-window@7.3.0) workbox-build: specifier: ^7.3.0 version: 7.3.0 @@ -1083,10 +1083,10 @@ packages: integrity: sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==, } - "@codemirror/view@6.35.3": + "@codemirror/view@6.36.1": resolution: { - integrity: sha512-ScY7L8+EGdPl4QtoBiOzE4FELp7JmNUsBvgBcCakXWM2uiv/K89VAzU3BMDscf0DsACLvTKePbd5+cFDTcei6g==, + integrity: sha512-miD1nyT4m4uopZaDdO2uXU/LLHliKNYL9kB1C1wJHrunHLm/rpkb5QVSokqgw9hFqEZakrdlb/VGWX8aYZTslQ==, } "@colors/colors@1.5.0": @@ -4796,10 +4796,10 @@ packages: } engines: { node: ">=18" } - globals@15.13.0: + globals@15.14.0: resolution: { - integrity: sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==, + integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==, } engines: { node: ">=18" } @@ -8267,10 +8267,10 @@ packages: } engines: { node: ">=10.0.0" } - tailwindcss@3.4.16: + tailwindcss@3.4.17: resolution: { - integrity: sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==, + integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==, } engines: { node: ">=14.0.0" } hasBin: true @@ -8699,10 +8699,10 @@ packages: "@vite-pwa/assets-generator": optional: true - vite@6.0.3: + vite@6.0.5: resolution: { - integrity: sha512-Cmuo5P0ENTN6HxLSo6IHsjCLn/81Vgrp81oaiFFMRa8gGDj5xEjIcEpf2ZymZtZR8oU0P2JX5WuUp/rlXcHkAw==, + integrity: sha512-akD5IAH/ID5imgue2DYhzsEwCi0/4VKY31uhMLEYJwPP4TiUp8pL5PIK+Wo7H8qT8JY9i+pVfPydcFPYD1EL7g==, } engines: { node: ^18.0.0 || ^20.0.0 || >=22.0.0 } hasBin: true @@ -8748,10 +8748,10 @@ packages: integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==, } - wavesurfer.js@7.8.11: + wavesurfer.js@7.8.12: resolution: { - integrity: sha512-bZs7A0vtTVOhuPoDGOXVevAIm+KVYBGwddjL9AeOS7kp/oPcVH9hQWQyR2rBAAfN6s0BKI+EdPEalkNaOmkA6A==, + integrity: sha512-Ovyv3ASEXXWmQVh3clpaZufkraRSg2Uv+28Z5zBHL4nB1HgTZ64lcFMUXX7yZlV5WAIN5ST9w3naaYmOdV2+iw==, } wcwidth@1.0.1: @@ -9015,14 +9015,6 @@ packages: integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==, } - yaml@2.6.0: - resolution: - { - integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==, - } - engines: { node: ">= 14" } - hasBin: true - yaml@2.6.1: resolution: { @@ -9785,23 +9777,23 @@ snapshots: "@babel/helper-string-parser": 7.25.9 "@babel/helper-validator-identifier": 7.25.9 - "@codemirror/autocomplete@6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.35.3)(@lezer/common@1.2.3)": + "@codemirror/autocomplete@6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.36.1)(@lezer/common@1.2.3)": dependencies: "@codemirror/language": 6.10.7 "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 "@lezer/common": 1.2.3 "@codemirror/commands@6.7.1": dependencies: "@codemirror/language": 6.10.7 "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 "@lezer/common": 1.2.3 - "@codemirror/lang-css@6.3.1(@codemirror/view@6.35.3)": + "@codemirror/lang-css@6.3.1(@codemirror/view@6.36.1)": dependencies: - "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.35.3)(@lezer/common@1.2.3) + "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.36.1)(@lezer/common@1.2.3) "@codemirror/language": 6.10.7 "@codemirror/state": 6.5.0 "@lezer/common": 1.2.3 @@ -9811,39 +9803,39 @@ snapshots: "@codemirror/lang-html@6.4.9": dependencies: - "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.35.3)(@lezer/common@1.2.3) - "@codemirror/lang-css": 6.3.1(@codemirror/view@6.35.3) + "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.36.1)(@lezer/common@1.2.3) + "@codemirror/lang-css": 6.3.1(@codemirror/view@6.36.1) "@codemirror/lang-javascript": 6.2.2 "@codemirror/language": 6.10.7 "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 "@lezer/common": 1.2.3 "@lezer/css": 1.1.9 "@lezer/html": 1.3.10 "@codemirror/lang-javascript@6.2.2": dependencies: - "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.35.3)(@lezer/common@1.2.3) + "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.36.1)(@lezer/common@1.2.3) "@codemirror/language": 6.10.7 "@codemirror/lint": 6.8.2 "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 "@lezer/common": 1.2.3 "@lezer/javascript": 1.4.21 "@codemirror/lang-xml@6.1.0": dependencies: - "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.35.3)(@lezer/common@1.2.3) + "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.36.1)(@lezer/common@1.2.3) "@codemirror/language": 6.10.7 "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 "@lezer/common": 1.2.3 "@lezer/xml": 1.0.5 "@codemirror/language@6.10.7": dependencies: "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 "@lezer/common": 1.2.3 "@lezer/highlight": 1.2.1 "@lezer/lr": 1.4.2 @@ -9852,20 +9844,20 @@ snapshots: "@codemirror/lint@6.8.2": dependencies: "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 crelt: 1.0.6 "@codemirror/search@6.5.7": dependencies: "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 crelt: 1.0.6 "@codemirror/state@6.5.0": dependencies: "@marijn/find-cluster-break": 1.0.2 - "@codemirror/view@6.35.3": + "@codemirror/view@6.36.1": dependencies: "@codemirror/state": 6.5.0 style-mod: 4.1.2 @@ -10857,18 +10849,18 @@ snapshots: dependencies: defer-to-connect: 2.0.1 - "@tailwindcss/forms@0.5.9(tailwindcss@3.4.16)": + "@tailwindcss/forms@0.5.9(tailwindcss@3.4.17)": dependencies: mini-svg-data-uri: 1.4.4 - tailwindcss: 3.4.16 + tailwindcss: 3.4.17 - "@tailwindcss/typography@0.5.15(tailwindcss@3.4.16)": + "@tailwindcss/typography@0.5.15(tailwindcss@3.4.17)": dependencies: lodash.castarray: 4.4.0 lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.4.16 + tailwindcss: 3.4.17 "@trysound/sax@0.2.0": {} @@ -11342,13 +11334,13 @@ snapshots: codemirror@6.0.1(@lezer/common@1.2.3): dependencies: - "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.35.3)(@lezer/common@1.2.3) + "@codemirror/autocomplete": 6.18.2(@codemirror/language@6.10.7)(@codemirror/state@6.5.0)(@codemirror/view@6.36.1)(@lezer/common@1.2.3) "@codemirror/commands": 6.7.1 "@codemirror/language": 6.10.7 "@codemirror/lint": 6.8.2 "@codemirror/search": 6.5.7 "@codemirror/state": 6.5.0 - "@codemirror/view": 6.35.3 + "@codemirror/view": 6.36.1 transitivePeerDependencies: - "@lezer/common" @@ -12165,7 +12157,7 @@ snapshots: foreground-child@3.3.0: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 signal-exit: 4.1.0 form-data-encoder@4.0.2: {} @@ -12320,7 +12312,7 @@ snapshots: globals@14.0.0: {} - globals@15.13.0: {} + globals@15.14.0: {} globalthis@1.0.4: dependencies: @@ -13421,7 +13413,7 @@ snapshots: postcss-load-config@4.0.2(postcss@8.4.49): dependencies: lilconfig: 3.1.3 - yaml: 2.6.0 + yaml: 2.6.1 optionalDependencies: postcss: 8.4.49 @@ -14293,7 +14285,7 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 - tailwindcss@3.4.16: + tailwindcss@3.4.17: dependencies: "@alloc/quick-lru": 5.2.0 arg: 5.0.2 @@ -14537,18 +14529,18 @@ snapshots: spdx-correct: 3.2.0 spdx-expression-parse: 3.0.1 - vite-plugin-pwa@0.21.1(vite@6.0.3(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1))(workbox-build@7.3.0)(workbox-window@7.3.0): + vite-plugin-pwa@0.21.1(vite@6.0.5(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1))(workbox-build@7.3.0)(workbox-window@7.3.0): dependencies: debug: 4.3.7 pretty-bytes: 6.1.1 tinyglobby: 0.2.10 - vite: 6.0.3(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1) + vite: 6.0.5(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1) workbox-build: 7.3.0 workbox-window: 7.3.0 transitivePeerDependencies: - supports-color - vite@6.0.3(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1): + vite@6.0.5(@types/node@22.9.0)(jiti@2.4.1)(terser@5.36.0)(yaml@2.6.1): dependencies: esbuild: 0.24.0 postcss: 8.4.49 @@ -14562,7 +14554,7 @@ snapshots: w3c-keyname@2.2.8: {} - wavesurfer.js@7.8.11: {} + wavesurfer.js@7.8.12: {} wcwidth@1.0.1: dependencies: @@ -14775,8 +14767,6 @@ snapshots: yallist@3.1.1: {} - yaml@2.6.0: {} - yaml@2.6.1: {} yargs-parser@18.1.3: diff --git a/themes/cp_admin/plugins/_field.php b/themes/cp_admin/plugins/_field.php deleted file mode 100644 index 12849892..00000000 --- a/themes/cp_admin/plugins/_field.php +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/themes/cp_admin/plugins/_settings_form.php b/themes/cp_admin/plugins/_settings_form.php index be887ce5..0da038ad 100644 --- a/themes/cp_admin/plugins/_settings_form.php +++ b/themes/cp_admin/plugins/_settings_form.php @@ -9,25 +9,14 @@ if ($field->type === 'group'): ?>
- getTranslated($plugin->getKey(), 'label') ?> + label ?> getKey(), $field->key, $context) ?? ['']; foreach ($fieldArrayValues as $index => $value): ?>
- getTranslated($plugin->getKey(), 'label') ?> + label ?> fields as $subfield): ?> - 'flex-1', - 'type' => $subfield->type, - 'name' => sprintf('%s[%s][%s]', $field->key, $index, $subfield->key), - 'label' => $subfield->getTranslated($plugin->getKey(), 'label'), - 'hint' => $subfield->getTranslated($plugin->getKey(), 'hint'), - 'value' => $value[$subfield->key] ?? null, - 'helper' => $subfield->getTranslated($plugin->getKey(), 'helper'), - 'defaultValue' => esc($subfield->defaultValue), - 'options' => esc(json_encode($subfield->getOptionsArray($plugin->getKey()))), - 'optional' => $subfield->optional, - ]) ?> + render(sprintf('%s[%s][%s]', $field->key, $index, $subfield->key), $value[$subfield->key] ?? null, 'flex-1'); ?>
@@ -42,18 +31,7 @@ foreach ($fieldArrayValue as $index => $value): ?>
- 'flex-1', - 'type' => $field->type, - 'name' => sprintf('%s[%s]', $field->key, $index), - 'label' => $field->getTranslated($plugin->getKey(), 'label'), - 'hint' => $field->getTranslated($plugin->getKey(), 'hint'), - 'value' => $value, - 'helper' => $field->getTranslated($plugin->getKey(), 'helper'), - 'defaultValue' => esc($field->defaultValue), - 'options' => esc(json_encode($field->getOptionsArray($plugin->getKey()))), - 'optional' => $field->optional, - ]) ?> + render(sprintf('%s[%s]', $field->key, $index), $value, 'flex-1'); ?>
@@ -64,35 +42,13 @@ type === 'group'): $value = get_plugin_setting($plugin->getKey(), $field->key, $context); ?>
- getTranslated($plugin->getKey(), 'label') ?> + label ?> fields as $subfield): ?> - 'flex-1', - 'type' => $subfield->type, - 'name' => sprintf('%s[%s]', $field->key, $subfield->key), - 'label' => $subfield->getTranslated($plugin->getKey(), 'label'), - 'hint' => $subfield->getTranslated($plugin->getKey(), 'hint'), - 'value' => $value[$subfield->key] ?? null, - 'helper' => $subfield->getTranslated($plugin->getKey(), 'helper'), - 'defaultValue' => esc($subfield->defaultValue), - 'options' => esc(json_encode($subfield->getOptionsArray($plugin->getKey()))), - 'optional' => $subfield->optional, - ]) ?> + render(sprintf('%s[%s]', $field->key, $subfield->key), $value[$subfield->key] ?? null, 'flex-1'); ?>
- '', - 'type' => $field->type, - 'name' => $field->key, - 'label' => $field->getTranslated($plugin->getKey(), 'label'), - 'hint' => $field->getTranslated($plugin->getKey(), 'hint'), - 'value' => get_plugin_setting($plugin->getKey(), $field->key, $context), - 'helper' => $field->getTranslated($plugin->getKey(), 'helper'), - 'defaultValue' => esc($field->defaultValue), - 'options' => esc(json_encode($field->getOptionsArray($plugin->getKey()))), - 'optional' => $field->optional, - ]) ?> + render($field->key, get_plugin_setting($plugin->getKey(), $field->key, $context)); ?> @@ -101,4 +57,5 @@ - \ No newline at end of file + + diff --git a/themes/cp_admin/podcast/edit.php b/themes/cp_admin/podcast/edit.php index b8e6aaa9..89d7cc0f 100644 --- a/themes/cp_admin/podcast/edit.php +++ b/themes/cp_admin/podcast/edit.php @@ -102,7 +102,7 @@ name="other_categories" label="" data-max-item-count="2" - value="other_categories_ids ?>" + value="other_categories_ids)) ?>" options="" />