diff --git a/examples/demo-zk-books/pom.xml b/examples/demo-zk-books/pom.xml index 186ce3e7..ac786da2 100644 --- a/examples/demo-zk-books/pom.xml +++ b/examples/demo-zk-books/pom.xml @@ -32,7 +32,7 @@ org.springframework.boot spring-boot-starter-parent - 4.1.0 + 4.1.1 @@ -47,7 +47,7 @@ ${maven.build.timestamp} yyyyMMdd - 26.7.0 + 26.8.0 diff --git a/extensions/dashboard/sources/pom.xml b/extensions/dashboard/sources/pom.xml index 80ffbedd..304abde7 100644 --- a/extensions/dashboard/sources/pom.xml +++ b/extensions/dashboard/sources/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml @@ -38,12 +38,12 @@ tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.saas.api - 26.7.0 + 26.8.0 diff --git a/extensions/email-sms/sources/core/pom.xml b/extensions/email-sms/sources/core/pom.xml index 3a32db33..e1cf8693 100644 --- a/extensions/email-sms/sources/core/pom.xml +++ b/extensions/email-sms/sources/core/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules.email.parent tools.dynamia.modules - 26.7.0 + 26.8.0 tools.dynamia.modules.email @@ -50,12 +50,12 @@ tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.templates - 26.7.0 + 26.8.0 org.springframework diff --git a/extensions/email-sms/sources/pom.xml b/extensions/email-sms/sources/pom.xml index 5b5d44ee..a84b3363 100644 --- a/extensions/email-sms/sources/pom.xml +++ b/extensions/email-sms/sources/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml @@ -85,7 +85,7 @@ tools.dynamia.modules tools.dynamia.modules.saas.jpa - 26.7.0 + 26.8.0 diff --git a/extensions/email-sms/sources/ui/pom.xml b/extensions/email-sms/sources/ui/pom.xml index c5d86154..71c0b379 100644 --- a/extensions/email-sms/sources/ui/pom.xml +++ b/extensions/email-sms/sources/ui/pom.xml @@ -22,7 +22,7 @@ tools.dynamia.modules.email.parent tools.dynamia.modules - 26.7.0 + 26.8.0 DynamiaModules - Email UI @@ -34,12 +34,12 @@ tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.email - 26.7.0 + 26.8.0 tools.dynamia.zk.addons diff --git a/extensions/entity-files/packages/files-sdk/package.json b/extensions/entity-files/packages/files-sdk/package.json index 1aba9ac6..dddfa22d 100644 --- a/extensions/entity-files/packages/files-sdk/package.json +++ b/extensions/entity-files/packages/files-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/files-sdk", - "version": "26.7.0", + "version": "26.8.0", "website": "https://dynamia.tools", "description": "TypeScript/JavaScript client SDK for the Dynamia Entity Files extension REST API", "keywords": [ @@ -65,12 +65,12 @@ }, "devDependencies": { "@dynamia-tools/sdk": "workspace:*", - "@types/node": "^26.1.1", - "@vitest/coverage-v8": "^4.1.10", + "@types/node": "^26.4.1", + "@vitest/coverage-v8": "^4.1.11", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vitest": "^4.1.10" + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vitest": "^4.1.11" }, "engines": { "node": ">=24" diff --git a/extensions/entity-files/sources/core/pom.xml b/extensions/entity-files/sources/core/pom.xml index f96d5f06..14618f7c 100644 --- a/extensions/entity-files/sources/core/pom.xml +++ b/extensions/entity-files/sources/core/pom.xml @@ -22,7 +22,7 @@ tools.dynamia.modules.entityfiles.parent tools.dynamia.modules - 26.7.0 + 26.8.0 DynamiaModules - EntityFiles - Core tools.dynamia.modules.entityfiles @@ -54,20 +54,20 @@ tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 jar tools.dynamia tools.dynamia.io - 26.7.0 + 26.8.0 jar tools.dynamia tools.dynamia.web - 26.7.0 + 26.8.0 jar diff --git a/extensions/entity-files/sources/pom.xml b/extensions/entity-files/sources/pom.xml index effcb51c..5c5131b4 100644 --- a/extensions/entity-files/sources/pom.xml +++ b/extensions/entity-files/sources/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml diff --git a/extensions/entity-files/sources/s3/pom.xml b/extensions/entity-files/sources/s3/pom.xml index 9857c5bd..ec8f3dd8 100644 --- a/extensions/entity-files/sources/s3/pom.xml +++ b/extensions/entity-files/sources/s3/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.entityfiles.parent - 26.7.0 + 26.8.0 DynamiaModules - EntityFiles - S3 @@ -49,7 +49,7 @@ tools.dynamia.modules tools.dynamia.modules.entityfiles - 26.7.0 + 26.8.0 software.amazon.awssdk diff --git a/extensions/entity-files/sources/ui/pom.xml b/extensions/entity-files/sources/ui/pom.xml index 1f0bdf00..9369ae06 100644 --- a/extensions/entity-files/sources/ui/pom.xml +++ b/extensions/entity-files/sources/ui/pom.xml @@ -22,7 +22,7 @@ tools.dynamia.modules.entityfiles.parent tools.dynamia.modules - 26.7.0 + 26.8.0 DynamiaModules - EntityFiles UI tools.dynamia.modules.entityfiles.ui @@ -48,12 +48,12 @@ tools.dynamia.modules tools.dynamia.modules.entityfiles - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 jar diff --git a/extensions/file-importer/sources/core/pom.xml b/extensions/file-importer/sources/core/pom.xml index 9b79fbf0..325488b7 100644 --- a/extensions/file-importer/sources/core/pom.xml +++ b/extensions/file-importer/sources/core/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules.importer.parent tools.dynamia.modules - 26.7.0 + 26.8.0 Dynamia Modules - Importer Core tools.dynamia.modules.importer @@ -56,7 +56,7 @@ tools.dynamia tools.dynamia.reports - 26.7.0 + 26.8.0 diff --git a/extensions/file-importer/sources/pom.xml b/extensions/file-importer/sources/pom.xml index f9d2829e..061ae648 100644 --- a/extensions/file-importer/sources/pom.xml +++ b/extensions/file-importer/sources/pom.xml @@ -26,7 +26,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml diff --git a/extensions/file-importer/sources/ui/pom.xml b/extensions/file-importer/sources/ui/pom.xml index 1f9e0b5c..6a0fdebf 100644 --- a/extensions/file-importer/sources/ui/pom.xml +++ b/extensions/file-importer/sources/ui/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules.importer.parent tools.dynamia.modules - 26.7.0 + 26.8.0 Dynamia Modules - Importer UI tools.dynamia.modules.importer.ui @@ -55,13 +55,13 @@ tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.importer - 26.7.0 + 26.8.0 diff --git a/extensions/finances/sources/api/pom.xml b/extensions/finances/sources/api/pom.xml index 19834c65..06e14e9f 100644 --- a/extensions/finances/sources/api/pom.xml +++ b/extensions/finances/sources/api/pom.xml @@ -26,7 +26,7 @@ tools.dynamia.modules tools.dynamia.modules.finances.parent - 26.7.0 + 26.8.0 Dynamia Modules - Finances API diff --git a/extensions/finances/sources/pom.xml b/extensions/finances/sources/pom.xml index 4b0cf0c7..3a67b459 100644 --- a/extensions/finances/sources/pom.xml +++ b/extensions/finances/sources/pom.xml @@ -26,7 +26,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml diff --git a/extensions/http-functions/sources/core/pom.xml b/extensions/http-functions/sources/core/pom.xml index 05603c50..de066630 100644 --- a/extensions/http-functions/sources/core/pom.xml +++ b/extensions/http-functions/sources/core/pom.xml @@ -4,7 +4,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../../pom.xml DynamiaModules - Http Functions Core @@ -20,12 +20,12 @@ tools.dynamia.modules tools.dynamia.modules.saas.jpa - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.web - 26.7.0 + 26.8.0 diff --git a/extensions/http-functions/sources/pom.xml b/extensions/http-functions/sources/pom.xml index 8869411f..47b12e16 100644 --- a/extensions/http-functions/sources/pom.xml +++ b/extensions/http-functions/sources/pom.xml @@ -5,7 +5,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml @@ -66,7 +66,7 @@ tools.dynamia.modules tools.dynamia.modules.saas.jpa - 26.7.0 + 26.8.0 diff --git a/extensions/http-functions/sources/ui/pom.xml b/extensions/http-functions/sources/ui/pom.xml index 34bed2a2..3f9a9456 100644 --- a/extensions/http-functions/sources/ui/pom.xml +++ b/extensions/http-functions/sources/ui/pom.xml @@ -5,7 +5,7 @@ tools.dynamia.modules tools.dynamia.modules.functions.parent - 26.7.0 + 26.8.0 DynamiaModules - Http Functions UI @@ -18,12 +18,12 @@ tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.functions.core - 26.7.0 + 26.8.0 diff --git a/extensions/pom.xml b/extensions/pom.xml index cc810a14..97bfee4b 100644 --- a/extensions/pom.xml +++ b/extensions/pom.xml @@ -6,7 +6,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../pom.xml diff --git a/extensions/reports/packages/reports-sdk/package.json b/extensions/reports/packages/reports-sdk/package.json index 19c6de6f..0ab2a4b8 100644 --- a/extensions/reports/packages/reports-sdk/package.json +++ b/extensions/reports/packages/reports-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/reports-sdk", - "version": "26.7.0", + "version": "26.8.0", "website": "https://dynamia.tools", "description": "TypeScript/JavaScript client SDK for the Dynamia Reports extension REST API", "keywords": [ @@ -63,12 +63,12 @@ }, "devDependencies": { "@dynamia-tools/sdk": "workspace:*", - "@types/node": "^26.1.1", - "@vitest/coverage-v8": "^4.1.10", + "@types/node": "^26.4.1", + "@vitest/coverage-v8": "^4.1.11", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vitest": "^4.1.10" + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vitest": "^4.1.11" }, "engines": { "node": ">=24" diff --git a/extensions/reports/sources/api/pom.xml b/extensions/reports/sources/api/pom.xml index f43b382e..ae76962f 100644 --- a/extensions/reports/sources/api/pom.xml +++ b/extensions/reports/sources/api/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.reports.parent - 26.7.0 + 26.8.0 DynamiaModules - Reports API diff --git a/extensions/reports/sources/core/pom.xml b/extensions/reports/sources/core/pom.xml index 02303747..839b4463 100644 --- a/extensions/reports/sources/core/pom.xml +++ b/extensions/reports/sources/core/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.reports.parent - 26.7.0 + 26.8.0 DynamiaModules - Reports Core @@ -50,17 +50,17 @@ tools.dynamia.modules tools.dynamia.modules.reports.api - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.saas.jpa - 26.7.0 + 26.8.0 org.springframework @@ -69,12 +69,12 @@ tools.dynamia tools.dynamia.reports - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.templates - 26.7.0 + 26.8.0 compile diff --git a/extensions/reports/sources/pom.xml b/extensions/reports/sources/pom.xml index e2a2bce0..8548fd53 100644 --- a/extensions/reports/sources/pom.xml +++ b/extensions/reports/sources/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml diff --git a/extensions/reports/sources/ui/pom.xml b/extensions/reports/sources/ui/pom.xml index 61d91aa6..e0709fe0 100644 --- a/extensions/reports/sources/ui/pom.xml +++ b/extensions/reports/sources/ui/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.reports.parent - 26.7.0 + 26.8.0 DynamiaModules - Reports UI @@ -49,17 +49,17 @@ tools.dynamia.modules tools.dynamia.modules.reports.core - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.dashboard - 26.7.0 + 26.8.0 io.swagger.core.v3 diff --git a/extensions/saas/packages/saas-sdk/package.json b/extensions/saas/packages/saas-sdk/package.json index d50ff796..07e9ef27 100644 --- a/extensions/saas/packages/saas-sdk/package.json +++ b/extensions/saas/packages/saas-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/saas-sdk", - "version": "26.7.0", + "version": "26.8.0", "website": "https://dynamia.tools", "description": "TypeScript/JavaScript client SDK for the Dynamia SaaS extension REST API", "keywords": [ @@ -64,12 +64,12 @@ }, "devDependencies": { "@dynamia-tools/sdk": "workspace:*", - "@types/node": "^26.1.1", - "@vitest/coverage-v8": "^4.1.10", + "@types/node": "^26.4.1", + "@vitest/coverage-v8": "^4.1.11", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vitest": "^4.1.10" + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vitest": "^4.1.11" }, "engines": { "node": ">=24" diff --git a/extensions/saas/sources/api/pom.xml b/extensions/saas/sources/api/pom.xml index c2bb62ab..eb49f543 100644 --- a/extensions/saas/sources/api/pom.xml +++ b/extensions/saas/sources/api/pom.xml @@ -26,7 +26,7 @@ tools.dynamia.modules tools.dynamia.modules.saas.parent - 26.7.0 + 26.8.0 @@ -55,7 +55,7 @@ tools.dynamia tools.dynamia.actions - 26.7.0 + 26.8.0 org.springframework.boot diff --git a/extensions/saas/sources/core/pom.xml b/extensions/saas/sources/core/pom.xml index 0311debf..7f68e2fc 100644 --- a/extensions/saas/sources/core/pom.xml +++ b/extensions/saas/sources/core/pom.xml @@ -22,7 +22,7 @@ tools.dynamia.modules tools.dynamia.modules.saas.parent - 26.7.0 + 26.8.0 DynamiaModules - SaaS Core @@ -49,18 +49,18 @@ tools.dynamia.modules tools.dynamia.modules.saas.api - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.saas.jpa - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 @@ -86,7 +86,7 @@ tools.dynamia.modules tools.dynamia.modules.entityfiles - 26.7.0 + 26.8.0 org.hibernate.orm diff --git a/extensions/saas/sources/jpa/pom.xml b/extensions/saas/sources/jpa/pom.xml index c17cc908..76314bde 100644 --- a/extensions/saas/sources/jpa/pom.xml +++ b/extensions/saas/sources/jpa/pom.xml @@ -24,7 +24,7 @@ tools.dynamia.modules.saas.parent tools.dynamia.modules - 26.7.0 + 26.8.0 DynamiaModules - SaaS JPA @@ -35,12 +35,12 @@ tools.dynamia.modules tools.dynamia.modules.saas.api - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 diff --git a/extensions/saas/sources/migration/pom.xml b/extensions/saas/sources/migration/pom.xml index 391983e0..855a197b 100644 --- a/extensions/saas/sources/migration/pom.xml +++ b/extensions/saas/sources/migration/pom.xml @@ -24,7 +24,7 @@ tools.dynamia.modules tools.dynamia.modules.saas.parent - 26.7.0 + 26.8.0 DynamiaModules - SaaS Migration @@ -57,42 +57,42 @@ tools.dynamia.modules tools.dynamia.modules.saas - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.saas.api - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.saas.jpa - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.entityfiles - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 diff --git a/extensions/saas/sources/pom.xml b/extensions/saas/sources/pom.xml index 3c98bf32..e627f227 100644 --- a/extensions/saas/sources/pom.xml +++ b/extensions/saas/sources/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml diff --git a/extensions/saas/sources/remote/pom.xml b/extensions/saas/sources/remote/pom.xml index a9d9f911..e575909d 100644 --- a/extensions/saas/sources/remote/pom.xml +++ b/extensions/saas/sources/remote/pom.xml @@ -25,7 +25,7 @@ tools.dynamia.modules.saas.parent tools.dynamia.modules - 26.7.0 + 26.8.0 @@ -38,7 +38,7 @@ tools.dynamia.modules tools.dynamia.modules.saas.jpa - 26.7.0 + 26.8.0 diff --git a/extensions/saas/sources/ui/pom.xml b/extensions/saas/sources/ui/pom.xml index 80361797..803d67b0 100644 --- a/extensions/saas/sources/ui/pom.xml +++ b/extensions/saas/sources/ui/pom.xml @@ -22,7 +22,7 @@ tools.dynamia.modules tools.dynamia.modules.saas.parent - 26.7.0 + 26.8.0 DynamiaModules - SaaS UI tools.dynamia.modules.saas.ui @@ -54,12 +54,12 @@ tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.saas - 26.7.0 + 26.8.0 @@ -70,7 +70,7 @@ tools.dynamia.modules tools.dynamia.modules.entityfiles.ui - 26.7.0 + 26.8.0 diff --git a/extensions/security/sources/core/pom.xml b/extensions/security/sources/core/pom.xml index 8fa39e60..0140937a 100644 --- a/extensions/security/sources/core/pom.xml +++ b/extensions/security/sources/core/pom.xml @@ -17,7 +17,7 @@ tools.dynamia.modules tools.dynamia.modules.security.parent - 26.7.0 + 26.8.0 4.0.0 @@ -32,34 +32,34 @@ tools.dynamia.modules tools.dynamia.modules.saas.api - 26.7.0 + 26.8.0 tools.dynamia.modules tools.dynamia.modules.entityfiles - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.web - 26.7.0 + 26.8.0 diff --git a/extensions/security/sources/pom.xml b/extensions/security/sources/pom.xml index 8e801707..59adc7bb 100644 --- a/extensions/security/sources/pom.xml +++ b/extensions/security/sources/pom.xml @@ -19,7 +19,7 @@ tools.dynamia.modules tools.dynamia.modules.parent - 26.7.0 + 26.8.0 ../../pom.xml diff --git a/extensions/security/sources/ui/pom.xml b/extensions/security/sources/ui/pom.xml index 57edd766..1f586730 100644 --- a/extensions/security/sources/ui/pom.xml +++ b/extensions/security/sources/ui/pom.xml @@ -17,7 +17,7 @@ tools.dynamia.modules tools.dynamia.modules.security.parent - 26.7.0 + 26.8.0 DynamiaModules - Security UI @@ -44,18 +44,18 @@ tools.dynamia.modules tools.dynamia.modules.security - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.app - 26.7.0 + 26.8.0 diff --git a/package.json b/package.json index 2f4d0712..42e01cd1 100644 --- a/package.json +++ b/package.json @@ -15,14 +15,14 @@ "publish:all": "pnpm -r publish --access public --no-git-checks" }, "devDependencies": { - "@types/node": "^26.1.1", - "@vitest/coverage-v8": "^4.1.10", - "eslint": "^10.7.0", - "prettier": "^3.9.5", + "@types/node": "^26.4.1", + "@vitest/coverage-v8": "^4.1.11", + "eslint": "^10.9.1", + "prettier": "^3.9.6", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vitest": "^4.1.10" + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vitest": "^4.1.11" }, "engines": { "node": ">=24", diff --git a/platform/app/pom.xml b/platform/app/pom.xml index 912017a7..38b54abf 100644 --- a/platform/app/pom.xml +++ b/platform/app/pom.xml @@ -23,7 +23,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../pom.xml @@ -74,58 +74,58 @@ tools.dynamia tools.dynamia.actions - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.crud - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.io - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.navigation - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.reports - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.templates - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.viewers - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.web - 26.7.0 + 26.8.0 @@ -205,7 +205,7 @@ tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 test diff --git a/platform/core/actions/pom.xml b/platform/core/actions/pom.xml index 0663435f..fbd0559c 100644 --- a/platform/core/actions/pom.xml +++ b/platform/core/actions/pom.xml @@ -23,7 +23,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -65,12 +65,12 @@ tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 diff --git a/platform/core/commons/pom.xml b/platform/core/commons/pom.xml index 9ef2a395..4c0399d4 100644 --- a/platform/core/commons/pom.xml +++ b/platform/core/commons/pom.xml @@ -25,7 +25,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml DynamiaTools - Commons diff --git a/platform/core/crud/pom.xml b/platform/core/crud/pom.xml index 73525e0e..32b31609 100644 --- a/platform/core/crud/pom.xml +++ b/platform/core/crud/pom.xml @@ -23,7 +23,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -62,23 +62,23 @@ tools.dynamia tools.dynamia.actions - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.viewers - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.navigation - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 test diff --git a/platform/core/domain-jpa/pom.xml b/platform/core/domain-jpa/pom.xml index e6a81504..1fb6a273 100644 --- a/platform/core/domain-jpa/pom.xml +++ b/platform/core/domain-jpa/pom.xml @@ -23,7 +23,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -65,7 +65,7 @@ tools.dynamia tools.dynamia.domain - 26.7.0 + 26.8.0 diff --git a/platform/core/domain/pom.xml b/platform/core/domain/pom.xml index f604a82e..eb28c007 100644 --- a/platform/core/domain/pom.xml +++ b/platform/core/domain/pom.xml @@ -26,7 +26,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml DynamiaTools - Domain diff --git a/platform/core/integration/pom.xml b/platform/core/integration/pom.xml index 7cd171a5..56571028 100644 --- a/platform/core/integration/pom.xml +++ b/platform/core/integration/pom.xml @@ -27,7 +27,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -67,7 +67,7 @@ tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 provided diff --git a/platform/core/io/pom.xml b/platform/core/io/pom.xml index 29d20cd7..54019eaf 100644 --- a/platform/core/io/pom.xml +++ b/platform/core/io/pom.xml @@ -28,7 +28,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml diff --git a/platform/core/navigation/pom.xml b/platform/core/navigation/pom.xml index 026e50ad..b8ea4b1c 100644 --- a/platform/core/navigation/pom.xml +++ b/platform/core/navigation/pom.xml @@ -23,7 +23,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -63,17 +63,17 @@ tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.actions - 26.7.0 + 26.8.0 diff --git a/platform/core/reports/pom.xml b/platform/core/reports/pom.xml index 6650bcf7..6f87c019 100644 --- a/platform/core/reports/pom.xml +++ b/platform/core/reports/pom.xml @@ -26,7 +26,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml diff --git a/platform/core/templates/pom.xml b/platform/core/templates/pom.xml index 5c8533fd..056b7bc8 100644 --- a/platform/core/templates/pom.xml +++ b/platform/core/templates/pom.xml @@ -23,7 +23,7 @@ tools.dynamia.parent tools.dynamia - 26.7.0 + 26.8.0 ../../../pom.xml @@ -64,12 +64,12 @@ tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 diff --git a/platform/core/viewers/pom.xml b/platform/core/viewers/pom.xml index 06bb2ea0..8882f613 100644 --- a/platform/core/viewers/pom.xml +++ b/platform/core/viewers/pom.xml @@ -25,7 +25,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -67,27 +67,27 @@ tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.io - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.actions - 26.7.0 + 26.8.0 org.yaml diff --git a/platform/core/web/pom.xml b/platform/core/web/pom.xml index 4f69a3fc..f723a9ec 100644 --- a/platform/core/web/pom.xml +++ b/platform/core/web/pom.xml @@ -29,7 +29,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -88,27 +88,27 @@ tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.navigation - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.viewers - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.crud - 26.7.0 + 26.8.0 org.springframework @@ -128,6 +128,12 @@ test + + org.springframework + spring-test + test + + io.swagger.core.v3 swagger-annotations-jakarta diff --git a/platform/core/web/src/main/java/tools/dynamia/web/MicroFrontendView.java b/platform/core/web/src/main/java/tools/dynamia/web/MicroFrontendView.java new file mode 100644 index 00000000..8aa3124d --- /dev/null +++ b/platform/core/web/src/main/java/tools/dynamia/web/MicroFrontendView.java @@ -0,0 +1,240 @@ +/* + * Copyright (C) 2023 Dynamia Soluciones IT S.A.S - NIT 900302344-1 + * Colombia / South America + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package tools.dynamia.web; + +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletResponseWrapper; +import org.springframework.core.annotation.AnnotationAwareOrderComparator; +import org.springframework.core.io.ClassPathResource; +import org.springframework.web.servlet.View; +import org.springframework.web.servlet.ViewResolver; +import tools.dynamia.integration.Containers; + +import java.io.PrintWriter; +import java.io.StringWriter; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * Resolves a {@code tools.dynamia.zk.ui.MicroFrontend}'s {@code app} entry HTML server-side, in + * process, when it uses one of two prefixes, instead of requiring the bundle to be copied into + * {@code src/main/resources/static/}: + *
    + *
  • {@value #VIEW_PREFIX} — the rest of the string is a view name resolved and rendered + * through the application's registered {@link ViewResolver} chain (e.g. + * {@link ClassPathViewResolver}, which resolves a classpath {@code views/*.html} resource, or + * any other resolver a module registers), exactly like any regular Spring MVC + * {@code ModelAndView}.
  • + *
  • {@value #CLASSPATH_PREFIX} — the rest of the string is read directly as a + * {@link ClassPathResource} via {@link ClassPathView}, bypassing the {@link ViewResolver} chain + * entirely for the common case of "just serve this HTML file from my module's jar".
  • + *
+ * Both resolve entirely within the current request (no dedicated HTTP endpoint is exposed for + * this), so the resolved view is subject to the exact same security context as the ZK page + * embedding it — there is no separate "render any registered view by name" surface to secure. + *

+ * The resulting HTML is parsed the same way the client parses a static {@code app} folder's + * {@code index.html}: a {@code ", Pattern.CASE_INSENSITIVE); + private static final Pattern ABSOLUTE_URL = Pattern.compile("^([a-zA-Z][\\w+.-]*:)?/.*"); + + private MicroFrontendView() { + } + + /** + * Whether {@code app} uses {@link #VIEW_PREFIX} or {@link #CLASSPATH_PREFIX} and should be + * resolved server-side through {@link #resolve(String, HttpServletRequest, HttpServletResponse)} + * instead of being sent to the client as-is. + * + * @param app the {@code MicroFrontend#app} value, possibly null + */ + public static boolean isServerResolved(String app) { + return app != null && (app.startsWith(VIEW_PREFIX) || app.startsWith(CLASSPATH_PREFIX)); + } + + /** + * Resolves and renders {@code app} into its bundle {@code src}, stylesheet {@code css} and + * (for {@code MicroFrontend.MODE_AUTO}) mount-target {@code bodyHtml}, ready to send to the + * client as an already-resolved config, skipping the client's own {@code fetch}-based discovery. + * + * @param app the prefixed {@code app} value, see {@link #isServerResolved(String)} + * @param request the current request, used to resolve/render the Spring view (locale, etc.) + * @param response the current response, only used as a template for the wrapper that captures + * the rendered output; nothing is written to the real response + * @return the resolved bundle {@code src}/{@code css}/{@code bodyHtml} + * @throws IllegalArgumentException if {@code app} doesn't use a recognized prefix + * @throws IllegalStateException if the view/resource can't be resolved or rendered, or the + * resolved HTML doesn't follow the expected shape (see class + * Javadoc) + */ + public static Result resolve(String app, HttpServletRequest request, HttpServletResponse response) { + String html = renderHtml(app, request, response); + return parse(html); + } + + private static String renderHtml(String app, HttpServletRequest request, HttpServletResponse response) { + View view; + if (app.startsWith(VIEW_PREFIX)) { + view = resolveRegisteredView(app.substring(VIEW_PREFIX.length()), request); + } else if (app.startsWith(CLASSPATH_PREFIX)) { + String path = app.substring(CLASSPATH_PREFIX.length()); + ClassPathResource resource = new ClassPathResource(path); + if (!resource.exists()) { + throw new IllegalStateException("Microfrontend classpath resource not found: " + path); + } + view = new ClassPathView(resource, "text/html;charset=UTF-8"); + } else { + throw new IllegalArgumentException("Unsupported microfrontend app prefix (expected \"" + VIEW_PREFIX + + "\" or \"" + CLASSPATH_PREFIX + "\"): " + app); + } + return render(view, request, response); + } + + /** + * Resolves {@code viewName} through every registered {@link ViewResolver} bean, in order, + * mirroring how Spring's {@code DispatcherServlet} itself chains them: the first resolver to + * return a non-null {@link View} wins. + */ + private static View resolveRegisteredView(String viewName, HttpServletRequest request) { + List resolvers = new ArrayList<>(Containers.get().findObjects(ViewResolver.class)); + AnnotationAwareOrderComparator.sort(resolvers); + Locale locale = request != null ? request.getLocale() : Locale.getDefault(); + for (ViewResolver resolver : resolvers) { + try { + View view = resolver.resolveViewName(viewName, locale); + if (view != null) { + return view; + } + } catch (Exception e) { + throw new IllegalStateException("Error resolving microfrontend view: " + viewName, e); + } + } + throw new IllegalStateException("No ViewResolver could resolve microfrontend view: " + viewName); + } + + /** + * Renders {@code view} into a string instead of the real response, using a + * {@link BufferedHttpServletResponse} wrapper so nothing reaches the client directly. + */ + private static String render(View view, HttpServletRequest request, HttpServletResponse response) { + BufferedHttpServletResponse buffer = new BufferedHttpServletResponse(response); + try { + view.render(Map.of(), request, buffer); + } catch (Exception e) { + throw new IllegalStateException("Error rendering microfrontend view", e); + } + return buffer.getContent(); + } + + /** + * Extracts the bundle {@code src}, stylesheet {@code css} and mount-target {@code bodyHtml} from + * rendered HTML, the server-side equivalent of the client's {@code dynamiaResolveApp} discovery. + */ + private static Result parse(String html) { + Matcher scriptMatcher = SCRIPT_MODULE.matcher(html); + String src = null; + if (scriptMatcher.find()) { + Matcher srcMatcher = SRC_ATTR.matcher(scriptMatcher.group()); + if (srcMatcher.find()) { + src = srcMatcher.group(1); + } + } + if (src == null) { + throw new IllegalStateException("No " + + ""); + + ViewResolver resolver = (viewName, locale) -> "someapp/index".equals(viewName) ? view : null; + + SimpleObjectContainer container = new SimpleObjectContainer(); + container.addObject("microfrontendViewResolver", resolver); + Containers.get().installObjectContainer(container); + + MicroFrontendView.Result result = MicroFrontendView.resolve("view:someapp/index", request, response); + + assertEquals("/static/someapp/index.js", result.src()); + assertEquals("/static/someapp/style.css", result.css()); + } + + @Test + public void shouldFailWhenNoViewResolverMatches() { + SimpleObjectContainer container = new SimpleObjectContainer(); + container.addObject("noopViewResolver", (ViewResolver) (viewName, locale) -> null); + Containers.get().installObjectContainer(container); + + try { + MicroFrontendView.resolve("view:unknown/index", request, response); + fail("Expected IllegalStateException"); + } catch (IllegalStateException e) { + assertTrue(e.getMessage().contains("No ViewResolver")); + } + } +} diff --git a/platform/core/web/src/test/resources/microfrontends/testapp/index.html b/platform/core/web/src/test/resources/microfrontends/testapp/index.html new file mode 100644 index 00000000..404c59de --- /dev/null +++ b/platform/core/web/src/test/resources/microfrontends/testapp/index.html @@ -0,0 +1,10 @@ + + + + + + +

mount point
+ + + diff --git a/platform/core/web/src/test/resources/microfrontends/testapp/no-script.html b/platform/core/web/src/test/resources/microfrontends/testapp/no-script.html new file mode 100644 index 00000000..5b71978b --- /dev/null +++ b/platform/core/web/src/test/resources/microfrontends/testapp/no-script.html @@ -0,0 +1,6 @@ + + + +
mount point
+ + diff --git a/platform/core/web/src/test/resources/microfrontends/testapp/relative-src.html b/platform/core/web/src/test/resources/microfrontends/testapp/relative-src.html new file mode 100644 index 00000000..36d5d2fc --- /dev/null +++ b/platform/core/web/src/test/resources/microfrontends/testapp/relative-src.html @@ -0,0 +1,7 @@ + + + +
mount point
+ + + diff --git a/platform/packages/cli/package-lock.json b/platform/packages/cli/package-lock.json index 218066ad..823a65ad 100644 --- a/platform/packages/cli/package-lock.json +++ b/platform/packages/cli/package-lock.json @@ -1,12 +1,12 @@ { "name": "@dynamia-tools/cli", - "version": "26.7.0", + "version": "26.8.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@dynamia-tools/cli", - "version": "26.7.0", + "version": "26.8.0", "license": "Apache-2.0", "dependencies": { "@inquirer/prompts": "^7.0.0", diff --git a/platform/packages/cli/package.json b/platform/packages/cli/package.json index 30970987..5f3ca15b 100644 --- a/platform/packages/cli/package.json +++ b/platform/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/cli", - "version": "26.7.0", + "version": "26.8.0", "description": "Dynamia Tools CLI — Scaffold new Dynamia Platform projects", "keywords": [ "dynamia", @@ -40,13 +40,13 @@ "prepublishOnly": "pnpm run build" }, "dependencies": { - "@inquirer/prompts": "^8.5.2", + "@inquirer/prompts": "^8.7.1", "chalk": "^5.6.2", "execa": "^9.6.1", "ora": "^9.4.1" }, "devDependencies": { - "@types/node": "^26.1.1", + "@types/node": "^26.4.1", "typescript": "^6.0.3" }, "publishConfig": { diff --git a/platform/packages/microfrontend-bridge/package.json b/platform/packages/microfrontend-bridge/package.json index 40a6e13e..7a2465f9 100644 --- a/platform/packages/microfrontend-bridge/package.json +++ b/platform/packages/microfrontend-bridge/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/microfrontend-bridge", - "version": "26.7.0", + "version": "26.8.0", "website": "https://dynamia.tools", "description": "Typed helpers for JS/TS bundles (Vue, React, Svelte, plain JS) embedded via tools.dynamia.zk.ui.MicroFrontend", "keywords": [ @@ -59,12 +59,12 @@ "registry": "https://registry.npmjs.org/" }, "devDependencies": { - "@types/node": "^26.1.1", - "@vitest/coverage-v8": "^4.1.10", + "@types/node": "^26.4.1", + "@vitest/coverage-v8": "^4.1.11", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vitest": "^4.1.10" + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vitest": "^4.1.11" }, "engines": { "node": ">=24" diff --git a/platform/packages/sdk/package-lock.json b/platform/packages/sdk/package-lock.json index 9c5a75cd..4eecc918 100644 --- a/platform/packages/sdk/package-lock.json +++ b/platform/packages/sdk/package-lock.json @@ -1,12 +1,12 @@ { "name": "@dynamia-tools/sdk", - "version": "26.7.0", + "version": "26.8.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@dynamia-tools/sdk", - "version": "26.7.0", + "version": "26.8.0", "license": "Apache-2.0", "devDependencies": { "@types/node": "^22.0.0", diff --git a/platform/packages/sdk/package.json b/platform/packages/sdk/package.json index b9038a18..1b4364fa 100644 --- a/platform/packages/sdk/package.json +++ b/platform/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/sdk", - "version": "26.7.0", + "version": "26.8.0", "website": "https://dynamia.tools", "description": "Official JavaScript / TypeScript client SDK for Dynamia Platform REST APIs", "keywords": [ @@ -59,12 +59,12 @@ "registry": "https://registry.npmjs.org/" }, "devDependencies": { - "@types/node": "^26.1.1", - "@vitest/coverage-v8": "^4.1.10", + "@types/node": "^26.4.1", + "@vitest/coverage-v8": "^4.1.11", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vitest": "^4.1.10" + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vitest": "^4.1.11" }, "engines": { "node": ">=24" diff --git a/platform/packages/ui-core/package.json b/platform/packages/ui-core/package.json index b548ee7f..8fc8309c 100644 --- a/platform/packages/ui-core/package.json +++ b/platform/packages/ui-core/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/ui-core", - "version": "26.7.0", + "version": "26.8.0", "description": "Framework-agnostic view/viewer/renderer core for Dynamia Platform", "keywords": [ "dynamia", @@ -63,11 +63,11 @@ }, "devDependencies": { "@dynamia-tools/sdk": "workspace:*", - "@types/node": "^26.1.1", + "@types/node": "^26.4.1", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vitest": "^4.1.10" + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vitest": "^4.1.11" }, "publishConfig": { "access": "public", diff --git a/platform/packages/vue/package.json b/platform/packages/vue/package.json index 9d79dbb9..bc07e9d5 100644 --- a/platform/packages/vue/package.json +++ b/platform/packages/vue/package.json @@ -1,6 +1,6 @@ { "name": "@dynamia-tools/vue", - "version": "26.7.0", + "version": "26.8.0", "description": "Vue 3 adapter for Dynamia Platform UI", "keywords": [ "dynamia", @@ -56,12 +56,12 @@ "devDependencies": { "@dynamia-tools/sdk": "workspace:*", "@dynamia-tools/ui-core": "workspace:*", - "@types/node": "^26.1.1", + "@types/node": "^26.4.1", "@vitejs/plugin-vue": "^6.0.8", "typescript": "^6.0.3", - "vite": "^8.1.4", - "vite-plugin-dts": "^5.0.3", - "vue": "^3.5.39", + "vite": "^8.2.2", + "vite-plugin-dts": "^5.1.0", + "vue": "^3.5.42", "vue-tsc": "^2.2.12" }, "publishConfig": { diff --git a/platform/starters/zk-starter/pom.xml b/platform/starters/zk-starter/pom.xml index 7735e942..560ae7b1 100644 --- a/platform/starters/zk-starter/pom.xml +++ b/platform/starters/zk-starter/pom.xml @@ -4,7 +4,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -28,22 +28,22 @@ tools.dynamia tools.dynamia.app - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain.jpa - 26.7.0 + 26.8.0 org.hibernate.validator diff --git a/platform/ui/ui-shared/pom.xml b/platform/ui/ui-shared/pom.xml index 4783d0bb..c651eda4 100644 --- a/platform/ui/ui-shared/pom.xml +++ b/platform/ui/ui-shared/pom.xml @@ -23,7 +23,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../../../pom.xml @@ -64,17 +64,17 @@ tools.dynamia tools.dynamia.integration - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.commons - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.io - 26.7.0 + 26.8.0 diff --git a/platform/ui/zk/pom.xml b/platform/ui/zk/pom.xml index 1f471c07..9ac29906 100644 --- a/platform/ui/zk/pom.xml +++ b/platform/ui/zk/pom.xml @@ -21,7 +21,7 @@ tools.dynamia.parent tools.dynamia - 26.7.0 + 26.8.0 ../../../pom.xml 4.0.0 @@ -99,31 +99,31 @@ tools.dynamia tools.dynamia.web - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.navigation - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.ui - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.domain - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.viewers - 26.7.0 + 26.8.0 org.yaml @@ -134,19 +134,19 @@ tools.dynamia tools.dynamia.crud - 26.7.0 + 26.8.0 tools.dynamia tools.dynamia.reports - 26.7.0 + 26.8.0 compile tools.dynamia tools.dynamia.templates - 26.7.0 + 26.8.0 compile diff --git a/platform/ui/zk/src/main/java/tools/dynamia/zk/ui/MicroFrontend.java b/platform/ui/zk/src/main/java/tools/dynamia/zk/ui/MicroFrontend.java index eb568c3a..5bb1484c 100644 --- a/platform/ui/zk/src/main/java/tools/dynamia/zk/ui/MicroFrontend.java +++ b/platform/ui/zk/src/main/java/tools/dynamia/zk/ui/MicroFrontend.java @@ -16,8 +16,13 @@ */ package tools.dynamia.zk.ui; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.IdSpace; import org.zkoss.zk.ui.Page; import org.zkoss.zk.ui.WrongValueException; +import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.Events; import org.zkoss.zk.ui.ext.AfterCompose; import org.zkoss.zk.ui.ext.DynamicPropertied; @@ -25,7 +30,9 @@ import org.zkoss.zk.ui.util.Clients; import org.zkoss.zul.Div; import tools.dynamia.commons.StringPojoParser; +import tools.dynamia.commons.logger.LoggingService; import tools.dynamia.integration.Containers; +import tools.dynamia.web.MicroFrontendView; import java.util.LinkedHashMap; import java.util.Map; @@ -104,6 +111,23 @@ * has only been verified against Vite output — check the generated {@code index.html} manually if * you use another bundler. *

+ * Prefixing {@link #setApp} with {@code view:} or {@code classpath:} resolves that entry HTML + * server-side, in process, instead of the client fetching a static file — see + * {@link tools.dynamia.web.MicroFrontendView} for the resolution details and constraints (in + * particular: script/stylesheet URLs found in the resolved HTML must be absolute or root-relative, + * since no real folder backs a {@code view:}/{@code classpath:} app for relative ones to resolve + * against). No dedicated HTTP endpoint is exposed for this — resolution happens inside the current + * request, under whatever security context already guards the ZK page embedding it. + *

    + *
  • {@code app="view:someapp/index"} resolves {@code someapp/index} as a Spring MVC view name + * through the application's registered {@code ViewResolver} chain (e.g. + * {@code tools.dynamia.web.ClassPathViewResolver}, which resolves a classpath + * {@code views/someapp/index.html} — so the bundle can ship inside any module's jar, no + * {@code src/main/resources/static/} copy required).
  • + *
  • {@code app="classpath:microfrontends/someapp/index.html"} reads that classpath resource + * directly, bypassing the {@code ViewResolver} chain.
  • + *
+ *

* All bean properties ({@link #setSrc}, {@link #setMode}, {@link #setProps}, dynamic props, etc.) * are plain getter/setter pairs, so they work with ZK MVVM data binding out of the box, e.g. * {@code src="@bind(vm.bundleUrl)"} or {@code userId="@bind(vm.userId)"}. For the reverse @@ -128,13 +152,17 @@ * * * + * + * + * + * * * } * * @author Mario A. Serrano Leones */ -public class MicroFrontend extends Div implements DynamicPropertied, AfterCompose { +public class MicroFrontend extends Div implements DynamicPropertied, AfterCompose, IdSpace { /** Mounts the bundle's custom element (default mode). */ public static final String MODE_CUSTOM_ELEMENT = "custom-element"; @@ -156,6 +184,8 @@ public class MicroFrontend extends Div implements DynamicPropertied, AfterCompos /** Internal, server-only event used to coalesce bursts of {@link #mount()} calls; never sent by the client. */ private static final String EVT_MOUNT = "onMicrofrontendMount"; + private static final LoggingService logger = LoggingService.get(MicroFrontend.class); + static { addClientEvent(MicroFrontend.class, ON_EVENT, ComponentCtrl.CE_IMPORTANT); addClientEvent(MicroFrontend.class, ON_READY, ComponentCtrl.CE_IMPORTANT); @@ -237,9 +267,14 @@ public String getApp() { * Sets the root folder of a bundler production build (e.g. Vite's {@code dist/}) to * auto-discover the bundle and stylesheet(s) from, instead of setting {@link #setSrc} / * {@link #setCss} manually. See the class Javadoc for how discovery works and its - * limitations. When set, it takes precedence over {@link #src} / {@link #css}. + * limitations. When set, it takes precedence over {@link #src} / {@link #css}. Prefixed with + * {@code view:} or {@code classpath:}, the entry HTML is resolved server-side instead of fetched + * as a static file — see the class Javadoc and {@link tools.dynamia.web.MicroFrontendView}. * - * @param app root URL of the build output, e.g. {@code /static/next/subscription} + * @param app root URL of the build output (e.g. {@code /static/next/subscription}), a + * {@code view:}-prefixed Spring view name (e.g. {@code view:someapp/index}), or a + * {@code classpath:}-prefixed resource path (e.g. + * {@code classpath:microfrontends/someapp/index.html}) */ public void setApp(String app) { this.app = app; @@ -402,7 +437,20 @@ private void mount() { } private void doMount() { - Clients.evalJavaScript("dynamiaMountMicrofrontend('" + getUuid() + "', " + buildConfig() + ");"); + try { + Clients.evalJavaScript("dynamiaMountMicrofrontend('" + getUuid() + "', " + buildConfig(true) + ");"); + } catch (RuntimeException e) { + logger.error("Error resolving microfrontend app '" + app + "': " + e.getMessage(), e); + Events.postEvent(new Event(ON_ERROR, this, Map.of("message", String.valueOf(e.getMessage())))); + } + } + + private HttpServletRequest nativeRequest() { + return (HttpServletRequest) Executions.getCurrent().getNativeRequest(); + } + + private HttpServletResponse nativeResponse() { + return (HttpServletResponse) Executions.getCurrent().getNativeResponse(); } /** @@ -434,11 +482,38 @@ private boolean isMountable() { return tag != null; } - private String buildConfig() { + /** + * Builds the JSON config sent to {@code dynamiaMountMicrofrontend}/{@code dynamiaUnmountMicrofrontend}. + * When {@code resolveServerApp} is true and {@link #app} uses the {@code view:}/{@code classpath:} + * prefix (see class Javadoc), it's resolved server-side via {@link MicroFrontendView} into concrete + * {@code src}/{@code css}/{@code bodyHtml} values, so the client skips its own fetch-based + * discovery entirely (it uses {@code src} as-is whenever present). {@link #app} itself is still + * sent unchanged either way — the client still needs it as the {@code MODE_AUTO} dedup key. + * Unmounting never needs any of this — the unmount script only reads + * {@code mode}/{@code unmountFn}/{@code shadow} — so {@link #onPageDetached} passes {@code false} + * to avoid a pointless (and potentially now-stale) re-resolution. + * + * @param resolveServerApp whether to resolve a {@code view:}/{@code classpath:} {@link #app} now + * @throws IllegalArgumentException if {@link #app}'s prefix is unrecognized, see {@link MicroFrontendView} + * @throws IllegalStateException if the view/resource can't be resolved or rendered, see {@link MicroFrontendView} + */ + private String buildConfig(boolean resolveServerApp) { + String effectiveSrc = src; + String effectiveCss = css; + String bodyHtml = null; + + if (resolveServerApp && MicroFrontendView.isServerResolved(app)) { + MicroFrontendView.Result resolved = MicroFrontendView.resolve(app, nativeRequest(), nativeResponse()); + effectiveSrc = resolved.src(); + effectiveCss = resolved.css(); + bodyHtml = resolved.bodyHtml(); + } + Map config = new LinkedHashMap<>(); - config.put("src", src); - config.put("css", css); + config.put("src", effectiveSrc); + config.put("css", effectiveCss); config.put("app", app); + config.put("bodyHtml", bodyHtml); config.put("type", type); config.put("mode", effectiveMode()); config.put("tag", tag); @@ -485,7 +560,7 @@ private Map resolveProps() { @Override public void onPageDetached(Page page) { if (MODE_MOUNT_FN.equals(mode) && unmountFn != null) { - Clients.evalJavaScript("dynamiaUnmountMicrofrontend('" + getUuid() + "', " + buildConfig() + ");"); + Clients.evalJavaScript("dynamiaUnmountMicrofrontend('" + getUuid() + "', " + buildConfig(false) + ");"); } super.onPageDetached(page); } diff --git a/platform/ui/zk/src/main/resources/static/dynamia-tools/js/zk/dynamia-tools.js b/platform/ui/zk/src/main/resources/static/dynamia-tools/js/zk/dynamia-tools.js index dbe496b8..a5f2f892 100644 --- a/platform/ui/zk/src/main/resources/static/dynamia-tools/js/zk/dynamia-tools.js +++ b/platform/ui/zk/src/main/resources/static/dynamia-tools/js/zk/dynamia-tools.js @@ -237,7 +237,11 @@ function dynamiaFireHostEvent(containerId, name, data) { * {message} data) if loading or mounting fails for any reason, both bindable server-side with * onMicrofrontendReady/onMicrofrontendError="@command(...)". * @param {string} containerId - Id of the component's container element (its ZK uuid). - * @param {object} config - {src, css, app, type, mode, tag, mountFn, unmountFn, updateFn, shadow, props}. + * @param {object} config - {src, css, app, bodyHtml, type, mode, tag, mountFn, unmountFn, updateFn, shadow, props}. + * When {@code src} is already set, it (plus {@code css}/{@code bodyHtml}) is used as-is instead of + * discovering it from {@code app} — the server already resolved a "view:"/"classpath:" {@code app} + * itself (see {@code tools.dynamia.web.MicroFrontendView}); {@code app} is still sent for the + * "auto" mode dedup key. */ function dynamiaMountMicrofrontend(containerId, config) { if (config.mode === 'auto') { @@ -264,7 +268,11 @@ function dynamiaMountMicrofrontend(containerId, config) { DynamiaMicrofrontends.autoMounted[config.app] = containerId; } DynamiaMicrofrontends.instances = DynamiaMicrofrontends.instances || {}; - var resolved = config.app ? dynamiaResolveApp(config.app) : Promise.resolve({src: config.src, css: config.css, bodyHtml: ''}); + // config.src is already populated when the server resolved a "view:"/"classpath:" app itself + // (see tools.dynamia.web.MicroFrontendView) — skip client-side discovery entirely in that case. + var resolved = config.src + ? Promise.resolve({src: config.src, css: config.css, bodyHtml: config.bodyHtml || ''}) + : dynamiaResolveApp(config.app); resolved.then(function (bundle) { var container = document.getElementById(containerId); if (!container) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f1d75dfa..b092ad19 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,29 +9,29 @@ importers: .: devDependencies: '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 '@vitest/coverage-v8': - specifier: ^4.1.10 - version: 4.1.10(vitest@4.1.10) + specifier: ^4.1.11 + version: 4.1.11(vitest@4.1.11) eslint: - specifier: ^10.7.0 - version: 10.7.0 + specifier: ^10.9.1 + version: 10.9.1 prettier: - specifier: ^3.9.5 - version: 3.9.5 + specifier: ^3.9.6 + version: 3.9.6 typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vitest: - specifier: ^4.1.10 - version: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^4.1.11 + version: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) extensions/entity-files/packages/files-sdk: devDependencies: @@ -39,23 +39,23 @@ importers: specifier: workspace:* version: link:../../../../platform/packages/sdk '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 '@vitest/coverage-v8': - specifier: ^4.1.10 - version: 4.1.10(vitest@4.1.10) + specifier: ^4.1.11 + version: 4.1.11(vitest@4.1.11) typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vitest: - specifier: ^4.1.10 - version: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^4.1.11 + version: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) extensions/reports/packages/reports-sdk: devDependencies: @@ -63,23 +63,23 @@ importers: specifier: workspace:* version: link:../../../../platform/packages/sdk '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 '@vitest/coverage-v8': - specifier: ^4.1.10 - version: 4.1.10(vitest@4.1.10) + specifier: ^4.1.11 + version: 4.1.11(vitest@4.1.11) typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vitest: - specifier: ^4.1.10 - version: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^4.1.11 + version: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) extensions/saas/packages/saas-sdk: devDependencies: @@ -87,29 +87,29 @@ importers: specifier: workspace:* version: link:../../../../platform/packages/sdk '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 '@vitest/coverage-v8': - specifier: ^4.1.10 - version: 4.1.10(vitest@4.1.10) + specifier: ^4.1.11 + version: 4.1.11(vitest@4.1.11) typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vitest: - specifier: ^4.1.10 - version: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^4.1.11 + version: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) platform/packages/cli: dependencies: '@inquirer/prompts': - specifier: ^8.5.2 - version: 8.5.2(@types/node@26.1.1) + specifier: ^8.7.1 + version: 8.7.1(@types/node@26.4.1) chalk: specifier: ^5.6.2 version: 5.6.2 @@ -121,8 +121,8 @@ importers: version: 9.4.1 devDependencies: '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 typescript: specifier: ^6.0.3 version: 6.0.3 @@ -130,44 +130,44 @@ importers: platform/packages/microfrontend-bridge: devDependencies: '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 '@vitest/coverage-v8': - specifier: ^4.1.10 - version: 4.1.10(vitest@4.1.10) + specifier: ^4.1.11 + version: 4.1.11(vitest@4.1.11) typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vitest: - specifier: ^4.1.10 - version: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^4.1.11 + version: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) platform/packages/sdk: devDependencies: '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 '@vitest/coverage-v8': - specifier: ^4.1.10 - version: 4.1.10(vitest@4.1.10) + specifier: ^4.1.11 + version: 4.1.11(vitest@4.1.11) typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vitest: - specifier: ^4.1.10 - version: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^4.1.11 + version: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) platform/packages/ui-core: dependencies: @@ -176,20 +176,20 @@ importers: version: link:../sdk devDependencies: '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vitest: - specifier: ^4.1.10 - version: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^4.1.11 + version: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) platform/packages/vue: dependencies: @@ -201,23 +201,23 @@ importers: version: link:../ui-core devDependencies: '@types/node': - specifier: ^26.1.1 - version: 26.1.1 + specifier: ^26.4.1 + version: 26.4.1 '@vitejs/plugin-vue': specifier: ^6.0.8 - version: 6.0.8(vite@8.1.4(@types/node@26.1.1))(vue@3.5.39(typescript@6.0.3)) + version: 6.0.8(vite@8.2.2(@types/node@26.4.1))(vue@3.5.42(typescript@6.0.3)) typescript: specifier: ^6.0.3 version: 6.0.3 vite: - specifier: ^8.1.4 - version: 8.1.4(@types/node@26.1.1) + specifier: ^8.2.2 + version: 8.2.2(@types/node@26.4.1) vite-plugin-dts: - specifier: ^5.0.3 - version: 5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + specifier: ^5.1.0 + version: 5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) vue: - specifier: ^3.5.39 - version: 3.5.39(typescript@6.0.3) + specifier: ^3.5.42 + version: 3.5.42(typescript@6.0.3) vue-tsc: specifier: ^2.2.12 version: 2.2.12(typescript@6.0.3) @@ -232,30 +232,21 @@ packages: resolution: {integrity: sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==} engines: {node: '>=6.9.0'} - '@babel/parser@7.29.7': - resolution: {integrity: sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==} + '@babel/parser@7.29.8': + resolution: {integrity: sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.29.7': - resolution: {integrity: sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==} + '@babel/types@7.29.8': + resolution: {integrity: sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@1.0.2': resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==} engines: {node: '>=18'} - '@emnapi/core@1.11.1': - resolution: {integrity: sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ==} - - '@emnapi/runtime@1.11.1': - resolution: {integrity: sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==} - - '@emnapi/wasi-threads@1.2.2': - resolution: {integrity: sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==} - - '@eslint-community/eslint-utils@4.9.1': - resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} + '@eslint-community/eslint-utils@4.10.1': + resolution: {integrity: sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 @@ -268,8 +259,8 @@ packages: resolution: {integrity: sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.6.0': - resolution: {integrity: sha512-ii6Bw9jJ2zi2cWA2Z+9/QZ/+3DX6kwaV5Q986D/CdP3Lap3w/pgQZ373FV7byY/i7L4IRH/G43I5dz1ClsCbpA==} + '@eslint/config-helpers@0.7.0': + resolution: {integrity: sha512-DObd/KKUsU+FaFv4PLxSRenpXfQWmPXXP3pPZ6/K1PCrMu2vQpMDMuQe/BqYeoLcz8ro0bVDF1RxOJgfVEdhUw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@eslint/core@1.2.1': @@ -304,12 +295,12 @@ packages: resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} - '@inquirer/ansi@2.0.7': - resolution: {integrity: sha512-3eTuUO1vH2cZm2ZKHeQxnOqlTi9EfZDGgIe3BL3I4u+rJHocr9Fz86M4fjYABPvFnQG/gGK551HqDiIcETwU6Q==} + '@inquirer/ansi@2.0.8': + resolution: {integrity: sha512-WpQM+Ti6Z40EFwwt+uL2p4UabT+W179zHp6HhLVOzfbwnVn05IPO/eXIZXGNqcT1jbQ15SujNLzQ39k4QPPxBQ==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} - '@inquirer/checkbox@5.2.1': - resolution: {integrity: sha512-b6xmA/VlTe0ZgDQHDui+Nav470u7u49nRd8/iuhOcQPO9Ch7lGuogydhi2VOmNlZ+zXcM8IcPuNSwQcdJaF/kw==} + '@inquirer/checkbox@5.2.4': + resolution: {integrity: sha512-oKT5RNeO9oKYizSyOxKb66IrKUsYVMQD2tnjllYW4wmSOe9WawfL3OE2p82JuvAyo+/nDIEem5P4Bm/ZIVYVew==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -317,8 +308,8 @@ packages: '@types/node': optional: true - '@inquirer/confirm@6.1.1': - resolution: {integrity: sha512-eb8DBZcz/2qHWQda4rk2JiQk5h9QV/cVHi1yjt0f69WFZMRFn0sJTye3EAP8icut8UDMjQPsaH5KbcOogefrFQ==} + '@inquirer/confirm@6.3.1': + resolution: {integrity: sha512-HvnOHal39DTenOVoRpIy8Z+n4YYfNa3Qhi/P8zFqn9/d1crpmQG0DPx34rwOeOFvotgKr9Vov/14OmKR/Iwfjw==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -326,8 +317,8 @@ packages: '@types/node': optional: true - '@inquirer/core@11.2.1': - resolution: {integrity: sha512-Qd6GJT1yVyrZZCfN8W2qKF5ApmqryXRhRKCuip8h01x2w/esJQ2XIYc6f9abMIHgKQdBfFTSOdbHRLAhuM09UA==} + '@inquirer/core@12.0.2': + resolution: {integrity: sha512-9pBhkxE14uUlnHhs8lOt7qVPtS4caRY6CjADl8COejl9Mf7w8i6Uoe3DrljCqYtmYM3Iv2Q6EmPxx/oTYbvTAQ==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -335,8 +326,8 @@ packages: '@types/node': optional: true - '@inquirer/editor@5.2.2': - resolution: {integrity: sha512-ZRVd/oD+sYsUd5zVm0NflqEzlqfYCyHNsqkHl2oWXEUHs12tCbcSFi+wVFEvD8+LGRaMUsVrE7qeo6lSG/S1Vg==} + '@inquirer/editor@5.3.2': + resolution: {integrity: sha512-7ruKO5d/wxhGHxdCQ3eyP/aBNrPTZ+Ju7ERtnAwuIsu0RSLs6kotlTRkOxHatbD6sDaEEdwsD82pzFiT9ESIyQ==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -344,8 +335,8 @@ packages: '@types/node': optional: true - '@inquirer/expand@5.1.1': - resolution: {integrity: sha512-YmQpenjbFSHAK3sOd44puHh3V1KXXr+JiNpUztoSQ4drLh2rTVzTap/YtlAVu/5xavifIlBfNEzJ/neZJ1a/1g==} + '@inquirer/expand@5.1.4': + resolution: {integrity: sha512-12o4aYnjWouoq0fyVhYIL+hwXAaga+kntA/wrijFmVvn2heinkdvkbEXRt1Ob/9IOJ285US5tntjfI/Ukt2YkA==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -353,8 +344,8 @@ packages: '@types/node': optional: true - '@inquirer/external-editor@3.0.3': - resolution: {integrity: sha512-6thf5I8q7lZwzGLAxPaaGEREEkZ3nyePPDQ1oyobblxmEE8mqTLguScP7pDjUTAibiyb4hfXl+qjUEJ+di/aNA==} + '@inquirer/external-editor@3.0.5': + resolution: {integrity: sha512-f3QQJRIX5ZEneBHNUIuPjmbdzHnmRFJA8r2dkcb8q+OM5Uv5KtnuAttQumnrjcBVBM3mcTX1CkmtAkU58VRZxg==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -362,12 +353,12 @@ packages: '@types/node': optional: true - '@inquirer/figures@2.0.7': - resolution: {integrity: sha512-aJ8TBPOGB6f/2qziPfElISTCEd5XOYTFckA2SGjhNmiKzfK/u4ot3v0DUzGVdUnKjN10EqnnEPck36BkyfLnJw==} + '@inquirer/figures@2.0.9': + resolution: {integrity: sha512-EAWgUTGQ/Umgga51dE3B2PUHbufuXarDfg86uVgoSgNHNNQnyFKcOrQLWVqYMghuSyHh8+2HUH0Js9cTC1WAdg==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} - '@inquirer/input@5.1.2': - resolution: {integrity: sha512-9K/DDBSQpOyZSkt6sOVP9Vo0TR7atX2kuILsUu0x3wVcVbe97lJwIJKMLdMw25tDYuXl/qp6erT0Xs1rfmcfZg==} + '@inquirer/input@5.1.5': + resolution: {integrity: sha512-2MkYYFD1Owt1eRBwHhsLSutysRodWasA4DVpl42KJKGmzwBTXRYAIXujisrt0UW0UohUlMjNjLfMDbw4emRbfw==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -375,8 +366,8 @@ packages: '@types/node': optional: true - '@inquirer/number@4.1.1': - resolution: {integrity: sha512-XF4IXAbPnGPgw0wsbC/i2tPcyfdZgDpUlhsqU0SfT4IRIGWha6Xm9VRgN5yYxJq+jnyXlfXI/nQ3ulfk0iEICA==} + '@inquirer/number@4.2.2': + resolution: {integrity: sha512-tjW1gMIQsFb/9Ie11i8SpuPARBdyCVfC5XOeVugWovrdm8CpjzN+A1CBX5QwCCN2mtNmpgDDCnuLCCT94cQ5zA==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -384,8 +375,8 @@ packages: '@types/node': optional: true - '@inquirer/password@5.1.1': - resolution: {integrity: sha512-3XBfF7DAsp5qeDsvN5Rd1HmbNokVvEQoUM0QLrRcybC9nX96w3Pbmu7qUsb3IT3J3jBvs2+mTXaKHOUsgHMLzg==} + '@inquirer/password@5.2.1': + resolution: {integrity: sha512-InA6nJxMCXPavPBiTKYHIsYiWz/mkIsk1rkI6pKp5w18gVawqrZOj7eSzSmPJa3j0pVxXm6RlrFP1BE9YeOixA==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -393,8 +384,8 @@ packages: '@types/node': optional: true - '@inquirer/prompts@8.5.2': - resolution: {integrity: sha512-IYR/3C/paEVVQYQvdDlFZVjRCJVYHHON0XXMH91KO9GSxs0TdKYWlUdvfQl2EfAHDxUaN3IBffkE/BDTh5nJ6g==} + '@inquirer/prompts@8.7.1': + resolution: {integrity: sha512-xJIKWyrFNUKj3R5VEub/iKodG9Sh/MbCeApZUbATJgHTw8YoAJ2gOT78HlvO6NMFiRvjm6ySM7aiAew/zVY0Sw==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -402,8 +393,8 @@ packages: '@types/node': optional: true - '@inquirer/rawlist@5.3.1': - resolution: {integrity: sha512-QqdTqQddL3qPX/PPrjobpsO25NZ4dWXgTLenrR445L2ptLEYE6Z+PD5c5CNDJNx4ugRgELAIpSIJxZaO2jJ2Og==} + '@inquirer/rawlist@5.3.4': + resolution: {integrity: sha512-c4fDwOpQsjJDHjXdHJE1/xXH6w9/BAiyu3QKzH9Ww5Xm1q37mzyUNa20L7qdtM1ECi4e+oUEKjhK8hR37OMAMQ==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -411,8 +402,8 @@ packages: '@types/node': optional: true - '@inquirer/search@4.2.1': - resolution: {integrity: sha512-xJj8QWKRSrfKoBIITLZK61dD3zwo0Rz11fgDImku30/Oe81zMdIdGgrLY2h6RkJ+KZ/GhNYIRMKnH/62qBTA5g==} + '@inquirer/search@4.3.2': + resolution: {integrity: sha512-YIaEhWmfkdHEWOKwhF/oJar35FFTTrAdzNbJDo9lSsRT6E/obRPx9oVm4rkTMtlcJSqGYttNtLbcHQef9Qw2yw==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -420,8 +411,8 @@ packages: '@types/node': optional: true - '@inquirer/select@5.2.1': - resolution: {integrity: sha512-FlDndEUww8m7BfukO2nJa25vhD+H5jxxCv4oGioKqzyWz3nPHhhw4LKdYRSlXuAx7DsdWia7iyaBPKKS95Evfw==} + '@inquirer/select@5.2.4': + resolution: {integrity: sha512-L9ubNaJdoBsiom/AfPKq0QLHTkhhCFCtszzdVidGremrlJjPZfGlmvp+IULKIbnYjtVFWnvb4mhiEdNTZ12ugA==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -429,8 +420,8 @@ packages: '@types/node': optional: true - '@inquirer/type@4.0.7': - resolution: {integrity: sha512-t28inv14nMQ1PhKpsJPY+kEs/c00qzeCOS2gTNRyTjG5d6qsVA2fItxW4hkvGZ5lvanGLdtCzVIx5dwdRpN1+g==} + '@inquirer/type@4.1.1': + resolution: {integrity: sha512-yJoHYrMnxIsJZCY+0Vb66Dy3he3kL3e2wOBKhoSwWWAzZAY82emlxwgprCtp6yRixvNRNq9ztfRWQYPNr3Go7A==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} peerDependencies: '@types/node': '>=18' @@ -448,112 +439,107 @@ packages: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} - '@jridgewell/sourcemap-codec@1.5.5': - resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + '@jridgewell/sourcemap-codec@1.6.0': + resolution: {integrity: sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==} '@jridgewell/trace-mapping@0.3.31': resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} - '@napi-rs/wasm-runtime@1.1.6': - resolution: {integrity: sha512-ZLv/JdUfkvOy9eCnnBaGfiO+XimbjebAeO+MRQqD/B+FR1tnRN0tpKSJHRbE8sFfS6aqsXZ67TQjfwfsxULVbg==} - peerDependencies: - '@emnapi/core': ^1.7.1 - '@emnapi/runtime': ^1.7.1 + '@oxc-project/types@0.148.0': + resolution: {integrity: sha512-Nm4s/jB+4FpFsPhWGEC4h7rzksesmtnMXomo6rCMcg/b8zLQuOziRgkCS1fxDCXOlJB/6Q8oABOZ/OP6RIPj9A==} - '@oxc-project/types@0.139.0': - resolution: {integrity: sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw==} + '@rolldown/binding-android-arm-eabi@1.2.7': + resolution: {integrity: sha512-EypzgnYCwyVY4NDHKzGmNJT5b+XaQEBniHxsMdeIQLB/tcCzZnhqrzHpZFbX9iaxx+5RiB8caATBtfvZP7zVxQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [android] - '@rolldown/binding-android-arm64@1.1.5': - resolution: {integrity: sha512-lZg8fqIv2v7FF237bwMgzGZEJvGL79/s5knJ/i6FmsGF4XXlzccZ4jb+TrFIxtSSxFtIpdsgrPZeMk1I9AFcyQ==} + '@rolldown/binding-android-arm64@1.2.7': + resolution: {integrity: sha512-l17HE9EweWaqJZhuUuNBN/FzM62xw+DECVnJyvMsxn8vJFAGLy5QfLDoYAcronkAN8VxKZHezDpulHDPx95vFw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@rolldown/binding-darwin-arm64@1.1.5': - resolution: {integrity: sha512-51Bnx9pNiMRKSUNtBfySkNJ9vMU9Hh3I1ozDd6gyPPYzaXCfnptUcEZxXGYFn+ul2dtcMUiqGR1Yai2K10uoTw==} + '@rolldown/binding-darwin-arm64@1.2.7': + resolution: {integrity: sha512-8ED8ELFvHXc6OCETIn4gXObPiaR6bckM/ipXtbzlPVDRMBfEGjCKgO90F9YtfdpDatVx/ZQw7aZ1vUMf/+T3Mw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@rolldown/binding-darwin-x64@1.1.5': - resolution: {integrity: sha512-Tm+gbfC0aHu1tBA/JvKQh32S0K6YgCHkiAF4/W6xX0K0RmNuc94VeK419dJoE65R5aRxmo+noZQSWrAMF6yb6g==} + '@rolldown/binding-darwin-x64@1.2.7': + resolution: {integrity: sha512-/WPripjtiAIZ2tWY7ddijORT0Ujg87wxWW/qcoFVCKAWVDPhtY0xr7Dj0M3GyNGz60jGwTElhro/mkF9dT7dDQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@rolldown/binding-freebsd-x64@1.1.5': - resolution: {integrity: sha512-JMzDKCCXq93YccG5gz3hvOs1oXRKAf0XYpfOS88e+wZrC8Iugj6j68867vrYZkvpDDpKn/KoKORThmchMpF6TA==} + '@rolldown/binding-freebsd-x64@1.2.7': + resolution: {integrity: sha512-14DI4NcqpvbICxSnGLx3PmtDaWqRP/KGSGb6C+JLLVPeZRl6dKdHba3pGsqT3vpdTqhEYIPG0MMQ8c0xYqoJxA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@rolldown/binding-linux-arm-gnueabihf@1.1.5': - resolution: {integrity: sha512-uML21j2K5TfPGutKxub+M+nLjZIrWjXQ5Grx4lCe/nimTj9B4L63zHpjXLl4y0L3mcm2htEQIb06oCG/szerNw==} + '@rolldown/binding-linux-arm-gnueabihf@1.2.7': + resolution: {integrity: sha512-bxrWIRvHWQvbJwi+VIie/kDJmQxcNE6xxWwZdqF/ExVAigtHkv54WTLQPb+QsZdnFy18fg7JPfWGL0RH6vwIlQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@rolldown/binding-linux-arm64-gnu@1.1.5': - resolution: {integrity: sha512-navSiuTMogvnQoZoM/v+l3ZWo50/NTwSHSzheABx/RCnmUPaKwq9qSo4Br2OYRs21+Fz8uFqITZM3H4opOB0/Q==} + '@rolldown/binding-linux-arm64-gnu@1.2.7': + resolution: {integrity: sha512-toOY2BChBZyuxU7OYX6Tn389di4IzAqPTycVcci0O7FSfBqzRB3RZn+K5Is6ANf4tmgRd/K1yZTsNTXbkXsnLg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [glibc] - '@rolldown/binding-linux-arm64-musl@1.1.5': - resolution: {integrity: sha512-lAryqH7IteztmCXQXk0etKj4wBQ7Gx5S6LjKhsgp9zb8I5bsuvU/2llH1hDQcjsFeqIsovMVN339/8pUDDBXxA==} + '@rolldown/binding-linux-arm64-musl@1.2.7': + resolution: {integrity: sha512-lAIXTH/aiLRLxsTgQvfhjo4K1ydWIp00+V0voOr9beb/9ZmkUFrSIb03dXNFRgMNvkE6oGsF10ioQ6UsI+vS5Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [musl] - '@rolldown/binding-linux-ppc64-gnu@1.1.5': - resolution: {integrity: sha512-fsK/sNBnxzBlL4O1JNrZakVQxPspqpED5dLtNsZS9oOKmtSpdNIzxH2kkol5HYTWJN47sE20ztMJPxfZ89qGOg==} + '@rolldown/binding-linux-ppc64-gnu@1.2.7': + resolution: {integrity: sha512-kdnwS28Pkenp/mZMRwjXXXwxQ7pIsm+bF919LUK93BOyhcLsrVKdP2p9fxpiPNPAbNuch8ypQt0pm2P2LYCAGg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] libc: [glibc] - '@rolldown/binding-linux-s390x-gnu@1.1.5': - resolution: {integrity: sha512-gLYb4BIadlfTOYT5gO503n8zQjXflgzpD0FcyKh0Mzx3rqCZKnHoJWV9xe1KXUJ5lx2JfcSHr/mhzS0PC/McAA==} + '@rolldown/binding-linux-s390x-gnu@1.2.7': + resolution: {integrity: sha512-516OdsyLdr5E65paF3yBF55t8mfm9+gmtCsK3xI7XKXIT7EfRlHhxL8K/NR6Hu8BWSgF5+1w74lTL0+nxcc8Qw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] libc: [glibc] - '@rolldown/binding-linux-x64-gnu@1.1.5': - resolution: {integrity: sha512-FjcpEKUyJygHgs1o50VYNvkt5+7Le/VEdYt0AkRpkL33MnyQfwr8l5mXwMmfmTbyMPr5vJLC+8/Gd9gXnwU1QQ==} + '@rolldown/binding-linux-x64-gnu@1.2.7': + resolution: {integrity: sha512-r8/z8n7GFaYRln3xmP1Cxy0HH/HLM0uBUPkEuSVEfKGDA89M0FsZRZJRSwe/tJjRx+fpH/gjorfhB8tmEbSFLA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [glibc] - '@rolldown/binding-linux-x64-musl@1.1.5': - resolution: {integrity: sha512-Me+PfPI2TMeOQk0gYWfLQZtTktrmzbr8cDboqX83XKc7UrgAi55gF+2dUkWdxd19n55Essp2yeca+O9N5rBxHg==} + '@rolldown/binding-linux-x64-musl@1.2.7': + resolution: {integrity: sha512-pAsE8iiDxUg1xBqdhrTfg45AVDVpirjz00sblEYClGNNcMnDb+e8beQgqIAw6LvauX/APvgxUnwrgun/YYGBhw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [musl] - '@rolldown/binding-openharmony-arm64@1.1.5': - resolution: {integrity: sha512-yc5WrLzXks6zCQfn9Oxr8pORKyl/pF+QjHmW/Qx3qu0oyrrNC+y2JLTU1E2rcWYAmzlnqngWXHQjy51VzW70Vw==} + '@rolldown/binding-openharmony-arm64@1.2.7': + resolution: {integrity: sha512-lTcIYmmnQQA8Or/2DatS6oSqcdLHvendjS+zLu+FwgToynWMRSmQdpM65fTANJgIS4mjbMOo5KT2lnT9SAb96w==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@rolldown/binding-wasm32-wasi@1.1.5': - resolution: {integrity: sha512-VbQGPX2b4r48TAMIM2cjgluIM1HYutm4pcTEJsle7iEP7sB1dFqtPLBVbdLAZCxy1txCcPxf4QFf4v8uvltPqA==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [wasm32] - - '@rolldown/binding-win32-arm64-msvc@1.1.5': - resolution: {integrity: sha512-gHv82k63z4qpV5+Q1y/12KrK0ltWBukVDI8nZcbT7Tt/ZlOIVwppazneq0F93oDxTo3IgAMEDIoQh3E2n6mVsw==} + '@rolldown/binding-win32-arm64-msvc@1.2.7': + resolution: {integrity: sha512-e3Gu3WxbNk/UqQhxqU7YIYO+9ZBvWNz3U+h/qRFosscMFzdRPbXYSaSWgSnklv2fz1TgzBTcti2z35c/7irsHw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@rolldown/binding-win32-x64-msvc@1.1.5': - resolution: {integrity: sha512-tTZuDBPw85tEN5PQi1pnEBzDy0Z49HtScLAbD5t6hyeU92A95pRWaSMw1GZZi/RwgSgUIl0xrSlXIT/9QzvYSA==} + '@rolldown/binding-win32-x64-msvc@1.2.7': + resolution: {integrity: sha512-W/jg5qoRSqjsEv0+dZi4e687mcHqmVuU0P4fK6qS/xjetW2Gmc1W8j//z5nAeNcC8Ttm0hV46IjcYeuVwYhuiw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] @@ -580,9 +566,6 @@ packages: '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} - '@tybys/wasm-util@0.10.3': - resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==} - '@types/chai@5.2.3': resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} @@ -598,8 +581,8 @@ packages: '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - '@types/node@26.1.1': - resolution: {integrity: sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==} + '@types/node@26.4.1': + resolution: {integrity: sha512-k97ENvZWtvA6yqz5/FS6a7duDgOPEeOQOc2iKS/nY6mX6qJUKtLnWzQS+Xj6tXweyj6ZcTAK2Qecetnvi9nCLA==} '@vitejs/plugin-vue@6.0.8': resolution: {integrity: sha512-0ZjgOg7oO6farnNGup7yvoM/YXZV84OZxHAwtflItNa/6zzQyVb5LNxyea3FEKEX2XlagIKzrlH7wwxkKgtiew==} @@ -608,20 +591,20 @@ packages: vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 vue: ^3.2.25 - '@vitest/coverage-v8@4.1.10': - resolution: {integrity: sha512-IM49HmthevbgAO4anp1hwtoT9wYe59w0LR00gr+eagHE+ZJ5lK4sLPeO0ubgoJcwLk6dehU3R24N+FbEEKDc8g==} + '@vitest/coverage-v8@4.1.11': + resolution: {integrity: sha512-8MVGEFnJIcdGjcbfKmeq8z0pZHH0JlVtoVZH9Q/qwUp6wyFnEJUBMrw9DCaj+ra3vShGmhavjalMIhPNxZAUcw==} peerDependencies: - '@vitest/browser': 4.1.10 - vitest: 4.1.10 + '@vitest/browser': 4.1.11 + vitest: 4.1.11 peerDependenciesMeta: '@vitest/browser': optional: true - '@vitest/expect@4.1.10': - resolution: {integrity: sha512-YsCn+qAk1GWjQOWFEsEcL2gNQ0zmVmQu3T03qP6UyjhtmdtwtbuI+DASn/7iQB3HGTXkdBwGddzxPlmiql5vlA==} + '@vitest/expect@4.1.11': + resolution: {integrity: sha512-VX2x5vNJXET47KAFzwERI+KRMtTTCSWTfSMKsW7JsUsXV4psq++e3DvZpuTDOpHcxytiDs6p2nhVb2tVDiiUYw==} - '@vitest/mocker@4.1.10': - resolution: {integrity: sha512-v0xaezt+DKEmKfaxg133ldzADrwLGd7Ze1MfQQTYfvs8OqZIwbxyxaYURivwV7sWy5fqn3rH5uOrSp07bp44Ow==} + '@vitest/mocker@4.1.11': + resolution: {integrity: sha512-2XJVD55d1o5AZous5CCGKS74g/riOj9odEt2bQpCVZeblHyHdnMeFl4jl0XjU21stf4mbjUkew2eXQZt65g5CQ==} peerDependencies: msw: ^2.4.9 vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -631,20 +614,20 @@ packages: vite: optional: true - '@vitest/pretty-format@4.1.10': - resolution: {integrity: sha512-W1HsjSH4MXQ9YfmmhLAoIYf1HRfekQCGngeIgcei6MP5QQGWUe0gkopdZQaVCFO+JDJMrAJGwa5pRpNpvy4P8Q==} + '@vitest/pretty-format@4.1.11': + resolution: {integrity: sha512-yiZzPbGTS9Sr/JpFl8zHrcIkAofNbFV6k21vIgQN/cY/oxZeXhJv5sc/MBJ5jFKWmWs+oJHw0UXLZjmf931+Vw==} - '@vitest/runner@4.1.10': - resolution: {integrity: sha512-IKI6kpIH+LmpROplyLwBBaCfMgOZOMsygVa6BARD6ahA04VRuJSa6OaVG7kRvSEMD870Vd91rSSw0eegtWyLGg==} + '@vitest/runner@4.1.11': + resolution: {integrity: sha512-LztvUgdwMNJMIkj3hQnnxiC2Xy1zNxq928W/xhjCLaNCzqTZOudjwbQf6v9IntZGPw132i2Lq2rgTRZHD3JHNw==} - '@vitest/snapshot@4.1.10': - resolution: {integrity: sha512-xRkfOT1qpTAi/Ti4Y1LtfRc3kEuqxGw59eN2jN9pRWMtS/XDevekhcFSqvQqjUNGksfjMJu3Y+oJ+4Ypn2OaJw==} + '@vitest/snapshot@4.1.11': + resolution: {integrity: sha512-pN7ikn1ON7h8ee4gIAp4AzyK+zBtJPzVbqOgu5LCEh4VaJVbPQcgYQYJIMGQPXVeJJq1fnfazis7a5pFNPahog==} - '@vitest/spy@4.1.10': - resolution: {integrity: sha512-PLf/Ugvoq5wO/b4rwYCR1h2PSIdXz7wnkQFMiUpLdtM7l6pqVFcQIBEHyT1+l+cj7mNwAfZHzqXqDyjvOuwbDw==} + '@vitest/spy@4.1.11': + resolution: {integrity: sha512-apNa/prQy2qCeywhnixOHPRCgGNhvg7T4Dapfl1GahLp/R+uhBm5cPyFoNVyqsNd2h1nJxL6BqqdIjiABL60YA==} - '@vitest/utils@4.1.10': - resolution: {integrity: sha512-fy9am/HWxbaGt/Sawrp90vt6Y6jQwf1RX77cz3uwoJwJVMli/e1IEwRPnMNJ7vKfPTwo0diXifkpPvwH9v7nGA==} + '@vitest/utils@4.1.11': + resolution: {integrity: sha512-zTCVGpyFsGWBhllOyKlTw/vnr6D9qxsfSDyfbyZmTyjHw5N/VuvzHpHoQjm2ZJzn4RJgx5w4r7V0er69CmLgPQ==} '@volar/language-core@2.4.15': resolution: {integrity: sha512-3VHw+QZU0ZG9IuQmzT68IyN4hZNd9GchGPhbD9+pa8CVv7rnoOZwo7T8weIbrRmihqy3ATpdfXFnqRrfPVK6CA==} @@ -664,17 +647,17 @@ packages: '@volar/typescript@2.4.28': resolution: {integrity: sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==} - '@vue/compiler-core@3.5.39': - resolution: {integrity: sha512-16KBTEXAJCpDr0mwlw+AZyhu8iyC7R3S2vBwsI7QnWJU6X3WKc9VKeNEZpiMdZ569qWhz9574L3vV55qRL0Vtw==} + '@vue/compiler-core@3.5.42': + resolution: {integrity: sha512-2Ye1ilMtKXxl8qZUrQ5j0CdgenFp/HFQmta6rfRyfEsTG69L6Wk+tWuNoHYHMx9E8tF2Slvdg1FuwDvAXdy1LQ==} - '@vue/compiler-dom@3.5.39': - resolution: {integrity: sha512-oQPigALqYbNxTNPvNgSOe+czwVExfbVF02lz8jP0S3AXJiu3jxYDygNUiqSep4ezzW8XgnubqH63My2A7JR/vg==} + '@vue/compiler-dom@3.5.42': + resolution: {integrity: sha512-qbhQZEFmycr+ni/qyuccS4sucNN7VAbDfbkvNxWOX2VfgFm90MNs3/UhRNKoPMEIVn0F8gdlYjLPvqxHwHeQOA==} - '@vue/compiler-sfc@3.5.39': - resolution: {integrity: sha512-d0ki86iOyN8LoZPBmk5SJWNwHP19CnDDCfuo//+2WJa2g5Ke0Jay983PIBIcSSzldC68I8DrD5GrHV3OSDfodg==} + '@vue/compiler-sfc@3.5.42': + resolution: {integrity: sha512-fkCAFB4okcAANGMThboWnScp/gzWjU0ZSkVnjTIiplmMDq2uq0tIB3j+xVu4rhv5rvOgBySCysudmbMd6xRRqw==} - '@vue/compiler-ssr@3.5.39': - resolution: {integrity: sha512-Ce7/wvwMHai74bdszfXExdazFigYnlF9zgCmEQUcM1j0fOymlouZ7XilTYNo8oUjhlnjYOZbGrcYKuqjz89Ucw==} + '@vue/compiler-ssr@3.5.42': + resolution: {integrity: sha512-xmLk3wLkbizPAiLyomjgFFosf2ys9b5Ghb+oh/k2tnvipNz8OFrQOiTcWCzyK7MpBp9KkyGtfvgfLUivbmuGYA==} '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} @@ -687,30 +670,28 @@ packages: typescript: optional: true - '@vue/reactivity@3.5.39': - resolution: {integrity: sha512-TpsuBJ9gGlZa5d23XcM2y8EXanz9dZeVDQBXRwzy46ItgvM+rWpzs+UVM0wcRLxGvcav0HE5jz2gNL53xlRAog==} + '@vue/reactivity@3.5.42': + resolution: {integrity: sha512-TzNNfKpb7hDxbQltwAut8VDQA5YP+BuRlxntHUuRjyKwlMvmAPbs3unhCvieijifY6vFfVBwsS7wG/C7uq+bEQ==} - '@vue/runtime-core@3.5.39': - resolution: {integrity: sha512-9GLtNyRvPAUMbX+7ono0RC2j0guo2LXVi8LvcmAooImACUKm0oFf0jjwbX8/H0AE/t1nxhAkn8RSl9PMCzzxZw==} + '@vue/runtime-core@3.5.42': + resolution: {integrity: sha512-9uACtuHs7vJGkm5Bp3xu4xRDLFTIYy5DgxpToVjqGIAhAEKwQfsaLvKINhM6nFVp6bZPRFGdDqd1g52MqKsotA==} - '@vue/runtime-dom@3.5.39': - resolution: {integrity: sha512-7Y6aAGboKcXAZ3ECuUy7RrS5yy2r47dhTp2SKaJmYxjopImaVFaNa5Ne66NwGovsrxVAl5S5rwc7m22UG7Lmww==} + '@vue/runtime-dom@3.5.42': + resolution: {integrity: sha512-rsCmhiWLaRxGltLwhlCWyYkFn7WAbKRh0q17eZ1A6Dq6eqc2ACQ61IIryxz0LrsvCzHSilLA9JHovVwM8CNE2g==} - '@vue/server-renderer@3.5.39': - resolution: {integrity: sha512-yZSakiAGw85rZfG7UM8akMnIF+FmeiNk47uvHf2nVBBSe+dIKUhZuZq9+XgJhbV3nS5Z4ALH23/MpXofW+mbcw==} - peerDependencies: - vue: 3.5.39 + '@vue/server-renderer@3.5.42': + resolution: {integrity: sha512-2++5dUyYS4gvo7xQXSECUDhB7TS0aOl5SeVfC5qSq1Jgfhjvegw1zqhwTIR3imZ+QYPJQw9gfcFvXGAjGZ7ajQ==} - '@vue/shared@3.5.39': - resolution: {integrity: sha512-l1rrBtBfTnmxvtsvdQDXltUUy8S1Y+ZaqdfUzmAnJkTd8Z8rv5v/ytW+TKiqEOWyHPoqtPlNFSs0lhRmYVSHVA==} + '@vue/shared@3.5.42': + resolution: {integrity: sha512-2rPxex1jQf4jvl9MOHl6YaXCPcrNqz/FstMOEh3QWY+/OME9nQTvl9WYeCwhW7AFjaR0SnngZGlp/wkR6rkI6g==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.17.0: - resolution: {integrity: sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==} + acorn@8.18.0: + resolution: {integrity: sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==} engines: {node: '>=0.4.0'} hasBin: true @@ -720,8 +701,8 @@ packages: alien-signals@1.0.13: resolution: {integrity: sha512-OGj9yyTnJEttvzhTUWuscOvtqxq5vrhF7vL9oS0xJ2mK0ItPYP1/y+vCFebfxoEyAz0++1AIwJ5CMr+Fk3nDmg==} - ansi-regex@6.2.2: - resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + ansi-regex@6.3.0: + resolution: {integrity: sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==} engines: {node: '>=12'} assertion-error@2.0.1: @@ -738,12 +719,12 @@ packages: resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} engines: {node: 18 || 20 || >=22} - brace-expansion@2.1.2: - resolution: {integrity: sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==} + brace-expansion@2.1.4: + resolution: {integrity: sha512-hGfVzPxthbf3+2yjg/RBs60cB0FhqBS/zvdV/4wn4/BmN0bNMMHPc4V/BbFieqf1TKAGGAHnY4eSjajCl0f2Xg==} - brace-expansion@5.0.7: - resolution: {integrity: sha512-7oFy703dxfY3/NLxC1fh2SUCQ0H9rmAY+5EpDVfXjUTTs+HEwR2nYaqLv+GWcTsumwxPfiz6CzCNkwXwBUwqCA==} - engines: {node: 18 || 20 || >=22} + brace-expansion@5.0.9: + resolution: {integrity: sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==} + engines: {node: 20 || >=22} chai@6.2.2: resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} @@ -810,8 +791,8 @@ packages: resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==} engines: {node: '>=0.12'} - es-module-lexer@2.3.1: - resolution: {integrity: sha512-shc1dbU90Yl/xq1QrC7QRtfcwURZuVRfPhZbDoldJ1cn1gzDvBaBWlv0eFolj5+0znnPJz5TXLxsN77X/12KTA==} + es-module-lexer@2.3.2: + resolution: {integrity: sha512-poHGpORABojJJucnV9KbOavETW8lBVnphkW77ER5/BQ5Fz7oXSoCNek7IH3vR5nRjdsEz926ibFYX8KtLQmdyw==} escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} @@ -829,8 +810,8 @@ packages: resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@10.7.0: - resolution: {integrity: sha512-GVTD7s1vdIl6UYvAfriOPeY1Df8LIZjfofLvHwde+erDHGGuHyuM6xoxRxmHiebhYuD2p1vN4wWh0XzPARSGDQ==} + eslint@10.9.1: + resolution: {integrity: sha512-9VaAkDURekixUQJy0oJYl2DcN6oKMfxay7XzaGYAWQwsb6qfKf+x76R2k1L8kb1boc+FyCAaTA9GmiKaaiaF+A==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: @@ -873,8 +854,8 @@ packages: resolution: {integrity: sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA==} engines: {node: '>=12.0.0'} - exsolve@1.1.0: - resolution: {integrity: sha512-D+42+T12DdIlJM3uepa55qGiL3sYdLBOxIl2ifQCzCHz4c7eiolaHsi3BIqEr7JxBzxv2pYZQX9kw16ziMcEmw==} + exsolve@1.1.1: + resolution: {integrity: sha512-9U/jZUgjnSGyntRr6y5Muu1MJcwFl6kPu7k8qLF0IMNfLqvw0NZ4nnVDq0RVoZ0RvCyumib4Ez3KYrVfilrw+g==} fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -919,8 +900,8 @@ packages: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} - flatted@3.4.2: - resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} + flatted@3.4.4: + resolution: {integrity: sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==} fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} @@ -939,6 +920,9 @@ packages: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} + glob-to-regexp@0.4.1: + resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} @@ -1027,78 +1011,78 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} - lightningcss-android-arm64@1.32.0: - resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==} + lightningcss-android-arm64@1.33.0: + resolution: {integrity: sha512-gEpRTalKdosp4Bb8qWtc2iOgE5SeIHlpS1up9bFq2wAyYhl1UdTObYiHe98zEM9SQvSoqQZ1IQD0JNpg3Ml5pg==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [android] - lightningcss-darwin-arm64@1.32.0: - resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==} + lightningcss-darwin-arm64@1.33.0: + resolution: {integrity: sha512-Sciaz8eenNTKn9b3t7+xr0ipTp9YxKQY4npwQ3mrRuL0BAVHBLyZxofhaKBAVtzmtRZ/zTyo0/to4B1uWG/Djg==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [darwin] - lightningcss-darwin-x64@1.32.0: - resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==} + lightningcss-darwin-x64@1.33.0: + resolution: {integrity: sha512-Z5UPAxzrjlWNNyGy6i65cJzzvgJ5D3T6wMvs+gWpY9d7qRhANrxqAp6LhxIgZhWEw18RfJTGcRxjuLIBr+m8XQ==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [darwin] - lightningcss-freebsd-x64@1.32.0: - resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==} + lightningcss-freebsd-x64@1.33.0: + resolution: {integrity: sha512-QQM/Ti/hQajJwCY+RiWuCZ9sdtI/XQk7nDK5vC8kkdwixezOlDgvDx7+RT+QjK6FcFT4MpsuoBnHIo/O3StRRg==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [freebsd] - lightningcss-linux-arm-gnueabihf@1.32.0: - resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==} + lightningcss-linux-arm-gnueabihf@1.33.0: + resolution: {integrity: sha512-N7FVBe6iS24MlM6R/4RBTxGhQheZGs7tiQ9U32UtF75NzP5Q7xWPRqLBCKxlRQRk3rY1jCIPLzx7WzOhuUIRLQ==} engines: {node: '>= 12.0.0'} cpu: [arm] os: [linux] - lightningcss-linux-arm64-gnu@1.32.0: - resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==} + lightningcss-linux-arm64-gnu@1.33.0: + resolution: {integrity: sha512-j2v/itmy4HlNxlc6voKXYgBqNi0Ng2LShg4z7GufpEgs05P+2suBVyi9I6YHq5uoVFx9ETin3eCEhLVyXGQnKg==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] libc: [glibc] - lightningcss-linux-arm64-musl@1.32.0: - resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==} + lightningcss-linux-arm64-musl@1.33.0: + resolution: {integrity: sha512-yiO5ROMuYQgXbC60yjZU5CYSFZGKXL0HFATXt9mHJn1+zW55oCtMI9NfcVhYLMFDL7gV7oBPon/EmMMGg2OvtQ==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] libc: [musl] - lightningcss-linux-x64-gnu@1.32.0: - resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==} + lightningcss-linux-x64-gnu@1.33.0: + resolution: {integrity: sha512-ar+Ju7LmcN0Jo4FpL4hpFybwNG9/3A/Br5KW2n2jyODg3MEZXaDYADdemoNS+BDNfMgKvylJLj4S5tyRActuAg==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] libc: [glibc] - lightningcss-linux-x64-musl@1.32.0: - resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==} + lightningcss-linux-x64-musl@1.33.0: + resolution: {integrity: sha512-RYiYbkokw0trfKqqzfF55lginwEPrD3OJDfTuJzFs1MK6iFnDenaz1fqLLtX4ITG3OktJQXOeTaw1awrBAlZPw==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] libc: [musl] - lightningcss-win32-arm64-msvc@1.32.0: - resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==} + lightningcss-win32-arm64-msvc@1.33.0: + resolution: {integrity: sha512-1K+MPfLSFVpphzpdbfkhlWk6wBrTObBzS2T6db10PNOZgR9GoVsAWzwNyuhUYYbTp23j+4RrncfujZ4uAzXvwA==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [win32] - lightningcss-win32-x64-msvc@1.32.0: - resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==} + lightningcss-win32-x64-msvc@1.33.0: + resolution: {integrity: sha512-OlEICDx/Xl0FqSp4bry8zFnCvGpig3Gl4gCquvYwHuqJKEC1+n9NgDniFvqHGmMv1ZkqDJrDqKKSykTDX+ehuA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [win32] - lightningcss@1.32.0: - resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==} + lightningcss@1.33.0: + resolution: {integrity: sha512-WkUDrojuJs0xkgGf2udWxa3yGBRxPtxUkB79i6aCZLRgc7PM8fZe9TosfPDcvEpQZbuFASnHYmRLBLUbmLOIIA==} engines: {node: '>= 12.0.0'} local-pkg@1.2.1: @@ -1116,8 +1100,8 @@ packages: magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - magicast@0.5.3: - resolution: {integrity: sha512-pVKE4UdSQ7DvHzivsCIFx2BJn1mHG6KsyrFcaxFx6tONdneEuThrDx0Cj3AMg58KyN4pzYT+LHOotxDQDjNvkw==} + magicast@0.5.4: + resolution: {integrity: sha512-llBEhWm1SacoRwgHUoQJYtwp4PBLF4faQi5TCpIGyGs9n4y5+juI0tDgyKIfpqxckRHaHzouUEph3THklWh03w==} make-dir@4.0.0: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} @@ -1127,8 +1111,8 @@ packages: resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} engines: {node: '>=18'} - minimatch@10.2.5: - resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} + minimatch@10.2.6: + resolution: {integrity: sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==} engines: {node: 18 || 20 || >=22} minimatch@9.0.9: @@ -1148,8 +1132,8 @@ packages: resolution: {integrity: sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw==} engines: {node: ^20.17.0 || >=22.9.0} - nanoid@3.3.16: - resolution: {integrity: sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q==} + nanoid@3.3.18: + resolution: {integrity: sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -1160,8 +1144,8 @@ packages: resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==} engines: {node: '>=18'} - obug@2.1.3: - resolution: {integrity: sha512-9miFgM2OFba7hB+pRgvtV84pYTBaoTHohvmIgiRt6dRIzbwEOIaNaP+dIlGs2fNFoB0SeISs0Jz5WFVRid6Xyg==} + obug@2.1.4: + resolution: {integrity: sha512-4a+OsYv9UktOJKE+l1A4OufDgdRF9PifWj+tJnHURo/P+WOxpG4GzUFL9qCalmWauao6ogiG+QvnCovwPoyAWA==} engines: {node: '>=12.20.0'} onetime@7.0.0: @@ -1209,8 +1193,8 @@ packages: picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - picomatch@4.0.5: - resolution: {integrity: sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==} + picomatch@4.0.7: + resolution: {integrity: sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==} engines: {node: '>=12'} pkg-types@1.3.1: @@ -1219,21 +1203,21 @@ packages: pkg-types@2.3.1: resolution: {integrity: sha512-y+ichcgc2LrADuhLNAx8DFjVfgz91pRxfZdI3UDhxHvcVEZsenLO+7XaU5vOp0u/7V/wZ+plyuQxtrDlZJ+yeg==} - postcss@8.5.19: - resolution: {integrity: sha512-Mz8SaolMd8nB+G13WkORcxQKHZ/NE4xXevtkJHVuG+guo9/wYKlIMTKAqGdEmYOXR2ijPjTYNHssizdaVSUNdQ==} + postcss@8.5.26: + resolution: {integrity: sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==} engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier@3.9.5: - resolution: {integrity: sha512-/FVl766LpUfB5vXgCYOYa0MeV/441Ia99AeICQIQFTY/Nw0roZwULcXpku5i1/m5kt/baz+s4Zogspd839HSMg==} + prettier@3.9.6: + resolution: {integrity: sha512-OpN0zzVdiaiAhxpuuj5efpIS4sY9j7bY6uR5mnj5yPzGkdkjNKSJeUThPb60Jw29QuAZgA4o+/iB49kFiaBX6g==} engines: {node: '>=14'} hasBin: true - pretty-ms@9.3.0: - resolution: {integrity: sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==} + pretty-ms@9.3.1: + resolution: {integrity: sha512-HzMy3Geq23nVALD/M2LliU+F+M+gVNsvkQWWqeBZ8HDiCgzo6YPJ/Omrmtq24EFrIsk0a3EkQGEd7bDOo+IhGA==} engines: {node: '>=18'} punycode@2.3.1: @@ -1247,8 +1231,8 @@ packages: resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} engines: {node: '>=18'} - rolldown@1.1.5: - resolution: {integrity: sha512-t9z29cJjXf/vxQ8dyhCSpt6H6aSwHTk8cT5I3iy6SMXuFpk5mB6PL6XfC8PCwrPTx93udwKUm9HRteAlTGBLiA==} + rolldown@1.2.7: + resolution: {integrity: sha512-g0EtLvBjTUB7jhyV0S/TCup3v/XSVl45vUIGbOGU4QPiyjTenCe4mKuFvW9fEgYmS2Fo42AUssRmNuMziXdrig==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true @@ -1308,21 +1292,18 @@ packages: tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} - tinyexec@1.2.4: - resolution: {integrity: sha512-SHf/r48b7vOrjve9PxJo3MN5v5yuyjHvdUcrQffT3WXMUfnGmHDVbC4k3sHJaJTgZCwpUplIaAo5ANtMyp3YHg==} + tinyexec@1.3.0: + resolution: {integrity: sha512-QKAl9m8gWWGHV8jZcPeym6j+XULi6tOf1mT83WYJ4Lk2ytW/uwAWkrP0uFsdoYMdueVJ0qs26wZ+23xeB4ibNQ==} engines: {node: '>=18'} tinyglobby@0.2.17: resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} engines: {node: '>=12.0.0'} - tinyrainbow@3.1.0: - resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} + tinyrainbow@3.1.1: + resolution: {integrity: sha512-yau8yJdTt989Mm0Bd/236QnzEiPf2xLLTqUZRUJOo/3CB078LSwzei343DgtJVmfJKJE3TMINY1u42SQsP6mXw==} engines: {node: '>=14.0.0'} - tslib@2.8.1: - resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -1342,8 +1323,8 @@ packages: resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==} engines: {node: '>=18'} - unplugin-dts@1.0.3: - resolution: {integrity: sha512-/GR887wfG4r1cWyt1UZsLRuMIjsmEbGkS9yJrz+0dsToHAYUD5CTyP3JMGVLv25j9K0mJcwAVvZno/aTuSUvNg==} + unplugin-dts@1.1.0: + resolution: {integrity: sha512-KZJ+qk+lmd9dJY/PJvDRFL9BUtVubKDiX7Ai/X6mlkCArcQNzwmupKjVqHbRA42uqO5ZfFRFc+o8/OCbQ1GonQ==} peerDependencies: '@microsoft/api-extractor': '>=7' '@rspack/core': ^1 @@ -1379,8 +1360,8 @@ packages: uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - vite-plugin-dts@5.0.3: - resolution: {integrity: sha512-gIth6NdCEHWPiiRMCK3N6C8WjvdsrtEQrmsiG8h6Ov+lFP+b07Y+wcs9H0H7n146l0PDTYK4cQN1vgeG1pMdRQ==} + vite-plugin-dts@5.1.0: + resolution: {integrity: sha512-MfLc2G+mXPUDGGxpHQeYbdunavFP9UpT9yxiAsTgUXRxfEd3HqysSAM4E72jhz5eIz3OOexCHkqiVlQq8ok9/A==} peerDependencies: '@microsoft/api-extractor': '>=7' rollup: '>=3' @@ -1393,13 +1374,13 @@ packages: vite: optional: true - vite@8.1.4: - resolution: {integrity: sha512-bTT9PsdWO+MQMNG9ZXIP/qM9wGh37DFxTV/sPq9cFpHr3w4jkgef032PkAL9jAqhk3Nz8NQw3O8n6/xFkqO4QQ==} + vite@8.2.2: + resolution: {integrity: sha512-cFKLV/PRgAUlIRm5WjMjJ86jrftzpqcgH+Us+DS8mI3CDNiH30Whrz8uHL3+MOLPAgqbMBAqWdAHAphOAM+z/Q==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: '@types/node': ^20.19.0 || >=22.12.0 - '@vitejs/devtools': ^0.3.0 + '@vitejs/devtools': ^0.4.0 || ^0.5.0 esbuild: ^0.27.0 || ^0.28.0 jiti: '>=1.21.0' less: ^4.0.0 @@ -1436,20 +1417,20 @@ packages: yaml: optional: true - vitest@4.1.10: - resolution: {integrity: sha512-R9jUTe5S4Qb0HCd4TNqpC7oGcrMssMRGXLW80ubjWsW9VH5GF8y1Y0SFLY9AbqSk6nt0PnOx4H4WNJYZ13GUPw==} + vitest@4.1.11: + resolution: {integrity: sha512-fhACrNXUidIbGSBr5FlbuBkO7VWC1ZyLl0DO4CU2DrQoAPxX84Ysxs+HeGQpii5lZWV1Q4gBZTTu49mF+A6Edw==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.1.10 - '@vitest/browser-preview': 4.1.10 - '@vitest/browser-webdriverio': 4.1.10 - '@vitest/coverage-istanbul': 4.1.10 - '@vitest/coverage-v8': 4.1.10 - '@vitest/ui': 4.1.10 + '@vitest/browser-playwright': 4.1.11 + '@vitest/browser-preview': 4.1.11 + '@vitest/browser-webdriverio': 4.1.11 + '@vitest/coverage-istanbul': 4.1.11 + '@vitest/coverage-v8': 4.1.11 + '@vitest/ui': 4.1.11 happy-dom: '*' jsdom: '*' vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -1477,8 +1458,8 @@ packages: jsdom: optional: true - vscode-uri@3.1.0: - resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} + vscode-uri@3.2.0: + resolution: {integrity: sha512-m2gXo3bn0G1kT9InzMf07fTbqMbGtyckj3bH5ktLO+1Ssv+yiATZ4dhwaQv9UZWxJh6E9IFGnQyjgWVDWVBDrg==} vue-tsc@2.2.12: resolution: {integrity: sha512-P7OP77b2h/Pmk+lZdJ0YWs+5tJ6J2+uOQPo7tlBnY44QqQSPYvS0qVT4wqDJgwrZaLe47etJLLQRFia71GYITw==} @@ -1486,8 +1467,8 @@ packages: peerDependencies: typescript: '>=5.0.0' - vue@3.5.39: - resolution: {integrity: sha512-xmZCYabFGcirU8r0fTuvl/LICc1OU620rnqepaJDL/a141ZigkG7AyaxQLdqJ02ZRYzWe6YPaDHeQx7MfknQfA==} + vue@3.5.42: + resolution: {integrity: sha512-4RyHQTbQvOPs3MfvUO1Sg0YRrKNnA0mAVtvpd12Tg1fKDN7OHBUl1IqSn8zGJjK9nI3NkNp8cgTpVrSZC5TTcA==} peerDependencies: typescript: '*' peerDependenciesMeta: @@ -1515,8 +1496,8 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - yoctocolors@2.1.2: - resolution: {integrity: sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==} + yoctocolors@2.2.0: + resolution: {integrity: sha512-xYqdZFUK/VYazNl/oCDYN+3WloWQwMfZxBoiNt6qNyk+xfOdi598muWE42rNZFp1kNOiqW936q5RhUdnpqElSg==} engines: {node: '>=18'} snapshots: @@ -1525,36 +1506,20 @@ snapshots: '@babel/helper-validator-identifier@7.29.7': {} - '@babel/parser@7.29.7': + '@babel/parser@7.29.8': dependencies: - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 - '@babel/types@7.29.7': + '@babel/types@7.29.8': dependencies: '@babel/helper-string-parser': 7.29.7 '@babel/helper-validator-identifier': 7.29.7 '@bcoe/v8-coverage@1.0.2': {} - '@emnapi/core@1.11.1': - dependencies: - '@emnapi/wasi-threads': 1.2.2 - tslib: 2.8.1 - optional: true - - '@emnapi/runtime@1.11.1': + '@eslint-community/eslint-utils@4.10.1(eslint@10.9.1)': dependencies: - tslib: 2.8.1 - optional: true - - '@emnapi/wasi-threads@1.2.2': - dependencies: - tslib: 2.8.1 - optional: true - - '@eslint-community/eslint-utils@4.9.1(eslint@10.7.0)': - dependencies: - eslint: 10.7.0 + eslint: 10.9.1 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} @@ -1563,11 +1528,11 @@ snapshots: dependencies: '@eslint/object-schema': 3.0.5 debug: 4.4.3 - minimatch: 10.2.5 + minimatch: 10.2.6 transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.6.0': + '@eslint/config-helpers@0.7.0': dependencies: '@eslint/core': 1.2.1 @@ -1598,128 +1563,128 @@ snapshots: '@humanwhocodes/retry@0.4.3': {} - '@inquirer/ansi@2.0.7': {} + '@inquirer/ansi@2.0.8': {} - '@inquirer/checkbox@5.2.1(@types/node@26.1.1)': + '@inquirer/checkbox@5.2.4(@types/node@26.4.1)': dependencies: - '@inquirer/ansi': 2.0.7 - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/ansi': 2.0.8 + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/figures': 2.0.9 + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/confirm@6.1.1(@types/node@26.1.1)': + '@inquirer/confirm@6.3.1(@types/node@26.4.1)': dependencies: - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/core@11.2.1(@types/node@26.1.1)': + '@inquirer/core@12.0.2(@types/node@26.4.1)': dependencies: - '@inquirer/ansi': 2.0.7 - '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/ansi': 2.0.8 + '@inquirer/figures': 2.0.9 + '@inquirer/type': 4.1.1(@types/node@26.4.1) cli-width: 4.1.0 fast-wrap-ansi: 0.2.2 mute-stream: 3.0.0 signal-exit: 4.1.0 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/editor@5.2.2(@types/node@26.1.1)': + '@inquirer/editor@5.3.2(@types/node@26.4.1)': dependencies: - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/external-editor': 3.0.3(@types/node@26.1.1) - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/external-editor': 3.0.5(@types/node@26.4.1) + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/expand@5.1.1(@types/node@26.1.1)': + '@inquirer/expand@5.1.4(@types/node@26.4.1)': dependencies: - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/external-editor@3.0.3(@types/node@26.1.1)': + '@inquirer/external-editor@3.0.5(@types/node@26.4.1)': dependencies: chardet: 2.2.0 iconv-lite: 0.7.3 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/figures@2.0.7': {} + '@inquirer/figures@2.0.9': {} - '@inquirer/input@5.1.2(@types/node@26.1.1)': + '@inquirer/input@5.1.5(@types/node@26.4.1)': dependencies: - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/number@4.1.1(@types/node@26.1.1)': + '@inquirer/number@4.2.2(@types/node@26.4.1)': dependencies: - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/password@5.1.1(@types/node@26.1.1)': + '@inquirer/password@5.2.1(@types/node@26.4.1)': dependencies: - '@inquirer/ansi': 2.0.7 - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/ansi': 2.0.8 + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 - - '@inquirer/prompts@8.5.2(@types/node@26.1.1)': - dependencies: - '@inquirer/checkbox': 5.2.1(@types/node@26.1.1) - '@inquirer/confirm': 6.1.1(@types/node@26.1.1) - '@inquirer/editor': 5.2.2(@types/node@26.1.1) - '@inquirer/expand': 5.1.1(@types/node@26.1.1) - '@inquirer/input': 5.1.2(@types/node@26.1.1) - '@inquirer/number': 4.1.1(@types/node@26.1.1) - '@inquirer/password': 5.1.1(@types/node@26.1.1) - '@inquirer/rawlist': 5.3.1(@types/node@26.1.1) - '@inquirer/search': 4.2.1(@types/node@26.1.1) - '@inquirer/select': 5.2.1(@types/node@26.1.1) + '@types/node': 26.4.1 + + '@inquirer/prompts@8.7.1(@types/node@26.4.1)': + dependencies: + '@inquirer/checkbox': 5.2.4(@types/node@26.4.1) + '@inquirer/confirm': 6.3.1(@types/node@26.4.1) + '@inquirer/editor': 5.3.2(@types/node@26.4.1) + '@inquirer/expand': 5.1.4(@types/node@26.4.1) + '@inquirer/input': 5.1.5(@types/node@26.4.1) + '@inquirer/number': 4.2.2(@types/node@26.4.1) + '@inquirer/password': 5.2.1(@types/node@26.4.1) + '@inquirer/rawlist': 5.3.4(@types/node@26.4.1) + '@inquirer/search': 4.3.2(@types/node@26.4.1) + '@inquirer/select': 5.2.4(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/rawlist@5.3.1(@types/node@26.1.1)': + '@inquirer/rawlist@5.3.4(@types/node@26.4.1)': dependencies: - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/search@4.2.1(@types/node@26.1.1)': + '@inquirer/search@4.3.2(@types/node@26.4.1)': dependencies: - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/figures': 2.0.9 + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/select@5.2.1(@types/node@26.1.1)': + '@inquirer/select@5.2.4(@types/node@26.4.1)': dependencies: - '@inquirer/ansi': 2.0.7 - '@inquirer/core': 11.2.1(@types/node@26.1.1) - '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@26.1.1) + '@inquirer/ansi': 2.0.8 + '@inquirer/core': 12.0.2(@types/node@26.4.1) + '@inquirer/figures': 2.0.9 + '@inquirer/type': 4.1.1(@types/node@26.4.1) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 - '@inquirer/type@4.0.7(@types/node@26.1.1)': + '@inquirer/type@4.1.1(@types/node@26.4.1)': optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 '@jridgewell/gen-mapping@0.3.13': dependencies: - '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/sourcemap-codec': 1.6.0 '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/remapping@2.3.5': @@ -1729,69 +1694,58 @@ snapshots: '@jridgewell/resolve-uri@3.1.2': {} - '@jridgewell/sourcemap-codec@1.5.5': {} + '@jridgewell/sourcemap-codec@1.6.0': {} '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.5 - - '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)': - dependencies: - '@emnapi/core': 1.11.1 - '@emnapi/runtime': 1.11.1 - '@tybys/wasm-util': 0.10.3 - optional: true + '@jridgewell/sourcemap-codec': 1.6.0 - '@oxc-project/types@0.139.0': {} + '@oxc-project/types@0.148.0': {} - '@rolldown/binding-android-arm64@1.1.5': + '@rolldown/binding-android-arm-eabi@1.2.7': optional: true - '@rolldown/binding-darwin-arm64@1.1.5': + '@rolldown/binding-android-arm64@1.2.7': optional: true - '@rolldown/binding-darwin-x64@1.1.5': + '@rolldown/binding-darwin-arm64@1.2.7': optional: true - '@rolldown/binding-freebsd-x64@1.1.5': + '@rolldown/binding-darwin-x64@1.2.7': optional: true - '@rolldown/binding-linux-arm-gnueabihf@1.1.5': + '@rolldown/binding-freebsd-x64@1.2.7': optional: true - '@rolldown/binding-linux-arm64-gnu@1.1.5': + '@rolldown/binding-linux-arm-gnueabihf@1.2.7': optional: true - '@rolldown/binding-linux-arm64-musl@1.1.5': + '@rolldown/binding-linux-arm64-gnu@1.2.7': optional: true - '@rolldown/binding-linux-ppc64-gnu@1.1.5': + '@rolldown/binding-linux-arm64-musl@1.2.7': optional: true - '@rolldown/binding-linux-s390x-gnu@1.1.5': + '@rolldown/binding-linux-ppc64-gnu@1.2.7': optional: true - '@rolldown/binding-linux-x64-gnu@1.1.5': + '@rolldown/binding-linux-s390x-gnu@1.2.7': optional: true - '@rolldown/binding-linux-x64-musl@1.1.5': + '@rolldown/binding-linux-x64-gnu@1.2.7': optional: true - '@rolldown/binding-openharmony-arm64@1.1.5': + '@rolldown/binding-linux-x64-musl@1.2.7': optional: true - '@rolldown/binding-wasm32-wasi@1.1.5': - dependencies: - '@emnapi/core': 1.11.1 - '@emnapi/runtime': 1.11.1 - '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1) + '@rolldown/binding-openharmony-arm64@1.2.7': optional: true - '@rolldown/binding-win32-arm64-msvc@1.1.5': + '@rolldown/binding-win32-arm64-msvc@1.2.7': optional: true - '@rolldown/binding-win32-x64-msvc@1.1.5': + '@rolldown/binding-win32-x64-msvc@1.2.7': optional: true '@rolldown/pluginutils@1.0.1': {} @@ -1800,7 +1754,7 @@ snapshots: dependencies: '@types/estree': 1.0.9 estree-walker: 2.0.2 - picomatch: 4.0.5 + picomatch: 4.0.7 '@sec-ant/readable-stream@0.4.1': {} @@ -1808,11 +1762,6 @@ snapshots: '@standard-schema/spec@1.1.0': {} - '@tybys/wasm-util@0.10.3': - dependencies: - tslib: 2.8.1 - optional: true - '@types/chai@5.2.3': dependencies: '@types/deep-eql': 4.0.2 @@ -1826,70 +1775,70 @@ snapshots: '@types/json-schema@7.0.15': {} - '@types/node@26.1.1': + '@types/node@26.4.1': dependencies: undici-types: 8.3.0 - '@vitejs/plugin-vue@6.0.8(vite@8.1.4(@types/node@26.1.1))(vue@3.5.39(typescript@6.0.3))': + '@vitejs/plugin-vue@6.0.8(vite@8.2.2(@types/node@26.4.1))(vue@3.5.42(typescript@6.0.3))': dependencies: '@rolldown/pluginutils': 1.0.1 - vite: 8.1.4(@types/node@26.1.1) - vue: 3.5.39(typescript@6.0.3) + vite: 8.2.2(@types/node@26.4.1) + vue: 3.5.42(typescript@6.0.3) - '@vitest/coverage-v8@4.1.10(vitest@4.1.10)': + '@vitest/coverage-v8@4.1.11(vitest@4.1.11)': dependencies: '@bcoe/v8-coverage': 1.0.2 - '@vitest/utils': 4.1.10 + '@vitest/utils': 4.1.11 ast-v8-to-istanbul: 1.0.5 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-reports: 3.2.0 - magicast: 0.5.3 - obug: 2.1.3 + magicast: 0.5.4 + obug: 2.1.4 std-env: 4.2.0 - tinyrainbow: 3.1.0 - vitest: 4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)) + tinyrainbow: 3.1.1 + vitest: 4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)) - '@vitest/expect@4.1.10': + '@vitest/expect@4.1.11': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.1.10 - '@vitest/utils': 4.1.10 + '@vitest/spy': 4.1.11 + '@vitest/utils': 4.1.11 chai: 6.2.2 - tinyrainbow: 3.1.0 + tinyrainbow: 3.1.1 - '@vitest/mocker@4.1.10(vite@8.1.4(@types/node@26.1.1))': + '@vitest/mocker@4.1.11(vite@8.2.2(@types/node@26.4.1))': dependencies: - '@vitest/spy': 4.1.10 + '@vitest/spy': 4.1.11 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 8.1.4(@types/node@26.1.1) + vite: 8.2.2(@types/node@26.4.1) - '@vitest/pretty-format@4.1.10': + '@vitest/pretty-format@4.1.11': dependencies: - tinyrainbow: 3.1.0 + tinyrainbow: 3.1.1 - '@vitest/runner@4.1.10': + '@vitest/runner@4.1.11': dependencies: - '@vitest/utils': 4.1.10 + '@vitest/utils': 4.1.11 pathe: 2.0.3 - '@vitest/snapshot@4.1.10': + '@vitest/snapshot@4.1.11': dependencies: - '@vitest/pretty-format': 4.1.10 - '@vitest/utils': 4.1.10 + '@vitest/pretty-format': 4.1.11 + '@vitest/utils': 4.1.11 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@4.1.10': {} + '@vitest/spy@4.1.11': {} - '@vitest/utils@4.1.10': + '@vitest/utils@4.1.11': dependencies: - '@vitest/pretty-format': 4.1.10 + '@vitest/pretty-format': 4.1.11 convert-source-map: 2.0.0 - tinyrainbow: 3.1.0 + tinyrainbow: 3.1.1 '@volar/language-core@2.4.15': dependencies: @@ -1907,43 +1856,43 @@ snapshots: dependencies: '@volar/language-core': 2.4.15 path-browserify: 1.0.1 - vscode-uri: 3.1.0 + vscode-uri: 3.2.0 '@volar/typescript@2.4.28': dependencies: '@volar/language-core': 2.4.28 path-browserify: 1.0.1 - vscode-uri: 3.1.0 + vscode-uri: 3.2.0 - '@vue/compiler-core@3.5.39': + '@vue/compiler-core@3.5.42': dependencies: - '@babel/parser': 7.29.7 - '@vue/shared': 3.5.39 + '@babel/parser': 7.29.8 + '@vue/shared': 3.5.42 entities: 7.0.1 estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-dom@3.5.39': + '@vue/compiler-dom@3.5.42': dependencies: - '@vue/compiler-core': 3.5.39 - '@vue/shared': 3.5.39 + '@vue/compiler-core': 3.5.42 + '@vue/shared': 3.5.42 - '@vue/compiler-sfc@3.5.39': + '@vue/compiler-sfc@3.5.42': dependencies: - '@babel/parser': 7.29.7 - '@vue/compiler-core': 3.5.39 - '@vue/compiler-dom': 3.5.39 - '@vue/compiler-ssr': 3.5.39 - '@vue/shared': 3.5.39 + '@babel/parser': 7.29.8 + '@vue/compiler-core': 3.5.42 + '@vue/compiler-dom': 3.5.42 + '@vue/compiler-ssr': 3.5.42 + '@vue/shared': 3.5.42 estree-walker: 2.0.2 magic-string: 0.30.21 - postcss: 8.5.19 + postcss: 8.5.26 source-map-js: 1.2.1 - '@vue/compiler-ssr@3.5.39': + '@vue/compiler-ssr@3.5.42': dependencies: - '@vue/compiler-dom': 3.5.39 - '@vue/shared': 3.5.39 + '@vue/compiler-dom': 3.5.42 + '@vue/shared': 3.5.42 '@vue/compiler-vue2@2.7.16': dependencies: @@ -1953,9 +1902,9 @@ snapshots: '@vue/language-core@2.2.12(typescript@6.0.3)': dependencies: '@volar/language-core': 2.4.15 - '@vue/compiler-dom': 3.5.39 + '@vue/compiler-dom': 3.5.42 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.39 + '@vue/shared': 3.5.42 alien-signals: 1.0.13 minimatch: 9.0.9 muggle-string: 0.4.1 @@ -1963,35 +1912,35 @@ snapshots: optionalDependencies: typescript: 6.0.3 - '@vue/reactivity@3.5.39': + '@vue/reactivity@3.5.42': dependencies: - '@vue/shared': 3.5.39 + '@vue/shared': 3.5.42 - '@vue/runtime-core@3.5.39': + '@vue/runtime-core@3.5.42': dependencies: - '@vue/reactivity': 3.5.39 - '@vue/shared': 3.5.39 + '@vue/reactivity': 3.5.42 + '@vue/shared': 3.5.42 - '@vue/runtime-dom@3.5.39': + '@vue/runtime-dom@3.5.42': dependencies: - '@vue/reactivity': 3.5.39 - '@vue/runtime-core': 3.5.39 - '@vue/shared': 3.5.39 + '@vue/reactivity': 3.5.42 + '@vue/runtime-core': 3.5.42 + '@vue/shared': 3.5.42 csstype: 3.2.3 - '@vue/server-renderer@3.5.39(vue@3.5.39(typescript@6.0.3))': + '@vue/server-renderer@3.5.42': dependencies: - '@vue/compiler-ssr': 3.5.39 - '@vue/shared': 3.5.39 - vue: 3.5.39(typescript@6.0.3) + '@vue/compiler-ssr': 3.5.42 + '@vue/runtime-dom': 3.5.42 + '@vue/shared': 3.5.42 - '@vue/shared@3.5.39': {} + '@vue/shared@3.5.42': {} - acorn-jsx@5.3.2(acorn@8.17.0): + acorn-jsx@5.3.2(acorn@8.18.0): dependencies: - acorn: 8.17.0 + acorn: 8.18.0 - acorn@8.17.0: {} + acorn@8.18.0: {} ajv@6.15.0: dependencies: @@ -2002,7 +1951,7 @@ snapshots: alien-signals@1.0.13: {} - ansi-regex@6.2.2: {} + ansi-regex@6.3.0: {} assertion-error@2.0.1: {} @@ -2016,11 +1965,11 @@ snapshots: balanced-match@4.0.4: {} - brace-expansion@2.1.2: + brace-expansion@2.1.4: dependencies: balanced-match: 1.0.2 - brace-expansion@5.0.7: + brace-expansion@5.0.9: dependencies: balanced-match: 4.0.4 @@ -2066,7 +2015,7 @@ snapshots: entities@7.0.1: {} - es-module-lexer@2.3.1: {} + es-module-lexer@2.3.2: {} escape-string-regexp@4.0.0: {} @@ -2081,12 +2030,12 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@10.7.0: + eslint@10.9.1: dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.9.1) '@eslint-community/regexpp': 4.12.2 '@eslint/config-array': 0.23.5 - '@eslint/config-helpers': 0.6.0 + '@eslint/config-helpers': 0.7.0 '@eslint/core': 1.2.1 '@eslint/plugin-kit': 0.7.2 '@humanfs/node': 0.16.8 @@ -2110,7 +2059,7 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - minimatch: 10.2.5 + minimatch: 10.2.6 natural-compare: 1.4.0 optionator: 0.9.4 transitivePeerDependencies: @@ -2118,8 +2067,8 @@ snapshots: espree@11.2.0: dependencies: - acorn: 8.17.0 - acorn-jsx: 5.3.2(acorn@8.17.0) + acorn: 8.18.0 + acorn-jsx: 5.3.2(acorn@8.18.0) eslint-visitor-keys: 5.0.1 esquery@1.7.0: @@ -2150,14 +2099,14 @@ snapshots: is-plain-obj: 4.1.0 is-stream: 4.0.1 npm-run-path: 6.0.0 - pretty-ms: 9.3.0 + pretty-ms: 9.3.1 signal-exit: 4.1.0 strip-final-newline: 4.0.0 - yoctocolors: 2.1.2 + yoctocolors: 2.2.0 expect-type@1.4.0: {} - exsolve@1.1.0: {} + exsolve@1.1.1: {} fast-deep-equal@3.1.3: {} @@ -2175,9 +2124,9 @@ snapshots: dependencies: fast-string-width: 3.0.2 - fdir@6.5.0(picomatch@4.0.5): + fdir@6.5.0(picomatch@4.0.7): optionalDependencies: - picomatch: 4.0.5 + picomatch: 4.0.7 figures@6.1.0: dependencies: @@ -2194,10 +2143,10 @@ snapshots: flat-cache@4.0.1: dependencies: - flatted: 3.4.2 + flatted: 3.4.4 keyv: 4.5.4 - flatted@3.4.2: {} + flatted@3.4.4: {} fsevents@2.3.3: optional: true @@ -2213,6 +2162,8 @@ snapshots: dependencies: is-glob: 4.0.3 + glob-to-regexp@0.4.1: {} + has-flag@4.0.0: {} he@1.2.0: {} @@ -2277,54 +2228,54 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - lightningcss-android-arm64@1.32.0: + lightningcss-android-arm64@1.33.0: optional: true - lightningcss-darwin-arm64@1.32.0: + lightningcss-darwin-arm64@1.33.0: optional: true - lightningcss-darwin-x64@1.32.0: + lightningcss-darwin-x64@1.33.0: optional: true - lightningcss-freebsd-x64@1.32.0: + lightningcss-freebsd-x64@1.33.0: optional: true - lightningcss-linux-arm-gnueabihf@1.32.0: + lightningcss-linux-arm-gnueabihf@1.33.0: optional: true - lightningcss-linux-arm64-gnu@1.32.0: + lightningcss-linux-arm64-gnu@1.33.0: optional: true - lightningcss-linux-arm64-musl@1.32.0: + lightningcss-linux-arm64-musl@1.33.0: optional: true - lightningcss-linux-x64-gnu@1.32.0: + lightningcss-linux-x64-gnu@1.33.0: optional: true - lightningcss-linux-x64-musl@1.32.0: + lightningcss-linux-x64-musl@1.33.0: optional: true - lightningcss-win32-arm64-msvc@1.32.0: + lightningcss-win32-arm64-msvc@1.33.0: optional: true - lightningcss-win32-x64-msvc@1.32.0: + lightningcss-win32-x64-msvc@1.33.0: optional: true - lightningcss@1.32.0: + lightningcss@1.33.0: dependencies: detect-libc: 2.1.2 optionalDependencies: - lightningcss-android-arm64: 1.32.0 - lightningcss-darwin-arm64: 1.32.0 - lightningcss-darwin-x64: 1.32.0 - lightningcss-freebsd-x64: 1.32.0 - lightningcss-linux-arm-gnueabihf: 1.32.0 - lightningcss-linux-arm64-gnu: 1.32.0 - lightningcss-linux-arm64-musl: 1.32.0 - lightningcss-linux-x64-gnu: 1.32.0 - lightningcss-linux-x64-musl: 1.32.0 - lightningcss-win32-arm64-msvc: 1.32.0 - lightningcss-win32-x64-msvc: 1.32.0 + lightningcss-android-arm64: 1.33.0 + lightningcss-darwin-arm64: 1.33.0 + lightningcss-darwin-x64: 1.33.0 + lightningcss-freebsd-x64: 1.33.0 + lightningcss-linux-arm-gnueabihf: 1.33.0 + lightningcss-linux-arm64-gnu: 1.33.0 + lightningcss-linux-arm64-musl: 1.33.0 + lightningcss-linux-x64-gnu: 1.33.0 + lightningcss-linux-x64-musl: 1.33.0 + lightningcss-win32-arm64-msvc: 1.33.0 + lightningcss-win32-x64-msvc: 1.33.0 local-pkg@1.2.1: dependencies: @@ -2339,16 +2290,16 @@ snapshots: log-symbols@7.0.1: dependencies: is-unicode-supported: 2.1.0 - yoctocolors: 2.1.2 + yoctocolors: 2.2.0 magic-string@0.30.21: dependencies: - '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/sourcemap-codec': 1.6.0 - magicast@0.5.3: + magicast@0.5.4: dependencies: - '@babel/parser': 7.29.7 - '@babel/types': 7.29.7 + '@babel/parser': 7.29.8 + '@babel/types': 7.29.8 source-map-js: 1.2.1 make-dir@4.0.0: @@ -2357,17 +2308,17 @@ snapshots: mimic-function@5.0.1: {} - minimatch@10.2.5: + minimatch@10.2.6: dependencies: - brace-expansion: 5.0.7 + brace-expansion: 5.0.9 minimatch@9.0.9: dependencies: - brace-expansion: 2.1.2 + brace-expansion: 2.1.4 mlly@1.8.2: dependencies: - acorn: 8.17.0 + acorn: 8.18.0 pathe: 2.0.3 pkg-types: 1.3.1 ufo: 1.6.4 @@ -2378,7 +2329,7 @@ snapshots: mute-stream@3.0.0: {} - nanoid@3.3.16: {} + nanoid@3.3.18: {} natural-compare@1.4.0: {} @@ -2387,7 +2338,7 @@ snapshots: path-key: 4.0.0 unicorn-magic: 0.3.0 - obug@2.1.3: {} + obug@2.1.4: {} onetime@7.0.0: dependencies: @@ -2435,7 +2386,7 @@ snapshots: picocolors@1.1.1: {} - picomatch@4.0.5: {} + picomatch@4.0.7: {} pkg-types@1.3.1: dependencies: @@ -2446,20 +2397,20 @@ snapshots: pkg-types@2.3.1: dependencies: confbox: 0.2.4 - exsolve: 1.1.0 + exsolve: 1.1.1 pathe: 2.0.3 - postcss@8.5.19: + postcss@8.5.26: dependencies: - nanoid: 3.3.16 + nanoid: 3.3.18 picocolors: 1.1.1 source-map-js: 1.2.1 prelude-ls@1.2.1: {} - prettier@3.9.5: {} + prettier@3.9.6: {} - pretty-ms@9.3.0: + pretty-ms@9.3.1: dependencies: parse-ms: 4.0.0 @@ -2472,26 +2423,26 @@ snapshots: onetime: 7.0.0 signal-exit: 4.1.0 - rolldown@1.1.5: + rolldown@1.2.7: dependencies: - '@oxc-project/types': 0.139.0 + '@oxc-project/types': 0.148.0 '@rolldown/pluginutils': 1.0.1 optionalDependencies: - '@rolldown/binding-android-arm64': 1.1.5 - '@rolldown/binding-darwin-arm64': 1.1.5 - '@rolldown/binding-darwin-x64': 1.1.5 - '@rolldown/binding-freebsd-x64': 1.1.5 - '@rolldown/binding-linux-arm-gnueabihf': 1.1.5 - '@rolldown/binding-linux-arm64-gnu': 1.1.5 - '@rolldown/binding-linux-arm64-musl': 1.1.5 - '@rolldown/binding-linux-ppc64-gnu': 1.1.5 - '@rolldown/binding-linux-s390x-gnu': 1.1.5 - '@rolldown/binding-linux-x64-gnu': 1.1.5 - '@rolldown/binding-linux-x64-musl': 1.1.5 - '@rolldown/binding-openharmony-arm64': 1.1.5 - '@rolldown/binding-wasm32-wasi': 1.1.5 - '@rolldown/binding-win32-arm64-msvc': 1.1.5 - '@rolldown/binding-win32-x64-msvc': 1.1.5 + '@rolldown/binding-android-arm-eabi': 1.2.7 + '@rolldown/binding-android-arm64': 1.2.7 + '@rolldown/binding-darwin-arm64': 1.2.7 + '@rolldown/binding-darwin-x64': 1.2.7 + '@rolldown/binding-freebsd-x64': 1.2.7 + '@rolldown/binding-linux-arm-gnueabihf': 1.2.7 + '@rolldown/binding-linux-arm64-gnu': 1.2.7 + '@rolldown/binding-linux-arm64-musl': 1.2.7 + '@rolldown/binding-linux-ppc64-gnu': 1.2.7 + '@rolldown/binding-linux-s390x-gnu': 1.2.7 + '@rolldown/binding-linux-x64-gnu': 1.2.7 + '@rolldown/binding-linux-x64-musl': 1.2.7 + '@rolldown/binding-openharmony-arm64': 1.2.7 + '@rolldown/binding-win32-arm64-msvc': 1.2.7 + '@rolldown/binding-win32-x64-msvc': 1.2.7 safer-buffer@2.1.2: {} @@ -2522,7 +2473,7 @@ snapshots: strip-ansi@7.2.0: dependencies: - ansi-regex: 6.2.2 + ansi-regex: 6.3.0 strip-final-newline@4.0.0: {} @@ -2532,17 +2483,14 @@ snapshots: tinybench@2.9.0: {} - tinyexec@1.2.4: {} + tinyexec@1.3.0: {} tinyglobby@0.2.17: dependencies: - fdir: 6.5.0(picomatch@4.0.5) - picomatch: 4.0.5 + fdir: 6.5.0(picomatch@4.0.7) + picomatch: 4.0.7 - tinyrainbow@3.1.0: {} - - tslib@2.8.1: - optional: true + tinyrainbow@3.1.1: {} type-check@0.4.0: dependencies: @@ -2556,39 +2504,40 @@ snapshots: unicorn-magic@0.3.0: {} - unplugin-dts@1.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)): + unplugin-dts@1.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)): dependencies: '@rollup/pluginutils': 5.4.0 '@volar/typescript': 2.4.28 compare-versions: 6.1.1 debug: 4.4.3 + glob-to-regexp: 0.4.1 kolorist: 1.8.0 local-pkg: 1.2.1 magic-string: 0.30.21 typescript: 6.0.3 unplugin: 2.3.11 optionalDependencies: - rolldown: 1.1.5 - vite: 8.1.4(@types/node@26.1.1) + rolldown: 1.2.7 + vite: 8.2.2(@types/node@26.4.1) transitivePeerDependencies: - supports-color unplugin@2.3.11: dependencies: '@jridgewell/remapping': 2.3.5 - acorn: 8.17.0 - picomatch: 4.0.5 + acorn: 8.18.0 + picomatch: 4.0.7 webpack-virtual-modules: 0.6.2 uri-js@4.4.1: dependencies: punycode: 2.3.1 - vite-plugin-dts@5.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)): + vite-plugin-dts@5.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)): dependencies: - unplugin-dts: 1.0.3(rolldown@1.1.5)(typescript@6.0.3)(vite@8.1.4(@types/node@26.1.1)) + unplugin-dts: 1.1.0(rolldown@1.2.7)(typescript@6.0.3)(vite@8.2.2(@types/node@26.4.1)) optionalDependencies: - vite: 8.1.4(@types/node@26.1.1) + vite: 8.2.2(@types/node@26.4.1) transitivePeerDependencies: - '@rspack/core' - '@vue/language-core' @@ -2598,46 +2547,46 @@ snapshots: - typescript - webpack - vite@8.1.4(@types/node@26.1.1): + vite@8.2.2(@types/node@26.4.1): dependencies: - lightningcss: 1.32.0 - picomatch: 4.0.5 - postcss: 8.5.19 - rolldown: 1.1.5 + lightningcss: 1.33.0 + picomatch: 4.0.7 + postcss: 8.5.26 + rolldown: 1.2.7 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 26.4.1 fsevents: 2.3.3 - vitest@4.1.10(@types/node@26.1.1)(@vitest/coverage-v8@4.1.10)(vite@8.1.4(@types/node@26.1.1)): + vitest@4.1.11(@types/node@26.4.1)(@vitest/coverage-v8@4.1.11)(vite@8.2.2(@types/node@26.4.1)): dependencies: - '@vitest/expect': 4.1.10 - '@vitest/mocker': 4.1.10(vite@8.1.4(@types/node@26.1.1)) - '@vitest/pretty-format': 4.1.10 - '@vitest/runner': 4.1.10 - '@vitest/snapshot': 4.1.10 - '@vitest/spy': 4.1.10 - '@vitest/utils': 4.1.10 - es-module-lexer: 2.3.1 + '@vitest/expect': 4.1.11 + '@vitest/mocker': 4.1.11(vite@8.2.2(@types/node@26.4.1)) + '@vitest/pretty-format': 4.1.11 + '@vitest/runner': 4.1.11 + '@vitest/snapshot': 4.1.11 + '@vitest/spy': 4.1.11 + '@vitest/utils': 4.1.11 + es-module-lexer: 2.3.2 expect-type: 1.4.0 magic-string: 0.30.21 - obug: 2.1.3 + obug: 2.1.4 pathe: 2.0.3 - picomatch: 4.0.5 + picomatch: 4.0.7 std-env: 4.2.0 tinybench: 2.9.0 - tinyexec: 1.2.4 + tinyexec: 1.3.0 tinyglobby: 0.2.17 - tinyrainbow: 3.1.0 - vite: 8.1.4(@types/node@26.1.1) + tinyrainbow: 3.1.1 + vite: 8.2.2(@types/node@26.4.1) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 26.1.1 - '@vitest/coverage-v8': 4.1.10(vitest@4.1.10) + '@types/node': 26.4.1 + '@vitest/coverage-v8': 4.1.11(vitest@4.1.11) transitivePeerDependencies: - msw - vscode-uri@3.1.0: {} + vscode-uri@3.2.0: {} vue-tsc@2.2.12(typescript@6.0.3): dependencies: @@ -2645,13 +2594,13 @@ snapshots: '@vue/language-core': 2.2.12(typescript@6.0.3) typescript: 6.0.3 - vue@3.5.39(typescript@6.0.3): + vue@3.5.42(typescript@6.0.3): dependencies: - '@vue/compiler-dom': 3.5.39 - '@vue/compiler-sfc': 3.5.39 - '@vue/runtime-dom': 3.5.39 - '@vue/server-renderer': 3.5.39(vue@3.5.39(typescript@6.0.3)) - '@vue/shared': 3.5.39 + '@vue/compiler-dom': 3.5.42 + '@vue/compiler-sfc': 3.5.42 + '@vue/runtime-dom': 3.5.42 + '@vue/server-renderer': 3.5.42 + '@vue/shared': 3.5.42 optionalDependencies: typescript: 6.0.3 @@ -2670,4 +2619,4 @@ snapshots: yocto-queue@0.1.0: {} - yoctocolors@2.1.2: {} + yoctocolors@2.2.0: {} diff --git a/pom.xml b/pom.xml index 5e4d2fc8..e182b6ee 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ 4.0.0 tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 pom Dynamia Soluciones IT SAS @@ -57,14 +57,14 @@ ${project.baseUri} - 4.1.0 + 4.1.1 2.2.46 1 - 10.2.1-jakarta + 10.3.0.1-jakarta 1.3.0 - 2.44.5 + 2.54.7 8.5.17 diff --git a/themes/pom.xml b/themes/pom.xml index e84a97cd..5623e210 100644 --- a/themes/pom.xml +++ b/themes/pom.xml @@ -6,7 +6,7 @@ tools.dynamia tools.dynamia.parent - 26.7.0 + 26.8.0 ../pom.xml diff --git a/themes/theme-dynamical/sources/pom.xml b/themes/theme-dynamical/sources/pom.xml index edb96016..a78e86f0 100644 --- a/themes/theme-dynamical/sources/pom.xml +++ b/themes/theme-dynamical/sources/pom.xml @@ -24,7 +24,7 @@ tools.dynamia.themes tools.dynamia.themes.parent - 26.7.0 + 26.8.0 ../../pom.xml @@ -102,7 +102,7 @@ tools.dynamia tools.dynamia.zk - 26.7.0 + 26.8.0 provided