From d0933d7b556e245e889e215f23308e2889daffa7 Mon Sep 17 00:00:00 2001 From: Sun-ZhenXing <1006925066@qq.com> Date: Wed, 15 Apr 2026 10:44:10 +0800 Subject: [PATCH] refactor: spilt operator/.. --- .../base.instructions.md => AGENTS.md | 13 +- package.json | 6 +- pnpm-lock.yaml | 1263 +++++++++-------- src/_template/operator.mk | 6 +- src/cassandra-operator/Makefile | 15 + src/cassandra-operator/README.md | 60 + src/cassandra-operator/README.zh.md | 60 + src/cassandra-operator/k8ssandra-cluster.yaml | 38 + src/cassandra-operator/values.yaml | 28 + src/cassandra/Makefile | 23 +- src/cassandra/README.md | 71 +- src/cassandra/README.zh.md | 71 +- src/cassandra/values-cluster.yaml | 41 - src/cassandra/values.yaml | 46 +- src/clickhouse-operator/Makefile | 15 + src/clickhouse-operator/README.md | 91 ++ src/clickhouse-operator/README.zh.md | 91 ++ src/clickhouse-operator/values.yaml | 5 + src/clickhouse/README.md | 2 + src/clickhouse/README.zh.md | 2 + src/elasticsearch-operator/Makefile | 15 + src/elasticsearch-operator/README.md | 85 ++ src/elasticsearch-operator/README.zh.md | 85 ++ src/elasticsearch-operator/values.yaml | 20 + src/elasticsearch/README.md | 2 + src/elasticsearch/README.zh.md | 2 + src/flink-operator/Makefile | 15 + src/flink-operator/README.md | 44 + src/flink-operator/README.zh.md | 44 + src/flink-operator/flink-deployment.yaml | 25 + src/{flink => flink-operator}/values.yaml | 0 src/flink/Makefile | 30 - src/flink/README.md | 29 - src/flink/README.zh.md | 29 - src/flink/values-cluster.yaml | 33 - src/kafka-operator/Makefile | 15 + src/kafka-operator/README.md | 48 + src/kafka-operator/README.zh.md | 48 + .../kafka-cluster.yaml | 0 src/{kafka => kafka-operator}/values.yaml | 0 src/kafka/Makefile | 35 - src/kafka/README.md | 27 - src/kafka/README.zh.md | 27 - src/milvus-operator/Makefile | 15 + src/milvus-operator/README.md | 87 ++ src/milvus-operator/README.zh.md | 87 ++ src/milvus-operator/values.yaml | 14 + src/milvus/README.md | 2 + src/milvus/README.zh.md | 2 + src/mongodb-operator/Makefile | 15 + src/mongodb-operator/README.md | 80 ++ src/mongodb-operator/README.zh.md | 80 ++ src/mongodb-operator/values.yaml | 17 + src/mongodb/README.md | 2 + src/mongodb/README.zh.md | 2 + src/mysql-operator/Makefile | 15 + src/mysql-operator/README.md | 42 + src/mysql-operator/README.zh.md | 42 + src/mysql-operator/values.yaml | 5 + src/mysql/Makefile | 19 +- src/mysql/README.md | 8 +- src/mysql/README.zh.md | 8 +- src/nebulagraph-operator/Makefile | 15 + src/nebulagraph-operator/README.md | 42 + src/nebulagraph-operator/README.zh.md | 42 + src/nebulagraph-operator/values.yaml | 13 + src/nebulagraph/Makefile | 19 +- src/nebulagraph/README.md | 15 +- src/nebulagraph/README.zh.md | 15 +- src/openlit-operator/Makefile | 15 + src/openlit-operator/README.md | 51 + src/openlit-operator/README.zh.md | 51 + .../auto-instrumentation.yaml | 13 + src/openlit-operator/values.yaml | 19 + src/openlit/Makefile | 15 + src/openlit/README.md | 45 + src/openlit/README.zh.md | 45 + src/openlit/values.yaml | 22 + src/postgres-operator/Makefile | 15 + src/postgres-operator/README.md | 76 + src/postgres-operator/README.zh.md | 76 + src/postgres-operator/values.yaml | 14 + src/postgres/README.md | 2 + src/postgres/README.zh.md | 4 +- src/rabbitmq-cluster-operator/Makefile | 30 +- src/rabbitmq-cluster-operator/README.md | 4 +- src/rabbitmq-cluster-operator/README.zh.md | 6 +- src/rabbitmq/README.md | 2 + src/rabbitmq/README.zh.md | 2 + src/vault/Makefile | 2 +- 90 files changed, 2710 insertions(+), 1107 deletions(-) rename .github/instructions/base.instructions.md => AGENTS.md (70%) create mode 100644 src/cassandra-operator/Makefile create mode 100644 src/cassandra-operator/README.md create mode 100644 src/cassandra-operator/README.zh.md create mode 100644 src/cassandra-operator/k8ssandra-cluster.yaml create mode 100644 src/cassandra-operator/values.yaml delete mode 100644 src/cassandra/values-cluster.yaml create mode 100644 src/clickhouse-operator/Makefile create mode 100644 src/clickhouse-operator/README.md create mode 100644 src/clickhouse-operator/README.zh.md create mode 100644 src/clickhouse-operator/values.yaml create mode 100644 src/elasticsearch-operator/Makefile create mode 100644 src/elasticsearch-operator/README.md create mode 100644 src/elasticsearch-operator/README.zh.md create mode 100644 src/elasticsearch-operator/values.yaml create mode 100644 src/flink-operator/Makefile create mode 100644 src/flink-operator/README.md create mode 100644 src/flink-operator/README.zh.md create mode 100644 src/flink-operator/flink-deployment.yaml rename src/{flink => flink-operator}/values.yaml (100%) delete mode 100644 src/flink/Makefile delete mode 100644 src/flink/README.md delete mode 100644 src/flink/README.zh.md delete mode 100644 src/flink/values-cluster.yaml create mode 100644 src/kafka-operator/Makefile create mode 100644 src/kafka-operator/README.md create mode 100644 src/kafka-operator/README.zh.md rename src/{kafka => kafka-operator}/kafka-cluster.yaml (100%) rename src/{kafka => kafka-operator}/values.yaml (100%) delete mode 100644 src/kafka/Makefile delete mode 100644 src/kafka/README.md delete mode 100644 src/kafka/README.zh.md create mode 100644 src/milvus-operator/Makefile create mode 100644 src/milvus-operator/README.md create mode 100644 src/milvus-operator/README.zh.md create mode 100644 src/milvus-operator/values.yaml create mode 100644 src/mongodb-operator/Makefile create mode 100644 src/mongodb-operator/README.md create mode 100644 src/mongodb-operator/README.zh.md create mode 100644 src/mongodb-operator/values.yaml create mode 100644 src/mysql-operator/Makefile create mode 100644 src/mysql-operator/README.md create mode 100644 src/mysql-operator/README.zh.md create mode 100644 src/mysql-operator/values.yaml create mode 100644 src/nebulagraph-operator/Makefile create mode 100644 src/nebulagraph-operator/README.md create mode 100644 src/nebulagraph-operator/README.zh.md create mode 100644 src/nebulagraph-operator/values.yaml create mode 100644 src/openlit-operator/Makefile create mode 100644 src/openlit-operator/README.md create mode 100644 src/openlit-operator/README.zh.md create mode 100644 src/openlit-operator/auto-instrumentation.yaml create mode 100644 src/openlit-operator/values.yaml create mode 100644 src/openlit/Makefile create mode 100644 src/openlit/README.md create mode 100644 src/openlit/README.zh.md create mode 100644 src/openlit/values.yaml create mode 100644 src/postgres-operator/Makefile create mode 100644 src/postgres-operator/README.md create mode 100644 src/postgres-operator/README.zh.md create mode 100644 src/postgres-operator/values.yaml diff --git a/.github/instructions/base.instructions.md b/AGENTS.md similarity index 70% rename from .github/instructions/base.instructions.md rename to AGENTS.md index 238ac2b..09e71ae 100644 --- a/.github/instructions/base.instructions.md +++ b/AGENTS.md @@ -1,7 +1,3 @@ ---- -description: Describe the guidelines for contributing to the Helm Command Template project. ---- - # Helm Command Template Project Guidelines ## 1. Project Intent @@ -35,6 +31,15 @@ When contributing to or maintaining this project, you must adhere to the followi 2. **Installation:** How to use `make install`. 3. **Usage:** Basic verification or connection steps. +* **Operator / Service Separation:** + * **Operators and services MUST be in separate directories.** Never mix an operator deployment and its managed service/cluster in the same directory. + * An operator-only directory should be named `-operator/` (e.g., `mysql-operator/`, `cassandra-operator/`). + * A service/cluster directory should use the plain service name (e.g., `mysql/`, `cassandra/`). + * The operator directory's Makefile should only include `../_template/base.mk` and deploy the operator chart directly via the standard `install` target. Do **not** use `operator.mk` in either directory — `operator.mk` is deprecated for new services. + * The service/cluster directory's README must state that the operator must be installed first, with a link to the operator directory (e.g., `See [mysql-operator](../mysql-operator/)`). + * If a service is inherently operator-only with no separate cluster chart (e.g., Strimzi Kafka), the directory should still be named `-operator/` and include any sample CRD manifests (e.g., `kafka-cluster.yaml`) for creating resources after the operator is installed. + * When evaluating a new service that uses the operator pattern, search the upstream operator's GitHub repository and Helm chart registry to confirm the correct chart names and repo URLs for both the operator and the cluster/service charts. + * **Command Interface:** * The end-user interaction must remain simple. The primary entry point for any service is executing `make install` inside its directory. diff --git a/package.json b/package.json index b7ef0a4..4370ea4 100644 --- a/package.json +++ b/package.json @@ -17,9 +17,9 @@ "prepare": "simple-git-hooks" }, "devDependencies": { - "@antfu/eslint-config": "^7.4.3", - "eslint": "^10.0.1", - "lint-staged": "^16.2.7", + "@antfu/eslint-config": "^8.2.0", + "eslint": "^10.2.0", + "lint-staged": "^16.4.0", "simple-git-hooks": "^2.13.1" }, "simple-git-hooks": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 742029b..8c862a6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,28 +9,28 @@ importers: .: devDependencies: '@antfu/eslint-config': - specifier: ^7.4.3 - version: 7.4.3(@vue/compiler-sfc@3.5.28)(eslint@10.0.1)(typescript@5.9.3) + specifier: ^8.2.0 + version: 8.2.0(@typescript-eslint/rule-tester@8.58.2(eslint@10.2.0)(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.58.2(typescript@5.9.3))(@typescript-eslint/utils@8.58.2(eslint@10.2.0)(typescript@5.9.3))(@vue/compiler-sfc@3.5.28)(eslint@10.2.0)(typescript@5.9.3) eslint: - specifier: ^10.0.1 - version: 10.0.1 + specifier: ^10.2.0 + version: 10.2.0 lint-staged: - specifier: ^16.2.7 - version: 16.2.7 + specifier: ^16.4.0 + version: 16.4.0 simple-git-hooks: specifier: ^2.13.1 version: 2.13.1 packages: - '@antfu/eslint-config@7.4.3': - resolution: {integrity: sha512-qHOG2408wBz21x191n0Mm9r2q/PqMYul+YE+DUBqZMtJYUn+bd+Dh3g8LIkyItMJR+Xs9f9TKXJehZLRYxJlHg==} + '@antfu/eslint-config@8.2.0': + resolution: {integrity: sha512-spfwYXMNrlkl69riTSBnbC0C2K8EVfVMOK3ceP2EpAAioyfprIW1gTwyLRtd9jZSFeNdX4mFNAIG+o0sOneOfA==} hasBin: true peerDependencies: '@angular-eslint/eslint-plugin': ^21.1.0 '@angular-eslint/eslint-plugin-template': ^21.1.0 '@angular-eslint/template-parser': ^21.1.0 - '@eslint-react/eslint-plugin': ^2.11.0 + '@eslint-react/eslint-plugin': ^3.0.0 '@next/eslint-plugin-next': '>=15.0.0' '@prettier/plugin-xml': ^3.4.1 '@unocss/eslint-plugin': '>=0.50.0' @@ -39,7 +39,6 @@ packages: eslint-plugin-astro: ^1.2.0 eslint-plugin-format: '>=0.1.0' eslint-plugin-jsx-a11y: '>=6.10.2' - eslint-plugin-react-hooks: ^7.0.0 eslint-plugin-react-refresh: ^0.5.0 eslint-plugin-solid: ^0.14.3 eslint-plugin-svelte: '>=2.35.1' @@ -70,8 +69,6 @@ packages: optional: true eslint-plugin-jsx-a11y: optional: true - eslint-plugin-react-hooks: - optional: true eslint-plugin-react-refresh: optional: true eslint-plugin-solid: @@ -98,8 +95,8 @@ packages: resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} engines: {node: '>=6.9.0'} - '@babel/parser@7.29.0': - resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==} + '@babel/parser@7.29.2': + resolution: {integrity: sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==} engines: {node: '>=6.0.0'} hasBin: true @@ -107,29 +104,40 @@ packages: resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} engines: {node: '>=6.9.0'} - '@clack/core@1.0.1': - resolution: {integrity: sha512-WKeyK3NOBwDOzagPR5H08rFk9D/WuN705yEbuZvKqlkmoLM2woKtXb10OO2k1NoSU4SFG947i2/SCYh+2u5e4g==} + '@clack/core@1.2.0': + resolution: {integrity: sha512-qfxof/3T3t9DPU/Rj3OmcFyZInceqj/NVtO9rwIuJqCUgh32gwPjpFQQp/ben07qKlhpwq7GzfWpST4qdJ5Drg==} - '@clack/prompts@1.0.1': - resolution: {integrity: sha512-/42G73JkuYdyWZ6m8d/CJtBrGl1Hegyc7Fy78m5Ob+jF85TOUmLR5XLce/U3LxYAw0kJ8CT5aI99RIvPHcGp/Q==} + '@clack/prompts@1.2.0': + resolution: {integrity: sha512-4jmztR9fMqPMjz6H/UZXj0zEmE43ha1euENwkckKKel4XpSfokExPo5AiVStdHSAlHekz4d0CA/r45Ok1E4D3w==} - '@es-joy/jsdoccomment@0.78.0': - resolution: {integrity: sha512-rQkU5u8hNAq2NVRzHnIUUvR6arbO0b6AOlvpTNS48CkiKSn/xtNfOzBK23JE4SiW89DgvU7GtxLVgV4Vn2HBAw==} - engines: {node: '>=20.11.0'} + '@e18e/eslint-plugin@0.3.0': + resolution: {integrity: sha512-hHgfpxsrZ2UYHcicA+tGZnmk19uJTaye9VH79O+XS8R4ona2Hx3xjhXghclNW58uXMk3xXlbYEOMr8thsoBmWg==} + peerDependencies: + eslint: ^9.0.0 || ^10.0.0 + oxlint: ^1.55.0 + peerDependenciesMeta: + eslint: + optional: true + oxlint: + optional: true '@es-joy/jsdoccomment@0.84.0': resolution: {integrity: sha512-0xew1CxOam0gV5OMjh2KjFQZsKL2bByX1+q4j3E73MpYIdyUxcZb/xQct9ccUb+ve5KGUYbCUxyPnYB7RbuP+w==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@es-joy/jsdoccomment@0.86.0': + resolution: {integrity: sha512-ukZmRQ81WiTpDWO6D/cTBM7XbrNtutHKvAVnZN/8pldAwLoJArGOvkNyxPTBGsPjsoaQBJxlH+tE2TNA/92Qgw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@es-joy/resolve.exports@1.2.0': resolution: {integrity: sha512-Q9hjxWI5xBM+qW2enxfe8wDKdFWMfd0Z29k5ZJnuBqD/CasY5Zryj09aCA6owbGATWz+39p5uIdaHXpopOcG8g==} engines: {node: '>=10'} - '@eslint-community/eslint-plugin-eslint-comments@4.6.0': - resolution: {integrity: sha512-2EX2bBQq1ez++xz2o9tEeEQkyvfieWgUFMH4rtJJri2q0Azvhja3hZGXsjPXs31R4fQkZDtWzNDDK2zQn5UE5g==} + '@eslint-community/eslint-plugin-eslint-comments@4.7.1': + resolution: {integrity: sha512-Ql2nJFwA8wUGpILYGOQaT1glPsmvEwE0d+a+l7AALLzQvInqdbXJdx7aSu0DpUX9dB1wMVBMhm99/++S3MdEtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 '@eslint-community/eslint-utils@4.9.1': resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} @@ -141,8 +149,8 @@ packages: resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/compat@2.0.2': - resolution: {integrity: sha512-pR1DoD0h3HfF675QZx0xsyrsU8q70Z/plx7880NOhS02NuWLgBCOMDL787nUeQ7EWLkxv3bPQJaarjcPQb2Dwg==} + '@eslint/compat@2.0.5': + resolution: {integrity: sha512-IbHDbHJfkVNv6xjlET8AIVo/K1NQt7YT4Rp6ok/clyBGcpRx1l6gv0Rq3vBvYfPJIZt6ODf66Zq08FJNDpnzgg==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: ^8.40 || 9 || 10 @@ -150,36 +158,32 @@ packages: eslint: optional: true - '@eslint/config-array@0.23.2': - resolution: {integrity: sha512-YF+fE6LV4v5MGWRGj7G404/OZzGNepVF8fxk7jqmqo3lrza7a0uUcDnROGRBG1WFC1omYUS/Wp1f42i0M+3Q3A==} + '@eslint/config-array@0.23.5': + resolution: {integrity: sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.5.2': - resolution: {integrity: sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==} + '@eslint/config-helpers@0.5.5': + resolution: {integrity: sha512-eIJYKTCECbP/nsKaaruF6LW967mtbQbsw4JTtSVkUQc9MneSkbrgPJAbKl9nWr0ZeowV8BfsarBmPpBzGelA2w==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/core@0.17.0': - resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/core@1.1.0': - resolution: {integrity: sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==} + '@eslint/core@1.2.1': + resolution: {integrity: sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/markdown@7.5.1': - resolution: {integrity: sha512-R8uZemG9dKTbru/DQRPblbJyXpObwKzo8rv1KYGGuPUPtjM4LXBYM9q5CIZAComzZupws3tWbDwam5AFpPLyJQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/object-schema@3.0.2': - resolution: {integrity: sha512-HOy56KJt48Bx8KmJ+XGQNSUMT/6dZee/M54XyUyuvTvPXJmsERRvBchsUVx1UMe1WwIH49XLAczNC7V2INsuUw==} + '@eslint/markdown@8.0.1': + resolution: {integrity: sha512-WWKmld/EyNdEB8GMq7JMPX1SDWgyJAM1uhtCi5ySrqYQM4HQjmg11EX/q3ZpnpRXHfdccFtli3NBvvGaYjWyQw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/plugin-kit@0.4.1': - resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/object-schema@3.0.5': + resolution: {integrity: sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/plugin-kit@0.6.0': - resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==} + '@eslint/plugin-kit@0.6.1': + resolution: {integrity: sha512-iH1B076HoAshH1mLpHMgwdGeTs0CYwL0SPMkGuSebZrwBp16v415e9NZXg2jtrqPVQjf6IANe2Vtlr5KswtcZQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@eslint/plugin-kit@0.7.1': + resolution: {integrity: sha512-rZAP3aVgB9ds9KOeUSL+zZ21hPmo8dh6fnIFwRQj5EAZl9gzR7wxYbYXYysAM8CTqGmUGyp2S4kUdV17MnGuWQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@humanfs/core@0.19.1': @@ -201,12 +205,9 @@ packages: '@jridgewell/sourcemap-codec@1.5.5': resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} - '@ota-meshi/ast-token-store@0.2.1': - resolution: {integrity: sha512-+8oB1wcOSWJCR6vAm2ioSLas7SoPwp+8tZ1Tcy8DSVEHMip6jxxlGu6EsRzJLAYVCyzKQ38B5pAqSbon1l1rmA==} + '@ota-meshi/ast-token-store@0.3.0': + resolution: {integrity: sha512-XRO0zi2NIUKq2lUk3T1ecFSld1fMWRKE6naRFGkgkdeosx7IslyUKNv5Dcb5PJTja9tHJoFu0v/7yEpAkrkrTg==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - peerDependencies: - '@eslint/markdown': ^7.4.0 - eslint: '>=9.0.0' '@pkgr/core@0.2.9': resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==} @@ -216,14 +217,14 @@ packages: resolution: {integrity: sha512-TeheYy0ILzBEI/CO55CP6zJCSdSWeRtGnHy8U8dWSUH4I68iqTsy7HkMktR4xakThc9jotkPQUXT4ITdbV7cHA==} engines: {node: '>=18'} - '@stylistic/eslint-plugin@5.9.0': - resolution: {integrity: sha512-FqqSkvDMYJReydrMhlugc71M76yLLQWNfmGq+SIlLa7N3kHp8Qq8i2PyWrVNAfjOyOIY+xv9XaaYwvVW7vroMA==} + '@stylistic/eslint-plugin@5.10.0': + resolution: {integrity: sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^9.0.0 || ^10.0.0 - '@types/debug@4.1.12': - resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + '@types/debug@4.1.13': + resolution: {integrity: sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==} '@types/esrecurse@4.3.1': resolution: {integrity: sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==} @@ -231,9 +232,15 @@ packages: '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + '@types/katex@0.16.8': + resolution: {integrity: sha512-trgaNyfU+Xh2Tc+ABIb44a5AYUpicB3uwirOioeOkNPPbmgRNtcWyDeeFRzjPZENO9Vq8gvVqfhaaXWLlevVwg==} + '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} @@ -243,73 +250,82 @@ packages: '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} - '@typescript-eslint/eslint-plugin@8.56.0': - resolution: {integrity: sha512-lRyPDLzNCuae71A3t9NEINBiTn7swyOhvUj3MyUOxb8x6g6vPEFoOU+ZRmGMusNC3X3YMhqMIX7i8ShqhT74Pw==} + '@typescript-eslint/eslint-plugin@8.58.2': + resolution: {integrity: sha512-aC2qc5thQahutKjP+cl8cgN9DWe3ZUqVko30CMSZHnFEHyhOYoZSzkGtAI2mcwZ38xeImDucI4dnqsHiOYuuCw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.56.0 + '@typescript-eslint/parser': ^8.58.2 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 - typescript: '>=4.8.4 <6.0.0' + typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/parser@8.56.0': - resolution: {integrity: sha512-IgSWvLobTDOjnaxAfDTIHaECbkNlAlKv2j5SjpB2v7QHKv1FIfjwMy8FsDbVfDX/KjmCmYICcw7uGaXLhtsLNg==} + '@typescript-eslint/parser@8.58.2': + resolution: {integrity: sha512-/Zb/xaIDfxeJnvishjGdcR4jmr7S+bda8PKNhRGdljDM+elXhlvN0FyPSsMnLmJUrVG9aPO6dof80wjMawsASg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 - typescript: '>=4.8.4 <6.0.0' + typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/project-service@8.56.0': - resolution: {integrity: sha512-M3rnyL1vIQOMeWxTWIW096/TtVP+8W3p/XnaFflhmcFp+U4zlxUxWj4XwNs6HbDeTtN4yun0GNTTDBw/SvufKg==} + '@typescript-eslint/project-service@8.58.2': + resolution: {integrity: sha512-Cq6UfpZZk15+r87BkIh5rDpi38W4b+Sjnb8wQCPPDDweS/LRCFjCyViEbzHk5Ck3f2QDfgmlxqSa7S7clDtlfg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '>=4.8.4 <6.0.0' + typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/scope-manager@8.56.0': - resolution: {integrity: sha512-7UiO/XwMHquH+ZzfVCfUNkIXlp/yQjjnlYUyYz7pfvlK3/EyyN6BK+emDmGNyQLBtLGaYrTAI6KOw8tFucWL2w==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@typescript-eslint/tsconfig-utils@8.56.0': - resolution: {integrity: sha512-bSJoIIt4o3lKXD3xmDh9chZcjCz5Lk8xS7Rxn+6l5/pKrDpkCwtQNQQwZ2qRPk7TkUYhrq3WPIHXOXlbXP0itg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - typescript: '>=4.8.4 <6.0.0' - - '@typescript-eslint/type-utils@8.56.0': - resolution: {integrity: sha512-qX2L3HWOU2nuDs6GzglBeuFXviDODreS58tLY/BALPC7iu3Fa+J7EOTwnX9PdNBxUI7Uh0ntP0YWGnxCkXzmfA==} + '@typescript-eslint/rule-tester@8.58.2': + resolution: {integrity: sha512-HF7ry5ZhQSLn4JAJfQCPX39D6BE5MhYXE743I0phrJw1BvB0adH8JpsEc4owCxEESQflodyhRWNUZY+m2EVenw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 - typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/types@8.56.0': - resolution: {integrity: sha512-DBsLPs3GsWhX5HylbP9HNG15U0bnwut55Lx12bHB9MpXxQ+R5GC8MwQe+N1UFXxAeQDvEsEDY6ZYwX03K7Z6HQ==} + '@typescript-eslint/scope-manager@8.58.2': + resolution: {integrity: sha512-SgmyvDPexWETQek+qzZnrG6844IaO02UVyOLhI4wpo82dpZJY9+6YZCKAMFzXb7qhx37mFK1QcPQ18tud+vo6Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.56.0': - resolution: {integrity: sha512-ex1nTUMWrseMltXUHmR2GAQ4d+WjkZCT4f+4bVsps8QEdh0vlBsaCokKTPlnqBFqqGaxilDNJG7b8dolW2m43Q==} + '@typescript-eslint/tsconfig-utils@8.58.2': + resolution: {integrity: sha512-3SR+RukipDvkkKp/d0jP0dyzuls3DbGmwDpVEc5wqk5f38KFThakqAAO0XMirWAE+kT00oTauTbzMFGPoAzB0A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '>=4.8.4 <6.0.0' + typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/utils@8.56.0': - resolution: {integrity: sha512-RZ3Qsmi2nFGsS+n+kjLAYDPVlrzf7UhTffrDIKr+h2yzAlYP/y5ZulU0yeDEPItos2Ph46JAL5P/On3pe7kDIQ==} + '@typescript-eslint/type-utils@8.58.2': + resolution: {integrity: sha512-Z7EloNR/B389FvabdGeTo2XMs4W9TjtPiO9DAsmT0yom0bwlPyRjkJ1uCdW1DvrrrYP50AJZ9Xc3sByZA9+dcg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 - typescript: '>=4.8.4 <6.0.0' + typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/visitor-keys@8.56.0': - resolution: {integrity: sha512-q+SL+b+05Ud6LbEE35qe4A99P+htKTKVbyiNEe45eCbJFyh/HVK9QXwlrbz+Q4L8SOW4roxSVwXYj4DMBT7Ieg==} + '@typescript-eslint/types@8.58.2': + resolution: {integrity: sha512-9TukXyATBQf/Jq9AMQXfvurk+G5R2MwfqQGDR2GzGz28HvY/lXNKGhkY+6IOubwcquikWk5cjlgPvD2uAA7htQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@vitest/eslint-plugin@1.6.9': - resolution: {integrity: sha512-9WfPx1OwJ19QLCSRLkqVO7//1WcWnK3fE/3fJhKMAmDe8+9G4rB47xCNIIeCq3FdEzkIoLTfDlwDlPBaUTMhow==} + '@typescript-eslint/typescript-estree@8.58.2': + resolution: {integrity: sha512-ELGuoofuhhoCvNbQjFFiobFcGgcDCEm0ThWdmO4Z0UzLqPXS3KFvnEZ+SHewwOYHjM09tkzOWXNTv9u6Gqtyuw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/utils@8.58.2': + resolution: {integrity: sha512-QZfjHNEzPY8+l0+fIXMvuQ2sJlplB4zgDZvA+NmvZsZv3EQwOcc1DuIU1VJUTWZ/RKouBMhDyNaBMx4sWvrzRA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/visitor-keys@8.58.2': + resolution: {integrity: sha512-f1WO2Lx8a9t8DARmcWAUPJbu0G20bJlj8L4z72K00TMeJAoyLr/tHhI/pzYBLrR4dXWkcxO1cWYZEOX8DKHTqA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@vitest/eslint-plugin@1.6.15': + resolution: {integrity: sha512-dTMjrdngmcB+DxomlKQ+SUubCTvd0m2hQQFpv5sx+GRodmeoxr2PVbphk57SVp250vpxphk9Ccwyv6fQ6+2gkA==} engines: {node: '>=18'} peerDependencies: + '@typescript-eslint/eslint-plugin': '*' eslint: '>=8.57.0' typescript: '>=5.0.0' vitest: '*' peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true typescript: optional: true vitest: @@ -367,37 +383,33 @@ packages: resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} engines: {node: 18 || 20 || >=22} - baseline-browser-mapping@2.10.0: - resolution: {integrity: sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==} + baseline-browser-mapping@2.10.19: + resolution: {integrity: sha512-qCkNLi2sfBOn8XhZQ0FXsT1Ki/Yo5P90hrkRamVFRS7/KV9hpfA4HkoWNU152+8w0zPjnxo5psx5NL3PSGgv5g==} engines: {node: '>=6.0.0'} hasBin: true boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - brace-expansion@5.0.3: - resolution: {integrity: sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==} + brace-expansion@5.0.5: + resolution: {integrity: sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==} engines: {node: 18 || 20 || >=22} - braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - - browserslist@4.28.1: - resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} + browserslist@4.28.2: + resolution: {integrity: sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true - builtin-modules@5.0.0: - resolution: {integrity: sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg==} + builtin-modules@5.1.0: + resolution: {integrity: sha512-c5JxaDrzwRjq3WyJkI1AGR5xy6Gr6udlt7sQPbl09+3ckB+Zo2qqQ2KhCTBr7Q8dHB43bENGYEk4xddrFH/b7A==} engines: {node: '>=18.20'} - cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} + cac@7.0.0: + resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==} + engines: {node: '>=20.19.0'} - caniuse-lite@1.0.30001772: - resolution: {integrity: sha512-mIwLZICj+ntVTw4BT2zfp+yu/AqV6GMKfJVJMx3MwPxs+uk/uj2GLl2dH8LQbjiLDX66amCga5nKFyDgRR43kg==} + caniuse-lite@1.0.30001788: + resolution: {integrity: sha512-6q8HFp+lOQtcf7wBK+uEenxymVWkGKkjFpCvw5W25cmMwEDU45p1xQFBQv8JDlMMry7eNxyBaR+qxgmTUZkIRQ==} ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -420,8 +432,8 @@ packages: resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} engines: {node: '>=18'} - cli-truncate@5.1.1: - resolution: {integrity: sha512-SroPvNHxUnk+vIW/dOSfNqdy1sPEFkrTk6TUtqLCnBlo3N7TNYYkzzN7uSD6+jVjrdO4+p8nH7JzH6cIvUem6A==} + cli-truncate@5.2.0: + resolution: {integrity: sha512-xRwvIOMGrfOAnM1JYtqQImuaNtDEv9v6oIYAs4LIHwTiKee8uwvIi363igssOC0O5U04i4AlENs79LQLu9tEMw==} engines: {node: '>=20'} colorette@2.0.20: @@ -431,22 +443,26 @@ packages: resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==} engines: {node: '>=20'} - comment-parser@1.4.1: - resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} - engines: {node: '>= 12.0.0'} + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} comment-parser@1.4.5: resolution: {integrity: sha512-aRDkn3uyIlCFfk5NUA+VdwMmMsh8JGhc4hapfV4yxymHGQ3BVskMQfoXGpCo5IoBuQ9tS5iiVKhCpTcB4pW4qw==} engines: {node: '>= 12.0.0'} + comment-parser@1.4.6: + resolution: {integrity: sha512-ObxuY6vnbWTN6Od72xfwN9DbzC7Y2vv8u1Soi9ahRKL37gb6y1qk6/dgjs+3JWuXJHWvsg3BXIwzd/rkmAwavg==} + engines: {node: '>= 12.0.0'} + confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} confbox@0.2.4: resolution: {integrity: sha512-ysOGlgTFbN2/Y6Cg3Iye8YKulHw+R2fNXHrgSmXISQdMnomY6eNDprVdW9R5xBguEqI954+S6709UyiO7B+6OQ==} - core-js-compat@3.48.0: - resolution: {integrity: sha512-OM4cAF3D6VtH/WkLtWvyNC56EZVXsZdU3iqaMG2B4WvYrlqU831pc4UtG5yp0sE9z8Y02wVN7PjW5Zf9Gt0f1Q==} + core-js-compat@3.49.0: + resolution: {integrity: sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==} cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} @@ -479,16 +495,12 @@ packages: devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} - diff-sequences@27.5.1: - resolution: {integrity: sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - electron-to-chromium@1.5.302: - resolution: {integrity: sha512-sM6HAN2LyK82IyPBpznDRqlTQAtuSaO+ShzFiWTvoMJLHyZ+Y39r8VMfHzwbU8MVBzQ4Wdn85+wlZl2TLGIlwg==} + electron-to-chromium@1.5.336: + resolution: {integrity: sha512-AbH9q9J455r/nLmdNZes0G0ZKcRX73FicwowalLs6ijwOmCJSRRrLX63lcAlzy9ux3dWK1w1+1nsBJEWN11hcQ==} emoji-regex@10.6.0: resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} @@ -497,8 +509,8 @@ packages: resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==} engines: {node: '>=14'} - enhanced-resolve@5.19.0: - resolution: {integrity: sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==} + enhanced-resolve@5.20.1: + resolution: {integrity: sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA==} engines: {node: '>=10.13.0'} entities@7.0.1: @@ -531,22 +543,16 @@ packages: peerDependencies: eslint: '>=6.0.0' - eslint-compat-utils@0.6.5: - resolution: {integrity: sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==} - engines: {node: '>=12'} - peerDependencies: - eslint: '>=6.0.0' - - eslint-config-flat-gitignore@2.2.1: - resolution: {integrity: sha512-wA5EqN0era7/7Gt5Botlsfin/UNY0etJSEeBgbUlFLFrBi47rAN//+39fI7fpYcl8RENutlFtvp/zRa/M/pZNg==} + eslint-config-flat-gitignore@2.3.0: + resolution: {integrity: sha512-bg4ZLGgoARg1naWfsINUUb/52Ksw/K22K+T16D38Y8v+/sGwwIYrGvH/JBjOin+RQtxxC9tzNNiy4shnGtGyyQ==} peerDependencies: eslint: ^9.5.0 || ^10.0.0 - eslint-flat-config-utils@3.0.1: - resolution: {integrity: sha512-VMA3u86bLzNAwD/7DkLtQ9lolgIOx2Sj0kTMMnBvrvEz7w0rQj4aGCR+lqsqtld63gKiLyT4BnQZ3gmGDXtvjg==} + eslint-flat-config-utils@3.1.0: + resolution: {integrity: sha512-lM+Nwo2CzpuTS/RASQExlEIwk/BQoKqJWX6VbDlLMb/mveqvt9MMrRXFEkG3bseuK6g8noKZLeX82epkILtv4A==} - eslint-json-compat-utils@0.2.2: - resolution: {integrity: sha512-KcTUifi8VSSHkrOY0FzB7smuTZRU9T2nCrcCy6k2b+Q77+uylBQVIxN4baVCIWvWJEpud+IsrYgco4JJ6io05g==} + eslint-json-compat-utils@0.2.3: + resolution: {integrity: sha512-RbBmDFyu7FqnjE8F0ZxPNzx5UaptdeS9Uu50r7A+D7s/+FCX+ybiyViYEgFUaFIFqSWJgZRTpL5d8Kanxxl2lQ==} engines: {node: '>=12'} peerDependencies: '@eslint/json': '*' @@ -566,34 +572,42 @@ packages: peerDependencies: eslint: '*' - eslint-plugin-command@3.4.0: - resolution: {integrity: sha512-EW4eg/a7TKEhG0s5IEti72kh3YOTlnhfFNuctq5WnB1fst37/IHTd5OkD+vnlRf3opTvUcSRihAateP6bT5ZcA==} + eslint-plugin-command@3.5.2: + resolution: {integrity: sha512-PA59QAkQDwvcCMEt5lYLJLI3zDGVKJeC4id/pcRY2XdRYhSGW7iyYT1VC1N3bmpuvu6Qb/9QptiS3GJMjeGTJg==} peerDependencies: + '@typescript-eslint/rule-tester': '*' + '@typescript-eslint/typescript-estree': '*' + '@typescript-eslint/utils': '*' eslint: '*' + eslint-plugin-depend@1.5.0: + resolution: {integrity: sha512-i3UeLYmclf1Icp35+6W7CR4Bp2PIpDgBuf/mpmXK5UeLkZlvYJ21VuQKKHHAIBKRTPivPGX/gZl5JGno1o9Y0A==} + peerDependencies: + eslint: '>=8.40.0' + eslint-plugin-es-x@7.8.0: resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '>=8' - eslint-plugin-import-lite@0.5.2: - resolution: {integrity: sha512-XvfdWOC5dSLEI9krIPRlNmKSI2ViIE9pVylzfV9fCq0ZpDaNeUk6o0wZv0OzN83QdadgXp1NsY0qjLINxwYCsw==} + eslint-plugin-import-lite@0.6.0: + resolution: {integrity: sha512-80vevx2A7i3H7n1/6pqDO8cc5wRz6OwLDvIyVl9UflBV1N1f46e9Ihzi65IOLYoSxM6YykK2fTw1xm0Ixx6aTQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: '>=9.0.0' + eslint: ^9.0.0 || ^10.0.0 - eslint-plugin-jsdoc@62.7.0: - resolution: {integrity: sha512-jootujJOIGMkCLN+/WgDFKtaclCt2MEEy9cZ1RyK19Az1JvVI3awbeMXNlJ6y4h8RWIJpcXqmxsu4t9NThYbNw==} + eslint-plugin-jsdoc@62.9.0: + resolution: {integrity: sha512-PY7/X4jrVgoIDncUmITlUqK546Ltmx/Pd4Hdsu4CvSjryQZJI2mEV4vrdMufyTetMiZ5taNSqvK//BTgVUlNkA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 - eslint-plugin-jsonc@2.21.1: - resolution: {integrity: sha512-dbNR5iEnQeORwsK2WZzr3QaMtFCY3kKJVMRHPzUpKzMhmVy2zIpVgFDpX8MNoIdoqz6KCpCfOJavhfiSbZbN+w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-plugin-jsonc@3.1.2: + resolution: {integrity: sha512-dopTxdB22iuOkgKyJCupEC5IYBItUT4J/teq1H5ddUObcaYhOURxtJElZczdcYnnKCghNU/vccuyPkliy2Wxsg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: - eslint: '>=6.0.0' + eslint: '>=9.38.0' eslint-plugin-n@17.24.0: resolution: {integrity: sha512-/gC7/KAYmfNnPNOb3eu8vw+TdVnV0zhdQwexsw6FLXbhzroVj20vRn2qL8lDWDGnAQ2J8DhdfvXxX9EoxvERvw==} @@ -605,31 +619,31 @@ packages: resolution: {integrity: sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==} engines: {node: '>=5.0.0'} - eslint-plugin-perfectionist@5.6.0: - resolution: {integrity: sha512-pxrLrfRp5wl1Vol1fAEa/G5yTXxefTPJjz07qC7a8iWFXcOZNuWBItMQ2OtTzfQIvMq6bMyYcrzc3Wz++na55Q==} + eslint-plugin-perfectionist@5.8.0: + resolution: {integrity: sha512-k8uIptWIxkUclonCFGyDzgYs9NI+Qh0a7cUXS3L7IYZDEsjXuimFBVbxXPQQngWqMiaxJRwbtYB4smMGMqF+cw==} engines: {node: ^20.0.0 || >=22.0.0} peerDependencies: eslint: ^8.45.0 || ^9.0.0 || ^10.0.0 - eslint-plugin-pnpm@1.5.0: - resolution: {integrity: sha512-ayMo1GvrQ/sF/bz1aOAiH0jv9eAqU2Z+a1ycoWz/uFFK5NxQDq49BDKQtBumcOUBf2VHyiTW4a8u+6KVqoIWzQ==} + eslint-plugin-pnpm@1.6.0: + resolution: {integrity: sha512-dxmt9r3zvPaft6IugS4i0k16xag3fTbOvm/road5uV9Y8qUCQT0xzheSh3gMlYAlC6vXRpfArBDsTZ7H7JKCbg==} peerDependencies: - eslint: ^9.0.0 + eslint: ^9.0.0 || ^10.0.0 - eslint-plugin-regexp@3.0.0: - resolution: {integrity: sha512-iW7hgAV8NOG6E2dz+VeKpq67YLQ9jaajOKYpoOSic2/q8y9BMdXBKkSR9gcMtbqEhNQzdW41E3wWzvhp8ExYwQ==} + eslint-plugin-regexp@3.1.0: + resolution: {integrity: sha512-qGXIC3DIKZHcK1H9A9+Byz9gmndY6TTSRkSMTZpNXdyCw2ObSehRgccJv35n9AdUakEjQp5VFNLas6BMXizCZg==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: '>=9.38.0' - eslint-plugin-toml@1.1.1: - resolution: {integrity: sha512-Gg7wxVIYe2bJ1GqcOxmkVqdd1ScE2U3Ia3Q7RLgBhV9NVhAfkFaAOCRwRAAJ2TkbM/dQmXvNuFmAPx4y5XqIHA==} + eslint-plugin-toml@1.3.1: + resolution: {integrity: sha512-1l00fBP03HIt9IPV7ZxBi7x0y0NMdEZmakL1jBD6N/FoKBvfKxPw5S8XkmzBecOnFBTn5Z8sNJtL5vdf9cpRMQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: '>=9.38.0' - eslint-plugin-unicorn@63.0.0: - resolution: {integrity: sha512-Iqecl9118uQEXYh7adylgEmGfkn5es3/mlQTLLkd4pXkIk9CTGrAbeUux+YljSa2ohXCBmQQ0+Ej1kZaFgcfkA==} + eslint-plugin-unicorn@64.0.0: + resolution: {integrity: sha512-rNZwalHh8i0UfPlhNwg5BTUO1CMdKNmjqe+TgzOTZnpKoi8VBgsW7u9qCHIdpxEzZ1uwrJrPF0uRb7l//K38gA==} engines: {node: ^20.10.0 || >=21.0.0} peerDependencies: eslint: '>=9.38.0' @@ -657,8 +671,8 @@ packages: '@typescript-eslint/parser': optional: true - eslint-plugin-yml@3.2.1: - resolution: {integrity: sha512-/oFj7MWk56AKLelLSUb7zN1OKDI9kR+uKEzbf/sGu7Bov0tJs3qwtMcu+VCcEtFAFD7KZe0LSYhyy0Uq8hKF9g==} + eslint-plugin-yml@3.3.1: + resolution: {integrity: sha512-isntsZchaTqDMNNkD+CakrgA/pdUoJ45USWBKpuqfAW1MCuw731xX/vrXfoJFZU3tTFr24nCbDYmDfT2+g4QtQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} peerDependencies: eslint: '>=9.38.0' @@ -669,8 +683,8 @@ packages: '@vue/compiler-sfc': ^3.3.0 eslint: '>=9.0.0' - eslint-scope@9.1.1: - resolution: {integrity: sha512-GaUN0sWim5qc8KVErfPBWmc31LEsOkrUJbvJZV+xuL3u2phMUK4HIvXlWAakfC8W4nzlK+chPEAkYOYb5ZScIw==} + eslint-scope@9.1.2: + resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} eslint-visitor-keys@3.4.3: @@ -685,8 +699,8 @@ packages: resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@10.0.1: - resolution: {integrity: sha512-20MV9SUdeN6Jd84xESsKhRly+/vxI+hwvpBMA93s+9dAcjdCuCojn4IqUGS3lvVaqjVYGYHSRMCpeFtF2rQYxQ==} + eslint@10.2.0: + resolution: {integrity: sha512-+L0vBFYGIpSNIt/KWTpFonPrqYvgKw1eUI5Vn7mEogrQcWtWYtNQ7dNqC+px/J0idT3BAkiWrhfS7k+Tum8TUA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: @@ -699,14 +713,10 @@ packages: resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - espree@11.1.1: - resolution: {integrity: sha512-AVHPqQoZYc+RUM4/3Ly5udlZY/U4LS8pIG05jEjWM2lQMU/oaZ7qshzAl2YP1tfNmXfftH3ohurfwNAug+MnsQ==} + espree@11.2.0: + resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - esquery@1.7.0: resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} engines: {node: '>=0.10'} @@ -741,6 +751,15 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + fast-string-truncated-width@1.2.1: + resolution: {integrity: sha512-Q9acT/+Uu3GwGj+5w/zsGuQjh9O1TyywhIwAxHudtWrgF09nHOPrvTLhQevPbttcxjr/SNN7mJmfOw/B1bXgow==} + + fast-string-width@1.1.0: + resolution: {integrity: sha512-O3fwIVIH5gKB38QNbdg+3760ZmGz0SZMgvwJbA1b2TGXceKE6A2cOlfogh1iw8lr049zPyd7YADHy+B7U4W9bQ==} + + fast-wrap-ansi@0.1.6: + resolution: {integrity: sha512-HlUwET7a5gqjURj70D5jl7aC3Zmy4weA1SHUfM0JFI0Ptq987NH2TwbBFLoERhfwk+E+eaq4EK3jXoT+R3yp3w==} + fault@2.0.1: resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} @@ -757,10 +776,6 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - find-up-simple@1.0.1: resolution: {integrity: sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==} engines: {node: '>=18'} @@ -773,8 +788,8 @@ packages: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} - flatted@3.3.3: - resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + flatted@3.4.2: + resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} format@0.2.2: resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} @@ -784,8 +799,8 @@ packages: resolution: {integrity: sha512-CQ+bEO+Tva/qlmw24dCejulK5pMzVnUOFOijVogd3KQs07HnRIgp8TGipvCCRT06xeYEbpbgwaCxglFyiuIcmA==} engines: {node: '>=18'} - get-tsconfig@4.13.6: - resolution: {integrity: sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw==} + get-tsconfig@4.13.8: + resolution: {integrity: sha512-J87BxkLXykmisLQ+KA4x2+O6rVf+PJrtFUO8lGyiRg4lyxJLJ8/v0sRAKdVZQOy6tR6lMRAF1NqzCf9BQijm0w==} github-slugger@2.0.0: resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} @@ -798,12 +813,8 @@ packages: resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} engines: {node: '>=18'} - globals@16.5.0: - resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==} - engines: {node: '>=18'} - - globals@17.3.0: - resolution: {integrity: sha512-yMqGUQVVCkD4tqjOJf3TnrvaaHDMYp4VlUSObbkIiuCPe/ofdMBFIAcBbCSRFWOnos6qRiTVStDwqPLUclaxIw==} + globals@17.5.0: + resolution: {integrity: sha512-qoV+HK2yFl/366t2/Cb3+xxPUo5BuMynomoDmiaZBIdbs+0pYbjfZU+twLhGKp4uCZ/+NbtpVepH5bGCxRyy2g==} engines: {node: '>=18'} globrex@0.1.2: @@ -812,9 +823,6 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - html-entities@2.6.0: resolution: {integrity: sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==} @@ -850,21 +858,17 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - jsdoc-type-pratt-parser@7.0.0: - resolution: {integrity: sha512-c7YbokssPOSHmqTbSAmTtnVgAVa/7lumWNYqomgd5KOMyPrRve2anx6lonfOsXEQacqF9FKVUj7bLg4vRSvdYA==} - engines: {node: '>=20.0.0'} - jsdoc-type-pratt-parser@7.1.1: resolution: {integrity: sha512-/2uqY7x6bsrpi3i9LVU6J89352C0rpMk0as8trXxCtvd4kPk1ke/Eyif6wqfSLvoNJqcDG9Vk4UsXgygzCt2xA==} engines: {node: '>=20.0.0'} + jsdoc-type-pratt-parser@7.2.0: + resolution: {integrity: sha512-dh140MMgjyg3JhJZY/+iEzW+NO5xR2gpbDFKHqotCmexElVntw7GjWjt511+C/Ef02RU5TKYrJo/Xlzk+OLaTw==} + engines: {node: '>=20.0.0'} + jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} @@ -879,9 +883,13 @@ packages: json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - jsonc-eslint-parser@2.4.2: - resolution: {integrity: sha512-1e4qoRgnn448pRuMvKGsFFymUCquZV0mpGgOyIKNgD3JVDTsVJyRBGH/Fm0tBb8WsWGgmB1mDe6/yJMQM37DUA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + jsonc-eslint-parser@3.1.0: + resolution: {integrity: sha512-75EA7EWZExL/j+MDKQrRbdzcRI2HOkRlmUw8fZJc1ioqFEOvBsq7Rt+A6yCxOt9w/TYNpkt52gC6nm/g5tFIng==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + katex@0.16.45: + resolution: {integrity: sha512-pQpZbdBu7wCTmQUh7ufPmLr0pFoObnGUoL/yhtwJDgmmQpbkg/0HSVti25Fu4rmd1oCR6NGWe9vqTWuWv3GcNA==} + hasBin: true keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} @@ -890,8 +898,8 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} - lint-staged@16.2.7: - resolution: {integrity: sha512-lDIj4RnYmK7/kXMya+qJsmkRFkGolciXjrsZ6PC25GdTfWOAWetR0ZbsNXRAj1EHHImRSalc+whZFg56F5DVow==} + lint-staged@16.4.0: + resolution: {integrity: sha512-lBWt8hujh/Cjysw5GYVmZpFHXDCgZzhrOm8vbcUdobADZNOK/bRshr2kM3DfgrrtR1DQhfupW9gnIXOfiFi+bw==} engines: {node: '>=20.17'} hasBin: true @@ -907,6 +915,9 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + log-update@6.1.0: resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} engines: {node: '>=18'} @@ -947,6 +958,9 @@ packages: mdast-util-gfm@3.1.0: resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} + mdast-util-math@3.0.0: + resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==} + mdast-util-phrasing@4.1.0: resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} @@ -983,6 +997,9 @@ packages: micromark-extension-gfm@3.0.0: resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + micromark-extension-math@3.1.0: + resolution: {integrity: sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==} + micromark-factory-destination@2.0.1: resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} @@ -1043,32 +1060,23 @@ packages: micromark@4.0.2: resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} - micromatch@4.0.8: - resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} - engines: {node: '>=8.6'} - mimic-function@5.0.1: resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} engines: {node: '>=18'} - minimatch@10.2.2: - resolution: {integrity: sha512-+G4CpNBxa5MprY+04MbgOw1v7So6n5JY166pFi9KfYwT78fxScCeSNQSNzp6dpPSW2rONOps6Ocam1wFhCgoVw==} + minimatch@10.2.5: + resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} engines: {node: 18 || 20 || >=22} - minimatch@9.0.6: - resolution: {integrity: sha512-kQAVowdR33euIqeA0+VZTDqU+qo1IeVY+hrKYtZMio3Pg0P0vuh/kwRylLUddJhB6pf3q/botcOvRtx4IN1wqQ==} - engines: {node: '>=16 || 14 >=14.17'} + mlly@1.8.2: + resolution: {integrity: sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==} - mlly@1.8.0: - resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==} + module-replacements@2.11.0: + resolution: {integrity: sha512-j5sNQm3VCpQQ7nTqGeOZtoJtV3uKERgCBm9QRhmGRiXiqkf7iRFOkfxdJRZWLkqYY8PNf4cDQF/WfXUYLENrRA==} ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - nano-spawn@2.0.0: - resolution: {integrity: sha512-tacvGzUY5o2D8CBh2rrwxyNojUsZNU2zjNTzKQrkgGJQTbGAfArVWXSKMBokBeeg6C7OLRGUEyoFlYbfeWQIqw==} - engines: {node: '>=20.17'} - nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -1081,8 +1089,8 @@ packages: resolution: {integrity: sha512-kKHJhxwpR/Okycz4HhQKKlhWe4ASEfPgkSWNmKFHd7+ezuQlxkA5cM3+XkBPvm1gmHen3w53qsYAv+8GwRrBlg==} engines: {node: '>=18'} - node-releases@2.0.27: - resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} + node-releases@2.0.37: + resolution: {integrity: sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==} nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} @@ -1133,19 +1141,10 @@ packages: picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - picomatch@4.0.3: - resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + picomatch@4.0.4: + resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==} engines: {node: '>=12'} - pidtree@0.6.0: - resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} - engines: {node: '>=0.10'} - hasBin: true - pkg-types@1.3.1: resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} @@ -1156,15 +1155,15 @@ packages: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} - pnpm-workspace-yaml@1.5.0: - resolution: {integrity: sha512-PxdyJuFvq5B0qm3s9PaH/xOtSxrcvpBRr+BblhucpWjs8c79d4b7/cXhyY4AyHOHCnqklCYZTjfl0bT/mFVTRw==} + pnpm-workspace-yaml@1.6.0: + resolution: {integrity: sha512-uUy4dK3E11sp7nK+hnT7uAWfkBMe00KaUw8OG3NuNlYQoTk4sc9pcdIy1+XIP85v9Tvr02mK3JPaNNrP0QyRaw==} postcss-selector-parser@7.1.1: resolution: {integrity: sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==} engines: {node: '>=4'} - postcss@8.5.6: - resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} + postcss@8.5.9: + resolution: {integrity: sha512-7a70Nsot+EMX9fFU3064K/kdHWZqGVY+BADLyXc8Dfv+mTLLVl6JzJpPaCZ2kQL9gIJvKXSLMHhqdRRjwQeFtw==} engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: @@ -1190,8 +1189,8 @@ packages: resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} hasBin: true - regjsparser@0.13.0: - resolution: {integrity: sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==} + regjsparser@0.13.1: + resolution: {integrity: sha512-dLsljMd9sqwRkby8zhO1gSg3PnJIBFid8f4CQj/sXx+7cKx+E7u0PKhZ+U4wmhx7EfmtvnA318oVaIkAB1lRJw==} hasBin: true reserved-identifiers@1.2.0: @@ -1240,6 +1239,10 @@ packages: resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==} engines: {node: '>=18'} + slice-ansi@8.0.0: + resolution: {integrity: sha512-stxByr12oeeOyY2BlviTNQlYV5xOj47GirPr4yA1hE9JCtxfQN0+tVbkxwCtYDQWhEKWFHsEK48ORg5jrouCAg==} + engines: {node: '>=20'} + source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -1265,8 +1268,8 @@ packages: resolution: {integrity: sha512-6hJPQ8N0V0P3SNmP6h2J99RLuzrWz2gvT7VnK5tKvrNqJoyS9W4/Fb8mo31UiPvy00z7DQXkP2hnKBVav76thw==} engines: {node: '>=20'} - strip-ansi@7.1.2: - resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} + strip-ansi@7.2.0: + resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==} engines: {node: '>=12'} strip-indent@4.1.1: @@ -1277,22 +1280,18 @@ packages: resolution: {integrity: sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==} engines: {node: ^14.18.0 || >=16.0.0} - tapable@2.3.0: - resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} + tapable@2.3.2: + resolution: {integrity: sha512-1MOpMXuhGzGL5TTCZFItxCc0AARf1EZFQkGqMm7ERKj8+Hgr5oLvJOVFcC+lRmR8hCe2S3jC4T5D7Vg/d7/fhA==} engines: {node: '>=6'} - tinyexec@1.0.2: - resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} + tinyexec@1.1.1: + resolution: {integrity: sha512-VKS/ZaQhhkKFMANmAOhhXVoIfBXblQxGX1myCQ2faQrfmobMftXeJPcZGp0gS07ocvGJWDLZGyOZDadDBqYIJg==} engines: {node: '>=18'} - tinyglobby@0.2.15: - resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + tinyglobby@0.2.16: + resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==} engines: {node: '>=12.0.0'} - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - to-valid-identifier@1.0.0: resolution: {integrity: sha512-41wJyvKep3yT2tyPqX/4blcfybknGB4D+oETKLs7Q76UiPqRpUJK3hr1nxelyYO0PHKVzJwlu0aCeEAsGI6rpw==} engines: {node: '>=20'} @@ -1301,8 +1300,8 @@ packages: resolution: {integrity: sha512-A5F0cM6+mDleacLIEUkmfpkBbnHJFV1d2rprHU2MXNk7mlxHq2zGojA+SRvQD1RoMo9gqjZPWEaKG4v1BQ48lw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - ts-api-utils@2.4.0: - resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==} + ts-api-utils@2.5.0: + resolution: {integrity: sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==} engines: {node: '>=18.12'} peerDependencies: typescript: '>=4.8.4' @@ -1327,6 +1326,9 @@ packages: unist-util-is@6.0.1: resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==} + unist-util-remove-position@5.0.0: + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} + unist-util-stringify-position@4.0.0: resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} @@ -1375,8 +1377,8 @@ packages: resolution: {integrity: sha512-h0uDm97wvT2bokfwwTmY6kJ1hp6YDFL0nRHwNKz8s/VD1FH/vvZjAKoMUE+un0eaYBSG7/c6h+lJTP+31tjgTw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - yaml@2.8.2: - resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} + yaml@2.8.3: + resolution: {integrity: sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==} engines: {node: '>= 14.6'} hasBin: true @@ -1389,48 +1391,52 @@ packages: snapshots: - '@antfu/eslint-config@7.4.3(@vue/compiler-sfc@3.5.28)(eslint@10.0.1)(typescript@5.9.3)': + '@antfu/eslint-config@8.2.0(@typescript-eslint/rule-tester@8.58.2(eslint@10.2.0)(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.58.2(typescript@5.9.3))(@typescript-eslint/utils@8.58.2(eslint@10.2.0)(typescript@5.9.3))(@vue/compiler-sfc@3.5.28)(eslint@10.2.0)(typescript@5.9.3)': dependencies: '@antfu/install-pkg': 1.1.0 - '@clack/prompts': 1.0.1 - '@eslint-community/eslint-plugin-eslint-comments': 4.6.0(eslint@10.0.1) - '@eslint/markdown': 7.5.1 - '@stylistic/eslint-plugin': 5.9.0(eslint@10.0.1) - '@typescript-eslint/eslint-plugin': 8.56.0(@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1)(typescript@5.9.3) - '@typescript-eslint/parser': 8.56.0(eslint@10.0.1)(typescript@5.9.3) - '@vitest/eslint-plugin': 1.6.9(eslint@10.0.1)(typescript@5.9.3) + '@clack/prompts': 1.2.0 + '@e18e/eslint-plugin': 0.3.0(eslint@10.2.0) + '@eslint-community/eslint-plugin-eslint-comments': 4.7.1(eslint@10.2.0) + '@eslint/markdown': 8.0.1 + '@stylistic/eslint-plugin': 5.10.0(eslint@10.2.0) + '@typescript-eslint/eslint-plugin': 8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3) + '@typescript-eslint/parser': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + '@vitest/eslint-plugin': 1.6.15(@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3) ansis: 4.2.0 - cac: 6.7.14 - eslint: 10.0.1 - eslint-config-flat-gitignore: 2.2.1(eslint@10.0.1) - eslint-flat-config-utils: 3.0.1 - eslint-merge-processors: 2.0.0(eslint@10.0.1) - eslint-plugin-antfu: 3.2.2(eslint@10.0.1) - eslint-plugin-command: 3.4.0(eslint@10.0.1) - eslint-plugin-import-lite: 0.5.2(eslint@10.0.1) - eslint-plugin-jsdoc: 62.7.0(eslint@10.0.1) - eslint-plugin-jsonc: 2.21.1(eslint@10.0.1) - eslint-plugin-n: 17.24.0(eslint@10.0.1)(typescript@5.9.3) + cac: 7.0.0 + eslint: 10.2.0 + eslint-config-flat-gitignore: 2.3.0(eslint@10.2.0) + eslint-flat-config-utils: 3.1.0 + eslint-merge-processors: 2.0.0(eslint@10.2.0) + eslint-plugin-antfu: 3.2.2(eslint@10.2.0) + eslint-plugin-command: 3.5.2(@typescript-eslint/rule-tester@8.58.2(eslint@10.2.0)(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.58.2(typescript@5.9.3))(@typescript-eslint/utils@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0) + eslint-plugin-import-lite: 0.6.0(eslint@10.2.0) + eslint-plugin-jsdoc: 62.9.0(eslint@10.2.0) + eslint-plugin-jsonc: 3.1.2(eslint@10.2.0) + eslint-plugin-n: 17.24.0(eslint@10.2.0)(typescript@5.9.3) eslint-plugin-no-only-tests: 3.3.0 - eslint-plugin-perfectionist: 5.6.0(eslint@10.0.1)(typescript@5.9.3) - eslint-plugin-pnpm: 1.5.0(eslint@10.0.1) - eslint-plugin-regexp: 3.0.0(eslint@10.0.1) - eslint-plugin-toml: 1.1.1(@eslint/markdown@7.5.1)(eslint@10.0.1) - eslint-plugin-unicorn: 63.0.0(eslint@10.0.1) - eslint-plugin-unused-imports: 4.4.1(@typescript-eslint/eslint-plugin@8.56.0(@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1) - eslint-plugin-vue: 10.8.0(@stylistic/eslint-plugin@5.9.0(eslint@10.0.1))(@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1)(vue-eslint-parser@10.4.0(eslint@10.0.1)) - eslint-plugin-yml: 3.2.1(@eslint/markdown@7.5.1)(eslint@10.0.1) - eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.28)(eslint@10.0.1) - globals: 17.3.0 - jsonc-eslint-parser: 2.4.2 + eslint-plugin-perfectionist: 5.8.0(eslint@10.2.0)(typescript@5.9.3) + eslint-plugin-pnpm: 1.6.0(eslint@10.2.0) + eslint-plugin-regexp: 3.1.0(eslint@10.2.0) + eslint-plugin-toml: 1.3.1(eslint@10.2.0) + eslint-plugin-unicorn: 64.0.0(eslint@10.2.0) + eslint-plugin-unused-imports: 4.4.1(@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0) + eslint-plugin-vue: 10.8.0(@stylistic/eslint-plugin@5.10.0(eslint@10.2.0))(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(vue-eslint-parser@10.4.0(eslint@10.2.0)) + eslint-plugin-yml: 3.3.1(eslint@10.2.0) + eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.28)(eslint@10.2.0) + globals: 17.5.0 local-pkg: 1.1.2 parse-gitignore: 2.0.0 toml-eslint-parser: 1.0.3 - vue-eslint-parser: 10.4.0(eslint@10.0.1) + vue-eslint-parser: 10.4.0(eslint@10.2.0) yaml-eslint-parser: 2.0.0 transitivePeerDependencies: - '@eslint/json' + - '@typescript-eslint/rule-tester' + - '@typescript-eslint/typescript-estree' + - '@typescript-eslint/utils' - '@vue/compiler-sfc' + - oxlint - supports-color - typescript - vitest @@ -1438,13 +1444,13 @@ snapshots: '@antfu/install-pkg@1.1.0': dependencies: package-manager-detector: 1.6.0 - tinyexec: 1.0.2 + tinyexec: 1.1.1 '@babel/helper-string-parser@7.27.1': {} '@babel/helper-validator-identifier@7.28.5': {} - '@babel/parser@7.29.0': + '@babel/parser@7.29.2': dependencies: '@babel/types': 7.29.0 @@ -1453,98 +1459,103 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@clack/core@1.0.1': + '@clack/core@1.2.0': dependencies: - picocolors: 1.1.1 + fast-wrap-ansi: 0.1.6 sisteransi: 1.0.5 - '@clack/prompts@1.0.1': + '@clack/prompts@1.2.0': dependencies: - '@clack/core': 1.0.1 - picocolors: 1.1.1 + '@clack/core': 1.2.0 + fast-string-width: 1.1.0 + fast-wrap-ansi: 0.1.6 sisteransi: 1.0.5 - '@es-joy/jsdoccomment@0.78.0': + '@e18e/eslint-plugin@0.3.0(eslint@10.2.0)': dependencies: - '@types/estree': 1.0.8 - '@typescript-eslint/types': 8.56.0 - comment-parser: 1.4.1 - esquery: 1.7.0 - jsdoc-type-pratt-parser: 7.0.0 + eslint-plugin-depend: 1.5.0(eslint@10.2.0) + optionalDependencies: + eslint: 10.2.0 '@es-joy/jsdoccomment@0.84.0': dependencies: '@types/estree': 1.0.8 - '@typescript-eslint/types': 8.56.0 + '@typescript-eslint/types': 8.58.2 comment-parser: 1.4.5 esquery: 1.7.0 jsdoc-type-pratt-parser: 7.1.1 + '@es-joy/jsdoccomment@0.86.0': + dependencies: + '@types/estree': 1.0.8 + '@typescript-eslint/types': 8.58.2 + comment-parser: 1.4.6 + esquery: 1.7.0 + jsdoc-type-pratt-parser: 7.2.0 + '@es-joy/resolve.exports@1.2.0': {} - '@eslint-community/eslint-plugin-eslint-comments@4.6.0(eslint@10.0.1)': + '@eslint-community/eslint-plugin-eslint-comments@4.7.1(eslint@10.2.0)': dependencies: escape-string-regexp: 4.0.0 - eslint: 10.0.1 + eslint: 10.2.0 ignore: 7.0.5 - '@eslint-community/eslint-utils@4.9.1(eslint@10.0.1)': + '@eslint-community/eslint-utils@4.9.1(eslint@10.2.0)': dependencies: - eslint: 10.0.1 + eslint: 10.2.0 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/compat@2.0.2(eslint@10.0.1)': + '@eslint/compat@2.0.5(eslint@10.2.0)': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 1.2.1 optionalDependencies: - eslint: 10.0.1 + eslint: 10.2.0 - '@eslint/config-array@0.23.2': + '@eslint/config-array@0.23.5': dependencies: - '@eslint/object-schema': 3.0.2 + '@eslint/object-schema': 3.0.5 debug: 4.4.3 - minimatch: 10.2.2 + minimatch: 10.2.5 transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.5.2': + '@eslint/config-helpers@0.5.5': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 1.2.1 - '@eslint/core@0.17.0': + '@eslint/core@1.2.1': dependencies: '@types/json-schema': 7.0.15 - '@eslint/core@1.1.0': + '@eslint/markdown@8.0.1': dependencies: - '@types/json-schema': 7.0.15 - - '@eslint/markdown@7.5.1': - dependencies: - '@eslint/core': 0.17.0 - '@eslint/plugin-kit': 0.4.1 + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.6.1 github-slugger: 2.0.0 mdast-util-from-markdown: 2.0.3 mdast-util-frontmatter: 2.0.1 mdast-util-gfm: 3.1.0 + mdast-util-math: 3.0.0 micromark-extension-frontmatter: 2.0.0 micromark-extension-gfm: 3.0.0 + micromark-extension-math: 3.1.0 micromark-util-normalize-identifier: 2.0.1 transitivePeerDependencies: - supports-color - '@eslint/object-schema@3.0.2': {} + '@eslint/object-schema@3.0.5': {} - '@eslint/plugin-kit@0.4.1': + '@eslint/plugin-kit@0.6.1': dependencies: - '@eslint/core': 0.17.0 + '@eslint/core': 1.2.1 levn: 0.4.1 - '@eslint/plugin-kit@0.6.0': + '@eslint/plugin-kit@0.7.1': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 1.2.1 levn: 0.4.1 '@humanfs/core@0.19.1': {} @@ -1560,26 +1571,23 @@ snapshots: '@jridgewell/sourcemap-codec@1.5.5': {} - '@ota-meshi/ast-token-store@0.2.1(@eslint/markdown@7.5.1)(eslint@10.0.1)': - dependencies: - '@eslint/markdown': 7.5.1 - eslint: 10.0.1 + '@ota-meshi/ast-token-store@0.3.0': {} '@pkgr/core@0.2.9': {} '@sindresorhus/base62@1.0.0': {} - '@stylistic/eslint-plugin@5.9.0(eslint@10.0.1)': + '@stylistic/eslint-plugin@5.10.0(eslint@10.2.0)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) - '@typescript-eslint/types': 8.56.0 - eslint: 10.0.1 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) + '@typescript-eslint/types': 8.58.2 + eslint: 10.2.0 eslint-visitor-keys: 4.2.1 espree: 10.4.0 estraverse: 5.3.0 - picomatch: 4.0.3 + picomatch: 4.0.4 - '@types/debug@4.1.12': + '@types/debug@4.1.13': dependencies: '@types/ms': 2.1.0 @@ -1587,8 +1595,14 @@ snapshots: '@types/estree@1.0.8': {} + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.3 + '@types/json-schema@7.0.15': {} + '@types/katex@0.16.8': {} + '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 @@ -1597,110 +1611,125 @@ snapshots: '@types/unist@3.0.3': {} - '@typescript-eslint/eslint-plugin@8.56.0(@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1)(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.56.0(eslint@10.0.1)(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.56.0 - '@typescript-eslint/type-utils': 8.56.0(eslint@10.0.1)(typescript@5.9.3) - '@typescript-eslint/utils': 8.56.0(eslint@10.0.1)(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.56.0 - eslint: 10.0.1 + '@typescript-eslint/parser': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.58.2 + '@typescript-eslint/type-utils': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + '@typescript-eslint/utils': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.58.2 + eslint: 10.2.0 ignore: 7.0.5 natural-compare: 1.4.0 - ts-api-utils: 2.4.0(typescript@5.9.3) + ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3)': + '@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.56.0 - '@typescript-eslint/types': 8.56.0 - '@typescript-eslint/typescript-estree': 8.56.0(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.56.0 + '@typescript-eslint/scope-manager': 8.58.2 + '@typescript-eslint/types': 8.58.2 + '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.58.2 debug: 4.4.3 - eslint: 10.0.1 + eslint: 10.2.0 typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.56.0(typescript@5.9.3)': + '@typescript-eslint/project-service@8.58.2(typescript@5.9.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.56.0(typescript@5.9.3) - '@typescript-eslint/types': 8.56.0 + '@typescript-eslint/tsconfig-utils': 8.58.2(typescript@5.9.3) + '@typescript-eslint/types': 8.58.2 debug: 4.4.3 typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.56.0': + '@typescript-eslint/rule-tester@8.58.2(eslint@10.2.0)(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.56.0 - '@typescript-eslint/visitor-keys': 8.56.0 - - '@typescript-eslint/tsconfig-utils@8.56.0(typescript@5.9.3)': - dependencies: - typescript: 5.9.3 - - '@typescript-eslint/type-utils@8.56.0(eslint@10.0.1)(typescript@5.9.3)': - dependencies: - '@typescript-eslint/types': 8.56.0 - '@typescript-eslint/typescript-estree': 8.56.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.56.0(eslint@10.0.1)(typescript@5.9.3) - debug: 4.4.3 - eslint: 10.0.1 - ts-api-utils: 2.4.0(typescript@5.9.3) - typescript: 5.9.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/types@8.56.0': {} - - '@typescript-eslint/typescript-estree@8.56.0(typescript@5.9.3)': - dependencies: - '@typescript-eslint/project-service': 8.56.0(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.56.0(typescript@5.9.3) - '@typescript-eslint/types': 8.56.0 - '@typescript-eslint/visitor-keys': 8.56.0 - debug: 4.4.3 - minimatch: 9.0.6 + '@typescript-eslint/parser': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3) + '@typescript-eslint/utils': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + ajv: 6.14.0 + eslint: 10.2.0 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 semver: 7.7.4 - tinyglobby: 0.2.15 - ts-api-utils: 2.4.0(typescript@5.9.3) + transitivePeerDependencies: + - supports-color + - typescript + + '@typescript-eslint/scope-manager@8.58.2': + dependencies: + '@typescript-eslint/types': 8.58.2 + '@typescript-eslint/visitor-keys': 8.58.2 + + '@typescript-eslint/tsconfig-utils@8.58.2(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/type-utils@8.58.2(eslint@10.2.0)(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.58.2 + '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3) + '@typescript-eslint/utils': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + debug: 4.4.3 + eslint: 10.2.0 + ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.56.0(eslint@10.0.1)(typescript@5.9.3)': + '@typescript-eslint/types@8.58.2': {} + + '@typescript-eslint/typescript-estree@8.58.2(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) - '@typescript-eslint/scope-manager': 8.56.0 - '@typescript-eslint/types': 8.56.0 - '@typescript-eslint/typescript-estree': 8.56.0(typescript@5.9.3) - eslint: 10.0.1 + '@typescript-eslint/project-service': 8.58.2(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.58.2(typescript@5.9.3) + '@typescript-eslint/types': 8.58.2 + '@typescript-eslint/visitor-keys': 8.58.2 + debug: 4.4.3 + minimatch: 10.2.5 + semver: 7.7.4 + tinyglobby: 0.2.16 + ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.56.0': + '@typescript-eslint/utils@8.58.2(eslint@10.2.0)(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.56.0 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) + '@typescript-eslint/scope-manager': 8.58.2 + '@typescript-eslint/types': 8.58.2 + '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3) + eslint: 10.2.0 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.58.2': + dependencies: + '@typescript-eslint/types': 8.58.2 eslint-visitor-keys: 5.0.1 - '@vitest/eslint-plugin@1.6.9(eslint@10.0.1)(typescript@5.9.3)': + '@vitest/eslint-plugin@1.6.15(@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.56.0 - '@typescript-eslint/utils': 8.56.0(eslint@10.0.1)(typescript@5.9.3) - eslint: 10.0.1 + '@typescript-eslint/scope-manager': 8.58.2 + '@typescript-eslint/utils': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + eslint: 10.2.0 optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color '@vue/compiler-core@3.5.28': dependencies: - '@babel/parser': 7.29.0 + '@babel/parser': 7.29.2 '@vue/shared': 3.5.28 entities: 7.0.1 estree-walker: 2.0.2 @@ -1713,14 +1742,14 @@ snapshots: '@vue/compiler-sfc@3.5.28': dependencies: - '@babel/parser': 7.29.0 + '@babel/parser': 7.29.2 '@vue/compiler-core': 3.5.28 '@vue/compiler-dom': 3.5.28 '@vue/compiler-ssr': 3.5.28 '@vue/shared': 3.5.28 estree-walker: 2.0.2 magic-string: 0.30.21 - postcss: 8.5.6 + postcss: 8.5.9 source-map-js: 1.2.1 '@vue/compiler-ssr@3.5.28': @@ -1757,31 +1786,27 @@ snapshots: balanced-match@4.0.4: {} - baseline-browser-mapping@2.10.0: {} + baseline-browser-mapping@2.10.19: {} boolbase@1.0.0: {} - brace-expansion@5.0.3: + brace-expansion@5.0.5: dependencies: balanced-match: 4.0.4 - braces@3.0.3: + browserslist@4.28.2: dependencies: - fill-range: 7.1.1 + baseline-browser-mapping: 2.10.19 + caniuse-lite: 1.0.30001788 + electron-to-chromium: 1.5.336 + node-releases: 2.0.37 + update-browserslist-db: 1.2.3(browserslist@4.28.2) - browserslist@4.28.1: - dependencies: - baseline-browser-mapping: 2.10.0 - caniuse-lite: 1.0.30001772 - electron-to-chromium: 1.5.302 - node-releases: 2.0.27 - update-browserslist-db: 1.2.3(browserslist@4.28.1) + builtin-modules@5.1.0: {} - builtin-modules@5.0.0: {} + cac@7.0.0: {} - cac@6.7.14: {} - - caniuse-lite@1.0.30001772: {} + caniuse-lite@1.0.30001788: {} ccount@2.0.1: {} @@ -1799,26 +1824,28 @@ snapshots: dependencies: restore-cursor: 5.1.0 - cli-truncate@5.1.1: + cli-truncate@5.2.0: dependencies: - slice-ansi: 7.1.2 + slice-ansi: 8.0.0 string-width: 8.2.0 colorette@2.0.20: {} commander@14.0.3: {} - comment-parser@1.4.1: {} + commander@8.3.0: {} comment-parser@1.4.5: {} + comment-parser@1.4.6: {} + confbox@0.1.8: {} confbox@0.2.4: {} - core-js-compat@3.48.0: + core-js-compat@3.49.0: dependencies: - browserslist: 4.28.1 + browserslist: 4.28.2 cross-spawn@7.0.6: dependencies: @@ -1844,20 +1871,18 @@ snapshots: dependencies: dequal: 2.0.3 - diff-sequences@27.5.1: {} - diff-sequences@29.6.3: {} - electron-to-chromium@1.5.302: {} + electron-to-chromium@1.5.336: {} emoji-regex@10.6.0: {} empathic@2.0.0: {} - enhanced-resolve@5.19.0: + enhanced-resolve@5.20.1: dependencies: graceful-fs: 4.2.11 - tapable: 2.3.0 + tapable: 2.3.2 entities@7.0.1: {} @@ -1871,66 +1896,71 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-compat-utils@0.5.1(eslint@10.0.1): + eslint-compat-utils@0.5.1(eslint@10.2.0): dependencies: - eslint: 10.0.1 + eslint: 10.2.0 semver: 7.7.4 - eslint-compat-utils@0.6.5(eslint@10.0.1): + eslint-config-flat-gitignore@2.3.0(eslint@10.2.0): dependencies: - eslint: 10.0.1 - semver: 7.7.4 + '@eslint/compat': 2.0.5(eslint@10.2.0) + eslint: 10.2.0 - eslint-config-flat-gitignore@2.2.1(eslint@10.0.1): + eslint-flat-config-utils@3.1.0: dependencies: - '@eslint/compat': 2.0.2(eslint@10.0.1) - eslint: 10.0.1 - - eslint-flat-config-utils@3.0.1: - dependencies: - '@eslint/config-helpers': 0.5.2 + '@eslint/config-helpers': 0.5.5 pathe: 2.0.3 - eslint-json-compat-utils@0.2.2(eslint@10.0.1)(jsonc-eslint-parser@2.4.2): + eslint-json-compat-utils@0.2.3(eslint@10.2.0)(jsonc-eslint-parser@3.1.0): dependencies: - eslint: 10.0.1 + eslint: 10.2.0 esquery: 1.7.0 - jsonc-eslint-parser: 2.4.2 + jsonc-eslint-parser: 3.1.0 - eslint-merge-processors@2.0.0(eslint@10.0.1): + eslint-merge-processors@2.0.0(eslint@10.2.0): dependencies: - eslint: 10.0.1 + eslint: 10.2.0 - eslint-plugin-antfu@3.2.2(eslint@10.0.1): + eslint-plugin-antfu@3.2.2(eslint@10.2.0): dependencies: - eslint: 10.0.1 + eslint: 10.2.0 - eslint-plugin-command@3.4.0(eslint@10.0.1): - dependencies: - '@es-joy/jsdoccomment': 0.78.0 - eslint: 10.0.1 - - eslint-plugin-es-x@7.8.0(eslint@10.0.1): - dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) - '@eslint-community/regexpp': 4.12.2 - eslint: 10.0.1 - eslint-compat-utils: 0.5.1(eslint@10.0.1) - - eslint-plugin-import-lite@0.5.2(eslint@10.0.1): - dependencies: - eslint: 10.0.1 - - eslint-plugin-jsdoc@62.7.0(eslint@10.0.1): + eslint-plugin-command@3.5.2(@typescript-eslint/rule-tester@8.58.2(eslint@10.2.0)(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.58.2(typescript@5.9.3))(@typescript-eslint/utils@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0): dependencies: '@es-joy/jsdoccomment': 0.84.0 + '@typescript-eslint/rule-tester': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3) + '@typescript-eslint/utils': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + eslint: 10.2.0 + + eslint-plugin-depend@1.5.0(eslint@10.2.0): + dependencies: + empathic: 2.0.0 + eslint: 10.2.0 + module-replacements: 2.11.0 + semver: 7.7.4 + + eslint-plugin-es-x@7.8.0(eslint@10.2.0): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) + '@eslint-community/regexpp': 4.12.2 + eslint: 10.2.0 + eslint-compat-utils: 0.5.1(eslint@10.2.0) + + eslint-plugin-import-lite@0.6.0(eslint@10.2.0): + dependencies: + eslint: 10.2.0 + + eslint-plugin-jsdoc@62.9.0(eslint@10.2.0): + dependencies: + '@es-joy/jsdoccomment': 0.86.0 '@es-joy/resolve.exports': 1.2.0 are-docs-informative: 0.0.2 - comment-parser: 1.4.5 + comment-parser: 1.4.6 debug: 4.4.3 escape-string-regexp: 4.0.0 - eslint: 10.0.1 - espree: 11.1.1 + eslint: 10.2.0 + espree: 11.2.0 esquery: 1.7.0 html-entities: 2.6.0 object-deep-merge: 2.0.0 @@ -1941,28 +1971,28 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-jsonc@2.21.1(eslint@10.0.1): + eslint-plugin-jsonc@3.1.2(eslint@10.2.0): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) - diff-sequences: 27.5.1 - eslint: 10.0.1 - eslint-compat-utils: 0.6.5(eslint@10.0.1) - eslint-json-compat-utils: 0.2.2(eslint@10.0.1)(jsonc-eslint-parser@2.4.2) - espree: 10.4.0 - graphemer: 1.4.0 - jsonc-eslint-parser: 2.4.2 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.6.1 + '@ota-meshi/ast-token-store': 0.3.0 + diff-sequences: 29.6.3 + eslint: 10.2.0 + eslint-json-compat-utils: 0.2.3(eslint@10.2.0)(jsonc-eslint-parser@3.1.0) + jsonc-eslint-parser: 3.1.0 natural-compare: 1.4.0 synckit: 0.11.12 transitivePeerDependencies: - '@eslint/json' - eslint-plugin-n@17.24.0(eslint@10.0.1)(typescript@5.9.3): + eslint-plugin-n@17.24.0(eslint@10.2.0)(typescript@5.9.3): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) - enhanced-resolve: 5.19.0 - eslint: 10.0.1 - eslint-plugin-es-x: 7.8.0(eslint@10.0.1) - get-tsconfig: 4.13.6 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) + enhanced-resolve: 5.20.1 + eslint: 10.2.0 + eslint-plugin-es-x: 7.8.0(eslint@10.2.0) + get-tsconfig: 4.13.8 globals: 15.15.0 globrex: 0.1.2 ignore: 5.3.2 @@ -1973,110 +2003,108 @@ snapshots: eslint-plugin-no-only-tests@3.3.0: {} - eslint-plugin-perfectionist@5.6.0(eslint@10.0.1)(typescript@5.9.3): + eslint-plugin-perfectionist@5.8.0(eslint@10.2.0)(typescript@5.9.3): dependencies: - '@typescript-eslint/utils': 8.56.0(eslint@10.0.1)(typescript@5.9.3) - eslint: 10.0.1 + '@typescript-eslint/utils': 8.58.2(eslint@10.2.0)(typescript@5.9.3) + eslint: 10.2.0 natural-orderby: 5.0.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-pnpm@1.5.0(eslint@10.0.1): + eslint-plugin-pnpm@1.6.0(eslint@10.2.0): dependencies: empathic: 2.0.0 - eslint: 10.0.1 - jsonc-eslint-parser: 2.4.2 + eslint: 10.2.0 + jsonc-eslint-parser: 3.1.0 pathe: 2.0.3 - pnpm-workspace-yaml: 1.5.0 - tinyglobby: 0.2.15 - yaml: 2.8.2 + pnpm-workspace-yaml: 1.6.0 + tinyglobby: 0.2.16 + yaml: 2.8.3 yaml-eslint-parser: 2.0.0 - eslint-plugin-regexp@3.0.0(eslint@10.0.1): + eslint-plugin-regexp@3.1.0(eslint@10.2.0): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) '@eslint-community/regexpp': 4.12.2 - comment-parser: 1.4.5 - eslint: 10.0.1 - jsdoc-type-pratt-parser: 7.1.1 + comment-parser: 1.4.6 + eslint: 10.2.0 + jsdoc-type-pratt-parser: 7.2.0 refa: 0.12.1 regexp-ast-analysis: 0.7.1 scslre: 0.3.0 - eslint-plugin-toml@1.1.1(@eslint/markdown@7.5.1)(eslint@10.0.1): + eslint-plugin-toml@1.3.1(eslint@10.2.0): dependencies: - '@eslint/core': 1.1.0 - '@eslint/plugin-kit': 0.6.0 - '@ota-meshi/ast-token-store': 0.2.1(@eslint/markdown@7.5.1)(eslint@10.0.1) + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.6.1 + '@ota-meshi/ast-token-store': 0.3.0 debug: 4.4.3 - eslint: 10.0.1 + eslint: 10.2.0 toml-eslint-parser: 1.0.3 transitivePeerDependencies: - - '@eslint/markdown' - supports-color - eslint-plugin-unicorn@63.0.0(eslint@10.0.1): + eslint-plugin-unicorn@64.0.0(eslint@10.2.0): dependencies: '@babel/helper-validator-identifier': 7.28.5 - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) change-case: 5.4.4 ci-info: 4.4.0 clean-regexp: 1.0.0 - core-js-compat: 3.48.0 - eslint: 10.0.1 + core-js-compat: 3.49.0 + eslint: 10.2.0 find-up-simple: 1.0.1 - globals: 16.5.0 + globals: 17.5.0 indent-string: 5.0.0 is-builtin-module: 5.0.0 jsesc: 3.1.0 pluralize: 8.0.0 regexp-tree: 0.1.27 - regjsparser: 0.13.0 + regjsparser: 0.13.1 semver: 7.7.4 strip-indent: 4.1.1 - eslint-plugin-unused-imports@4.4.1(@typescript-eslint/eslint-plugin@8.56.0(@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1): + eslint-plugin-unused-imports@4.4.1(@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0): dependencies: - eslint: 10.0.1 + eslint: 10.2.0 optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.56.0(@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1)(typescript@5.9.3) + '@typescript-eslint/eslint-plugin': 8.58.2(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(typescript@5.9.3) - eslint-plugin-vue@10.8.0(@stylistic/eslint-plugin@5.9.0(eslint@10.0.1))(@typescript-eslint/parser@8.56.0(eslint@10.0.1)(typescript@5.9.3))(eslint@10.0.1)(vue-eslint-parser@10.4.0(eslint@10.0.1)): + eslint-plugin-vue@10.8.0(@stylistic/eslint-plugin@5.10.0(eslint@10.2.0))(@typescript-eslint/parser@8.58.2(eslint@10.2.0)(typescript@5.9.3))(eslint@10.2.0)(vue-eslint-parser@10.4.0(eslint@10.2.0)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) - eslint: 10.0.1 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) + eslint: 10.2.0 natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 7.1.1 semver: 7.7.4 - vue-eslint-parser: 10.4.0(eslint@10.0.1) + vue-eslint-parser: 10.4.0(eslint@10.2.0) xml-name-validator: 4.0.0 optionalDependencies: - '@stylistic/eslint-plugin': 5.9.0(eslint@10.0.1) - '@typescript-eslint/parser': 8.56.0(eslint@10.0.1)(typescript@5.9.3) + '@stylistic/eslint-plugin': 5.10.0(eslint@10.2.0) + '@typescript-eslint/parser': 8.58.2(eslint@10.2.0)(typescript@5.9.3) - eslint-plugin-yml@3.2.1(@eslint/markdown@7.5.1)(eslint@10.0.1): + eslint-plugin-yml@3.3.1(eslint@10.2.0): dependencies: - '@eslint/core': 1.1.0 - '@eslint/plugin-kit': 0.6.0 - '@ota-meshi/ast-token-store': 0.2.1(@eslint/markdown@7.5.1)(eslint@10.0.1) + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.6.1 + '@ota-meshi/ast-token-store': 0.3.0 debug: 4.4.3 diff-sequences: 29.6.3 escape-string-regexp: 5.0.0 - eslint: 10.0.1 + eslint: 10.2.0 natural-compare: 1.4.0 yaml-eslint-parser: 2.0.0 transitivePeerDependencies: - - '@eslint/markdown' - supports-color - eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.28)(eslint@10.0.1): + eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.28)(eslint@10.2.0): dependencies: '@vue/compiler-sfc': 3.5.28 - eslint: 10.0.1 + eslint: 10.2.0 - eslint-scope@9.1.1: + eslint-scope@9.1.2: dependencies: '@types/esrecurse': 4.3.1 '@types/estree': 1.0.8 @@ -2089,14 +2117,14 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@10.0.1: + eslint@10.2.0: dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.1) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.0) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.23.2 - '@eslint/config-helpers': 0.5.2 - '@eslint/core': 1.1.0 - '@eslint/plugin-kit': 0.6.0 + '@eslint/config-array': 0.23.5 + '@eslint/config-helpers': 0.5.5 + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.7.1 '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 @@ -2105,9 +2133,9 @@ snapshots: cross-spawn: 7.0.6 debug: 4.4.3 escape-string-regexp: 4.0.0 - eslint-scope: 9.1.1 + eslint-scope: 9.1.2 eslint-visitor-keys: 5.0.1 - espree: 11.1.1 + espree: 11.2.0 esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -2118,7 +2146,7 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - minimatch: 10.2.2 + minimatch: 10.2.5 natural-compare: 1.4.0 optionator: 0.9.4 transitivePeerDependencies: @@ -2130,18 +2158,12 @@ snapshots: acorn-jsx: 5.3.2(acorn@8.16.0) eslint-visitor-keys: 4.2.1 - espree@11.1.1: + espree@11.2.0: dependencies: acorn: 8.16.0 acorn-jsx: 5.3.2(acorn@8.16.0) eslint-visitor-keys: 5.0.1 - espree@9.6.1: - dependencies: - acorn: 8.16.0 - acorn-jsx: 5.3.2(acorn@8.16.0) - eslint-visitor-keys: 3.4.3 - esquery@1.7.0: dependencies: estraverse: 5.3.0 @@ -2166,22 +2188,28 @@ snapshots: fast-levenshtein@2.0.6: {} + fast-string-truncated-width@1.2.1: {} + + fast-string-width@1.1.0: + dependencies: + fast-string-truncated-width: 1.2.1 + + fast-wrap-ansi@0.1.6: + dependencies: + fast-string-width: 1.1.0 + fault@2.0.1: dependencies: format: 0.2.2 - fdir@6.5.0(picomatch@4.0.3): + fdir@6.5.0(picomatch@4.0.4): optionalDependencies: - picomatch: 4.0.3 + picomatch: 4.0.4 file-entry-cache@8.0.0: dependencies: flat-cache: 4.0.1 - fill-range@7.1.1: - dependencies: - to-regex-range: 5.0.1 - find-up-simple@1.0.1: {} find-up@5.0.0: @@ -2191,16 +2219,16 @@ snapshots: flat-cache@4.0.1: dependencies: - flatted: 3.3.3 + flatted: 3.4.2 keyv: 4.5.4 - flatted@3.3.3: {} + flatted@3.4.2: {} format@0.2.2: {} get-east-asian-width@1.5.0: {} - get-tsconfig@4.13.6: + get-tsconfig@4.13.8: dependencies: resolve-pkg-maps: 1.0.0 @@ -2212,16 +2240,12 @@ snapshots: globals@15.15.0: {} - globals@16.5.0: {} - - globals@17.3.0: {} + globals@17.5.0: {} globrex@0.1.2: {} graceful-fs@4.2.11: {} - graphemer@1.4.0: {} - html-entities@2.6.0: {} ignore@5.3.2: {} @@ -2234,7 +2258,7 @@ snapshots: is-builtin-module@5.0.0: dependencies: - builtin-modules: 5.0.0 + builtin-modules: 5.1.0 is-extglob@2.1.1: {} @@ -2246,14 +2270,12 @@ snapshots: dependencies: is-extglob: 2.1.1 - is-number@7.0.0: {} - isexe@2.0.0: {} - jsdoc-type-pratt-parser@7.0.0: {} - jsdoc-type-pratt-parser@7.1.1: {} + jsdoc-type-pratt-parser@7.2.0: {} + jsesc@3.1.0: {} json-buffer@3.0.1: {} @@ -2262,13 +2284,16 @@ snapshots: json-stable-stringify-without-jsonify@1.0.1: {} - jsonc-eslint-parser@2.4.2: + jsonc-eslint-parser@3.1.0: dependencies: acorn: 8.16.0 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 + eslint-visitor-keys: 5.0.1 semver: 7.7.4 + katex@0.16.45: + dependencies: + commander: 8.3.0 + keyv@4.5.4: dependencies: json-buffer: 3.0.1 @@ -2278,19 +2303,18 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - lint-staged@16.2.7: + lint-staged@16.4.0: dependencies: commander: 14.0.3 listr2: 9.0.5 - micromatch: 4.0.8 - nano-spawn: 2.0.0 - pidtree: 0.6.0 + picomatch: 4.0.4 string-argv: 0.3.2 - yaml: 2.8.2 + tinyexec: 1.1.1 + yaml: 2.8.3 listr2@9.0.5: dependencies: - cli-truncate: 5.1.1 + cli-truncate: 5.2.0 colorette: 2.0.20 eventemitter3: 5.0.4 log-update: 6.1.0 @@ -2299,7 +2323,7 @@ snapshots: local-pkg@1.1.2: dependencies: - mlly: 1.8.0 + mlly: 1.8.2 pkg-types: 2.3.0 quansync: 0.2.11 @@ -2307,12 +2331,14 @@ snapshots: dependencies: p-locate: 5.0.0 + lodash.merge@4.6.2: {} + log-update@6.1.0: dependencies: ansi-escapes: 7.3.0 cli-cursor: 5.0.0 slice-ansi: 7.1.2 - strip-ansi: 7.1.2 + strip-ansi: 7.2.0 wrap-ansi: 9.0.2 longest-streak@3.1.0: {} @@ -2415,6 +2441,18 @@ snapshots: transitivePeerDependencies: - supports-color + mdast-util-math@3.0.0: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + longest-streak: 3.1.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + unist-util-remove-position: 5.0.0 + transitivePeerDependencies: + - supports-color + mdast-util-phrasing@4.1.0: dependencies: '@types/mdast': 4.0.4 @@ -2520,6 +2558,16 @@ snapshots: micromark-util-combine-extensions: 2.0.1 micromark-util-types: 2.0.2 + micromark-extension-math@3.1.0: + dependencies: + '@types/katex': 0.16.8 + devlop: 1.1.0 + katex: 0.16.45 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + micromark-factory-destination@2.0.1: dependencies: micromark-util-character: 2.1.1 @@ -2614,7 +2662,7 @@ snapshots: micromark@4.0.2: dependencies: - '@types/debug': 4.1.12 + '@types/debug': 4.1.13 debug: 4.4.3 decode-named-character-reference: 1.3.0 devlop: 1.1.0 @@ -2634,31 +2682,22 @@ snapshots: transitivePeerDependencies: - supports-color - micromatch@4.0.8: - dependencies: - braces: 3.0.3 - picomatch: 2.3.1 - mimic-function@5.0.1: {} - minimatch@10.2.2: + minimatch@10.2.5: dependencies: - brace-expansion: 5.0.3 + brace-expansion: 5.0.5 - minimatch@9.0.6: - dependencies: - brace-expansion: 5.0.3 - - mlly@1.8.0: + mlly@1.8.2: dependencies: acorn: 8.16.0 pathe: 2.0.3 pkg-types: 1.3.1 ufo: 1.6.3 - ms@2.1.3: {} + module-replacements@2.11.0: {} - nano-spawn@2.0.0: {} + ms@2.1.3: {} nanoid@3.3.11: {} @@ -2666,7 +2705,7 @@ snapshots: natural-orderby@5.0.0: {} - node-releases@2.0.27: {} + node-releases@2.0.37: {} nth-check@2.1.1: dependencies: @@ -2713,16 +2752,12 @@ snapshots: picocolors@1.1.1: {} - picomatch@2.3.1: {} - - picomatch@4.0.3: {} - - pidtree@0.6.0: {} + picomatch@4.0.4: {} pkg-types@1.3.1: dependencies: confbox: 0.1.8 - mlly: 1.8.0 + mlly: 1.8.2 pathe: 2.0.3 pkg-types@2.3.0: @@ -2733,16 +2768,16 @@ snapshots: pluralize@8.0.0: {} - pnpm-workspace-yaml@1.5.0: + pnpm-workspace-yaml@1.6.0: dependencies: - yaml: 2.8.2 + yaml: 2.8.3 postcss-selector-parser@7.1.1: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss@8.5.6: + postcss@8.5.9: dependencies: nanoid: 3.3.11 picocolors: 1.1.1 @@ -2765,7 +2800,7 @@ snapshots: regexp-tree@0.1.27: {} - regjsparser@0.13.0: + regjsparser@0.13.1: dependencies: jsesc: 3.1.0 @@ -2805,6 +2840,11 @@ snapshots: ansi-styles: 6.2.3 is-fullwidth-code-point: 5.1.0 + slice-ansi@8.0.0: + dependencies: + ansi-styles: 6.2.3 + is-fullwidth-code-point: 5.1.0 + source-map-js@1.2.1: {} spdx-exceptions@2.5.0: {} @@ -2822,14 +2862,14 @@ snapshots: dependencies: emoji-regex: 10.6.0 get-east-asian-width: 1.5.0 - strip-ansi: 7.1.2 + strip-ansi: 7.2.0 string-width@8.2.0: dependencies: get-east-asian-width: 1.5.0 - strip-ansi: 7.1.2 + strip-ansi: 7.2.0 - strip-ansi@7.1.2: + strip-ansi@7.2.0: dependencies: ansi-regex: 6.2.2 @@ -2839,18 +2879,14 @@ snapshots: dependencies: '@pkgr/core': 0.2.9 - tapable@2.3.0: {} + tapable@2.3.2: {} - tinyexec@1.0.2: {} + tinyexec@1.1.1: {} - tinyglobby@0.2.15: + tinyglobby@0.2.16: dependencies: - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 - - to-regex-range@5.0.1: - dependencies: - is-number: 7.0.0 + fdir: 6.5.0(picomatch@4.0.4) + picomatch: 4.0.4 to-valid-identifier@1.0.0: dependencies: @@ -2861,13 +2897,13 @@ snapshots: dependencies: eslint-visitor-keys: 5.0.1 - ts-api-utils@2.4.0(typescript@5.9.3): + ts-api-utils@2.5.0(typescript@5.9.3): dependencies: typescript: 5.9.3 ts-declaration-location@1.0.7(typescript@5.9.3): dependencies: - picomatch: 4.0.3 + picomatch: 4.0.4 typescript: 5.9.3 type-check@0.4.0: @@ -2882,6 +2918,11 @@ snapshots: dependencies: '@types/unist': 3.0.3 + unist-util-remove-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-visit: 5.1.0 + unist-util-stringify-position@4.0.0: dependencies: '@types/unist': 3.0.3 @@ -2897,9 +2938,9 @@ snapshots: unist-util-is: 6.0.1 unist-util-visit-parents: 6.0.2 - update-browserslist-db@1.2.3(browserslist@4.28.1): + update-browserslist-db@1.2.3(browserslist@4.28.2): dependencies: - browserslist: 4.28.1 + browserslist: 4.28.2 escalade: 3.2.0 picocolors: 1.1.1 @@ -2909,13 +2950,13 @@ snapshots: util-deprecate@1.0.2: {} - vue-eslint-parser@10.4.0(eslint@10.0.1): + vue-eslint-parser@10.4.0(eslint@10.2.0): dependencies: debug: 4.4.3 - eslint: 10.0.1 - eslint-scope: 9.1.1 + eslint: 10.2.0 + eslint-scope: 9.1.2 eslint-visitor-keys: 5.0.1 - espree: 11.1.1 + espree: 11.2.0 esquery: 1.7.0 semver: 7.7.4 transitivePeerDependencies: @@ -2931,16 +2972,16 @@ snapshots: dependencies: ansi-styles: 6.2.3 string-width: 7.2.0 - strip-ansi: 7.1.2 + strip-ansi: 7.2.0 xml-name-validator@4.0.0: {} yaml-eslint-parser@2.0.0: dependencies: eslint-visitor-keys: 5.0.1 - yaml: 2.8.2 + yaml: 2.8.3 - yaml@2.8.2: {} + yaml@2.8.3: {} yocto-queue@0.1.0: {} diff --git a/src/_template/operator.mk b/src/_template/operator.mk index 69935af..199940d 100644 --- a/src/_template/operator.mk +++ b/src/_template/operator.mk @@ -1,4 +1,8 @@ -# Kubernetes Operator Installation Template +# DEPRECATED: This file is deprecated. Do not use for new services. +# Operators and services should be in separate directories, each using base.mk directly. +# See AGENTS.md "Operator / Service Separation" for details. +# +# Kubernetes Operator Installation Template (DEPRECATED) # This file provides common targets for deploying services using the Operator pattern. # # Usage: diff --git a/src/cassandra-operator/Makefile b/src/cassandra-operator/Makefile new file mode 100644 index 0000000..dfe5680 --- /dev/null +++ b/src/cassandra-operator/Makefile @@ -0,0 +1,15 @@ +HELM_RELEASE_NAME ?= k8ssandra-operator +HELM_APPLICATION_NAME ?= k8ssandra-operator +HELM_NAMESPACE ?= k8ssandra-operator +HELM_DIR ?= ./helm +HELM_CHART_VERSION ?= +HELM_VALUES_FILE ?= ./values.yaml +HELM_OCI_REGISTRY ?= +HELM_OCI_NAMESPACE ?= +HELM_OCI_USERNAME ?= +HELM_OCI_PASSWORD ?= +HELM_REPO_NAME ?= k8ssandra +HELM_REPO_URL ?= https://helm.k8ssandra.io/stable +HELM_CHART_REPO ?= $(HELM_REPO_NAME)/k8ssandra-operator + +include ../_template/base.mk diff --git a/src/cassandra-operator/README.md b/src/cassandra-operator/README.md new file mode 100644 index 0000000..8fa9d29 --- /dev/null +++ b/src/cassandra-operator/README.md @@ -0,0 +1,60 @@ +# K8ssandra Operator + +## Introduction + +K8ssandra Operator is a Kubernetes operator that manages the lifecycle of Apache Cassandra clusters using K8ssandra. It handles provisioning, scaling, repair scheduling (Reaper), backup management (Medusa), and monitoring. + +This chart installs the K8ssandra Operator only. To deploy a K8ssandra/Cassandra cluster using Helm, see the [cassandra](../cassandra/) directory. Alternatively, Cassandra clusters can be created with K8ssandraCluster CRDs — a sample cluster definition is provided in `k8ssandra-cluster.yaml`. + +## Installation + +To install the K8ssandra Operator, run: + +```bash +make install +``` + +## Usage + +After installation, verify the operator is running: + +```bash +kubectl get pods -n k8ssandra-operator +``` + +Create a Cassandra cluster using the sample CRD: + +```bash +kubectl apply -f k8ssandra-cluster.yaml -n cassandra +``` + +Check the cluster status: + +```bash +kubectl get k8ssandraclusters -n cassandra +``` + +Connect with cqlsh once the cluster is ready: + +```bash +kubectl exec -it -n cassandra cassandra-cluster-dc1-default-sts-0 -- cqlsh +``` + +Check that CRDs are registered: + +```bash +kubectl get crd | grep k8ssandra +``` + +## Uninstall + +To uninstall: + +```bash +make uninstall +``` + +## Documentation + +- [K8ssandra Documentation](https://docs.k8ssandra.io/) +- [K8ssandra Operator GitHub](https://github.com/k8ssandra/k8ssandra-operator) diff --git a/src/cassandra-operator/README.zh.md b/src/cassandra-operator/README.zh.md new file mode 100644 index 0000000..e493e27 --- /dev/null +++ b/src/cassandra-operator/README.zh.md @@ -0,0 +1,60 @@ +# K8ssandra Operator + +## 简介 + +K8ssandra Operator 是一个 Kubernetes Operator,用于管理基于 K8ssandra 的 Apache Cassandra 集群的生命周期。它负责集群的配置、扩展、修复调度(Reaper)、备份管理(Medusa)和监控。 + +此 Chart 仅安装 K8ssandra Operator。要使用 Helm 部署 K8ssandra/Cassandra 集群,请参阅 [cassandra](../cassandra/) 目录。也可以通过 K8ssandraCluster CRD 创建 Cassandra 集群——示例集群定义见 `k8ssandra-cluster.yaml`。 + +## 安装 + +安装 K8ssandra Operator: + +```bash +make install +``` + +## 使用 + +安装完成后,验证 Operator 是否正常运行: + +```bash +kubectl get pods -n k8ssandra-operator +``` + +使用示例 CRD 创建 Cassandra 集群: + +```bash +kubectl apply -f k8ssandra-cluster.yaml -n cassandra +``` + +检查集群状态: + +```bash +kubectl get k8ssandraclusters -n cassandra +``` + +集群就绪后,可使用 cqlsh 连接: + +```bash +kubectl exec -it -n cassandra cassandra-cluster-dc1-default-sts-0 -- cqlsh +``` + +检查 CRD 是否已注册: + +```bash +kubectl get crd | grep k8ssandra +``` + +## 卸载 + +卸载: + +```bash +make uninstall +``` + +## 文档 + +- [K8ssandra 文档](https://docs.k8ssandra.io/) +- [K8ssandra Operator GitHub](https://github.com/k8ssandra/k8ssandra-operator) diff --git a/src/cassandra-operator/k8ssandra-cluster.yaml b/src/cassandra-operator/k8ssandra-cluster.yaml new file mode 100644 index 0000000..252102e --- /dev/null +++ b/src/cassandra-operator/k8ssandra-cluster.yaml @@ -0,0 +1,38 @@ +apiVersion: k8ssandra.io/v1alpha1 +kind: K8ssandraCluster +metadata: + name: cassandra-cluster +spec: + cassandra: + serverVersion: 4.0.1 + datacenters: + - metadata: + name: dc1 + size: 3 + racks: + - name: rack1 + - name: rack2 + - name: rack3 + storageConfig: + cassandraDataVolumeClaimSpec: + storageClassName: standard + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi + config: + jvmOptions: + heapSize: 1Gi + resources: + requests: + cpu: 1000m + memory: 4Gi + limits: + cpu: 2000m + memory: 4Gi + reaper: + autoScheduling: + enabled: false + medusa: + storageProperties: {} diff --git a/src/cassandra-operator/values.yaml b/src/cassandra-operator/values.yaml new file mode 100644 index 0000000..0f7ee03 --- /dev/null +++ b/src/cassandra-operator/values.yaml @@ -0,0 +1,28 @@ +# K8ssandra Operator Configuration +# https://github.com/k8ssandra/k8ssandra-operator + +# Operator configuration +replicaCount: 1 + +resources: + requests: + cpu: 100m + memory: 256Mi + limits: + cpu: 500m + memory: 512Mi + +# Medusa backup configuration +medusa: + enabled: false + +# Prometheus monitoring +monitoring: + enabled: false + +# Cluster-wide configuration +clusterScoped: false + +# Webhook configuration +webhook: + enabled: false diff --git a/src/cassandra/Makefile b/src/cassandra/Makefile index 9eb76f6..314b53c 100644 --- a/src/cassandra/Makefile +++ b/src/cassandra/Makefile @@ -1,5 +1,5 @@ -HELM_RELEASE_NAME ?= cassandra -HELM_APPLICATION_NAME ?= cassandra +HELM_RELEASE_NAME ?= k8ssandra +HELM_APPLICATION_NAME ?= k8ssandra HELM_NAMESPACE ?= cassandra HELM_DIR ?= ./helm HELM_CHART_VERSION ?= @@ -10,21 +10,6 @@ HELM_OCI_USERNAME ?= HELM_OCI_PASSWORD ?= HELM_REPO_NAME ?= k8ssandra HELM_REPO_URL ?= https://helm.k8ssandra.io/stable +HELM_CHART_REPO ?= $(HELM_REPO_NAME)/k8ssandra -# Operator configuration -OPERATOR_RELEASE_NAME ?= k8ssandra-operator -OPERATOR_NAMESPACE ?= k8ssandra-operator -OPERATOR_CHART_REPO ?= $(HELM_REPO_NAME)/k8ssandra-operator -OPERATOR_CHART_VERSION ?= -OPERATOR_VALUES_FILE ?= ./values.yaml - -# Cluster configuration -CLUSTER_RELEASE_NAME ?= cassandra-cluster -CLUSTER_CHART_REPO ?= $(HELM_REPO_NAME)/k8ssandra -CLUSTER_VALUES_FILE ?= ./cluster-values.yaml - -# Enable CRD waiting -WAIT_FOR_CRD ?= true - -include ../_template/base.mk -include ../_template/operator.mk +include ../_template/base.mk \ No newline at end of file diff --git a/src/cassandra/README.md b/src/cassandra/README.md index 076302c..e337139 100644 --- a/src/cassandra/README.md +++ b/src/cassandra/README.md @@ -2,13 +2,13 @@ ## Introduction -Apache Cassandra is an open-source distributed NoSQL database management system designed to handle large amounts of data across many commodity servers. This deployment uses K8ssandra Operator, which provides a Kubernetes-native way to manage Cassandra clusters. +Apache Cassandra is a free, open-source, distributed, wide-column store, NoSQL database management system designed to handle large amounts of data across many commodity servers. This chart deploys a K8ssandra cluster, which manages Cassandra using the K8ssandra Operator. -K8ssandra is a cloud-native distribution of Apache Cassandra that runs on Kubernetes. It includes automation for operational tasks such as repairs, backups, and monitoring. +The K8ssandra Operator must be installed first — see the [cassandra-operator](../cassandra-operator/) directory. ## Installation -To install Cassandra, run: +To install Apache Cassandra, run: ```bash make install @@ -16,67 +16,34 @@ make install ## Usage -After installation, you can create a Cassandra cluster: +After installation, verify the deployment: ```bash -# Check if operator is running kubectl get pods -n cassandra - -# Create a Cassandra cluster -kubectl apply -f - < +``` + +## Uninstall + +To uninstall: + +```bash +make uninstall +``` + +## Documentation + +- [OpenLIT Operator Overview](https://docs.openlit.io/latest/operator/overview) +- [Installation Guide](https://docs.openlit.io/latest/operator/installation) +- [Configuration](https://docs.openlit.io/latest/operator/configuration/operator) diff --git a/src/openlit-operator/README.zh.md b/src/openlit-operator/README.zh.md new file mode 100644 index 0000000..12bd3c6 --- /dev/null +++ b/src/openlit-operator/README.zh.md @@ -0,0 +1,51 @@ +# OpenLIT Operator + +## 简介 + +OpenLIT Operator 是一个 Kubernetes Operator,为零代码 AI 可观测性提供支持。它利用 OpenTelemetry 通过 init 容器注入探针,自动为 AI/LLM 工作负载(如 OpenAI、HuggingFace、LangChain 和向量数据库)添加可观测性,无需修改代码。 + +用于接收和可视化遥测数据的 OpenLIT 后端,请参阅 [openlit](../openlit/) 目录。 + +`auto-instrumentation.yaml` 中提供了示例 AutoInstrumentation 清单。 + +## 安装 + +安装 OpenLIT Operator: + +```bash +make install +``` + +## 使用 + +安装完成后,验证 Operator 是否正常运行: + +```bash +kubectl get pods -n openlit +``` + +使用示例 CRD 创建 `AutoInstrumentation` 资源: + +```bash +kubectl apply -f auto-instrumentation.yaml -n default +``` + +重启你的应用 Deployment 以使 instrumentation 生效: + +```bash +kubectl rollout restart deployment +``` + +## 卸载 + +卸载: + +```bash +make uninstall +``` + +## 文档 + +- [OpenLIT Operator 概览](https://docs.openlit.io/latest/operator/overview) +- [安装指南](https://docs.openlit.io/latest/operator/installation) +- [配置说明](https://docs.openlit.io/latest/operator/configuration/operator) diff --git a/src/openlit-operator/auto-instrumentation.yaml b/src/openlit-operator/auto-instrumentation.yaml new file mode 100644 index 0000000..bf7bc17 --- /dev/null +++ b/src/openlit-operator/auto-instrumentation.yaml @@ -0,0 +1,13 @@ +apiVersion: openlit.io/v1alpha1 +kind: AutoInstrumentation +metadata: + name: my-instrumentation +spec: + selector: + matchLabels: + app: my-ai-app + python: + instrumentation: + enabled: true + otlp: + endpoint: 'http://openlit.openlit.svc:4318' diff --git a/src/openlit-operator/values.yaml b/src/openlit-operator/values.yaml new file mode 100644 index 0000000..a823f06 --- /dev/null +++ b/src/openlit-operator/values.yaml @@ -0,0 +1,19 @@ +# OpenLIT Operator Helm Chart Values +# https://github.com/openlit/openlit + +# Operator image configuration +image: + repository: ghcr.io/openlit/openlit-operator + pullPolicy: IfNotPresent + +# Operator replica count +replicaCount: 1 + +# Resource limits and requests +resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/src/openlit/Makefile b/src/openlit/Makefile new file mode 100644 index 0000000..1c6cd1c --- /dev/null +++ b/src/openlit/Makefile @@ -0,0 +1,15 @@ +HELM_RELEASE_NAME ?= openlit +HELM_APPLICATION_NAME ?= openlit +HELM_NAMESPACE ?= openlit +HELM_DIR ?= ./helm +HELM_CHART_VERSION ?= +HELM_VALUES_FILE ?= ./values.yaml +HELM_OCI_REGISTRY ?= +HELM_OCI_NAMESPACE ?= +HELM_OCI_USERNAME ?= +HELM_OCI_PASSWORD ?= +HELM_REPO_NAME ?= openlit +HELM_REPO_URL ?= https://openlit.github.io/helm/ +HELM_CHART_REPO ?= $(HELM_REPO_NAME)/openlit + +include ../_template/base.mk \ No newline at end of file diff --git a/src/openlit/README.md b/src/openlit/README.md new file mode 100644 index 0000000..ef51dc0 --- /dev/null +++ b/src/openlit/README.md @@ -0,0 +1,45 @@ +# OpenLIT + +## Introduction + +OpenLIT is an open-source observability platform for AI/LLM applications. It provides monitoring, tracing, and analytics for AI workloads including OpenAI, HuggingFace, LangChain, and vector databases. This chart deploys the OpenLIT backend that receives and visualizes telemetry data. + +For zero-code AI instrumentation of your applications, install the [openlit-operator](../openlit-operator/) which automatically injects OpenTelemetry instrumentation via init containers. + +## Installation + +To install OpenLIT, run: + +```bash +make install +``` + +## Usage + +After installation, verify the deployment: + +```bash +kubectl get pods -n openlit +``` + +To access the OpenLIT dashboard, port-forward the service: + +```bash +kubectl port-forward svc/openlit 8080:8080 -n openlit +``` + +Then access at + +## Uninstall + +To uninstall OpenLIT: + +```bash +make uninstall +``` + +## Documentation + +- [OpenLIT Documentation](https://docs.openlit.io/) +- [OpenLIT GitHub](https://github.com/openlit/openlit) +- [OpenLIT Operator](https://docs.openlit.io/latest/operator/overview) diff --git a/src/openlit/README.zh.md b/src/openlit/README.zh.md new file mode 100644 index 0000000..098c90c --- /dev/null +++ b/src/openlit/README.zh.md @@ -0,0 +1,45 @@ +# OpenLIT + +## 简介 + +OpenLIT 是一个开源的 AI/LLM 应用可观测性平台。它为 AI 工作负载(包括 OpenAI、HuggingFace、LangChain 和向量数据库)提供监控、追踪和分析功能。此 Chart 部署 OpenLIT 后端,用于接收和可视化遥测数据。 + +如需对应用进行零代码 AI 探针注入,请安装 [openlit-operator](../openlit-operator/),它通过 init 容器自动注入 OpenTelemetry 探针。 + +## 安装 + +要安装 OpenLIT,请运行: + +```bash +make install +``` + +## 使用 + +安装完成后,验证部署: + +```bash +kubectl get pods -n openlit +``` + +要访问 OpenLIT 仪表板,请端口转发服务: + +```bash +kubectl port-forward svc/openlit 8080:8080 -n openlit +``` + +然后在 访问 + +## 卸载 + +卸载 OpenLIT: + +```bash +make uninstall +``` + +## 文档 + +- [OpenLIT 文档](https://docs.openlit.io/) +- [OpenLIT GitHub](https://github.com/openlit/openlit) +- [OpenLIT Operator](https://docs.openlit.io/latest/operator/overview) diff --git a/src/openlit/values.yaml b/src/openlit/values.yaml new file mode 100644 index 0000000..54509bf --- /dev/null +++ b/src/openlit/values.yaml @@ -0,0 +1,22 @@ +# OpenLIT Helm Chart Values +# https://github.com/openlit/openlit + +# OpenLIT backend configuration +openlit: + # AI observability configuration + ai: + enabled: true + + # Resource configuration + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 500m + memory: 512Mi + +# Service configuration +service: + type: ClusterIP + port: 8080 diff --git a/src/postgres-operator/Makefile b/src/postgres-operator/Makefile new file mode 100644 index 0000000..17d7571 --- /dev/null +++ b/src/postgres-operator/Makefile @@ -0,0 +1,15 @@ +HELM_RELEASE_NAME ?= cnpg +HELM_APPLICATION_NAME ?= cloudnative-pg +HELM_NAMESPACE ?= cnpg-system +HELM_DIR ?= ./helm +HELM_CHART_VERSION ?= +HELM_VALUES_FILE ?= ./values.yaml +HELM_OCI_REGISTRY ?= +HELM_OCI_NAMESPACE ?= +HELM_OCI_USERNAME ?= +HELM_OCI_PASSWORD ?= +HELM_REPO_NAME ?= cnpg +HELM_REPO_URL ?= https://cloudnative-pg.github.io/charts +HELM_CHART_REPO ?= $(HELM_REPO_NAME)/cloudnative-pg + +include ../_template/base.mk \ No newline at end of file diff --git a/src/postgres-operator/README.md b/src/postgres-operator/README.md new file mode 100644 index 0000000..e7c1376 --- /dev/null +++ b/src/postgres-operator/README.md @@ -0,0 +1,76 @@ +# CloudNativePG Operator + +## Introduction + +CloudNativePG is a Kubernetes operator for PostgreSQL that manages the entire PostgreSQL lifecycle — provisioning, replication, failover, backup, and monitoring — through Kubernetes-native CRDs. + +This chart installs the CloudNativePG Operator only. PostgreSQL clusters are created through Cluster CRDs after the operator is installed. + +## Installation + +To install the CloudNativePG Operator, run: + +```bash +make install +``` + +## Usage + +After installation, verify the operator is running: + +```bash +kubectl get pods -n cnpg-system +``` + +Check that CRDs are registered: + +```bash +kubectl get crd | grep cnpg +``` + +### Create a PostgreSQL Cluster + +```yaml +apiVersion: postgresql.cnpg.io/v1 +kind: Cluster +metadata: + name: postgres-cluster +spec: + instances: 3 + storage: + size: 1Gi + postgresql: + parameters: + max_connections: '200' +``` + +Apply the manifest: + +```bash +kubectl apply -f postgres-cluster.yaml +``` + +Check the cluster status: + +```bash +kubectl get cluster -n postgres +``` + +Connect to PostgreSQL: + +```bash +kubectl exec -it postgres-cluster-1 -n postgres -- psql +``` + +## Uninstall + +To uninstall: + +```bash +make uninstall +``` + +## Documentation + +- [CloudNativePG Documentation](https://cloudnative-pg.io/documentation/) +- [CloudNativePG GitHub](https://github.com/cloudnative-pg/cloudnative-pg) diff --git a/src/postgres-operator/README.zh.md b/src/postgres-operator/README.zh.md new file mode 100644 index 0000000..64ac75e --- /dev/null +++ b/src/postgres-operator/README.zh.md @@ -0,0 +1,76 @@ +# CloudNativePG Operator + +## 简介 + +CloudNativePG 是一个 PostgreSQL Kubernetes Operator,通过 Kubernetes 原生 CRD 管理完整的 PostgreSQL 生命周期——配置、复制、故障转移、备份和监控。 + +此 Chart 仅安装 CloudNativePG Operator。PostgreSQL 集群在 Operator 安装后通过 Cluster CRD 创建。 + +## 安装 + +安装 CloudNativePG Operator: + +```bash +make install +``` + +## 使用 + +安装完成后,验证 Operator 是否正常运行: + +```bash +kubectl get pods -n cnpg-system +``` + +检查 CRD 是否已注册: + +```bash +kubectl get crd | grep cnpg +``` + +### 创建 PostgreSQL 集群 + +```yaml +apiVersion: postgresql.cnpg.io/v1 +kind: Cluster +metadata: + name: postgres-cluster +spec: + instances: 3 + storage: + size: 1Gi + postgresql: + parameters: + max_connections: '200' +``` + +应用清单: + +```bash +kubectl apply -f postgres-cluster.yaml +``` + +检查集群状态: + +```bash +kubectl get cluster -n postgres +``` + +连接 PostgreSQL: + +```bash +kubectl exec -it postgres-cluster-1 -n postgres -- psql +``` + +## 卸载 + +卸载: + +```bash +make uninstall +``` + +## 文档 + +- [CloudNativePG 文档](https://cloudnative-pg.io/documentation/) +- [CloudNativePG GitHub](https://github.com/cloudnative-pg/cloudnative-pg) diff --git a/src/postgres-operator/values.yaml b/src/postgres-operator/values.yaml new file mode 100644 index 0000000..567b73b --- /dev/null +++ b/src/postgres-operator/values.yaml @@ -0,0 +1,14 @@ +# CloudNativePG Operator Configuration +# https://cloudnative-pg.io/documentation/ + +# Default values for cloudnative-pg +# Uses chart defaults for most settings + +# Resource configuration +resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 500m + memory: 512Mi diff --git a/src/postgres/README.md b/src/postgres/README.md index 5370b11..60cbaca 100644 --- a/src/postgres/README.md +++ b/src/postgres/README.md @@ -4,6 +4,8 @@ PostgreSQL is a powerful, open source object-relational database system with over 35 years of active development. +This chart deploys a standalone PostgreSQL instance. For operator-managed PostgreSQL with automated high availability, failover, backup, and monitoring, see the [postgres-operator](../postgres-operator/) directory. + ## Installation To install PostgreSQL, run: diff --git a/src/postgres/README.zh.md b/src/postgres/README.zh.md index ac0ef88..ded738d 100644 --- a/src/postgres/README.zh.md +++ b/src/postgres/README.zh.md @@ -2,7 +2,9 @@ ## 简介 -PostgreSQL 是一个强大的开源对象关系数据库系统,已有超过 35 年的活跃开发。 +PostgreSQL 是一个功能强大的开源对象关系型数据库系统,拥有超过 35 年的活跃开发历史。 + +此 Chart 部署独立的 PostgreSQL 实例。如需 Operator 管理的 PostgreSQL(支持自动高可用、故障转移、备份和监控),请参阅 [postgres-operator](../postgres-operator/) 目录。 ## 安装 diff --git a/src/rabbitmq-cluster-operator/Makefile b/src/rabbitmq-cluster-operator/Makefile index 394706f..7c4deaf 100644 --- a/src/rabbitmq-cluster-operator/Makefile +++ b/src/rabbitmq-cluster-operator/Makefile @@ -1,6 +1,6 @@ -HELM_RELEASE_NAME ?= rabbitmq -HELM_APPLICATION_NAME ?= rabbitmq -HELM_NAMESPACE ?= rabbitmq +HELM_RELEASE_NAME ?= rabbitmq-cluster-operator +HELM_APPLICATION_NAME ?= rabbitmq-cluster-operator +HELM_NAMESPACE ?= rabbitmq-operator HELM_DIR ?= ./helm HELM_CHART_VERSION ?= 0.2.0 HELM_VALUES_FILE ?= ./values.yaml @@ -8,28 +8,6 @@ HELM_OCI_REGISTRY ?= docker.io HELM_OCI_NAMESPACE ?= cloudpirates HELM_OCI_USERNAME ?= HELM_OCI_PASSWORD ?= - -# Operator configuration -OPERATOR_RELEASE_NAME ?= rabbitmq-cluster-operator -OPERATOR_NAMESPACE ?= rabbitmq-operator -OPERATOR_CHART_REPO ?= oci://$(HELM_OCI_REGISTRY)/$(HELM_OCI_NAMESPACE)/rabbitmq-cluster-operator -OPERATOR_CHART_VERSION ?= $(HELM_CHART_VERSION) -OPERATOR_VALUES_FILE ?= ./values.yaml - -# For RabbitMQ Cluster Operator, we only install the operator -# RabbitMQ clusters are created using RabbitmqCluster CRDs after operator is installed +HELM_CHART_REPO ?= oci://$(HELM_OCI_REGISTRY)/$(HELM_OCI_NAMESPACE)/rabbitmq-cluster-operator include ../_template/base.mk -include ../_template/operator.mk - -# Override install target to only install operator -.PHONY: install -install: install-operator - -# Override uninstall target to only uninstall operator -.PHONY: uninstall -uninstall: uninstall-operator - -# Override verify target -.PHONY: verify -verify: verify-operator diff --git a/src/rabbitmq-cluster-operator/README.md b/src/rabbitmq-cluster-operator/README.md index 4e99ee1..924155e 100644 --- a/src/rabbitmq-cluster-operator/README.md +++ b/src/rabbitmq-cluster-operator/README.md @@ -4,6 +4,8 @@ The RabbitMQ Cluster Operator is a Kubernetes operator that automates the deployment and management of RabbitMQ clusters on Kubernetes. +For a standalone RabbitMQ deployment (without operator), see the [rabbitmq](../rabbitmq/) directory. + ## Installation To install RabbitMQ Cluster Operator, run: @@ -17,7 +19,7 @@ make install After installation, verify the deployment: ```bash -kubectl get pods -n rabbitmq-cluster-operator +kubectl get pods -n rabbitmq-operator ``` To create a RabbitMQ cluster, apply a RabbitmqCluster custom resource: diff --git a/src/rabbitmq-cluster-operator/README.zh.md b/src/rabbitmq-cluster-operator/README.zh.md index 4ecc6ea..47b154a 100644 --- a/src/rabbitmq-cluster-operator/README.zh.md +++ b/src/rabbitmq-cluster-operator/README.zh.md @@ -2,7 +2,9 @@ ## 简介 -RabbitMQ Cluster Operator 是一个 Kubernetes 运营商,用于在 Kubernetes 上自动部署和管理 RabbitMQ 集群。 +RabbitMQ Cluster Operator 是一个 Kubernetes Operator,用于自动化 Kubernetes 上 RabbitMQ 集群的部署和管理。 + +如需部署独立的 RabbitMQ(不使用 Operator),请参阅 [rabbitmq](../rabbitmq/) 目录。 ## 安装 @@ -17,7 +19,7 @@ make install 安装后,验证部署: ```bash -kubectl get pods -n rabbitmq-cluster-operator +kubectl get pods -n rabbitmq-operator ``` 要创建 RabbitMQ 集群,请应用 RabbitmqCluster 自定义资源: diff --git a/src/rabbitmq/README.md b/src/rabbitmq/README.md index f965426..7b71dac 100644 --- a/src/rabbitmq/README.md +++ b/src/rabbitmq/README.md @@ -4,6 +4,8 @@ RabbitMQ is the most widely deployed open source message broker. +This chart deploys a standalone RabbitMQ instance using the CloudPirates Helm chart. For operator-managed RabbitMQ clusters with advanced features like automatic scaling and self-healing, see the [rabbitmq-cluster-operator](../rabbitmq-cluster-operator/) directory. + ## Installation To install RabbitMQ, run: diff --git a/src/rabbitmq/README.zh.md b/src/rabbitmq/README.zh.md index 3ffd8eb..e491441 100644 --- a/src/rabbitmq/README.zh.md +++ b/src/rabbitmq/README.zh.md @@ -4,6 +4,8 @@ RabbitMQ 是部署最广泛的开源消息代理。 +此 Chart 使用 CloudPirates Helm chart 部署独立的 RabbitMQ 实例。如需 Operator 管理的 RabbitMQ 集群(支持自动扩缩容和自愈等高级功能),请参阅 [rabbitmq-cluster-operator](../rabbitmq-cluster-operator/) 目录。 + ## 安装 要安装 RabbitMQ,请运行: diff --git a/src/vault/Makefile b/src/vault/Makefile index 7ca281b..ff04e80 100644 --- a/src/vault/Makefile +++ b/src/vault/Makefile @@ -2,7 +2,7 @@ HELM_RELEASE_NAME ?= vault HELM_APPLICATION_NAME ?= vault HELM_NAMESPACE ?= vault HELM_DIR ?= ./helm -HELM_CHART_VERSION ?= +HELM_CHART_VERSION ?= 0.31.0 HELM_VALUES_FILE ?= ./values.yaml HELM_OCI_REGISTRY ?= HELM_OCI_NAMESPACE ?=