diff --git a/bun.lock b/bun.lock index ebd5ad1d..d2ed3a74 100644 --- a/bun.lock +++ b/bun.lock @@ -4,7 +4,7 @@ "": { "name": "nestri", "dependencies": { - "sst": "3.9.36", + "sst": "^3.11.21", }, "devDependencies": { "@cloudflare/workers-types": "4.20240821.1", @@ -25,7 +25,7 @@ "@nuxtjs/plausible": "^1.0.2", "@types/node": "^20.16.5", "eslint": "^9.10.0", - "nuxt": "^3.15.4", + "nuxt": "^3.16.1", }, }, "apps/www": { @@ -71,7 +71,7 @@ "typescript": "5.4.5", "undici": "*", "valibot": "^0.42.1", - "vite": "5.4.12", + "vite": "5.4.16", "vite-tsconfig-paths": "^4.2.1", "wrangler": "^3.0.0", }, @@ -80,6 +80,7 @@ "name": "@nestri/core", "version": "0.0.0", "dependencies": { + "@aws-sdk/client-iot-data-plane": "^3.758.0", "@aws-sdk/client-rds-data": "^3.758.0", "@aws-sdk/client-sesv2": "^3.753.0", "@instantdb/admin": "^0.17.7", @@ -106,7 +107,9 @@ "packages/functions": { "name": "@nestri/functions", "dependencies": { + "@actor-core/bun": "^0.7.9", "@openauthjs/openauth": "*", + "actor-core": "^0.7.9", "hono": "^4.6.15", "hono-openapi": "^0.3.1", "partysocket": "1.0.3", @@ -135,6 +138,10 @@ "@bufbuild/protoc-gen-es": "^2.2.3", }, }, + "packages/maitred": { + "name": "@nestri/maitred", + "version": "0.1.0", + }, "packages/moq": { "name": "@nestri/libmoq", "version": "0.1.4", @@ -146,6 +153,22 @@ "typescript": "^5.1.6", }, }, + "packages/steam": { + "name": "steam", + "dependencies": { + "eventsource": "^3.0.6", + "qrcode": "^1.5.4", + "qrcode-terminal": "^0.12.0", + "ws": "^8.18.1", + }, + "devDependencies": { + "@types/bun": "latest", + "ts-node": "^10.9.2", + }, + "peerDependencies": { + "typescript": "^5", + }, + }, "packages/ui": { "name": "@nestri/ui", "version": "0.0.0", @@ -212,6 +235,7 @@ "focus-trap": "^7.6.4", "hono": "^4.7.4", "modern-normalize": "^3.0.1", + "motion": "^12.6.2", "qrcode": "^1.5.4", "solid-js": "^1.9.5", "valibot": "^1.0.0-rc.3", @@ -221,7 +245,7 @@ "@macaron-css/vite": "1.5.1", "@types/bun": "latest", "@types/qrcode": "^1.5.5", - "vite": "5.4.12", + "vite": "5.4.16", "vite-plugin-solid": "^2.11.2", }, "peerDependencies": { @@ -252,6 +276,12 @@ "@rocicorp/zero": "0.16.2025022000", }, "packages": { + "@actor-core/bun": ["@actor-core/bun@0.7.9", "", { "dependencies": { "dedent": "^1.5.3", "zod": "^3.24.2" }, "peerDependencies": { "@actor-core/file-system": "*", "@actor-core/memory": "*", "actor-core": "*" } }, "sha512-PbwfwUDZPUmEdVM7kvzyyFW1oW9q2YcppCYV83TGiO5OF+WSZIRUm2VfpzpcPB+96f83mTHrEJ/g9oNx7oqXiQ=="], + + "@actor-core/file-system": ["@actor-core/file-system@0.7.9", "", { "dependencies": { "env-paths": "^3.0.0", "hono": "^4.7.0", "invariant": "^2.2.4" }, "peerDependencies": { "actor-core": "*" } }, "sha512-Ww9FfNDwMBPab+LeOnooHPHTmEor+gfX5wlA5tio5wVtSFryq/ntv4ppraYQfKCMRyPngv5VbmR3jUFgYzjGJw=="], + + "@actor-core/memory": ["@actor-core/memory@0.7.9", "", { "dependencies": { "@types/node": "^22.13.1", "hono": "^4.7.0" }, "peerDependencies": { "actor-core": "*" } }, "sha512-oEVMCYqB/1T5I4IYHy5khZ3QjBmD57pBtmnHvnmm3Lu9tlToIGuO1dfYHAvotmEnsayiegE1uKfCuU2CCsMisA=="], + "@alloc/quick-lru": ["@alloc/quick-lru@5.2.0", "", {}, "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw=="], "@ampproject/remapping": ["@ampproject/remapping@2.3.0", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw=="], @@ -276,61 +306,63 @@ "@aws-sdk/client-ecs": ["@aws-sdk/client-ecs@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-node": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "@smithy/util-waiter": "^4.0.2", "@types/uuid": "^9.0.1", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "sha512-FYf7cOVV4UQpHsY072yqJbi28FPFYy50DDhtdFUdKxVtsGaHTZ7+DP+5PQJY9E56lpNpfG0ytrOrSidTXINKVQ=="], + "@aws-sdk/client-iot-data-plane": ["@aws-sdk/client-iot-data-plane@3.782.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.775.0", "@aws-sdk/credential-provider-node": "3.782.0", "@aws-sdk/middleware-host-header": "3.775.0", "@aws-sdk/middleware-logger": "3.775.0", "@aws-sdk/middleware-recursion-detection": "3.775.0", "@aws-sdk/middleware-user-agent": "3.782.0", "@aws-sdk/region-config-resolver": "3.775.0", "@aws-sdk/types": "3.775.0", "@aws-sdk/util-endpoints": "3.782.0", "@aws-sdk/util-user-agent-browser": "3.775.0", "@aws-sdk/util-user-agent-node": "3.782.0", "@smithy/config-resolver": "^4.1.0", "@smithy/core": "^3.2.0", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", "@smithy/middleware-endpoint": "^4.1.0", "@smithy/middleware-retry": "^4.1.0", "@smithy/middleware-serde": "^4.0.3", "@smithy/middleware-stack": "^4.0.2", "@smithy/node-config-provider": "^4.0.2", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.8", "@smithy/util-defaults-mode-node": "^4.0.8", "@smithy/util-endpoints": "^3.0.2", "@smithy/util-middleware": "^4.0.2", "@smithy/util-retry": "^4.0.2", "@smithy/util-stream": "^4.2.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-U9KpNxCfSzEmzXCVsN81HMWLHVgMeIYpt9Pey0GSStaZhWxVklRbCfq95Rpg3X1zr5IDLSVFXlRFgVE+m4GdMA=="], + "@aws-sdk/client-rds-data": ["@aws-sdk/client-rds-data@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-node": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-ZWgYB23xZISun31m1QjIq+OmKuKwhJj7JDS1OjfGtMjdn+uIAlxdr5cR9TZOMqsHkqJDV2YaPQ5+XRXnUEAZSA=="], "@aws-sdk/client-sesv2": ["@aws-sdk/client-sesv2@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-node": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/signature-v4-multi-region": "3.758.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-d10Q8Dv546obtrre0QfUdWVio7tpt1Pb8h/K1rOG5B+0gYkG4OdWQ0G6MOQ1PXSF2DEj1wWgy77MzEC88dFEiA=="], "@aws-sdk/client-sqs": ["@aws-sdk/client-sqs@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-node": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-sdk-sqs": "3.758.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/md5-js": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-AJ+FxzCkzHuS9ewoPi820dMsoPzq5wj8UvTvDaxwUfIM1LiWAhpSvr+mF7MuplIc6liU6hCndCqGO7lxLVxvrQ=="], - "@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-BoGO6IIWrLyLxQG6txJw6RT2urmbtlwfggapNCrNPyYjlXpzTSJhBYjndg7TpDATFd0SXL0zm8y/tXsUXNkdYQ=="], + "@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.782.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.775.0", "@aws-sdk/middleware-host-header": "3.775.0", "@aws-sdk/middleware-logger": "3.775.0", "@aws-sdk/middleware-recursion-detection": "3.775.0", "@aws-sdk/middleware-user-agent": "3.782.0", "@aws-sdk/region-config-resolver": "3.775.0", "@aws-sdk/types": "3.775.0", "@aws-sdk/util-endpoints": "3.782.0", "@aws-sdk/util-user-agent-browser": "3.775.0", "@aws-sdk/util-user-agent-node": "3.782.0", "@smithy/config-resolver": "^4.1.0", "@smithy/core": "^3.2.0", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", "@smithy/middleware-endpoint": "^4.1.0", "@smithy/middleware-retry": "^4.1.0", "@smithy/middleware-serde": "^4.0.3", "@smithy/middleware-stack": "^4.0.2", "@smithy/node-config-provider": "^4.0.2", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.8", "@smithy/util-defaults-mode-node": "^4.0.8", "@smithy/util-endpoints": "^3.0.2", "@smithy/util-middleware": "^4.0.2", "@smithy/util-retry": "^4.0.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-5GlJBejo8wqMpSSEKb45WE82YxI2k73YuebjLH/eWDNQeE6VI5Bh9lA1YQ7xNkLLH8hIsb0pSfKVuwh0VEzVrg=="], - "@aws-sdk/core": ["@aws-sdk/core@3.758.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/core": "^3.1.5", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg=="], + "@aws-sdk/core": ["@aws-sdk/core@3.775.0", "", { "dependencies": { "@aws-sdk/types": "3.775.0", "@smithy/core": "^3.2.0", "@smithy/node-config-provider": "^4.0.2", "@smithy/property-provider": "^4.0.2", "@smithy/protocol-http": "^5.1.0", "@smithy/signature-v4": "^5.0.2", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "@smithy/util-middleware": "^4.0.2", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "sha512-8vpW4WihVfz0DX+7WnnLGm3GuQER++b0IwQG35JlQMlgqnc44M//KbJPsIHA0aJUJVwJAEShgfr5dUbY8WUzaA=="], - "@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-N27eFoRrO6MeUNumtNHDW9WOiwfd59LPXPqDrIa3kWL/s+fOKFHb9xIcF++bAwtcZnAxKkgpDCUP+INNZskE+w=="], + "@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.775.0", "", { "dependencies": { "@aws-sdk/core": "3.775.0", "@aws-sdk/types": "3.775.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-6ESVxwCbGm7WZ17kY1fjmxQud43vzJFoLd4bmlR+idQSWdqlzGDYdcfzpjDKTcivdtNrVYmFvcH1JBUwCRAZhw=="], - "@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-Xt9/U8qUCiw1hihztWkNeIR+arg6P+yda10OuCHX6kFVx3auTlU7+hCqs3UxqniGU4dguHuftf3mRpi5/GJ33Q=="], + "@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.775.0", "", { "dependencies": { "@aws-sdk/core": "3.775.0", "@aws-sdk/types": "3.775.0", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/node-http-handler": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/protocol-http": "^5.1.0", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "@smithy/util-stream": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-PjDQeDH/J1S0yWV32wCj2k5liRo0ssXMseCBEkCsD3SqsU8o5cU82b0hMX4sAib/RkglCSZqGO0xMiN0/7ndww=="], - "@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-cymSKMcP5d+OsgetoIZ5QCe1wnp2Q/tq+uIxVdh9MbfdBBEnl9Ecq6dH6VlYS89sp4QKuxHxkWXVnbXU3Q19Aw=="], + "@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.782.0", "", { "dependencies": { "@aws-sdk/core": "3.775.0", "@aws-sdk/credential-provider-env": "3.775.0", "@aws-sdk/credential-provider-http": "3.775.0", "@aws-sdk/credential-provider-process": "3.775.0", "@aws-sdk/credential-provider-sso": "3.782.0", "@aws-sdk/credential-provider-web-identity": "3.782.0", "@aws-sdk/nested-clients": "3.782.0", "@aws-sdk/types": "3.775.0", "@smithy/credential-provider-imds": "^4.0.2", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-wd4KdRy2YjLsE4Y7pz00470Iip06GlRHkG4dyLW7/hFMzEO2o7ixswCWp6J2VGZVAX64acknlv2Q0z02ebjmhw=="], - "@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.758.0", "", { "dependencies": { "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-ini": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-+DaMv63wiq7pJrhIQzZYMn4hSarKiizDoJRvyR7WGhnn0oQ/getX9Z0VNCV3i7lIFoLNTb7WMmQ9k7+z/uD5EQ=="], + "@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.782.0", "", { "dependencies": { "@aws-sdk/credential-provider-env": "3.775.0", "@aws-sdk/credential-provider-http": "3.775.0", "@aws-sdk/credential-provider-ini": "3.782.0", "@aws-sdk/credential-provider-process": "3.775.0", "@aws-sdk/credential-provider-sso": "3.782.0", "@aws-sdk/credential-provider-web-identity": "3.782.0", "@aws-sdk/types": "3.775.0", "@smithy/credential-provider-imds": "^4.0.2", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-HZiAF+TCEyKjju9dgysjiPIWgt/+VerGaeEp18mvKLNfgKz1d+/82A2USEpNKTze7v3cMFASx3CvL8yYyF7mJw=="], - "@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-AzcY74QTPqcbXWVgjpPZ3HOmxQZYPROIBz2YINF0OQk0MhezDWV/O7Xec+K1+MPGQO3qS6EDrUUlnPLjsqieHA=="], + "@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.775.0", "", { "dependencies": { "@aws-sdk/core": "3.775.0", "@aws-sdk/types": "3.775.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-A6k68H9rQp+2+7P7SGO90Csw6nrUEm0Qfjpn9Etc4EboZhhCLs9b66umUsTsSBHus4FDIe5JQxfCUyt1wgNogg=="], - "@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.758.0", "", { "dependencies": { "@aws-sdk/client-sso": "3.758.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/token-providers": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-x0FYJqcOLUCv8GLLFDYMXRAQKGjoM+L0BG4BiHYZRDf24yQWFCAZsCQAYKo6XZYh2qznbsW6f//qpyJ5b0QVKQ=="], + "@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.782.0", "", { "dependencies": { "@aws-sdk/client-sso": "3.782.0", "@aws-sdk/core": "3.775.0", "@aws-sdk/token-providers": "3.782.0", "@aws-sdk/types": "3.775.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-1y1ucxTtTIGDSNSNxriQY8msinilhe9gGvQpUDYW9gboyC7WQJPDw66imy258V6osdtdi+xoHzVCbCz3WhosMQ=="], - "@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-XGguXhBqiCXMXRxcfCAVPlMbm3VyJTou79r/3mxWddHWF0XbhaQiBIbUz6vobVTD25YQRbWSmSch7VA8kI5Lrw=="], + "@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.782.0", "", { "dependencies": { "@aws-sdk/core": "3.775.0", "@aws-sdk/nested-clients": "3.782.0", "@aws-sdk/types": "3.775.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-xCna0opVPaueEbJoclj5C6OpDNi0Gynj+4d7tnuXGgQhTHPyAz8ZyClkVqpi5qvHTgxROdUEDxWqEO5jqRHZHQ=="], - "@aws-sdk/middleware-host-header": ["@aws-sdk/middleware-host-header@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-LW7RRgSOHHBzWZnigNsDIzu3AiwtjeI2X66v+Wn1P1u+eXssy1+up4ZY/h+t2sU4LU36UvEf+jrZti9c6vRnFw=="], + "@aws-sdk/middleware-host-header": ["@aws-sdk/middleware-host-header@3.775.0", "", { "dependencies": { "@aws-sdk/types": "3.775.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-tkSegM0Z6WMXpLB8oPys/d+umYIocvO298mGvcMCncpRl77L9XkvSLJIFzaHes+o7djAgIduYw8wKIMStFss2w=="], - "@aws-sdk/middleware-logger": ["@aws-sdk/middleware-logger@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-mUMFITpJUW3LcKvFok176eI5zXAUomVtahb9IQBwLzkqFYOrMJvWAvoV4yuxrJ8TlQBG8gyEnkb9SnhZvjg67w=="], + "@aws-sdk/middleware-logger": ["@aws-sdk/middleware-logger@3.775.0", "", { "dependencies": { "@aws-sdk/types": "3.775.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-FaxO1xom4MAoUJsldmR92nT1G6uZxTdNYOFYtdHfd6N2wcNaTuxgjIvqzg5y7QIH9kn58XX/dzf1iTjgqUStZw=="], - "@aws-sdk/middleware-recursion-detection": ["@aws-sdk/middleware-recursion-detection@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-CUat2d9ITsFc2XsmeiRQO96iWpxSKYFjxvj27Hc7vo87YUHRnfMfnc8jw1EpxEwMcvBD7LsRa6vDNky6AjcrFA=="], + "@aws-sdk/middleware-recursion-detection": ["@aws-sdk/middleware-recursion-detection@3.775.0", "", { "dependencies": { "@aws-sdk/types": "3.775.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-GLCzC8D0A0YDG5u3F5U03Vb9j5tcOEFhr8oc6PDk0k0vm5VwtZOE6LvK7hcCSoAB4HXyOUM0sQuXrbaAh9OwXA=="], "@aws-sdk/middleware-sdk-s3": ["@aws-sdk/middleware-sdk-s3@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-arn-parser": "3.723.0", "@smithy/core": "^3.1.5", "@smithy/node-config-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-6mJ2zyyHPYSV6bAcaFpsdoXZJeQlR1QgBnZZ6juY/+dcYiuyWCdyLUbGzSZSE7GTfx6i+9+QWFeoIMlWKgU63A=="], "@aws-sdk/middleware-sdk-sqs": ["@aws-sdk/middleware-sdk-sqs@3.758.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-jBn6EUimaObuZmx5pOFlLxWQGFnfzerKtQRDGl2htBwI8ncYFfexeF9g9Sx4Np3y5iu9F4RUuUU8+KEE2cqeKA=="], - "@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@smithy/core": "^3.1.5", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-iNyehQXtQlj69JCgfaOssgZD4HeYGOwxcaKeG6F+40cwBjTAi0+Ph1yfDwqk2qiBPIRWJ/9l2LodZbxiBqgrwg=="], + "@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.782.0", "", { "dependencies": { "@aws-sdk/core": "3.775.0", "@aws-sdk/types": "3.775.0", "@aws-sdk/util-endpoints": "3.782.0", "@smithy/core": "^3.2.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-i32H2R6IItX+bQ2p4+v2gGO2jA80jQoJO2m1xjU9rYWQW3+ErWy4I5YIuQHTBfb6hSdAHbaRfqPDgbv9J2rjEg=="], - "@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + "@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.782.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.775.0", "@aws-sdk/middleware-host-header": "3.775.0", "@aws-sdk/middleware-logger": "3.775.0", "@aws-sdk/middleware-recursion-detection": "3.775.0", "@aws-sdk/middleware-user-agent": "3.782.0", "@aws-sdk/region-config-resolver": "3.775.0", "@aws-sdk/types": "3.775.0", "@aws-sdk/util-endpoints": "3.782.0", "@aws-sdk/util-user-agent-browser": "3.775.0", "@aws-sdk/util-user-agent-node": "3.782.0", "@smithy/config-resolver": "^4.1.0", "@smithy/core": "^3.2.0", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", "@smithy/middleware-endpoint": "^4.1.0", "@smithy/middleware-retry": "^4.1.0", "@smithy/middleware-serde": "^4.0.3", "@smithy/middleware-stack": "^4.0.2", "@smithy/node-config-provider": "^4.0.2", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.8", "@smithy/util-defaults-mode-node": "^4.0.8", "@smithy/util-endpoints": "^3.0.2", "@smithy/util-middleware": "^4.0.2", "@smithy/util-retry": "^4.0.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-QOYC8q7luzHFXrP0xYAqBctoPkynjfV0r9dqntFu4/IWMTyC1vlo1UTxFAjIPyclYw92XJyEkVCVg9v/nQnsUA=="], - "@aws-sdk/region-config-resolver": ["@aws-sdk/region-config-resolver@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Lvj1kPRC5IuJBr9DyJ9T9/plkh+EfKLy+12s/mykOy1JaKHDpvj+XGy2YO6YgYVOb8JFtaqloid+5COtje4JTQ=="], + "@aws-sdk/region-config-resolver": ["@aws-sdk/region-config-resolver@3.775.0", "", { "dependencies": { "@aws-sdk/types": "3.775.0", "@smithy/node-config-provider": "^4.0.2", "@smithy/types": "^4.2.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.2", "tslib": "^2.6.2" } }, "sha512-40iH3LJjrQS3LKUJAl7Wj0bln7RFPEvUYKFxtP8a+oKFDO0F65F52xZxIJbPn6sHkxWDAnZlGgdjZXM3p2g5wQ=="], "@aws-sdk/signature-v4-multi-region": ["@aws-sdk/signature-v4-multi-region@3.758.0", "", { "dependencies": { "@aws-sdk/middleware-sdk-s3": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-0RPCo8fYJcrenJ6bRtiUbFOSgQ1CX/GpvwtLU2Fam1tS9h2klKK8d74caeV6A1mIUvBU7bhyQ0wMGlwMtn3EYw=="], - "@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.758.0", "", { "dependencies": { "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-ckptN1tNrIfQUaGWm/ayW1ddG+imbKN7HHhjFdS4VfItsP0QQOB0+Ov+tpgb4MoNR4JaUghMIVStjIeHN2ks1w=="], + "@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.782.0", "", { "dependencies": { "@aws-sdk/nested-clients": "3.782.0", "@aws-sdk/types": "3.775.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-4tPuk/3+THPrzKaXW4jE2R67UyGwHLFizZ47pcjJWbhb78IIJAy94vbeqEQ+veS84KF5TXcU7g5jGTXC0D70Wg=="], - "@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + "@aws-sdk/types": ["@aws-sdk/types@3.775.0", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA=="], "@aws-sdk/util-arn-parser": ["@aws-sdk/util-arn-parser@3.723.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-ZhEfvUwNliOQROcAk34WJWVYTlTa4694kSVhDSjW6lE1bMataPnIN8A0ycukEzBXmd8ZSoBcQLn6lKGl7XIJ5w=="], - "@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.743.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "@smithy/util-endpoints": "^3.0.1", "tslib": "^2.6.2" } }, "sha512-sN1l559zrixeh5x+pttrnd0A3+r34r0tmPkJ/eaaMaAzXqsmKU/xYre9K3FNnsSS1J1k4PEfk/nHDTVUgFYjnw=="], + "@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.782.0", "", { "dependencies": { "@aws-sdk/types": "3.775.0", "@smithy/types": "^4.2.0", "@smithy/util-endpoints": "^3.0.2", "tslib": "^2.6.2" } }, "sha512-/RJOAO7o7HI6lEa4ASbFFLHGU9iPK876BhsVfnl54MvApPVYWQ9sHO0anOUim2S5lQTwd/6ghuH3rFYSq/+rdw=="], "@aws-sdk/util-locate-window": ["@aws-sdk/util-locate-window@3.723.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-Yf2CS10BqK688DRsrKI/EO6B8ff5J86NXe4C+VCysK7UOgN0l1zOTeTukZ3H8Q9tYYX3oaF1961o8vRkFm7Nmw=="], - "@aws-sdk/util-user-agent-browser": ["@aws-sdk/util-user-agent-browser@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-xQTCus6Q9LwUuALW+S76OL0jcWtMOVu14q+GoLnWPUM7QeUw963oQcLhF7oq0CtaLLKyl4GOUfcwc773Zmwwng=="], + "@aws-sdk/util-user-agent-browser": ["@aws-sdk/util-user-agent-browser@3.775.0", "", { "dependencies": { "@aws-sdk/types": "3.775.0", "@smithy/types": "^4.2.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-txw2wkiJmZKVdDbscK7VBK+u+TJnRtlUjRTLei+elZg2ADhpQxfVAQl436FUeIv6AhB/oRHW6/K/EAGXUSWi0A=="], - "@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.758.0", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-A5EZw85V6WhoKMV2hbuFRvb9NPlxEErb4HPO6/SPXYY4QrjprIzScHxikqcWv1w4J3apB1wto9LPU3IMsYtfrw=="], + "@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.782.0", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "3.782.0", "@aws-sdk/types": "3.775.0", "@smithy/node-config-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-dMFkUBgh2Bxuw8fYZQoH/u3H4afQ12VSkzEi//qFiDTwbKYq+u+RYjc8GLDM6JSK1BShMu5AVR7HD4ap1TYUnA=="], "@aws-sdk/util-utf8-browser": ["@aws-sdk/util-utf8-browser@3.259.0", "", { "dependencies": { "tslib": "^2.3.1" } }, "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw=="], @@ -434,6 +466,18 @@ "@builder.io/qwik-react": ["@builder.io/qwik-react@0.5.0", "", { "peerDependencies": { "@builder.io/qwik": ">=0.22.0", "@types/react": ">=18.0.1", "@types/react-dom": ">=18.0.0", "react": ">=18.0.0", "react-dom": ">=18.0.0" } }, "sha512-JdJWQWOJGv7ddQqEZwzR8wPh0IoCQZwD9qo75+reiQaLp6eH+Pjsm/kn1LaMQt6u72pCCNjnj5kEn/bnbfnIjQ=="], + "@cbor-extract/cbor-extract-darwin-arm64": ["@cbor-extract/cbor-extract-darwin-arm64@2.2.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-P7swiOAdF7aSi0H+tHtHtr6zrpF3aAq/W9FXx5HektRvLTM2O89xCyXF3pk7pLc7QpaY7AoaE8UowVf9QBdh3w=="], + + "@cbor-extract/cbor-extract-darwin-x64": ["@cbor-extract/cbor-extract-darwin-x64@2.2.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-1liF6fgowph0JxBbYnAS7ZlqNYLf000Qnj4KjqPNW4GViKrEql2MgZnAsExhY9LSy8dnvA4C0qHEBgPrll0z0w=="], + + "@cbor-extract/cbor-extract-linux-arm": ["@cbor-extract/cbor-extract-linux-arm@2.2.0", "", { "os": "linux", "cpu": "arm" }, "sha512-QeBcBXk964zOytiedMPQNZr7sg0TNavZeuUCD6ON4vEOU/25+pLhNN6EDIKJ9VLTKaZ7K7EaAriyYQ1NQ05s/Q=="], + + "@cbor-extract/cbor-extract-linux-arm64": ["@cbor-extract/cbor-extract-linux-arm64@2.2.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-rQvhNmDuhjTVXSPFLolmQ47/ydGOFXtbR7+wgkSY0bdOxCFept1hvg59uiLPT2fVDuJFuEy16EImo5tE2x3RsQ=="], + + "@cbor-extract/cbor-extract-linux-x64": ["@cbor-extract/cbor-extract-linux-x64@2.2.0", "", { "os": "linux", "cpu": "x64" }, "sha512-cWLAWtT3kNLHSvP4RKDzSTX9o0wvQEEAj4SKvhWuOVZxiDAeQazr9A+PSiRILK1VYMLeDml89ohxCnUNQNQNCw=="], + + "@cbor-extract/cbor-extract-win32-x64": ["@cbor-extract/cbor-extract-win32-x64@2.2.0", "", { "os": "win32", "cpu": "x64" }, "sha512-l2M+Z8DO2vbvADOBNLbbh9y5ST1RY5sqkWOg/58GkUPBYou/cuNZ68SGQ644f1CvZ8kcOxyZtw06+dxWHIoN/w=="], + "@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.3.4", "", { "dependencies": { "mime": "^3.0.0" } }, "sha512-YLPHc8yASwjNkmcDMQMY35yiWjoKAKnhUbPRszBRS0YgH+IXtsMp61j+yTcnCE3oO2DgP0U3iejLC8FTtKDC8Q=="], "@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.0.0", "", { "peerDependencies": { "unenv": "2.0.0-rc.8", "workerd": "^1.20250124.0" }, "optionalPeers": ["workerd"] }, "sha512-Ar4HixFYP8e990JPACno3nqe10QsjS3yVWr48z5Vop5LygdnvPa5cfNHxGoQSPavvg5aaGnF0VAWc3JJ1tBKuQ=="], @@ -524,11 +568,11 @@ "@esbuild/linux-x64": ["@esbuild/linux-x64@0.19.12", "", { "os": "linux", "cpu": "x64" }, "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg=="], - "@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.25.0", "", { "os": "none", "cpu": "arm64" }, "sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw=="], + "@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.25.1", "", { "os": "none", "cpu": "arm64" }, "sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g=="], "@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.19.12", "", { "os": "none", "cpu": "x64" }, "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA=="], - "@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.25.0", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw=="], + "@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.25.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg=="], "@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.19.12", "", { "os": "openbsd", "cpu": "x64" }, "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw=="], @@ -702,7 +746,7 @@ "@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.0", "", {}, "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="], - "@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.25", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ=="], + "@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.9", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" } }, "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ=="], "@js-sdsl/ordered-map": ["@js-sdsl/ordered-map@4.4.2", "", {}, "sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw=="], @@ -746,6 +790,8 @@ "@nestri/libmoq": ["@nestri/libmoq@workspace:packages/moq"], + "@nestri/maitred": ["@nestri/maitred@workspace:packages/maitred"], + "@nestri/sdk": ["@nestri/sdk@0.1.0-alpha.14", "", { "dependencies": { "@types/node": "^18.11.18", "@types/node-fetch": "^2.6.4", "abort-controller": "^3.0.0", "agentkeepalive": "^4.2.1", "form-data-encoder": "1.7.2", "formdata-node": "^4.3.2", "node-fetch": "^2.6.7" } }, "sha512-K8Vp8wzTZL3NnHuCbiMbeCYr4b0LBCr439jalgwTZ0ubjipV4RTj2AYgvKLzaE9Lv4Mz7e4p7hLlBXO1uuKpQQ=="], "@nestri/ui": ["@nestri/ui@workspace:packages/ui"], @@ -756,11 +802,9 @@ "@nestri/zero": ["@nestri/zero@workspace:packages/zero"], - "@netlify/functions": ["@netlify/functions@3.0.0", "", { "dependencies": { "@netlify/serverless-functions-api": "1.30.1" } }, "sha512-XXf9mNw4+fkxUzukDpJtzc32bl1+YlXZwEhc5ZgMcTbJPLpgRLDs5WWSPJ4eY/Mv1ZFvtxmMwmfgoQYVt68Qog=="], + "@netlify/functions": ["@netlify/functions@3.0.4", "", { "dependencies": { "@netlify/serverless-functions-api": "1.36.0" } }, "sha512-Ox8+ABI+nsLK+c4/oC5dpquXuEIjzfTlJrdQKgQijCsDQoje7inXFAtKDLvvaGvuvE+PVpMLwQcIUL6P9Ob1hQ=="], - "@netlify/node-cookies": ["@netlify/node-cookies@0.1.0", "", {}, "sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g=="], - - "@netlify/serverless-functions-api": ["@netlify/serverless-functions-api@1.30.1", "", { "dependencies": { "@netlify/node-cookies": "^0.1.0", "urlpattern-polyfill": "8.0.2" } }, "sha512-JkbaWFeydQdeDHz1mAy4rw+E3bl9YtbCgkntfTxq+IlNX/aIMv2/b1kZnQZcil4/sPoZGL831Dq6E374qRpU1A=="], + "@netlify/serverless-functions-api": ["@netlify/serverless-functions-api@1.36.0", "", {}, "sha512-z6okREyK8in0486a22Oro0k+YsuyEjDXJt46FpgeOgXqKJ9ElM8QPll0iuLBkpbH33ENiNbIPLd1cuClRQnhiw=="], "@nodelib/fs.scandir": ["@nodelib/fs.scandir@2.1.5", "", { "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" } }, "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g=="], @@ -804,7 +848,7 @@ "@nuxt-themes/typography": ["@nuxt-themes/typography@0.11.0", "", { "dependencies": { "@nuxtjs/color-mode": "^3.2.0", "nuxt-config-schema": "^0.4.5", "nuxt-icon": "^0.3.3", "pinceau": "^0.18.8", "ufo": "^1.1.1" } }, "sha512-TqyvD7sDWnqGmL00VtuI7JdmNTPL5/g957HCAWNzcNp+S20uJjW/FXSdkM76d4JSVDHvBqw7Wer3RsqVhqvA4w=="], - "@nuxt/cli": ["@nuxt/cli@3.22.5", "", { "dependencies": { "c12": "^3.0.2", "chokidar": "^4.0.3", "citty": "^0.1.6", "clipboardy": "^4.0.0", "consola": "^3.4.0", "defu": "^6.1.4", "fuse.js": "^7.1.0", "giget": "^2.0.0", "h3": "^1.15.1", "httpxy": "^0.1.7", "jiti": "^2.4.2", "listhen": "^1.9.0", "nypm": "^0.6.0", "ofetch": "^1.4.1", "ohash": "^2.0.11", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "tinyexec": "^0.3.2", "ufo": "^1.5.4" }, "bin": { "nuxi": "bin/nuxi.mjs", "nuxi-ng": "bin/nuxi.mjs", "nuxt": "bin/nuxi.mjs", "nuxt-cli": "bin/nuxi.mjs" } }, "sha512-vNwmNBQb/T062MxUEqrtSOTvxFHOwSWjzUQSnjUxSqfOrGap/ljx9toT/HngTs1zRHSOBvBz8lxrSju+F/806Q=="], + "@nuxt/cli": ["@nuxt/cli@3.23.1", "", { "dependencies": { "c12": "^3.0.2", "chokidar": "^4.0.3", "citty": "^0.1.6", "clipboardy": "^4.0.0", "consola": "^3.4.2", "defu": "^6.1.4", "fuse.js": "^7.1.0", "giget": "^2.0.0", "h3": "^1.15.1", "httpxy": "^0.1.7", "jiti": "^2.4.2", "listhen": "^1.9.0", "nypm": "^0.6.0", "ofetch": "^1.4.1", "ohash": "^2.0.11", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "tinyexec": "^0.3.2", "ufo": "^1.5.4" }, "bin": { "nuxi": "bin/nuxi.mjs", "nuxi-ng": "bin/nuxi.mjs", "nuxt": "bin/nuxi.mjs", "nuxt-cli": "bin/nuxi.mjs" } }, "sha512-vwHicydSXkpQlrjSOHOMLx4rULMNke1tqT+B2rGkVX9RMWJu9jdvp6GqRWJfqeeLoFG0gYNr02pSp6ulxuwOMQ=="], "@nuxt/content": ["@nuxt/content@2.13.4", "", { "dependencies": { "@nuxt/kit": "^3.13.2", "@nuxtjs/mdc": "^0.9.2", "@vueuse/core": "^11.1.0", "@vueuse/head": "^2.0.0", "@vueuse/nuxt": "^11.1.0", "consola": "^3.2.3", "defu": "^6.1.4", "destr": "^2.0.3", "json5": "^2.2.3", "knitwork": "^1.1.0", "listhen": "^1.9.0", "mdast-util-to-string": "^4.0.0", "mdurl": "^2.0.0", "micromark": "^4.0.0", "micromark-util-sanitize-uri": "^2.0.0", "micromark-util-types": "^2.0.0", "minisearch": "^7.1.0", "ohash": "^1.1.4", "pathe": "^1.1.2", "scule": "^1.3.0", "shiki": "^1.22.0", "slugify": "^1.6.6", "socket.io-client": "^4.8.0", "ufo": "^1.5.4", "unist-util-stringify-position": "^4.0.0", "unstorage": "^1.12.0", "ws": "^8.18.0" } }, "sha512-NBaHL/SNYUK7+RLgOngSFmKqEPYc0dYdnwVFsxIdrOZUoUbD8ERJJDaoRwwtyYCMOgUeFA/zxAkuADytp+DKiQ=="], @@ -824,13 +868,13 @@ "@nuxt/kit": ["@nuxt/kit@3.16.0", "", { "dependencies": { "c12": "^3.0.2", "consola": "^3.4.0", "defu": "^6.1.4", "destr": "^2.0.3", "errx": "^0.1.0", "exsolve": "^1.0.2", "globby": "^14.1.0", "ignore": "^7.0.3", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "mlly": "^1.7.4", "ohash": "^2.0.11", "pathe": "^2.0.3", "pkg-types": "^2.1.0", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "ufo": "^1.5.4", "unctx": "^2.4.1", "unimport": "^4.1.2", "untyped": "^2.0.0" } }, "sha512-yPfhk58BG6wJhELkGOTCOlkMDbZkizk3IaINcyTKm+hBKiK3SheLt7S9HStNL+qZSfH2Cf7A8sYp6M72lOIEtA=="], - "@nuxt/schema": ["@nuxt/schema@3.16.0", "", { "dependencies": { "consola": "^3.4.0", "defu": "^6.1.4", "pathe": "^2.0.3", "std-env": "^3.8.1" } }, "sha512-uCpcqWO6C4P5c4vi1/sq5GyajO0EOp+ZWFtPrnKaJ1pXAhA+W1aMVxAjfi2f18QMJHuRXBz1TouFg1RmWA6FuA=="], + "@nuxt/schema": ["@nuxt/schema@3.16.1", "", { "dependencies": { "consola": "^3.4.2", "defu": "^6.1.4", "pathe": "^2.0.3", "std-env": "^3.8.1" } }, "sha512-Ri8bmT6MljpVR4DlXf9+acfgGaI4OTEdAzJU5aF2rJS78abtpnBxjXBG65kuhoL1LUlfKppDl8fTkUw5LM2JXQ=="], - "@nuxt/telemetry": ["@nuxt/telemetry@2.6.5", "", { "dependencies": { "@nuxt/kit": "^3.15.4", "citty": "^0.1.6", "consola": "^3.4.0", "destr": "^2.0.3", "dotenv": "^16.4.7", "git-url-parse": "^16.0.0", "is-docker": "^3.0.0", "ofetch": "^1.4.1", "package-manager-detector": "^0.2.9", "parse-git-config": "^3.0.0", "pathe": "^2.0.2", "rc9": "^2.1.2", "std-env": "^3.8.0" }, "bin": { "nuxt-telemetry": "bin/nuxt-telemetry.mjs" } }, "sha512-lwMp9OHML/m0mjh7P5iz9PxINnk5smGkGebh88Wh8PjvnRooY1TBsbyq7mlSrNibpwD1BkwqhV5IAZOXWHLxMQ=="], + "@nuxt/telemetry": ["@nuxt/telemetry@2.6.6", "", { "dependencies": { "@nuxt/kit": "^3.15.4", "citty": "^0.1.6", "consola": "^3.4.2", "destr": "^2.0.3", "dotenv": "^16.4.7", "git-url-parse": "^16.0.1", "is-docker": "^3.0.0", "ofetch": "^1.4.1", "package-manager-detector": "^1.1.0", "pathe": "^2.0.3", "rc9": "^2.1.2", "std-env": "^3.8.1" }, "bin": { "nuxt-telemetry": "bin/nuxt-telemetry.mjs" } }, "sha512-Zh4HJLjzvm3Cq9w6sfzIFyH9ozK5ePYVfCUzzUQNiZojFsI2k1QkSBrVI9BGc6ArKXj/O6rkI6w7qQ+ouL8Cag=="], "@nuxt/ui": ["@nuxt/ui@2.21.1", "", { "dependencies": { "@headlessui/tailwindcss": "^0.2.2", "@headlessui/vue": "^1.7.23", "@iconify-json/heroicons": "^1.2.2", "@nuxt/icon": "^1.10.3", "@nuxt/kit": "^3.16.0", "@nuxtjs/color-mode": "^3.5.2", "@nuxtjs/tailwindcss": "^6.13.1", "@popperjs/core": "^2.11.8", "@tailwindcss/aspect-ratio": "^0.4.2", "@tailwindcss/container-queries": "^0.1.1", "@tailwindcss/forms": "^0.5.10", "@tailwindcss/typography": "^0.5.16", "@vueuse/core": "^12.8.2", "@vueuse/integrations": "^12.8.2", "@vueuse/math": "^12.8.2", "defu": "^6.1.4", "fuse.js": "^7.1.0", "ohash": "^2.0.11", "pathe": "^2.0.3", "scule": "^1.3.0", "tailwind-merge": "^2.6.0", "tailwindcss": "^3.4.17" } }, "sha512-Hoe2fSiR/B7E66VnBqqGD50MtjGJ/IiB/j3/BuC4xOgPtXFSUorB7qz5L2kRcbBCfZ0fNfmEjtpriTwSgEcuEg=="], - "@nuxt/vite-builder": ["@nuxt/vite-builder@3.16.0", "", { "dependencies": { "@nuxt/kit": "3.16.0", "@rollup/plugin-replace": "^6.0.2", "@vitejs/plugin-vue": "^5.2.1", "@vitejs/plugin-vue-jsx": "^4.1.1", "autoprefixer": "^10.4.20", "consola": "^3.4.0", "cssnano": "^7.0.6", "defu": "^6.1.4", "esbuild": "^0.25.0", "escape-string-regexp": "^5.0.0", "exsolve": "^1.0.2", "externality": "^1.0.2", "get-port-please": "^3.1.2", "h3": "^1.15.1", "jiti": "^2.4.2", "knitwork": "^1.2.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "ohash": "^2.0.11", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "postcss": "^8.5.3", "rollup-plugin-visualizer": "^5.14.0", "std-env": "^3.8.1", "ufo": "^1.5.4", "unenv": "^2.0.0-rc.12", "unplugin": "^2.2.0", "vite": "^6.2.1", "vite-node": "^3.0.8", "vite-plugin-checker": "^0.9.0", "vue-bundle-renderer": "^2.1.1" }, "peerDependencies": { "vue": "^3.3.4" } }, "sha512-H/mRrDmpWWLIiF1J9jguCKITF0ydFxmgcBcbveQac6vVhaOZunBAv9SsKHZgnH8CDM1v5BnuRNyIQ9y4Y9wW8g=="], + "@nuxt/vite-builder": ["@nuxt/vite-builder@3.16.1", "", { "dependencies": { "@nuxt/kit": "3.16.1", "@rollup/plugin-replace": "^6.0.2", "@vitejs/plugin-vue": "^5.2.3", "@vitejs/plugin-vue-jsx": "^4.1.2", "autoprefixer": "^10.4.21", "consola": "^3.4.2", "cssnano": "^7.0.6", "defu": "^6.1.4", "esbuild": "^0.25.1", "escape-string-regexp": "^5.0.0", "exsolve": "^1.0.4", "externality": "^1.0.2", "get-port-please": "^3.1.2", "h3": "^1.15.1", "jiti": "^2.4.2", "knitwork": "^1.2.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "mocked-exports": "^0.1.1", "ohash": "^2.0.11", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "postcss": "^8.5.3", "rollup-plugin-visualizer": "^5.14.0", "std-env": "^3.8.1", "ufo": "^1.5.4", "unenv": "^2.0.0-rc.15", "unplugin": "^2.2.1", "vite": "^6.2.2", "vite-node": "^3.0.9", "vite-plugin-checker": "^0.9.1", "vue-bundle-renderer": "^2.1.1" }, "peerDependencies": { "vue": "^3.3.4" } }, "sha512-6A/cK743xeGcoMh//Ev1HAybb5VDwovxRsNeubfuqlDxBR7WL695SAfIhEAmxpVDz8LYQBuz/NwGhTaBh7hgaQ=="], "@nuxthq/studio": ["@nuxthq/studio@2.2.1", "", { "dependencies": { "@nuxt/kit": "^3.13.2", "defu": "^6.1.4", "git-url-parse": "^15.0.0", "nuxt-component-meta": "^0.9.0", "parse-git-config": "^3.0.0", "pkg-types": "^1.2.1", "socket.io-client": "^4.8.1", "ufo": "^1.5.4", "untyped": "^1.5.1" } }, "sha512-FiKaC2NBnoKbV5opW8+bXt75R9b7XQ/xtr2bCSLRUca2H7lYypfUAdpYltJasKMgJsUWMNHME92iW5Fi9gb+IA=="], @@ -930,9 +974,9 @@ "@oxc-parser/binding-win32-x64-msvc": ["@oxc-parser/binding-win32-x64-msvc@0.56.5", "", { "os": "win32", "cpu": "x64" }, "sha512-VALZNcuyw/6rwsxOACQ2YS6rey2d/ym4cNfXqJrHB/MZduAPj4xvij72gHGu3Ywm31KVGLVWk/mrMRiM9CINcA=="], - "@oxc-parser/wasm": ["@oxc-parser/wasm@0.56.5", "", { "dependencies": { "@oxc-project/types": "^0.56.5" } }, "sha512-9vtn56ok7PHS0elihFP+Q+alveQuGR0vnF6OeZesxkKWLJr8mCk0kZJx5ZxLjibaPA/sxWTmOyn31UMM9jg9fg=="], + "@oxc-parser/wasm": ["@oxc-parser/wasm@0.60.0", "", { "dependencies": { "@oxc-project/types": "^0.60.0" } }, "sha512-Dkf9/D87WGBCW3L0+1DtpAfL4SrNsgeRvxwjpKCtbH7Kf6K+pxrT0IridaJfmWKu1Ml+fDvj+7HEyBcfUC/TXQ=="], - "@oxc-project/types": ["@oxc-project/types@0.56.5", "", {}, "sha512-skY3kOJwp22W4RkaadH1hZ3hqFHjkRrIIE0uQ4VUg+/Chvbl+2pF+B55IrIk2dgsKXS57YEUsJuN6I6s4rgFjA=="], + "@oxc-project/types": ["@oxc-project/types@0.60.0", "", {}, "sha512-prhfNnb3ATFHOCv7mzKFfwLij5RzoUz6Y1n525ZhCEqfq5wreCXL+DyVoq3ShukPo7q45ZjYIdjFUgjj+WKzng=="], "@parcel/watcher": ["@parcel/watcher@2.5.1", "", { "dependencies": { "detect-libc": "^1.0.3", "is-glob": "^4.0.3", "micromatch": "^4.0.5", "node-addon-api": "^7.0.0" }, "optionalDependencies": { "@parcel/watcher-android-arm64": "2.5.1", "@parcel/watcher-darwin-arm64": "2.5.1", "@parcel/watcher-darwin-x64": "2.5.1", "@parcel/watcher-freebsd-x64": "2.5.1", "@parcel/watcher-linux-arm-glibc": "2.5.1", "@parcel/watcher-linux-arm-musl": "2.5.1", "@parcel/watcher-linux-arm64-glibc": "2.5.1", "@parcel/watcher-linux-arm64-musl": "2.5.1", "@parcel/watcher-linux-x64-glibc": "2.5.1", "@parcel/watcher-linux-x64-musl": "2.5.1", "@parcel/watcher-win32-arm64": "2.5.1", "@parcel/watcher-win32-ia32": "2.5.1", "@parcel/watcher-win32-x64": "2.5.1" } }, "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg=="], @@ -1102,12 +1146,6 @@ "@radix-ui/rect": ["@radix-ui/rect@1.1.0", "", {}, "sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg=="], - "@redocly/ajv": ["@redocly/ajv@8.11.2", "", { "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2", "uri-js-replace": "^1.0.1" } }, "sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg=="], - - "@redocly/config": ["@redocly/config@0.22.1", "", {}, "sha512-1CqQfiG456v9ZgYBG9xRQHnpXjt8WoSnDwdkX6gxktuK69v2037hTAR1eh0DGIqpZ1p4k82cGH8yTNwt7/pI9g=="], - - "@redocly/openapi-core": ["@redocly/openapi-core@1.33.0", "", { "dependencies": { "@redocly/ajv": "^8.11.2", "@redocly/config": "^0.22.0", "colorette": "^1.2.0", "https-proxy-agent": "^7.0.5", "js-levenshtein": "^1.1.6", "js-yaml": "^4.1.0", "minimatch": "^5.0.1", "pluralize": "^8.0.0", "yaml-ast-parser": "0.0.43" } }, "sha512-MUB1jPxYX2NmgiobICcvyrkSbPSaGAb/P/MsxSW+UT9hxpQvDCX81bstGg68BcKIdeFvVRKcoyG4xiTgDOEBfQ=="], - "@rocicorp/lock": ["@rocicorp/lock@1.0.4", "", { "dependencies": { "@rocicorp/resolver": "^1.0.2" } }, "sha512-FavTiO8ETXFXDVfA87IThGduTTTR8iqzBnr/c60gUUmbk7knGEXPmf2B+yiNuluJD0ku0fL2V2r62UXnsLXl6w=="], "@rocicorp/logger": ["@rocicorp/logger@5.3.0", "", {}, "sha512-j5WYYkzpGxkemS9cUEzGvWJFOdrKRSbTXKC6P032oXMnVb5VLr/aN/7RT7jczAwmQgkY2ds+/93CEiua4rCY1A=="], @@ -1126,7 +1164,7 @@ "@rollup/plugin-json": ["@rollup/plugin-json@6.1.0", "", { "dependencies": { "@rollup/pluginutils": "^5.1.0" }, "peerDependencies": { "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA=="], - "@rollup/plugin-node-resolve": ["@rollup/plugin-node-resolve@16.0.0", "", { "dependencies": { "@rollup/pluginutils": "^5.0.1", "@types/resolve": "1.20.2", "deepmerge": "^4.2.2", "is-module": "^1.0.0", "resolve": "^1.22.1" }, "peerDependencies": { "rollup": "^2.78.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-0FPvAeVUT/zdWoO0jnb/V5BlBsUSNfkIOtFHzMO4H9MOklrmQFY6FduVHKucNb/aTFxvnGhj4MNj/T1oNdDfNg=="], + "@rollup/plugin-node-resolve": ["@rollup/plugin-node-resolve@16.0.1", "", { "dependencies": { "@rollup/pluginutils": "^5.0.1", "@types/resolve": "1.20.2", "deepmerge": "^4.2.2", "is-module": "^1.0.0", "resolve": "^1.22.1" }, "peerDependencies": { "rollup": "^2.78.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-tk5YCxJWIG81umIvNkSod2qK5KyQW19qcBF/B78n1bjtOON6gzKoVeSzAE8yHCZEDmqkHKkxplExA8KzdJLJpA=="], "@rollup/plugin-replace": ["@rollup/plugin-replace@6.0.2", "", { "dependencies": { "@rollup/pluginutils": "^5.0.1", "magic-string": "^0.30.3" }, "peerDependencies": { "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-7QaYCf8bqF04dOy7w/eHmJeNExxTYwvKAmlSAH/EaWWUzbT0h5sbF6bktFoX/0F/0qwng5/dWFMyf3gzaM8DsQ=="], @@ -1134,45 +1172,45 @@ "@rollup/pluginutils": ["@rollup/pluginutils@5.1.4", "", { "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^2.0.2", "picomatch": "^4.0.2" }, "peerDependencies": { "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ=="], - "@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.35.0", "", { "os": "android", "cpu": "arm" }, "sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ=="], + "@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.38.0", "", { "os": "android", "cpu": "arm" }, "sha512-ldomqc4/jDZu/xpYU+aRxo3V4mGCV9HeTgUBANI3oIQMOL+SsxB+S2lxMpkFp5UamSS3XuTMQVbsS24R4J4Qjg=="], - "@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.35.0", "", { "os": "android", "cpu": "arm64" }, "sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA=="], + "@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.38.0", "", { "os": "android", "cpu": "arm64" }, "sha512-VUsgcy4GhhT7rokwzYQP+aV9XnSLkkhlEJ0St8pbasuWO/vwphhZQxYEKUP3ayeCYLhk6gEtacRpYP/cj3GjyQ=="], - "@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.35.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q=="], + "@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.38.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg=="], - "@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.35.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q=="], + "@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.38.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg=="], - "@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.35.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ=="], + "@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.38.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-zzJACgjLbQTsscxWqvrEQAEh28hqhebpRz5q/uUd1T7VTwUNZ4VIXQt5hE7ncs0GrF+s7d3S4on4TiXUY8KoQA=="], - "@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.35.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw=="], + "@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.38.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-hCY/KAeYMCyDpEE4pTETam0XZS4/5GXzlLgpi5f0IaPExw9kuB+PDTOTLuPtM10TlRG0U9OSmXJ+Wq9J39LvAg=="], - "@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg=="], + "@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.38.0", "", { "os": "linux", "cpu": "arm" }, "sha512-mimPH43mHl4JdOTD7bUMFhBdrg6f9HzMTOEnzRmXbOZqjijCw8LA5z8uL6LCjxSa67H2xiLFvvO67PT05PRKGg=="], - "@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A=="], + "@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.38.0", "", { "os": "linux", "cpu": "arm" }, "sha512-tPiJtiOoNuIH8XGG8sWoMMkAMm98PUwlriOFCCbZGc9WCax+GLeVRhmaxjJtz6WxrPKACgrwoZ5ia/uapq3ZVg=="], - "@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A=="], + "@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.38.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-wZco59rIVuB0tjQS0CSHTTUcEde+pXQWugZVxWaQFdQQ1VYub/sTrNdY76D1MKdN2NB48JDuGABP6o6fqos8mA=="], - "@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg=="], + "@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.38.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-fQgqwKmW0REM4LomQ+87PP8w8xvU9LZfeLBKybeli+0yHT7VKILINzFEuggvnV9M3x1Ed4gUBmGUzCo/ikmFbQ=="], - "@rollup/rollup-linux-loongarch64-gnu": ["@rollup/rollup-linux-loongarch64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g=="], + "@rollup/rollup-linux-loongarch64-gnu": ["@rollup/rollup-linux-loongarch64-gnu@4.38.0", "", { "os": "linux", "cpu": "none" }, "sha512-hz5oqQLXTB3SbXpfkKHKXLdIp02/w3M+ajp8p4yWOWwQRtHWiEOCKtc9U+YXahrwdk+3qHdFMDWR5k+4dIlddg=="], - "@rollup/rollup-linux-powerpc64le-gnu": ["@rollup/rollup-linux-powerpc64le-gnu@4.35.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA=="], + "@rollup/rollup-linux-powerpc64le-gnu": ["@rollup/rollup-linux-powerpc64le-gnu@4.38.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-NXqygK/dTSibQ+0pzxsL3r4Xl8oPqVoWbZV9niqOnIHV/J92fe65pOir0xjkUZDRSPyFRvu+4YOpJF9BZHQImw=="], - "@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g=="], + "@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.38.0", "", { "os": "linux", "cpu": "none" }, "sha512-GEAIabR1uFyvf/jW/5jfu8gjM06/4kZ1W+j1nWTSSB3w6moZEBm7iBtzwQ3a1Pxos2F7Gz+58aVEnZHU295QTg=="], - "@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.35.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw=="], + "@rollup/rollup-linux-riscv64-musl": ["@rollup/rollup-linux-riscv64-musl@4.38.0", "", { "os": "linux", "cpu": "none" }, "sha512-9EYTX+Gus2EGPbfs+fh7l95wVADtSQyYw4DfSBcYdUEAmP2lqSZY0Y17yX/3m5VKGGJ4UmIH5LHLkMJft3bYoA=="], - "@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA=="], + "@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.38.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-Mpp6+Z5VhB9VDk7RwZXoG2qMdERm3Jw07RNlXHE0bOnEeX+l7Fy4bg+NxfyN15ruuY3/7Vrbpm75J9QHFqj5+Q=="], - "@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg=="], + "@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.38.0", "", { "os": "linux", "cpu": "x64" }, "sha512-vPvNgFlZRAgO7rwncMeE0+8c4Hmc+qixnp00/Uv3ht2x7KYrJ6ERVd3/R0nUtlE6/hu7/HiiNHJ/rP6knRFt1w=="], - "@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.35.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg=="], + "@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.38.0", "", { "os": "linux", "cpu": "x64" }, "sha512-q5Zv+goWvQUGCaL7fU8NuTw8aydIL/C9abAVGCzRReuj5h30TPx4LumBtAidrVOtXnlB+RZkBtExMsfqkMfb8g=="], - "@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.35.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw=="], + "@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.38.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-u/Jbm1BU89Vftqyqbmxdq14nBaQjQX1HhmsdBWqSdGClNaKwhjsg5TpW+5Ibs1mb8Es9wJiMdl86BcmtUVXNZg=="], - "@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.35.0", "", { "os": "win32", "cpu": "x64" }, "sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw=="], + "@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.38.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-mqu4PzTrlpNHHbu5qleGvXJoGgHpChBlrBx/mEhTPpnAL1ZAYFlvHD7rLK839LLKQzqEQMFJfGrrOHItN4ZQqA=="], - "@sec-ant/readable-stream": ["@sec-ant/readable-stream@0.4.1", "", {}, "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg=="], + "@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.38.0", "", { "os": "win32", "cpu": "x64" }, "sha512-jjqy3uWlecfB98Psxb5cD6Fny9Fupv9LrDSPTQZUROqjvZmcCqNu4UMl7qqhlUUGpwiAkotj6GYu4SZdcr/nLw=="], "@shikijs/core": ["@shikijs/core@1.29.2", "", { "dependencies": { "@shikijs/engine-javascript": "1.29.2", "@shikijs/engine-oniguruma": "1.29.2", "@shikijs/types": "1.29.2", "@shikijs/vscode-textmate": "^10.0.1", "@types/hast": "^3.0.4", "hast-util-to-html": "^9.0.4" } }, "sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ=="], @@ -1208,57 +1246,57 @@ "@sindresorhus/merge-streams": ["@sindresorhus/merge-streams@2.3.0", "", {}, "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg=="], - "@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + "@smithy/abort-controller": ["@smithy/abort-controller@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw=="], - "@smithy/config-resolver": ["@smithy/config-resolver@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Igfg8lKu3dRVkTSEm98QpZUvKEOa71jDX4vKRcvJVyRc3UgN3j7vFMf0s7xLQhYmKa8kyJGQgUJDOV5V3neVlQ=="], + "@smithy/config-resolver": ["@smithy/config-resolver@4.1.0", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.2", "@smithy/types": "^4.2.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.2", "tslib": "^2.6.2" } }, "sha512-8smPlwhga22pwl23fM5ew4T9vfLUCeFXlcqNOCD5M5h8VmNPNUE9j6bQSuRXpDSV11L/E/SwEBQuW8hr6+nS1A=="], - "@smithy/core": ["@smithy/core@3.1.5", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.2", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA=="], + "@smithy/core": ["@smithy/core@3.2.0", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.3", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.2", "@smithy/util-stream": "^4.2.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-k17bgQhVZ7YmUvA8at4af1TDpl0NDMBuBKJl8Yg0nrefwmValU+CnA5l/AriVdQNthU/33H3nK71HrLgqOPr1Q=="], - "@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + "@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.2", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.2", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "tslib": "^2.6.2" } }, "sha512-32lVig6jCaWBHnY+OEQ6e6Vnt5vDHaLiydGrwYMW9tPqO688hPGTYRamYJ1EptxEC2rAwJrHWmPoKRBl4iTa8w=="], - "@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA=="], + "@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.2", "", { "dependencies": { "@smithy/protocol-http": "^5.1.0", "@smithy/querystring-builder": "^4.0.2", "@smithy/types": "^4.2.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ=="], - "@smithy/hash-node": ["@smithy/hash-node@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-TJ6oZS+3r2Xu4emVse1YPB3Dq3d8RkZDKcPr71Nj/lJsdAP1c7oFzYqEn1IBc915TsgLl2xIJNuxCz+gLbLE0w=="], + "@smithy/hash-node": ["@smithy/hash-node@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-VnTpYPnRUE7yVhWozFdlxcYknv9UN7CeOqSrMH+V877v4oqtVYuoqhIhtSjmGPvYrYnAkaM61sLMKHvxL138yg=="], - "@smithy/invalid-dependency": ["@smithy/invalid-dependency@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gdudFPf4QRQ5pzj7HEnu6FhKRi61BfH/Gk5Yf6O0KiSbr1LlVhgjThcvjdu658VE6Nve8vaIWB8/fodmS1rBPQ=="], + "@smithy/invalid-dependency": ["@smithy/invalid-dependency@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-GatB4+2DTpgWPday+mnUkoumP54u/MDM/5u44KF9hIu8jF0uafZtQLcdfIKkIcUNuF/fBojpLEHZS/56JqPeXQ=="], "@smithy/is-array-buffer": ["@smithy/is-array-buffer@4.0.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-saYhF8ZZNoJDTvJBEWgeBccCg+yvp1CX+ed12yORU3NilJScfc6gfch2oVb4QgxZrGUx3/ZJlb+c/dJbyupxlw=="], "@smithy/md5-js": ["@smithy/md5-js@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLZ647L27APi6zXkZlzSFZIjpo8po45YiyjMGJZM3gyDY8n7dPGdmxIIljLm4gPt/7rRvutLTTkYJpZVfG5r+A=="], - "@smithy/middleware-content-length": ["@smithy/middleware-content-length@4.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-OGXo7w5EkB5pPiac7KNzVtfCW2vKBTZNuCctn++TTSOMpe6RZO/n6WEC1AxJINn3+vWLKW49uad3lo/u0WJ9oQ=="], + "@smithy/middleware-content-length": ["@smithy/middleware-content-length@4.0.2", "", { "dependencies": { "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-hAfEXm1zU+ELvucxqQ7I8SszwQ4znWMbNv6PLMndN83JJN41EPuS93AIyh2N+gJ6x8QFhzSO6b7q2e6oClDI8A=="], - "@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.0.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-serde": "^4.0.2", "@smithy/node-config-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg=="], + "@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.1.0", "", { "dependencies": { "@smithy/core": "^3.2.0", "@smithy/middleware-serde": "^4.0.3", "@smithy/node-config-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-middleware": "^4.0.2", "tslib": "^2.6.2" } }, "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA=="], - "@smithy/middleware-retry": ["@smithy/middleware-retry@4.0.7", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/service-error-classification": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "sha512-58j9XbUPLkqAcV1kHzVX/kAR16GT+j7DUZJqwzsxh1jtz7G82caZiGyyFgUvogVfNTg3TeAOIJepGc8TXF4AVQ=="], + "@smithy/middleware-retry": ["@smithy/middleware-retry@4.1.0", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.2", "@smithy/protocol-http": "^5.1.0", "@smithy/service-error-classification": "^4.0.2", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "@smithy/util-middleware": "^4.0.2", "@smithy/util-retry": "^4.0.2", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "sha512-2zAagd1s6hAaI/ap6SXi5T3dDwBOczOMCSkkYzktqN1+tzbk1GAsHNAdo/1uzxz3Ky02jvZQwbi/vmDA6z4Oyg=="], - "@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + "@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.3", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A=="], - "@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA=="], + "@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ=="], - "@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.1", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ=="], + "@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.2", "", { "dependencies": { "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw=="], - "@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.3", "", { "dependencies": { "@smithy/abort-controller": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA=="], + "@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.4", "", { "dependencies": { "@smithy/abort-controller": "^4.0.2", "@smithy/protocol-http": "^5.1.0", "@smithy/querystring-builder": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g=="], - "@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + "@smithy/property-provider": ["@smithy/property-provider@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-wNRoQC1uISOuNc2s4hkOYwYllmiyrvVXWMtq+TysNRVQaHm4yoafYQyjN/goYZS+QbYlPIbb/QRjaUZMuzwQ7A=="], - "@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + "@smithy/protocol-http": ["@smithy/protocol-http@5.1.0", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g=="], - "@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + "@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q=="], - "@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw=="], + "@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q=="], - "@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + "@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0" } }, "sha512-LA86xeFpTKn270Hbkixqs5n73S+LVM0/VZco8dqd+JT75Dyx3Lcw/MraL7ybjmz786+160K8rPOmhsq0SocoJQ=="], - "@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + "@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw=="], - "@smithy/signature-v4": ["@smithy/signature-v4@5.0.1", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA=="], + "@smithy/signature-v4": ["@smithy/signature-v4@5.0.2", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.2", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-Mz+mc7okA73Lyz8zQKJNyr7lIcHLiPYp0+oiqiMNc/t7/Kf2BENs5d63pEj7oPqdjaum6g0Fc8wC78dY1TgtXw=="], - "@smithy/smithy-client": ["@smithy/smithy-client@4.1.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-stack": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw=="], + "@smithy/smithy-client": ["@smithy/smithy-client@4.2.0", "", { "dependencies": { "@smithy/core": "^3.2.0", "@smithy/middleware-endpoint": "^4.1.0", "@smithy/middleware-stack": "^4.0.2", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "@smithy/util-stream": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw=="], - "@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + "@smithy/types": ["@smithy/types@4.2.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg=="], - "@smithy/url-parser": ["@smithy/url-parser@4.0.1", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g=="], + "@smithy/url-parser": ["@smithy/url-parser@4.0.2", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ=="], "@smithy/util-base64": ["@smithy/util-base64@4.0.0", "", { "dependencies": { "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-CvHfCmO2mchox9kjrtzoHkWHxjHZzaFojLc8quxXY7WAAMAg43nuxwv95tATVgQFNDwd4M9S1qFzj40Ul41Kmg=="], @@ -1270,19 +1308,19 @@ "@smithy/util-config-provider": ["@smithy/util-config-provider@4.0.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-L1RBVzLyfE8OXH+1hsJ8p+acNUSirQnWQ6/EgpchV88G6zGBTDPdXiiExei6Z1wR2RxYvxY/XLw6AMNCCt8H3w=="], - "@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.0.7", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-CZgDDrYHLv0RUElOsmZtAnp1pIjwDVCSuZWOPhIOBvG36RDfX1Q9+6lS61xBf+qqvHoqRjHxgINeQz47cYFC2Q=="], + "@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.0.8", "", { "dependencies": { "@smithy/property-provider": "^4.0.2", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-ZTypzBra+lI/LfTYZeop9UjoJhhGRTg3pxrNpfSTQLd3AJ37r2z4AXTKpq1rFXiiUIJsYyFgNJdjWRGP/cbBaQ=="], - "@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.0.7", "", { "dependencies": { "@smithy/config-resolver": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-79fQW3hnfCdrfIi1soPbK3zmooRFnLpSx3Vxi6nUlqaaQeC5dm8plt4OTNDNqEEEDkvKghZSaoti684dQFVrGQ=="], + "@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.0.8", "", { "dependencies": { "@smithy/config-resolver": "^4.1.0", "@smithy/credential-provider-imds": "^4.0.2", "@smithy/node-config-provider": "^4.0.2", "@smithy/property-provider": "^4.0.2", "@smithy/smithy-client": "^4.2.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-Rgk0Jc/UDfRTzVthye/k2dDsz5Xxs9LZaKCNPgJTRyoyBoeiNCnHsYGOyu1PKN+sDyPnJzMOz22JbwxzBp9NNA=="], - "@smithy/util-endpoints": ["@smithy/util-endpoints@3.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-zVdUENQpdtn9jbpD9SCFK4+aSiavRb9BxEtw9ZGUR1TYo6bBHbIoi7VkrFQ0/RwZlzx0wRBaRmPclj8iAoJCLA=="], + "@smithy/util-endpoints": ["@smithy/util-endpoints@3.0.2", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-6QSutU5ZyrpNbnd51zRTL7goojlcnuOB55+F9VBD+j8JpRY50IGamsjlycrmpn8PQkmJucFW8A0LSfXj7jjtLQ=="], "@smithy/util-hex-encoding": ["@smithy/util-hex-encoding@4.0.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-Yk5mLhHtfIgW2W2WQZWSg5kuMZCVbvhFmC7rV4IO2QqnZdbEFPmQnCcGMAX2z/8Qj3B9hYYNjZOhWym+RwhePw=="], - "@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + "@smithy/util-middleware": ["@smithy/util-middleware@4.0.2", "", { "dependencies": { "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-6GDamTGLuBQVAEuQ4yDQ+ti/YINf/MEmIegrEeg7DdB/sld8BX1lqt9RRuIcABOhAGTA50bRbPzErez7SlDtDQ=="], - "@smithy/util-retry": ["@smithy/util-retry@4.0.1", "", { "dependencies": { "@smithy/service-error-classification": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-WmRHqNVwn3kI3rKk1LsKcVgPBG6iLTBGC1iYOV3GQegwJ3E8yjzHytPt26VNzOWr1qu0xE03nK0Ug8S7T7oufw=="], + "@smithy/util-retry": ["@smithy/util-retry@4.0.2", "", { "dependencies": { "@smithy/service-error-classification": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-Qryc+QG+7BCpvjloFLQrmlSd0RsVRHejRXd78jNO3+oREueCjwG1CCEH1vduw/ZkM1U9TztwIKVIi3+8MJScGg=="], - "@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + "@smithy/util-stream": ["@smithy/util-stream@4.2.0", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.2", "@smithy/node-http-handler": "^4.0.4", "@smithy/types": "^4.2.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ=="], "@smithy/util-uri-escape": ["@smithy/util-uri-escape@4.0.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-77yfbCbQMtgtTylO9itEAdpPXSog3ZxMe09AEhm0dU0NLTalV70ghDZFR+Nfi1C60jnJoh/Re4090/DuZh2Omg=="], @@ -1334,6 +1372,14 @@ "@tsconfig/bun": ["@tsconfig/bun@1.0.7", "", {}, "sha512-udGrGJBNQdXGVulehc1aWT73wkR9wdaGBtB6yL70RJsqwW/yJhIg6ZbRlPOfIUiFNrnBuYLBi9CSmMKfDC7dvA=="], + "@tsconfig/node10": ["@tsconfig/node10@1.0.11", "", {}, "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw=="], + + "@tsconfig/node12": ["@tsconfig/node12@1.0.11", "", {}, "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag=="], + + "@tsconfig/node14": ["@tsconfig/node14@1.0.3", "", {}, "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow=="], + + "@tsconfig/node16": ["@tsconfig/node16@1.0.4", "", {}, "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA=="], + "@tsconfig/node20": ["@tsconfig/node20@20.1.4", "", {}, "sha512-sqgsT69YFeLWf5NtJ4Xq/xAF8p4ZQHlmGW74Nu2tD4+g5fAsposc4ZfaaPixVu4y01BEiDCWLRDCvDM5JOsRxg=="], "@tufjs/canonical-json": ["@tufjs/canonical-json@2.0.0", "", {}, "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA=="], @@ -1356,7 +1402,7 @@ "@types/babel__traverse": ["@types/babel__traverse@7.20.6", "", { "dependencies": { "@babel/types": "^7.20.7" } }, "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg=="], - "@types/bun": ["@types/bun@1.2.5", "", { "dependencies": { "bun-types": "1.2.5" } }, "sha512-w2OZTzrZTVtbnJew1pdFmgV99H0/L+Pvw+z1P67HaR18MHOzYnTYOi6qzErhK8HyT+DB782ADVPPE92Xu2/Opg=="], + "@types/bun": ["@types/bun@1.2.9", "", { "dependencies": { "bun-types": "1.2.9" } }, "sha512-epShhLGQYc4Bv/aceHbmBhOz1XgUnuTZgcxjxk+WXwNyDXavv5QHD1QEFV0FwbTSQtNq6g4ZcV6y0vZakTjswg=="], "@types/cacheable-request": ["@types/cacheable-request@6.0.3", "", { "dependencies": { "@types/http-cache-semantics": "*", "@types/keyv": "^3.1.4", "@types/node": "*", "@types/responselike": "^1.0.0" } }, "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw=="], @@ -1382,8 +1428,6 @@ "@types/http-cache-semantics": ["@types/http-cache-semantics@4.0.4", "", {}, "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA=="], - "@types/http-proxy": ["@types/http-proxy@1.17.16", "", { "dependencies": { "@types/node": "*" } }, "sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w=="], - "@types/json-schema": ["@types/json-schema@7.0.15", "", {}, "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="], "@types/keyv": ["@types/keyv@3.1.4", "", { "dependencies": { "@types/node": "*" } }, "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg=="], @@ -1420,6 +1464,8 @@ "@types/responselike": ["@types/responselike@1.0.3", "", { "dependencies": { "@types/node": "*" } }, "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw=="], + "@types/retry": ["@types/retry@0.12.2", "", {}, "sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow=="], + "@types/semver": ["@types/semver@7.5.8", "", {}, "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ=="], "@types/shimmer": ["@types/shimmer@1.2.0", "", {}, "sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg=="], @@ -1434,21 +1480,21 @@ "@types/ws": ["@types/ws@8.18.0", "", { "dependencies": { "@types/node": "*" } }, "sha512-8svvI3hMyvN0kKCJMvTJP/x6Y/EoQbepff882wL+Sn5QsXb3etnamgrJq4isrBxSJj5L2AuXcI0+bgkoAXGUJw=="], - "@typescript-eslint/eslint-plugin": ["@typescript-eslint/eslint-plugin@8.27.0", "", { "dependencies": { "@eslint-community/regexpp": "^4.10.0", "@typescript-eslint/scope-manager": "8.27.0", "@typescript-eslint/type-utils": "8.27.0", "@typescript-eslint/utils": "8.27.0", "@typescript-eslint/visitor-keys": "8.27.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-4henw4zkePi5p252c8ncBLzLce52SEUz2Ebj8faDnuUXz2UuHEONYcJ+G0oaCF+bYCWVZtrGzq3FD7YXetmnSA=="], + "@typescript-eslint/eslint-plugin": ["@typescript-eslint/eslint-plugin@8.29.1", "", { "dependencies": { "@eslint-community/regexpp": "^4.10.0", "@typescript-eslint/scope-manager": "8.29.1", "@typescript-eslint/type-utils": "8.29.1", "@typescript-eslint/utils": "8.29.1", "@typescript-eslint/visitor-keys": "8.29.1", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-ba0rr4Wfvg23vERs3eB+P3lfj2E+2g3lhWcCVukUuhtcdUx5lSIFZlGFEBHKr+3zizDa/TvZTptdNHVZWAkSBg=="], - "@typescript-eslint/parser": ["@typescript-eslint/parser@8.27.0", "", { "dependencies": { "@typescript-eslint/scope-manager": "8.27.0", "@typescript-eslint/types": "8.27.0", "@typescript-eslint/typescript-estree": "8.27.0", "@typescript-eslint/visitor-keys": "8.27.0", "debug": "^4.3.4" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-XGwIabPallYipmcOk45DpsBSgLC64A0yvdAkrwEzwZ2viqGqRUJ8eEYoPz0CWnutgAFbNMPdsGGvzjSmcWVlEA=="], + "@typescript-eslint/parser": ["@typescript-eslint/parser@8.29.1", "", { "dependencies": { "@typescript-eslint/scope-manager": "8.29.1", "@typescript-eslint/types": "8.29.1", "@typescript-eslint/typescript-estree": "8.29.1", "@typescript-eslint/visitor-keys": "8.29.1", "debug": "^4.3.4" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-zczrHVEqEaTwh12gWBIJWj8nx+ayDcCJs06yoNMY0kwjMWDM6+kppljY+BxWI06d2Ja+h4+WdufDcwMnnMEWmg=="], - "@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.27.0", "", { "dependencies": { "@typescript-eslint/types": "8.27.0", "@typescript-eslint/visitor-keys": "8.27.0" } }, "sha512-8oI9GwPMQmBryaaxG1tOZdxXVeMDte6NyJA4i7/TWa4fBwgnAXYlIQP+uYOeqAaLJ2JRxlG9CAyL+C+YE9Xknw=="], + "@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.29.1", "", { "dependencies": { "@typescript-eslint/types": "8.29.1", "@typescript-eslint/visitor-keys": "8.29.1" } }, "sha512-2nggXGX5F3YrsGN08pw4XpMLO1Rgtnn4AzTegC2MDesv6q3QaTU5yU7IbS1tf1IwCR0Hv/1EFygLn9ms6LIpDA=="], - "@typescript-eslint/type-utils": ["@typescript-eslint/type-utils@8.27.0", "", { "dependencies": { "@typescript-eslint/typescript-estree": "8.27.0", "@typescript-eslint/utils": "8.27.0", "debug": "^4.3.4", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-wVArTVcz1oJOIEJxui/nRhV0TXzD/zMSOYi/ggCfNq78EIszddXcJb7r4RCp/oBrjt8n9A0BSxRMKxHftpDxDA=="], + "@typescript-eslint/type-utils": ["@typescript-eslint/type-utils@8.29.1", "", { "dependencies": { "@typescript-eslint/typescript-estree": "8.29.1", "@typescript-eslint/utils": "8.29.1", "debug": "^4.3.4", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-DkDUSDwZVCYN71xA4wzySqqcZsHKic53A4BLqmrWFFpOpNSoxX233lwGu/2135ymTCR04PoKiEEEvN1gFYg4Tw=="], - "@typescript-eslint/types": ["@typescript-eslint/types@8.27.0", "", {}, "sha512-/6cp9yL72yUHAYq9g6DsAU+vVfvQmd1a8KyA81uvfDE21O2DwQ/qxlM4AR8TSdAu+kJLBDrEHKC5/W2/nxsY0A=="], + "@typescript-eslint/types": ["@typescript-eslint/types@8.29.1", "", {}, "sha512-VT7T1PuJF1hpYC3AGm2rCgJBjHL3nc+A/bhOp9sGMKfi5v0WufsX/sHCFBfNTx2F+zA6qBc/PD0/kLRLjdt8mQ=="], - "@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.27.0", "", { "dependencies": { "@typescript-eslint/types": "8.27.0", "@typescript-eslint/visitor-keys": "8.27.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "typescript": ">=4.8.4 <5.9.0" } }, "sha512-BnKq8cqPVoMw71O38a1tEb6iebEgGA80icSxW7g+kndx0o6ot6696HjG7NdgfuAVmVEtwXUr3L8R9ZuVjoQL6A=="], + "@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.29.1", "", { "dependencies": { "@typescript-eslint/types": "8.29.1", "@typescript-eslint/visitor-keys": "8.29.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "typescript": ">=4.8.4 <5.9.0" } }, "sha512-l1enRoSaUkQxOQnbi0KPUtqeZkSiFlqrx9/3ns2rEDhGKfTa+88RmXqedC1zmVTOWrLc2e6DEJrTA51C9iLH5g=="], - "@typescript-eslint/utils": ["@typescript-eslint/utils@8.27.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@typescript-eslint/scope-manager": "8.27.0", "@typescript-eslint/types": "8.27.0", "@typescript-eslint/typescript-estree": "8.27.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-njkodcwH1yvmo31YWgRHNb/x1Xhhq4/m81PhtvmRngD8iHPehxffz1SNCO+kwaePhATC+kOa/ggmvPoPza5i0Q=="], + "@typescript-eslint/utils": ["@typescript-eslint/utils@8.29.1", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@typescript-eslint/scope-manager": "8.29.1", "@typescript-eslint/types": "8.29.1", "@typescript-eslint/typescript-estree": "8.29.1" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-QAkFEbytSaB8wnmB+DflhUPz6CLbFWE2SnSCrRMEa+KnXIzDYbpsn++1HGvnfAsUY44doDXmvRkO5shlM/3UfA=="], - "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.27.0", "", { "dependencies": { "@typescript-eslint/types": "8.27.0", "eslint-visitor-keys": "^4.2.0" } }, "sha512-WsXQwMkILJvffP6z4U3FYJPlbf/j07HIxmDjZpbNvBJkMfvwXj5ACRkkHwBDvLBbDbtX5TdU64/rcvKJ/vuInQ=="], + "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.29.1", "", { "dependencies": { "@typescript-eslint/types": "8.29.1", "eslint-visitor-keys": "^4.2.0" } }, "sha512-RGLh5CRaUEf02viP5c1Vh1cMGffQscyHe7HPAzGpfmfflFg1wUz2rYxd+OZqwpeypYvZ8UxSxuIpF++fmOzEcg=="], "@typescript/lib-dom": ["@types/web@0.0.115", "", {}, "sha512-IBtUgtxnITC7WTCg4tv6kCnSP0T+fM+3PzQPIzLzJY1DDlhBFKM/9+uMURw14YweWPDiFNIZ94Gc1bJtwow97g=="], @@ -1464,7 +1510,7 @@ "@unhead/ssr": ["@unhead/ssr@1.11.20", "", { "dependencies": { "@unhead/schema": "1.11.20", "@unhead/shared": "1.11.20" } }, "sha512-j6ehzmdWGAvv0TEZyLE3WBnG1ULnsbKQcLqBDh3fvKS6b3xutcVZB7mjvrVE7ckSZt6WwOtG0ED3NJDS7IjzBA=="], - "@unhead/vue": ["@unhead/vue@2.0.0-rc.9", "", { "dependencies": { "hookable": "^5.5.3", "unhead": "2.0.0-rc.9" }, "peerDependencies": { "vue": ">=3.5.13" } }, "sha512-bXQAMVqU6TFtThcvs4II1C/WOHXEcihSWNPahx1IlzAD2J/uZAb5QEIds4sM7yyLFwBPbQgqr175m67QfDRS4g=="], + "@unhead/vue": ["@unhead/vue@2.0.2", "", { "dependencies": { "hookable": "^5.5.3", "unhead": "2.0.2" }, "peerDependencies": { "vue": ">=3.5.13" } }, "sha512-pUGcbmPNCALOVWnQRtIjJ5ubNaZus3nHfCBDPEVwhbiLzeLF6wbhgTakwksZ1EegKNOZwRAkmVbV6i+23OYEUQ=="], "@unocss/reset": ["@unocss/reset@0.50.8", "", {}, "sha512-2WoM6O9VyuHDPAnvCXr7LBJQ8ZRHDnuQAFsL1dWXp561Iq2l9whdNtPuMcozLGJGUUrFfVBXIrHY4sfxxScgWg=="], @@ -1486,9 +1532,9 @@ "@vercel/nft": ["@vercel/nft@0.29.2", "", { "dependencies": { "@mapbox/node-pre-gyp": "^2.0.0", "@rollup/pluginutils": "^5.1.3", "acorn": "^8.6.0", "acorn-import-attributes": "^1.9.5", "async-sema": "^3.1.1", "bindings": "^1.4.0", "estree-walker": "2.0.2", "glob": "^10.4.5", "graceful-fs": "^4.2.9", "node-gyp-build": "^4.2.2", "picomatch": "^4.0.2", "resolve-from": "^5.0.0" }, "bin": { "nft": "out/cli.js" } }, "sha512-A/Si4mrTkQqJ6EXJKv5EYCDQ3NL6nJXxG8VGXePsaiQigsomHYQC9xSpX8qGk7AEZk4b1ssbYIqJ0ISQQ7bfcA=="], - "@vitejs/plugin-vue": ["@vitejs/plugin-vue@5.2.1", "", { "peerDependencies": { "vite": "^5.0.0 || ^6.0.0", "vue": "^3.2.25" } }, "sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ=="], + "@vitejs/plugin-vue": ["@vitejs/plugin-vue@5.2.3", "", { "peerDependencies": { "vite": "^5.0.0 || ^6.0.0", "vue": "^3.2.25" } }, "sha512-IYSLEQj4LgZZuoVpdSUCw3dIynTWQgPlaRP6iAvMle4My0HdYwr5g5wQAfwOeHQBmYwEkqF70nRpSilr6PoUDg=="], - "@vitejs/plugin-vue-jsx": ["@vitejs/plugin-vue-jsx@4.1.1", "", { "dependencies": { "@babel/core": "^7.26.0", "@babel/plugin-transform-typescript": "^7.25.9", "@vue/babel-plugin-jsx": "^1.2.5" }, "peerDependencies": { "vite": "^5.0.0 || ^6.0.0", "vue": "^3.0.0" } }, "sha512-uMJqv/7u1zz/9NbWAD3XdjaY20tKTf17XVfQ9zq4wY1BjsB/PjpJPMe2xiG39QpP4ZdhYNhm4Hvo66uJrykNLA=="], + "@vitejs/plugin-vue-jsx": ["@vitejs/plugin-vue-jsx@4.1.2", "", { "dependencies": { "@babel/core": "^7.26.7", "@babel/plugin-transform-typescript": "^7.26.7", "@vue/babel-plugin-jsx": "^1.2.5" }, "peerDependencies": { "vite": "^5.0.0 || ^6.0.0", "vue": "^3.0.0" } }, "sha512-4Rk0GdE0QCdsIkuMmWeg11gmM4x8UmTnZR/LWPm7QJ7+BsK4tq08udrN0isrrWqz5heFy9HLV/7bOLgFS8hUjA=="], "@volar/language-core": ["@volar/language-core@1.4.1", "", { "dependencies": { "@volar/source-map": "1.4.1" } }, "sha512-EIY+Swv+TjsWpxOxujjMf1ZXqOjg9MT2VMXZ+1dKva0wD8W0L6EtptFFcCJdBbcKmGMFkr57Qzz9VNMWhs3jXQ=="], @@ -1558,7 +1604,7 @@ "accepts": ["accepts@2.0.0", "", { "dependencies": { "mime-types": "^3.0.0", "negotiator": "^1.0.0" } }, "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng=="], - "acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "acorn": ["acorn@8.14.1", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg=="], "acorn-import-attributes": ["acorn-import-attributes@1.9.5", "", { "peerDependencies": { "acorn": "^8" } }, "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ=="], @@ -1566,6 +1612,8 @@ "acorn-walk": ["acorn-walk@8.3.2", "", {}, "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A=="], + "actor-core": ["actor-core@0.7.9", "", { "dependencies": { "cbor-x": "^1.6.0", "hono": "^4.7.0", "invariant": "^2.2.4", "on-change": "^5.0.1", "p-retry": "^6.2.1", "zod": "^3.24.1" }, "peerDependencies": { "eventsource": "^3.0.5", "ws": "^8.0.0" }, "optionalPeers": ["eventsource", "ws"], "bin": "./dist/cli/mod.cjs" }, "sha512-ouuPMNfdPwwdTMukiXxpLfsLFI8LFUO3AEzFHYt3MUDHMXSOVkKaoC2i9vJE3/aeinJp1dyHEmhR1EJyFx2d+A=="], + "agent-base": ["agent-base@7.1.3", "", {}, "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw=="], "agentkeepalive": ["agentkeepalive@4.6.0", "", { "dependencies": { "humanize-ms": "^1.2.1" } }, "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ=="], @@ -1578,8 +1626,6 @@ "alien-signals": ["alien-signals@1.0.4", "", {}, "sha512-DJqqQD3XcsaQcQ1s+iE2jDUZmmQpXwHiR6fCAim/w87luaW+vmLY8fMlrdkmRwzaFXhkxf3rqPCR59tKVv1MDw=="], - "ansi-colors": ["ansi-colors@4.1.3", "", {}, "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw=="], - "ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="], "ansi-styles": ["ansi-styles@4.3.0", "", { "dependencies": { "color-convert": "^2.0.1" } }, "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="], @@ -1744,6 +1790,10 @@ "capital-case": ["capital-case@1.0.4", "", { "dependencies": { "no-case": "^3.0.4", "tslib": "^2.0.3", "upper-case-first": "^2.0.2" } }, "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A=="], + "cbor-extract": ["cbor-extract@2.2.0", "", { "dependencies": { "node-gyp-build-optional-packages": "5.1.1" }, "optionalDependencies": { "@cbor-extract/cbor-extract-darwin-arm64": "2.2.0", "@cbor-extract/cbor-extract-darwin-x64": "2.2.0", "@cbor-extract/cbor-extract-linux-arm": "2.2.0", "@cbor-extract/cbor-extract-linux-arm64": "2.2.0", "@cbor-extract/cbor-extract-linux-x64": "2.2.0", "@cbor-extract/cbor-extract-win32-x64": "2.2.0" }, "bin": { "download-cbor-prebuilds": "bin/download-prebuilds.js" } }, "sha512-Ig1zM66BjLfTXpNgKpvBePq271BPOvu8MR0Jl080yG7Jsl+wAZunfrwiwA+9ruzm/WEdIV5QF/bjDZTqyAIVHA=="], + + "cbor-x": ["cbor-x@1.6.0", "", { "optionalDependencies": { "cbor-extract": "^2.2.0" } }, "sha512-0kareyRwHSkL6ws5VXHEf8uY1liitysCVJjlmhaLG+IXLqhSaOO+t63coaso7yjwEzWZzLy8fJo06gZDVQM9Qg=="], + "ccount": ["ccount@2.0.1", "", {}, "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg=="], "chalk": ["chalk@4.1.2", "", { "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } }, "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="], @@ -1810,8 +1860,6 @@ "colord": ["colord@2.9.3", "", {}, "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw=="], - "colorette": ["colorette@1.4.0", "", {}, "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g=="], - "combined-stream": ["combined-stream@1.0.8", "", { "dependencies": { "delayed-stream": "~1.0.0" } }, "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="], "comma-separated-tokens": ["comma-separated-tokens@2.0.3", "", {}, "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg=="], @@ -1876,6 +1924,8 @@ "crc32-stream": ["crc32-stream@6.0.0", "", { "dependencies": { "crc-32": "^1.2.0", "readable-stream": "^4.0.0" } }, "sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g=="], + "create-require": ["create-require@1.1.1", "", {}, "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ=="], + "croner": ["croner@9.0.0", "", {}, "sha512-onMB0OkDjkXunhdW9htFjEhqrD54+M94i6ackoUkjHKbRnXdyEyKRelp4nJ1kAz32+s27jP1FsebpJCVl0BsvA=="], "cronstrue": ["cronstrue@2.56.0", "", { "bin": { "cronstrue": "bin/cli.js" } }, "sha512-/YC3b4D/E/S8ToQ7f676A2fqoC3vVpXKjJ4SMsP0jYsvRYJdZ6h9+Fq/Y7FoFDEUFCqLTca+G2qTV227lyyFZg=="], @@ -1982,7 +2032,7 @@ "didyoumean": ["didyoumean@1.2.2", "", {}, "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw=="], - "diff": ["diff@7.0.0", "", {}, "sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw=="], + "diff": ["diff@4.0.2", "", {}, "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A=="], "dijkstrajs": ["dijkstrajs@1.0.3", "", {}, "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="], @@ -2140,7 +2190,7 @@ "eslint-plugin-jsdoc": ["eslint-plugin-jsdoc@50.6.3", "", { "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.6", "escape-string-regexp": "^4.0.0", "espree": "^10.1.0", "esquery": "^1.6.0", "parse-imports": "^2.1.1", "semver": "^7.6.3", "spdx-expression-parse": "^4.0.0", "synckit": "^0.9.1" }, "peerDependencies": { "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" } }, "sha512-NxbJyt1M5zffPcYZ8Nb53/8nnbIScmiLAMdoe0/FAszwb7lcSiX3iYBTsuF7RV84dZZJC8r3NghomrUXsmWvxQ=="], - "eslint-plugin-qwik": ["eslint-plugin-qwik@1.12.1", "", { "dependencies": { "@typescript-eslint/utils": "^8.12.2", "jsx-ast-utils": "^3.3.5" }, "peerDependencies": { "eslint": "^8.57.0" } }, "sha512-TcRmlddWP1Qk0TcwLcS6Hu7+DYnpiwR+DvsPNqpcqOpModjXgtQ2keBvjCJ0y2Zoe18QPE1FES3HWnrHMhnKig=="], + "eslint-plugin-qwik": ["eslint-plugin-qwik@1.13.0", "", { "dependencies": { "@typescript-eslint/utils": "^8.12.2", "jsx-ast-utils": "^3.3.5" } }, "sha512-7qF4Sq36KY0a8ktCzZac8Q2BBzjAqLb7Stcjwxh4hwO/AD2CcQIl3ZXGvRM57w9siYlmyegUfvxZBCcuvm/4gA=="], "eslint-plugin-regexp": ["eslint-plugin-regexp@2.7.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.11.0", "comment-parser": "^1.4.0", "jsdoc-type-pratt-parser": "^4.0.0", "refa": "^0.12.1", "regexp-ast-analysis": "^0.7.1", "scslre": "^0.3.0" }, "peerDependencies": { "eslint": ">=8.44.0" } }, "sha512-U8oZI77SBtH8U3ulZ05iu0qEzIizyEDXd+BWHvyVxTOjGwcDcvy/kEpgFG4DYca2ByRLiVPFZ2GeH7j1pdvZTA=="], @@ -2192,9 +2242,9 @@ "events": ["events@1.1.1", "", {}, "sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw=="], - "eventsource": ["eventsource@3.0.5", "", { "dependencies": { "eventsource-parser": "^3.0.0" } }, "sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw=="], + "eventsource": ["eventsource@3.0.6", "", { "dependencies": { "eventsource-parser": "^3.0.1" } }, "sha512-l19WpE2m9hSuyP06+FbuUUf1G+R0SFLrtQfbRb9PRr+oimOfxQhgGCbVaXg5IvZyyTThJsxh6L/srkMiCeBPDA=="], - "eventsource-parser": ["eventsource-parser@3.0.0", "", {}, "sha512-T1C0XCUimhxVQzW4zFipdx0SficT651NnkR0ZSH3yQwh+mFMdLfgjABVi4YtMTtaL4s168593DaoaRLMqryavA=="], + "eventsource-parser": ["eventsource-parser@3.0.1", "", {}, "sha512-VARTJ9CYeuQYb0pZEPbzi740OWFgpHe7AYJ2WFZVnUDUQp5Dk2yJUgF36YsZ81cOyxT0QxmXD2EQpapAouzWVA=="], "execa": ["execa@5.1.1", "", { "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", "human-signals": "^2.1.0", "is-stream": "^2.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^4.0.1", "onetime": "^5.1.2", "signal-exit": "^3.0.3", "strip-final-newline": "^2.0.0" } }, "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg=="], @@ -2254,8 +2304,6 @@ "fflate": ["fflate@0.4.8", "", {}, "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA=="], - "figures": ["figures@6.1.0", "", { "dependencies": { "is-unicode-supported": "^2.0.0" } }, "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg=="], - "file-entry-cache": ["file-entry-cache@6.0.1", "", { "dependencies": { "flat-cache": "^3.0.4" } }, "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg=="], "file-uri-to-path": ["file-uri-to-path@1.0.0", "", {}, "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="], @@ -2482,8 +2530,6 @@ "indent-string": ["indent-string@4.0.0", "", {}, "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg=="], - "index-to-position": ["index-to-position@0.1.2", "", {}, "sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g=="], - "inflight": ["inflight@1.0.6", "", { "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA=="], "inherits": ["inherits@2.0.4", "", {}, "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="], @@ -2496,6 +2542,8 @@ "internal-slot": ["internal-slot@1.1.0", "", { "dependencies": { "es-errors": "^1.3.0", "hasown": "^2.0.2", "side-channel": "^1.1.0" } }, "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw=="], + "invariant": ["invariant@2.2.4", "", { "dependencies": { "loose-envify": "^1.0.0" } }, "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA=="], + "ioredis": ["ioredis@5.6.0", "", { "dependencies": { "@ioredis/commands": "^1.1.1", "cluster-key-slot": "^1.1.0", "debug": "^4.3.4", "denque": "^2.1.0", "lodash.defaults": "^4.2.0", "lodash.isarguments": "^3.1.0", "redis-errors": "^1.2.0", "redis-parser": "^3.0.0", "standard-as-callback": "^2.1.0" } }, "sha512-tBZlIIWbndeWBWCXWZiqtOF/yxf6yZX3tAlTJ7nfo5jhd6dctNxF7QnYlZLZ1a0o0pDoen7CgZqO+zjNaFbJAg=="], "ip-address": ["ip-address@9.0.5", "", { "dependencies": { "jsbn": "1.1.0", "sprintf-js": "^1.1.3" } }, "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g=="], @@ -2562,6 +2610,8 @@ "is-nan": ["is-nan@1.3.2", "", { "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3" } }, "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w=="], + "is-network-error": ["is-network-error@1.1.0", "", {}, "sha512-tUdRRAnhT+OtCZR/LxZelH/C7QtjtFrTu5tXCA8pl55eTUElUHT+GPYV8MBMBvea/j+NxQqVt3LbWMRir7Gx9g=="], + "is-number": ["is-number@7.0.0", "", {}, "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="], "is-number-object": ["is-number-object@1.1.1", "", { "dependencies": { "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" } }, "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw=="], @@ -2590,8 +2640,6 @@ "is-typed-array": ["is-typed-array@1.1.15", "", { "dependencies": { "which-typed-array": "^1.1.16" } }, "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ=="], - "is-unicode-supported": ["is-unicode-supported@2.1.0", "", {}, "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ=="], - "is-weakmap": ["is-weakmap@2.0.2", "", {}, "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w=="], "is-weakref": ["is-weakref@1.1.1", "", { "dependencies": { "call-bound": "^1.0.3" } }, "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew=="], @@ -2620,8 +2668,6 @@ "jose": ["jose@5.2.3", "", {}, "sha512-KUXdbctm1uHVL8BYhnyHkgp3zDX5KW8ZhAKVFEfUbU2P8Alpzjb+48hHvjOdQIyPshoblhzsuqOwEEAbtHVirA=="], - "js-levenshtein": ["js-levenshtein@1.1.6", "", {}, "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g=="], - "js-sdsl": ["js-sdsl@4.3.0", "", {}, "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ=="], "js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], @@ -2756,6 +2802,8 @@ "magicast": ["magicast@0.3.5", "", { "dependencies": { "@babel/parser": "^7.25.4", "@babel/types": "^7.25.4", "source-map-js": "^1.2.0" } }, "sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ=="], + "make-error": ["make-error@1.3.6", "", {}, "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw=="], + "make-fetch-happen": ["make-fetch-happen@13.0.1", "", { "dependencies": { "@npmcli/agent": "^2.0.0", "cacache": "^18.0.0", "http-cache-semantics": "^4.1.1", "is-lambda": "^1.0.1", "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", "proc-log": "^4.2.0", "promise-retry": "^2.0.1", "ssri": "^10.0.0" } }, "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA=="], "markdown-extensions": ["markdown-extensions@2.0.0", "", {}, "sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q=="], @@ -2944,6 +2992,8 @@ "module-details-from-path": ["module-details-from-path@1.0.3", "", {}, "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A=="], + "motion": ["motion@12.6.2", "", { "dependencies": { "framer-motion": "^12.6.2", "tslib": "^2.4.0" }, "peerDependencies": { "@emotion/is-prop-valid": "*", "react": "^18.0.0 || ^19.0.0", "react-dom": "^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/is-prop-valid", "react", "react-dom"] }, "sha512-8OBjjuC59WuWHKmPzVWT5M0t5kDxtkfMfHF1M7Iey6F/nvd0AI15YlPnpGlcagW/eOfkdWDO90U/K5LF/k55Yw=="], + "motion-dom": ["motion-dom@11.18.1", "", { "dependencies": { "motion-utils": "^11.18.1" } }, "sha512-g76KvA001z+atjfxczdRtw/RXOM3OMSdd1f4DL77qCTF/+avrRJiawSG4yDibEQ215sr9kpinSlX2pCTJ9zbhw=="], "motion-utils": ["motion-utils@11.18.1", "", {}, "sha512-49Kt+HKjtbJKLtgO/LKj9Ld+6vw9BjH5d9sc40R/kVyH8GLAXgT42M2NnuPcJNuA3s9ZfZBUcwIgpmZWGEE+hA=="], @@ -2976,7 +3026,7 @@ "negotiator": ["negotiator@0.6.4", "", {}, "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w=="], - "nitropack": ["nitropack@2.11.6", "", { "dependencies": { "@cloudflare/kv-asset-handler": "^0.3.4", "@netlify/functions": "3.0.0", "@rollup/plugin-alias": "^5.1.1", "@rollup/plugin-commonjs": "^28.0.3", "@rollup/plugin-inject": "^5.0.5", "@rollup/plugin-json": "^6.1.0", "@rollup/plugin-node-resolve": "^16.0.0", "@rollup/plugin-replace": "^6.0.2", "@rollup/plugin-terser": "^0.4.4", "@types/http-proxy": "^1.17.16", "@vercel/nft": "^0.29.2", "archiver": "^7.0.1", "c12": "^3.0.2", "chokidar": "^4.0.3", "citty": "^0.1.6", "compatx": "^0.1.8", "confbox": "^0.2.1", "consola": "^3.4.0", "cookie-es": "^2.0.0", "croner": "^9.0.0", "crossws": "^0.3.4", "db0": "^0.3.1", "defu": "^6.1.4", "destr": "^2.0.3", "dot-prop": "^9.0.0", "esbuild": "^0.25.0", "escape-string-regexp": "^5.0.0", "etag": "^1.8.1", "exsolve": "^1.0.4", "fs-extra": "^11.3.0", "globby": "^14.1.0", "gzip-size": "^7.0.0", "h3": "^1.15.1", "hookable": "^5.5.3", "httpxy": "^0.1.7", "ioredis": "^5.6.0", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "listhen": "^1.9.0", "magic-string": "^0.30.17", "magicast": "^0.3.5", "mime": "^4.0.6", "mlly": "^1.7.4", "node-fetch-native": "^1.6.6", "node-mock-http": "^1.0.0", "ofetch": "^1.4.1", "ohash": "^2.0.11", "openapi-typescript": "^7.6.1", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "pretty-bytes": "^6.1.1", "radix3": "^1.1.2", "rollup": "^4.35.0", "rollup-plugin-visualizer": "^5.14.0", "scule": "^1.3.0", "semver": "^7.7.1", "serve-placeholder": "^2.0.2", "serve-static": "^1.16.2", "source-map": "^0.7.4", "std-env": "^3.8.1", "ufo": "^1.5.4", "ultrahtml": "^1.5.3", "uncrypto": "^0.1.3", "unctx": "^2.4.1", "unenv": "^2.0.0-rc.14", "unimport": "^4.1.2", "unplugin-utils": "^0.2.4", "unstorage": "^1.15.0", "untyped": "^2.0.0", "unwasm": "^0.3.9", "youch": "^4.1.0-beta.6", "youch-core": "^0.3.2" }, "peerDependencies": { "xml2js": "^0.6.2" }, "optionalPeers": ["xml2js"], "bin": { "nitro": "dist/cli/index.mjs", "nitropack": "dist/cli/index.mjs" } }, "sha512-iaLzOKYxsNL8G6h9cMFTC/hAN4RfhZsrFzFFzemr6Vfn57MooYEz6KLeUoRyTposlAeEWTVejz8naYOORIrnDg=="], + "nitropack": ["nitropack@2.11.8", "", { "dependencies": { "@cloudflare/kv-asset-handler": "^0.4.0", "@netlify/functions": "^3.0.2", "@rollup/plugin-alias": "^5.1.1", "@rollup/plugin-commonjs": "^28.0.3", "@rollup/plugin-inject": "^5.0.5", "@rollup/plugin-json": "^6.1.0", "@rollup/plugin-node-resolve": "^16.0.1", "@rollup/plugin-replace": "^6.0.2", "@rollup/plugin-terser": "^0.4.4", "@vercel/nft": "^0.29.2", "archiver": "^7.0.1", "c12": "^3.0.2", "chokidar": "^4.0.3", "citty": "^0.1.6", "compatx": "^0.1.8", "confbox": "^0.2.1", "consola": "^3.4.2", "cookie-es": "^2.0.0", "croner": "^9.0.0", "crossws": "^0.3.4", "db0": "^0.3.1", "defu": "^6.1.4", "destr": "^2.0.3", "dot-prop": "^9.0.0", "esbuild": "^0.25.1", "escape-string-regexp": "^5.0.0", "etag": "^1.8.1", "exsolve": "^1.0.4", "globby": "^14.1.0", "gzip-size": "^7.0.0", "h3": "^1.15.1", "hookable": "^5.5.3", "httpxy": "^0.1.7", "ioredis": "^5.6.0", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "listhen": "^1.9.0", "magic-string": "^0.30.17", "magicast": "^0.3.5", "mime": "^4.0.6", "mlly": "^1.7.4", "node-fetch-native": "^1.6.6", "node-mock-http": "^1.0.0", "ofetch": "^1.4.1", "ohash": "^2.0.11", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "pretty-bytes": "^6.1.1", "radix3": "^1.1.2", "rollup": "^4.36.0", "rollup-plugin-visualizer": "^5.14.0", "scule": "^1.3.0", "semver": "^7.7.1", "serve-placeholder": "^2.0.2", "serve-static": "^1.16.2", "source-map": "^0.7.4", "std-env": "^3.8.1", "ufo": "^1.5.4", "ultrahtml": "^1.5.3", "uncrypto": "^0.1.3", "unctx": "^2.4.1", "unenv": "^2.0.0-rc.15", "unimport": "^4.1.2", "unplugin-utils": "^0.2.4", "unstorage": "^1.15.0", "untyped": "^2.0.0", "unwasm": "^0.3.9", "youch": "^4.1.0-beta.6", "youch-core": "^0.3.2" }, "peerDependencies": { "xml2js": "^0.6.2" }, "optionalPeers": ["xml2js"], "bin": { "nitro": "dist/cli/index.mjs", "nitropack": "dist/cli/index.mjs" } }, "sha512-ummTu4R8Lhd1nO3nWrW7eeiHA2ey3ntbWFKkYakm4rcbvT6meWp+oykyrYBNFQKhobQl9CydmUWlCyztYXFPJw=="], "no-case": ["no-case@3.0.4", "", { "dependencies": { "lower-case": "^2.0.2", "tslib": "^2.0.3" } }, "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg=="], @@ -2998,6 +3048,8 @@ "node-gyp-build": ["node-gyp-build@4.8.4", "", { "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", "node-gyp-build-test": "build-test.js" } }, "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ=="], + "node-gyp-build-optional-packages": ["node-gyp-build-optional-packages@5.1.1", "", { "dependencies": { "detect-libc": "^2.0.1" }, "bin": { "node-gyp-build-optional-packages": "bin.js", "node-gyp-build-optional-packages-test": "build-test.js", "node-gyp-build-optional-packages-optional": "optional.js" } }, "sha512-+P72GAjVAbTxjjwUmwjVrqrdZROD4nf8KgpBoDxqXXTiYZZt/ud60dE5yvCSr9lRO8e8yv6kgJIC0K0PfZFVQw=="], + "node-mock-http": ["node-mock-http@1.0.0", "", {}, "sha512-0uGYQ1WQL1M5kKvGRXWQ3uZCHtLTO8hln3oBjIusM75WoesZ909uQJs/Hb946i2SS+Gsrhkaa6iAO17jRIv6DQ=="], "node-releases": ["node-releases@2.0.19", "", {}, "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw=="], @@ -3034,7 +3086,7 @@ "number-allocator": ["number-allocator@1.0.14", "", { "dependencies": { "debug": "^4.3.1", "js-sdsl": "4.3.0" } }, "sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA=="], - "nuxt": ["nuxt@3.16.0", "", { "dependencies": { "@nuxt/cli": "^3.22.5", "@nuxt/devalue": "^2.0.2", "@nuxt/devtools": "^2.2.1", "@nuxt/kit": "3.16.0", "@nuxt/schema": "3.16.0", "@nuxt/telemetry": "^2.6.5", "@nuxt/vite-builder": "3.16.0", "@oxc-parser/wasm": "^0.56.4", "@unhead/vue": "^2.0.0-rc.7", "@vue/shared": "^3.5.13", "c12": "^3.0.2", "chokidar": "^4.0.3", "compatx": "^0.1.8", "consola": "^3.4.0", "cookie-es": "^2.0.0", "defu": "^6.1.4", "destr": "^2.0.3", "devalue": "^5.1.1", "errx": "^0.1.0", "esbuild": "^0.25.0", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "exsolve": "^1.0.2", "globby": "^14.1.0", "h3": "^1.15.1", "hookable": "^5.5.3", "ignore": "^7.0.3", "impound": "^0.2.0", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "nanotar": "^0.2.0", "nitropack": "^2.11.5", "nypm": "^0.6.0", "ofetch": "^1.4.1", "ohash": "^2.0.11", "on-change": "^5.0.1", "oxc-parser": "^0.56.3", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "radix3": "^1.1.2", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "strip-literal": "^3.0.0", "tinyglobby": "0.2.12", "ufo": "^1.5.4", "ultrahtml": "^1.5.3", "uncrypto": "^0.1.3", "unctx": "^2.4.1", "unenv": "^2.0.0-rc.12", "unimport": "^4.1.2", "unplugin": "^2.2.0", "unplugin-vue-router": "^0.12.0", "unstorage": "^1.15.0", "untyped": "^2.0.0", "vue": "^3.5.13", "vue-bundle-renderer": "^2.1.1", "vue-devtools-stub": "^0.1.0", "vue-router": "^4.5.0" }, "peerDependencies": { "@parcel/watcher": "^2.1.0", "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "optionalPeers": ["@parcel/watcher", "@types/node"], "bin": { "nuxi": "bin/nuxt.mjs", "nuxt": "bin/nuxt.mjs" } }, "sha512-4j2tuHo+kcComQ1WrCD+i1w3UFOHrcnNH30cwiEY/WZZlBZOlC6DtUm6aBjhfpBFaMYsF4PbyKsNW+7FHwckHA=="], + "nuxt": ["nuxt@3.16.1", "", { "dependencies": { "@nuxt/cli": "^3.23.1", "@nuxt/devalue": "^2.0.2", "@nuxt/devtools": "^2.3.0", "@nuxt/kit": "3.16.1", "@nuxt/schema": "3.16.1", "@nuxt/telemetry": "^2.6.6", "@nuxt/vite-builder": "3.16.1", "@oxc-parser/wasm": "^0.60.0", "@unhead/vue": "^2.0.0-rc.13", "@vue/shared": "^3.5.13", "c12": "^3.0.2", "chokidar": "^4.0.3", "compatx": "^0.1.8", "consola": "^3.4.2", "cookie-es": "^2.0.0", "defu": "^6.1.4", "destr": "^2.0.3", "devalue": "^5.1.1", "errx": "^0.1.0", "esbuild": "^0.25.1", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "exsolve": "^1.0.4", "globby": "^14.1.0", "h3": "^1.15.1", "hookable": "^5.5.3", "ignore": "^7.0.3", "impound": "^0.2.2", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "mocked-exports": "^0.1.1", "nanotar": "^0.2.0", "nitropack": "^2.11.7", "nypm": "^0.6.0", "ofetch": "^1.4.1", "ohash": "^2.0.11", "on-change": "^5.0.1", "oxc-parser": "^0.56.3", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "radix3": "^1.1.2", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "strip-literal": "^3.0.0", "tinyglobby": "0.2.12", "ufo": "^1.5.4", "ultrahtml": "^1.5.3", "uncrypto": "^0.1.3", "unctx": "^2.4.1", "unimport": "^4.1.2", "unplugin": "^2.2.1", "unplugin-vue-router": "^0.12.0", "unstorage": "^1.15.0", "untyped": "^2.0.0", "vue": "^3.5.13", "vue-bundle-renderer": "^2.1.1", "vue-devtools-stub": "^0.1.0", "vue-router": "^4.5.0" }, "peerDependencies": { "@parcel/watcher": "^2.1.0", "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "optionalPeers": ["@parcel/watcher", "@types/node"], "bin": { "nuxi": "bin/nuxt.mjs", "nuxt": "bin/nuxt.mjs" } }, "sha512-V0odAW9Yo8s58yGnSy0RuX+rQwz0wtQp3eOgMTsh1YDDZdIIYZmAlZaLypNeieO/mbmvOOUcnuRyIGIRrF4+5A=="], "nuxt-component-meta": ["nuxt-component-meta@0.9.0", "", { "dependencies": { "@nuxt/kit": "^3.13.2", "citty": "^0.1.6", "mlly": "^1.7.2", "scule": "^1.3.0", "typescript": "^5.6.3", "ufo": "^1.5.4", "vue-component-meta": "^2.1.8" }, "bin": { "nuxt-component-meta": "bin/nuxt-component-meta.mjs" } }, "sha512-Zmuw/PxAeJkIu7EPZEFg0lIwnfpeiDsHog9i1g5d4Z3O5+00R1Vbuk+NC6K7kgpdLsdU2/XBvzc7oQ6BsXuQPg=="], @@ -3084,8 +3136,6 @@ "openapi-types": ["openapi-types@12.1.3", "", {}, "sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw=="], - "openapi-typescript": ["openapi-typescript@7.6.1", "", { "dependencies": { "@redocly/openapi-core": "^1.28.0", "ansi-colors": "^4.1.3", "change-case": "^5.4.4", "parse-json": "^8.1.0", "supports-color": "^9.4.0", "yargs-parser": "^21.1.1" }, "peerDependencies": { "typescript": "^5.x" }, "bin": { "openapi-typescript": "bin/cli.js" } }, "sha512-F7RXEeo/heF3O9lOXo2bNjCOtfp7u+D6W3a3VNEH2xE6v+fxLtn5nq0uvUcA1F5aT+CMhNeC5Uqtg5tlXFX/ag=="], - "opencontrol": ["opencontrol@0.0.6", "", { "dependencies": { "@modelcontextprotocol/sdk": "1.6.1", "@tsconfig/bun": "1.0.7", "hono": "4.7.4", "zod": "3.24.2", "zod-to-json-schema": "3.24.3" }, "bin": { "opencontrol": "bin/index.mjs" } }, "sha512-QeCrpOK5D15QV8kjnGVeD/BHFLwcVr+sn4T6KKmP0WAMs2pww56e4h+eOGHb5iPOufUQXbdbBKi6WV2kk7tefQ=="], "openid-client": ["openid-client@5.6.4", "", { "dependencies": { "jose": "^4.15.4", "lru-cache": "^6.0.0", "object-hash": "^2.2.0", "oidc-token-hash": "^5.0.3" } }, "sha512-T1h3B10BRPKfcObdBklX639tVz+xh34O7GjofqrqiAQdm7eHsQ00ih18x6wuJ/E6FxdtS2u3FmUGPDeEcMwzNA=="], @@ -3106,11 +3156,13 @@ "p-map": ["p-map@4.0.0", "", { "dependencies": { "aggregate-error": "^3.0.0" } }, "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ=="], + "p-retry": ["p-retry@6.2.1", "", { "dependencies": { "@types/retry": "0.12.2", "is-network-error": "^1.0.0", "retry": "^0.13.1" } }, "sha512-hEt02O4hUct5wtwg4H4KcWgDdm+l1bOaEy/hWzd8xtXB9BqxTWBBhb+2ImAtH4Cv4rPjV76xN3Zumqk3k3AhhQ=="], + "p-try": ["p-try@2.2.0", "", {}, "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="], "package-json-from-dist": ["package-json-from-dist@1.0.1", "", {}, "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw=="], - "package-manager-detector": ["package-manager-detector@0.2.11", "", { "dependencies": { "quansync": "^0.2.7" } }, "sha512-BEnLolu+yuz22S56CU1SUKq3XC3PkwD5wv4ikR4MfGvnRVcmzXR9DwSlW2fEamyTPyXHomBJRzgapeuBvRNzJQ=="], + "package-manager-detector": ["package-manager-detector@1.1.0", "", {}, "sha512-Y8f9qUlBzW8qauJjd/eu6jlpJZsuPJm2ZAV0cDVd420o4EdpH5RPdoCv+60/TdJflGatr4sDfpAL6ArWZbM5tA=="], "packrup": ["packrup@0.1.2", "", {}, "sha512-ZcKU7zrr5GlonoS9cxxrb5HVswGnyj6jQvwFBa6p5VFw7G71VAHcUKL5wyZSU/ECtPM/9gacWxy2KFQKt1gMNA=="], @@ -3132,9 +3184,7 @@ "parse-imports": ["parse-imports@2.2.1", "", { "dependencies": { "es-module-lexer": "^1.5.3", "slashes": "^3.0.12" } }, "sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ=="], - "parse-json": ["parse-json@8.1.0", "", { "dependencies": { "@babel/code-frame": "^7.22.13", "index-to-position": "^0.1.2", "type-fest": "^4.7.1" } }, "sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA=="], - - "parse-ms": ["parse-ms@4.0.0", "", {}, "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw=="], + "parse-json": ["parse-json@5.2.0", "", { "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", "json-parse-even-better-errors": "^2.3.0", "lines-and-columns": "^1.1.6" } }, "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg=="], "parse-path": ["parse-path@7.0.1", "", { "dependencies": { "protocols": "^2.0.0" } }, "sha512-6ReLMptznuuOEzLoGEa+I1oWRSj2Zna5jLWC+l6zlfAI4dbbSaIES29ThzuPkbhNahT65dWzfoZEO6cfJw2Ksg=="], @@ -3316,8 +3366,6 @@ "pretty-bytes": ["pretty-bytes@6.1.1", "", {}, "sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ=="], - "pretty-ms": ["pretty-ms@9.2.0", "", { "dependencies": { "parse-ms": "^4.0.0" } }, "sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg=="], - "printable-characters": ["printable-characters@1.0.42", "", {}, "sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ=="], "proc-log": ["proc-log@4.2.0", "", {}, "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA=="], @@ -3360,6 +3408,8 @@ "qrcode": ["qrcode@1.5.4", "", { "dependencies": { "dijkstrajs": "^1.0.1", "pngjs": "^5.0.0", "yargs": "^15.3.1" }, "bin": { "qrcode": "bin/qrcode" } }, "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg=="], + "qrcode-terminal": ["qrcode-terminal@0.12.0", "", { "bin": { "qrcode-terminal": "./bin/qrcode-terminal.js" } }, "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ=="], + "qs": ["qs@6.13.0", "", { "dependencies": { "side-channel": "^1.0.6" } }, "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg=="], "quansync": ["quansync@0.2.8", "", {}, "sha512-4+saucphJMazjt7iOM27mbFCk+D9dd/zmgMDCzRZ8MEoBfYp7lAvoN38et/phRQF6wOPMy/OROBGgoWeSKyluA=="], @@ -3512,7 +3562,7 @@ "ret": ["ret@0.5.0", "", {}, "sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw=="], - "retry": ["retry@0.12.0", "", {}, "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow=="], + "retry": ["retry@0.13.1", "", {}, "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg=="], "reusify": ["reusify@1.1.0", "", {}, "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw=="], @@ -3520,7 +3570,7 @@ "rimraf": ["rimraf@3.0.2", "", { "dependencies": { "glob": "^7.1.3" }, "bin": { "rimraf": "bin.js" } }, "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA=="], - "rollup": ["rollup@4.35.0", "", { "dependencies": { "@types/estree": "1.0.6" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.35.0", "@rollup/rollup-android-arm64": "4.35.0", "@rollup/rollup-darwin-arm64": "4.35.0", "@rollup/rollup-darwin-x64": "4.35.0", "@rollup/rollup-freebsd-arm64": "4.35.0", "@rollup/rollup-freebsd-x64": "4.35.0", "@rollup/rollup-linux-arm-gnueabihf": "4.35.0", "@rollup/rollup-linux-arm-musleabihf": "4.35.0", "@rollup/rollup-linux-arm64-gnu": "4.35.0", "@rollup/rollup-linux-arm64-musl": "4.35.0", "@rollup/rollup-linux-loongarch64-gnu": "4.35.0", "@rollup/rollup-linux-powerpc64le-gnu": "4.35.0", "@rollup/rollup-linux-riscv64-gnu": "4.35.0", "@rollup/rollup-linux-s390x-gnu": "4.35.0", "@rollup/rollup-linux-x64-gnu": "4.35.0", "@rollup/rollup-linux-x64-musl": "4.35.0", "@rollup/rollup-win32-arm64-msvc": "4.35.0", "@rollup/rollup-win32-ia32-msvc": "4.35.0", "@rollup/rollup-win32-x64-msvc": "4.35.0", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg=="], + "rollup": ["rollup@4.38.0", "", { "dependencies": { "@types/estree": "1.0.7" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.38.0", "@rollup/rollup-android-arm64": "4.38.0", "@rollup/rollup-darwin-arm64": "4.38.0", "@rollup/rollup-darwin-x64": "4.38.0", "@rollup/rollup-freebsd-arm64": "4.38.0", "@rollup/rollup-freebsd-x64": "4.38.0", "@rollup/rollup-linux-arm-gnueabihf": "4.38.0", "@rollup/rollup-linux-arm-musleabihf": "4.38.0", "@rollup/rollup-linux-arm64-gnu": "4.38.0", "@rollup/rollup-linux-arm64-musl": "4.38.0", "@rollup/rollup-linux-loongarch64-gnu": "4.38.0", "@rollup/rollup-linux-powerpc64le-gnu": "4.38.0", "@rollup/rollup-linux-riscv64-gnu": "4.38.0", "@rollup/rollup-linux-riscv64-musl": "4.38.0", "@rollup/rollup-linux-s390x-gnu": "4.38.0", "@rollup/rollup-linux-x64-gnu": "4.38.0", "@rollup/rollup-linux-x64-musl": "4.38.0", "@rollup/rollup-win32-arm64-msvc": "4.38.0", "@rollup/rollup-win32-ia32-msvc": "4.38.0", "@rollup/rollup-win32-x64-msvc": "4.38.0", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-5SsIRtJy9bf1ErAOiFMFzl64Ex9X5V7bnJ+WlFMb+zmP459OSWCEG7b0ERZ+PEU7xPt4OG3RHbrp1LJlXxYTrw=="], "rollup-plugin-dts": ["rollup-plugin-dts@5.3.1", "", { "dependencies": { "magic-string": "^0.30.2" }, "optionalDependencies": { "@babel/code-frame": "^7.22.5" }, "peerDependencies": { "rollup": "^3.0", "typescript": "^4.1 || ^5.0" } }, "sha512-gusMi+Z4gY/JaEQeXnB0RUdU82h1kF0WYzCWgVmV4p3hWXqelaKuCvcJawfeg+EKn2T1Ie+YWF2OiN1/L8bTVg=="], @@ -3680,17 +3730,17 @@ "ssri": ["ssri@10.0.6", "", { "dependencies": { "minipass": "^7.0.3" } }, "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ=="], - "sst": ["sst@3.9.36", "", { "dependencies": { "aws-sdk": "2.1692.0", "aws4fetch": "1.0.18", "jose": "5.2.3", "opencontrol": "0.0.6", "openid-client": "5.6.4" }, "optionalDependencies": { "sst-darwin-arm64": "3.9.36", "sst-darwin-x64": "3.9.36", "sst-linux-arm64": "3.9.36", "sst-linux-x64": "3.9.36", "sst-linux-x86": "3.9.36" }, "bin": { "sst": "bin/sst.mjs" } }, "sha512-/ouzDpeT42Byea7yE71l8Wk49ZNE3PnrfXJHivmCfm5o11holhm1rWYaydPvPgTK85TckICEeD1NcjOUeGnaNg=="], + "sst": ["sst@3.11.21", "", { "dependencies": { "aws-sdk": "2.1692.0", "aws4fetch": "1.0.18", "jose": "5.2.3", "opencontrol": "0.0.6", "openid-client": "5.6.4" }, "optionalDependencies": { "sst-darwin-arm64": "3.11.21", "sst-darwin-x64": "3.11.21", "sst-linux-arm64": "3.11.21", "sst-linux-x64": "3.11.21", "sst-linux-x86": "3.11.21" }, "bin": { "sst": "bin/sst.mjs" } }, "sha512-q0zeVplSv4mvfWaruru83f2y9LcHQlpFjF7+KhsmSs5VheKMbIGExa35dHl00bYxOsGSbECx/W3S6fXMtC18rg=="], - "sst-darwin-arm64": ["sst-darwin-arm64@3.9.36", "", { "os": "darwin", "cpu": "arm64" }, "sha512-kAN6huPZt8NN1/Rb+qqQ8PyTdjN0Kutaro5DZriWu+1unT1gIjYyDwCw1tbq0MiMIePflHo+Dv+t0etxoseotw=="], + "sst-darwin-arm64": ["sst-darwin-arm64@3.11.21", "", { "os": "darwin", "cpu": "arm64" }, "sha512-aHXl27gEt7uyYnfGlby0eEjA+07iTKIJL+F6ElWCz7iyQ3gYG8ncFxjIFlsRKnz2kvl8EPze0/fwy/sj053qLA=="], - "sst-darwin-x64": ["sst-darwin-x64@3.9.36", "", { "os": "darwin", "cpu": "x64" }, "sha512-hc80MWfUQZChpVry/OOWOXlOOjYa8yNbpkLg478RzCeMvhnkclTvulnzQ4NSm7C5I8a3o1/UXxCXEUvgWxWqiQ=="], + "sst-darwin-x64": ["sst-darwin-x64@3.11.21", "", { "os": "darwin", "cpu": "x64" }, "sha512-2mh4zgLtr9o48+gQOmHcdpvu/vkXUQXqVNLLpVw267asvGswAfADyzPG68cHzZ7EBYg80H5DnAgdkAonps5q+A=="], - "sst-linux-arm64": ["sst-linux-arm64@3.9.36", "", { "os": "linux", "cpu": "arm64" }, "sha512-FxbgiCaPZI5+eqHadP23tG9rOgGZUTu6HsEg2xt9kcuOvrdTv3avLbxUQdfjWMj6CebQc3OCQK7KS+LwRe9D+A=="], + "sst-linux-arm64": ["sst-linux-arm64@3.11.21", "", { "os": "linux", "cpu": "arm64" }, "sha512-DlyseKrnINW5sGN6EUCOsh927p+NDVV1+6JTqkdcaxsK5nkdZ8h44plcFAvx1PXLSmGkqSwWt1bf2Yu2VEE0Ig=="], - "sst-linux-x64": ["sst-linux-x64@3.9.36", "", { "os": "linux", "cpu": "x64" }, "sha512-Lklp1hEfIUMa+q3Lj9VrquWXiOPVgWv3UW0DLMeVpC2/78UN50/JeIeT/gedLYJbKGTBaMW7vREuKq/dV4cc9A=="], + "sst-linux-x64": ["sst-linux-x64@3.11.21", "", { "os": "linux", "cpu": "x64" }, "sha512-LXOcnYRkFOFByY/T8PkOltkLLrM8OS2SXb4bS9AprDIjful6hO2wYsqR/29LvuZEubgU7pco2OMHmjjlYCkSGg=="], - "sst-linux-x86": ["sst-linux-x86@3.9.36", "", { "os": "linux", "cpu": "none" }, "sha512-bxygU6/OtSkCP4qj+bJlST2TKMiSExuIVFuOjQJil6IW/i4O7ux5t4pbEd0NSiFnC5LXVSk80sFhPn2nDxfltQ=="], + "sst-linux-x86": ["sst-linux-x86@3.11.21", "", { "os": "linux", "cpu": "none" }, "sha512-DRdSdyETA6EWU8uGC2gtmBkh4edwC/IGYONAwqhKAe/290ZvD/MDjQo7o0Yyu9QirowfTKTAw4SPijjCOL7t1g=="], "stable-hash": ["stable-hash@0.0.4", "", {}, "sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g=="], @@ -3704,6 +3754,8 @@ "std-env": ["std-env@3.8.1", "", {}, "sha512-vj5lIj3Mwf9D79hBkltk5qmkFI+biIKWS2IBxEyEU3AX1tUf7AoL8nSazCOiiqQsGKIq01SClsKEzweu34uwvA=="], + "steam": ["steam@workspace:packages/steam"], + "stoppable": ["stoppable@1.1.0", "", {}, "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw=="], "stream-shift": ["stream-shift@1.0.3", "", {}, "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ=="], @@ -3826,6 +3878,8 @@ "ts-interface-checker": ["ts-interface-checker@0.1.13", "", {}, "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA=="], + "ts-node": ["ts-node@10.9.2", "", { "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", "@tsconfig/node12": "^1.0.7", "@tsconfig/node14": "^1.0.0", "@tsconfig/node16": "^1.0.2", "acorn": "^8.4.1", "acorn-walk": "^8.1.1", "arg": "^4.1.0", "create-require": "^1.1.0", "diff": "^4.0.1", "make-error": "^1.1.1", "v8-compile-cache-lib": "^3.0.1", "yn": "3.1.1" }, "peerDependencies": { "@swc/core": ">=1.2.50", "@swc/wasm": ">=1.2.50", "@types/node": "*", "typescript": ">=2.7" }, "optionalPeers": ["@swc/core", "@swc/wasm"], "bin": { "ts-node": "dist/bin.js", "ts-script": "dist/bin-script-deprecated.js", "ts-node-cwd": "dist/bin-cwd.js", "ts-node-esm": "dist/bin-esm.js", "ts-node-script": "dist/bin-script.js", "ts-node-transpile-only": "dist/bin-transpile.js" } }, "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ=="], + "tsconfck": ["tsconfck@3.1.5", "", { "peerDependencies": { "typescript": "^5.0.0" }, "optionalPeers": ["typescript"], "bin": { "tsconfck": "bin/tsconfck.js" } }, "sha512-CLDfGgUp7XPswWnezWwsCRxNmgQjhYq3VXHM0/XIRxhVrKw0M1if9agzryh1QS3nxjCROvV+xWxoJO1YctzzWg=="], "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], @@ -3878,7 +3932,7 @@ "unenv": ["unenv@2.0.0-rc.8", "", { "dependencies": { "defu": "^6.1.4", "exsolve": "^1.0.0", "ohash": "^2.0.5", "pathe": "^2.0.3", "ufo": "^1.5.4" } }, "sha512-wj/lN45LvZ4Uz95rti6DC5wg56eocAwA8KYzExk2SN01iuAb9ayzMwN13Kd3EG2eBXu27PzgMIXLTwWfSczKfw=="], - "unhead": ["unhead@2.0.0-rc.9", "", { "dependencies": { "hookable": "^5.5.3" } }, "sha512-N1p9as7Hg9Gs3l5kkxxsi9eTa8xTHUADZgN1U+hCKHWKegGhvJ4wApzBjk4Zng7O92wPlPDGk8oHSWgO6jg6tw=="], + "unhead": ["unhead@2.0.2", "", { "dependencies": { "hookable": "^5.5.3" } }, "sha512-1pcK/rSA70sezpdgmupQPd/yrul8pVFJRwMvWjEthbsXoTXMqjNQlV7NBXWeWt5r2uje1lZJsvRTHF7IvdOhcg=="], "unicode-emoji-modifier-base": ["unicode-emoji-modifier-base@1.0.0", "", {}, "sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g=="], @@ -3910,7 +3964,7 @@ "unpipe": ["unpipe@1.0.0", "", {}, "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="], - "unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "unplugin": ["unplugin@2.2.2", "", { "dependencies": { "acorn": "^8.14.1", "webpack-virtual-modules": "^0.6.2" } }, "sha512-Qp+iiD+qCRnUek+nDoYvtWX7tfnYyXsrOnJ452FRTgOyKmTM7TUJ3l+PLPJOOWPTUyKISKp4isC5JJPSXUjGgw=="], "unplugin-utils": ["unplugin-utils@0.2.4", "", { "dependencies": { "pathe": "^2.0.2", "picomatch": "^4.0.2" } }, "sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA=="], @@ -3936,14 +3990,10 @@ "uri-js": ["uri-js@4.4.1", "", { "dependencies": { "punycode": "^2.1.0" } }, "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg=="], - "uri-js-replace": ["uri-js-replace@1.0.1", "", {}, "sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g=="], - "url": ["url@0.10.3", "", { "dependencies": { "punycode": "1.3.2", "querystring": "0.2.0" } }, "sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ=="], "url-pattern": ["url-pattern@1.0.3", "", {}, "sha512-uQcEj/2puA4aq1R3A2+VNVBgaWYR24FdWjl7VNW83rnWftlhyzOZ/tBjezRiC2UkIzuxC8Top3IekN3vUf1WxA=="], - "urlpattern-polyfill": ["urlpattern-polyfill@8.0.2", "", {}, "sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ=="], - "use-callback-ref": ["use-callback-ref@1.3.3", "", { "dependencies": { "tslib": "^2.0.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg=="], "use-sidecar": ["use-sidecar@1.1.3", "", { "dependencies": { "detect-node-es": "^1.1.0", "tslib": "^2.0.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ=="], @@ -3958,6 +4008,8 @@ "uuid": ["uuid@11.1.0", "", { "bin": { "uuid": "dist/esm/bin/uuid" } }, "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A=="], + "v8-compile-cache-lib": ["v8-compile-cache-lib@3.0.1", "", {}, "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg=="], + "valibot": ["valibot@1.0.0-rc.3", "", { "peerDependencies": { "typescript": ">=5" }, "optionalPeers": ["typescript"] }, "sha512-LT0REa7Iqx4QGcaHLiTiTkcmJqJ9QdpOy89HALFFBJgejTS64GQFRIbDF7e4f6pauQbo/myfKGmWXCLhMeM6+g=="], "validate-html-nesting": ["validate-html-nesting@1.2.2", "", {}, "sha512-hGdgQozCsQJMyfK5urgFcWEqsSSrK63Awe0t/IMR0bZ0QMtnuaiHzThW81guu3qx9abLi99NEuiaN6P9gVYsNg=="], @@ -3974,7 +4026,7 @@ "vfile-message": ["vfile-message@4.0.2", "", { "dependencies": { "@types/unist": "^3.0.0", "unist-util-stringify-position": "^4.0.0" } }, "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw=="], - "vite": ["vite@5.4.12", "", { "dependencies": { "esbuild": "^0.21.3", "postcss": "^8.4.43", "rollup": "^4.20.0" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || >=20.0.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" }, "optionalPeers": ["@types/node", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser"], "bin": { "vite": "bin/vite.js" } }, "sha512-KwUaKB27TvWwDJr1GjjWthLMATbGEbeWYZIbGZ5qFIsgPP3vWzLu4cVooqhm5/Z2SPDUMjyPVjTztm5tYKwQxA=="], + "vite": ["vite@5.4.16", "", { "dependencies": { "esbuild": "^0.21.3", "postcss": "^8.4.43", "rollup": "^4.20.0" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || >=20.0.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" }, "optionalPeers": ["@types/node", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser"], "bin": { "vite": "bin/vite.js" } }, "sha512-Y5gnfp4NemVfgOTDQAunSD4346fal44L9mszGGY/e+qxsRT5y1sMlS/8tiQ8AFAp+MFgYNSINdfEchJiPm41vQ=="], "vite-dev-rpc": ["vite-dev-rpc@1.0.7", "", { "dependencies": { "birpc": "^2.0.19", "vite-hot-client": "^2.0.4" }, "peerDependencies": { "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.1" } }, "sha512-FxSTEofDbUi2XXujCA+hdzCDkXFG1PXktMjSk1efq9Qb5lOYaaM9zNSvKvPPF7645Bak79kSp1PTooMW2wktcA=="], @@ -3984,7 +4036,7 @@ "vite-node": ["vite-node@1.6.1", "", { "dependencies": { "cac": "^6.7.14", "debug": "^4.3.4", "pathe": "^1.1.1", "picocolors": "^1.0.0", "vite": "^5.0.0" }, "bin": { "vite-node": "vite-node.mjs" } }, "sha512-YAXkfvGtuTzwWbDSACdJSg4A4DZiAqckWe90Zapc/sEX3XvHcw1NdurM/6od8J207tSDqNbSsgdCacBgvJKFuA=="], - "vite-plugin-checker": ["vite-plugin-checker@0.9.0", "", { "dependencies": { "@babel/code-frame": "^7.26.2", "chokidar": "^4.0.3", "npm-run-path": "^6.0.0", "picocolors": "^1.1.1", "picomatch": "^4.0.2", "strip-ansi": "^7.1.0", "tiny-invariant": "^1.3.3", "tinyglobby": "^0.2.12", "vscode-uri": "^3.1.0" }, "peerDependencies": { "@biomejs/biome": ">=1.7", "eslint": ">=7", "meow": "^13.2.0", "optionator": "^0.9.1", "stylelint": ">=16", "typescript": "*", "vite": ">=2.0.0", "vls": "*", "vti": "*", "vue-tsc": "~2.2.2" }, "optionalPeers": ["@biomejs/biome", "eslint", "meow", "optionator", "stylelint", "typescript", "vls", "vti", "vue-tsc"] }, "sha512-gf/zc0KWX8ATEOgnpgAM1I+IbvWkkO80RB+FxlLtC5cabXSesbJmAUw6E+mMDDMGIT+VHAktmxJZpMTt3lSubQ=="], + "vite-plugin-checker": ["vite-plugin-checker@0.9.1", "", { "dependencies": { "@babel/code-frame": "^7.26.2", "chokidar": "^4.0.3", "npm-run-path": "^6.0.0", "picocolors": "^1.1.1", "picomatch": "^4.0.2", "strip-ansi": "^7.1.0", "tiny-invariant": "^1.3.3", "tinyglobby": "^0.2.12", "vscode-uri": "^3.1.0" }, "peerDependencies": { "@biomejs/biome": ">=1.7", "eslint": ">=7", "meow": "^13.2.0", "optionator": "^0.9.4", "stylelint": ">=16", "typescript": "*", "vite": ">=2.0.0", "vls": "*", "vti": "*", "vue-tsc": "~2.2.2" }, "optionalPeers": ["@biomejs/biome", "eslint", "meow", "optionator", "stylelint", "typescript", "vls", "vti", "vue-tsc"] }, "sha512-neH3CSNWdkZ+zi+WPt/0y5+IO2I0UAI0NX6MaXqU/KxN1Lz6np/7IooRB6VVAMBa4nigqm1GRF6qNa4+EL5jDQ=="], "vite-plugin-inspect": ["vite-plugin-inspect@0.8.9", "", { "dependencies": { "@antfu/utils": "^0.7.10", "@rollup/pluginutils": "^5.1.3", "debug": "^4.3.7", "error-stack-parser-es": "^0.1.5", "fs-extra": "^11.2.0", "open": "^10.1.0", "perfect-debounce": "^1.0.0", "picocolors": "^1.1.1", "sirv": "^3.0.0" }, "peerDependencies": { "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.1" } }, "sha512-22/8qn+LYonzibb1VeFZmISdVao5kC22jmEKm24vfFE8siEn47EpVcCLYMv6iKOYMJfjSvSJfueOwcFCkUnV3A=="], @@ -3992,7 +4044,7 @@ "vite-plugin-vue-inspector": ["vite-plugin-vue-inspector@5.3.1", "", { "dependencies": { "@babel/core": "^7.23.0", "@babel/plugin-proposal-decorators": "^7.23.0", "@babel/plugin-syntax-import-attributes": "^7.22.5", "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-transform-typescript": "^7.22.15", "@vue/babel-plugin-jsx": "^1.1.5", "@vue/compiler-dom": "^3.3.4", "kolorist": "^1.8.0", "magic-string": "^0.30.4" }, "peerDependencies": { "vite": "^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0" } }, "sha512-cBk172kZKTdvGpJuzCCLg8lJ909wopwsu3Ve9FsL1XsnLBiRT9U3MePcqrgGHgCX2ZgkqZmAGR8taxw+TV6s7A=="], - "vite-plugin-vue-tracer": ["vite-plugin-vue-tracer@0.1.1", "", { "dependencies": { "estree-walker": "^3.0.3", "magic-string": "^0.30.17", "pathe": "^2.0.3", "source-map-js": "^1.2.1" }, "peerDependencies": { "vite": "^6.0.0", "vue": "^3.5.0" } }, "sha512-8BuReHmbSPd6iRQDQhlyK5+DexY1Hmb4K0GUVo9Te1Yaz8gyOZspBm9qdG1SvebdSIKw3WNlzpdstJ47TJ4bOw=="], + "vite-plugin-vue-tracer": ["vite-plugin-vue-tracer@0.1.3", "", { "dependencies": { "estree-walker": "^3.0.3", "exsolve": "^1.0.4", "magic-string": "^0.30.17", "pathe": "^2.0.3", "source-map-js": "^1.2.1" }, "peerDependencies": { "vite": "^6.0.0", "vue": "^3.5.0" } }, "sha512-+fN6oo0//dwZP9Ax9gRKeUroCqpQ43P57qlWgL0ljCIxAs+Rpqn/L4anIPZPgjDPga5dZH+ZJsshbF0PNJbm3Q=="], "vite-tsconfig-paths": ["vite-tsconfig-paths@4.3.2", "", { "dependencies": { "debug": "^4.1.1", "globrex": "^0.1.2", "tsconfck": "^3.0.3" }, "peerDependencies": { "vite": "*" }, "optionalPeers": ["vite"] }, "sha512-0Vd/a6po6Q+86rPlntHye7F31zA2URZMbH8M3saAZ/xR9QoGN/L21bxEGfXdWmFdNkqPpRdxFT7nmNe12e9/uA=="], @@ -4084,17 +4136,15 @@ "yaml": ["yaml@2.7.0", "", { "bin": { "yaml": "bin.mjs" } }, "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA=="], - "yaml-ast-parser": ["yaml-ast-parser@0.0.43", "", {}, "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A=="], - "yargs": ["yargs@15.4.1", "", { "dependencies": { "cliui": "^6.0.0", "decamelize": "^1.2.0", "find-up": "^4.1.0", "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", "yargs-parser": "^18.1.2" } }, "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A=="], "yargs-parser": ["yargs-parser@18.1.3", "", { "dependencies": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" } }, "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ=="], "ylru": ["ylru@1.4.0", "", {}, "sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA=="], - "yocto-queue": ["yocto-queue@0.1.0", "", {}, "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="], + "yn": ["yn@3.1.1", "", {}, "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q=="], - "yoctocolors": ["yoctocolors@2.1.1", "", {}, "sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ=="], + "yocto-queue": ["yocto-queue@0.1.0", "", {}, "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="], "youch": ["youch@3.2.3", "", { "dependencies": { "cookie": "^0.5.0", "mustache": "^4.2.0", "stacktracey": "^2.1.8" } }, "sha512-ZBcWz/uzZaQVdCvfV4uk616Bbpf2ee+F/AvuKDR5EwX/Y4v06xWdtMluqTD7+KlZdM93lLm9gMZYo0sKBS0pgw=="], @@ -4112,16 +4162,320 @@ "zwitch": ["zwitch@2.0.4", "", {}, "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A=="], + "@actor-core/memory/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], + + "@ampproject/remapping/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.25", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ=="], + + "@antfu/install-pkg/package-manager-detector": ["package-manager-detector@0.2.11", "", { "dependencies": { "quansync": "^0.2.7" } }, "sha512-BEnLolu+yuz22S56CU1SUKq3XC3PkwD5wv4ikR4MfGvnRVcmzXR9DwSlW2fEamyTPyXHomBJRzgapeuBvRNzJQ=="], + "@apidevtools/json-schema-ref-parser/js-yaml": ["js-yaml@4.1.0", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA=="], + "@aws-crypto/sha256-browser/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + "@aws-crypto/sha256-browser/@smithy/util-utf8": ["@smithy/util-utf8@2.3.0", "", { "dependencies": { "@smithy/util-buffer-from": "^2.2.0", "tslib": "^2.6.2" } }, "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A=="], + "@aws-crypto/sha256-js/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-crypto/util/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + "@aws-crypto/util/@smithy/util-utf8": ["@smithy/util-utf8@2.3.0", "", { "dependencies": { "@smithy/util-buffer-from": "^2.2.0", "tslib": "^2.6.2" } }, "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A=="], + "@aws-sdk/client-ecs/@aws-sdk/core": ["@aws-sdk/core@3.758.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/core": "^3.1.5", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.758.0", "", { "dependencies": { "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-ini": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-+DaMv63wiq7pJrhIQzZYMn4hSarKiizDoJRvyR7WGhnn0oQ/getX9Z0VNCV3i7lIFoLNTb7WMmQ9k7+z/uD5EQ=="], + + "@aws-sdk/client-ecs/@aws-sdk/middleware-host-header": ["@aws-sdk/middleware-host-header@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-LW7RRgSOHHBzWZnigNsDIzu3AiwtjeI2X66v+Wn1P1u+eXssy1+up4ZY/h+t2sU4LU36UvEf+jrZti9c6vRnFw=="], + + "@aws-sdk/client-ecs/@aws-sdk/middleware-logger": ["@aws-sdk/middleware-logger@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-mUMFITpJUW3LcKvFok176eI5zXAUomVtahb9IQBwLzkqFYOrMJvWAvoV4yuxrJ8TlQBG8gyEnkb9SnhZvjg67w=="], + + "@aws-sdk/client-ecs/@aws-sdk/middleware-recursion-detection": ["@aws-sdk/middleware-recursion-detection@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-CUat2d9ITsFc2XsmeiRQO96iWpxSKYFjxvj27Hc7vo87YUHRnfMfnc8jw1EpxEwMcvBD7LsRa6vDNky6AjcrFA=="], + + "@aws-sdk/client-ecs/@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@smithy/core": "^3.1.5", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-iNyehQXtQlj69JCgfaOssgZD4HeYGOwxcaKeG6F+40cwBjTAi0+Ph1yfDwqk2qiBPIRWJ/9l2LodZbxiBqgrwg=="], + + "@aws-sdk/client-ecs/@aws-sdk/region-config-resolver": ["@aws-sdk/region-config-resolver@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Lvj1kPRC5IuJBr9DyJ9T9/plkh+EfKLy+12s/mykOy1JaKHDpvj+XGy2YO6YgYVOb8JFtaqloid+5COtje4JTQ=="], + + "@aws-sdk/client-ecs/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-sdk/client-ecs/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.743.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "@smithy/util-endpoints": "^3.0.1", "tslib": "^2.6.2" } }, "sha512-sN1l559zrixeh5x+pttrnd0A3+r34r0tmPkJ/eaaMaAzXqsmKU/xYre9K3FNnsSS1J1k4PEfk/nHDTVUgFYjnw=="], + + "@aws-sdk/client-ecs/@aws-sdk/util-user-agent-browser": ["@aws-sdk/util-user-agent-browser@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-xQTCus6Q9LwUuALW+S76OL0jcWtMOVu14q+GoLnWPUM7QeUw963oQcLhF7oq0CtaLLKyl4GOUfcwc773Zmwwng=="], + + "@aws-sdk/client-ecs/@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.758.0", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-A5EZw85V6WhoKMV2hbuFRvb9NPlxEErb4HPO6/SPXYY4QrjprIzScHxikqcWv1w4J3apB1wto9LPU3IMsYtfrw=="], + + "@aws-sdk/client-ecs/@smithy/config-resolver": ["@smithy/config-resolver@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Igfg8lKu3dRVkTSEm98QpZUvKEOa71jDX4vKRcvJVyRc3UgN3j7vFMf0s7xLQhYmKa8kyJGQgUJDOV5V3neVlQ=="], + + "@aws-sdk/client-ecs/@smithy/core": ["@smithy/core@3.1.5", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.2", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA=="], + + "@aws-sdk/client-ecs/@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA=="], + + "@aws-sdk/client-ecs/@smithy/hash-node": ["@smithy/hash-node@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-TJ6oZS+3r2Xu4emVse1YPB3Dq3d8RkZDKcPr71Nj/lJsdAP1c7oFzYqEn1IBc915TsgLl2xIJNuxCz+gLbLE0w=="], + + "@aws-sdk/client-ecs/@smithy/invalid-dependency": ["@smithy/invalid-dependency@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gdudFPf4QRQ5pzj7HEnu6FhKRi61BfH/Gk5Yf6O0KiSbr1LlVhgjThcvjdu658VE6Nve8vaIWB8/fodmS1rBPQ=="], + + "@aws-sdk/client-ecs/@smithy/middleware-content-length": ["@smithy/middleware-content-length@4.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-OGXo7w5EkB5pPiac7KNzVtfCW2vKBTZNuCctn++TTSOMpe6RZO/n6WEC1AxJINn3+vWLKW49uad3lo/u0WJ9oQ=="], + + "@aws-sdk/client-ecs/@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.0.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-serde": "^4.0.2", "@smithy/node-config-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg=="], + + "@aws-sdk/client-ecs/@smithy/middleware-retry": ["@smithy/middleware-retry@4.0.7", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/service-error-classification": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "sha512-58j9XbUPLkqAcV1kHzVX/kAR16GT+j7DUZJqwzsxh1jtz7G82caZiGyyFgUvogVfNTg3TeAOIJepGc8TXF4AVQ=="], + + "@aws-sdk/client-ecs/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/client-ecs/@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA=="], + + "@aws-sdk/client-ecs/@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.1", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ=="], + + "@aws-sdk/client-ecs/@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.3", "", { "dependencies": { "@smithy/abort-controller": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA=="], + + "@aws-sdk/client-ecs/@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + + "@aws-sdk/client-ecs/@smithy/smithy-client": ["@smithy/smithy-client@4.1.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-stack": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw=="], + + "@aws-sdk/client-ecs/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + + "@aws-sdk/client-ecs/@smithy/url-parser": ["@smithy/url-parser@4.0.1", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g=="], + + "@aws-sdk/client-ecs/@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.0.7", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-CZgDDrYHLv0RUElOsmZtAnp1pIjwDVCSuZWOPhIOBvG36RDfX1Q9+6lS61xBf+qqvHoqRjHxgINeQz47cYFC2Q=="], + + "@aws-sdk/client-ecs/@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.0.7", "", { "dependencies": { "@smithy/config-resolver": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-79fQW3hnfCdrfIi1soPbK3zmooRFnLpSx3Vxi6nUlqaaQeC5dm8plt4OTNDNqEEEDkvKghZSaoti684dQFVrGQ=="], + + "@aws-sdk/client-ecs/@smithy/util-endpoints": ["@smithy/util-endpoints@3.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-zVdUENQpdtn9jbpD9SCFK4+aSiavRb9BxEtw9ZGUR1TYo6bBHbIoi7VkrFQ0/RwZlzx0wRBaRmPclj8iAoJCLA=="], + + "@aws-sdk/client-ecs/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + + "@aws-sdk/client-ecs/@smithy/util-retry": ["@smithy/util-retry@4.0.1", "", { "dependencies": { "@smithy/service-error-classification": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-WmRHqNVwn3kI3rKk1LsKcVgPBG6iLTBGC1iYOV3GQegwJ3E8yjzHytPt26VNzOWr1qu0xE03nK0Ug8S7T7oufw=="], + "@aws-sdk/client-ecs/uuid": ["uuid@9.0.1", "", { "bin": { "uuid": "dist/bin/uuid" } }, "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="], + "@aws-sdk/client-rds-data/@aws-sdk/core": ["@aws-sdk/core@3.758.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/core": "^3.1.5", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.758.0", "", { "dependencies": { "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-ini": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-+DaMv63wiq7pJrhIQzZYMn4hSarKiizDoJRvyR7WGhnn0oQ/getX9Z0VNCV3i7lIFoLNTb7WMmQ9k7+z/uD5EQ=="], + + "@aws-sdk/client-rds-data/@aws-sdk/middleware-host-header": ["@aws-sdk/middleware-host-header@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-LW7RRgSOHHBzWZnigNsDIzu3AiwtjeI2X66v+Wn1P1u+eXssy1+up4ZY/h+t2sU4LU36UvEf+jrZti9c6vRnFw=="], + + "@aws-sdk/client-rds-data/@aws-sdk/middleware-logger": ["@aws-sdk/middleware-logger@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-mUMFITpJUW3LcKvFok176eI5zXAUomVtahb9IQBwLzkqFYOrMJvWAvoV4yuxrJ8TlQBG8gyEnkb9SnhZvjg67w=="], + + "@aws-sdk/client-rds-data/@aws-sdk/middleware-recursion-detection": ["@aws-sdk/middleware-recursion-detection@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-CUat2d9ITsFc2XsmeiRQO96iWpxSKYFjxvj27Hc7vo87YUHRnfMfnc8jw1EpxEwMcvBD7LsRa6vDNky6AjcrFA=="], + + "@aws-sdk/client-rds-data/@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@smithy/core": "^3.1.5", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-iNyehQXtQlj69JCgfaOssgZD4HeYGOwxcaKeG6F+40cwBjTAi0+Ph1yfDwqk2qiBPIRWJ/9l2LodZbxiBqgrwg=="], + + "@aws-sdk/client-rds-data/@aws-sdk/region-config-resolver": ["@aws-sdk/region-config-resolver@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Lvj1kPRC5IuJBr9DyJ9T9/plkh+EfKLy+12s/mykOy1JaKHDpvj+XGy2YO6YgYVOb8JFtaqloid+5COtje4JTQ=="], + + "@aws-sdk/client-rds-data/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-sdk/client-rds-data/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.743.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "@smithy/util-endpoints": "^3.0.1", "tslib": "^2.6.2" } }, "sha512-sN1l559zrixeh5x+pttrnd0A3+r34r0tmPkJ/eaaMaAzXqsmKU/xYre9K3FNnsSS1J1k4PEfk/nHDTVUgFYjnw=="], + + "@aws-sdk/client-rds-data/@aws-sdk/util-user-agent-browser": ["@aws-sdk/util-user-agent-browser@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-xQTCus6Q9LwUuALW+S76OL0jcWtMOVu14q+GoLnWPUM7QeUw963oQcLhF7oq0CtaLLKyl4GOUfcwc773Zmwwng=="], + + "@aws-sdk/client-rds-data/@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.758.0", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-A5EZw85V6WhoKMV2hbuFRvb9NPlxEErb4HPO6/SPXYY4QrjprIzScHxikqcWv1w4J3apB1wto9LPU3IMsYtfrw=="], + + "@aws-sdk/client-rds-data/@smithy/config-resolver": ["@smithy/config-resolver@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Igfg8lKu3dRVkTSEm98QpZUvKEOa71jDX4vKRcvJVyRc3UgN3j7vFMf0s7xLQhYmKa8kyJGQgUJDOV5V3neVlQ=="], + + "@aws-sdk/client-rds-data/@smithy/core": ["@smithy/core@3.1.5", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.2", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA=="], + + "@aws-sdk/client-rds-data/@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA=="], + + "@aws-sdk/client-rds-data/@smithy/hash-node": ["@smithy/hash-node@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-TJ6oZS+3r2Xu4emVse1YPB3Dq3d8RkZDKcPr71Nj/lJsdAP1c7oFzYqEn1IBc915TsgLl2xIJNuxCz+gLbLE0w=="], + + "@aws-sdk/client-rds-data/@smithy/invalid-dependency": ["@smithy/invalid-dependency@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gdudFPf4QRQ5pzj7HEnu6FhKRi61BfH/Gk5Yf6O0KiSbr1LlVhgjThcvjdu658VE6Nve8vaIWB8/fodmS1rBPQ=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-content-length": ["@smithy/middleware-content-length@4.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-OGXo7w5EkB5pPiac7KNzVtfCW2vKBTZNuCctn++TTSOMpe6RZO/n6WEC1AxJINn3+vWLKW49uad3lo/u0WJ9oQ=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.0.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-serde": "^4.0.2", "@smithy/node-config-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-retry": ["@smithy/middleware-retry@4.0.7", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/service-error-classification": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "sha512-58j9XbUPLkqAcV1kHzVX/kAR16GT+j7DUZJqwzsxh1jtz7G82caZiGyyFgUvogVfNTg3TeAOIJepGc8TXF4AVQ=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA=="], + + "@aws-sdk/client-rds-data/@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.1", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ=="], + + "@aws-sdk/client-rds-data/@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.3", "", { "dependencies": { "@smithy/abort-controller": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA=="], + + "@aws-sdk/client-rds-data/@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + + "@aws-sdk/client-rds-data/@smithy/smithy-client": ["@smithy/smithy-client@4.1.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-stack": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw=="], + + "@aws-sdk/client-rds-data/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + + "@aws-sdk/client-rds-data/@smithy/url-parser": ["@smithy/url-parser@4.0.1", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g=="], + + "@aws-sdk/client-rds-data/@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.0.7", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-CZgDDrYHLv0RUElOsmZtAnp1pIjwDVCSuZWOPhIOBvG36RDfX1Q9+6lS61xBf+qqvHoqRjHxgINeQz47cYFC2Q=="], + + "@aws-sdk/client-rds-data/@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.0.7", "", { "dependencies": { "@smithy/config-resolver": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-79fQW3hnfCdrfIi1soPbK3zmooRFnLpSx3Vxi6nUlqaaQeC5dm8plt4OTNDNqEEEDkvKghZSaoti684dQFVrGQ=="], + + "@aws-sdk/client-rds-data/@smithy/util-endpoints": ["@smithy/util-endpoints@3.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-zVdUENQpdtn9jbpD9SCFK4+aSiavRb9BxEtw9ZGUR1TYo6bBHbIoi7VkrFQ0/RwZlzx0wRBaRmPclj8iAoJCLA=="], + + "@aws-sdk/client-rds-data/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + + "@aws-sdk/client-rds-data/@smithy/util-retry": ["@smithy/util-retry@4.0.1", "", { "dependencies": { "@smithy/service-error-classification": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-WmRHqNVwn3kI3rKk1LsKcVgPBG6iLTBGC1iYOV3GQegwJ3E8yjzHytPt26VNzOWr1qu0xE03nK0Ug8S7T7oufw=="], + + "@aws-sdk/client-sesv2/@aws-sdk/core": ["@aws-sdk/core@3.758.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/core": "^3.1.5", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.758.0", "", { "dependencies": { "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-ini": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-+DaMv63wiq7pJrhIQzZYMn4hSarKiizDoJRvyR7WGhnn0oQ/getX9Z0VNCV3i7lIFoLNTb7WMmQ9k7+z/uD5EQ=="], + + "@aws-sdk/client-sesv2/@aws-sdk/middleware-host-header": ["@aws-sdk/middleware-host-header@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-LW7RRgSOHHBzWZnigNsDIzu3AiwtjeI2X66v+Wn1P1u+eXssy1+up4ZY/h+t2sU4LU36UvEf+jrZti9c6vRnFw=="], + + "@aws-sdk/client-sesv2/@aws-sdk/middleware-logger": ["@aws-sdk/middleware-logger@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-mUMFITpJUW3LcKvFok176eI5zXAUomVtahb9IQBwLzkqFYOrMJvWAvoV4yuxrJ8TlQBG8gyEnkb9SnhZvjg67w=="], + + "@aws-sdk/client-sesv2/@aws-sdk/middleware-recursion-detection": ["@aws-sdk/middleware-recursion-detection@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-CUat2d9ITsFc2XsmeiRQO96iWpxSKYFjxvj27Hc7vo87YUHRnfMfnc8jw1EpxEwMcvBD7LsRa6vDNky6AjcrFA=="], + + "@aws-sdk/client-sesv2/@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@smithy/core": "^3.1.5", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-iNyehQXtQlj69JCgfaOssgZD4HeYGOwxcaKeG6F+40cwBjTAi0+Ph1yfDwqk2qiBPIRWJ/9l2LodZbxiBqgrwg=="], + + "@aws-sdk/client-sesv2/@aws-sdk/region-config-resolver": ["@aws-sdk/region-config-resolver@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Lvj1kPRC5IuJBr9DyJ9T9/plkh+EfKLy+12s/mykOy1JaKHDpvj+XGy2YO6YgYVOb8JFtaqloid+5COtje4JTQ=="], + + "@aws-sdk/client-sesv2/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-sdk/client-sesv2/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.743.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "@smithy/util-endpoints": "^3.0.1", "tslib": "^2.6.2" } }, "sha512-sN1l559zrixeh5x+pttrnd0A3+r34r0tmPkJ/eaaMaAzXqsmKU/xYre9K3FNnsSS1J1k4PEfk/nHDTVUgFYjnw=="], + + "@aws-sdk/client-sesv2/@aws-sdk/util-user-agent-browser": ["@aws-sdk/util-user-agent-browser@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-xQTCus6Q9LwUuALW+S76OL0jcWtMOVu14q+GoLnWPUM7QeUw963oQcLhF7oq0CtaLLKyl4GOUfcwc773Zmwwng=="], + + "@aws-sdk/client-sesv2/@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.758.0", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-A5EZw85V6WhoKMV2hbuFRvb9NPlxEErb4HPO6/SPXYY4QrjprIzScHxikqcWv1w4J3apB1wto9LPU3IMsYtfrw=="], + + "@aws-sdk/client-sesv2/@smithy/config-resolver": ["@smithy/config-resolver@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Igfg8lKu3dRVkTSEm98QpZUvKEOa71jDX4vKRcvJVyRc3UgN3j7vFMf0s7xLQhYmKa8kyJGQgUJDOV5V3neVlQ=="], + + "@aws-sdk/client-sesv2/@smithy/core": ["@smithy/core@3.1.5", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.2", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA=="], + + "@aws-sdk/client-sesv2/@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA=="], + + "@aws-sdk/client-sesv2/@smithy/hash-node": ["@smithy/hash-node@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-TJ6oZS+3r2Xu4emVse1YPB3Dq3d8RkZDKcPr71Nj/lJsdAP1c7oFzYqEn1IBc915TsgLl2xIJNuxCz+gLbLE0w=="], + + "@aws-sdk/client-sesv2/@smithy/invalid-dependency": ["@smithy/invalid-dependency@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gdudFPf4QRQ5pzj7HEnu6FhKRi61BfH/Gk5Yf6O0KiSbr1LlVhgjThcvjdu658VE6Nve8vaIWB8/fodmS1rBPQ=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-content-length": ["@smithy/middleware-content-length@4.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-OGXo7w5EkB5pPiac7KNzVtfCW2vKBTZNuCctn++TTSOMpe6RZO/n6WEC1AxJINn3+vWLKW49uad3lo/u0WJ9oQ=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.0.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-serde": "^4.0.2", "@smithy/node-config-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-retry": ["@smithy/middleware-retry@4.0.7", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/service-error-classification": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "sha512-58j9XbUPLkqAcV1kHzVX/kAR16GT+j7DUZJqwzsxh1jtz7G82caZiGyyFgUvogVfNTg3TeAOIJepGc8TXF4AVQ=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA=="], + + "@aws-sdk/client-sesv2/@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.1", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ=="], + + "@aws-sdk/client-sesv2/@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.3", "", { "dependencies": { "@smithy/abort-controller": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA=="], + + "@aws-sdk/client-sesv2/@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + + "@aws-sdk/client-sesv2/@smithy/smithy-client": ["@smithy/smithy-client@4.1.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-stack": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw=="], + + "@aws-sdk/client-sesv2/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + + "@aws-sdk/client-sesv2/@smithy/url-parser": ["@smithy/url-parser@4.0.1", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g=="], + + "@aws-sdk/client-sesv2/@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.0.7", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-CZgDDrYHLv0RUElOsmZtAnp1pIjwDVCSuZWOPhIOBvG36RDfX1Q9+6lS61xBf+qqvHoqRjHxgINeQz47cYFC2Q=="], + + "@aws-sdk/client-sesv2/@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.0.7", "", { "dependencies": { "@smithy/config-resolver": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-79fQW3hnfCdrfIi1soPbK3zmooRFnLpSx3Vxi6nUlqaaQeC5dm8plt4OTNDNqEEEDkvKghZSaoti684dQFVrGQ=="], + + "@aws-sdk/client-sesv2/@smithy/util-endpoints": ["@smithy/util-endpoints@3.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-zVdUENQpdtn9jbpD9SCFK4+aSiavRb9BxEtw9ZGUR1TYo6bBHbIoi7VkrFQ0/RwZlzx0wRBaRmPclj8iAoJCLA=="], + + "@aws-sdk/client-sesv2/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + + "@aws-sdk/client-sesv2/@smithy/util-retry": ["@smithy/util-retry@4.0.1", "", { "dependencies": { "@smithy/service-error-classification": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-WmRHqNVwn3kI3rKk1LsKcVgPBG6iLTBGC1iYOV3GQegwJ3E8yjzHytPt26VNzOWr1qu0xE03nK0Ug8S7T7oufw=="], + + "@aws-sdk/client-sqs/@aws-sdk/core": ["@aws-sdk/core@3.758.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/core": "^3.1.5", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.758.0", "", { "dependencies": { "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-ini": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-+DaMv63wiq7pJrhIQzZYMn4hSarKiizDoJRvyR7WGhnn0oQ/getX9Z0VNCV3i7lIFoLNTb7WMmQ9k7+z/uD5EQ=="], + + "@aws-sdk/client-sqs/@aws-sdk/middleware-host-header": ["@aws-sdk/middleware-host-header@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-LW7RRgSOHHBzWZnigNsDIzu3AiwtjeI2X66v+Wn1P1u+eXssy1+up4ZY/h+t2sU4LU36UvEf+jrZti9c6vRnFw=="], + + "@aws-sdk/client-sqs/@aws-sdk/middleware-logger": ["@aws-sdk/middleware-logger@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-mUMFITpJUW3LcKvFok176eI5zXAUomVtahb9IQBwLzkqFYOrMJvWAvoV4yuxrJ8TlQBG8gyEnkb9SnhZvjg67w=="], + + "@aws-sdk/client-sqs/@aws-sdk/middleware-recursion-detection": ["@aws-sdk/middleware-recursion-detection@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-CUat2d9ITsFc2XsmeiRQO96iWpxSKYFjxvj27Hc7vo87YUHRnfMfnc8jw1EpxEwMcvBD7LsRa6vDNky6AjcrFA=="], + + "@aws-sdk/client-sqs/@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@smithy/core": "^3.1.5", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-iNyehQXtQlj69JCgfaOssgZD4HeYGOwxcaKeG6F+40cwBjTAi0+Ph1yfDwqk2qiBPIRWJ/9l2LodZbxiBqgrwg=="], + + "@aws-sdk/client-sqs/@aws-sdk/region-config-resolver": ["@aws-sdk/region-config-resolver@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Lvj1kPRC5IuJBr9DyJ9T9/plkh+EfKLy+12s/mykOy1JaKHDpvj+XGy2YO6YgYVOb8JFtaqloid+5COtje4JTQ=="], + + "@aws-sdk/client-sqs/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-sdk/client-sqs/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.743.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "@smithy/util-endpoints": "^3.0.1", "tslib": "^2.6.2" } }, "sha512-sN1l559zrixeh5x+pttrnd0A3+r34r0tmPkJ/eaaMaAzXqsmKU/xYre9K3FNnsSS1J1k4PEfk/nHDTVUgFYjnw=="], + + "@aws-sdk/client-sqs/@aws-sdk/util-user-agent-browser": ["@aws-sdk/util-user-agent-browser@3.734.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-xQTCus6Q9LwUuALW+S76OL0jcWtMOVu14q+GoLnWPUM7QeUw963oQcLhF7oq0CtaLLKyl4GOUfcwc773Zmwwng=="], + + "@aws-sdk/client-sqs/@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.758.0", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-A5EZw85V6WhoKMV2hbuFRvb9NPlxEErb4HPO6/SPXYY4QrjprIzScHxikqcWv1w4J3apB1wto9LPU3IMsYtfrw=="], + + "@aws-sdk/client-sqs/@smithy/config-resolver": ["@smithy/config-resolver@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-Igfg8lKu3dRVkTSEm98QpZUvKEOa71jDX4vKRcvJVyRc3UgN3j7vFMf0s7xLQhYmKa8kyJGQgUJDOV5V3neVlQ=="], + + "@aws-sdk/client-sqs/@smithy/core": ["@smithy/core@3.1.5", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.2", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA=="], + + "@aws-sdk/client-sqs/@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA=="], + + "@aws-sdk/client-sqs/@smithy/hash-node": ["@smithy/hash-node@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-TJ6oZS+3r2Xu4emVse1YPB3Dq3d8RkZDKcPr71Nj/lJsdAP1c7oFzYqEn1IBc915TsgLl2xIJNuxCz+gLbLE0w=="], + + "@aws-sdk/client-sqs/@smithy/invalid-dependency": ["@smithy/invalid-dependency@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gdudFPf4QRQ5pzj7HEnu6FhKRi61BfH/Gk5Yf6O0KiSbr1LlVhgjThcvjdu658VE6Nve8vaIWB8/fodmS1rBPQ=="], + + "@aws-sdk/client-sqs/@smithy/middleware-content-length": ["@smithy/middleware-content-length@4.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-OGXo7w5EkB5pPiac7KNzVtfCW2vKBTZNuCctn++TTSOMpe6RZO/n6WEC1AxJINn3+vWLKW49uad3lo/u0WJ9oQ=="], + + "@aws-sdk/client-sqs/@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.0.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-serde": "^4.0.2", "@smithy/node-config-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg=="], + + "@aws-sdk/client-sqs/@smithy/middleware-retry": ["@smithy/middleware-retry@4.0.7", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/service-error-classification": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "sha512-58j9XbUPLkqAcV1kHzVX/kAR16GT+j7DUZJqwzsxh1jtz7G82caZiGyyFgUvogVfNTg3TeAOIJepGc8TXF4AVQ=="], + + "@aws-sdk/client-sqs/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/client-sqs/@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA=="], + + "@aws-sdk/client-sqs/@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.1", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ=="], + + "@aws-sdk/client-sqs/@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.3", "", { "dependencies": { "@smithy/abort-controller": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA=="], + + "@aws-sdk/client-sqs/@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + + "@aws-sdk/client-sqs/@smithy/smithy-client": ["@smithy/smithy-client@4.1.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-stack": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw=="], + + "@aws-sdk/client-sqs/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + + "@aws-sdk/client-sqs/@smithy/url-parser": ["@smithy/url-parser@4.0.1", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g=="], + + "@aws-sdk/client-sqs/@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.0.7", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-CZgDDrYHLv0RUElOsmZtAnp1pIjwDVCSuZWOPhIOBvG36RDfX1Q9+6lS61xBf+qqvHoqRjHxgINeQz47cYFC2Q=="], + + "@aws-sdk/client-sqs/@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.0.7", "", { "dependencies": { "@smithy/config-resolver": "^4.0.1", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-79fQW3hnfCdrfIi1soPbK3zmooRFnLpSx3Vxi6nUlqaaQeC5dm8plt4OTNDNqEEEDkvKghZSaoti684dQFVrGQ=="], + + "@aws-sdk/client-sqs/@smithy/util-endpoints": ["@smithy/util-endpoints@3.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-zVdUENQpdtn9jbpD9SCFK4+aSiavRb9BxEtw9ZGUR1TYo6bBHbIoi7VkrFQ0/RwZlzx0wRBaRmPclj8iAoJCLA=="], + + "@aws-sdk/client-sqs/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + + "@aws-sdk/client-sqs/@smithy/util-retry": ["@smithy/util-retry@4.0.1", "", { "dependencies": { "@smithy/service-error-classification": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-WmRHqNVwn3kI3rKk1LsKcVgPBG6iLTBGC1iYOV3GQegwJ3E8yjzHytPt26VNzOWr1qu0xE03nK0Ug8S7T7oufw=="], + + "@aws-sdk/middleware-sdk-s3/@aws-sdk/core": ["@aws-sdk/core@3.758.0", "", { "dependencies": { "@aws-sdk/types": "3.734.0", "@smithy/core": "^3.1.5", "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/signature-v4": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-middleware": "^4.0.1", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg=="], + + "@aws-sdk/middleware-sdk-s3/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/core": ["@smithy/core@3.1.5", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.2", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.1", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/signature-v4": ["@smithy/signature-v4@5.0.1", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/smithy-client": ["@smithy/smithy-client@4.1.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-stack": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/middleware-sdk-sqs/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client": ["@smithy/smithy-client@4.1.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-stack": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + + "@aws-sdk/signature-v4-multi-region/@aws-sdk/types": ["@aws-sdk/types@3.734.0", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg=="], + + "@aws-sdk/signature-v4-multi-region/@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + + "@aws-sdk/signature-v4-multi-region/@smithy/signature-v4": ["@smithy/signature-v4@5.0.1", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA=="], + + "@aws-sdk/signature-v4-multi-region/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + "@babel/core/semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], + "@babel/generator/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.25", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ=="], + "@babel/helper-compilation-targets/lru-cache": ["lru-cache@5.1.1", "", { "dependencies": { "yallist": "^3.0.2" } }, "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="], "@babel/helper-compilation-targets/semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], @@ -4134,9 +4488,9 @@ "@builder.io/qwik-city/valibot": ["valibot@0.42.1", "", { "peerDependencies": { "typescript": ">=5" }, "optionalPeers": ["typescript"] }, "sha512-3keXV29Ar5b//Hqi4MbSdV7lfVp6zuYLZuA9V1PvQUsXqogr+u5lvLPLk3A4f74VUXDnf/JfWMN6sB+koJ/FFw=="], - "@builder.io/qwik-city/zod": ["zod@3.22.4", "", {}, "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg=="], + "@builder.io/qwik-city/vite": ["vite@5.4.12", "", { "dependencies": { "esbuild": "^0.21.3", "postcss": "^8.4.43", "rollup": "^4.20.0" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || >=20.0.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" }, "optionalPeers": ["@types/node", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser"], "bin": { "vite": "bin/vite.js" } }, "sha512-KwUaKB27TvWwDJr1GjjWthLMATbGEbeWYZIbGZ5qFIsgPP3vWzLu4cVooqhm5/Z2SPDUMjyPVjTztm5tYKwQxA=="], - "@cspotcode/source-map-support/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.9", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" } }, "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ=="], + "@builder.io/qwik-city/zod": ["zod@3.22.4", "", {}, "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg=="], "@csstools/selector-resolve-nested/postcss-selector-parser": ["postcss-selector-parser@7.1.0", "", { "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" } }, "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA=="], @@ -4170,6 +4524,10 @@ "@isaacs/cliui/wrap-ansi": ["wrap-ansi@8.1.0", "", { "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", "strip-ansi": "^7.0.1" } }, "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ=="], + "@jridgewell/gen-mapping/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.25", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ=="], + + "@jridgewell/source-map/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.25", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ=="], + "@macaron-css/babel/@emotion/hash": ["@emotion/hash@0.8.0", "", {}, "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="], "@macaron-css/integration/esbuild": ["esbuild@0.14.54", "", { "optionalDependencies": { "@esbuild/linux-loong64": "0.14.54", "esbuild-android-64": "0.14.54", "esbuild-android-arm64": "0.14.54", "esbuild-darwin-64": "0.14.54", "esbuild-darwin-arm64": "0.14.54", "esbuild-freebsd-64": "0.14.54", "esbuild-freebsd-arm64": "0.14.54", "esbuild-linux-32": "0.14.54", "esbuild-linux-64": "0.14.54", "esbuild-linux-arm": "0.14.54", "esbuild-linux-arm64": "0.14.54", "esbuild-linux-mips64le": "0.14.54", "esbuild-linux-ppc64le": "0.14.54", "esbuild-linux-riscv64": "0.14.54", "esbuild-linux-s390x": "0.14.54", "esbuild-netbsd-64": "0.14.54", "esbuild-openbsd-64": "0.14.54", "esbuild-sunos-64": "0.14.54", "esbuild-windows-32": "0.14.54", "esbuild-windows-64": "0.14.54", "esbuild-windows-arm64": "0.14.54" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA=="], @@ -4180,6 +4538,8 @@ "@mapbox/node-pre-gyp/tar": ["tar@7.4.3", "", { "dependencies": { "@isaacs/fs-minipass": "^4.0.0", "chownr": "^3.0.0", "minipass": "^7.1.2", "minizlib": "^3.0.1", "mkdirp": "^3.0.1", "yallist": "^5.0.0" } }, "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw=="], + "@modelcontextprotocol/sdk/eventsource": ["eventsource@3.0.5", "", { "dependencies": { "eventsource-parser": "^3.0.0" } }, "sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw=="], + "@nestri/functions/@cloudflare/workers-types": ["@cloudflare/workers-types@4.20250303.0", "", {}, "sha512-O7F7nRT4bbmwHf3gkRBLfJ7R6vHIJ/oZzWdby6obOiw2yavUfp/AIwS7aO2POu5Cv8+h3TXS3oHs3kKCZLraUA=="], "@nestri/sdk/@types/node": ["@types/node@18.19.80", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-kEWeMwMeIvxYkeg1gTc01awpwLbfMRZXdIhwRcakd/KlK53jmRC26LqcbIt7fnAQTu5GzlnWmzA3H6+l1u6xxQ=="], @@ -4222,6 +4582,8 @@ "@nuxt/cli/chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], + "@nuxt/cli/consola": ["consola@3.4.2", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="], + "@nuxt/cli/fuse.js": ["fuse.js@7.1.0", "", {}, "sha512-trLf4SzuuUxfusZADLINj+dE8clK1frKdmqiJNb1Es75fmI5oY6X2mxLVUciLLjxqw/xr72Dhy+lER6dGd02FQ=="], "@nuxt/cli/jiti": ["jiti@2.4.2", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A=="], @@ -4238,8 +4600,12 @@ "@nuxt/devtools/execa": ["execa@7.2.0", "", { "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.1", "human-signals": "^4.3.0", "is-stream": "^3.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^5.1.0", "onetime": "^6.0.0", "signal-exit": "^3.0.7", "strip-final-newline": "^3.0.0" } }, "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA=="], + "@nuxt/devtools-kit/@nuxt/schema": ["@nuxt/schema@3.16.0", "", { "dependencies": { "consola": "^3.4.0", "defu": "^6.1.4", "pathe": "^2.0.3", "std-env": "^3.8.1" } }, "sha512-uCpcqWO6C4P5c4vi1/sq5GyajO0EOp+ZWFtPrnKaJ1pXAhA+W1aMVxAjfi2f18QMJHuRXBz1TouFg1RmWA6FuA=="], + "@nuxt/devtools-kit/execa": ["execa@7.2.0", "", { "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.1", "human-signals": "^4.3.0", "is-stream": "^3.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^5.1.0", "onetime": "^6.0.0", "signal-exit": "^3.0.7", "strip-final-newline": "^3.0.0" } }, "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA=="], + "@nuxt/devtools-wizard/diff": ["diff@7.0.0", "", {}, "sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw=="], + "@nuxt/devtools-wizard/execa": ["execa@7.2.0", "", { "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.1", "human-signals": "^4.3.0", "is-stream": "^3.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^5.1.0", "onetime": "^6.0.0", "signal-exit": "^3.0.7", "strip-final-newline": "^3.0.0" } }, "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA=="], "@nuxt/eslint-config/@eslint/js": ["@eslint/js@9.22.0", "", {}, "sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ=="], @@ -4268,8 +4634,14 @@ "@nuxt/kit/unimport": ["unimport@4.1.2", "", { "dependencies": { "acorn": "^8.14.0", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "local-pkg": "^1.0.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "pathe": "^2.0.3", "picomatch": "^4.0.2", "pkg-types": "^1.3.1", "scule": "^1.3.0", "strip-literal": "^3.0.0", "tinyglobby": "^0.2.11", "unplugin": "^2.2.0", "unplugin-utils": "^0.2.4" } }, "sha512-oVUL7PSlyVV3QRhsdcyYEMaDX8HJyS/CnUonEJTYA3//bWO+o/4gG8F7auGWWWkrrxBQBYOO8DKe+C53ktpRXw=="], + "@nuxt/schema/consola": ["consola@3.4.2", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="], + "@nuxt/schema/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], + "@nuxt/telemetry/@nuxt/kit": ["@nuxt/kit@3.16.1", "", { "dependencies": { "c12": "^3.0.2", "consola": "^3.4.2", "defu": "^6.1.4", "destr": "^2.0.3", "errx": "^0.1.0", "exsolve": "^1.0.4", "globby": "^14.1.0", "ignore": "^7.0.3", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "mlly": "^1.7.4", "ohash": "^2.0.11", "pathe": "^2.0.3", "pkg-types": "^2.1.0", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "ufo": "^1.5.4", "unctx": "^2.4.1", "unimport": "^4.1.2", "untyped": "^2.0.0" } }, "sha512-Perby8hJGUeCWad5oTVXb/Ibvp18ZCUC5PxHHu+acMDmVfnxSo48yqk7qNd09VkTF3LEzoEjNZpmW2ZWN0ry7A=="], + + "@nuxt/telemetry/consola": ["consola@3.4.2", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="], + "@nuxt/telemetry/git-url-parse": ["git-url-parse@16.0.1", "", { "dependencies": { "git-up": "^8.0.0" } }, "sha512-mcD36GrhAzX5JVOsIO52qNpgRyFzYWRbU1VSRFCvJt1IJvqfvH427wWw/CFqkWvjVPtdG5VTx4MKUeC5GeFPDQ=="], "@nuxt/telemetry/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], @@ -4282,7 +4654,11 @@ "@nuxt/ui/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], - "@nuxt/vite-builder/esbuild": ["esbuild@0.25.0", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.0", "@esbuild/android-arm": "0.25.0", "@esbuild/android-arm64": "0.25.0", "@esbuild/android-x64": "0.25.0", "@esbuild/darwin-arm64": "0.25.0", "@esbuild/darwin-x64": "0.25.0", "@esbuild/freebsd-arm64": "0.25.0", "@esbuild/freebsd-x64": "0.25.0", "@esbuild/linux-arm": "0.25.0", "@esbuild/linux-arm64": "0.25.0", "@esbuild/linux-ia32": "0.25.0", "@esbuild/linux-loong64": "0.25.0", "@esbuild/linux-mips64el": "0.25.0", "@esbuild/linux-ppc64": "0.25.0", "@esbuild/linux-riscv64": "0.25.0", "@esbuild/linux-s390x": "0.25.0", "@esbuild/linux-x64": "0.25.0", "@esbuild/netbsd-arm64": "0.25.0", "@esbuild/netbsd-x64": "0.25.0", "@esbuild/openbsd-arm64": "0.25.0", "@esbuild/openbsd-x64": "0.25.0", "@esbuild/sunos-x64": "0.25.0", "@esbuild/win32-arm64": "0.25.0", "@esbuild/win32-ia32": "0.25.0", "@esbuild/win32-x64": "0.25.0" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw=="], + "@nuxt/vite-builder/@nuxt/kit": ["@nuxt/kit@3.16.1", "", { "dependencies": { "c12": "^3.0.2", "consola": "^3.4.2", "defu": "^6.1.4", "destr": "^2.0.3", "errx": "^0.1.0", "exsolve": "^1.0.4", "globby": "^14.1.0", "ignore": "^7.0.3", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "mlly": "^1.7.4", "ohash": "^2.0.11", "pathe": "^2.0.3", "pkg-types": "^2.1.0", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "ufo": "^1.5.4", "unctx": "^2.4.1", "unimport": "^4.1.2", "untyped": "^2.0.0" } }, "sha512-Perby8hJGUeCWad5oTVXb/Ibvp18ZCUC5PxHHu+acMDmVfnxSo48yqk7qNd09VkTF3LEzoEjNZpmW2ZWN0ry7A=="], + + "@nuxt/vite-builder/consola": ["consola@3.4.2", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="], + + "@nuxt/vite-builder/esbuild": ["esbuild@0.25.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.1", "@esbuild/android-arm": "0.25.1", "@esbuild/android-arm64": "0.25.1", "@esbuild/android-x64": "0.25.1", "@esbuild/darwin-arm64": "0.25.1", "@esbuild/darwin-x64": "0.25.1", "@esbuild/freebsd-arm64": "0.25.1", "@esbuild/freebsd-x64": "0.25.1", "@esbuild/linux-arm": "0.25.1", "@esbuild/linux-arm64": "0.25.1", "@esbuild/linux-ia32": "0.25.1", "@esbuild/linux-loong64": "0.25.1", "@esbuild/linux-mips64el": "0.25.1", "@esbuild/linux-ppc64": "0.25.1", "@esbuild/linux-riscv64": "0.25.1", "@esbuild/linux-s390x": "0.25.1", "@esbuild/linux-x64": "0.25.1", "@esbuild/netbsd-arm64": "0.25.1", "@esbuild/netbsd-x64": "0.25.1", "@esbuild/openbsd-arm64": "0.25.1", "@esbuild/openbsd-x64": "0.25.1", "@esbuild/sunos-x64": "0.25.1", "@esbuild/win32-arm64": "0.25.1", "@esbuild/win32-ia32": "0.25.1", "@esbuild/win32-x64": "0.25.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ=="], "@nuxt/vite-builder/escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], @@ -4294,11 +4670,11 @@ "@nuxt/vite-builder/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], - "@nuxt/vite-builder/unenv": ["unenv@2.0.0-rc.14", "", { "dependencies": { "defu": "^6.1.4", "exsolve": "^1.0.1", "ohash": "^2.0.10", "pathe": "^2.0.3", "ufo": "^1.5.4" } }, "sha512-od496pShMen7nOy5VmVJCnq8rptd45vh6Nx/r2iPbrba6pa6p+tS2ywuIHRZ/OBvSbQZB0kWvpO9XBNVFXHD3Q=="], + "@nuxt/vite-builder/unenv": ["unenv@2.0.0-rc.15", "", { "dependencies": { "defu": "^6.1.4", "exsolve": "^1.0.4", "ohash": "^2.0.11", "pathe": "^2.0.3", "ufo": "^1.5.4" } }, "sha512-J/rEIZU8w6FOfLNz/hNKsnY+fFHWnu9MH4yRbSZF3xbbGHovcetXPs7sD+9p8L6CeNC//I9bhRYAOsBt2u7/OA=="], - "@nuxt/vite-builder/vite": ["vite@6.2.1", "", { "dependencies": { "esbuild": "^0.25.0", "postcss": "^8.5.3", "rollup": "^4.30.1" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-n2GnqDb6XPhlt9B8olZPrgMD/es/Nd1RdChF6CBD/fHW6pUyUTt2sQW2fPRX5GiD9XEa6+8A6A4f2vT6pSsE7Q=="], + "@nuxt/vite-builder/vite": ["vite@6.2.3", "", { "dependencies": { "esbuild": "^0.25.0", "postcss": "^8.5.3", "rollup": "^4.30.1" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg=="], - "@nuxt/vite-builder/vite-node": ["vite-node@3.0.8", "", { "dependencies": { "cac": "^6.7.14", "debug": "^4.4.0", "es-module-lexer": "^1.6.0", "pathe": "^2.0.3", "vite": "^5.0.0 || ^6.0.0" }, "bin": { "vite-node": "vite-node.mjs" } }, "sha512-6PhR4H9VGlcwXZ+KWCdMqbtG649xCPZqfI9j2PsK1FcXgEzro5bGHcVKFCTqPLaNKZES8Evqv4LwvZARsq5qlg=="], + "@nuxt/vite-builder/vite-node": ["vite-node@3.0.9", "", { "dependencies": { "cac": "^6.7.14", "debug": "^4.4.0", "es-module-lexer": "^1.6.0", "pathe": "^2.0.3", "vite": "^5.0.0 || ^6.0.0" }, "bin": { "vite-node": "vite-node.mjs" } }, "sha512-w3Gdx7jDcuT9cNn9jExXgOyKmf5UOTb6WMHz8LGAm54eS1Elf5OuBhCxl6zJxGhEeIkgsE1WbHuoL0mj/UXqXg=="], "@nuxthq/studio/untyped": ["untyped@1.5.2", "", { "dependencies": { "@babel/core": "^7.26.0", "@babel/standalone": "^7.26.4", "@babel/types": "^7.26.3", "citty": "^0.1.6", "defu": "^6.1.4", "jiti": "^2.4.1", "knitwork": "^1.2.0", "scule": "^1.3.0" }, "bin": { "untyped": "dist/cli.mjs" } }, "sha512-eL/8PlhLcMmlMDtNPKhyyz9kEBDS3Uk4yMu/ewlkT2WFbtzScjHWPJLdQLmaGPUKjXzwe9MumOtOgc4Fro96Kg=="], @@ -4398,10 +4774,6 @@ "@qwik-ui/headless/focus-trap": ["focus-trap@7.5.4", "", { "dependencies": { "tabbable": "^6.2.0" } }, "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w=="], - "@redocly/openapi-core/js-yaml": ["js-yaml@4.1.0", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA=="], - - "@redocly/openapi-core/minimatch": ["minimatch@5.1.6", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g=="], - "@rocicorp/zero/chalk": ["chalk@5.4.1", "", {}, "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w=="], "@rocicorp/zero/chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], @@ -4420,8 +4792,14 @@ "@rollup/pluginutils/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], + "@smithy/md5-js/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + "@smithy/middleware-retry/uuid": ["uuid@9.0.1", "", { "bin": { "uuid": "dist/bin/uuid" } }, "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="], + "@smithy/util-waiter/@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + + "@smithy/util-waiter/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + "@stylistic/eslint-plugin/@typescript-eslint/utils": ["@typescript-eslint/utils@8.26.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@typescript-eslint/scope-manager": "8.26.0", "@typescript-eslint/types": "8.26.0", "@typescript-eslint/typescript-estree": "8.26.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-2L2tU3FVwhvU14LndnQCA2frYC8JnPDVKyQtWFPf8IYFMt/ykEN1bPolNhNbCVgOmdzTlWdusCTKA/9nKrf8Ig=="], "@stylistic/eslint-plugin/eslint-visitor-keys": ["eslint-visitor-keys@4.2.0", "", {}, "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw=="], @@ -4434,9 +4812,9 @@ "@tufjs/models/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], - "@types/cacheable-request/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], + "@types/bun/bun-types": ["bun-types@1.2.9", "", { "dependencies": { "@types/node": "*", "@types/ws": "*" } }, "sha512-dk/kOEfQbajENN/D6FyiSgOKEuUi9PWfqKQJEgwKrCMWbjS/S6tEXp178mWvWAcUSYm9ArDlWHZKO3T/4cLXiw=="], - "@types/http-proxy/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], + "@types/cacheable-request/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], "@types/keyv/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], @@ -4454,6 +4832,10 @@ "@typescript-eslint/visitor-keys/eslint-visitor-keys": ["eslint-visitor-keys@4.2.0", "", {}, "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw=="], + "@vanilla-extract/integration/vite": ["vite@5.4.12", "", { "dependencies": { "esbuild": "^0.21.3", "postcss": "^8.4.43", "rollup": "^4.20.0" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || >=20.0.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" }, "optionalPeers": ["@types/node", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser"], "bin": { "vite": "bin/vite.js" } }, "sha512-KwUaKB27TvWwDJr1GjjWthLMATbGEbeWYZIbGZ5qFIsgPP3vWzLu4cVooqhm5/Z2SPDUMjyPVjTztm5tYKwQxA=="], + + "@vercel/nft/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "@vercel/nft/estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], "@vercel/nft/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], @@ -4570,6 +4952,8 @@ "error-ex/is-arrayish": ["is-arrayish@0.2.1", "", {}, "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="], + "esast-util-from-js/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "eslint/ajv": ["ajv@6.12.6", "", { "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" } }, "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g=="], "eslint/js-yaml": ["js-yaml@4.1.0", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA=="], @@ -4586,10 +4970,12 @@ "eslint-plugin-jsdoc/espree": ["espree@10.3.0", "", { "dependencies": { "acorn": "^8.14.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^4.2.0" } }, "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg=="], - "eslint-plugin-qwik/@typescript-eslint/utils": ["@typescript-eslint/utils@8.26.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@typescript-eslint/scope-manager": "8.26.0", "@typescript-eslint/types": "8.26.0", "@typescript-eslint/typescript-estree": "8.26.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-2L2tU3FVwhvU14LndnQCA2frYC8JnPDVKyQtWFPf8IYFMt/ykEN1bPolNhNbCVgOmdzTlWdusCTKA/9nKrf8Ig=="], + "eslint-plugin-qwik/@typescript-eslint/utils": ["@typescript-eslint/utils@8.28.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@typescript-eslint/scope-manager": "8.28.0", "@typescript-eslint/types": "8.28.0", "@typescript-eslint/typescript-estree": "8.28.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ=="], "eslint-plugin-unicorn/globals": ["globals@15.15.0", "", {}, "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg=="], + "espree/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "eval/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], "express/cookie": ["cookie@0.7.1", "", {}, "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w=="], @@ -4636,8 +5022,12 @@ "ignore-walk/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], + "import-in-the-middle/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "impound/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], + "impound/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "ip-address/sprintf-js": ["sprintf-js@1.1.3", "", {}, "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA=="], "is-installed-globally/is-path-inside": ["is-path-inside@4.0.0", "", {}, "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA=="], @@ -4670,8 +5060,12 @@ "mdast-util-to-hast/vfile": ["vfile@6.0.3", "", { "dependencies": { "@types/unist": "^3.0.0", "vfile-message": "^4.0.0" } }, "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q=="], + "micromark-extension-mdxjs/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "micromatch/picomatch": ["picomatch@2.3.1", "", {}, "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="], + "miniflare/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "miniflare/undici": ["undici@5.28.5", "", { "dependencies": { "@fastify/busboy": "^2.0.0" } }, "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA=="], "miniflare/ws": ["ws@8.18.0", "", { "peerDependencies": { "bufferutil": "^4.0.1", "utf-8-validate": ">=5.0.2" }, "optionalPeers": ["bufferutil", "utf-8-validate"] }, "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw=="], @@ -4688,13 +5082,21 @@ "mkdist/esbuild": ["esbuild@0.24.2", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.24.2", "@esbuild/android-arm": "0.24.2", "@esbuild/android-arm64": "0.24.2", "@esbuild/android-x64": "0.24.2", "@esbuild/darwin-arm64": "0.24.2", "@esbuild/darwin-x64": "0.24.2", "@esbuild/freebsd-arm64": "0.24.2", "@esbuild/freebsd-x64": "0.24.2", "@esbuild/linux-arm": "0.24.2", "@esbuild/linux-arm64": "0.24.2", "@esbuild/linux-ia32": "0.24.2", "@esbuild/linux-loong64": "0.24.2", "@esbuild/linux-mips64el": "0.24.2", "@esbuild/linux-ppc64": "0.24.2", "@esbuild/linux-riscv64": "0.24.2", "@esbuild/linux-s390x": "0.24.2", "@esbuild/linux-x64": "0.24.2", "@esbuild/netbsd-arm64": "0.24.2", "@esbuild/netbsd-x64": "0.24.2", "@esbuild/openbsd-arm64": "0.24.2", "@esbuild/openbsd-x64": "0.24.2", "@esbuild/sunos-x64": "0.24.2", "@esbuild/win32-arm64": "0.24.2", "@esbuild/win32-ia32": "0.24.2", "@esbuild/win32-x64": "0.24.2" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA=="], + "mlly/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "mlly/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], + "motion/framer-motion": ["framer-motion@12.6.2", "", { "dependencies": { "motion-dom": "^12.6.1", "motion-utils": "^12.5.0", "tslib": "^2.4.0" }, "peerDependencies": { "@emotion/is-prop-valid": "*", "react": "^18.0.0 || ^19.0.0", "react-dom": "^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/is-prop-valid", "react", "react-dom"] }, "sha512-7LgPRlPs5aG8UxeZiMCMZz8firC53+2+9TnWV22tuSi38D3IFRxHRUqOREKckAkt6ztX+Dn6weLcatQilJTMcg=="], + + "nitropack/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.4.0", "", { "dependencies": { "mime": "^3.0.0" } }, "sha512-+tv3z+SPp+gqTIcImN9o0hqE9xyfQjI1XD9pL6NuKjua9B1y7mNYv0S9cP+QEbA4ppVgGZEmKOvHX5G5Ei1CVA=="], + "nitropack/chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], "nitropack/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], - "nitropack/esbuild": ["esbuild@0.25.0", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.0", "@esbuild/android-arm": "0.25.0", "@esbuild/android-arm64": "0.25.0", "@esbuild/android-x64": "0.25.0", "@esbuild/darwin-arm64": "0.25.0", "@esbuild/darwin-x64": "0.25.0", "@esbuild/freebsd-arm64": "0.25.0", "@esbuild/freebsd-x64": "0.25.0", "@esbuild/linux-arm": "0.25.0", "@esbuild/linux-arm64": "0.25.0", "@esbuild/linux-ia32": "0.25.0", "@esbuild/linux-loong64": "0.25.0", "@esbuild/linux-mips64el": "0.25.0", "@esbuild/linux-ppc64": "0.25.0", "@esbuild/linux-riscv64": "0.25.0", "@esbuild/linux-s390x": "0.25.0", "@esbuild/linux-x64": "0.25.0", "@esbuild/netbsd-arm64": "0.25.0", "@esbuild/netbsd-x64": "0.25.0", "@esbuild/openbsd-arm64": "0.25.0", "@esbuild/openbsd-x64": "0.25.0", "@esbuild/sunos-x64": "0.25.0", "@esbuild/win32-arm64": "0.25.0", "@esbuild/win32-ia32": "0.25.0", "@esbuild/win32-x64": "0.25.0" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw=="], + "nitropack/consola": ["consola@3.4.2", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="], + + "nitropack/esbuild": ["esbuild@0.25.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.1", "@esbuild/android-arm": "0.25.1", "@esbuild/android-arm64": "0.25.1", "@esbuild/android-x64": "0.25.1", "@esbuild/darwin-arm64": "0.25.1", "@esbuild/darwin-x64": "0.25.1", "@esbuild/freebsd-arm64": "0.25.1", "@esbuild/freebsd-x64": "0.25.1", "@esbuild/linux-arm": "0.25.1", "@esbuild/linux-arm64": "0.25.1", "@esbuild/linux-ia32": "0.25.1", "@esbuild/linux-loong64": "0.25.1", "@esbuild/linux-mips64el": "0.25.1", "@esbuild/linux-ppc64": "0.25.1", "@esbuild/linux-riscv64": "0.25.1", "@esbuild/linux-s390x": "0.25.1", "@esbuild/linux-x64": "0.25.1", "@esbuild/netbsd-arm64": "0.25.1", "@esbuild/netbsd-x64": "0.25.1", "@esbuild/openbsd-arm64": "0.25.1", "@esbuild/openbsd-x64": "0.25.1", "@esbuild/sunos-x64": "0.25.1", "@esbuild/win32-arm64": "0.25.1", "@esbuild/win32-ia32": "0.25.1", "@esbuild/win32-x64": "0.25.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ=="], "nitropack/escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], @@ -4708,7 +5110,7 @@ "nitropack/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], - "nitropack/unenv": ["unenv@2.0.0-rc.14", "", { "dependencies": { "defu": "^6.1.4", "exsolve": "^1.0.1", "ohash": "^2.0.10", "pathe": "^2.0.3", "ufo": "^1.5.4" } }, "sha512-od496pShMen7nOy5VmVJCnq8rptd45vh6Nx/r2iPbrba6pa6p+tS2ywuIHRZ/OBvSbQZB0kWvpO9XBNVFXHD3Q=="], + "nitropack/unenv": ["unenv@2.0.0-rc.15", "", { "dependencies": { "defu": "^6.1.4", "exsolve": "^1.0.4", "ohash": "^2.0.11", "pathe": "^2.0.3", "ufo": "^1.5.4" } }, "sha512-J/rEIZU8w6FOfLNz/hNKsnY+fFHWnu9MH4yRbSZF3xbbGHovcetXPs7sD+9p8L6CeNC//I9bhRYAOsBt2u7/OA=="], "nitropack/unimport": ["unimport@4.1.2", "", { "dependencies": { "acorn": "^8.14.0", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "local-pkg": "^1.0.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "pathe": "^2.0.3", "picomatch": "^4.0.2", "pkg-types": "^1.3.1", "scule": "^1.3.0", "strip-literal": "^3.0.0", "tinyglobby": "^0.2.11", "unplugin": "^2.2.0", "unplugin-utils": "^0.2.4" } }, "sha512-oVUL7PSlyVV3QRhsdcyYEMaDX8HJyS/CnUonEJTYA3//bWO+o/4gG8F7auGWWWkrrxBQBYOO8DKe+C53ktpRXw=="], @@ -4718,11 +5120,15 @@ "node-gyp/which": ["which@4.0.0", "", { "dependencies": { "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" } }, "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg=="], - "nuxt/@nuxt/devtools": ["@nuxt/devtools@2.2.1", "", { "dependencies": { "@nuxt/devtools-kit": "2.2.1", "@nuxt/devtools-wizard": "2.2.1", "@nuxt/kit": "^3.15.4", "@vue/devtools-core": "^7.7.2", "@vue/devtools-kit": "^7.7.2", "birpc": "^2.2.0", "consola": "^3.4.0", "destr": "^2.0.3", "error-stack-parser-es": "^1.0.5", "execa": "^9.5.2", "fast-npm-meta": "^0.3.1", "get-port-please": "^3.1.2", "hookable": "^5.5.3", "image-meta": "^0.2.1", "is-installed-globally": "^1.0.0", "launch-editor": "^2.10.0", "local-pkg": "^1.1.1", "magicast": "^0.3.5", "nypm": "^0.6.0", "ohash": "^2.0.11", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "semver": "^7.7.1", "simple-git": "^3.27.0", "sirv": "^3.0.1", "structured-clone-es": "^1.0.0", "tinyglobby": "^0.2.12", "vite-plugin-inspect": "^11.0.0", "vite-plugin-vue-tracer": "^0.1.0", "which": "^5.0.0", "ws": "^8.18.1" }, "peerDependencies": { "vite": ">=6.0" }, "bin": { "devtools": "cli.mjs" } }, "sha512-JkFRYLWFoklBuf+Zv6GwS9HPOFMuN3nomApWCnsNg8H7XqlFNIvB+wetmm6+u+43bNApjqE0ne7Y//o0V6FSaA=="], + "nuxt/@nuxt/devtools": ["@nuxt/devtools@2.3.2", "", { "dependencies": { "@nuxt/devtools-kit": "2.3.2", "@nuxt/devtools-wizard": "2.3.2", "@nuxt/kit": "^3.16.1", "@vue/devtools-core": "^7.7.2", "@vue/devtools-kit": "^7.7.2", "birpc": "^2.3.0", "consola": "^3.4.2", "destr": "^2.0.3", "error-stack-parser-es": "^1.0.5", "execa": "^8.0.1", "fast-npm-meta": "^0.3.1", "get-port-please": "^3.1.2", "hookable": "^5.5.3", "image-meta": "^0.2.1", "is-installed-globally": "^1.0.0", "launch-editor": "^2.10.0", "local-pkg": "^1.1.1", "magicast": "^0.3.5", "nypm": "^0.6.0", "ohash": "^2.0.11", "pathe": "^2.0.3", "perfect-debounce": "^1.0.0", "pkg-types": "^2.1.0", "semver": "^7.7.1", "simple-git": "^3.27.0", "sirv": "^3.0.1", "structured-clone-es": "^1.0.0", "tinyglobby": "^0.2.12", "vite-plugin-inspect": "^11.0.0", "vite-plugin-vue-tracer": "^0.1.3", "which": "^5.0.0", "ws": "^8.18.1" }, "peerDependencies": { "vite": ">=6.0" }, "bin": { "devtools": "cli.mjs" } }, "sha512-MMx7pUW0aPDRmhe3jy91srEiFWq/Q70rjbGoHhzpVosuvyvy/fi0oKOFQqN5V4V7jJLiEx4HAoD0QdqP0I6xBA=="], + + "nuxt/@nuxt/kit": ["@nuxt/kit@3.16.1", "", { "dependencies": { "c12": "^3.0.2", "consola": "^3.4.2", "defu": "^6.1.4", "destr": "^2.0.3", "errx": "^0.1.0", "exsolve": "^1.0.4", "globby": "^14.1.0", "ignore": "^7.0.3", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "mlly": "^1.7.4", "ohash": "^2.0.11", "pathe": "^2.0.3", "pkg-types": "^2.1.0", "scule": "^1.3.0", "semver": "^7.7.1", "std-env": "^3.8.1", "ufo": "^1.5.4", "unctx": "^2.4.1", "unimport": "^4.1.2", "untyped": "^2.0.0" } }, "sha512-Perby8hJGUeCWad5oTVXb/Ibvp18ZCUC5PxHHu+acMDmVfnxSo48yqk7qNd09VkTF3LEzoEjNZpmW2ZWN0ry7A=="], "nuxt/chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], - "nuxt/esbuild": ["esbuild@0.25.0", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.0", "@esbuild/android-arm": "0.25.0", "@esbuild/android-arm64": "0.25.0", "@esbuild/android-x64": "0.25.0", "@esbuild/darwin-arm64": "0.25.0", "@esbuild/darwin-x64": "0.25.0", "@esbuild/freebsd-arm64": "0.25.0", "@esbuild/freebsd-x64": "0.25.0", "@esbuild/linux-arm": "0.25.0", "@esbuild/linux-arm64": "0.25.0", "@esbuild/linux-ia32": "0.25.0", "@esbuild/linux-loong64": "0.25.0", "@esbuild/linux-mips64el": "0.25.0", "@esbuild/linux-ppc64": "0.25.0", "@esbuild/linux-riscv64": "0.25.0", "@esbuild/linux-s390x": "0.25.0", "@esbuild/linux-x64": "0.25.0", "@esbuild/netbsd-arm64": "0.25.0", "@esbuild/netbsd-x64": "0.25.0", "@esbuild/openbsd-arm64": "0.25.0", "@esbuild/openbsd-x64": "0.25.0", "@esbuild/sunos-x64": "0.25.0", "@esbuild/win32-arm64": "0.25.0", "@esbuild/win32-ia32": "0.25.0", "@esbuild/win32-x64": "0.25.0" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw=="], + "nuxt/consola": ["consola@3.4.2", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="], + + "nuxt/esbuild": ["esbuild@0.25.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.1", "@esbuild/android-arm": "0.25.1", "@esbuild/android-arm64": "0.25.1", "@esbuild/android-x64": "0.25.1", "@esbuild/darwin-arm64": "0.25.1", "@esbuild/darwin-x64": "0.25.1", "@esbuild/freebsd-arm64": "0.25.1", "@esbuild/freebsd-x64": "0.25.1", "@esbuild/linux-arm": "0.25.1", "@esbuild/linux-arm64": "0.25.1", "@esbuild/linux-ia32": "0.25.1", "@esbuild/linux-loong64": "0.25.1", "@esbuild/linux-mips64el": "0.25.1", "@esbuild/linux-ppc64": "0.25.1", "@esbuild/linux-riscv64": "0.25.1", "@esbuild/linux-s390x": "0.25.1", "@esbuild/linux-x64": "0.25.1", "@esbuild/netbsd-arm64": "0.25.1", "@esbuild/netbsd-x64": "0.25.1", "@esbuild/openbsd-arm64": "0.25.1", "@esbuild/openbsd-x64": "0.25.1", "@esbuild/sunos-x64": "0.25.1", "@esbuild/win32-arm64": "0.25.1", "@esbuild/win32-ia32": "0.25.1", "@esbuild/win32-x64": "0.25.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ=="], "nuxt/escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], @@ -4738,30 +5144,30 @@ "nuxt/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], - "nuxt/unenv": ["unenv@2.0.0-rc.14", "", { "dependencies": { "defu": "^6.1.4", "exsolve": "^1.0.1", "ohash": "^2.0.10", "pathe": "^2.0.3", "ufo": "^1.5.4" } }, "sha512-od496pShMen7nOy5VmVJCnq8rptd45vh6Nx/r2iPbrba6pa6p+tS2ywuIHRZ/OBvSbQZB0kWvpO9XBNVFXHD3Q=="], - "nuxt/unimport": ["unimport@4.1.2", "", { "dependencies": { "acorn": "^8.14.0", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "local-pkg": "^1.0.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "pathe": "^2.0.3", "picomatch": "^4.0.2", "pkg-types": "^1.3.1", "scule": "^1.3.0", "strip-literal": "^3.0.0", "tinyglobby": "^0.2.11", "unplugin": "^2.2.0", "unplugin-utils": "^0.2.4" } }, "sha512-oVUL7PSlyVV3QRhsdcyYEMaDX8HJyS/CnUonEJTYA3//bWO+o/4gG8F7auGWWWkrrxBQBYOO8DKe+C53ktpRXw=="], "nuxt-config-schema/jiti": ["jiti@2.4.2", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A=="], "nuxt-config-schema/untyped": ["untyped@1.5.2", "", { "dependencies": { "@babel/core": "^7.26.0", "@babel/standalone": "^7.26.4", "@babel/types": "^7.26.3", "citty": "^0.1.6", "defu": "^6.1.4", "jiti": "^2.4.1", "knitwork": "^1.2.0", "scule": "^1.3.0" }, "bin": { "untyped": "dist/cli.mjs" } }, "sha512-eL/8PlhLcMmlMDtNPKhyyz9kEBDS3Uk4yMu/ewlkT2WFbtzScjHWPJLdQLmaGPUKjXzwe9MumOtOgc4Fro96Kg=="], - "openapi-typescript/supports-color": ["supports-color@9.4.0", "", {}, "sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw=="], - - "openapi-typescript/yargs-parser": ["yargs-parser@21.1.1", "", {}, "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw=="], - "openid-client/jose": ["jose@4.15.9", "", {}, "sha512-1vUQX+IdDMVPj4k8kOxgUqlcK518yluMuGZwqlr44FS1ppZB/5GWh4rZG89erpOBOJjU/OBsnCVFfapsRz6nEA=="], "openid-client/lru-cache": ["lru-cache@6.0.0", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA=="], "openid-client/object-hash": ["object-hash@2.2.0", "", {}, "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw=="], + "oxc-parser/@oxc-project/types": ["@oxc-project/types@0.56.5", "", {}, "sha512-skY3kOJwp22W4RkaadH1hZ3hqFHjkRrIIE0uQ4VUg+/Chvbl+2pF+B55IrIk2dgsKXS57YEUsJuN6I6s4rgFjA=="], + "parse-entities/@types/unist": ["@types/unist@2.0.11", "", {}, "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA=="], "parse-git-config/ini": ["ini@1.3.8", "", {}, "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="], + "parse-json/json-parse-even-better-errors": ["json-parse-even-better-errors@2.3.1", "", {}, "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="], + "pg-types/postgres-array": ["postgres-array@2.0.0", "", {}, "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA=="], + "pinceau/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "pinceau/consola": ["consola@2.15.3", "", {}, "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw=="], "pinceau/nanoid": ["nanoid@4.0.2", "", { "bin": { "nanoid": "bin/nanoid.js" } }, "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw=="], @@ -4782,6 +5188,8 @@ "postcss-nesting/postcss-selector-parser": ["postcss-selector-parser@7.1.0", "", { "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" } }, "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA=="], + "promise-retry/retry": ["retry@0.12.0", "", {}, "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow=="], + "protobufjs/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], "proxy-addr/ipaddr.js": ["ipaddr.js@1.9.1", "", {}, "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g=="], @@ -4794,8 +5202,6 @@ "read-pkg/normalize-package-data": ["normalize-package-data@2.5.0", "", { "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" } }, "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA=="], - "read-pkg/parse-json": ["parse-json@5.2.0", "", { "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", "json-parse-even-better-errors": "^2.3.0", "lines-and-columns": "^1.1.6" } }, "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg=="], - "read-pkg/type-fest": ["type-fest@0.6.0", "", {}, "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg=="], "read-pkg-up/find-up": ["find-up@4.1.0", "", { "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" } }, "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw=="], @@ -4826,6 +5232,8 @@ "rimraf/glob": ["glob@7.2.3", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="], + "rollup/@types/estree": ["@types/estree@1.0.7", "", {}, "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ=="], + "rollup-plugin-dts/rollup": ["rollup@3.29.5", "", { "optionalDependencies": { "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w=="], "rollup-plugin-inject/estree-walker": ["estree-walker@0.6.1", "", {}, "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w=="], @@ -4890,10 +5298,14 @@ "tar-fs/tar-stream": ["tar-stream@2.2.0", "", { "dependencies": { "bl": "^4.0.3", "end-of-stream": "^1.4.1", "fs-constants": "^1.0.0", "inherits": "^2.0.3", "readable-stream": "^3.1.1" } }, "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ=="], + "terser/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "terser/commander": ["commander@2.20.3", "", {}, "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="], "tinyglobby/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], + "ts-node/arg": ["arg@4.1.3", "", {}, "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA=="], + "tsx/esbuild": ["esbuild@0.25.0", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.0", "@esbuild/android-arm": "0.25.0", "@esbuild/android-arm64": "0.25.0", "@esbuild/android-x64": "0.25.0", "@esbuild/darwin-arm64": "0.25.0", "@esbuild/darwin-x64": "0.25.0", "@esbuild/freebsd-arm64": "0.25.0", "@esbuild/freebsd-x64": "0.25.0", "@esbuild/linux-arm": "0.25.0", "@esbuild/linux-arm64": "0.25.0", "@esbuild/linux-ia32": "0.25.0", "@esbuild/linux-loong64": "0.25.0", "@esbuild/linux-mips64el": "0.25.0", "@esbuild/linux-ppc64": "0.25.0", "@esbuild/linux-riscv64": "0.25.0", "@esbuild/linux-s390x": "0.25.0", "@esbuild/linux-x64": "0.25.0", "@esbuild/netbsd-arm64": "0.25.0", "@esbuild/netbsd-x64": "0.25.0", "@esbuild/openbsd-arm64": "0.25.0", "@esbuild/openbsd-x64": "0.25.0", "@esbuild/sunos-x64": "0.25.0", "@esbuild/win32-arm64": "0.25.0", "@esbuild/win32-ia32": "0.25.0", "@esbuild/win32-x64": "0.25.0" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw=="], "tunnel-agent/safe-buffer": ["safe-buffer@5.2.1", "", {}, "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="], @@ -4916,10 +5328,16 @@ "unbuild/untyped": ["untyped@1.5.2", "", { "dependencies": { "@babel/core": "^7.26.0", "@babel/standalone": "^7.26.4", "@babel/types": "^7.26.3", "citty": "^0.1.6", "defu": "^6.1.4", "jiti": "^2.4.1", "knitwork": "^1.2.0", "scule": "^1.3.0" }, "bin": { "untyped": "dist/cli.mjs" } }, "sha512-eL/8PlhLcMmlMDtNPKhyyz9kEBDS3Uk4yMu/ewlkT2WFbtzScjHWPJLdQLmaGPUKjXzwe9MumOtOgc4Fro96Kg=="], + "unctx/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + + "unctx/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "unenv/ohash": ["ohash@2.0.11", "", {}, "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ=="], "unenv/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], + "unimport/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "unimport/escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], "unimport/local-pkg": ["local-pkg@1.1.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.0.1", "quansync": "^0.2.8" } }, "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg=="], @@ -4942,6 +5360,8 @@ "unplugin-vue-router/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], + "unplugin-vue-router/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "unstorage/chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], "untyped/jiti": ["jiti@2.4.2", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A=="], @@ -4960,6 +5380,8 @@ "vite-dev-rpc/vite-hot-client": ["vite-hot-client@2.0.4", "", { "peerDependencies": { "vite": "^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0" } }, "sha512-W9LOGAyGMrbGArYJN4LBCdOC5+Zwh7dHvOHC0KmGKkJhsOzaKbpo/jEjpPKVHIW0/jBWj8RZG0NUxfgA8BxgAg=="], + "vite-node/vite": ["vite@5.4.12", "", { "dependencies": { "esbuild": "^0.21.3", "postcss": "^8.4.43", "rollup": "^4.20.0" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || >=20.0.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" }, "optionalPeers": ["@types/node", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser"], "bin": { "vite": "bin/vite.js" } }, "sha512-KwUaKB27TvWwDJr1GjjWthLMATbGEbeWYZIbGZ5qFIsgPP3vWzLu4cVooqhm5/Z2SPDUMjyPVjTztm5tYKwQxA=="], + "vite-plugin-checker/chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], "vite-plugin-checker/npm-run-path": ["npm-run-path@6.0.0", "", { "dependencies": { "path-key": "^4.0.0", "unicorn-magic": "^0.3.0" } }, "sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA=="], @@ -4970,7 +5392,7 @@ "vite-plugin-vue-tracer/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], - "vite-plugin-vue-tracer/vite": ["vite@6.2.1", "", { "dependencies": { "esbuild": "^0.25.0", "postcss": "^8.5.3", "rollup": "^4.30.1" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-n2GnqDb6XPhlt9B8olZPrgMD/es/Nd1RdChF6CBD/fHW6pUyUTt2sQW2fPRX5GiD9XEa6+8A6A4f2vT6pSsE7Q=="], + "vite-plugin-vue-tracer/vite": ["vite@6.2.3", "", { "dependencies": { "esbuild": "^0.25.0", "postcss": "^8.5.3", "rollup": "^4.30.1" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg=="], "which-builtin-type/isarray": ["isarray@2.0.5", "", {}, "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="], @@ -4982,14 +5404,260 @@ "youch-core/error-stack-parser-es": ["error-stack-parser-es@1.0.5", "", {}, "sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA=="], + "@actor-core/memory/@types/node/undici-types": ["undici-types@6.20.0", "", {}, "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="], + "@apidevtools/json-schema-ref-parser/js-yaml/argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], + "@aws-crypto/sha256-browser/@aws-sdk/types/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + "@aws-crypto/sha256-browser/@smithy/util-utf8/@smithy/util-buffer-from": ["@smithy/util-buffer-from@2.2.0", "", { "dependencies": { "@smithy/is-array-buffer": "^2.2.0", "tslib": "^2.6.2" } }, "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA=="], + "@aws-crypto/sha256-js/@aws-sdk/types/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + + "@aws-crypto/util/@aws-sdk/types/@smithy/types": ["@smithy/types@4.1.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw=="], + "@aws-crypto/util/@smithy/util-utf8/@smithy/util-buffer-from": ["@smithy/util-buffer-from@2.2.0", "", { "dependencies": { "@smithy/is-array-buffer": "^2.2.0", "tslib": "^2.6.2" } }, "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA=="], + "@aws-sdk/client-ecs/@aws-sdk/core/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-ecs/@aws-sdk/core/@smithy/signature-v4": ["@smithy/signature-v4@5.0.1", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-N27eFoRrO6MeUNumtNHDW9WOiwfd59LPXPqDrIa3kWL/s+fOKFHb9xIcF++bAwtcZnAxKkgpDCUP+INNZskE+w=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-Xt9/U8qUCiw1hihztWkNeIR+arg6P+yda10OuCHX6kFVx3auTlU7+hCqs3UxqniGU4dguHuftf3mRpi5/GJ33Q=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-cymSKMcP5d+OsgetoIZ5QCe1wnp2Q/tq+uIxVdh9MbfdBBEnl9Ecq6dH6VlYS89sp4QKuxHxkWXVnbXU3Q19Aw=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-AzcY74QTPqcbXWVgjpPZ3HOmxQZYPROIBz2YINF0OQk0MhezDWV/O7Xec+K1+MPGQO3qS6EDrUUlnPLjsqieHA=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.758.0", "", { "dependencies": { "@aws-sdk/client-sso": "3.758.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/token-providers": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-x0FYJqcOLUCv8GLLFDYMXRAQKGjoM+L0BG4BiHYZRDf24yQWFCAZsCQAYKo6XZYh2qznbsW6f//qpyJ5b0QVKQ=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-XGguXhBqiCXMXRxcfCAVPlMbm3VyJTou79r/3mxWddHWF0XbhaQiBIbUz6vobVTD25YQRbWSmSch7VA8kI5Lrw=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-ecs/@smithy/core/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-ecs/@smithy/fetch-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-ecs/@smithy/middleware-endpoint/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-ecs/@smithy/middleware-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/client-ecs/@smithy/node-config-provider/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-ecs/@smithy/node-config-provider/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-ecs/@smithy/node-http-handler/@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + + "@aws-sdk/client-ecs/@smithy/node-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-ecs/@smithy/smithy-client/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-ecs/@smithy/url-parser/@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw=="], + + "@aws-sdk/client-ecs/@smithy/util-defaults-mode-browser/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-ecs/@smithy/util-defaults-mode-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-ecs/@smithy/util-defaults-mode-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-ecs/@smithy/util-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/client-rds-data/@aws-sdk/core/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-rds-data/@aws-sdk/core/@smithy/signature-v4": ["@smithy/signature-v4@5.0.1", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-N27eFoRrO6MeUNumtNHDW9WOiwfd59LPXPqDrIa3kWL/s+fOKFHb9xIcF++bAwtcZnAxKkgpDCUP+INNZskE+w=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-Xt9/U8qUCiw1hihztWkNeIR+arg6P+yda10OuCHX6kFVx3auTlU7+hCqs3UxqniGU4dguHuftf3mRpi5/GJ33Q=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-cymSKMcP5d+OsgetoIZ5QCe1wnp2Q/tq+uIxVdh9MbfdBBEnl9Ecq6dH6VlYS89sp4QKuxHxkWXVnbXU3Q19Aw=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-AzcY74QTPqcbXWVgjpPZ3HOmxQZYPROIBz2YINF0OQk0MhezDWV/O7Xec+K1+MPGQO3qS6EDrUUlnPLjsqieHA=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.758.0", "", { "dependencies": { "@aws-sdk/client-sso": "3.758.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/token-providers": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-x0FYJqcOLUCv8GLLFDYMXRAQKGjoM+L0BG4BiHYZRDf24yQWFCAZsCQAYKo6XZYh2qznbsW6f//qpyJ5b0QVKQ=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-XGguXhBqiCXMXRxcfCAVPlMbm3VyJTou79r/3mxWddHWF0XbhaQiBIbUz6vobVTD25YQRbWSmSch7VA8kI5Lrw=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-rds-data/@smithy/core/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-rds-data/@smithy/fetch-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-endpoint/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/client-rds-data/@smithy/middleware-retry/uuid": ["uuid@9.0.1", "", { "bin": { "uuid": "dist/bin/uuid" } }, "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="], + + "@aws-sdk/client-rds-data/@smithy/node-config-provider/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-rds-data/@smithy/node-config-provider/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-rds-data/@smithy/node-http-handler/@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + + "@aws-sdk/client-rds-data/@smithy/node-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-rds-data/@smithy/smithy-client/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-rds-data/@smithy/url-parser/@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw=="], + + "@aws-sdk/client-rds-data/@smithy/util-defaults-mode-browser/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-rds-data/@smithy/util-defaults-mode-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-rds-data/@smithy/util-defaults-mode-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-rds-data/@smithy/util-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/client-sesv2/@aws-sdk/core/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sesv2/@aws-sdk/core/@smithy/signature-v4": ["@smithy/signature-v4@5.0.1", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-N27eFoRrO6MeUNumtNHDW9WOiwfd59LPXPqDrIa3kWL/s+fOKFHb9xIcF++bAwtcZnAxKkgpDCUP+INNZskE+w=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-Xt9/U8qUCiw1hihztWkNeIR+arg6P+yda10OuCHX6kFVx3auTlU7+hCqs3UxqniGU4dguHuftf3mRpi5/GJ33Q=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-cymSKMcP5d+OsgetoIZ5QCe1wnp2Q/tq+uIxVdh9MbfdBBEnl9Ecq6dH6VlYS89sp4QKuxHxkWXVnbXU3Q19Aw=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-AzcY74QTPqcbXWVgjpPZ3HOmxQZYPROIBz2YINF0OQk0MhezDWV/O7Xec+K1+MPGQO3qS6EDrUUlnPLjsqieHA=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.758.0", "", { "dependencies": { "@aws-sdk/client-sso": "3.758.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/token-providers": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-x0FYJqcOLUCv8GLLFDYMXRAQKGjoM+L0BG4BiHYZRDf24yQWFCAZsCQAYKo6XZYh2qznbsW6f//qpyJ5b0QVKQ=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-XGguXhBqiCXMXRxcfCAVPlMbm3VyJTou79r/3mxWddHWF0XbhaQiBIbUz6vobVTD25YQRbWSmSch7VA8kI5Lrw=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-sesv2/@smithy/core/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-sesv2/@smithy/fetch-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-endpoint/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/client-sesv2/@smithy/middleware-retry/uuid": ["uuid@9.0.1", "", { "bin": { "uuid": "dist/bin/uuid" } }, "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="], + + "@aws-sdk/client-sesv2/@smithy/node-config-provider/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sesv2/@smithy/node-config-provider/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-sesv2/@smithy/node-http-handler/@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + + "@aws-sdk/client-sesv2/@smithy/node-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-sesv2/@smithy/smithy-client/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-sesv2/@smithy/url-parser/@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw=="], + + "@aws-sdk/client-sesv2/@smithy/util-defaults-mode-browser/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sesv2/@smithy/util-defaults-mode-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-sesv2/@smithy/util-defaults-mode-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sesv2/@smithy/util-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/client-sqs/@aws-sdk/core/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sqs/@aws-sdk/core/@smithy/signature-v4": ["@smithy/signature-v4@5.0.1", "", { "dependencies": { "@smithy/is-array-buffer": "^4.0.0", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-N27eFoRrO6MeUNumtNHDW9WOiwfd59LPXPqDrIa3kWL/s+fOKFHb9xIcF++bAwtcZnAxKkgpDCUP+INNZskE+w=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/property-provider": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/util-stream": "^4.1.2", "tslib": "^2.6.2" } }, "sha512-Xt9/U8qUCiw1hihztWkNeIR+arg6P+yda10OuCHX6kFVx3auTlU7+hCqs3UxqniGU4dguHuftf3mRpi5/GJ33Q=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/credential-provider-env": "3.758.0", "@aws-sdk/credential-provider-http": "3.758.0", "@aws-sdk/credential-provider-process": "3.758.0", "@aws-sdk/credential-provider-sso": "3.758.0", "@aws-sdk/credential-provider-web-identity": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/credential-provider-imds": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-cymSKMcP5d+OsgetoIZ5QCe1wnp2Q/tq+uIxVdh9MbfdBBEnl9Ecq6dH6VlYS89sp4QKuxHxkWXVnbXU3Q19Aw=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-AzcY74QTPqcbXWVgjpPZ3HOmxQZYPROIBz2YINF0OQk0MhezDWV/O7Xec+K1+MPGQO3qS6EDrUUlnPLjsqieHA=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.758.0", "", { "dependencies": { "@aws-sdk/client-sso": "3.758.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/token-providers": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-x0FYJqcOLUCv8GLLFDYMXRAQKGjoM+L0BG4BiHYZRDf24yQWFCAZsCQAYKo6XZYh2qznbsW6f//qpyJ5b0QVKQ=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.758.0", "", { "dependencies": { "@aws-sdk/core": "3.758.0", "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-XGguXhBqiCXMXRxcfCAVPlMbm3VyJTou79r/3mxWddHWF0XbhaQiBIbUz6vobVTD25YQRbWSmSch7VA8kI5Lrw=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-sqs/@smithy/core/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-sqs/@smithy/fetch-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-sqs/@smithy/middleware-endpoint/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-sqs/@smithy/middleware-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/client-sqs/@smithy/middleware-retry/uuid": ["uuid@9.0.1", "", { "bin": { "uuid": "dist/bin/uuid" } }, "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="], + + "@aws-sdk/client-sqs/@smithy/node-config-provider/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sqs/@smithy/node-config-provider/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/client-sqs/@smithy/node-http-handler/@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + + "@aws-sdk/client-sqs/@smithy/node-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/client-sqs/@smithy/smithy-client/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-sqs/@smithy/url-parser/@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw=="], + + "@aws-sdk/client-sqs/@smithy/util-defaults-mode-browser/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sqs/@smithy/util-defaults-mode-node/@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.0.1", "", { "dependencies": { "@smithy/node-config-provider": "^4.0.1", "@smithy/property-provider": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg=="], + + "@aws-sdk/client-sqs/@smithy/util-defaults-mode-node/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/client-sqs/@smithy/util-retry/@smithy/service-error-classification": ["@smithy/service-error-classification@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0" } }, "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA=="], + + "@aws-sdk/middleware-sdk-s3/@aws-sdk/core/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/core/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/node-config-provider/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/node-config-provider/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/smithy-client/@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.0.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-serde": "^4.0.2", "@smithy/node-config-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/smithy-client/@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/util-stream/@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/util-stream/@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.3", "", { "dependencies": { "@smithy/abort-controller": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/core": ["@smithy/core@3.1.5", "", { "dependencies": { "@smithy/middleware-serde": "^4.0.2", "@smithy/protocol-http": "^5.0.1", "@smithy/types": "^4.1.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-middleware": "^4.0.1", "@smithy/util-stream": "^4.1.2", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.0.6", "", { "dependencies": { "@smithy/core": "^3.1.5", "@smithy/middleware-serde": "^4.0.2", "@smithy/node-config-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-middleware": "^4.0.1", "tslib": "^2.6.2" } }, "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-stack": ["@smithy/middleware-stack@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/protocol-http": ["@smithy/protocol-http@5.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/signature-v4-multi-region/@smithy/signature-v4/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + "@babel/helper-compilation-targets/lru-cache/yallist": ["yallist@3.1.1", "", {}, "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="], + "@builder.io/qwik-city/vite/esbuild": ["esbuild@0.21.5", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.21.5", "@esbuild/android-arm": "0.21.5", "@esbuild/android-arm64": "0.21.5", "@esbuild/android-x64": "0.21.5", "@esbuild/darwin-arm64": "0.21.5", "@esbuild/darwin-x64": "0.21.5", "@esbuild/freebsd-arm64": "0.21.5", "@esbuild/freebsd-x64": "0.21.5", "@esbuild/linux-arm": "0.21.5", "@esbuild/linux-arm64": "0.21.5", "@esbuild/linux-ia32": "0.21.5", "@esbuild/linux-loong64": "0.21.5", "@esbuild/linux-mips64el": "0.21.5", "@esbuild/linux-ppc64": "0.21.5", "@esbuild/linux-riscv64": "0.21.5", "@esbuild/linux-s390x": "0.21.5", "@esbuild/linux-x64": "0.21.5", "@esbuild/netbsd-x64": "0.21.5", "@esbuild/openbsd-x64": "0.21.5", "@esbuild/sunos-x64": "0.21.5", "@esbuild/win32-arm64": "0.21.5", "@esbuild/win32-ia32": "0.21.5", "@esbuild/win32-x64": "0.21.5" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw=="], + + "@builder.io/qwik-city/vite/rollup": ["rollup@4.35.0", "", { "dependencies": { "@types/estree": "1.0.6" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.35.0", "@rollup/rollup-android-arm64": "4.35.0", "@rollup/rollup-darwin-arm64": "4.35.0", "@rollup/rollup-darwin-x64": "4.35.0", "@rollup/rollup-freebsd-arm64": "4.35.0", "@rollup/rollup-freebsd-x64": "4.35.0", "@rollup/rollup-linux-arm-gnueabihf": "4.35.0", "@rollup/rollup-linux-arm-musleabihf": "4.35.0", "@rollup/rollup-linux-arm64-gnu": "4.35.0", "@rollup/rollup-linux-arm64-musl": "4.35.0", "@rollup/rollup-linux-loongarch64-gnu": "4.35.0", "@rollup/rollup-linux-powerpc64le-gnu": "4.35.0", "@rollup/rollup-linux-riscv64-gnu": "4.35.0", "@rollup/rollup-linux-s390x-gnu": "4.35.0", "@rollup/rollup-linux-x64-gnu": "4.35.0", "@rollup/rollup-linux-x64-musl": "4.35.0", "@rollup/rollup-win32-arm64-msvc": "4.35.0", "@rollup/rollup-win32-ia32-msvc": "4.35.0", "@rollup/rollup-win32-x64-msvc": "4.35.0", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg=="], + "@esbuild-kit/core-utils/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.18.20", "", { "os": "android", "cpu": "arm" }, "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw=="], "@esbuild-kit/core-utils/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.18.20", "", { "os": "android", "cpu": "arm64" }, "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ=="], @@ -5066,6 +5734,8 @@ "@mapbox/node-pre-gyp/tar/yallist": ["yallist@5.0.0", "", {}, "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw=="], + "@modelcontextprotocol/sdk/eventsource/eventsource-parser": ["eventsource-parser@3.0.0", "", {}, "sha512-T1C0XCUimhxVQzW4zFipdx0SficT651NnkR0ZSH3yQwh+mFMdLfgjABVi4YtMTtaL4s168593DaoaRLMqryavA=="], + "@nestri/sdk/@types/node/undici-types": ["undici-types@5.26.5", "", {}, "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA=="], "@nestri/web/@types/node/undici-types": ["undici-types@6.20.0", "", {}, "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="], @@ -5120,10 +5790,14 @@ "@nuxt/cli/chokidar/readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], + "@nuxt/cli/nypm/consola": ["consola@3.4.0", "", {}, "sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA=="], + "@nuxt/cli/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], "@nuxt/content/@vueuse/core/@types/web-bluetooth": ["@types/web-bluetooth@0.0.20", "", {}, "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow=="], + "@nuxt/devtools-kit/@nuxt/schema/pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], + "@nuxt/devtools-kit/execa/human-signals": ["human-signals@4.3.1", "", {}, "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ=="], "@nuxt/devtools-kit/execa/is-stream": ["is-stream@3.0.0", "", {}, "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="], @@ -5176,6 +5850,8 @@ "@nuxt/kit/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], + "@nuxt/kit/unimport/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "@nuxt/kit/unimport/escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], "@nuxt/kit/unimport/local-pkg": ["local-pkg@1.1.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.0.1", "quansync": "^0.2.8" } }, "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg=="], @@ -5184,55 +5860,71 @@ "@nuxt/kit/unimport/pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="], + "@nuxt/kit/unimport/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + + "@nuxt/telemetry/@nuxt/kit/ignore": ["ignore@7.0.3", "", {}, "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA=="], + + "@nuxt/telemetry/@nuxt/kit/jiti": ["jiti@2.4.2", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A=="], + + "@nuxt/telemetry/@nuxt/kit/ohash": ["ohash@2.0.11", "", {}, "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ=="], + + "@nuxt/telemetry/@nuxt/kit/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], + + "@nuxt/telemetry/@nuxt/kit/unimport": ["unimport@4.1.2", "", { "dependencies": { "acorn": "^8.14.0", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "local-pkg": "^1.0.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "pathe": "^2.0.3", "picomatch": "^4.0.2", "pkg-types": "^1.3.1", "scule": "^1.3.0", "strip-literal": "^3.0.0", "tinyglobby": "^0.2.11", "unplugin": "^2.2.0", "unplugin-utils": "^0.2.4" } }, "sha512-oVUL7PSlyVV3QRhsdcyYEMaDX8HJyS/CnUonEJTYA3//bWO+o/4gG8F7auGWWWkrrxBQBYOO8DKe+C53ktpRXw=="], + "@nuxt/telemetry/git-url-parse/git-up": ["git-up@8.0.1", "", { "dependencies": { "is-ssh": "^1.4.0", "parse-url": "^9.2.0" } }, "sha512-2XFu1uNZMSjkyetaF+8rqn6P0XqpMq/C+2ycjI6YwrIKcszZ5/WR4UubxjN0lILOKqLkLaHDaCr2B6fP1cke6g=="], "@nuxt/ui/@vueuse/integrations/@vueuse/shared": ["@vueuse/shared@12.8.2", "", { "dependencies": { "vue": "^3.5.13" } }, "sha512-dznP38YzxZoNloI0qpEfpkms8knDtaoQ6Y/sfS0L7Yki4zh40LFHEhur0odJC6xTHG5dxWVPiUWBXn+wCG2s5w=="], - "@nuxt/vite-builder/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.0", "", { "os": "aix", "cpu": "ppc64" }, "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ=="], + "@nuxt/vite-builder/@nuxt/kit/ignore": ["ignore@7.0.3", "", {}, "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA=="], - "@nuxt/vite-builder/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.0", "", { "os": "android", "cpu": "arm" }, "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g=="], + "@nuxt/vite-builder/@nuxt/kit/unimport": ["unimport@4.1.2", "", { "dependencies": { "acorn": "^8.14.0", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "local-pkg": "^1.0.0", "magic-string": "^0.30.17", "mlly": "^1.7.4", "pathe": "^2.0.3", "picomatch": "^4.0.2", "pkg-types": "^1.3.1", "scule": "^1.3.0", "strip-literal": "^3.0.0", "tinyglobby": "^0.2.11", "unplugin": "^2.2.0", "unplugin-utils": "^0.2.4" } }, "sha512-oVUL7PSlyVV3QRhsdcyYEMaDX8HJyS/CnUonEJTYA3//bWO+o/4gG8F7auGWWWkrrxBQBYOO8DKe+C53ktpRXw=="], - "@nuxt/vite-builder/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.0", "", { "os": "android", "cpu": "arm64" }, "sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g=="], + "@nuxt/vite-builder/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ=="], - "@nuxt/vite-builder/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.0", "", { "os": "android", "cpu": "x64" }, "sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg=="], + "@nuxt/vite-builder/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.1", "", { "os": "android", "cpu": "arm" }, "sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q=="], - "@nuxt/vite-builder/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw=="], + "@nuxt/vite-builder/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.1", "", { "os": "android", "cpu": "arm64" }, "sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA=="], - "@nuxt/vite-builder/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg=="], + "@nuxt/vite-builder/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.1", "", { "os": "android", "cpu": "x64" }, "sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw=="], - "@nuxt/vite-builder/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w=="], + "@nuxt/vite-builder/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ=="], - "@nuxt/vite-builder/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A=="], + "@nuxt/vite-builder/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.0", "", { "os": "linux", "cpu": "arm" }, "sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg=="], + "@nuxt/vite-builder/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg=="], + "@nuxt/vite-builder/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.0", "", { "os": "linux", "cpu": "ia32" }, "sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.1", "", { "os": "linux", "cpu": "arm" }, "sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg=="], - "@nuxt/vite-builder/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.0", "", { "os": "linux", "cpu": "x64" }, "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ=="], - "@nuxt/vite-builder/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.0", "", { "os": "none", "cpu": "x64" }, "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ=="], - "@nuxt/vite-builder/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.0", "", { "os": "openbsd", "cpu": "x64" }, "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg=="], + "@nuxt/vite-builder/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.1", "", { "os": "linux", "cpu": "x64" }, "sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA=="], - "@nuxt/vite-builder/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.0", "", { "os": "sunos", "cpu": "x64" }, "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg=="], + "@nuxt/vite-builder/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.1", "", { "os": "none", "cpu": "x64" }, "sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA=="], - "@nuxt/vite-builder/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw=="], + "@nuxt/vite-builder/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw=="], - "@nuxt/vite-builder/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA=="], + "@nuxt/vite-builder/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg=="], - "@nuxt/vite-builder/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.0", "", { "os": "win32", "cpu": "x64" }, "sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ=="], + "@nuxt/vite-builder/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ=="], + + "@nuxt/vite-builder/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A=="], + + "@nuxt/vite-builder/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.1", "", { "os": "win32", "cpu": "x64" }, "sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg=="], "@nuxt/vite-builder/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], @@ -5252,10 +5944,6 @@ "@opentelemetry/sdk-node/@opentelemetry/sdk-trace-node/@opentelemetry/propagator-jaeger": ["@opentelemetry/propagator-jaeger@1.29.0", "", { "dependencies": { "@opentelemetry/core": "1.29.0" }, "peerDependencies": { "@opentelemetry/api": ">=1.0.0 <1.10.0" } }, "sha512-EXIEYmFgybnFMijVgqx1mq/diWwSQcd0JWVksytAVQEnAiaDvP45WuncEVQkFIAC0gVxa2+Xr8wL5pF5jCVKbg=="], - "@redocly/openapi-core/js-yaml/argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], - - "@redocly/openapi-core/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], - "@rocicorp/zero/chokidar/readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], "@stylistic/eslint-plugin/@typescript-eslint/utils/@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.26.0", "", { "dependencies": { "@typescript-eslint/types": "8.26.0", "@typescript-eslint/visitor-keys": "8.26.0" } }, "sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA=="], @@ -5264,11 +5952,13 @@ "@stylistic/eslint-plugin/@typescript-eslint/utils/@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.26.0", "", { "dependencies": { "@typescript-eslint/types": "8.26.0", "@typescript-eslint/visitor-keys": "8.26.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "typescript": ">=4.8.4 <5.9.0" } }, "sha512-tiJ1Hvy/V/oMVRTbEOIeemA2XoylimlDQ03CgPPNaHYZbpsc78Hmngnt+WXZfJX1pjQ711V7g0H7cSJThGYfPQ=="], + "@stylistic/eslint-plugin/espree/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "@tufjs/models/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], - "@types/cacheable-request/@types/node/undici-types": ["undici-types@6.20.0", "", {}, "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="], + "@types/bun/bun-types/@types/node": ["@types/node@22.13.10", "", { "dependencies": { "undici-types": "~6.20.0" } }, "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw=="], - "@types/http-proxy/@types/node/undici-types": ["undici-types@6.20.0", "", {}, "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="], + "@types/cacheable-request/@types/node/undici-types": ["undici-types@6.20.0", "", {}, "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="], "@types/keyv/@types/node/undici-types": ["undici-types@6.20.0", "", {}, "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="], @@ -5284,6 +5974,10 @@ "@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], + "@vanilla-extract/integration/vite/esbuild": ["esbuild@0.21.5", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.21.5", "@esbuild/android-arm": "0.21.5", "@esbuild/android-arm64": "0.21.5", "@esbuild/android-x64": "0.21.5", "@esbuild/darwin-arm64": "0.21.5", "@esbuild/darwin-x64": "0.21.5", "@esbuild/freebsd-arm64": "0.21.5", "@esbuild/freebsd-x64": "0.21.5", "@esbuild/linux-arm": "0.21.5", "@esbuild/linux-arm64": "0.21.5", "@esbuild/linux-ia32": "0.21.5", "@esbuild/linux-loong64": "0.21.5", "@esbuild/linux-mips64el": "0.21.5", "@esbuild/linux-ppc64": "0.21.5", "@esbuild/linux-riscv64": "0.21.5", "@esbuild/linux-s390x": "0.21.5", "@esbuild/linux-x64": "0.21.5", "@esbuild/netbsd-x64": "0.21.5", "@esbuild/openbsd-x64": "0.21.5", "@esbuild/sunos-x64": "0.21.5", "@esbuild/win32-arm64": "0.21.5", "@esbuild/win32-ia32": "0.21.5", "@esbuild/win32-x64": "0.21.5" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw=="], + + "@vanilla-extract/integration/vite/rollup": ["rollup@4.35.0", "", { "dependencies": { "@types/estree": "1.0.6" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.35.0", "@rollup/rollup-android-arm64": "4.35.0", "@rollup/rollup-darwin-arm64": "4.35.0", "@rollup/rollup-darwin-x64": "4.35.0", "@rollup/rollup-freebsd-arm64": "4.35.0", "@rollup/rollup-freebsd-x64": "4.35.0", "@rollup/rollup-linux-arm-gnueabihf": "4.35.0", "@rollup/rollup-linux-arm-musleabihf": "4.35.0", "@rollup/rollup-linux-arm64-gnu": "4.35.0", "@rollup/rollup-linux-arm64-musl": "4.35.0", "@rollup/rollup-linux-loongarch64-gnu": "4.35.0", "@rollup/rollup-linux-powerpc64le-gnu": "4.35.0", "@rollup/rollup-linux-riscv64-gnu": "4.35.0", "@rollup/rollup-linux-s390x-gnu": "4.35.0", "@rollup/rollup-linux-x64-gnu": "4.35.0", "@rollup/rollup-linux-x64-musl": "4.35.0", "@rollup/rollup-win32-arm64-msvc": "4.35.0", "@rollup/rollup-win32-ia32-msvc": "4.35.0", "@rollup/rollup-win32-x64-msvc": "4.35.0", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg=="], + "@volar/typescript/@volar/language-core/@volar/source-map": ["@volar/source-map@2.4.12", "", {}, "sha512-bUFIKvn2U0AWojOaqf63ER0N/iHIBYZPpNGogfLPQ68F5Eet6FnLlyho7BS0y2HJ1jFhSif7AcuTx1TqsCzRzw=="], "@volar/vue-language-core/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], @@ -5380,13 +6074,15 @@ "eslint-plugin-import-x/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], + "eslint-plugin-jsdoc/espree/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "eslint-plugin-jsdoc/espree/eslint-visitor-keys": ["eslint-visitor-keys@4.2.0", "", {}, "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw=="], - "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.26.0", "", { "dependencies": { "@typescript-eslint/types": "8.26.0", "@typescript-eslint/visitor-keys": "8.26.0" } }, "sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA=="], + "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.28.0", "", { "dependencies": { "@typescript-eslint/types": "8.28.0", "@typescript-eslint/visitor-keys": "8.28.0" } }, "sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw=="], - "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/types": ["@typescript-eslint/types@8.26.0", "", {}, "sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA=="], + "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/types": ["@typescript-eslint/types@8.28.0", "", {}, "sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA=="], - "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.26.0", "", { "dependencies": { "@typescript-eslint/types": "8.26.0", "@typescript-eslint/visitor-keys": "8.26.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "typescript": ">=4.8.4 <5.9.0" } }, "sha512-tiJ1Hvy/V/oMVRTbEOIeemA2XoylimlDQ03CgPPNaHYZbpsc78Hmngnt+WXZfJX1pjQ711V7g0H7cSJThGYfPQ=="], + "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.28.0", "", { "dependencies": { "@typescript-eslint/types": "8.28.0", "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", "ts-api-utils": "^2.0.1" }, "peerDependencies": { "typescript": ">=4.8.4 <5.9.0" } }, "sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA=="], "eslint/ajv/json-schema-traverse": ["json-schema-traverse@0.4.1", "", {}, "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="], @@ -5416,6 +6112,8 @@ "ignore-walk/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], + "impound/unplugin/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "koa-send/http-errors/depd": ["depd@1.1.2", "", {}, "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ=="], "koa-send/http-errors/statuses": ["statuses@1.5.0", "", {}, "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA=="], @@ -5480,53 +6178,61 @@ "mkdist/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.24.2", "", { "os": "win32", "cpu": "x64" }, "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg=="], + "motion/framer-motion/motion-dom": ["motion-dom@12.6.1", "", { "dependencies": { "motion-utils": "^12.5.0" } }, "sha512-8XVsriTUEVOepoIDgE/LDGdg7qaKXWdt+wQA/8z0p8YzJDLYL8gbimZ3YkCLlj7bB2i/4UBD/g+VO7y9ZY0zHQ=="], + + "motion/framer-motion/motion-utils": ["motion-utils@12.5.0", "", {}, "sha512-+hFFzvimn0sBMP9iPxBa9OtRX35ZQ3py0UHnb8U29VD+d8lQ8zH3dTygJWqK7av2v6yhg7scj9iZuvTS0f4+SA=="], + + "nitropack/@cloudflare/kv-asset-handler/mime": ["mime@3.0.0", "", { "bin": { "mime": "cli.js" } }, "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A=="], + "nitropack/chokidar/readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], - "nitropack/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.0", "", { "os": "aix", "cpu": "ppc64" }, "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ=="], + "nitropack/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ=="], - "nitropack/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.0", "", { "os": "android", "cpu": "arm" }, "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g=="], + "nitropack/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.1", "", { "os": "android", "cpu": "arm" }, "sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q=="], - "nitropack/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.0", "", { "os": "android", "cpu": "arm64" }, "sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g=="], + "nitropack/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.1", "", { "os": "android", "cpu": "arm64" }, "sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA=="], - "nitropack/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.0", "", { "os": "android", "cpu": "x64" }, "sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg=="], + "nitropack/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.1", "", { "os": "android", "cpu": "x64" }, "sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw=="], - "nitropack/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw=="], + "nitropack/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ=="], - "nitropack/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg=="], + "nitropack/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA=="], - "nitropack/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w=="], + "nitropack/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A=="], - "nitropack/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A=="], + "nitropack/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww=="], - "nitropack/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.0", "", { "os": "linux", "cpu": "arm" }, "sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg=="], + "nitropack/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.1", "", { "os": "linux", "cpu": "arm" }, "sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ=="], - "nitropack/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg=="], + "nitropack/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ=="], - "nitropack/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.0", "", { "os": "linux", "cpu": "ia32" }, "sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg=="], + "nitropack/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ=="], - "nitropack/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw=="], + "nitropack/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg=="], - "nitropack/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ=="], + "nitropack/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg=="], - "nitropack/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw=="], + "nitropack/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg=="], - "nitropack/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA=="], + "nitropack/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ=="], - "nitropack/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA=="], + "nitropack/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ=="], - "nitropack/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.0", "", { "os": "linux", "cpu": "x64" }, "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw=="], + "nitropack/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.1", "", { "os": "linux", "cpu": "x64" }, "sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA=="], - "nitropack/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.0", "", { "os": "none", "cpu": "x64" }, "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA=="], + "nitropack/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.1", "", { "os": "none", "cpu": "x64" }, "sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA=="], - "nitropack/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.0", "", { "os": "openbsd", "cpu": "x64" }, "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg=="], + "nitropack/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw=="], - "nitropack/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.0", "", { "os": "sunos", "cpu": "x64" }, "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg=="], + "nitropack/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg=="], - "nitropack/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw=="], + "nitropack/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ=="], - "nitropack/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA=="], + "nitropack/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A=="], - "nitropack/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.0", "", { "os": "win32", "cpu": "x64" }, "sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ=="], + "nitropack/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.1", "", { "os": "win32", "cpu": "x64" }, "sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg=="], + + "nitropack/unimport/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], "nitropack/unimport/local-pkg": ["local-pkg@1.1.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.0.1", "quansync": "^0.2.8" } }, "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg=="], @@ -5534,29 +6240,31 @@ "nitropack/unimport/pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="], + "nitropack/unimport/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "nitropack/youch/cookie": ["cookie@1.0.2", "", {}, "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA=="], "node-gyp/which/isexe": ["isexe@3.1.1", "", {}, "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="], - "nuxt/@nuxt/devtools/@nuxt/devtools-kit": ["@nuxt/devtools-kit@2.2.1", "", { "dependencies": { "@nuxt/kit": "^3.15.4", "@nuxt/schema": "^3.15.4", "execa": "^9.5.2" }, "peerDependencies": { "vite": ">=6.0" } }, "sha512-6txRZPOs+YmiuqjaqZy0rls0CjcmNaJPMITZsLS3hTfKAsKOEMslPjgr0jnf4fpFujmkxFZc10txYlG24JZCAA=="], + "nuxt/@nuxt/devtools/@nuxt/devtools-kit": ["@nuxt/devtools-kit@2.3.2", "", { "dependencies": { "@nuxt/kit": "^3.16.1", "@nuxt/schema": "^3.16.1", "execa": "^8.0.1" }, "peerDependencies": { "vite": ">=6.0" } }, "sha512-K0citnz9bSecPCLl4jGfE5I5St+E9XtDmOvYqq3ranGZGZ2Mvs5RwgUkaOrn4rulvUmBGBl7Exwh5YX9PONrEQ=="], - "nuxt/@nuxt/devtools/@nuxt/devtools-wizard": ["@nuxt/devtools-wizard@2.2.1", "", { "dependencies": { "consola": "^3.4.0", "diff": "^7.0.0", "execa": "^9.5.2", "magicast": "^0.3.5", "pathe": "^2.0.3", "pkg-types": "^2.1.0", "prompts": "^2.4.2", "semver": "^7.7.1" }, "bin": { "devtools-wizard": "cli.mjs" } }, "sha512-tJGIwFxwIOsDdpefnSPhiVJEjBC5Kr88EORV6PRYVQRPZThiO8if5UM0qhhkwoDYJ5U21nZpyIzKuCQ6svo9vA=="], + "nuxt/@nuxt/devtools/@nuxt/devtools-wizard": ["@nuxt/devtools-wizard@2.3.2", "", { "dependencies": { "consola": "^3.4.2", "diff": "^7.0.0", "execa": "^8.0.1", "magicast": "^0.3.5", "pathe": "^2.0.3", "pkg-types": "^2.1.0", "prompts": "^2.4.2", "semver": "^7.7.1" }, "bin": { "devtools-wizard": "cli.mjs" } }, "sha512-vrGjcb7O/ojrWM9FXjAyWgMLUTkb9bmQUCXc//wZw8YnJLR/hmmvo0XFwmz31BN7nMLZaMpUclROdlhRSPNf1Q=="], "nuxt/@nuxt/devtools/@vue/devtools-core": ["@vue/devtools-core@7.7.2", "", { "dependencies": { "@vue/devtools-kit": "^7.7.2", "@vue/devtools-shared": "^7.7.2", "mitt": "^3.0.1", "nanoid": "^5.0.9", "pathe": "^2.0.2", "vite-hot-client": "^0.2.4" }, "peerDependencies": { "vue": "^3.0.0" } }, "sha512-lexREWj1lKi91Tblr38ntSsy6CvI8ba7u+jmwh2yruib/ltLUcsIzEjCnrkh1yYGGIKXbAuYV2tOG10fGDB9OQ=="], "nuxt/@nuxt/devtools/@vue/devtools-kit": ["@vue/devtools-kit@7.7.2", "", { "dependencies": { "@vue/devtools-shared": "^7.7.2", "birpc": "^0.2.19", "hookable": "^5.5.3", "mitt": "^3.0.1", "perfect-debounce": "^1.0.0", "speakingurl": "^14.0.1", "superjson": "^2.2.1" } }, "sha512-CY0I1JH3Z8PECbn6k3TqM1Bk9ASWxeMtTCvZr7vb+CHi+X/QwQm5F1/fPagraamKMAHVfuuCbdcnNg1A4CYVWQ=="], - "nuxt/@nuxt/devtools/birpc": ["birpc@2.2.0", "", {}, "sha512-1/22obknhoj56PcE+pZPp6AbWDdY55M81/ofpPW3Ltlp9Eh4zoFFLswvZmNpRTb790CY5tsNfgbYeNOqIARJfQ=="], + "nuxt/@nuxt/devtools/birpc": ["birpc@2.3.0", "", {}, "sha512-ijbtkn/F3Pvzb6jHypHRyve2QApOCZDR25D/VnkY2G/lBNcXCTsnsCxgY4k4PkVB7zfwzYbY3O9Lcqe3xufS5g=="], "nuxt/@nuxt/devtools/error-stack-parser-es": ["error-stack-parser-es@1.0.5", "", {}, "sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA=="], - "nuxt/@nuxt/devtools/execa": ["execa@9.5.2", "", { "dependencies": { "@sindresorhus/merge-streams": "^4.0.0", "cross-spawn": "^7.0.3", "figures": "^6.1.0", "get-stream": "^9.0.0", "human-signals": "^8.0.0", "is-plain-obj": "^4.1.0", "is-stream": "^4.0.1", "npm-run-path": "^6.0.0", "pretty-ms": "^9.0.0", "signal-exit": "^4.1.0", "strip-final-newline": "^4.0.0", "yoctocolors": "^2.0.0" } }, "sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q=="], + "nuxt/@nuxt/devtools/execa": ["execa@8.0.1", "", { "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^8.0.1", "human-signals": "^5.0.0", "is-stream": "^3.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^5.1.0", "onetime": "^6.0.0", "signal-exit": "^4.1.0", "strip-final-newline": "^3.0.0" } }, "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg=="], "nuxt/@nuxt/devtools/fast-npm-meta": ["fast-npm-meta@0.3.1", "", {}, "sha512-W9gVhqRyz2O3j20I0nFmYEyaMC/046oaMRxxAQ0w6noakfbhpLmlIXmnnqSOmVVuJZ6x5hOPVwlv7PocuawZsw=="], "nuxt/@nuxt/devtools/local-pkg": ["local-pkg@1.1.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.0.1", "quansync": "^0.2.8" } }, "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg=="], - "nuxt/@nuxt/devtools/vite": ["vite@6.2.1", "", { "dependencies": { "esbuild": "^0.25.0", "postcss": "^8.5.3", "rollup": "^4.30.1" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-n2GnqDb6XPhlt9B8olZPrgMD/es/Nd1RdChF6CBD/fHW6pUyUTt2sQW2fPRX5GiD9XEa6+8A6A4f2vT6pSsE7Q=="], + "nuxt/@nuxt/devtools/vite": ["vite@6.2.3", "", { "dependencies": { "esbuild": "^0.25.0", "postcss": "^8.5.3", "rollup": "^4.30.1" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg=="], "nuxt/@nuxt/devtools/vite-plugin-inspect": ["vite-plugin-inspect@11.0.0", "", { "dependencies": { "ansis": "^3.16.0", "debug": "^4.4.0", "error-stack-parser-es": "^1.0.5", "ohash": "^2.0.4", "open": "^10.1.0", "perfect-debounce": "^1.0.0", "sirv": "^3.0.1", "unplugin-utils": "^0.2.0", "vite-dev-rpc": "^1.0.7" }, "peerDependencies": { "vite": "^6.0.0" } }, "sha512-Q0RDNcMs1mbI2yGRwOzSapnnA6NFO0j88+Vb8pJX0iYMw34WczwKJi3JgheItDhbWRq/CLUR0cs+ajZpcUaIFQ=="], @@ -5564,60 +6272,66 @@ "nuxt/chokidar/readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], - "nuxt/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.0", "", { "os": "aix", "cpu": "ppc64" }, "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ=="], + "nuxt/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ=="], - "nuxt/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.0", "", { "os": "android", "cpu": "arm" }, "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g=="], + "nuxt/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.1", "", { "os": "android", "cpu": "arm" }, "sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q=="], - "nuxt/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.0", "", { "os": "android", "cpu": "arm64" }, "sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g=="], + "nuxt/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.1", "", { "os": "android", "cpu": "arm64" }, "sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA=="], - "nuxt/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.0", "", { "os": "android", "cpu": "x64" }, "sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg=="], + "nuxt/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.1", "", { "os": "android", "cpu": "x64" }, "sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw=="], - "nuxt/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw=="], + "nuxt/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ=="], - "nuxt/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg=="], + "nuxt/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA=="], - "nuxt/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w=="], + "nuxt/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A=="], - "nuxt/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A=="], + "nuxt/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww=="], - "nuxt/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.0", "", { "os": "linux", "cpu": "arm" }, "sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg=="], + "nuxt/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.1", "", { "os": "linux", "cpu": "arm" }, "sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ=="], - "nuxt/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg=="], + "nuxt/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ=="], - "nuxt/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.0", "", { "os": "linux", "cpu": "ia32" }, "sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg=="], + "nuxt/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ=="], - "nuxt/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw=="], + "nuxt/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg=="], - "nuxt/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ=="], + "nuxt/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg=="], - "nuxt/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw=="], + "nuxt/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg=="], - "nuxt/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA=="], + "nuxt/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ=="], - "nuxt/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA=="], + "nuxt/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ=="], - "nuxt/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.0", "", { "os": "linux", "cpu": "x64" }, "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw=="], + "nuxt/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.1", "", { "os": "linux", "cpu": "x64" }, "sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA=="], - "nuxt/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.0", "", { "os": "none", "cpu": "x64" }, "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA=="], + "nuxt/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.1", "", { "os": "none", "cpu": "x64" }, "sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA=="], - "nuxt/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.0", "", { "os": "openbsd", "cpu": "x64" }, "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg=="], + "nuxt/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw=="], - "nuxt/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.0", "", { "os": "sunos", "cpu": "x64" }, "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg=="], + "nuxt/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg=="], - "nuxt/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw=="], + "nuxt/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ=="], - "nuxt/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA=="], + "nuxt/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A=="], - "nuxt/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.0", "", { "os": "win32", "cpu": "x64" }, "sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ=="], + "nuxt/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.1", "", { "os": "win32", "cpu": "x64" }, "sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg=="], + + "nuxt/nypm/consola": ["consola@3.4.0", "", {}, "sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA=="], "nuxt/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], + "nuxt/unimport/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "nuxt/unimport/local-pkg": ["local-pkg@1.1.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.0.1", "quansync": "^0.2.8" } }, "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg=="], "nuxt/unimport/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], "nuxt/unimport/pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="], + "nuxt/unimport/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "pkg-dir/find-up/locate-path": ["locate-path@7.2.0", "", { "dependencies": { "p-locate": "^6.0.0" } }, "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA=="], "pkg-dir/find-up/path-exists": ["path-exists@5.0.0", "", {}, "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ=="], @@ -5630,8 +6344,6 @@ "read-pkg/normalize-package-data/semver": ["semver@5.7.2", "", { "bin": { "semver": "bin/semver" } }, "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g=="], - "read-pkg/parse-json/json-parse-even-better-errors": ["json-parse-even-better-errors@2.3.1", "", {}, "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="], - "readable-stream/buffer/ieee754": ["ieee754@1.2.1", "", {}, "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="], "readdir-glob/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], @@ -5708,8 +6420,12 @@ "tsx/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.0", "", { "os": "linux", "cpu": "x64" }, "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw=="], + "tsx/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.25.0", "", { "os": "none", "cpu": "arm64" }, "sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw=="], + "tsx/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.0", "", { "os": "none", "cpu": "x64" }, "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA=="], + "tsx/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.25.0", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw=="], + "tsx/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.0", "", { "os": "openbsd", "cpu": "x64" }, "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg=="], "tsx/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.0", "", { "os": "sunos", "cpu": "x64" }, "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg=="], @@ -5784,15 +6500,23 @@ "unplugin-vue-router/local-pkg/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], + "unplugin-vue-router/unplugin/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "unstorage/chokidar/readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], + "unwasm/unplugin/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + + "vite-node/vite/esbuild": ["esbuild@0.21.5", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.21.5", "@esbuild/android-arm": "0.21.5", "@esbuild/android-arm64": "0.21.5", "@esbuild/android-x64": "0.21.5", "@esbuild/darwin-arm64": "0.21.5", "@esbuild/darwin-x64": "0.21.5", "@esbuild/freebsd-arm64": "0.21.5", "@esbuild/freebsd-x64": "0.21.5", "@esbuild/linux-arm": "0.21.5", "@esbuild/linux-arm64": "0.21.5", "@esbuild/linux-ia32": "0.21.5", "@esbuild/linux-loong64": "0.21.5", "@esbuild/linux-mips64el": "0.21.5", "@esbuild/linux-ppc64": "0.21.5", "@esbuild/linux-riscv64": "0.21.5", "@esbuild/linux-s390x": "0.21.5", "@esbuild/linux-x64": "0.21.5", "@esbuild/netbsd-x64": "0.21.5", "@esbuild/openbsd-x64": "0.21.5", "@esbuild/sunos-x64": "0.21.5", "@esbuild/win32-arm64": "0.21.5", "@esbuild/win32-ia32": "0.21.5", "@esbuild/win32-x64": "0.21.5" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw=="], + + "vite-node/vite/rollup": ["rollup@4.35.0", "", { "dependencies": { "@types/estree": "1.0.6" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.35.0", "@rollup/rollup-android-arm64": "4.35.0", "@rollup/rollup-darwin-arm64": "4.35.0", "@rollup/rollup-darwin-x64": "4.35.0", "@rollup/rollup-freebsd-arm64": "4.35.0", "@rollup/rollup-freebsd-x64": "4.35.0", "@rollup/rollup-linux-arm-gnueabihf": "4.35.0", "@rollup/rollup-linux-arm-musleabihf": "4.35.0", "@rollup/rollup-linux-arm64-gnu": "4.35.0", "@rollup/rollup-linux-arm64-musl": "4.35.0", "@rollup/rollup-linux-loongarch64-gnu": "4.35.0", "@rollup/rollup-linux-powerpc64le-gnu": "4.35.0", "@rollup/rollup-linux-riscv64-gnu": "4.35.0", "@rollup/rollup-linux-s390x-gnu": "4.35.0", "@rollup/rollup-linux-x64-gnu": "4.35.0", "@rollup/rollup-linux-x64-musl": "4.35.0", "@rollup/rollup-win32-arm64-msvc": "4.35.0", "@rollup/rollup-win32-ia32-msvc": "4.35.0", "@rollup/rollup-win32-x64-msvc": "4.35.0", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg=="], + "vite-plugin-checker/chokidar/readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], "vite-plugin-checker/npm-run-path/path-key": ["path-key@4.0.0", "", {}, "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ=="], "vite-plugin-checker/strip-ansi/ansi-regex": ["ansi-regex@6.1.0", "", {}, "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA=="], - "vite-plugin-vue-tracer/vite/esbuild": ["esbuild@0.25.0", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.0", "@esbuild/android-arm": "0.25.0", "@esbuild/android-arm64": "0.25.0", "@esbuild/android-x64": "0.25.0", "@esbuild/darwin-arm64": "0.25.0", "@esbuild/darwin-x64": "0.25.0", "@esbuild/freebsd-arm64": "0.25.0", "@esbuild/freebsd-x64": "0.25.0", "@esbuild/linux-arm": "0.25.0", "@esbuild/linux-arm64": "0.25.0", "@esbuild/linux-ia32": "0.25.0", "@esbuild/linux-loong64": "0.25.0", "@esbuild/linux-mips64el": "0.25.0", "@esbuild/linux-ppc64": "0.25.0", "@esbuild/linux-riscv64": "0.25.0", "@esbuild/linux-s390x": "0.25.0", "@esbuild/linux-x64": "0.25.0", "@esbuild/netbsd-arm64": "0.25.0", "@esbuild/netbsd-x64": "0.25.0", "@esbuild/openbsd-arm64": "0.25.0", "@esbuild/openbsd-x64": "0.25.0", "@esbuild/sunos-x64": "0.25.0", "@esbuild/win32-arm64": "0.25.0", "@esbuild/win32-ia32": "0.25.0", "@esbuild/win32-x64": "0.25.0" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw=="], + "vite-plugin-vue-tracer/vite/esbuild": ["esbuild@0.25.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.1", "@esbuild/android-arm": "0.25.1", "@esbuild/android-arm64": "0.25.1", "@esbuild/android-x64": "0.25.1", "@esbuild/darwin-arm64": "0.25.1", "@esbuild/darwin-x64": "0.25.1", "@esbuild/freebsd-arm64": "0.25.1", "@esbuild/freebsd-x64": "0.25.1", "@esbuild/linux-arm": "0.25.1", "@esbuild/linux-arm64": "0.25.1", "@esbuild/linux-ia32": "0.25.1", "@esbuild/linux-loong64": "0.25.1", "@esbuild/linux-mips64el": "0.25.1", "@esbuild/linux-ppc64": "0.25.1", "@esbuild/linux-riscv64": "0.25.1", "@esbuild/linux-s390x": "0.25.1", "@esbuild/linux-x64": "0.25.1", "@esbuild/netbsd-arm64": "0.25.1", "@esbuild/netbsd-x64": "0.25.1", "@esbuild/openbsd-arm64": "0.25.1", "@esbuild/openbsd-x64": "0.25.1", "@esbuild/sunos-x64": "0.25.1", "@esbuild/win32-arm64": "0.25.1", "@esbuild/win32-ia32": "0.25.1", "@esbuild/win32-x64": "0.25.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ=="], "vite/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.21.5", "", { "os": "aix", "cpu": "ppc64" }, "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ=="], @@ -5890,6 +6614,160 @@ "@aws-crypto/util/@smithy/util-utf8/@smithy/util-buffer-from/@smithy/is-array-buffer": ["@smithy/is-array-buffer@2.2.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA=="], + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-BoGO6IIWrLyLxQG6txJw6RT2urmbtlwfggapNCrNPyYjlXpzTSJhBYjndg7TpDATFd0SXL0zm8y/tXsUXNkdYQ=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.758.0", "", { "dependencies": { "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-ckptN1tNrIfQUaGWm/ayW1ddG+imbKN7HHhjFdS4VfItsP0QQOB0+Ov+tpgb4MoNR4JaUghMIVStjIeHN2ks1w=="], + + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-BoGO6IIWrLyLxQG6txJw6RT2urmbtlwfggapNCrNPyYjlXpzTSJhBYjndg7TpDATFd0SXL0zm8y/tXsUXNkdYQ=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.758.0", "", { "dependencies": { "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-ckptN1tNrIfQUaGWm/ayW1ddG+imbKN7HHhjFdS4VfItsP0QQOB0+Ov+tpgb4MoNR4JaUghMIVStjIeHN2ks1w=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-BoGO6IIWrLyLxQG6txJw6RT2urmbtlwfggapNCrNPyYjlXpzTSJhBYjndg7TpDATFd0SXL0zm8y/tXsUXNkdYQ=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.758.0", "", { "dependencies": { "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-ckptN1tNrIfQUaGWm/ayW1ddG+imbKN7HHhjFdS4VfItsP0QQOB0+Ov+tpgb4MoNR4JaUghMIVStjIeHN2ks1w=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-http/@smithy/util-stream": ["@smithy/util-stream@4.1.2", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-ini/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-BoGO6IIWrLyLxQG6txJw6RT2urmbtlwfggapNCrNPyYjlXpzTSJhBYjndg7TpDATFd0SXL0zm8y/tXsUXNkdYQ=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.758.0", "", { "dependencies": { "@aws-sdk/nested-clients": "3.758.0", "@aws-sdk/types": "3.734.0", "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-ckptN1tNrIfQUaGWm/ayW1ddG+imbKN7HHhjFdS4VfItsP0QQOB0+Ov+tpgb4MoNR4JaUghMIVStjIeHN2ks1w=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/url-parser": ["@smithy/url-parser@4.0.1", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/util-stream/@smithy/fetch-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/util-stream/@smithy/node-http-handler/@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/util-stream/@smithy/node-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/core/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/core/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/middleware-serde": ["@smithy/middleware-serde@4.0.2", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/node-config-provider": ["@smithy/node-config-provider@4.0.1", "", { "dependencies": { "@smithy/property-provider": "^4.0.1", "@smithy/shared-ini-file-loader": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/shared-ini-file-loader": ["@smithy/shared-ini-file-loader@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/url-parser": ["@smithy/url-parser@4.0.1", "", { "dependencies": { "@smithy/querystring-parser": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/util-middleware": ["@smithy/util-middleware@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/util-stream/@smithy/fetch-http-handler": ["@smithy/fetch-http-handler@5.0.1", "", { "dependencies": { "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/util-stream/@smithy/node-http-handler": ["@smithy/node-http-handler@4.0.3", "", { "dependencies": { "@smithy/abort-controller": "^4.0.1", "@smithy/protocol-http": "^5.0.1", "@smithy/querystring-builder": "^4.0.1", "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.21.5", "", { "os": "aix", "cpu": "ppc64" }, "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.21.5", "", { "os": "android", "cpu": "arm" }, "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.21.5", "", { "os": "android", "cpu": "arm64" }, "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.21.5", "", { "os": "android", "cpu": "x64" }, "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.21.5", "", { "os": "darwin", "cpu": "arm64" }, "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.21.5", "", { "os": "darwin", "cpu": "x64" }, "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.21.5", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.21.5", "", { "os": "freebsd", "cpu": "x64" }, "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.21.5", "", { "os": "linux", "cpu": "arm" }, "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.21.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.21.5", "", { "os": "linux", "cpu": "ia32" }, "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.21.5", "", { "os": "linux", "cpu": "ppc64" }, "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.21.5", "", { "os": "linux", "cpu": "s390x" }, "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.21.5", "", { "os": "linux", "cpu": "x64" }, "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.21.5", "", { "os": "none", "cpu": "x64" }, "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.21.5", "", { "os": "openbsd", "cpu": "x64" }, "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.21.5", "", { "os": "sunos", "cpu": "x64" }, "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.21.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.21.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA=="], + + "@builder.io/qwik-city/vite/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.21.5", "", { "os": "win32", "cpu": "x64" }, "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.35.0", "", { "os": "android", "cpu": "arm" }, "sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.35.0", "", { "os": "android", "cpu": "arm64" }, "sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.35.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.35.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.35.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.35.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-loongarch64-gnu": ["@rollup/rollup-linux-loongarch64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-powerpc64le-gnu": ["@rollup/rollup-linux-powerpc64le-gnu@4.35.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.35.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.35.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.35.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw=="], + + "@builder.io/qwik-city/vite/rollup/@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.35.0", "", { "os": "win32", "cpu": "x64" }, "sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw=="], + "@grpc/proto-loader/yargs/cliui/wrap-ansi": ["wrap-ansi@7.0.0", "", { "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" } }, "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q=="], "@iconify/utils/local-pkg/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], @@ -5954,8 +6832,32 @@ "@nuxt/kit/unimport/local-pkg/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], + "@nuxt/telemetry/@nuxt/kit/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], + + "@nuxt/telemetry/@nuxt/kit/unimport/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + + "@nuxt/telemetry/@nuxt/kit/unimport/escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], + + "@nuxt/telemetry/@nuxt/kit/unimport/local-pkg": ["local-pkg@1.1.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.0.1", "quansync": "^0.2.8" } }, "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg=="], + + "@nuxt/telemetry/@nuxt/kit/unimport/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], + + "@nuxt/telemetry/@nuxt/kit/unimport/pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="], + + "@nuxt/telemetry/@nuxt/kit/unimport/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "@nuxt/telemetry/git-url-parse/git-up/parse-url": ["parse-url@9.2.0", "", { "dependencies": { "@types/parse-path": "^7.0.0", "parse-path": "^7.0.0" } }, "sha512-bCgsFI+GeGWPAvAiUv63ZorMeif3/U0zaXABGJbOWt5OH2KCaPHF6S+0ok4aqM9RuIPGyZdx9tR9l13PsW4AYQ=="], + "@nuxt/vite-builder/@nuxt/kit/unimport/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + + "@nuxt/vite-builder/@nuxt/kit/unimport/local-pkg": ["local-pkg@1.1.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.0.1", "quansync": "^0.2.8" } }, "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg=="], + + "@nuxt/vite-builder/@nuxt/kit/unimport/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], + + "@nuxt/vite-builder/@nuxt/kit/unimport/pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="], + + "@nuxt/vite-builder/@nuxt/kit/unimport/unplugin": ["unplugin@2.2.0", "", { "dependencies": { "acorn": "^8.14.0", "webpack-virtual-modules": "^0.6.2" } }, "sha512-m1ekpSwuOT5hxkJeZGRxO7gXbXT3gF26NjQ7GdVHoLoF8/nopLcd/QfPigpCy7i51oFHiRJg/CyHhj4vs2+KGw=="], + "@nuxtjs/tailwindcss/c12/chokidar/readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], "@nuxtjs/tailwindcss/c12/giget/nypm": ["nypm@0.5.4", "", { "dependencies": { "citty": "^0.1.6", "consola": "^3.4.0", "pathe": "^2.0.3", "pkg-types": "^1.3.1", "tinyexec": "^0.3.2", "ufo": "^1.5.4" }, "bin": { "nypm": "dist/cli.mjs" } }, "sha512-X0SNNrZiGU8/e/zAB7sCTtdxWTMSIO73q+xuKgglm2Yvzwlo8UoC5FNySQFCvl84uPaeADkqHUZUkWy4aH4xOA=="], @@ -5966,6 +6868,92 @@ "@stylistic/eslint-plugin/@typescript-eslint/utils/@typescript-eslint/typescript-estree/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], + "@types/bun/bun-types/@types/node/undici-types": ["undici-types@6.20.0", "", {}, "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.21.5", "", { "os": "aix", "cpu": "ppc64" }, "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.21.5", "", { "os": "android", "cpu": "arm" }, "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.21.5", "", { "os": "android", "cpu": "arm64" }, "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.21.5", "", { "os": "android", "cpu": "x64" }, "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.21.5", "", { "os": "darwin", "cpu": "arm64" }, "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.21.5", "", { "os": "darwin", "cpu": "x64" }, "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.21.5", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.21.5", "", { "os": "freebsd", "cpu": "x64" }, "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.21.5", "", { "os": "linux", "cpu": "arm" }, "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.21.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.21.5", "", { "os": "linux", "cpu": "ia32" }, "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.21.5", "", { "os": "linux", "cpu": "ppc64" }, "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.21.5", "", { "os": "linux", "cpu": "s390x" }, "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.21.5", "", { "os": "linux", "cpu": "x64" }, "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.21.5", "", { "os": "none", "cpu": "x64" }, "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.21.5", "", { "os": "openbsd", "cpu": "x64" }, "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.21.5", "", { "os": "sunos", "cpu": "x64" }, "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.21.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.21.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA=="], + + "@vanilla-extract/integration/vite/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.21.5", "", { "os": "win32", "cpu": "x64" }, "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.35.0", "", { "os": "android", "cpu": "arm" }, "sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.35.0", "", { "os": "android", "cpu": "arm64" }, "sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.35.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.35.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.35.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.35.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-loongarch64-gnu": ["@rollup/rollup-linux-loongarch64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-powerpc64le-gnu": ["@rollup/rollup-linux-powerpc64le-gnu@4.35.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.35.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.35.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.35.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw=="], + + "@vanilla-extract/integration/vite/rollup/@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.35.0", "", { "os": "win32", "cpu": "x64" }, "sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw=="], + "@vue-macros/common/local-pkg/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], "aws-crt/mqtt/help-me/glob": ["glob@7.2.3", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="], @@ -5982,6 +6970,8 @@ "docus-starter/eslint/ajv/json-schema-traverse": ["json-schema-traverse@0.4.1", "", {}, "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="], + "docus-starter/eslint/espree/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "docus-starter/eslint/file-entry-cache/flat-cache": ["flat-cache@4.0.1", "", { "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.4" } }, "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw=="], "eslint-config-flat-gitignore/eslint/@eslint/eslintrc/globals": ["globals@14.0.0", "", {}, "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ=="], @@ -5990,15 +6980,17 @@ "eslint-config-flat-gitignore/eslint/ajv/json-schema-traverse": ["json-schema-traverse@0.4.1", "", {}, "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="], + "eslint-config-flat-gitignore/eslint/espree/acorn": ["acorn@8.14.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA=="], + "eslint-config-flat-gitignore/eslint/file-entry-cache/flat-cache": ["flat-cache@4.0.1", "", { "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.4" } }, "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw=="], "eslint-plugin-import-x/@typescript-eslint/scope-manager/@typescript-eslint/visitor-keys/eslint-visitor-keys": ["eslint-visitor-keys@4.2.0", "", {}, "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw=="], "eslint-plugin-import-x/@typescript-eslint/utils/@typescript-eslint/typescript-estree/@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.26.0", "", { "dependencies": { "@typescript-eslint/types": "8.26.0", "eslint-visitor-keys": "^4.2.0" } }, "sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg=="], - "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/scope-manager/@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.26.0", "", { "dependencies": { "@typescript-eslint/types": "8.26.0", "eslint-visitor-keys": "^4.2.0" } }, "sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg=="], + "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/scope-manager/@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.28.0", "", { "dependencies": { "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" } }, "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg=="], - "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/typescript-estree/@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.26.0", "", { "dependencies": { "@typescript-eslint/types": "8.26.0", "eslint-visitor-keys": "^4.2.0" } }, "sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg=="], + "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/typescript-estree/@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.28.0", "", { "dependencies": { "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" } }, "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg=="], "eslint-plugin-qwik/@typescript-eslint/utils/@typescript-eslint/typescript-estree/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], @@ -6008,23 +7000,25 @@ "nitropack/unimport/pkg-types/confbox": ["confbox@0.1.8", "", {}, "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w=="], + "nuxt/@nuxt/devtools/@nuxt/devtools-wizard/diff": ["diff@7.0.0", "", {}, "sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw=="], + "nuxt/@nuxt/devtools/@vue/devtools-core/nanoid": ["nanoid@5.1.3", "", { "bin": { "nanoid": "bin/nanoid.js" } }, "sha512-zAbEOEr7u2CbxwoMRlz/pNSpRP0FdAU4pRaYunCdEezWohXFs+a0Xw7RfkKaezMsmSM1vttcLthJtwRnVtOfHQ=="], "nuxt/@nuxt/devtools/@vue/devtools-kit/birpc": ["birpc@0.2.19", "", {}, "sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ=="], - "nuxt/@nuxt/devtools/execa/@sindresorhus/merge-streams": ["@sindresorhus/merge-streams@4.0.0", "", {}, "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ=="], + "nuxt/@nuxt/devtools/execa/get-stream": ["get-stream@8.0.1", "", {}, "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA=="], - "nuxt/@nuxt/devtools/execa/get-stream": ["get-stream@9.0.1", "", { "dependencies": { "@sec-ant/readable-stream": "^0.4.1", "is-stream": "^4.0.1" } }, "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA=="], + "nuxt/@nuxt/devtools/execa/human-signals": ["human-signals@5.0.0", "", {}, "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ=="], - "nuxt/@nuxt/devtools/execa/human-signals": ["human-signals@8.0.0", "", {}, "sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA=="], + "nuxt/@nuxt/devtools/execa/is-stream": ["is-stream@3.0.0", "", {}, "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA=="], - "nuxt/@nuxt/devtools/execa/is-stream": ["is-stream@4.0.1", "", {}, "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A=="], + "nuxt/@nuxt/devtools/execa/npm-run-path": ["npm-run-path@5.3.0", "", { "dependencies": { "path-key": "^4.0.0" } }, "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ=="], - "nuxt/@nuxt/devtools/execa/npm-run-path": ["npm-run-path@6.0.0", "", { "dependencies": { "path-key": "^4.0.0", "unicorn-magic": "^0.3.0" } }, "sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA=="], + "nuxt/@nuxt/devtools/execa/onetime": ["onetime@6.0.0", "", { "dependencies": { "mimic-fn": "^4.0.0" } }, "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ=="], "nuxt/@nuxt/devtools/execa/signal-exit": ["signal-exit@4.1.0", "", {}, "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw=="], - "nuxt/@nuxt/devtools/execa/strip-final-newline": ["strip-final-newline@4.0.0", "", {}, "sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw=="], + "nuxt/@nuxt/devtools/execa/strip-final-newline": ["strip-final-newline@3.0.0", "", {}, "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw=="], "nuxt/@nuxt/devtools/which/isexe": ["isexe@3.1.1", "", {}, "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ=="], @@ -6046,54 +7040,158 @@ "unplugin-vue-router/local-pkg/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.0", "", { "os": "aix", "cpu": "ppc64" }, "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ=="], + "vite-node/vite/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.21.5", "", { "os": "aix", "cpu": "ppc64" }, "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.0", "", { "os": "android", "cpu": "arm" }, "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g=="], + "vite-node/vite/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.21.5", "", { "os": "android", "cpu": "arm" }, "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.0", "", { "os": "android", "cpu": "arm64" }, "sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g=="], + "vite-node/vite/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.21.5", "", { "os": "android", "cpu": "arm64" }, "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.0", "", { "os": "android", "cpu": "x64" }, "sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg=="], + "vite-node/vite/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.21.5", "", { "os": "android", "cpu": "x64" }, "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw=="], + "vite-node/vite/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.21.5", "", { "os": "darwin", "cpu": "arm64" }, "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg=="], + "vite-node/vite/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.21.5", "", { "os": "darwin", "cpu": "x64" }, "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w=="], + "vite-node/vite/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.21.5", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A=="], + "vite-node/vite/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.21.5", "", { "os": "freebsd", "cpu": "x64" }, "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.0", "", { "os": "linux", "cpu": "arm" }, "sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg=="], + "vite-node/vite/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.21.5", "", { "os": "linux", "cpu": "arm" }, "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg=="], + "vite-node/vite/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.21.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.0", "", { "os": "linux", "cpu": "ia32" }, "sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg=="], + "vite-node/vite/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.21.5", "", { "os": "linux", "cpu": "ia32" }, "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw=="], + "vite-node/vite/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ=="], + "vite-node/vite/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw=="], + "vite-node/vite/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.21.5", "", { "os": "linux", "cpu": "ppc64" }, "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.0", "", { "os": "linux", "cpu": "none" }, "sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA=="], + "vite-node/vite/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.21.5", "", { "os": "linux", "cpu": "none" }, "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA=="], + "vite-node/vite/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.21.5", "", { "os": "linux", "cpu": "s390x" }, "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.0", "", { "os": "linux", "cpu": "x64" }, "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw=="], + "vite-node/vite/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.21.5", "", { "os": "linux", "cpu": "x64" }, "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.0", "", { "os": "none", "cpu": "x64" }, "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA=="], + "vite-node/vite/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.21.5", "", { "os": "none", "cpu": "x64" }, "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.0", "", { "os": "openbsd", "cpu": "x64" }, "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg=="], + "vite-node/vite/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.21.5", "", { "os": "openbsd", "cpu": "x64" }, "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.0", "", { "os": "sunos", "cpu": "x64" }, "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg=="], + "vite-node/vite/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.21.5", "", { "os": "sunos", "cpu": "x64" }, "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw=="], + "vite-node/vite/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.21.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA=="], + "vite-node/vite/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.21.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA=="], - "vite-plugin-vue-tracer/vite/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.0", "", { "os": "win32", "cpu": "x64" }, "sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ=="], + "vite-node/vite/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.21.5", "", { "os": "win32", "cpu": "x64" }, "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw=="], + + "vite-node/vite/rollup/@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.35.0", "", { "os": "android", "cpu": "arm" }, "sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ=="], + + "vite-node/vite/rollup/@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.35.0", "", { "os": "android", "cpu": "arm64" }, "sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA=="], + + "vite-node/vite/rollup/@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.35.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q=="], + + "vite-node/vite/rollup/@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.35.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q=="], + + "vite-node/vite/rollup/@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.35.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ=="], + + "vite-node/vite/rollup/@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.35.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.35.0", "", { "os": "linux", "cpu": "arm" }, "sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.35.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-loongarch64-gnu": ["@rollup/rollup-linux-loongarch64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-powerpc64le-gnu": ["@rollup/rollup-linux-powerpc64le-gnu@4.35.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.35.0", "", { "os": "linux", "cpu": "none" }, "sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.35.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA=="], + + "vite-node/vite/rollup/@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.35.0", "", { "os": "linux", "cpu": "x64" }, "sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg=="], + + "vite-node/vite/rollup/@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.35.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg=="], + + "vite-node/vite/rollup/@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.35.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw=="], + + "vite-node/vite/rollup/@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.35.0", "", { "os": "win32", "cpu": "x64" }, "sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.25.1", "", { "os": "android", "cpu": "arm" }, "sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.1", "", { "os": "android", "cpu": "arm64" }, "sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.25.1", "", { "os": "android", "cpu": "x64" }, "sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.1", "", { "os": "linux", "cpu": "arm" }, "sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.1", "", { "os": "linux", "cpu": "none" }, "sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.1", "", { "os": "linux", "cpu": "x64" }, "sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.1", "", { "os": "none", "cpu": "x64" }, "sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A=="], + + "vite-plugin-vue-tracer/vite/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.1", "", { "os": "win32", "cpu": "x64" }, "sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg=="], "yargs/find-up/locate-path/p-locate": ["p-locate@4.1.0", "", { "dependencies": { "p-limit": "^2.2.0" } }, "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A=="], + "@aws-sdk/client-ecs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-rds-data/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-sesv2/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/client-sqs/@aws-sdk/credential-provider-node/@aws-sdk/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.758.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "3.758.0", "@aws-sdk/middleware-host-header": "3.734.0", "@aws-sdk/middleware-logger": "3.734.0", "@aws-sdk/middleware-recursion-detection": "3.734.0", "@aws-sdk/middleware-user-agent": "3.758.0", "@aws-sdk/region-config-resolver": "3.734.0", "@aws-sdk/types": "3.734.0", "@aws-sdk/util-endpoints": "3.743.0", "@aws-sdk/util-user-agent-browser": "3.734.0", "@aws-sdk/util-user-agent-node": "3.758.0", "@smithy/config-resolver": "^4.0.1", "@smithy/core": "^3.1.5", "@smithy/fetch-http-handler": "^5.0.1", "@smithy/hash-node": "^4.0.1", "@smithy/invalid-dependency": "^4.0.1", "@smithy/middleware-content-length": "^4.0.1", "@smithy/middleware-endpoint": "^4.0.6", "@smithy/middleware-retry": "^4.0.7", "@smithy/middleware-serde": "^4.0.2", "@smithy/middleware-stack": "^4.0.1", "@smithy/node-config-provider": "^4.0.1", "@smithy/node-http-handler": "^4.0.3", "@smithy/protocol-http": "^5.0.1", "@smithy/smithy-client": "^4.1.6", "@smithy/types": "^4.1.0", "@smithy/url-parser": "^4.0.1", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", "@smithy/util-defaults-mode-browser": "^4.0.7", "@smithy/util-defaults-mode-node": "^4.0.7", "@smithy/util-endpoints": "^3.0.1", "@smithy/util-middleware": "^4.0.1", "@smithy/util-retry": "^4.0.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg=="], + + "@aws-sdk/middleware-sdk-s3/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/url-parser/@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/node-config-provider/@smithy/property-provider": ["@smithy/property-provider@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/middleware-endpoint/@smithy/url-parser/@smithy/querystring-parser": ["@smithy/querystring-parser@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/util-stream/@smithy/fetch-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/util-stream/@smithy/node-http-handler/@smithy/abort-controller": ["@smithy/abort-controller@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "tslib": "^2.6.2" } }, "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g=="], + + "@aws-sdk/middleware-sdk-sqs/@smithy/smithy-client/@smithy/util-stream/@smithy/node-http-handler/@smithy/querystring-builder": ["@smithy/querystring-builder@4.0.1", "", { "dependencies": { "@smithy/types": "^4.1.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" } }, "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg=="], + "@nestri/web/@typescript-eslint/eslint-plugin/@typescript-eslint/type-utils/@typescript-eslint/typescript-estree/@typescript-eslint/types": ["@typescript-eslint/types@7.16.1", "", {}, "sha512-AQn9XqCzUXd4bAVEsAXM/Izk11Wx2u4H3BAfQVhSfzfDOm/wAON9nP7J5rpkCxts7E5TELmN845xTUCQrD1xIQ=="], "@nestri/web/@typescript-eslint/eslint-plugin/@typescript-eslint/type-utils/@typescript-eslint/typescript-estree/globby": ["globby@11.1.0", "", { "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", "fast-glob": "^3.2.9", "ignore": "^5.2.0", "merge2": "^1.4.1", "slash": "^3.0.0" } }, "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g=="], @@ -6124,6 +7222,10 @@ "@nuxt/kit/unimport/local-pkg/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], + "@nuxt/telemetry/@nuxt/kit/unimport/local-pkg/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], + + "@nuxt/vite-builder/@nuxt/kit/unimport/local-pkg/pkg-types": ["pkg-types@2.1.0", "", { "dependencies": { "confbox": "^0.2.1", "exsolve": "^1.0.1", "pathe": "^2.0.3" } }, "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A=="], + "@stylistic/eslint-plugin/@typescript-eslint/utils/@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], "aws-crt/mqtt/mqtt-packet/bl/buffer": ["buffer@5.7.1", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" } }, "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ=="], @@ -6142,6 +7244,8 @@ "nuxt/@nuxt/devtools/execa/npm-run-path/path-key": ["path-key@4.0.0", "", {}, "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ=="], + "nuxt/@nuxt/devtools/execa/onetime/mimic-fn": ["mimic-fn@4.0.0", "", {}, "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw=="], + "nuxt/unimport/local-pkg/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], "pkg-dir/find-up/locate-path/p-locate/p-limit": ["p-limit@4.0.0", "", { "dependencies": { "yocto-queue": "^1.0.0" } }, "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ=="], @@ -6166,6 +7270,10 @@ "@nuxt/eslint-config/@typescript-eslint/eslint-plugin/@typescript-eslint/utils/@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], + "@nuxt/telemetry/@nuxt/kit/unimport/local-pkg/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], + + "@nuxt/vite-builder/@nuxt/kit/unimport/local-pkg/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], + "aws-crt/mqtt/mqtt-packet/bl/buffer/ieee754": ["ieee754@1.2.1", "", {}, "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="], "pkg-dir/find-up/locate-path/p-locate/p-limit/yocto-queue": ["yocto-queue@1.2.0", "", {}, "sha512-KHBC7z61OJeaMGnF3wqNZj+GGNXOyypZviiKpQeiHirG5Ib1ImwcLBH70rbMSkKfSmUNBsdf2PwaEJtKvgmkNw=="], diff --git a/infra/api.ts b/infra/api.ts index fac9d185..3a6c2c54 100644 --- a/infra/api.ts +++ b/infra/api.ts @@ -1,53 +1,50 @@ -import { vpc } from "./vpc"; import { bus } from "./bus"; +import { auth } from "./auth"; import { domain } from "./dns"; import { secret } from "./secret"; +import { cluster } from "./cluster"; import { postgres } from "./postgres"; -sst.Linkable.wrap(random.RandomString, (resource) => ({ - properties: { - value: resource.result, - }, -})); - -export const urls = new sst.Linkable("Urls", { - properties: { - api: "https://api." + domain, - auth: "https://auth." + domain, - site: $dev ? "http://localhost:3000" : "https://" + domain, - }, -}); - -export const apiFunction = new sst.aws.Function("ApiFn", { - vpc, - handler: "packages/functions/src/api/index.handler", - permissions: [ - { - actions: ["iot:*"], - resources: ["*"], - }, - ], +export const api = new sst.aws.Service("Api", { + cpu: $app.stage === "production" ? "2 vCPU" : undefined, + memory: $app.stage === "production" ? "4 GB" : undefined, + cluster, + command: ["bun", "run", "./src/api/index.ts"], link: [ bus, - urls, + auth, postgres, secret.PolarSecret, ], - timeout: "3 minutes", - streaming: !$dev, - url: true -}) - -export const api = new sst.aws.Router("Api", { - routes: { - "/*": apiFunction.url + image: { + dockerfile: "packages/functions/Containerfile", }, - domain: { - name: "api." + domain, - dns: sst.cloudflare.dns(), + environment: { + NO_COLOR: "1", }, -}) - -export const outputs = { - api: api.url, -}; \ No newline at end of file + loadBalancer: { + domain: "api." + domain, + rules: [ + { + listen: "80/http", + forward: "3001/http", + }, + { + listen: "443/https", + forward: "3001/http", + }, + ], + }, + dev: { + command: "bun dev:api", + directory: "packages/functions", + url: "http://localhost:3001", + }, + scaling: + $app.stage === "production" + ? { + min: 2, + max: 10, + } + : undefined, +}); \ No newline at end of file diff --git a/infra/auth.ts b/infra/auth.ts index c0f9c3ac..f06fae37 100644 --- a/infra/auth.ts +++ b/infra/auth.ts @@ -1,46 +1,75 @@ -import { vpc } from "./vpc"; import { bus } from "./bus"; import { domain } from "./dns"; // import { email } from "./email"; import { secret } from "./secret"; import { postgres } from "./postgres"; +import { cluster } from "./cluster"; +import { vpc } from "./vpc"; -export const authFingerprintKey = new random.RandomString( - "AuthFingerprintKey", - { - length: 32, +// sst.Linkable.wrap(random.RandomString, (resource) => ({ +// properties: { +// value: resource.result, +// }, +// })); + +// export const authFingerprintKey = new random.RandomString( +// "AuthFingerprintKey", +// { +// length: 32, +// }, +// ); + +export const auth = new sst.aws.Service("Auth", { + cpu: $app.stage === "production" ? "1 vCPU" : undefined, + memory: $app.stage === "production" ? "2 GB" : undefined, + cluster, + command: ["bun", "run", "./src/auth.ts"], + link: [ + bus, + postgres, + secret.PolarSecret, + secret.GithubClientID, + secret.DiscordClientID, + secret.GithubClientSecret, + secret.DiscordClientSecret, + ], + image: { + dockerfile: "packages/functions/Containerfile", }, -); - -export const auth = new sst.aws.Auth("Auth", { - issuer: { - vpc, - timeout: "3 minutes", - handler: "packages/functions/src/auth.handler", - link: [ - bus, - // email, - postgres, - authFingerprintKey, - secret.PolarSecret, - secret.GithubClientID, - secret.DiscordClientID, - secret.GithubClientSecret, - secret.DiscordClientSecret, - ], - permissions: [ + environment: { + NO_COLOR: "1", + STORAGE: $dev ? "/tmp/persist.json" : "/mnt/efs/persist.json" + }, + //TODO: Use API gateway instead, because of the API headers + loadBalancer: { + domain: "auth." + domain, + rules: [ { - actions: ["ses:SendEmail"], - resources: ["*"], + listen: "80/http", + forward: "3002/http", + }, + { + listen: "443/https", + forward: "3002/http", }, ], }, - domain: { - name: "auth." + domain, - dns: sst.cloudflare.dns(), + permissions: [ + { + actions: ["ses:SendEmail"], + resources: ["*"], + }, + ], + dev: { + command: "bun dev:auth", + directory: "packages/functions", + url: "http://localhost:3002", }, -}) - -export const outputs = { - auth: auth.url, -}; \ No newline at end of file + scaling: + $app.stage === "production" + ? { + min: 2, + max: 10, + } + : undefined, +}); \ No newline at end of file diff --git a/infra/postgres.ts b/infra/postgres.ts index 01b3910c..2c129478 100644 --- a/infra/postgres.ts +++ b/infra/postgres.ts @@ -43,7 +43,7 @@ export const postgres = new sst.aws.Aurora("Database", { new sst.x.DevCommand("Studio", { link: [postgres], dev: { - command: "bun db studio", + command: "bun db:dev studio", directory: "packages/core", autostart: true, }, diff --git a/infra/realtime.ts b/infra/realtime.ts index 731423b2..d2e14787 100644 --- a/infra/realtime.ts +++ b/infra/realtime.ts @@ -1,9 +1,9 @@ -import { urls } from "./api"; +import { auth } from "./auth"; import { postgres } from "./postgres"; export const device = new sst.aws.Realtime("Realtime", { authorizer: { - link: [urls, postgres], - handler: "./packages/functions/src/realtime/authorizer.handler" + link: [auth, postgres], + handler: "packages/functions/src/realtime/authorizer.handler" } }) \ No newline at end of file diff --git a/infra/steam.ts b/infra/steam.ts index 86112039..5cdde017 100644 --- a/infra/steam.ts +++ b/infra/steam.ts @@ -1,43 +1,7 @@ -import { domain } from "./dns"; -import { cluster } from "./cluster"; -import { auth } from "./auth"; - -export const steam = new sst.aws.Service("Steam", { - cluster, - wait: true, - image: { - context: "packages/steam", - }, - loadBalancer: { - domain: - $app.stage === "production" - ? undefined - : { - name: "steam." + domain, - dns: sst.cloudflare.dns(), - }, - rules: [ - { listen: "443/https", forward: "5289/http" }, - { listen: "80/http", forward: "5289/http" }, - ], - }, - environment: { - NESTRI_AUTH_JWKS_URL: $interpolate`${auth.url}` - }, - scaling: - $app.stage === "production" - ? { - min: 2, - max: 4, - } - : undefined, - logging: { - retention: "1 month", - }, - architecture: "arm64", +new sst.x.DevCommand("Steam", { dev: { + command: "bun dev", directory: "packages/steam", - command: "dotnet run", - url: "http://localhost:5289", + autostart: true, }, -}) \ No newline at end of file +}); \ No newline at end of file diff --git a/infra/www.ts b/infra/www.ts index 8779f249..360c373f 100644 --- a/infra/www.ts +++ b/infra/www.ts @@ -3,7 +3,6 @@ import { api } from "./api"; import { auth } from "./auth"; import { zero } from "./zero"; import { domain } from "./dns"; -import { steam } from "./steam"; new sst.aws.StaticSite("Web", { path: "packages/www", @@ -20,6 +19,5 @@ new sst.aws.StaticSite("Web", { VITE_STAGE: $app.stage, VITE_AUTH_URL: auth.url, VITE_ZERO_URL: zero.url, - VITE_STEAM_URL: steam.url, }, }) \ No newline at end of file diff --git a/nestri.sln b/nestri.sln index c92ef7d7..6c10f9b7 100644 --- a/nestri.sln +++ b/nestri.sln @@ -26,4 +26,4 @@ Global GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {526AD703-4D15-43CF-B7C0-83F10D3158DB} EndGlobalSection -EndGlobal +EndGlobal \ No newline at end of file diff --git a/package.json b/package.json index 4840e520..1583fa26 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,6 @@ "packages/*" ], "dependencies": { - "sst": "3.9.36" + "sst": "^3.11.21" } } diff --git a/packages/core/migrations/0002_simple_outlaw_kid.sql b/packages/core/migrations/0002_simple_outlaw_kid.sql new file mode 100644 index 00000000..63ea20b8 --- /dev/null +++ b/packages/core/migrations/0002_simple_outlaw_kid.sql @@ -0,0 +1,17 @@ +CREATE TABLE "steam" ( + "id" char(30) NOT NULL, + "user_id" char(30) NOT NULL, + "time_created" timestamp with time zone DEFAULT now() NOT NULL, + "time_updated" timestamp with time zone DEFAULT now() NOT NULL, + "time_deleted" timestamp with time zone, + "avatar_url" text NOT NULL, + "access_token" text NOT NULL, + "email" varchar(255) NOT NULL, + "country" varchar(255) NOT NULL, + "username" varchar(255) NOT NULL, + "persona_name" varchar(255) NOT NULL, + CONSTRAINT "steam_user_id_id_pk" PRIMARY KEY("user_id","id") +); +--> statement-breakpoint +CREATE INDEX "global_steam_email" ON "steam" USING btree ("email");--> statement-breakpoint +CREATE UNIQUE INDEX "steam_email" ON "steam" USING btree ("user_id","email"); \ No newline at end of file diff --git a/packages/core/migrations/0003_first_big_bertha.sql b/packages/core/migrations/0003_first_big_bertha.sql new file mode 100644 index 00000000..6334333a --- /dev/null +++ b/packages/core/migrations/0003_first_big_bertha.sql @@ -0,0 +1,22 @@ +CREATE TABLE "machine" ( + "id" char(30) PRIMARY KEY NOT NULL, + "time_created" timestamp with time zone DEFAULT now() NOT NULL, + "time_updated" timestamp with time zone DEFAULT now() NOT NULL, + "time_deleted" timestamp with time zone, + "country" text NOT NULL, + "timezone" text NOT NULL, + "location" "point" NOT NULL, + "fingerprint" varchar(32) NOT NULL, + "country_code" varchar(2) NOT NULL +); +--> statement-breakpoint +ALTER TABLE "steam" RENAME COLUMN "country" TO "country_code";--> statement-breakpoint +DROP INDEX "global_steam_email";--> statement-breakpoint +ALTER TABLE "steam" ADD COLUMN "time_seen" timestamp with time zone;--> statement-breakpoint +ALTER TABLE "steam" ADD COLUMN "steam_id" integer NOT NULL;--> statement-breakpoint +ALTER TABLE "steam" ADD COLUMN "last_game" json NOT NULL;--> statement-breakpoint +ALTER TABLE "steam" ADD COLUMN "steam_email" varchar(255) NOT NULL;--> statement-breakpoint +ALTER TABLE "steam" ADD COLUMN "limitation" json NOT NULL;--> statement-breakpoint +CREATE UNIQUE INDEX "machine_fingerprint" ON "machine" USING btree ("fingerprint");--> statement-breakpoint +ALTER TABLE "steam" DROP COLUMN "access_token";--> statement-breakpoint +ALTER TABLE "user" DROP COLUMN "flags"; \ No newline at end of file diff --git a/packages/core/migrations/meta/0002_snapshot.json b/packages/core/migrations/meta/0002_snapshot.json index a6040745..24062937 100644 --- a/packages/core/migrations/meta/0002_snapshot.json +++ b/packages/core/migrations/meta/0002_snapshot.json @@ -1,94 +1,9 @@ { - "id": "aa60489b-b4e2-4a69-aee7-16e050d02ef9", + "id": "227c54d2-b643-48d5-964b-af6fe004369a", "prevId": "6f428226-b5d8-4182-a676-d04f842f9ded", "version": "7", "dialect": "postgresql", "tables": { - "public.machine": { - "name": "machine", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "char(30)", - "primaryKey": true, - "notNull": true - }, - "time_created": { - "name": "time_created", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": true, - "default": "now()" - }, - "time_updated": { - "name": "time_updated", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": true, - "default": "now()" - }, - "time_deleted": { - "name": "time_deleted", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": false - }, - "country": { - "name": "country", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "timezone": { - "name": "timezone", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "point", - "primaryKey": false, - "notNull": true - }, - "fingerprint": { - "name": "fingerprint", - "type": "varchar(32)", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "varchar(2)", - "primaryKey": false, - "notNull": true - } - }, - "indexes": { - "machine_fingerprint": { - "name": "machine_fingerprint", - "columns": [ - { - "expression": "fingerprint", - "isExpression": false, - "asc": true, - "nulls": "last" - } - ], - "isUnique": true, - "concurrently": false, - "method": "btree", - "with": {} - } - }, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {}, - "policies": {}, - "checkConstraints": {}, - "isRLSEnabled": false - }, "public.member": { "name": "member", "schema": "", @@ -191,6 +106,132 @@ "checkConstraints": {}, "isRLSEnabled": false }, + "public.steam": { + "name": "steam", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "char(30)", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "char(30)", + "primaryKey": false, + "notNull": true + }, + "time_created": { + "name": "time_created", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_updated": { + "name": "time_updated", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_deleted": { + "name": "time_deleted", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "avatar_url": { + "name": "avatar_url", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "access_token": { + "name": "access_token", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "email": { + "name": "email", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "country": { + "name": "country", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "username": { + "name": "username", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "persona_name": { + "name": "persona_name", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "global_steam_email": { + "name": "global_steam_email", + "columns": [ + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "steam_email": { + "name": "steam_email", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": { + "steam_user_id_id_pk": { + "name": "steam_user_id_id_pk", + "columns": [ + "user_id", + "id" + ] + } + }, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, "public.team": { "name": "team", "schema": "", diff --git a/packages/core/migrations/meta/0003_snapshot.json b/packages/core/migrations/meta/0003_snapshot.json new file mode 100644 index 00000000..7c047fb5 --- /dev/null +++ b/packages/core/migrations/meta/0003_snapshot.json @@ -0,0 +1,507 @@ +{ + "id": "eb5d41aa-5f85-4b2d-8633-fc021b211241", + "prevId": "227c54d2-b643-48d5-964b-af6fe004369a", + "version": "7", + "dialect": "postgresql", + "tables": { + "public.machine": { + "name": "machine", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "char(30)", + "primaryKey": true, + "notNull": true + }, + "time_created": { + "name": "time_created", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_updated": { + "name": "time_updated", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_deleted": { + "name": "time_deleted", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "country": { + "name": "country", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "timezone": { + "name": "timezone", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "location": { + "name": "location", + "type": "point", + "primaryKey": false, + "notNull": true + }, + "fingerprint": { + "name": "fingerprint", + "type": "varchar(32)", + "primaryKey": false, + "notNull": true + }, + "country_code": { + "name": "country_code", + "type": "varchar(2)", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "machine_fingerprint": { + "name": "machine_fingerprint", + "columns": [ + { + "expression": "fingerprint", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.member": { + "name": "member", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "char(30)", + "primaryKey": false, + "notNull": true + }, + "team_id": { + "name": "team_id", + "type": "char(30)", + "primaryKey": false, + "notNull": true + }, + "time_created": { + "name": "time_created", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_updated": { + "name": "time_updated", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_deleted": { + "name": "time_deleted", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "time_seen": { + "name": "time_seen", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "email": { + "name": "email", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "email_global": { + "name": "email_global", + "columns": [ + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "member_email": { + "name": "member_email", + "columns": [ + { + "expression": "team_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": { + "member_team_id_id_pk": { + "name": "member_team_id_id_pk", + "columns": [ + "team_id", + "id" + ] + } + }, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.steam": { + "name": "steam", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "char(30)", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "char(30)", + "primaryKey": false, + "notNull": true + }, + "time_created": { + "name": "time_created", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_updated": { + "name": "time_updated", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_deleted": { + "name": "time_deleted", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "time_seen": { + "name": "time_seen", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "steam_id": { + "name": "steam_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "avatar_url": { + "name": "avatar_url", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "email": { + "name": "email", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "last_game": { + "name": "last_game", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "username": { + "name": "username", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "country_code": { + "name": "country_code", + "type": "varchar(2)", + "primaryKey": false, + "notNull": true + }, + "steam_email": { + "name": "steam_email", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "persona_name": { + "name": "persona_name", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "limitation": { + "name": "limitation", + "type": "json", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "steam_email": { + "name": "steam_email", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": { + "steam_user_id_id_pk": { + "name": "steam_user_id_id_pk", + "columns": [ + "user_id", + "id" + ] + } + }, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.team": { + "name": "team", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "char(30)", + "primaryKey": true, + "notNull": true + }, + "time_created": { + "name": "time_created", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_updated": { + "name": "time_updated", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_deleted": { + "name": "time_deleted", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "name": { + "name": "name", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "slug": { + "name": "slug", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "plan_type": { + "name": "plan_type", + "type": "text", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "slug": { + "name": "slug", + "columns": [ + { + "expression": "slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.user": { + "name": "user", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "char(30)", + "primaryKey": true, + "notNull": true + }, + "time_created": { + "name": "time_created", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_updated": { + "name": "time_updated", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "time_deleted": { + "name": "time_deleted", + "type": "timestamp with time zone", + "primaryKey": false, + "notNull": false + }, + "avatar_url": { + "name": "avatar_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "name": { + "name": "name", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "discriminator": { + "name": "discriminator", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "email": { + "name": "email", + "type": "varchar(255)", + "primaryKey": false, + "notNull": true + }, + "polar_customer_id": { + "name": "polar_customer_id", + "type": "varchar(255)", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "user_email": { + "name": "user_email", + "columns": [ + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "user_polar_customer_id_unique": { + "name": "user_polar_customer_id_unique", + "nullsNotDistinct": false, + "columns": [ + "polar_customer_id" + ] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + } + }, + "enums": {}, + "schemas": {}, + "sequences": {}, + "roles": {}, + "policies": {}, + "views": {}, + "_meta": { + "columns": {}, + "schemas": {}, + "tables": {} + } +} \ No newline at end of file diff --git a/packages/core/migrations/meta/_journal.json b/packages/core/migrations/meta/_journal.json index 787b0138..150022dc 100644 --- a/packages/core/migrations/meta/_journal.json +++ b/packages/core/migrations/meta/_journal.json @@ -19,8 +19,15 @@ { "idx": 2, "version": "7", - "when": 1743028682022, - "tag": "0002_tiny_toad_men", + "when": 1743794969007, + "tag": "0002_simple_outlaw_kid", + "breakpoints": true + }, + { + "idx": 3, + "version": "7", + "when": 1744287542918, + "tag": "0003_first_big_bertha", "breakpoints": true } ] diff --git a/packages/core/package.json b/packages/core/package.json index 42588258..e9c25934 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -4,6 +4,7 @@ "sideEffects": false, "type": "module", "scripts": { + "db:dev": "drizzle-kit", "typecheck": "tsc --noEmit", "db": "sst shell drizzle-kit", "db:exec": "sst shell ../scripts/src/psql.sh", diff --git a/packages/core/src/actor.ts b/packages/core/src/actor.ts index 5a9f5995..4dabf3b3 100644 --- a/packages/core/src/actor.ts +++ b/packages/core/src/actor.ts @@ -1,6 +1,6 @@ import { z } from "zod"; import { eq } from "./drizzle"; -import { VisibleError } from "./error"; +import { ErrorCodes, VisibleError } from "./error"; import { createContext } from "./context"; import { UserFlags, userTable } from "./user/user.sql"; import { useTransaction } from "./drizzle/transaction"; @@ -60,11 +60,42 @@ export const ActorContext = createContext("actor"); export const useActor = ActorContext.use; export const withActor = ActorContext.with; +/** + * Retrieves the user ID of the current actor. + * + * This function accesses the actor context and returns the `userID` if the current + * actor is of type "user". If the actor is not a user, it throws a `VisibleError` + * with an authentication error code, indicating that the caller is not authorized + * to access user-specific resources. + * + * @throws {VisibleError} When the current actor is not of type "user". + */ export function useUserID() { const actor = ActorContext.use(); if (actor.type === "user") return actor.properties.userID; throw new VisibleError( - "unauthorized", + "authentication", + ErrorCodes.Authentication.UNAUTHORIZED, + `You don't have permission to access this resource`, + ); +} + +/** + * Retrieves the properties of the current user actor. + * + * This function obtains the current actor from the context and returns its properties if the actor is identified as a user. + * If the actor is not of type "user", it throws a {@link VisibleError} with an authentication error code, + * indicating that the user is not authorized to access user-specific resources. + * + * @returns The properties of the current user actor, typically including user-specific details such as userID and email. + * @throws {VisibleError} If the current actor is not a user. + */ +export function useUser() { + const actor = ActorContext.use(); + if (actor.type === "user") return actor.properties; + throw new VisibleError( + "authentication", + ErrorCodes.Authentication.UNAUTHORIZED, `You don't have permission to access this resource`, ); } @@ -90,6 +121,17 @@ export function useMachine() { throw new Error(`Expected actor to have fingerprint`); } +/** + * Asserts that the current user possesses the specified flag. + * + * This function executes a database transaction that queries the user table for the current user's flags. + * If the flags are missing, it throws a {@link VisibleError} with the code {@link ErrorCodes.Validation.MISSING_REQUIRED_FIELD} + * and a message indicating that the required flag is absent. + * + * @param flag - The name of the user flag to verify. + * + * @throws {VisibleError} If the user's flag is missing. + */ export async function assertUserFlag(flag: keyof UserFlags) { return useTransaction((tx) => tx @@ -100,7 +142,8 @@ export async function assertUserFlag(flag: keyof UserFlags) { const flags = rows[0]?.flags; if (!flags) throw new VisibleError( - "user.flags", + "not_found", + ErrorCodes.Validation.MISSING_REQUIRED_FIELD, "Actor does not have " + flag + " flag", ); }), diff --git a/packages/core/src/common.ts b/packages/core/src/common.ts index a7ec75d8..0f450f6d 100644 --- a/packages/core/src/common.ts +++ b/packages/core/src/common.ts @@ -1,7 +1,7 @@ import { z } from "zod"; import "zod-openapi/extend"; -export module Common { +export namespace Common { export const IdDescription = `Unique object identifier. The format and length of IDs may change over time.`; } \ No newline at end of file diff --git a/packages/core/src/drizzle/types.ts b/packages/core/src/drizzle/types.ts index ebd4e668..00f551d6 100644 --- a/packages/core/src/drizzle/types.ts +++ b/packages/core/src/drizzle/types.ts @@ -17,6 +17,15 @@ export const teamID = { }, }; +export const userID = { + get id() { + return ulid("id").notNull(); + }, + get userID() { + return ulid("user_id").notNull(); + }, +}; + export const utc = (name: string) => rawTs(name, { withTimezone: true, diff --git a/packages/core/src/examples.ts b/packages/core/src/examples.ts index 4c1ece47..a9290e25 100644 --- a/packages/core/src/examples.ts +++ b/packages/core/src/examples.ts @@ -1,5 +1,5 @@ import { prefixes } from "./utils"; -export module Examples { +export namespace Examples { export const Id = (prefix: keyof typeof prefixes) => `${prefixes[prefix]}_XXXXXXXXXXXXXXXXXXXXXXXXX`; @@ -31,8 +31,30 @@ export module Examples { timeSeen: new Date("2025-02-23T13:39:52.249Z"), } + export const Steam = { + id: Id("steam"), + userID: Id("user"), + countryCode: "KE", + steamID: 74839300282033, + limitation: { + isLimited: false, + isBanned: false, + isLocked: false, + isAllowedToInviteFriends: false, + }, + lastGame: { + gameID: 2531310, + gameName: "The Last of Us™ Part II Remastered", + }, + personaName: "John", + username: "johnsteamaccount", + steamEmail: "john@example.com", + avatarUrl: "https://avatars.akamai.steamstatic.com/XXXXXXXXXXXX_full.jpg", + } + export const Machine = { id: Id("machine"), + userID: Id("user"), country: "Kenya", countryCode: "KE", timezone: "Africa/Nairobi", diff --git a/packages/core/src/machine/index.ts b/packages/core/src/machine/index.ts index 682f1b9c..3d2eb8ce 100644 --- a/packages/core/src/machine/index.ts +++ b/packages/core/src/machine/index.ts @@ -6,13 +6,17 @@ import { machineTable } from "./machine.sql"; import { getTableColumns, eq, sql, and, isNull } from "../drizzle"; import { createTransaction, useTransaction } from "../drizzle/transaction"; -export module Machine { +export namespace Machine { export const Info = z .object({ id: z.string().openapi({ description: Common.IdDescription, example: Examples.Machine.id, }), + userID: z.string().nullable().openapi({ + description: "The userID of the user who owns this machine, in the case of BYOG", + example: Examples.Machine.userID + }), country: z.string().openapi({ description: "The fullname of the country this machine is running in", example: Examples.Machine.country @@ -42,7 +46,7 @@ export module Machine { export type Info = z.infer; - export const create = fn(Info.partial({ id: true }), async (input) => + export const create = fn(Info.partial({ id: true }), async (input) => createTransaction(async (tx) => { const id = input.id ?? createID("machine"); await tx.insert(machineTable).values({ @@ -51,6 +55,7 @@ export module Machine { timezone: input.timezone, fingerprint: input.fingerprint, countryCode: input.countryCode, + userID: input.userID, location: { x: input.location.longitude, y: input.location.latitude }, }) @@ -63,12 +68,23 @@ export module Machine { }) ) - export const list = fn(z.void(), async () => - useTransaction(async (tx) => + export const fromUserID = fn(z.string(), async (userID) => + useTransaction(async (tx) => tx .select() .from(machineTable) - .where(isNull(machineTable.timeDeleted)) + .where(and(eq(machineTable.userID, userID), isNull(machineTable.timeDeleted))) + .then((rows) => rows.map(serialize)) + ) + ) + + export const list = fn(z.void(), async () => + useTransaction(async (tx) => + tx + .select() + .from(machineTable) + // Show only hosted machines, not BYOG machines + .where(and(isNull(machineTable.userID), isNull(machineTable.timeDeleted))) .then((rows) => rows.map(serialize)) ) ) @@ -116,7 +132,7 @@ export module Machine { distance: sql`round((${sqlDistance})::numeric, 2)` }) .from(machineTable) - .where(isNull(machineTable.timeDeleted)) //Should have a status update + .where(isNull(machineTable.timeDeleted)) .orderBy(sqlDistance) .limit(3) .then((rows) => rows.map(serialize)) @@ -128,6 +144,7 @@ export module Machine { ): z.infer { return { id: input.id, + userID: input.userID, country: input.country, timezone: input.timezone, fingerprint: input.fingerprint, diff --git a/packages/core/src/machine/machine.sql.ts b/packages/core/src/machine/machine.sql.ts index c295ff01..991bab6a 100644 --- a/packages/core/src/machine/machine.sql.ts +++ b/packages/core/src/machine/machine.sql.ts @@ -1,11 +1,12 @@ import { } from "drizzle-orm/postgres-js"; -import { timestamps, id } from "../drizzle/types"; +import { timestamps, id, ulid } from "../drizzle/types"; import { text, varchar, pgTable, uniqueIndex, point, + primaryKey, } from "drizzle-orm/pg-core"; export const machineTable = pgTable( @@ -13,6 +14,7 @@ export const machineTable = pgTable( { ...id, ...timestamps, + userID: ulid("user_id"), country: text('country').notNull(), timezone: text('timezone').notNull(), location: point('location', { mode: 'xy' }).notNull(), @@ -32,6 +34,7 @@ export const machineTable = pgTable( }, (table) => [ // uniqueIndex("external_id").on(table.externalID), - uniqueIndex("machine_fingerprint").on(table.fingerprint) + uniqueIndex("machine_fingerprint").on(table.fingerprint), + primaryKey({ columns: [table.userID, table.id], }), ], ); \ No newline at end of file diff --git a/packages/core/src/member/index.ts b/packages/core/src/member/index.ts index 7bad1e05..0f64436a 100644 --- a/packages/core/src/member/index.ts +++ b/packages/core/src/member/index.ts @@ -10,7 +10,7 @@ import { memberTable } from "./member.sql"; import { and, eq, sql, asc, isNull } from "../drizzle"; import { afterTx, createTransaction, useTransaction } from "../drizzle/transaction"; -export module Member { +export namespace Member { export const Info = z .object({ id: z.string().openapi({ diff --git a/packages/core/src/polar/index.ts b/packages/core/src/polar/index.ts index b333b54f..fb406b75 100644 --- a/packages/core/src/polar/index.ts +++ b/packages/core/src/polar/index.ts @@ -10,7 +10,7 @@ import { useTransaction } from "../drizzle/transaction"; const polar = new PolarSdk({ accessToken: Resource.PolarSecret.value, server: Resource.App.stage !== "production" ? "sandbox" : "production" }); -export module Polar { +export namespace Polar { export const client = polar; export const Info = z.object({ diff --git a/packages/core/src/realtime/index.ts b/packages/core/src/realtime/index.ts index 25771731..d49c83a1 100644 --- a/packages/core/src/realtime/index.ts +++ b/packages/core/src/realtime/index.ts @@ -2,10 +2,10 @@ import { IoTDataPlaneClient, PublishCommand, } from "@aws-sdk/client-iot-data-plane"; -import {useMachine} from "../actor"; -import {Resource} from "sst"; +import { useMachine } from "../actor"; +import { Resource } from "sst"; -export module Realtime { +export namespace Realtime { const client = new IoTDataPlaneClient({}); export async function publish(message: any, subTopic?: string) { diff --git a/packages/core/src/steam/index.ts b/packages/core/src/steam/index.ts new file mode 100644 index 00000000..24f266bd --- /dev/null +++ b/packages/core/src/steam/index.ts @@ -0,0 +1,137 @@ +import { z } from "zod"; +import { Common } from "../common"; +import { Examples } from "../examples"; +import { createID, fn } from "../utils"; +import { useUser, useUserID } from "../actor"; +import { eq, and, isNull, sql } from "../drizzle"; +import { steamTable, AccountLimitation, LastGame } from "./steam.sql"; +import { createTransaction, useTransaction } from "../drizzle/transaction"; + +export namespace Steam { + export const Info = z + .object({ + id: z.string().openapi({ + description: Common.IdDescription, + example: Examples.Steam.id, + }), + avatarUrl: z.string().openapi({ + description: "The avatar url of this Steam account", + example: Examples.Steam.avatarUrl + }), + steamEmail: z.string().openapi({ + description: "The email regisered with this Steam account", + example: Examples.Steam.steamEmail + }), + steamID: z.number().openapi({ + description: "The Steam ID this Steam account", + example: Examples.Steam.steamID + }), + limitation: AccountLimitation.openapi({ + description: " The limitations of this Steam account", + example: Examples.Steam.limitation + }), + lastGame: LastGame.openapi({ + description: "The last game played on this Steam account", + example: Examples.Steam.lastGame + }), + userID: z.string().openapi({ + description: "The unique id of the user who owns this steam account", + example: Examples.Steam.userID + }), + username: z.string().openapi({ + description: "The unique username of this steam user", + example: Examples.Steam.username + }), + personaName: z.string().openapi({ + description: "The last recorded persona name used by this account", + example: Examples.Steam.personaName + }), + countryCode: z.string().openapi({ + description: "The country this account is connected from", + example: Examples.Steam.countryCode + }) + }) + .openapi({ + ref: "Steam", + description: "Represents a steam user's information stored on Nestri", + example: Examples.Steam, + }); + + export type Info = z.infer; + + export const create = fn( + Info.partial({ + id: true, + userID: true, + }), + (input) => + createTransaction(async (tx) => { + const id = input.id ?? createID("steam"); + const user = useUser() + await tx.insert(steamTable).values({ + id, + lastSeen: sql`now()`, + userID: input.userID ?? user.userID, + countryCode: input.countryCode, + username: input.username, + steamID: input.steamID, + lastGame: input.lastGame, + limitation: input.limitation, + steamEmail: input.steamEmail, + avatarUrl: input.avatarUrl, + personaName: input.personaName, + }) + return id; + }), + ); + + export const fromUserID = fn( + z.string(), + (userID) => + useTransaction((tx) => + tx + .select() + .from(steamTable) + .where(and(eq(steamTable.userID, userID), isNull(steamTable.timeDeleted))) + .execute() + .then((rows) => rows.map(serialize).at(0)), + ), + ) + + export const list = () => + useTransaction((tx) => + tx + .select() + .from(steamTable) + .where(and(eq(steamTable.userID, useUserID()), isNull(steamTable.timeDeleted))) + .execute() + .then((rows) => rows.map(serialize)), + ) + + /** + * Serializes a raw Steam table record into a standardized Info object. + * + * This function maps the fields from a database record (retrieved from the Steam table) to the + * corresponding properties defined in the Info schema. + * + * @param input - A raw record from the Steam table containing user information. + * @returns An object conforming to the Info schema. + */ + export function serialize( + input: typeof steamTable.$inferSelect, + ): z.infer { + return { + id: input.id, + userID: input.userID, + countryCode: input.countryCode, + username: input.username, + avatarUrl: input.avatarUrl, + personaName: input.personaName, + steamEmail: input.steamEmail, + steamID: input.steamID, + limitation: input.limitation, + lastGame: input.lastGame, + }; + } + +} \ No newline at end of file diff --git a/packages/core/src/steam/steam.sql.ts b/packages/core/src/steam/steam.sql.ts new file mode 100644 index 00000000..07b04481 --- /dev/null +++ b/packages/core/src/steam/steam.sql.ts @@ -0,0 +1,58 @@ +import { z } from "zod"; +import { timestamps, userID, utc } from "../drizzle/types"; +import { index, pgTable, integer, uniqueIndex, varchar, text, primaryKey, json } from "drizzle-orm/pg-core"; + + +// public string Username { get; set; } = string.Empty; +// public ulong SteamId { get; set; } +// public string Email { get; set; } = string.Empty; +// public string Country { get; set; } = string.Empty; +// public string PersonaName { get; set; } = string.Empty; +// public string AvatarUrl { get; set; } = string.Empty; +// public bool IsLimited { get; set; } +// public bool IsLocked { get; set; } +// public bool IsBanned { get; set; } +// public bool IsAllowedToInviteFriends { get; set; } +// public ulong GameId { get; set; } +// public string GamePlayingName { get; set; } = string.Empty; +// public DateTime LastLogOn { get; set; } +// public DateTime LastLogOff { get; set; } +// public DateTime UpdatedAt { get; set; } = DateTime.UtcNow; + +export const LastGame = z.object({ + gameID: z.number(), + gameName: z.string() +}); + +export const AccountLimitation = z.object({ + isLimited: z.boolean().nullable(), + isBanned: z.boolean().nullable(), + isLocked: z.boolean().nullable(), + isAllowedToInviteFriends: z.boolean().nullable(), +}); + +export type LastGame = z.infer; +export type AccountLimitation = z.infer; + +export const steamTable = pgTable( + "steam", + { + ...userID, + ...timestamps, + lastSeen: utc("time_seen"), + steamID: integer("steam_id").notNull(), + avatarUrl: text("avatar_url").notNull(), + lastGame: json("last_game").$type().notNull(), + username: varchar("username", { length: 255 }).notNull(), + countryCode: varchar('country_code', { length: 2 }).notNull(), + steamEmail: varchar("steam_email", { length: 255 }).notNull(), + personaName: varchar("persona_name", { length: 255 }).notNull(), + limitation: json("limitation").$type().notNull(), + }, + (table) => [ + primaryKey({ + columns: [table.userID, table.id], + }), + uniqueIndex("steam_email").on(table.userID, table.steamEmail), + ], +); \ No newline at end of file diff --git a/packages/core/src/team/index.ts b/packages/core/src/team/index.ts index 30751156..9b63fd8c 100644 --- a/packages/core/src/team/index.ts +++ b/packages/core/src/team/index.ts @@ -12,7 +12,7 @@ import { memberTable } from "../member/member.sql"; import { ErrorCodes, VisibleError } from "../error"; import { afterTx, createTransaction, useTransaction } from "../drizzle/transaction"; -export module Team { +export namespace Team { export const Info = z .object({ id: z.string().openapi({ diff --git a/packages/core/src/user/index.ts b/packages/core/src/user/index.ts index 9c942e93..289a39fb 100644 --- a/packages/core/src/user/index.ts +++ b/packages/core/src/user/index.ts @@ -15,7 +15,7 @@ import { and, eq, isNull, asc, getTableColumns, sql } from "../drizzle"; import { afterTx, createTransaction, useTransaction } from "../drizzle/transaction"; -export module User { +export namespace User { const MAX_ATTEMPTS = 50; export const Info = z diff --git a/packages/core/src/user/user.sql.ts b/packages/core/src/user/user.sql.ts index cdeaac1a..51204e13 100644 --- a/packages/core/src/user/user.sql.ts +++ b/packages/core/src/user/user.sql.ts @@ -19,7 +19,7 @@ export const userTable = pgTable( discriminator: integer("discriminator").notNull(), email: varchar("email", { length: 255 }).notNull(), polarCustomerID: varchar("polar_customer_id", { length: 255 }).unique(), - flags: json("flags").$type().default({}), + // flags: json("flags").$type().default({}), }, (user) => [ uniqueIndex("user_email").on(user.email), diff --git a/packages/core/src/utils/id.ts b/packages/core/src/utils/id.ts index 8b1ff651..ecc71b96 100644 --- a/packages/core/src/utils/id.ts +++ b/packages/core/src/utils/id.ts @@ -6,8 +6,19 @@ export const prefixes = { task: "tsk", machine: "mch", member: "mbr", + steam: "stm", } as const; +/** + * Generates a unique identifier by concatenating a predefined prefix with a ULID. + * + * Given a key from the predefined prefixes mapping (e.g., "user", "team", "member", "steam"), + * this function retrieves the corresponding prefix and combines it with a ULID using an underscore + * as a separator. The resulting identifier is formatted as "prefix_ulid". + * + * @param prefix - A key from the prefixes mapping. + * @returns A unique identifier string. + */ export function createID(prefix: keyof typeof prefixes): string { return [prefixes[prefix], ulid()].join("_"); } \ No newline at end of file diff --git a/packages/functions/Containerfile b/packages/functions/Containerfile new file mode 100644 index 00000000..79c7061d --- /dev/null +++ b/packages/functions/Containerfile @@ -0,0 +1,17 @@ +FROM mirror.gcr.io/oven/bun:1.2 + +# TODO: Add a way to build C# Steam.exe and start it to run in the container before the API + +ADD ./package.json . +ADD ./bun.lock . +ADD ./packages/core/package.json ./packages/core/package.json +ADD ./packages/functions/package.json ./packages/functions/package.json +ADD ./patches ./patches +RUN bun install --ignore-scripts + +ADD ./packages/functions ./packages/functions +ADD ./packages/core ./packages/core + +WORKDIR ./packages/functions + +CMD ["bun", "run", "./src/api/index.ts"] \ No newline at end of file diff --git a/packages/functions/package.json b/packages/functions/package.json index b266bda4..85242da0 100644 --- a/packages/functions/package.json +++ b/packages/functions/package.json @@ -4,6 +4,10 @@ "exports": { "./*": "./src/*.ts" }, + "scripts": { + "dev:auth": "bun run --watch ./src/auth.ts", + "dev:api": "bun run --watch ./src/api/index.ts" + }, "devDependencies": { "@aws-sdk/client-ecs": "^3.738.0", "@aws-sdk/client-sqs": "^3.734.0", @@ -16,10 +20,12 @@ "typescript": "^5.0.0" }, "dependencies": { + "@actor-core/bun": "^0.7.9", "@openauthjs/openauth": "*", + "actor-core": "^0.7.9", "hono": "^4.6.15", "hono-openapi": "^0.3.1", "partysocket": "1.0.3", "postgres": "^3.4.5" } -} +} \ No newline at end of file diff --git a/packages/functions/src/api/account.ts b/packages/functions/src/api/account.ts index 49c33c86..2562e0a5 100644 --- a/packages/functions/src/api/account.ts +++ b/packages/functions/src/api/account.ts @@ -9,7 +9,7 @@ import { Examples } from "@nestri/core/examples"; import { ErrorResponses, Result } from "./common"; import { ErrorCodes, VisibleError } from "@nestri/core/error"; -export module AccountApi { +export namespace AccountApi { export const route = new Hono() .use(notPublic) .get("/", @@ -34,7 +34,8 @@ export module AccountApi { }, description: "User account details" }, - 404: ErrorResponses[404] + 404: ErrorResponses[404], + 429: ErrorResponses[429] } }), async (c) => { diff --git a/packages/functions/src/api/auth.ts b/packages/functions/src/api/auth.ts index 2621436f..23b3e81b 100644 --- a/packages/functions/src/api/auth.ts +++ b/packages/functions/src/api/auth.ts @@ -1,20 +1,15 @@ import { Resource } from "sst"; import { subjects } from "../subjects"; import { type MiddlewareHandler } from "hono"; -import { VisibleError } from "@nestri/core/error"; -import { ActorContext } from "@nestri/core/actor"; -import { HTTPException } from "hono/http-exception"; import { useActor, withActor } from "@nestri/core/actor"; import { createClient } from "@openauthjs/openauth/client"; import { ErrorCodes, VisibleError } from "@nestri/core/error"; const client = createClient({ + issuer: Resource.Auth.url, clientID: "api", - issuer: Resource.Urls.auth }); - - export const notPublic: MiddlewareHandler = async (c, next) => { const actor = useActor(); if (actor.type === "public") @@ -29,7 +24,7 @@ export const notPublic: MiddlewareHandler = async (c, next) => { export const auth: MiddlewareHandler = async (c, next) => { const authHeader = c.req.query("authorization") ?? c.req.header("authorization"); - if (!authHeader) return next(); + if (!authHeader) return withActor({ type: "public", properties: {} }, next); const match = authHeader.match(/^Bearer (.+)$/); if (!match) { throw new VisibleError( @@ -53,34 +48,22 @@ export const auth: MiddlewareHandler = async (c, next) => { return withActor(result.subject, next); } - if (result.subject.type === "user") { - const teamID = c.req.header("x-nestri-team") //|| c.req.query("teamID"); - if (!teamID) return withActor(result.subject, next); - // const email = result.subject.properties.email; - return withActor( - { - type: "system", - properties: { - teamID, - }, + if (result.subject.type === "user") { + const teamID = c.req.header("x-nestri-team"); + if (!teamID) return withActor(result.subject, next); + return withActor( + { + type: "system", + properties: { + teamID, }, }, - next - // async () => { - // const user = await User.fromEmail(email); - // if (!user || user.length === 0) { - // c.status(401); - // return c.text("Unauthorized"); - // } - // return withActor( - // { - // type: "member", - // properties: { userID: user[0].id, workspaceID: user.workspaceID }, - // }, - // next, - // ); - // }, + async () => { + return withActor( + result.subject, + next, + ); + }, ); } - return ActorContext.with({ type: "public", properties: {} }, next); }; \ No newline at end of file diff --git a/packages/functions/src/api/common.ts b/packages/functions/src/api/common.ts index a2a840c4..35cde6d9 100644 --- a/packages/functions/src/api/common.ts +++ b/packages/functions/src/api/common.ts @@ -1,5 +1,5 @@ -import {type Hook } from "./hook"; import { z, ZodSchema } from "zod"; +import {type Hook } from "./types/hook"; import { ErrorCodes, ErrorResponse } from "@nestri/core/error"; import type { MiddlewareHandler, ValidationTargets } from "hono"; import { resolver, validator as zodValidator } from "hono-openapi/zod"; diff --git a/packages/functions/src/api/index.ts b/packages/functions/src/api/index.ts index 24cd47d9..d0683058 100644 --- a/packages/functions/src/api/index.ts +++ b/packages/functions/src/api/index.ts @@ -1,19 +1,23 @@ import "zod-openapi/extend"; import { Hono } from "hono"; import { auth } from "./auth"; +import { cors } from "hono/cors"; import { TeamApi } from "./team"; +import { SteamApi } from "./steam"; import { logger } from "hono/logger"; +import { Realtime } from "./realtime"; import { AccountApi } from "./account"; import { MachineApi } from "./machine"; import { openAPISpecs } from "hono-openapi"; +import { patchLogger } from "../log-polyfill"; import { HTTPException } from "hono/http-exception"; -import { handle, streamHandle } from "hono/aws-lambda"; import { ErrorCodes, VisibleError } from "@nestri/core/error"; - export const app = new Hono(); app - .use(logger(), async (c, next) => { + .use(logger()) + .use(cors()) + .use(async (c, next) => { c.header("Cache-Control", "no-store"); return next(); }) @@ -21,11 +25,12 @@ app const routes = app .get("/", (c) => c.text("Hello World!")) + .route("/realtime", Realtime.route) .route("/team", TeamApi.route) + .route("/steam", SteamApi.route) .route("/account", AccountApi.route) .route("/machine", MachineApi.route) .onError((error, c) => { - console.warn(error); if (error instanceof VisibleError) { console.error("api error:", error); // @ts-expect-error @@ -54,7 +59,6 @@ const routes = app ); }); - app.get( "/doc", openAPISpecs(routes, { @@ -82,10 +86,21 @@ app.get( security: [{ Bearer: [], TeamID: [] }], servers: [ { description: "Production", url: "https://api.nestri.io" }, + { description: "Sandbox", url: "https://api.dev.nestri.io" }, ], }, }), ); -export type Routes = typeof routes; -export const handler = process.env.SST_DEV ? handle(app) : streamHandle(app); \ No newline at end of file +patchLogger(); + +export default { + port: 3001, + idleTimeout: 255, + webSocketHandler: Realtime.webSocketHandler, + fetch: (req: Request) => + app.fetch(req, undefined, { + waitUntil: (fn) => fn, + passThroughOnException: () => { }, + }), +}; \ No newline at end of file diff --git a/packages/functions/src/api/machine.ts b/packages/functions/src/api/machine.ts index 5c095cc8..1fa2b799 100644 --- a/packages/functions/src/api/machine.ts +++ b/packages/functions/src/api/machine.ts @@ -1,16 +1,92 @@ -import {z} from "zod" -import {Hono} from "hono"; -import {notPublic} from "./auth"; -import {Result} from "../common"; -import {describeRoute} from "hono-openapi"; -import {assertActor} from "@nestri/core/actor"; -import {Realtime} from "@nestri/core/realtime/index"; -import {validator} from "hono-openapi/zod"; -import {CreateMessageSchema, StartMessageSchema, StopMessageSchema} from "./messages.ts"; +import { z } from "zod" +import { Hono } from "hono"; +import { notPublic } from "./auth"; +import { describeRoute } from "hono-openapi"; +import { validator } from "hono-openapi/zod"; +import { Examples } from "@nestri/core/examples"; +import { assertActor } from "@nestri/core/actor"; +import { ErrorResponses, Result } from "./common"; +import { Machine } from "@nestri/core/machine/index"; +import { Realtime } from "@nestri/core/realtime/index"; +import { ErrorCodes, VisibleError } from "@nestri/core/error"; +import { CreateMessageSchema, StartMessageSchema, StopMessageSchema } from "./messages.ts"; -export module MachineApi { +export namespace MachineApi { export const route = new Hono() .use(notPublic) + .get("/", + describeRoute({ + tags: ["Machine"], + summary: "Get all BYOG machines", + description: "All the BYOG machines owned by this user", + responses: { + 200: { + content: { + "application/json": { + schema: Result( + Machine.Info.array().openapi({ + description: "All the user's BYOG machines", + example: [Examples.Machine], + }), + ), + }, + }, + description: "Successfully retrieved all the user's machines", + }, + 404: ErrorResponses[404], + 429: ErrorResponses[429] + } + }), + async (c) => { + const user = assertActor("user"); + const machineInfo = await Machine.fromUserID(user.properties.userID); + + if (!machineInfo) + throw new VisibleError( + "not_found", + ErrorCodes.NotFound.RESOURCE_NOT_FOUND, + "No machines not found", + ); + + return c.json({ data: machineInfo, }, 200); + + }) + .get("/hosted", + describeRoute({ + tags: ["Machine"], + summary: "Get all cloud machines", + description: "All the machines that are connected to Nestri", + responses: { + 200: { + content: { + "application/json": { + schema: Result( + Machine.Info.array().openapi({ + description: "All the machines connected to Nestri", + example: [{ ...Examples.Machine, userID: null }], + }), + ), + }, + }, + description: "Successfully retrieved all the hosted machines", + }, + 404: ErrorResponses[404], + 429: ErrorResponses[429] + } + }), + async (c) => { + const machineInfo = await Machine.list(); + + if (!machineInfo) + throw new VisibleError( + "not_found", + ErrorCodes.NotFound.RESOURCE_NOT_FOUND, + "No machines not found", + ); + + return c.json({ data: machineInfo, }, 200); + + }) .post("/", describeRoute({ tags: ["Machine"], @@ -27,14 +103,6 @@ export module MachineApi { }, description: "Successfully sent the message to Maitred" }, - // 404: { - // content: { - // "application/json": { - // schema: resolver(z.object({ error: z.string() })), - // }, - // }, - // description: "This account does not exist", - // }, } }), validator( @@ -74,7 +142,7 @@ export module MachineApi { content: { "application/json": { schema: Result( - z.object({error: z.string()}) + z.object({ error: z.string() }) ), }, }, @@ -97,7 +165,7 @@ export module MachineApi { console.log("Published create request to"); } catch (error) { console.error("Failed to publish to MQTT:", error); - return c.json({error: "Failed to send create request"}, 400); + return c.json({ error: "Failed to send create request" }, 400); } return c.json({ @@ -129,7 +197,7 @@ export module MachineApi { content: { "application/json": { schema: Result( - z.object({error: z.string()}) + z.object({ error: z.string() }) ), }, }, @@ -154,7 +222,7 @@ export module MachineApi { console.log("Published start request"); } catch (error) { console.error("Failed to publish to MQTT:", error); - return c.json({error: "Failed to send start request"}, 400); + return c.json({ error: "Failed to send start request" }, 400); } return c.json({ @@ -186,7 +254,7 @@ export module MachineApi { content: { "application/json": { schema: Result( - z.object({error: z.string()}) + z.object({ error: z.string() }) ), }, }, @@ -211,7 +279,7 @@ export module MachineApi { console.log("Published stop request"); } catch (error) { console.error("Failed to publish to MQTT:", error); - return c.json({error: "Failed to send stop request"}, 400); + return c.json({ error: "Failed to send stop request" }, 400); } return c.json({ diff --git a/packages/functions/src/api/realtime/actor-core.ts b/packages/functions/src/api/realtime/actor-core.ts new file mode 100644 index 00000000..59f9e8a9 --- /dev/null +++ b/packages/functions/src/api/realtime/actor-core.ts @@ -0,0 +1,28 @@ +import { actor } from "actor-core"; + +// Define a chat room actor +const chatRoom = actor({ + // Initialize state when the actor is first created + createState: () => ({ + messages: [] as any[], + }), + + // Define actions clients can call + actions: { + // Action to send a message + sendMessage: (c, sender, text) => { + // Update state + c.state.messages.push({ sender, text }); + + // Broadcast to all connected clients + c.broadcast("newMessage", { sender, text }); + }, + + // Action to get chat history + getHistory: (c) => { + return c.state.messages; + } + } +}); + +export default chatRoom; \ No newline at end of file diff --git a/packages/functions/src/api/realtime/index.ts b/packages/functions/src/api/realtime/index.ts new file mode 100644 index 00000000..812f6210 --- /dev/null +++ b/packages/functions/src/api/realtime/index.ts @@ -0,0 +1,15 @@ +import { setup } from "actor-core"; +import chatRoom from "./actor-core"; +import { createRouter } from "@actor-core/bun"; + +export namespace Realtime { + const app = setup({ + actors: { chatRoom }, + basePath: "/realtime" + }); + + const realtimeRouter = createRouter(app); + + export const route = realtimeRouter.router; + export const webSocketHandler = realtimeRouter.webSocketHandler; +} \ No newline at end of file diff --git a/packages/functions/src/api/steam.ts b/packages/functions/src/api/steam.ts new file mode 100644 index 00000000..c16de6a8 --- /dev/null +++ b/packages/functions/src/api/steam.ts @@ -0,0 +1,47 @@ +import { Hono } from "hono"; +import { ErrorResponses, Result } from "./common"; +import { Steam } from "@nestri/core/steam/index"; +import { describeRoute } from "hono-openapi"; +import { Examples } from "@nestri/core/examples"; +import { assertActor } from "@nestri/core/actor"; +import { ErrorCodes, VisibleError } from "@nestri/core/error"; + +export namespace SteamApi { + export const route = new Hono() + .get("/", + describeRoute({ + tags: ["Steam"], + summary: "Get Steam account information", + description: "Get the user's Steam account information", + responses: { + 200: { + content: { + "application/json": { + schema: Result( + Steam.Info.openapi({ + description: "The Steam account information", + example: Examples.Steam, + }), + ), + }, + }, + description: "Successfully got the Steam account information", + }, + 404: ErrorResponses[404], + 429: ErrorResponses[429], + } + }), + async (c) => { + const actor = assertActor("user"); + const steamInfo = await Steam.fromUserID(actor.properties.userID); + if (!steamInfo) + throw new VisibleError( + "not_found", + ErrorCodes.NotFound.RESOURCE_NOT_FOUND, + "Steam account information not found", + ); + + return c.json({ data: steamInfo }, 200); + } + ) +} \ No newline at end of file diff --git a/packages/functions/src/api/team.ts b/packages/functions/src/api/team.ts index b667e06a..6072fbf5 100644 --- a/packages/functions/src/api/team.ts +++ b/packages/functions/src/api/team.ts @@ -9,7 +9,7 @@ import { Member } from "@nestri/core/member/index"; import { assertActor, withActor } from "@nestri/core/actor"; import { ErrorResponses, Result, validator } from "./common"; -export module TeamApi { +export namespace TeamApi { export const route = new Hono() .use(notPublic) .get("/", diff --git a/packages/functions/src/api/hook.ts b/packages/functions/src/api/types/hook.ts similarity index 100% rename from packages/functions/src/api/hook.ts rename to packages/functions/src/api/types/hook.ts diff --git a/packages/functions/src/auth.ts b/packages/functions/src/auth.ts index 9b1e9895..739e5736 100644 --- a/packages/functions/src/auth.ts +++ b/packages/functions/src/auth.ts @@ -2,8 +2,8 @@ import { Resource } from "sst" import { Select } from "./ui/select"; import { subjects } from "./subjects" import { logger } from "hono/logger"; -import { handle } from "hono/aws-lambda"; import { PasswordUI } from "./ui/password" +import { patchLogger } from "./log-polyfill"; import { issuer } from "@openauthjs/openauth"; import { User } from "@nestri/core/user/index" import { Email } from "@nestri/core/email/index"; @@ -11,8 +11,9 @@ import { handleDiscord, handleGithub } from "./utils"; import { GithubAdapter } from "./ui/adapters/github"; import { Machine } from "@nestri/core/machine/index" import { DiscordAdapter } from "./ui/adapters/discord"; -import { PasswordAdapter } from "./ui/adapters/password" +import { PasswordAdapter } from "./ui/adapters/password"; import { type Provider } from "@openauthjs/openauth/provider/provider" +import { MemoryStorage } from "@openauthjs/openauth/storage/memory"; type OauthUser = { primary: { @@ -24,13 +25,13 @@ type OauthUser = { username: any; } +console.log("STORAGE", process.env.STORAGE) + const app = issuer({ - select: Select({ - providers: { - machine: { - hide: true, - }, - }, + select: Select(), + //TODO: Create our own Storage + storage: MemoryStorage({ + persist: process.env.STORAGE //"/tmp/persist.json", }), theme: { title: "Nestri | Auth", @@ -46,9 +47,7 @@ const app = issuer({ font: { family: "Geist, sans-serif", }, - css: ` - @import url('https://fonts.googleapis.com/css2?family=Geist:wght@100;200;300;400;500;600;700;800;900&display=swap'); - `, + css: `@import url('https://fonts.googleapis.com/css2?family=Geist:wght@100;200;300;400;500;600;700;800;900&display=swap');`, }, subjects, providers: { @@ -78,9 +77,10 @@ const app = issuer({ machine: { type: "machine", async client(input) { - if (input.clientSecret !== Resource.AuthFingerprintKey.value) { - throw new Error("Invalid authorization token"); - } + // FIXME: Do we really need this? + // if (input.clientSecret !== Resource.AuthFingerprintKey.value) { + // throw new Error("Invalid authorization token"); + // } const fingerprint = input.params.fingerprint; if (!fingerprint) { @@ -120,7 +120,9 @@ const app = issuer({ location: { latitude, longitude - } + }, + //FIXME: Make this better + userID: null }) return ctx.subject("machine", { machineID, @@ -134,7 +136,7 @@ const app = issuer({ }); } - //TODO: This works, so use this while registering the task + // TODO: This works, so use this while registering the task // console.log("country_code", req.headers.get('CloudFront-Viewer-Country')) // console.log("country_name", req.headers.get('CloudFront-Viewer-Country-Name')) // console.log("latitude", req.headers.get('CloudFront-Viewer-Latitude')) @@ -225,4 +227,14 @@ const app = issuer({ }, }).use(logger()) -export const handler = handle(app) +patchLogger(); + +export default { + port: 3002, + idleTimeout: 255, + fetch: (req: Request) => + app.fetch(req, undefined, { + waitUntil: (fn) => fn, + passThroughOnException: () => { }, + }), +}; \ No newline at end of file diff --git a/packages/functions/src/log-polyfill.ts b/packages/functions/src/log-polyfill.ts new file mode 100644 index 00000000..dd2a2049 --- /dev/null +++ b/packages/functions/src/log-polyfill.ts @@ -0,0 +1,27 @@ +import { format } from "util"; + +/** + * Overrides the default Node.js console logging methods with a custom logger. + * + * This function patches console.log, console.warn, console.error, console.trace, and console.debug so that each logs + * messages prefixed with a log level. The messages are formatted using Node.js formatting conventions, with newline + * characters replaced by carriage returns, and are written directly to standard output. + * + * @example + * patchLogger(); + * console.info("Server started on port %d", 3000); + */ +export function patchLogger() { + const log = + (level: "INFO" | "WARN" | "TRACE" | "DEBUG" | "ERROR") => + (msg: string, ...rest: any[]) => { + let line = `${level}\t${format(msg, ...rest)}`; + line = line.replace(/\n/g, "\r"); + process.stdout.write(line + "\n"); + }; + console.log = log("INFO"); + console.warn = log("WARN"); + console.error = log("ERROR"); + console.trace = log("TRACE"); + console.debug = log("DEBUG"); +} \ No newline at end of file diff --git a/packages/functions/src/party/authorizer.ts b/packages/functions/src/party/authorizer.ts new file mode 100644 index 00000000..d7b3c978 --- /dev/null +++ b/packages/functions/src/party/authorizer.ts @@ -0,0 +1,38 @@ +import { Resource } from "sst"; +import { subjects } from "../subjects"; +import { realtime } from "sst/aws/realtime"; +import { createClient } from "@openauthjs/openauth/client"; + +export const handler = realtime.authorizer(async (token) => { + //TODO: Use the following criteria for a topic - team-slug/container-id (container ids are not unique globally) + //TODO: Allow the authorizer to subscriber/publisher to listen on - team-slug topics only (as the container will listen on the team-slug/container-id topic to be specific) + // Return the topics to subscribe and publish + + const client = createClient({ + clientID: "api", + issuer: Resource.Auth.url + }); + + const result = await client.verify(subjects, token); + + if (result.err) { + console.log("error", result.err) + return { + subscribe: [], + publish: [], + }; + } + + if (result.subject.type != "user") { + return { + subscribe: [], + publish: [], + }; + } + + return { + //It can publish and listen to other instances under this team + subscribe: [`${Resource.App.name}/${Resource.App.stage}/*`], + publish: [`${Resource.App.name}/${Resource.App.stage}/*`], + }; +}); \ No newline at end of file diff --git a/packages/functions/src/realtime/authorizer.ts b/packages/functions/src/realtime/authorizer.ts index ba6a8e62..9c99f16a 100644 --- a/packages/functions/src/realtime/authorizer.ts +++ b/packages/functions/src/realtime/authorizer.ts @@ -5,7 +5,7 @@ import { createClient } from "@openauthjs/openauth/client"; const client = createClient({ clientID: "realtime", - issuer: Resource.Urls.auth + issuer: Resource.Auth.url }); export const handler = realtime.authorizer(async (token) => { diff --git a/packages/functions/sst-env.d.ts b/packages/functions/sst-env.d.ts index 4f8d03e1..ccf1988a 100644 --- a/packages/functions/sst-env.d.ts +++ b/packages/functions/sst-env.d.ts @@ -7,22 +7,15 @@ import "sst" declare module "sst" { export interface Resource { "Api": { - "type": "sst.aws.Router" - "url": string - } - "ApiFn": { - "name": string - "type": "sst.aws.Function" + "service": string + "type": "sst.aws.Service" "url": string } "Auth": { - "type": "sst.aws.Auth" + "service": string + "type": "sst.aws.Service" "url": string } - "AuthFingerprintKey": { - "type": "random.index/randomString.RandomString" - "value": string - } "Bus": { "arn": string "name": string @@ -73,21 +66,10 @@ declare module "sst" { "endpoint": string "type": "sst.aws.Realtime" } - "Steam": { - "service": string - "type": "sst.aws.Service" - "url": string - } "Storage": { "name": string "type": "sst.aws.Bucket" } - "Urls": { - "api": string - "auth": string - "site": string - "type": "sst.sst.Linkable" - } "VPC": { "bastion": string "type": "sst.aws.Vpc" diff --git a/packages/steam/.gitignore b/packages/steam/.gitignore index 104b5441..a743b9b2 100644 --- a/packages/steam/.gitignore +++ b/packages/steam/.gitignore @@ -2,7 +2,8 @@ ## files generated by popular Visual Studio add-ons. ## ## Get latest from `dotnet new gitignore` - +bin +obj # dotenv files .env @@ -24,6 +25,8 @@ mono_crash.* [Dd]ebugPublic/ [Rr]elease/ [Rr]eleases/ +bin/ +obj/ x64/ x86/ [Ww][Ii][Nn]32/ @@ -228,6 +231,8 @@ _pkginfo.txt *.appx *.appxbundle *.appxupload +#Steam credentials file +*steam*.json # Visual Studio cache files # files ending in .cache can be ignored diff --git a/packages/steam/DBContext.cs b/packages/steam/DBContext.cs deleted file mode 100644 index e8925903..00000000 --- a/packages/steam/DBContext.cs +++ /dev/null @@ -1,18 +0,0 @@ -using Microsoft.EntityFrameworkCore; - -public class SteamDbContext : DbContext -{ - public DbSet SteamUserCredentials { get; set; } - - public SteamDbContext(DbContextOptions options) : base(options) - { - } - - protected override void OnModelCreating(ModelBuilder modelBuilder) - { - // Create a unique index on TeamId and UserId - modelBuilder.Entity() - .HasIndex(c => new { c.TeamId, c.UserId }) - .IsUnique(); - } -} \ No newline at end of file diff --git a/packages/steam/DBSchema.cs b/packages/steam/DBSchema.cs deleted file mode 100644 index a26f901e..00000000 --- a/packages/steam/DBSchema.cs +++ /dev/null @@ -1,12 +0,0 @@ -public class SteamUserCredential -{ - public int Id { get; set; } - public required string TeamId { get; set; } - public required string UserId { get; set; } - public required string AccountName { get; set; } - public required string RefreshToken { get; set; } - public DateTime CreatedAt { get; set; } = DateTime.UtcNow; - public DateTime UpdatedAt { get; set; } = DateTime.UtcNow; - - // Composite key of TeamId and UserId will be unique -} \ No newline at end of file diff --git a/packages/steam/HttpClientFactory.cs b/packages/steam/HttpClientFactory.cs new file mode 100644 index 00000000..d229838c --- /dev/null +++ b/packages/steam/HttpClientFactory.cs @@ -0,0 +1,42 @@ +using System.Net.Http.Headers; +using System.Net.Sockets; + +namespace Steam; + +public class HttpClientFactory +{ + public static HttpClient CreateHttpClient() + { + var client = new HttpClient(new SocketsHttpHandler + { + ConnectCallback = IPv4ConnectAsync + }); + + var assemblyVersion = typeof(HttpClientFactory).Assembly.GetName().Version?.ToString(fieldCount: 3); + client.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue("DepotDownloader", assemblyVersion)); + + return client; + } + + static async ValueTask IPv4ConnectAsync(SocketsHttpConnectionContext context, CancellationToken cancellationToken) + { + // By default, we create dual-mode sockets: + // Socket socket = new Socket(SocketType.Stream, ProtocolType.Tcp); + + var socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp) + { + NoDelay = true + }; + + try + { + await socket.ConnectAsync(context.DnsEndPoint, cancellationToken).ConfigureAwait(false); + return new NetworkStream(socket, ownsSocket: true); + } + catch + { + socket.Dispose(); + throw; + } + } +} \ No newline at end of file diff --git a/packages/steam/MachineInfo.cs b/packages/steam/MachineInfo.cs new file mode 100644 index 00000000..b9141467 --- /dev/null +++ b/packages/steam/MachineInfo.cs @@ -0,0 +1,28 @@ +using System.Text; + +namespace Steam; + +/// +/// Provides information about the machine that the application is running on. +/// For Steam Guard purposes, these values must return consistent results when run +/// on the same machine / in the same container / etc., otherwise it will be treated +/// as a separate machine and you may need to reauthenticate. +/// +public class IMachineInfoProvider : SteamKit2.IMachineInfoProvider +{ + /// + /// Provides a unique machine ID as binary data. + /// + /// The unique machine ID, or null if no such value could be found. + public byte[]? GetMachineGuid() => Encoding.UTF8.GetBytes("Nestri-Machine"); + /// + /// Provides the primary MAC address as binary data. + /// + /// The primary MAC address, or null if no such value could be found. + public byte[]? GetMacAddress() => Encoding.UTF8.GetBytes("Nestri-MacAddress"); + /// + /// Provides the boot disk's unique ID as binary data. + /// + /// The boot disk's unique ID, or null if no such value could be found. + public byte[]? GetDiskId() => Encoding.UTF8.GetBytes("Nestri-DiskId"); +} \ No newline at end of file diff --git a/packages/steam/Migrations/20250322023207_InitialCreate.Designer.cs b/packages/steam/Migrations/20250322023207_InitialCreate.Designer.cs deleted file mode 100644 index fbda970b..00000000 --- a/packages/steam/Migrations/20250322023207_InitialCreate.Designer.cs +++ /dev/null @@ -1,60 +0,0 @@ -// -using System; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace steam.Migrations -{ - [DbContext(typeof(SteamDbContext))] - [Migration("20250322023207_InitialCreate")] - partial class InitialCreate - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder.HasAnnotation("ProductVersion", "9.0.3"); - - modelBuilder.Entity("SteamUserCredential", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("INTEGER"); - - b.Property("AccountName") - .IsRequired() - .HasColumnType("TEXT"); - - b.Property("CreatedAt") - .HasColumnType("TEXT"); - - b.Property("RefreshToken") - .IsRequired() - .HasColumnType("TEXT"); - - b.Property("TeamId") - .IsRequired() - .HasColumnType("TEXT"); - - b.Property("UpdatedAt") - .HasColumnType("TEXT"); - - b.Property("UserId") - .IsRequired() - .HasColumnType("TEXT"); - - b.HasKey("Id"); - - b.HasIndex("TeamId", "UserId") - .IsUnique(); - - b.ToTable("SteamUserCredentials"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/packages/steam/Migrations/20250322023207_InitialCreate.cs b/packages/steam/Migrations/20250322023207_InitialCreate.cs deleted file mode 100644 index d03714e0..00000000 --- a/packages/steam/Migrations/20250322023207_InitialCreate.cs +++ /dev/null @@ -1,46 +0,0 @@ -using System; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace steam.Migrations -{ - /// - public partial class InitialCreate : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.CreateTable( - name: "SteamUserCredentials", - columns: table => new - { - Id = table.Column(type: "INTEGER", nullable: false) - .Annotation("Sqlite:Autoincrement", true), - TeamId = table.Column(type: "TEXT", nullable: false), - UserId = table.Column(type: "TEXT", nullable: false), - AccountName = table.Column(type: "TEXT", nullable: false), - RefreshToken = table.Column(type: "TEXT", nullable: false), - CreatedAt = table.Column(type: "TEXT", nullable: false), - UpdatedAt = table.Column(type: "TEXT", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_SteamUserCredentials", x => x.Id); - }); - - migrationBuilder.CreateIndex( - name: "IX_SteamUserCredentials_TeamId_UserId", - table: "SteamUserCredentials", - columns: new[] { "TeamId", "UserId" }, - unique: true); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "SteamUserCredentials"); - } - } -} diff --git a/packages/steam/Migrations/AppDbContextModelSnapshot.cs b/packages/steam/Migrations/AppDbContextModelSnapshot.cs deleted file mode 100644 index 6bea94cc..00000000 --- a/packages/steam/Migrations/AppDbContextModelSnapshot.cs +++ /dev/null @@ -1,57 +0,0 @@ -// -using System; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace steam.Migrations -{ - [DbContext(typeof(SteamDbContext))] - partial class AppDbContextModelSnapshot : ModelSnapshot - { - protected override void BuildModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder.HasAnnotation("ProductVersion", "9.0.3"); - - modelBuilder.Entity("SteamUserCredential", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("INTEGER"); - - b.Property("AccountName") - .IsRequired() - .HasColumnType("TEXT"); - - b.Property("CreatedAt") - .HasColumnType("TEXT"); - - b.Property("RefreshToken") - .IsRequired() - .HasColumnType("TEXT"); - - b.Property("TeamId") - .IsRequired() - .HasColumnType("TEXT"); - - b.Property("UpdatedAt") - .HasColumnType("TEXT"); - - b.Property("UserId") - .IsRequired() - .HasColumnType("TEXT"); - - b.HasKey("Id"); - - b.HasIndex("TeamId", "UserId") - .IsUnique(); - - b.ToTable("SteamUserCredentials"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/packages/steam/Program.cs b/packages/steam/Program.cs index b9b444fe..96f7e85c 100644 --- a/packages/steam/Program.cs +++ b/packages/steam/Program.cs @@ -1,331 +1,118 @@ -using System.Text; -using System.Text.Json; -using Microsoft.IdentityModel.Tokens; -using System.IdentityModel.Tokens.Jwt; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Http.Features; -using Microsoft.AspNetCore.Authentication.JwtBearer; -using Microsoft.EntityFrameworkCore; - -// FYI: Am very new to C# if you find any bugs or have any feedback hit me up :P -// TBH i dunno what this code does, only God and Claude know(in the slightest) what it does. -// And yes! It does not sit right with me - am learning C# as we go, i guess 🤧 -// This is the server to connect to the Steam APIs and do stuff like: -// - authenticate a user, -// - get their library, -// - generate .vdf files for Steam Client (Steam manifest files), etc etc -var builder = WebApplication.CreateBuilder(args); - -// Add JWT Authentication -builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) - .AddJwtBearer(options => +namespace Steam +{ + public class Program { - options.TokenValidationParameters = new TokenValidationParameters + const string UnixSocketPath = "/tmp/steam.sock"; + + public static void Main(string[] args) { - ValidateIssuer = true, - ValidIssuer = Environment.GetEnvironmentVariable("NESTRI_AUTH_JWKS_URL"), - ValidateAudience = false, - ValidateLifetime = true, - ValidateIssuerSigningKey = true, - RequireSignedTokens = true, - RequireExpirationTime = true, - ClockSkew = TimeSpan.Zero, - - // Configure the issuer signing key provider - IssuerSigningKeyResolver = (token, securityToken, kid, validationParameters) => + // Delete the socket file if it exists + if (File.Exists(UnixSocketPath)) { - // Fetch the JWKS manually - var jwksUrl = $"{Environment.GetEnvironmentVariable("NESTRI_AUTH_JWKS_URL")}/.well-known/jwks.json"; - var httpClient = new HttpClient(); - var jwksJson = httpClient.GetStringAsync(jwksUrl).Result; - var jwks = JsonSerializer.Deserialize(jwksJson); - - // Return all keys or filter by kid if provided - if (string.IsNullOrEmpty(kid)) - return jwks?.Keys; - else - return jwks?.Keys.Where(k => k.Kid == kid); + File.Delete(UnixSocketPath); } - }; - // Add logging for debugging - options.Events = new JwtBearerEvents - { - OnAuthenticationFailed = context => + var builder = WebApplication.CreateBuilder(args); + + // Configure Kestrel to listen on Unix socket + builder.WebHost.ConfigureKestrel(options => { - Console.WriteLine($"Authentication failed: {context.Exception.Message}"); - return Task.CompletedTask; - }, - OnTokenValidated = context => + options.ListenUnixSocket(UnixSocketPath); + options.Limits.KeepAliveTimeout = TimeSpan.FromMinutes(10); + options.Limits.RequestHeadersTimeout = TimeSpan.FromMinutes(5); + }); + + builder.Services.AddControllers(); + builder.Services.AddSingleton(); + + var app = builder.Build(); + + // Health check endpoint + app.MapGet("/", () => "Steam Auth Service is running"); + + // QR Code login endpoint with Server-Sent Events + app.MapGet("/api/steam/login", async (HttpResponse response, SteamAuthService steamService) => { - Console.WriteLine("Token successfully validated"); - return Task.CompletedTask; - } - }; - }); + // Generate a unique session ID for this login attempt + string sessionId = Guid.NewGuid().ToString(); + + Console.WriteLine($"Starting new login session: {sessionId}"); -builder.Services.AddAuthorization(); + // Set up SSE response + response.Headers.Append("Content-Type", "text/event-stream"); + response.Headers.Append("Cache-Control", "no-cache"); + response.Headers.Append("Connection", "keep-alive"); -// Configure CORS -builder.Services.AddCors(options => -{ - options.AddDefaultPolicy( - policy => - { - policy.AllowAnyOrigin() - .AllowAnyHeader() - .AllowAnyMethod(); - }); -}); - -builder.Services.AddSingleton(); - -builder.Services.AddDbContext(options => - options.UseSqlite($"Data Source=/tmp/steam.db")); - -var app = builder.Build(); - -app.UseCors(); -app.UseAuthentication(); -app.UseAuthorization(); - - -app.MapGet("/", () => "Hello World!"); - -app.MapGet("/status", [Authorize] async (HttpContext context, SteamService steamService) => -{ - // Validate JWT - var jwtToken = context.Request.Headers["Authorization"].ToString().Replace("Bearer ", ""); - var (isValid, userId, email) = await ValidateJwtToken(jwtToken); - - if (!isValid) - { - return Results.Unauthorized(); - } - - // Get team ID - var teamId = context.Request.Headers["x-nestri-team"].ToString(); - if (string.IsNullOrEmpty(teamId)) - { - return Results.BadRequest("Missing team ID"); - } - - // Check if user is authenticated with Steam - var userInfo = await steamService.GetUserInfoFromStoredCredentials(teamId, userId!); - if (userInfo == null) - { - return Results.Ok(new { isAuthenticated = false }); - } - - return Results.Ok(new - { - isAuthenticated = true, - steamId = userInfo.SteamId, - username = userInfo.Username - }); -}); - -app.MapGet("/login", [Authorize] async (HttpContext context, SteamService steamService) => -{ - // Validate JWT - var jwtToken = context.Request.Headers["Authorization"].ToString().Replace("Bearer ", ""); - var (isValid, userId, email) = await ValidateJwtToken(jwtToken); - - Console.WriteLine($"User data: {userId}:{email}"); - - if (!isValid) - { - context.Response.StatusCode = 401; - await context.Response.WriteAsync("Invalid JWT token"); - return; - } - - // Get team ID - var teamId = context.Request.Headers["x-nestri-team"].ToString(); - if (string.IsNullOrEmpty(teamId)) - { - context.Response.StatusCode = 400; - await context.Response.WriteAsync("Missing team ID"); - return; - } - - // Set SSE headers - context.Response.Headers.Append("Connection", "keep-alive"); - context.Response.Headers.Append("Cache-Control", "no-cache"); - context.Response.Headers.Append("Content-Type", "text/event-stream"); - context.Response.Headers.Append("Access-Control-Allow-Origin", "*"); - - // Disable response buffering - var responseBodyFeature = context.Features.Get(); - if (responseBodyFeature != null) - { - responseBodyFeature.DisableBuffering(); - } - - // Create unique client ID - var clientId = $"{teamId}:{userId}"; - var cancellationToken = context.RequestAborted; - - // Start Steam authentication - await steamService.StartAuthentication(teamId, userId!); - - // Register for updates - var subscription = steamService.SubscribeToEvents(clientId, async (evt) => - { - try - { - // Serialize the event to SSE format - string eventMessage = evt.Serialize(); - byte[] buffer = Encoding.UTF8.GetBytes(eventMessage); - - await context.Response.Body.WriteAsync(buffer, 0, buffer.Length, cancellationToken); - await context.Response.Body.FlushAsync(cancellationToken); - - Console.WriteLine($"Sent event type '{evt.Type}' to client {clientId}"); - } - catch (Exception ex) - { - Console.WriteLine($"Error sending event to client {clientId}: {ex.Message}"); - } - }); - - // Keep the connection alive until canceled - try - { - await Task.Delay(Timeout.Infinite, cancellationToken); - } - catch (TaskCanceledException) - { - Console.WriteLine($"Client {clientId} disconnected"); - } - finally - { - steamService.Unsubscribe(clientId, subscription); - } -}); - -app.MapGet("/user", [Authorize] async (HttpContext context, SteamService steamService) => -{ - // Validate JWT - var jwtToken = context.Request.Headers["Authorization"].ToString().Replace("Bearer ", ""); - var (isValid, userId, email) = await ValidateJwtToken(jwtToken); - - if (!isValid) - { - return Results.Unauthorized(); - } - - // Get team ID - var teamId = context.Request.Headers["x-nestri-team"].ToString(); - if (string.IsNullOrEmpty(teamId)) - { - return Results.BadRequest("Missing team ID"); - } - - // Get user info from stored credentials - var userInfo = await steamService.GetUserInfoFromStoredCredentials(teamId, userId); - if (userInfo == null) - { - return Results.NotFound(new { error = "User not authenticated with Steam" }); - } - - return Results.Ok(new - { - steamId = userInfo.SteamId, - username = userInfo.Username - }); -}); - -app.MapPost("/logout", [Authorize] async (HttpContext context, SteamService steamService) => -{ - // Validate JWT - var jwtToken = context.Request.Headers["Authorization"].ToString().Replace("Bearer ", ""); - var (isValid, userId, email) = await ValidateJwtToken(jwtToken); - - if (!isValid) - { - return Results.Unauthorized(); - } - - // Get team ID - var teamId = context.Request.Headers["x-nestri-team"].ToString(); - if (string.IsNullOrEmpty(teamId)) - { - return Results.BadRequest("Missing team ID"); - } - - // Delete the stored credentials - using var scope = context.RequestServices.CreateScope(); - var dbContext = scope.ServiceProvider.GetRequiredService(); - - var credentials = await dbContext.SteamUserCredentials - .FirstOrDefaultAsync(c => c.TeamId == teamId && c.UserId == userId); - - if (credentials != null) - { - dbContext.SteamUserCredentials.Remove(credentials); - await dbContext.SaveChangesAsync(); - return Results.Ok(new { message = "Steam authentication revoked" }); - } - - return Results.NotFound(new { error = "No Steam authentication found" }); -}); - -// JWT validation function -async Task<(bool IsValid, string? UserId, string? Email)> ValidateJwtToken(string token) -{ - try - { - var jwksUrl = Environment.GetEnvironmentVariable("NESTRI_AUTH_JWKS_URL"); - var handler = new JwtSecurityTokenHandler(); - var jwtToken = handler.ReadJwtToken(token); - - // Log all claims for debugging - // Console.WriteLine("JWT Claims:"); - // foreach (var claim in jwtToken.Claims) - // { - // Console.WriteLine($" {claim.Type}: {claim.Value}"); - // } - - // Validate token using JWKS - var httpClient = new HttpClient(); - var jwksJson = await httpClient.GetStringAsync($"{jwksUrl}/.well-known/jwks.json"); - var jwks = JsonSerializer.Deserialize(jwksJson); - - // Extract the properties claim which contains nested JSON - var propertiesClaim = jwtToken.Claims.FirstOrDefault(c => c.Type == "properties")?.Value; - if (!string.IsNullOrEmpty(propertiesClaim)) - { - // Parse the nested JSON - var properties = JsonSerializer.Deserialize>(propertiesClaim); - - // Extract userID from properties - var email = properties?.GetValueOrDefault("email"); - var userId = properties?.GetValueOrDefault("userID"); - - if (string.IsNullOrEmpty(userId) || string.IsNullOrEmpty(email)) - { - // Also check standard claims as fallback - userId = jwtToken.Claims.FirstOrDefault(c => c.Type == "sub")?.Value; - email = jwtToken.Claims.FirstOrDefault(c => c.Type == "email")?.Value; - - if (string.IsNullOrEmpty(userId) || string.IsNullOrEmpty(email)) + try { - return (false, null, null); + // Start QR login session with SSE updates + await steamService.StartQrLoginSessionAsync(response, sessionId); } - } + catch (Exception ex) + { + Console.WriteLine($"Error in login session {sessionId}: {ex.Message}"); + + // Send error message as SSE + await response.WriteAsync($"event: error\n"); + await response.WriteAsync($"data: {{\"message\":\"{ex.Message}\"}}\n\n"); + await response.Body.FlushAsync(); + } + }); - return (true, userId, email); + // Login with credentials endpoint (returns JSON) + app.MapPost("/api/steam/login-with-credentials", async (LoginCredentials credentials, SteamAuthService steamService) => + { + if (string.IsNullOrEmpty(credentials.Username) || string.IsNullOrEmpty(credentials.RefreshToken)) + { + return Results.BadRequest("Username and refresh token are required"); + } + + try + { + var result = await steamService.LoginWithCredentialsAsync( + credentials.Username, + credentials.RefreshToken); + + return Results.Ok(result); + } + catch (Exception ex) + { + Console.WriteLine($"Error logging in with credentials: {ex.Message}"); + return Results.Problem(ex.Message); + } + }); + + // Get user info endpoint (returns JSON) + app.MapGet("/api/steam/user", async (HttpRequest request, SteamAuthService steamService) => + { + // Get credentials from headers + var username = request.Headers["X-Steam-Username"].ToString(); + var refreshToken = request.Headers["X-Steam-Token"].ToString(); + + if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(refreshToken)) + { + return Results.BadRequest("Username and refresh token headers are required"); + } + + try + { + var userInfo = await steamService.GetUserInfoAsync(username, refreshToken); + return Results.Ok(userInfo); + } + catch (Exception ex) + { + Console.WriteLine($"Error getting user info: {ex.Message}"); + return Results.Problem(ex.Message); + } + }); + + app.Run(); } - - return (false, null, null); } - catch (Exception ex) + + public class LoginCredentials { - Console.WriteLine($"JWT validation error: {ex.Message}"); - return (false, null, null); + public string Username { get; set; } = string.Empty; + public string RefreshToken { get; set; } = string.Empty; } -} - -Console.WriteLine("Server started. Press Ctrl+C to stop."); -await app.RunAsync(); +} \ No newline at end of file diff --git a/packages/steam/Properties/launchSettings.json b/packages/steam/Properties/launchSettings.json index 131d8a24..39d27376 100644 --- a/packages/steam/Properties/launchSettings.json +++ b/packages/steam/Properties/launchSettings.json @@ -4,8 +4,8 @@ "windowsAuthentication": false, "anonymousAuthentication": true, "iisExpress": { - "applicationUrl": "http://localhost:12427", - "sslPort": 44354 + "applicationUrl": "http://localhost:41347", + "sslPort": 44359 } }, "profiles": { @@ -13,7 +13,8 @@ "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, - "applicationUrl": "http://localhost:5289", + "launchUrl": "swagger", + "applicationUrl": "http://localhost:5221", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } @@ -22,7 +23,8 @@ "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, - "applicationUrl": "https://localhost:7168;http://localhost:5289", + "launchUrl": "swagger", + "applicationUrl": "https://localhost:7060;http://localhost:5221", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } @@ -30,6 +32,7 @@ "IIS Express": { "commandName": "IISExpress", "launchBrowser": true, + "launchUrl": "swagger", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } diff --git a/packages/steam/SSEEvents.cs b/packages/steam/SSEEvents.cs deleted file mode 100644 index 275a133c..00000000 --- a/packages/steam/SSEEvents.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System.Text.Json; - -public class ServerSentEvent -{ - public string Type { get; set; } - public object Data { get; set; } - - public ServerSentEvent(string type, object data) - { - Type = type; - Data = data; - } - - public string Serialize() - { - var dataJson = JsonSerializer.Serialize(Data); - return $"event: {Type}\ndata: {dataJson}\n\n"; - } -} \ No newline at end of file diff --git a/packages/steam/SteamAuthService.cs b/packages/steam/SteamAuthService.cs new file mode 100644 index 00000000..eade4745 --- /dev/null +++ b/packages/steam/SteamAuthService.cs @@ -0,0 +1,389 @@ +using SteamKit2; +using SteamKit2.Authentication; + +namespace Steam +{ + public class SteamAuthService + { + private readonly SteamClient _steamClient; + private readonly SteamUser _steamUser; + private readonly SteamFriends _steamFriends; + private readonly CallbackManager _manager; + private CancellationTokenSource? _cts; + private Task? _callbackTask; + private readonly Dictionary> _authCompletionSources = new(); + + public SteamAuthService() + { + var configuration = SteamConfiguration.Create(config => + { + config.WithHttpClientFactory(HttpClientFactory.CreateHttpClient); + config.WithMachineInfoProvider(new IMachineInfoProvider()); + config.WithConnectionTimeout(TimeSpan.FromSeconds(10)); + }); + + _steamClient = new SteamClient(configuration); + _manager = new CallbackManager(_steamClient); + _steamUser = _steamClient.GetHandler() ?? throw new InvalidOperationException("SteamUser handler not available"); + _steamFriends = _steamClient.GetHandler() ?? throw new InvalidOperationException("SteamFriends handler not available"); + + // Register basic callbacks + _manager.Subscribe(OnConnected); + _manager.Subscribe(OnDisconnected); + _manager.Subscribe(OnLoggedOn); + _manager.Subscribe(OnLoggedOff); + } + + // Main login method - initiates QR authentication and sends SSE updates + public async Task StartQrLoginSessionAsync(HttpResponse response, string sessionId) + { + response.Headers.Append("Content-Type", "text/event-stream"); + response.Headers.Append("Cache-Control", "no-cache"); + response.Headers.Append("Connection", "keep-alive"); + + // Create a completion source for this session + var tcs = new TaskCompletionSource(); + _authCompletionSources[sessionId] = tcs; + + try + { + // Connect to Steam if not already connected + await EnsureConnectedAsync(); + + // Send initial status + await SendSseEvent(response, "status", new { message = "Starting QR authentication..." }); + + // Begin auth session + var authSession = await _steamClient.Authentication.BeginAuthSessionViaQRAsync( + new AuthSessionDetails + { + PlatformType = SteamKit2.Internal.EAuthTokenPlatformType.k_EAuthTokenPlatformType_SteamClient, + DeviceFriendlyName = "Nestri Cloud Gaming", + ClientOSType = EOSType.Linux5x + } + ); + + // Handle URL changes + authSession.ChallengeURLChanged = async () => + { + await SendSseEvent(response, "challenge_url", new { url = authSession.ChallengeURL }); + }; + + // Send initial QR code URL + await SendSseEvent(response, "challenge_url", new { url = authSession.ChallengeURL }); + + // Poll for authentication result + try + { + var pollResponse = await authSession.PollingWaitForResultAsync(); + + // Send credentials to client + await SendSseEvent(response, "credentials", new + { + username = pollResponse.AccountName, + refreshToken = pollResponse.RefreshToken + }); + + // Log in with obtained credentials + await SendSseEvent(response, "status", new { message = $"Logging in as '{pollResponse.AccountName}'..." }); + + _steamUser.LogOn(new SteamUser.LogOnDetails + { + Username = pollResponse.AccountName, + MachineName = "Nestri Cloud Gaming", + ClientOSType = EOSType.Linux5x, + AccessToken = pollResponse.RefreshToken + }); + + // Wait for login to complete (handled by OnLoggedOn callback) + await tcs.Task; + + // Send final success message + await SendSseEvent(response, "login-successful", new + { + steamId = _steamUser.SteamID?.ConvertToUInt64(), + username = pollResponse.AccountName + }); + } + catch (Exception ex) + { + await SendSseEvent(response, "login-unsuccessful", new { error = ex.Message }); + } + } + catch (Exception ex) + { + await SendSseEvent(response, "error", new { message = ex.Message }); + } + finally + { + // Clean up + _authCompletionSources.Remove(sessionId); + await response.Body.FlushAsync(); + } + } + + // Method to login with existing credentials and return result (no SSE) + public async Task LoginWithCredentialsAsync(string username, string refreshToken) + { + var sessionId = Guid.NewGuid().ToString(); + var tcs = new TaskCompletionSource(); + _authCompletionSources[sessionId] = tcs; + + try + { + // Connect to Steam if not already connected + await EnsureConnectedAsync(); + + // Log in with provided credentials + _steamUser.LogOn(new SteamUser.LogOnDetails + { + Username = username, + MachineName = "Nestri Cloud Gaming", + AccessToken = refreshToken, + ClientOSType = EOSType.Linux5x, + }); + + // Wait for login to complete (handled by OnLoggedOn callback) + var success = await tcs.Task; + + if (success) + { + return new LoginResult + { + Success = true, + SteamId = _steamUser.SteamID?.ConvertToUInt64(), + Username = username + }; + } + else + { + return new LoginResult + { + Success = false, + ErrorMessage = "Login failed" + }; + } + } + catch (Exception ex) + { + return new LoginResult + { + Success = false, + ErrorMessage = ex.Message + }; + } + finally + { + _authCompletionSources.Remove(sessionId); + } + } + + // Method to get user information - waits for all required callbacks to complete + public async Task GetUserInfoAsync(string username, string refreshToken) + { + // First ensure we're logged in + var loginResult = await LoginWithCredentialsAsync(username, refreshToken); + if (!loginResult.Success) + { + throw new Exception($"Failed to log in: {loginResult.ErrorMessage}"); + } + + var userInfo = new UserInfo + { + SteamId = _steamUser.SteamID?.ConvertToUInt64() ?? 0, + Username = username + }; + + // Set up completion sources for each piece of information + var accountInfoTcs = new TaskCompletionSource(); + var personaStateTcs = new TaskCompletionSource(); + var emailInfoTcs = new TaskCompletionSource(); + + // Subscribe to one-time callbacks + var accountSub = _manager.Subscribe(callback => + { + userInfo.Country = callback.Country; + userInfo.PersonaName = callback.PersonaName; + accountInfoTcs.TrySetResult(true); + }); + + var personaSub = _manager.Subscribe(callback => + { + if (callback.FriendID == _steamUser.SteamID) + { + // Convert avatar hash to URL + if (callback.AvatarHash != null && callback.AvatarHash.Length > 0) + { + var avatarStr = BitConverter.ToString(callback.AvatarHash).Replace("-", "").ToLowerInvariant(); + userInfo.AvatarUrl = $"https://avatars.akamai.steamstatic.com/{avatarStr}_full.jpg"; + } + + userInfo.PersonaName = callback.Name; + userInfo.GameId = callback.GameID?.ToUInt64() ?? 0; + userInfo.GamePlayingName = callback.GameName; + userInfo.LastLogOn = callback.LastLogOn; + userInfo.LastLogOff = callback.LastLogOff; + personaStateTcs.TrySetResult(true); + } + }); + + var emailSub = _manager.Subscribe(callback => + { + userInfo.Email = callback.EmailAddress; + emailInfoTcs.TrySetResult(true); + }); + + try + { + // Request all the info + if (_steamUser.SteamID != null) + { + _steamFriends.RequestFriendInfo(_steamUser.SteamID); + } + + // Wait for all callbacks with timeout + var timeoutTask = Task.Delay(TimeSpan.FromSeconds(10)); + var tasks = new[] + { + accountInfoTcs.Task, + personaStateTcs.Task, + emailInfoTcs.Task + }; + + await Task.WhenAny(Task.WhenAll(tasks), timeoutTask); + + return userInfo; + } + finally + { + // Unsubscribe from callbacks + // _manager.Unsubscribe(accountSub); + // _manager.Unsubscribe(personaSub); + // _manager.Unsubscribe(emailSub); + } + } + + public void Disconnect() + { + _cts?.Cancel(); + + if (_steamUser.SteamID != null) + { + _steamUser.LogOff(); + } + + _steamClient.Disconnect(); + } + + #region Private Helper Methods + + private async Task EnsureConnectedAsync() + { + if (_callbackTask == null) + { + _cts = new CancellationTokenSource(); + _steamClient.Connect(); + + // Run callback loop in background + _callbackTask = Task.Run(() => + { + while (!_cts.Token.IsCancellationRequested) + { + _manager.RunWaitCallbacks(TimeSpan.FromMilliseconds(500)); + Thread.Sleep(10); + } + }, _cts.Token); + var connectionTcs = new TaskCompletionSource(); + var connectionSub = _manager.Subscribe(_ => + { + connectionTcs.TrySetResult(true); + }); + + try + { + // Wait up to 10 seconds for connection + var timeoutTask = Task.Delay(TimeSpan.FromSeconds(10)); + var completedTask = await Task.WhenAny(connectionTcs.Task, timeoutTask); + + if (completedTask == timeoutTask) + { + throw new TimeoutException("Connection to Steam timed out"); + } + } + finally + { + // _manager.Unsubscribe(connectionSub); + } + } + } + + private static async Task SendSseEvent(HttpResponse response, string eventType, object data) + { + var json = System.Text.Json.JsonSerializer.Serialize(data); + await response.WriteAsync($"event: {eventType}\n"); + await response.WriteAsync($"data: {json}\n\n"); + await response.Body.FlushAsync(); + } + + #endregion + + #region Callback Handlers + + private void OnConnected(SteamClient.ConnectedCallback callback) + { + Console.WriteLine("Connected to Steam"); + } + + private void OnDisconnected(SteamClient.DisconnectedCallback callback) + { + Console.WriteLine("Disconnected from Steam"); + + // Only try to reconnect if not deliberately disconnected + if (_callbackTask != null && !_cts!.IsCancellationRequested) + { + Task.Delay(TimeSpan.FromSeconds(5)).ContinueWith(_ => _steamClient.Connect()); + } + } + + private void OnLoggedOn(SteamUser.LoggedOnCallback callback) + { + var success = callback.Result == EResult.OK; + Console.WriteLine($"Logged on: {success}"); + + // Complete all pending auth completion sources + foreach (var tcs in _authCompletionSources.Values) + { + tcs.TrySetResult(success); + } + } + + private void OnLoggedOff(SteamUser.LoggedOffCallback callback) + { + Console.WriteLine($"Logged off: {callback.Result}"); + } + + #endregion + } + + public class LoginResult + { + public bool Success { get; set; } + public ulong? SteamId { get; set; } + public string? Username { get; set; } + public string? ErrorMessage { get; set; } + } + + public class UserInfo + { + public ulong SteamId { get; set; } + public string? Username { get; set; } + public string? PersonaName { get; set; } + public string? Country { get; set; } + public string? Email { get; set; } + public string? AvatarUrl { get; set; } + public ulong GameId { get; set; } + public string? GamePlayingName { get; set; } + public DateTime LastLogOn { get; set; } + public DateTime LastLogOff { get; set; } + } +} \ No newline at end of file diff --git a/packages/steam/SteamClient.cs b/packages/steam/SteamClient.cs deleted file mode 100644 index b9282909..00000000 --- a/packages/steam/SteamClient.cs +++ /dev/null @@ -1,357 +0,0 @@ -using SteamKit2; -using SteamKit2.Authentication; - -// Steam client handler -public class SteamClientHandler -{ - private readonly string _clientId; - private readonly SteamClient _steamClient; - private readonly CallbackManager _manager; - private readonly SteamUser _steamUser; - public event Action? OnEvent; - private readonly List> _subscribers = new(); - private QrAuthSession? _authSession; - private Task? _callbackTask; - private CancellationTokenSource? _cts; - private bool _isAuthenticated = false; - - public SteamUserInfo? UserInfo { get; private set; } - - // Add a callback for when credentials are obtained - private readonly Action? _onCredentialsObtained; - - // Update constructor to optionally receive the callback - public SteamClientHandler(string clientId, Action? onCredentialsObtained = null) - { - _clientId = clientId; - _onCredentialsObtained = onCredentialsObtained; - _steamClient = new SteamClient(SteamConfiguration.Create(e => e.WithConnectionTimeout(TimeSpan.FromSeconds(120)))); - _manager = new CallbackManager(_steamClient); - _steamUser = _steamClient.GetHandler()!; - - // Register callbacks - _manager.Subscribe(OnConnected); - _manager.Subscribe(OnDisconnected); - _manager.Subscribe(OnLoggedOn); - _manager.Subscribe(OnLoggedOff); - } - - // Add method to login with stored credentials - public async Task LoginWithStoredCredentialsAsync(string accountName, string refreshToken) - { - if (_callbackTask != null) - { - return _isAuthenticated; // Already connected - } - - _cts = new CancellationTokenSource(); - - // Connect to Steam - Console.WriteLine($"[{_clientId}] Connecting to Steam with stored credentials..."); - _steamClient.Connect(); - - // Start callback loop - _callbackTask = Task.Run(async () => - { - while (!_cts.Token.IsCancellationRequested) - { - _manager.RunWaitCallbacks(TimeSpan.FromSeconds(1)); - await Task.Delay(10); - } - }, _cts.Token); - - // Wait for connection - var connectionTask = new TaskCompletionSource(); - var connectedHandler = _manager.Subscribe(callback => - { - // Once connected, try to log in with stored credentials - Console.WriteLine($"[{_clientId}] Connected to Steam, logging in with stored credentials"); - _steamUser.LogOn(new SteamUser.LogOnDetails - { - Username = accountName, - AccessToken = refreshToken - }); - connectionTask.TrySetResult(true); - }); - - // Set up a handler for the login result - var loginResultTask = new TaskCompletionSource(); - var loggedOnHandler = _manager.Subscribe(callback => - { - if (callback.Result == EResult.OK) - { - Console.WriteLine($"[{_clientId}] Successfully logged on with stored credentials"); - _isAuthenticated = true; - UserInfo = new SteamUserInfo - { - SteamId = callback.ClientSteamID.ToString(), - Username = accountName - }; - loginResultTask.TrySetResult(true); - } - else - { - Console.WriteLine($"[{_clientId}] Failed to log on with stored credentials: {callback.Result}"); - loginResultTask.TrySetResult(false); - } - }); - - // Add a timeout - var timeoutTask = Task.Delay(TimeSpan.FromSeconds(30)); - - try - { - await connectionTask.Task; - - var completedTask = await Task.WhenAny(loginResultTask.Task, timeoutTask); - - if (completedTask == timeoutTask) - { - Console.WriteLine($"[{_clientId}] Login with stored credentials timed out"); - Shutdown(); - return false; - } - - return await loginResultTask.Task; - } - catch (Exception ex) - { - Console.WriteLine($"[{_clientId}] Error logging in with stored credentials: {ex.Message}"); - return false; - } - // finally - // { - // _manager.Unsubscribe(connectedHandler); - // _manager.Unsubscribe(loggedOnHandler); - // } - } - - public async Task StartAuthenticationAsync() - { - if (_callbackTask != null) - { - // Authentication already in progress - if (_authSession != null) - { - // Just resend the current QR code URL to all subscribers - NotifySubscribers(_authSession.ChallengeURL); - } - return; - } - - _cts = new CancellationTokenSource(); - - // Connect to Steam - Console.WriteLine($"[{_clientId}] Connecting to Steam..."); - _steamClient.Connect(); - - // Start callback loop - _callbackTask = Task.Run(async () => - { - while (!_cts.Token.IsCancellationRequested) - { - _manager.RunWaitCallbacks(TimeSpan.FromSeconds(1)); - await Task.Delay(10); - } - }, _cts.Token); - } - - private void NotifyEvent(ServerSentEvent evt) - { - OnEvent?.Invoke(evt); - - // Also notify the legacy subscribers with just the URL if this is a URL event - if (evt.Type == "url" && evt.Data is string url) - { - NotifySubscribers(url); - } - } - - private async void OnConnected(SteamClient.ConnectedCallback callback) - { - Console.WriteLine($"[{_clientId}] Connected to Steam"); - - try - { - // Start QR authentication session - _authSession = await _steamClient.Authentication.BeginAuthSessionViaQRAsync(new AuthSessionDetails()); - - // Handle QR code URL changes - _authSession.ChallengeURLChanged = () => - { - Console.WriteLine($"[{_clientId}] QR challenge URL refreshed"); - NotifyEvent(new ServerSentEvent("url", _authSession.ChallengeURL)); - }; - - // Send initial QR code URL - NotifyEvent(new ServerSentEvent("url", _authSession.ChallengeURL)); - - // Start polling for authentication result - await Task.Run(async () => - { - try - { - var pollResponse = await _authSession.PollingWaitForResultAsync(); - - Console.WriteLine($"[{_clientId}] Logging in as '{pollResponse.AccountName}'"); - - // Send login attempt event - NotifyEvent(new ServerSentEvent("login-attempt", new { username = pollResponse.AccountName })); - - // Login to Steam - _steamUser.LogOn(new SteamUser.LogOnDetails - { - Username = pollResponse.AccountName, - AccessToken = pollResponse.RefreshToken, - }); - } - catch (Exception ex) - { - Console.WriteLine($"[{_clientId}] Authentication polling error: {ex.Message}"); - NotifyEvent(new ServerSentEvent("login-unsuccessful", new { error = ex.Message })); - } - }); - } - catch (Exception ex) - { - Console.WriteLine($"[{_clientId}] Error starting authentication: {ex.Message}"); - NotifyEvent(new ServerSentEvent("login-unsuccessful", new { error = ex.Message })); - } - } - - private void OnDisconnected(SteamClient.DisconnectedCallback callback) - { - Console.WriteLine($"[{_clientId}] Disconnected from Steam"); - - _isAuthenticated = false; - UserInfo = null; - - // Reconnect if not intentionally stopped - if (_callbackTask != null && !_cts.IsCancellationRequested) - { - Console.WriteLine($"[{_clientId}] Reconnecting..."); - _steamClient.Connect(); - } - } - - private void OnLoggedOn(SteamUser.LoggedOnCallback callback) - { - if (callback.Result != EResult.OK) - { - Console.WriteLine($"[{_clientId}] Unable to log on to Steam: {callback.Result} / {callback.ExtendedResult}"); - NotifyEvent(new ServerSentEvent("login-unsuccessful", new - { - error = $"Steam login failed: {callback.Result}", - extendedError = callback.ExtendedResult.ToString() - })); - return; - } - - Console.WriteLine($"[{_clientId}] Successfully logged on as {callback.ClientSteamID}"); - - _isAuthenticated = true; - - // Get the username from the authentication session - string accountName = _authSession?.PollingWaitForResultAsync().Result.AccountName ?? "Unknown"; - string refreshToken = _authSession?.PollingWaitForResultAsync().Result.RefreshToken ?? ""; - - UserInfo = new SteamUserInfo - { - SteamId = callback.ClientSteamID.ToString(), - Username = accountName - }; - - // Send login success event - NotifyEvent(new ServerSentEvent("login-success", new - { - steamId = callback.ClientSteamID.ToString(), - username = accountName - })); - - // Save credentials if callback is provided - if (_onCredentialsObtained != null && !string.IsNullOrEmpty(refreshToken)) - { - _onCredentialsObtained(accountName, refreshToken); - } - } - - private void OnLoggedOff(SteamUser.LoggedOffCallback callback) - { - Console.WriteLine($"[{_clientId}] Logged off of Steam: {callback.Result}"); - - _isAuthenticated = false; - UserInfo = null; - - //Unnecessary but just in case the frontend wants to listen to this - NotifyEvent(new ServerSentEvent("logged-off", new - { - reason = callback.Result.ToString() - })); - } - - public Action Subscribe(Action callback) - { - OnEvent += callback; - - // If we already have a QR code URL, send it immediately - if (_authSession != null) - { - callback(new ServerSentEvent("url", _authSession.ChallengeURL)); - } - - return () => OnEvent -= callback; - } - - // Keep the old Subscribe method for backward compatibility - public Action Subscribe(Action callback) - { - lock (_subscribers) - { - _subscribers.Add(callback); - - // If we already have a QR code URL, send it immediately - if (_authSession != null) - { - callback(_authSession.ChallengeURL); - } - } - - return () => - { - lock (_subscribers) - { - _subscribers.Remove(callback); - } - }; - } - - private void NotifySubscribers(string url) - { - lock (_subscribers) - { - foreach (var subscriber in _subscribers) - { - try - { - subscriber(url); - } - catch (Exception ex) - { - Console.WriteLine($"[{_clientId}] Error notifying subscriber: {ex.Message}"); - } - } - } - } - - public void Shutdown() - { - _cts?.Cancel(); - _steamClient.Disconnect(); - } -} - -public class SteamUserInfo -{ - public string SteamId { get; set; } = string.Empty; - public string Username { get; set; } = string.Empty; -} \ No newline at end of file diff --git a/packages/steam/SteamService.cs b/packages/steam/SteamService.cs deleted file mode 100644 index 372bb8d3..00000000 --- a/packages/steam/SteamService.cs +++ /dev/null @@ -1,156 +0,0 @@ -using SteamKit2; -using SteamKit2.Authentication; -using Microsoft.EntityFrameworkCore; -using System.Collections.Concurrent; - -// Steam Service -public class SteamService -{ - private readonly ConcurrentDictionary _clientHandlers = new(); - - private readonly IServiceProvider _serviceProvider; - - public SteamService(IServiceProvider serviceProvider) - { - _serviceProvider = serviceProvider; - } - - public Action SubscribeToEvents(string clientId, Action callback) - { - if (_clientHandlers.TryGetValue(clientId, out var handler)) - { - return handler.Subscribe(callback); - } - - return () => { }; // Empty unsubscribe function - } - public async Task StartAuthentication(string teamId, string userId) - { - var clientId = $"{teamId}:{userId}"; - - // Check if we already have stored credentials - using var scope = _serviceProvider.CreateScope(); - var dbContext = scope.ServiceProvider.GetRequiredService(); - var storedCredential = await dbContext.SteamUserCredentials - .FirstOrDefaultAsync(c => c.TeamId == teamId && c.UserId == userId); - - var handler = _clientHandlers.GetOrAdd(clientId, id => new SteamClientHandler(id, - async (accountName, refreshToken) => await SaveCredentials(teamId, userId, accountName, refreshToken))); - - if (storedCredential != null) - { - // We have stored credentials, try to use them - var success = await handler.LoginWithStoredCredentialsAsync(storedCredential.AccountName, storedCredential.RefreshToken); - - // If login failed, start fresh authentication - if (!success) - { - await handler.StartAuthenticationAsync(); - } - return; - } - - // No stored credentials, start fresh authentication - await handler.StartAuthenticationAsync(); - } - - private async Task SaveCredentials(string teamId, string userId, string accountName, string refreshToken) - { - try - { - using var scope = _serviceProvider.CreateScope(); - var dbContext = scope.ServiceProvider.GetRequiredService(); - - var existingCredential = await dbContext.SteamUserCredentials - .FirstOrDefaultAsync(c => c.TeamId == teamId && c.UserId == userId); - - if (existingCredential != null) - { - // Update existing record - existingCredential.AccountName = accountName; - existingCredential.RefreshToken = refreshToken; - existingCredential.UpdatedAt = DateTime.UtcNow; - } - else - { - // Create new record - dbContext.SteamUserCredentials.Add(new SteamUserCredential - { - TeamId = teamId, - UserId = userId, - AccountName = accountName, - RefreshToken = refreshToken - }); - } - - await dbContext.SaveChangesAsync(); - Console.WriteLine($"Saved Steam credentials for {teamId}:{userId}"); - } - catch (Exception ex) - { - Console.WriteLine($"Error saving credentials: {ex.Message}"); - } - } - - public async Task GetUserInfoFromStoredCredentials(string teamId, string userId) - { - var clientId = $"{teamId}:{userId}"; - - // Check if we have an active session - if (_clientHandlers.TryGetValue(clientId, out var activeHandler) && activeHandler.UserInfo != null) - { - return activeHandler.UserInfo; - } - - // Try to get stored credentials - using var scope = _serviceProvider.CreateScope(); - var dbContext = scope.ServiceProvider.GetRequiredService(); - var storedCredential = await dbContext.SteamUserCredentials - .FirstOrDefaultAsync(c => c.TeamId == teamId && c.UserId == userId); - - if (storedCredential == null) - { - return null; // No stored credentials - } - - // Create a new handler and try to log in - var handler = new SteamClientHandler(clientId); - var success = await handler.LoginWithStoredCredentialsAsync( - storedCredential.AccountName, - storedCredential.RefreshToken); - - if (success) - { - _clientHandlers.TryAdd(clientId, handler); - return handler.UserInfo; - } - - // Login failed, credentials might be invalid - return null; - } - - public Action Subscribe(string clientId, Action callback) - { - if (_clientHandlers.TryGetValue(clientId, out var handler)) - { - return handler.Subscribe(callback); - } - - return () => { }; // Empty unsubscribe function - } - - public void Unsubscribe(string clientId, Action unsubscribeAction) - { - unsubscribeAction(); - } - - public SteamUserInfo? GetUserInfo(string clientId) - { - if (_clientHandlers.TryGetValue(clientId, out var handler)) - { - return handler.UserInfo; - } - - return null; - } -} \ No newline at end of file diff --git a/packages/steam/appsettings.Development.json b/packages/steam/appsettings.Development.json index 0c208ae9..2e95688b 100644 --- a/packages/steam/appsettings.Development.json +++ b/packages/steam/appsettings.Development.json @@ -2,7 +2,8 @@ "Logging": { "LogLevel": { "Default": "Information", - "Microsoft.AspNetCore": "Warning" + "Microsoft.AspNetCore": "Warning", + "Microsoft.EntityFrameworkCore.Database.Command": "Warning" } } } diff --git a/packages/steam/index.ts b/packages/steam/index.ts new file mode 100644 index 00000000..b76bc91d --- /dev/null +++ b/packages/steam/index.ts @@ -0,0 +1,347 @@ +// steam-auth-client.ts +import { request as httpRequest } from 'node:http'; +import { connect as netConnect } from 'node:net'; +import { Socket } from 'node:net'; + +/** + * Event types emitted by the SteamAuthClient + */ +export enum SteamAuthEvent { + CHALLENGE_URL = 'challenge_url', + STATUS_UPDATE = 'status_update', + CREDENTIALS = 'credentials', + LOGIN_SUCCESS = 'login_success', + LOGIN_ERROR = 'login_error', + ERROR = 'error' +} + +/** + * Interface for Steam credentials + */ +export interface SteamCredentials { + username: string; + refreshToken: string; +} + +/** + * Options for SteamAuthClient constructor + */ +export interface SteamAuthClientOptions { + socketPath?: string; +} + +/** + * SteamAuthClient provides methods to authenticate with Steam + * through a C# service over Unix sockets. + */ +export class SteamAuthClient { + private socketPath: string; + private activeSocket: Socket | null = null; + private eventListeners: Map = new Map(); + + /** + * Creates a new Steam authentication client + * + * @param options Configuration options + */ + constructor(options: SteamAuthClientOptions = {}) { + this.socketPath = options.socketPath || '/tmp/steam.sock'; + } + + /** + * Checks if the Steam service is healthy + * + * @returns Promise resolving to true if service is healthy + */ + async checkHealth(): Promise { + try { + await this.makeRequest({ method: 'GET', path: '/' }); + return true; + } catch (error) { + return false; + } + } + + /** + * Starts the QR code login flow + * + * @returns Promise that resolves when login completes (success or failure) + */ + startQRLogin(): Promise { + return new Promise((resolve) => { + // Create Socket connection for SSE + this.activeSocket = netConnect({ path: this.socketPath }); + + // Build the HTTP request manually for SSE + const request = + 'GET /api/steam/login HTTP/1.1\r\n' + + 'Host: localhost\r\n' + + 'Accept: text/event-stream\r\n' + + 'Cache-Control: no-cache\r\n' + + 'Connection: keep-alive\r\n\r\n'; + + this.activeSocket.on('connect', () => { + this.activeSocket?.write(request); + }); + + this.activeSocket.on('error', (error) => { + this.emit(SteamAuthEvent.ERROR, { error: error.message }); + resolve(); + }); + + // Simple parser for SSE events over raw socket + let buffer = ''; + let eventType = ''; + let eventData = ''; + + this.activeSocket.on('data', (data) => { + const chunk = data.toString(); + buffer += chunk; + + // Skip HTTP headers if present + if (buffer.includes('\r\n\r\n')) { + const headerEnd = buffer.indexOf('\r\n\r\n'); + buffer = buffer.substring(headerEnd + 4); + } + + // Process each complete event + const lines = buffer.split('\n'); + buffer = lines.pop() || ''; // Keep the last incomplete line in buffer + + for (const line of lines) { + if (line.startsWith('event: ')) { + eventType = line.substring(7); + } else if (line.startsWith('data: ')) { + eventData = line.substring(6); + + // Complete event received + if (eventType && eventData) { + try { + const parsedData = JSON.parse(eventData); + + // Handle specific events + if (eventType === 'challenge_url') { + this.emit(SteamAuthEvent.CHALLENGE_URL, parsedData); + } else if (eventType === 'credentials') { + this.emit(SteamAuthEvent.CREDENTIALS, { + username: parsedData.username, + refreshToken: parsedData.refreshToken + }); + } else if (eventType === 'login-success') { + this.emit(SteamAuthEvent.LOGIN_SUCCESS, { steamId: parsedData.steamId }); + this.closeSocket(); + resolve(); + } else if (eventType === 'status') { + this.emit(SteamAuthEvent.STATUS_UPDATE, parsedData); + } else if (eventType === 'error' || eventType === 'login-unsuccessful') { + this.emit(SteamAuthEvent.LOGIN_ERROR, { + message: parsedData.message || parsedData.error + }); + this.closeSocket(); + resolve(); + } else { + // Emit any other events as is + this.emit(eventType, parsedData); + } + } catch (e) { + this.emit(SteamAuthEvent.ERROR, { + error: `Error parsing event data: ${e}` + }); + } + + // Reset for next event + eventType = ''; + eventData = ''; + } + } + } + }); + }); + } + + /** + * Logs in with existing credentials + * + * @param credentials Steam credentials + * @returns Promise resolving to login result + */ + async loginWithCredentials(credentials: SteamCredentials): Promise<{ + success: boolean, + steamId?: string, + errorMessage?: string + }> { + try { + const response = await this.makeRequest({ + method: 'POST', + path: '/api/steam/login-with-credentials', + body: credentials + }); + + if (response.success) { + return { + success: true, + steamId: response.steamId + }; + } else { + return { + success: false, + errorMessage: response.errorMessage || 'Unknown error' + }; + } + } catch (error: any) { + return { + success: false, + errorMessage: error.message + }; + } + } + + /** + * Gets user information using the provided credentials + * + * @param credentials Steam credentials + * @returns Promise resolving to user information + */ + async getUserInfo(credentials: SteamCredentials): Promise { + try { + return await this.makeRequest({ + method: 'GET', + path: '/api/steam/user', + headers: { + 'X-Steam-Username': credentials.username, + 'X-Steam-Token': credentials.refreshToken + } + }); + } catch (error: any) { + throw new Error(`Failed to fetch user info: ${error.message}`); + } + } + + /** + * Adds an event listener + * + * @param event Event name to listen for + * @param callback Function to call when event occurs + */ + on(event: string, callback: Function): void { + if (!this.eventListeners.has(event)) { + this.eventListeners.set(event, []); + } + this.eventListeners.get(event)?.push(callback); + } + + /** + * Removes an event listener + * + * @param event Event name + * @param callback Function to remove + */ + off(event: string, callback: Function): void { + if (!this.eventListeners.has(event)) { + return; + } + + const listeners = this.eventListeners.get(event); + if (listeners) { + const index = listeners.indexOf(callback); + if (index !== -1) { + listeners.splice(index, 1); + } + } + } + + /** + * Removes all event listeners + */ + removeAllListeners(): void { + this.eventListeners.clear(); + } + + /** + * Closes the active socket connection + */ + closeSocket(): void { + if (this.activeSocket) { + this.activeSocket.end(); + this.activeSocket = null; + } + } + + /** + * Cleans up resources + */ + destroy(): void { + this.closeSocket(); + this.removeAllListeners(); + } + + /** + * Internal method to emit events to listeners + * + * @param event Event name + * @param data Event data + */ + private emit(event: string, data: any): void { + const listeners = this.eventListeners.get(event); + if (listeners) { + for (const callback of listeners) { + callback(data); + } + } + } + + /** + * Makes HTTP requests over Unix socket + * + * @param options Request options + * @returns Promise resolving to response + */ + private makeRequest(options: { + method: string; + path: string; + headers?: Record; + body?: any; + }): Promise { + return new Promise((resolve, reject) => { + const req = httpRequest({ + socketPath: this.socketPath, + method: options.method, + path: options.path, + headers: { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + ...options.headers + } + }, (res) => { + let data = ''; + res.on('data', (chunk) => { + data += chunk; + }); + res.on('end', () => { + if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) { + try { + if (data && data.length > 0) { + resolve(JSON.parse(data)); + } else { + resolve(null); + } + } catch (e) { + resolve(data); // Return raw data if not JSON + } + } else { + reject(new Error(`Request failed with status ${res.statusCode}: ${data}`)); + } + }); + }); + + req.on('error', (error) => { + reject(error); + }); + + if (options.body) { + req.write(JSON.stringify(options.body)); + } + req.end(); + }); + } +} \ No newline at end of file diff --git a/packages/steam/package.json b/packages/steam/package.json new file mode 100644 index 00000000..97d7fa86 --- /dev/null +++ b/packages/steam/package.json @@ -0,0 +1,26 @@ +{ + "name": "steam", + "module": "index.ts", + "type": "module", + "private": true, + "scripts": { + "dev": "dotnet watch run", + "client": "bun index", + "client:node": "ts-node index", + "build": "dotnet build", + "db:migrate": "dotnet ef migrations add" + }, + "devDependencies": { + "@types/bun": "latest", + "ts-node": "^10.9.2" + }, + "peerDependencies": { + "typescript": "^5" + }, + "dependencies": { + "eventsource": "^3.0.6", + "qrcode": "^1.5.4", + "qrcode-terminal": "^0.12.0", + "ws": "^8.18.1" + } +} \ No newline at end of file diff --git a/packages/steam/sst-env.d.ts b/packages/steam/sst-env.d.ts new file mode 100644 index 00000000..b6a7e906 --- /dev/null +++ b/packages/steam/sst-env.d.ts @@ -0,0 +1,9 @@ +/* This file is auto-generated by SST. Do not edit. */ +/* tslint:disable */ +/* eslint-disable */ +/* deno-fmt-ignore-file */ + +/// + +import "sst" +export {} \ No newline at end of file diff --git a/packages/steam/steam.csproj b/packages/steam/steam.csproj index fdd63b81..afb451f6 100644 --- a/packages/steam/steam.csproj +++ b/packages/steam/steam.csproj @@ -7,13 +7,14 @@ - + runtime; build; native; contentfiles; analyzers; buildtransitive all + diff --git a/packages/steam/steam.http b/packages/steam/steam.http new file mode 100644 index 00000000..8b33940c --- /dev/null +++ b/packages/steam/steam.http @@ -0,0 +1,6 @@ +@steam_HostAddress = http://localhost:5221 + +GET {{steam_HostAddress}}/weatherforecast/ +Accept: application/json + +### diff --git a/packages/steam/terminal.ts b/packages/steam/terminal.ts new file mode 100644 index 00000000..84784bc6 --- /dev/null +++ b/packages/steam/terminal.ts @@ -0,0 +1,301 @@ +import { Agent, request as httpRequest } from 'node:http'; +import { connect as netConnect } from 'node:net'; +import { readFileSync, writeFileSync, existsSync } from 'node:fs'; +import { join } from 'node:path'; +import qrcode from 'qrcode-terminal'; +import { createInterface } from 'node:readline'; + +// Socket path matching the one in your C# code +const SOCKET_PATH = '/tmp/steam.sock'; +const CREDENTIALS_PATH = join(process.cwd(), 'steam-credentials.json'); + +// Create readline interface for user input +const rl = createInterface({ + input: process.stdin, + output: process.stdout +}); + +// Function to prompt user for input +const question = (query: string): Promise => { + return new Promise(resolve => rl.question(query, resolve)); +}; + +// Function to make HTTP requests over Unix socket +function makeRequest(options: { + method: string; + path: string; + headers?: Record; + body?: any; +}): Promise { + return new Promise((resolve, reject) => { + const req = httpRequest({ + socketPath: SOCKET_PATH, + method: options.method, + path: options.path, + headers: { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + ...options.headers + } + }, (res) => { + let data = ''; + res.on('data', (chunk) => { + data += chunk; + }); + res.on('end', () => { + if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) { + try { + if (data && data.length > 0) { + resolve(JSON.parse(data)); + } else { + resolve(null); + } + } catch (e) { + resolve(data); // Return raw data if not JSON + } + } else { + reject(new Error(`Request failed with status ${res.statusCode}: ${data}`)); + } + }); + }); + + req.on('error', (error) => { + reject(error); + }); + + if (options.body) { + req.write(JSON.stringify(options.body)); + } + req.end(); + }); +} + +// Check if credentials file exists +const credentialsExist = (): boolean => { + return existsSync(CREDENTIALS_PATH); +}; + +// Load saved credentials +const loadCredentials = (): { username: string, refreshToken: string } => { + try { + const data = readFileSync(CREDENTIALS_PATH, 'utf8'); + return JSON.parse(data); + } catch (error) { + console.error('Error loading credentials:', error); + return { username: '', refreshToken: '' }; + } +}; + +// Save credentials to file +const saveCredentials = (credentials: { username: string, refreshToken: string }): void => { + try { + writeFileSync(CREDENTIALS_PATH, JSON.stringify(credentials, null, 2)); + console.log('💾 Credentials saved to', CREDENTIALS_PATH); + } catch (error) { + console.error('Error saving credentials:', error); + } +}; + +// Test health check endpoint +async function testHealthCheck(): Promise { + console.log('\n🔍 Testing health check endpoint...'); + try { + const response = await makeRequest({ method: 'GET', path: '/' }); + console.log('✅ Health check successful:', response); + return true; + } catch (error: any) { + console.error('❌ Health check failed:', error.message); + return false; + } +} + +// Test QR code login endpoint (SSE) +async function loginWithQrCode(): Promise<{ username: string, refreshToken: string } | null> { + console.log('\n🔍 Starting QR code login...'); + + return new Promise<{ username: string, refreshToken: string } | null>((resolve) => { + // Create Socket connection for SSE + const socket = netConnect({ path: SOCKET_PATH }); + + // Build the HTTP request manually for SSE + const request = + 'GET /api/steam/login HTTP/1.1\r\n' + + 'Host: localhost\r\n' + + 'Accept: text/event-stream\r\n' + + 'Cache-Control: no-cache\r\n' + + 'Connection: keep-alive\r\n\r\n'; + + socket.on('connect', () => { + console.log('📡 Connected to socket, sending SSE request...'); + socket.write(request); + }); + + socket.on('error', (error) => { + console.error('❌ Socket error:', error.message); + resolve(null); + }); + + // Simple parser for SSE events over raw socket + let buffer = ''; + let eventType = ''; + let eventData = ''; + let credentials: { username: string, refreshToken: string } | null = null; + + socket.on('data', (data) => { + const chunk = data.toString(); + buffer += chunk; + + // Skip HTTP headers if present + if (buffer.includes('\r\n\r\n')) { + const headerEnd = buffer.indexOf('\r\n\r\n'); + buffer = buffer.substring(headerEnd + 4); + } + + // Process each complete event + const lines = buffer.split('\n'); + buffer = lines.pop() || ''; // Keep the last incomplete line in buffer + + for (const line of lines) { + if (line.startsWith('event: ')) { + eventType = line.substring(7); + } else if (line.startsWith('data: ')) { + eventData = line.substring(6); + + // Complete event received + if (eventType && eventData) { + try { + const parsedData = JSON.parse(eventData); + console.log(`📬 Received event [${eventType}]`); + + // Handle specific events + if (eventType === 'challenge_url') { + console.log('⚠️ Please scan this QR code with the Steam mobile app to authenticate:'); + qrcode.generate(parsedData.url, { small: true }); + } else if (eventType === 'credentials') { + console.log('🔑 Received credentials!'); + credentials = { + username: parsedData.username, + refreshToken: parsedData.refreshToken + }; + }else if (eventType === 'status') { + console.log(`\n🔄 Status: ${parsedData.message}\n`); + } else if (eventType === 'login-success' || eventType === 'login-successful') { + console.log(`\n✅ Login successful, Steam ID: ${parsedData.steamId}\n`); + socket.end(); + if (credentials) { + saveCredentials(credentials); + } + resolve(credentials); + } else if (eventType === 'error' || eventType === 'login-unsuccessful') { + console.error('❌ Login failed:', parsedData.message || parsedData.error); + socket.end(); + resolve(null); + } + } catch (e) { + console.error('❌ Error parsing event data:', e); + } + + // Reset for next event + eventType = ''; + eventData = ''; + } + } + } + }); + }); +} + +// Login with existing credentials +async function loginWithCredentials(credentials: { username: string, refreshToken: string }): Promise { + console.log('\n🔍 Logging in with saved credentials...'); + try { + const response = await makeRequest({ + method: 'POST', + path: '/api/steam/login-with-credentials', + body: credentials + }); + + if (response.success) { + console.log('✅ Login successful, Steam ID:', response.steamId); + return true; + } else { + console.error('❌ Login failed:', response.errorMessage); + return false; + } + } catch (error: any) { + console.error('❌ Login request failed:', error.message); + return false; + } +} + +// Get user info +async function getUserInfo(credentials: { username: string, refreshToken: string }): Promise { + console.log('\n🔍 Fetching user info...'); + try { + const response = await makeRequest({ + method: 'GET', + path: '/api/steam/user', + headers: { + 'X-Steam-Username': credentials.username, + 'X-Steam-Token': credentials.refreshToken + } + }); + return response; + } catch (error: any) { + console.error('❌ Failed to fetch user info:', error.message); + return null; + } +} + +// Main function +async function main() { + // Check health first + const isHealthy = await testHealthCheck(); + if (!isHealthy) { + console.error('❌ Service appears to be down. Exiting...'); + rl.close(); + return; + } + + let credentials: { username: string, refreshToken: string } | null = null; + + // Check if we have saved credentials + if (credentialsExist()) { + const useExisting = await question('🔑 Found saved credentials. Use them? (y/n): '); + if (useExisting.toLowerCase() === 'y') { + credentials = loadCredentials(); + const success = await loginWithCredentials(credentials); + if (!success) { + console.log('⚠️ Saved credentials failed. Let\'s try QR login instead.'); + credentials = await loginWithQrCode(); + } + } else { + credentials = await loginWithQrCode(); + } + } else { + console.log('🔑 No saved credentials found. Starting QR login...'); + credentials = await loginWithQrCode(); + } + + // If we have valid credentials, offer to fetch user info + if (credentials) { + const getInfo = await question('📋 Fetch user info? (y/n): '); + if (getInfo.toLowerCase() === 'y') { + const userInfo = await getUserInfo(credentials); + if (userInfo) { + console.log('\n👤 User Information:'); + console.log(JSON.stringify(userInfo, null, 2)); + } + } + } else { + console.log('❌ Failed to obtain valid credentials.'); + } + + rl.close(); +} + +// Start the program +main().catch(error => { + console.error('Unhandled error:', error); + rl.close(); +}); \ No newline at end of file diff --git a/packages/steam/tsconfig.json b/packages/steam/tsconfig.json new file mode 100644 index 00000000..238655f2 --- /dev/null +++ b/packages/steam/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + // Enable latest features + "lib": ["ESNext", "DOM"], + "target": "ESNext", + "module": "ESNext", + "moduleDetection": "force", + "jsx": "react-jsx", + "allowJs": true, + + // Bundler mode + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "noEmit": true, + + // Best practices + "strict": true, + "skipLibCheck": true, + "noFallthroughCasesInSwitch": true, + + // Some stricter flags (disabled by default) + "noUnusedLocals": false, + "noUnusedParameters": false, + "noPropertyAccessFromIndexSignature": false + } +} diff --git a/packages/www/package.json b/packages/www/package.json index 5c16f275..3696330f 100644 --- a/packages/www/package.json +++ b/packages/www/package.json @@ -39,6 +39,7 @@ "focus-trap": "^7.6.4", "hono": "^4.7.4", "modern-normalize": "^3.0.1", + "motion": "^12.6.2", "qrcode": "^1.5.4", "solid-js": "^1.9.5", "valibot": "^1.0.0-rc.3", diff --git a/packages/www/src/assets/portal/play_button_disabled_bg.png b/packages/www/src/assets/portal/play_button_disabled_bg.png new file mode 100644 index 00000000..12c9c223 Binary files /dev/null and b/packages/www/src/assets/portal/play_button_disabled_bg.png differ diff --git a/packages/www/src/assets/portal/play_button_focused_bg.png b/packages/www/src/assets/portal/play_button_focused_bg.png new file mode 100644 index 00000000..a7ab98cd Binary files /dev/null and b/packages/www/src/assets/portal/play_button_focused_bg.png differ diff --git a/packages/www/src/assets/portal/play_button_idle.json b/packages/www/src/assets/portal/play_button_idle.json new file mode 100644 index 00000000..a1e5cd9d --- /dev/null +++ b/packages/www/src/assets/portal/play_button_idle.json @@ -0,0 +1,2316 @@ +{"frames": [ + +{ + "filename": "loop_190910_00000.png", + "frame": {"x":1,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00001.png", + "frame": {"x":1,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00002.png", + "frame": {"x":1,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00003.png", + "frame": {"x":1,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00004.png", + "frame": {"x":1,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00005.png", + "frame": {"x":1,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00006.png", + "frame": {"x":1,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00007.png", + "frame": {"x":1,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00008.png", + "frame": {"x":1,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00009.png", + "frame": {"x":1,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00010.png", + "frame": {"x":1,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00011.png", + "frame": {"x":1,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00012.png", + "frame": {"x":1,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00013.png", + "frame": {"x":1,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00014.png", + "frame": {"x":1,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00015.png", + "frame": {"x":1,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00016.png", + "frame": {"x":1,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00017.png", + "frame": {"x":1,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00018.png", + "frame": {"x":113,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00019.png", + "frame": {"x":113,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00020.png", + "frame": {"x":113,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00021.png", + "frame": {"x":113,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00022.png", + "frame": {"x":113,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00023.png", + "frame": {"x":113,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00024.png", + "frame": {"x":113,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00025.png", + "frame": {"x":113,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00026.png", + "frame": {"x":113,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00027.png", + "frame": {"x":113,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00028.png", + "frame": {"x":113,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00029.png", + "frame": {"x":113,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00030.png", + "frame": {"x":113,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00031.png", + "frame": {"x":113,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00032.png", + "frame": {"x":113,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00033.png", + "frame": {"x":113,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00034.png", + "frame": {"x":113,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00035.png", + "frame": {"x":113,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00036.png", + "frame": {"x":225,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00037.png", + "frame": {"x":225,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00038.png", + "frame": {"x":225,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00039.png", + "frame": {"x":225,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00040.png", + "frame": {"x":225,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00041.png", + "frame": {"x":225,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00042.png", + "frame": {"x":225,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00043.png", + "frame": {"x":225,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00044.png", + "frame": {"x":225,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00045.png", + "frame": {"x":225,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00046.png", + "frame": {"x":225,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00047.png", + "frame": {"x":225,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00048.png", + "frame": {"x":225,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00049.png", + "frame": {"x":225,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00050.png", + "frame": {"x":225,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00051.png", + "frame": {"x":225,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00052.png", + "frame": {"x":225,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00053.png", + "frame": {"x":225,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00054.png", + "frame": {"x":337,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00055.png", + "frame": {"x":337,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00056.png", + "frame": {"x":337,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00057.png", + "frame": {"x":337,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00058.png", + "frame": {"x":337,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00059.png", + "frame": {"x":337,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00060.png", + "frame": {"x":337,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00061.png", + "frame": {"x":337,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00062.png", + "frame": {"x":337,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00063.png", + "frame": {"x":337,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00064.png", + "frame": {"x":337,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00065.png", + "frame": {"x":337,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00066.png", + "frame": {"x":337,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00067.png", + "frame": {"x":337,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00068.png", + "frame": {"x":337,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00069.png", + "frame": {"x":337,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00070.png", + "frame": {"x":337,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00071.png", + "frame": {"x":337,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00072.png", + "frame": {"x":449,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00073.png", + "frame": {"x":449,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00074.png", + "frame": {"x":449,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00075.png", + "frame": {"x":449,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00076.png", + "frame": {"x":449,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00077.png", + "frame": {"x":449,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00078.png", + "frame": {"x":449,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00079.png", + "frame": {"x":449,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00080.png", + "frame": {"x":449,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00081.png", + "frame": {"x":449,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00082.png", + "frame": {"x":449,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00083.png", + "frame": {"x":449,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00084.png", + "frame": {"x":449,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00085.png", + "frame": {"x":449,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00086.png", + "frame": {"x":449,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00087.png", + "frame": {"x":449,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00088.png", + "frame": {"x":449,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00089.png", + "frame": {"x":449,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00090.png", + "frame": {"x":561,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00091.png", + "frame": {"x":561,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00092.png", + "frame": {"x":561,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00093.png", + "frame": {"x":561,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00094.png", + "frame": {"x":561,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00095.png", + "frame": {"x":561,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00096.png", + "frame": {"x":561,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00097.png", + "frame": {"x":561,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00098.png", + "frame": {"x":561,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00099.png", + "frame": {"x":561,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00100.png", + "frame": {"x":561,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00101.png", + "frame": {"x":561,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00102.png", + "frame": {"x":561,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00103.png", + "frame": {"x":561,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00104.png", + "frame": {"x":561,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00105.png", + "frame": {"x":561,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00106.png", + "frame": {"x":561,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00107.png", + "frame": {"x":561,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00108.png", + "frame": {"x":673,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00109.png", + "frame": {"x":673,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00110.png", + "frame": {"x":673,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00111.png", + "frame": {"x":673,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00112.png", + "frame": {"x":673,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00113.png", + "frame": {"x":673,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00114.png", + "frame": {"x":673,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00115.png", + "frame": {"x":673,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00116.png", + "frame": {"x":673,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00117.png", + "frame": {"x":673,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00118.png", + "frame": {"x":673,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00119.png", + "frame": {"x":673,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00120.png", + "frame": {"x":673,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00121.png", + "frame": {"x":673,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00122.png", + "frame": {"x":673,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00123.png", + "frame": {"x":673,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00124.png", + "frame": {"x":673,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00125.png", + "frame": {"x":673,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00126.png", + "frame": {"x":785,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00127.png", + "frame": {"x":785,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00128.png", + "frame": {"x":785,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00129.png", + "frame": {"x":785,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00130.png", + "frame": {"x":785,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00131.png", + "frame": {"x":785,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00132.png", + "frame": {"x":785,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00133.png", + "frame": {"x":785,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00134.png", + "frame": {"x":785,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00135.png", + "frame": {"x":785,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00136.png", + "frame": {"x":785,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00137.png", + "frame": {"x":785,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00138.png", + "frame": {"x":785,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00139.png", + "frame": {"x":785,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00140.png", + "frame": {"x":785,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00141.png", + "frame": {"x":785,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00142.png", + "frame": {"x":785,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00143.png", + "frame": {"x":785,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00144.png", + "frame": {"x":897,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00145.png", + "frame": {"x":897,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00146.png", + "frame": {"x":897,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00147.png", + "frame": {"x":897,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00148.png", + "frame": {"x":897,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00149.png", + "frame": {"x":897,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00150.png", + "frame": {"x":897,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00151.png", + "frame": {"x":897,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00152.png", + "frame": {"x":897,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00153.png", + "frame": {"x":897,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00154.png", + "frame": {"x":897,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00155.png", + "frame": {"x":897,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00156.png", + "frame": {"x":897,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00157.png", + "frame": {"x":897,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00158.png", + "frame": {"x":897,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00159.png", + "frame": {"x":897,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00160.png", + "frame": {"x":897,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00161.png", + "frame": {"x":897,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00162.png", + "frame": {"x":1009,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00163.png", + "frame": {"x":1009,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00164.png", + "frame": {"x":1009,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00165.png", + "frame": {"x":1009,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00166.png", + "frame": {"x":1009,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00167.png", + "frame": {"x":1009,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00168.png", + "frame": {"x":1009,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00169.png", + "frame": {"x":1009,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00170.png", + "frame": {"x":1009,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00171.png", + "frame": {"x":1009,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00172.png", + "frame": {"x":1009,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00173.png", + "frame": {"x":1009,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00174.png", + "frame": {"x":1009,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00175.png", + "frame": {"x":1009,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00176.png", + "frame": {"x":1009,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00177.png", + "frame": {"x":1009,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00178.png", + "frame": {"x":1009,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00179.png", + "frame": {"x":1009,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00180.png", + "frame": {"x":1121,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00181.png", + "frame": {"x":1121,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00182.png", + "frame": {"x":1121,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00183.png", + "frame": {"x":1121,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00184.png", + "frame": {"x":1121,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00185.png", + "frame": {"x":1121,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00186.png", + "frame": {"x":1121,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00187.png", + "frame": {"x":1121,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00188.png", + "frame": {"x":1121,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00189.png", + "frame": {"x":1121,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00190.png", + "frame": {"x":1121,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00191.png", + "frame": {"x":1121,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00192.png", + "frame": {"x":1121,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00193.png", + "frame": {"x":1121,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00194.png", + "frame": {"x":1121,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00195.png", + "frame": {"x":1121,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00196.png", + "frame": {"x":1121,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00197.png", + "frame": {"x":1121,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00198.png", + "frame": {"x":1233,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00199.png", + "frame": {"x":1233,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00200.png", + "frame": {"x":1233,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00201.png", + "frame": {"x":1233,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00202.png", + "frame": {"x":1233,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00203.png", + "frame": {"x":1233,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00204.png", + "frame": {"x":1233,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00205.png", + "frame": {"x":1233,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00206.png", + "frame": {"x":1233,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00207.png", + "frame": {"x":1233,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00208.png", + "frame": {"x":1233,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00209.png", + "frame": {"x":1233,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00210.png", + "frame": {"x":1233,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00211.png", + "frame": {"x":1233,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00212.png", + "frame": {"x":1233,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00213.png", + "frame": {"x":1233,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00214.png", + "frame": {"x":1233,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00215.png", + "frame": {"x":1233,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00216.png", + "frame": {"x":1345,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00217.png", + "frame": {"x":1345,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00218.png", + "frame": {"x":1345,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00219.png", + "frame": {"x":1345,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00220.png", + "frame": {"x":1345,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00221.png", + "frame": {"x":1345,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00222.png", + "frame": {"x":1345,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00223.png", + "frame": {"x":1345,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00224.png", + "frame": {"x":1345,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00225.png", + "frame": {"x":1345,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00226.png", + "frame": {"x":1345,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00227.png", + "frame": {"x":1345,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00228.png", + "frame": {"x":1345,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00229.png", + "frame": {"x":1345,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00230.png", + "frame": {"x":1345,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00231.png", + "frame": {"x":1345,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00232.png", + "frame": {"x":1345,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00233.png", + "frame": {"x":1345,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00234.png", + "frame": {"x":1457,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00235.png", + "frame": {"x":1457,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00236.png", + "frame": {"x":1457,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00237.png", + "frame": {"x":1457,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00238.png", + "frame": {"x":1457,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00239.png", + "frame": {"x":1457,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00240.png", + "frame": {"x":1457,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00241.png", + "frame": {"x":1457,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00242.png", + "frame": {"x":1457,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00243.png", + "frame": {"x":1457,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00244.png", + "frame": {"x":1457,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00245.png", + "frame": {"x":1457,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00246.png", + "frame": {"x":1457,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00247.png", + "frame": {"x":1457,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00248.png", + "frame": {"x":1457,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00249.png", + "frame": {"x":1457,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00250.png", + "frame": {"x":1457,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00251.png", + "frame": {"x":1457,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00252.png", + "frame": {"x":1569,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00253.png", + "frame": {"x":1569,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00254.png", + "frame": {"x":1569,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00255.png", + "frame": {"x":1569,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_button_idle.png", + "format": "RGBA8888", + "size": {"w":1680,"h":2016}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:7307a3ed9f2d674f0bb451b8c2deb928:2f6906784f6b142907d3c0e88e6079f1:3754ddcffd572189fcc53b8e2da7f26e$" +} +} diff --git a/packages/www/src/assets/portal/play_button_idle.png b/packages/www/src/assets/portal/play_button_idle.png new file mode 100644 index 00000000..3b95b0eb Binary files /dev/null and b/packages/www/src/assets/portal/play_button_idle.png differ diff --git a/packages/www/src/assets/portal/play_button_intro.json b/packages/www/src/assets/portal/play_button_intro.json new file mode 100644 index 00000000..c3ffa363 --- /dev/null +++ b/packages/www/src/assets/portal/play_button_intro.json @@ -0,0 +1,588 @@ +{"frames": [ + +{ + "filename": "intro_00000.png", + "frame": {"x":1,"y":1,"w":3,"h":3}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":0,"y":0,"w":3,"h":3}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00001.png", + "frame": {"x":911,"y":364,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00002.png", + "frame": {"x":1063,"y":367,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00003.png", + "frame": {"x":1215,"y":372,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00004.png", + "frame": {"x":1367,"y":374,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00005.png", + "frame": {"x":1519,"y":375,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00006.png", + "frame": {"x":1671,"y":379,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00007.png", + "frame": {"x":1823,"y":381,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00008.png", + "frame": {"x":759,"y":362,"w":150,"h":149}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":149}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00009.png", + "frame": {"x":456,"y":355,"w":148,"h":149}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":2,"y":0,"w":148,"h":149}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00010.png", + "frame": {"x":607,"y":360,"w":148,"h":150}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":2,"y":0,"w":148,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00011.png", + "frame": {"x":1,"y":349,"w":147,"h":150}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":3,"y":0,"w":147,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00012.png", + "frame": {"x":153,"y":351,"w":147,"h":150}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":3,"y":0,"w":147,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00013.png", + "frame": {"x":305,"y":353,"w":147,"h":149}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":2,"y":1,"w":147,"h":149}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00014.png", + "frame": {"x":1867,"y":235,"w":144,"h":148}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":4,"y":2,"w":144,"h":148}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00015.png", + "frame": {"x":1719,"y":235,"w":142,"h":146}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":5,"y":3,"w":142,"h":146}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00016.png", + "frame": {"x":1574,"y":233,"w":140,"h":143}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":6,"y":4,"w":140,"h":143}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00017.png", + "frame": {"x":1432,"y":233,"w":139,"h":140}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":6,"y":6,"w":139,"h":140}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00018.png", + "frame": {"x":1292,"y":233,"w":138,"h":137}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":6,"y":7,"w":138,"h":137}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00019.png", + "frame": {"x":1154,"y":231,"w":136,"h":134}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":7,"y":9,"w":136,"h":134}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00020.png", + "frame": {"x":1018,"y":229,"w":134,"h":133}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":8,"y":9,"w":134,"h":133}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00021.png", + "frame": {"x":885,"y":229,"w":131,"h":131}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":9,"y":10,"w":131,"h":131}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00022.png", + "frame": {"x":754,"y":229,"w":129,"h":129}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":10,"y":11,"w":129,"h":129}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00023.png", + "frame": {"x":624,"y":229,"w":128,"h":127}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":11,"y":12,"w":128,"h":127}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00024.png", + "frame": {"x":496,"y":227,"w":126,"h":126}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":12,"y":12,"w":126,"h":126}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00025.png", + "frame": {"x":370,"y":227,"w":124,"h":124}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":13,"y":13,"w":124,"h":124}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00026.png", + "frame": {"x":246,"y":227,"w":122,"h":122}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":14,"y":14,"w":122,"h":122}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00027.png", + "frame": {"x":1,"y":227,"w":121,"h":120}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":14,"y":15,"w":121,"h":120}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00028.png", + "frame": {"x":124,"y":227,"w":120,"h":120}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":15,"y":15,"w":120,"h":120}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00029.png", + "frame": {"x":1855,"y":115,"w":118,"h":118}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":16,"y":16,"w":118,"h":118}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00030.png", + "frame": {"x":1735,"y":115,"w":117,"h":118}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":16,"y":16,"w":117,"h":118}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00031.png", + "frame": {"x":1381,"y":115,"w":116,"h":116}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":17,"y":17,"w":116,"h":116}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00032.png", + "frame": {"x":1499,"y":115,"w":116,"h":116}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":17,"y":17,"w":116,"h":116}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00033.png", + "frame": {"x":1617,"y":115,"w":116,"h":116}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":17,"y":17,"w":116,"h":116}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00034.png", + "frame": {"x":685,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00035.png", + "frame": {"x":801,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00036.png", + "frame": {"x":917,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00037.png", + "frame": {"x":1033,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00038.png", + "frame": {"x":1149,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00039.png", + "frame": {"x":1265,"y":115,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00040.png", + "frame": {"x":1350,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00041.png", + "frame": {"x":1464,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00042.png", + "frame": {"x":1578,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00043.png", + "frame": {"x":1692,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00044.png", + "frame": {"x":1806,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00045.png", + "frame": {"x":1920,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00046.png", + "frame": {"x":1,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00047.png", + "frame": {"x":115,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00048.png", + "frame": {"x":229,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00049.png", + "frame": {"x":343,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00050.png", + "frame": {"x":457,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00051.png", + "frame": {"x":571,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00052.png", + "frame": {"x":6,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00053.png", + "frame": {"x":118,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00054.png", + "frame": {"x":230,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00055.png", + "frame": {"x":342,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00056.png", + "frame": {"x":454,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00057.png", + "frame": {"x":566,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00058.png", + "frame": {"x":678,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00059.png", + "frame": {"x":790,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00060.png", + "frame": {"x":902,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00061.png", + "frame": {"x":1014,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00062.png", + "frame": {"x":1126,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00063.png", + "frame": {"x":1238,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_button_intro.png", + "format": "RGBA8888", + "size": {"w":2033,"h":532}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:c182f7ef1f119bbfd7cc0a11dba8aad6:0f1ccfe8fb1cdc864d87b7e8f6fb3197:356e3de40db0da0fa679697918a56687$" +} +} diff --git a/packages/www/src/assets/portal/play_button_intro.png b/packages/www/src/assets/portal/play_button_intro.png new file mode 100644 index 00000000..a4d57c84 Binary files /dev/null and b/packages/www/src/assets/portal/play_button_intro.png differ diff --git a/packages/www/src/assets/portal/play_icon_exit.json b/packages/www/src/assets/portal/play_icon_exit.json new file mode 100644 index 00000000..591a9e56 --- /dev/null +++ b/packages/www/src/assets/portal/play_icon_exit.json @@ -0,0 +1,237 @@ +{"frames": [ + +{ + "filename": "processing_outro_190822_00000.png", + "frame": {"x":82,"y":37,"w":25,"h":13}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":16,"w":25,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00001.png", + "frame": {"x":173,"y":1,"w":27,"h":11}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":16,"w":27,"h":11}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00002.png", + "frame": {"x":186,"y":1,"w":30,"h":15}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":50,"y":16,"w":30,"h":15}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00003.png", + "frame": {"x":122,"y":35,"w":32,"h":27}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":58,"y":16,"w":32,"h":27}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00004.png", + "frame": {"x":1,"y":1,"w":22,"h":37}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":72,"y":23,"w":22,"h":37}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00005.png", + "frame": {"x":25,"y":1,"w":17,"h":37}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":77,"y":40,"w":17,"h":37}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00006.png", + "frame": {"x":1,"y":40,"w":31,"h":21}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":59,"y":63,"w":31,"h":21}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00007.png", + "frame": {"x":34,"y":40,"w":29,"h":19}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":44,"y":65,"w":29,"h":19}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00008.png", + "frame": {"x":65,"y":37,"w":15,"h":25}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":41,"y":52,"w":15,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00009.png", + "frame": {"x":186,"y":18,"w":19,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":43,"y":47,"w":19,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00010.png", + "frame": {"x":186,"y":38,"w":18,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":47,"y":46,"w":18,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00011.png", + "frame": {"x":97,"y":37,"w":23,"h":24}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":45,"y":43,"w":23,"h":24}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00012.png", + "frame": {"x":156,"y":35,"w":27,"h":28}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":43,"y":41,"w":27,"h":28}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00013.png", + "frame": {"x":142,"y":1,"w":29,"h":32}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":39,"w":29,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00014.png", + "frame": {"x":110,"y":1,"w":30,"h":32}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":39,"w":30,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00015.png", + "frame": {"x":44,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00016.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00017.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00018.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00019.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00020.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00021.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00022.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00023.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00024.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_icon_exit.png", + "format": "RGBA8888", + "size": {"w":217,"h":63}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:c3c530fe6905479b4ca8719a9d079c2e:313834a760df7f23cb3a698e4cd74589:0d545ddd0574d55083449defb59d19dc$" +} +} diff --git a/packages/www/src/assets/portal/play_icon_exit.png b/packages/www/src/assets/portal/play_icon_exit.png new file mode 100644 index 00000000..610ce6b4 Binary files /dev/null and b/packages/www/src/assets/portal/play_icon_exit.png differ diff --git a/packages/www/src/assets/portal/play_icon_intro.json b/packages/www/src/assets/portal/play_icon_intro.json new file mode 100644 index 00000000..b20bac89 --- /dev/null +++ b/packages/www/src/assets/portal/play_icon_intro.json @@ -0,0 +1,237 @@ +{"frames": [ + +{ + "filename": "processing-intro_190822_00000.png", + "frame": {"x":1,"y":1,"w":35,"h":38}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":40,"y":36,"w":35,"h":38}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00001.png", + "frame": {"x":38,"y":1,"w":34,"h":38}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":40,"y":36,"w":34,"h":38}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00002.png", + "frame": {"x":74,"y":1,"w":29,"h":32}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":43,"y":39,"w":29,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00003.png", + "frame": {"x":1,"y":41,"w":22,"h":24}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":46,"y":43,"w":22,"h":24}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00004.png", + "frame": {"x":142,"y":43,"w":17,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":48,"y":46,"w":17,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00005.png", + "frame": {"x":161,"y":40,"w":14,"h":14}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":49,"y":45,"w":14,"h":14}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00006.png", + "frame": {"x":183,"y":1,"w":10,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":54,"y":42,"w":10,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00007.png", + "frame": {"x":183,"y":37,"w":9,"h":9}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":62,"y":38,"w":9,"h":9}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00008.png", + "frame": {"x":183,"y":25,"w":10,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":73,"y":38,"w":10,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00009.png", + "frame": {"x":180,"y":13,"w":10,"h":12}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":82,"y":46,"w":10,"h":12}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00010.png", + "frame": {"x":168,"y":1,"w":10,"h":13}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":84,"y":59,"w":10,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00011.png", + "frame": {"x":177,"y":48,"w":13,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":76,"y":72,"w":13,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00012.png", + "frame": {"x":139,"y":13,"w":17,"h":12}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":63,"y":80,"w":17,"h":12}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00013.png", + "frame": {"x":158,"y":13,"w":20,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":49,"y":84,"w":20,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00014.png", + "frame": {"x":160,"y":25,"w":21,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":81,"w":21,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00015.png", + "frame": {"x":114,"y":27,"w":21,"h":18}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":26,"y":73,"w":21,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00016.png", + "frame": {"x":94,"y":35,"w":18,"h":22}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":63,"w":18,"h":22}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00017.png", + "frame": {"x":123,"y":1,"w":14,"h":24}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":53,"w":14,"h":24}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00018.png", + "frame": {"x":139,"y":1,"w":10,"h":27}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":42,"w":10,"h":27}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00019.png", + "frame": {"x":114,"y":50,"w":13,"h":26}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":34,"w":13,"h":26}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00020.png", + "frame": {"x":75,"y":35,"w":17,"h":25}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":27,"w":17,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00021.png", + "frame": {"x":27,"y":41,"w":21,"h":22}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":21,"y":22,"w":21,"h":22}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00022.png", + "frame": {"x":50,"y":41,"w":23,"h":19}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":25,"y":19,"w":23,"h":19}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00023.png", + "frame": {"x":105,"y":1,"w":24,"h":16}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":30,"y":17,"w":24,"h":16}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00024.png", + "frame": {"x":134,"y":27,"w":24,"h":14}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":35,"y":16,"w":24,"h":14}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_icon_intro.png", + "format": "RGBA8888", + "size": {"w":194,"h":64}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:a423de98fed1e06cc62611996868a2db:909cd8dbde93c0d2fca4402e7546ffd8:5ea08d4d7caaa5043281f5095baffab1$" +} +} diff --git a/packages/www/src/assets/portal/play_icon_intro.png b/packages/www/src/assets/portal/play_icon_intro.png new file mode 100644 index 00000000..528503d9 Binary files /dev/null and b/packages/www/src/assets/portal/play_icon_intro.png differ diff --git a/packages/www/src/assets/portal/play_icon_loop.json b/packages/www/src/assets/portal/play_icon_loop.json new file mode 100644 index 00000000..bb8e0f41 --- /dev/null +++ b/packages/www/src/assets/portal/play_icon_loop.json @@ -0,0 +1,237 @@ +{"frames": [ + +{ + "filename": "processing-loop_190822_00000.png", + "frame": {"x":37,"y":97,"w":23,"h":11}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":40,"y":16,"w":23,"h":11}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00001.png", + "frame": {"x":37,"y":110,"w":23,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":46,"y":16,"w":23,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00002.png", + "frame": {"x":30,"y":257,"w":24,"h":12}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":51,"y":16,"w":24,"h":12}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00003.png", + "frame": {"x":34,"y":225,"w":25,"h":15}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":56,"y":16,"w":25,"h":15}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00004.png", + "frame": {"x":1,"y":252,"w":27,"h":20}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":61,"y":17,"w":27,"h":20}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00005.png", + "frame": {"x":35,"y":180,"w":24,"h":25}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":68,"y":19,"w":24,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00006.png", + "frame": {"x":39,"y":39,"w":21,"h":30}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":74,"y":24,"w":21,"h":30}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00007.png", + "frame": {"x":1,"y":120,"w":16,"h":34}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":80,"y":30,"w":16,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00008.png", + "frame": {"x":1,"y":58,"w":13,"h":36}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":83,"y":38,"w":13,"h":36}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00009.png", + "frame": {"x":41,"y":1,"w":19,"h":36}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":77,"y":47,"w":19,"h":36}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00010.png", + "frame": {"x":1,"y":151,"w":27,"h":33}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":68,"y":57,"w":27,"h":33}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00011.png", + "frame": {"x":1,"y":73,"w":34,"h":26}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":57,"y":68,"w":34,"h":26}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00012.png", + "frame": {"x":1,"y":1,"w":38,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":46,"y":76,"w":38,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00013.png", + "frame": {"x":1,"y":21,"w":38,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":81,"w":38,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00014.png", + "frame": {"x":1,"y":36,"w":36,"h":20}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":27,"y":74,"w":36,"h":20}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00015.png", + "frame": {"x":1,"y":197,"w":31,"h":27}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":21,"y":66,"w":31,"h":27}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00016.png", + "frame": {"x":1,"y":226,"w":24,"h":31}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":57,"w":24,"h":31}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00017.png", + "frame": {"x":1,"y":101,"w":17,"h":34}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":47,"w":17,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00018.png", + "frame": {"x":1,"y":138,"w":11,"h":34}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":39,"w":11,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00019.png", + "frame": {"x":1,"y":180,"w":15,"h":32}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":31,"w":15,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00020.png", + "frame": {"x":37,"y":149,"w":20,"h":29}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":25,"w":20,"h":29}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00021.png", + "frame": {"x":37,"y":122,"w":22,"h":25}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":21,"y":21,"w":22,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00022.png", + "frame": {"x":39,"y":71,"w":24,"h":21}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":25,"y":18,"w":24,"h":21}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00023.png", + "frame": {"x":34,"y":206,"w":25,"h":17}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":30,"y":16,"w":25,"h":17}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00024.png", + "frame": {"x":34,"y":242,"w":25,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":16,"w":25,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_icon_loop.png", + "format": "RGBA8888", + "size": {"w":61,"h":273}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:4d92719faa27cbc50926429a66fc808c:25af8a045fca3b76dba8d8d26ed4ccf7:9b86d3b10829102d2ccf1bd5942144f2$" +} +} diff --git a/packages/www/src/assets/portal/play_icon_loop.png b/packages/www/src/assets/portal/play_icon_loop.png new file mode 100644 index 00000000..27e55e94 Binary files /dev/null and b/packages/www/src/assets/portal/play_icon_loop.png differ diff --git a/packages/www/src/assets/portal/portal_background_placeholder.png b/packages/www/src/assets/portal/portal_background_placeholder.png new file mode 100644 index 00000000..31490490 Binary files /dev/null and b/packages/www/src/assets/portal/portal_background_placeholder.png differ diff --git a/packages/www/src/common/portal/assets/play_button_idle.json b/packages/www/src/common/portal/assets/play_button_idle.json new file mode 100644 index 00000000..a1e5cd9d --- /dev/null +++ b/packages/www/src/common/portal/assets/play_button_idle.json @@ -0,0 +1,2316 @@ +{"frames": [ + +{ + "filename": "loop_190910_00000.png", + "frame": {"x":1,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00001.png", + "frame": {"x":1,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00002.png", + "frame": {"x":1,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00003.png", + "frame": {"x":1,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00004.png", + "frame": {"x":1,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00005.png", + "frame": {"x":1,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00006.png", + "frame": {"x":1,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00007.png", + "frame": {"x":1,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00008.png", + "frame": {"x":1,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00009.png", + "frame": {"x":1,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00010.png", + "frame": {"x":1,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00011.png", + "frame": {"x":1,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00012.png", + "frame": {"x":1,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00013.png", + "frame": {"x":1,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00014.png", + "frame": {"x":1,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00015.png", + "frame": {"x":1,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00016.png", + "frame": {"x":1,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00017.png", + "frame": {"x":1,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00018.png", + "frame": {"x":113,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00019.png", + "frame": {"x":113,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00020.png", + "frame": {"x":113,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00021.png", + "frame": {"x":113,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00022.png", + "frame": {"x":113,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00023.png", + "frame": {"x":113,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00024.png", + "frame": {"x":113,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00025.png", + "frame": {"x":113,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00026.png", + "frame": {"x":113,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00027.png", + "frame": {"x":113,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00028.png", + "frame": {"x":113,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00029.png", + "frame": {"x":113,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00030.png", + "frame": {"x":113,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00031.png", + "frame": {"x":113,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00032.png", + "frame": {"x":113,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00033.png", + "frame": {"x":113,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00034.png", + "frame": {"x":113,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00035.png", + "frame": {"x":113,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00036.png", + "frame": {"x":225,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00037.png", + "frame": {"x":225,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00038.png", + "frame": {"x":225,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00039.png", + "frame": {"x":225,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00040.png", + "frame": {"x":225,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00041.png", + "frame": {"x":225,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00042.png", + "frame": {"x":225,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00043.png", + "frame": {"x":225,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00044.png", + "frame": {"x":225,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00045.png", + "frame": {"x":225,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00046.png", + "frame": {"x":225,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00047.png", + "frame": {"x":225,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00048.png", + "frame": {"x":225,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00049.png", + "frame": {"x":225,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00050.png", + "frame": {"x":225,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00051.png", + "frame": {"x":225,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00052.png", + "frame": {"x":225,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00053.png", + "frame": {"x":225,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00054.png", + "frame": {"x":337,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00055.png", + "frame": {"x":337,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00056.png", + "frame": {"x":337,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00057.png", + "frame": {"x":337,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00058.png", + "frame": {"x":337,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00059.png", + "frame": {"x":337,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00060.png", + "frame": {"x":337,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00061.png", + "frame": {"x":337,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00062.png", + "frame": {"x":337,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00063.png", + "frame": {"x":337,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00064.png", + "frame": {"x":337,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00065.png", + "frame": {"x":337,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00066.png", + "frame": {"x":337,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00067.png", + "frame": {"x":337,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00068.png", + "frame": {"x":337,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00069.png", + "frame": {"x":337,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00070.png", + "frame": {"x":337,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00071.png", + "frame": {"x":337,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00072.png", + "frame": {"x":449,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00073.png", + "frame": {"x":449,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00074.png", + "frame": {"x":449,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00075.png", + "frame": {"x":449,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00076.png", + "frame": {"x":449,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00077.png", + "frame": {"x":449,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00078.png", + "frame": {"x":449,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00079.png", + "frame": {"x":449,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00080.png", + "frame": {"x":449,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00081.png", + "frame": {"x":449,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00082.png", + "frame": {"x":449,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00083.png", + "frame": {"x":449,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00084.png", + "frame": {"x":449,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00085.png", + "frame": {"x":449,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00086.png", + "frame": {"x":449,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00087.png", + "frame": {"x":449,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00088.png", + "frame": {"x":449,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00089.png", + "frame": {"x":449,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00090.png", + "frame": {"x":561,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00091.png", + "frame": {"x":561,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00092.png", + "frame": {"x":561,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00093.png", + "frame": {"x":561,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00094.png", + "frame": {"x":561,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00095.png", + "frame": {"x":561,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00096.png", + "frame": {"x":561,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00097.png", + "frame": {"x":561,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00098.png", + "frame": {"x":561,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00099.png", + "frame": {"x":561,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00100.png", + "frame": {"x":561,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00101.png", + "frame": {"x":561,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00102.png", + "frame": {"x":561,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00103.png", + "frame": {"x":561,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00104.png", + "frame": {"x":561,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00105.png", + "frame": {"x":561,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00106.png", + "frame": {"x":561,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00107.png", + "frame": {"x":561,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00108.png", + "frame": {"x":673,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00109.png", + "frame": {"x":673,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00110.png", + "frame": {"x":673,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00111.png", + "frame": {"x":673,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00112.png", + "frame": {"x":673,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00113.png", + "frame": {"x":673,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00114.png", + "frame": {"x":673,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00115.png", + "frame": {"x":673,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00116.png", + "frame": {"x":673,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00117.png", + "frame": {"x":673,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00118.png", + "frame": {"x":673,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00119.png", + "frame": {"x":673,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00120.png", + "frame": {"x":673,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00121.png", + "frame": {"x":673,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00122.png", + "frame": {"x":673,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00123.png", + "frame": {"x":673,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00124.png", + "frame": {"x":673,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00125.png", + "frame": {"x":673,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00126.png", + "frame": {"x":785,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00127.png", + "frame": {"x":785,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00128.png", + "frame": {"x":785,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00129.png", + "frame": {"x":785,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00130.png", + "frame": {"x":785,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00131.png", + "frame": {"x":785,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00132.png", + "frame": {"x":785,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00133.png", + "frame": {"x":785,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00134.png", + "frame": {"x":785,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00135.png", + "frame": {"x":785,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00136.png", + "frame": {"x":785,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00137.png", + "frame": {"x":785,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00138.png", + "frame": {"x":785,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00139.png", + "frame": {"x":785,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00140.png", + "frame": {"x":785,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00141.png", + "frame": {"x":785,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00142.png", + "frame": {"x":785,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00143.png", + "frame": {"x":785,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00144.png", + "frame": {"x":897,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00145.png", + "frame": {"x":897,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00146.png", + "frame": {"x":897,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00147.png", + "frame": {"x":897,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00148.png", + "frame": {"x":897,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00149.png", + "frame": {"x":897,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00150.png", + "frame": {"x":897,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00151.png", + "frame": {"x":897,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00152.png", + "frame": {"x":897,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00153.png", + "frame": {"x":897,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00154.png", + "frame": {"x":897,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00155.png", + "frame": {"x":897,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00156.png", + "frame": {"x":897,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00157.png", + "frame": {"x":897,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00158.png", + "frame": {"x":897,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00159.png", + "frame": {"x":897,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00160.png", + "frame": {"x":897,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00161.png", + "frame": {"x":897,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00162.png", + "frame": {"x":1009,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00163.png", + "frame": {"x":1009,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00164.png", + "frame": {"x":1009,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00165.png", + "frame": {"x":1009,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00166.png", + "frame": {"x":1009,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00167.png", + "frame": {"x":1009,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00168.png", + "frame": {"x":1009,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00169.png", + "frame": {"x":1009,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00170.png", + "frame": {"x":1009,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00171.png", + "frame": {"x":1009,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00172.png", + "frame": {"x":1009,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00173.png", + "frame": {"x":1009,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00174.png", + "frame": {"x":1009,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00175.png", + "frame": {"x":1009,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00176.png", + "frame": {"x":1009,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00177.png", + "frame": {"x":1009,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00178.png", + "frame": {"x":1009,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00179.png", + "frame": {"x":1009,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00180.png", + "frame": {"x":1121,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00181.png", + "frame": {"x":1121,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00182.png", + "frame": {"x":1121,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00183.png", + "frame": {"x":1121,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00184.png", + "frame": {"x":1121,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00185.png", + "frame": {"x":1121,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00186.png", + "frame": {"x":1121,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00187.png", + "frame": {"x":1121,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00188.png", + "frame": {"x":1121,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00189.png", + "frame": {"x":1121,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00190.png", + "frame": {"x":1121,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00191.png", + "frame": {"x":1121,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00192.png", + "frame": {"x":1121,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00193.png", + "frame": {"x":1121,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00194.png", + "frame": {"x":1121,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00195.png", + "frame": {"x":1121,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00196.png", + "frame": {"x":1121,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00197.png", + "frame": {"x":1121,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00198.png", + "frame": {"x":1233,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00199.png", + "frame": {"x":1233,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00200.png", + "frame": {"x":1233,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00201.png", + "frame": {"x":1233,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00202.png", + "frame": {"x":1233,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00203.png", + "frame": {"x":1233,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00204.png", + "frame": {"x":1233,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00205.png", + "frame": {"x":1233,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00206.png", + "frame": {"x":1233,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00207.png", + "frame": {"x":1233,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00208.png", + "frame": {"x":1233,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00209.png", + "frame": {"x":1233,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00210.png", + "frame": {"x":1233,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00211.png", + "frame": {"x":1233,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00212.png", + "frame": {"x":1233,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00213.png", + "frame": {"x":1233,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00214.png", + "frame": {"x":1233,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00215.png", + "frame": {"x":1233,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00216.png", + "frame": {"x":1345,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00217.png", + "frame": {"x":1345,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00218.png", + "frame": {"x":1345,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00219.png", + "frame": {"x":1345,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00220.png", + "frame": {"x":1345,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00221.png", + "frame": {"x":1345,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00222.png", + "frame": {"x":1345,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00223.png", + "frame": {"x":1345,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00224.png", + "frame": {"x":1345,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00225.png", + "frame": {"x":1345,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00226.png", + "frame": {"x":1345,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00227.png", + "frame": {"x":1345,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00228.png", + "frame": {"x":1345,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00229.png", + "frame": {"x":1345,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00230.png", + "frame": {"x":1345,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00231.png", + "frame": {"x":1345,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00232.png", + "frame": {"x":1345,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00233.png", + "frame": {"x":1345,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00234.png", + "frame": {"x":1457,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00235.png", + "frame": {"x":1457,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00236.png", + "frame": {"x":1457,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00237.png", + "frame": {"x":1457,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00238.png", + "frame": {"x":1457,"y":449,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00239.png", + "frame": {"x":1457,"y":561,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00240.png", + "frame": {"x":1457,"y":673,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00241.png", + "frame": {"x":1457,"y":785,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00242.png", + "frame": {"x":1457,"y":897,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00243.png", + "frame": {"x":1457,"y":1009,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00244.png", + "frame": {"x":1457,"y":1121,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00245.png", + "frame": {"x":1457,"y":1233,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00246.png", + "frame": {"x":1457,"y":1345,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00247.png", + "frame": {"x":1457,"y":1457,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00248.png", + "frame": {"x":1457,"y":1569,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00249.png", + "frame": {"x":1457,"y":1681,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00250.png", + "frame": {"x":1457,"y":1793,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00251.png", + "frame": {"x":1457,"y":1905,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00252.png", + "frame": {"x":1569,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00253.png", + "frame": {"x":1569,"y":113,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00254.png", + "frame": {"x":1569,"y":225,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "loop_190910_00255.png", + "frame": {"x":1569,"y":337,"w":110,"h":110}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":110,"h":110}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_button_idle.png", + "format": "RGBA8888", + "size": {"w":1680,"h":2016}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:7307a3ed9f2d674f0bb451b8c2deb928:2f6906784f6b142907d3c0e88e6079f1:3754ddcffd572189fcc53b8e2da7f26e$" +} +} diff --git a/packages/www/src/common/portal/assets/play_button_intro.json b/packages/www/src/common/portal/assets/play_button_intro.json new file mode 100644 index 00000000..c3ffa363 --- /dev/null +++ b/packages/www/src/common/portal/assets/play_button_intro.json @@ -0,0 +1,588 @@ +{"frames": [ + +{ + "filename": "intro_00000.png", + "frame": {"x":1,"y":1,"w":3,"h":3}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":0,"y":0,"w":3,"h":3}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00001.png", + "frame": {"x":911,"y":364,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00002.png", + "frame": {"x":1063,"y":367,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00003.png", + "frame": {"x":1215,"y":372,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00004.png", + "frame": {"x":1367,"y":374,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00005.png", + "frame": {"x":1519,"y":375,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00006.png", + "frame": {"x":1671,"y":379,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00007.png", + "frame": {"x":1823,"y":381,"w":150,"h":150}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00008.png", + "frame": {"x":759,"y":362,"w":150,"h":149}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":0,"y":0,"w":150,"h":149}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00009.png", + "frame": {"x":456,"y":355,"w":148,"h":149}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":2,"y":0,"w":148,"h":149}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00010.png", + "frame": {"x":607,"y":360,"w":148,"h":150}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":2,"y":0,"w":148,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00011.png", + "frame": {"x":1,"y":349,"w":147,"h":150}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":3,"y":0,"w":147,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00012.png", + "frame": {"x":153,"y":351,"w":147,"h":150}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":3,"y":0,"w":147,"h":150}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00013.png", + "frame": {"x":305,"y":353,"w":147,"h":149}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":2,"y":1,"w":147,"h":149}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00014.png", + "frame": {"x":1867,"y":235,"w":144,"h":148}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":4,"y":2,"w":144,"h":148}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00015.png", + "frame": {"x":1719,"y":235,"w":142,"h":146}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":5,"y":3,"w":142,"h":146}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00016.png", + "frame": {"x":1574,"y":233,"w":140,"h":143}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":6,"y":4,"w":140,"h":143}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00017.png", + "frame": {"x":1432,"y":233,"w":139,"h":140}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":6,"y":6,"w":139,"h":140}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00018.png", + "frame": {"x":1292,"y":233,"w":138,"h":137}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":6,"y":7,"w":138,"h":137}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00019.png", + "frame": {"x":1154,"y":231,"w":136,"h":134}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":7,"y":9,"w":136,"h":134}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00020.png", + "frame": {"x":1018,"y":229,"w":134,"h":133}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":8,"y":9,"w":134,"h":133}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00021.png", + "frame": {"x":885,"y":229,"w":131,"h":131}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":9,"y":10,"w":131,"h":131}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00022.png", + "frame": {"x":754,"y":229,"w":129,"h":129}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":10,"y":11,"w":129,"h":129}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00023.png", + "frame": {"x":624,"y":229,"w":128,"h":127}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":11,"y":12,"w":128,"h":127}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00024.png", + "frame": {"x":496,"y":227,"w":126,"h":126}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":12,"y":12,"w":126,"h":126}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00025.png", + "frame": {"x":370,"y":227,"w":124,"h":124}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":13,"y":13,"w":124,"h":124}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00026.png", + "frame": {"x":246,"y":227,"w":122,"h":122}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":14,"y":14,"w":122,"h":122}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00027.png", + "frame": {"x":1,"y":227,"w":121,"h":120}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":14,"y":15,"w":121,"h":120}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00028.png", + "frame": {"x":124,"y":227,"w":120,"h":120}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":15,"y":15,"w":120,"h":120}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00029.png", + "frame": {"x":1855,"y":115,"w":118,"h":118}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":16,"y":16,"w":118,"h":118}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00030.png", + "frame": {"x":1735,"y":115,"w":117,"h":118}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":16,"y":16,"w":117,"h":118}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00031.png", + "frame": {"x":1381,"y":115,"w":116,"h":116}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":17,"y":17,"w":116,"h":116}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00032.png", + "frame": {"x":1499,"y":115,"w":116,"h":116}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":17,"y":17,"w":116,"h":116}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00033.png", + "frame": {"x":1617,"y":115,"w":116,"h":116}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":17,"y":17,"w":116,"h":116}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00034.png", + "frame": {"x":685,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00035.png", + "frame": {"x":801,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00036.png", + "frame": {"x":917,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00037.png", + "frame": {"x":1033,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00038.png", + "frame": {"x":1149,"y":113,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00039.png", + "frame": {"x":1265,"y":115,"w":114,"h":114}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":18,"w":114,"h":114}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00040.png", + "frame": {"x":1350,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00041.png", + "frame": {"x":1464,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00042.png", + "frame": {"x":1578,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00043.png", + "frame": {"x":1692,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00044.png", + "frame": {"x":1806,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00045.png", + "frame": {"x":1920,"y":1,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00046.png", + "frame": {"x":1,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00047.png", + "frame": {"x":115,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00048.png", + "frame": {"x":229,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00049.png", + "frame": {"x":343,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00050.png", + "frame": {"x":457,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00051.png", + "frame": {"x":571,"y":113,"w":112,"h":112}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":19,"w":112,"h":112}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00052.png", + "frame": {"x":6,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00053.png", + "frame": {"x":118,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00054.png", + "frame": {"x":230,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00055.png", + "frame": {"x":342,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00056.png", + "frame": {"x":454,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00057.png", + "frame": {"x":566,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00058.png", + "frame": {"x":678,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00059.png", + "frame": {"x":790,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00060.png", + "frame": {"x":902,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00061.png", + "frame": {"x":1014,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00062.png", + "frame": {"x":1126,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "intro_00063.png", + "frame": {"x":1238,"y":1,"w":110,"h":110}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":20,"w":110,"h":110}, + "sourceSize": {"w":150,"h":150}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_button_intro.png", + "format": "RGBA8888", + "size": {"w":2033,"h":532}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:c182f7ef1f119bbfd7cc0a11dba8aad6:0f1ccfe8fb1cdc864d87b7e8f6fb3197:356e3de40db0da0fa679697918a56687$" +} +} diff --git a/packages/www/src/common/portal/assets/play_icon_exit.json b/packages/www/src/common/portal/assets/play_icon_exit.json new file mode 100644 index 00000000..591a9e56 --- /dev/null +++ b/packages/www/src/common/portal/assets/play_icon_exit.json @@ -0,0 +1,237 @@ +{"frames": [ + +{ + "filename": "processing_outro_190822_00000.png", + "frame": {"x":82,"y":37,"w":25,"h":13}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":16,"w":25,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00001.png", + "frame": {"x":173,"y":1,"w":27,"h":11}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":16,"w":27,"h":11}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00002.png", + "frame": {"x":186,"y":1,"w":30,"h":15}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":50,"y":16,"w":30,"h":15}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00003.png", + "frame": {"x":122,"y":35,"w":32,"h":27}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":58,"y":16,"w":32,"h":27}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00004.png", + "frame": {"x":1,"y":1,"w":22,"h":37}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":72,"y":23,"w":22,"h":37}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00005.png", + "frame": {"x":25,"y":1,"w":17,"h":37}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":77,"y":40,"w":17,"h":37}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00006.png", + "frame": {"x":1,"y":40,"w":31,"h":21}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":59,"y":63,"w":31,"h":21}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00007.png", + "frame": {"x":34,"y":40,"w":29,"h":19}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":44,"y":65,"w":29,"h":19}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00008.png", + "frame": {"x":65,"y":37,"w":15,"h":25}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":41,"y":52,"w":15,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00009.png", + "frame": {"x":186,"y":18,"w":19,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":43,"y":47,"w":19,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00010.png", + "frame": {"x":186,"y":38,"w":18,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":47,"y":46,"w":18,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00011.png", + "frame": {"x":97,"y":37,"w":23,"h":24}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":45,"y":43,"w":23,"h":24}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00012.png", + "frame": {"x":156,"y":35,"w":27,"h":28}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":43,"y":41,"w":27,"h":28}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00013.png", + "frame": {"x":142,"y":1,"w":29,"h":32}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":39,"w":29,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00014.png", + "frame": {"x":110,"y":1,"w":30,"h":32}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":39,"w":30,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00015.png", + "frame": {"x":44,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00016.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00017.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00018.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00019.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00020.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00021.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00022.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00023.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing_outro_190822_00024.png", + "frame": {"x":77,"y":1,"w":31,"h":34}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":42,"y":38,"w":31,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_icon_exit.png", + "format": "RGBA8888", + "size": {"w":217,"h":63}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:c3c530fe6905479b4ca8719a9d079c2e:313834a760df7f23cb3a698e4cd74589:0d545ddd0574d55083449defb59d19dc$" +} +} diff --git a/packages/www/src/common/portal/assets/play_icon_intro.json b/packages/www/src/common/portal/assets/play_icon_intro.json new file mode 100644 index 00000000..b20bac89 --- /dev/null +++ b/packages/www/src/common/portal/assets/play_icon_intro.json @@ -0,0 +1,237 @@ +{"frames": [ + +{ + "filename": "processing-intro_190822_00000.png", + "frame": {"x":1,"y":1,"w":35,"h":38}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":40,"y":36,"w":35,"h":38}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00001.png", + "frame": {"x":38,"y":1,"w":34,"h":38}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":40,"y":36,"w":34,"h":38}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00002.png", + "frame": {"x":74,"y":1,"w":29,"h":32}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":43,"y":39,"w":29,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00003.png", + "frame": {"x":1,"y":41,"w":22,"h":24}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":46,"y":43,"w":22,"h":24}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00004.png", + "frame": {"x":142,"y":43,"w":17,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":48,"y":46,"w":17,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00005.png", + "frame": {"x":161,"y":40,"w":14,"h":14}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":49,"y":45,"w":14,"h":14}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00006.png", + "frame": {"x":183,"y":1,"w":10,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":54,"y":42,"w":10,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00007.png", + "frame": {"x":183,"y":37,"w":9,"h":9}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":62,"y":38,"w":9,"h":9}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00008.png", + "frame": {"x":183,"y":25,"w":10,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":73,"y":38,"w":10,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00009.png", + "frame": {"x":180,"y":13,"w":10,"h":12}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":82,"y":46,"w":10,"h":12}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00010.png", + "frame": {"x":168,"y":1,"w":10,"h":13}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":84,"y":59,"w":10,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00011.png", + "frame": {"x":177,"y":48,"w":13,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":76,"y":72,"w":13,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00012.png", + "frame": {"x":139,"y":13,"w":17,"h":12}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":63,"y":80,"w":17,"h":12}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00013.png", + "frame": {"x":158,"y":13,"w":20,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":49,"y":84,"w":20,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00014.png", + "frame": {"x":160,"y":25,"w":21,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":81,"w":21,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00015.png", + "frame": {"x":114,"y":27,"w":21,"h":18}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":26,"y":73,"w":21,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00016.png", + "frame": {"x":94,"y":35,"w":18,"h":22}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":20,"y":63,"w":18,"h":22}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00017.png", + "frame": {"x":123,"y":1,"w":14,"h":24}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":53,"w":14,"h":24}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00018.png", + "frame": {"x":139,"y":1,"w":10,"h":27}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":42,"w":10,"h":27}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00019.png", + "frame": {"x":114,"y":50,"w":13,"h":26}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":34,"w":13,"h":26}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00020.png", + "frame": {"x":75,"y":35,"w":17,"h":25}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":19,"y":27,"w":17,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00021.png", + "frame": {"x":27,"y":41,"w":21,"h":22}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":21,"y":22,"w":21,"h":22}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00022.png", + "frame": {"x":50,"y":41,"w":23,"h":19}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":25,"y":19,"w":23,"h":19}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00023.png", + "frame": {"x":105,"y":1,"w":24,"h":16}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":30,"y":17,"w":24,"h":16}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-intro_190822_00024.png", + "frame": {"x":134,"y":27,"w":24,"h":14}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":35,"y":16,"w":24,"h":14}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_icon_intro.png", + "format": "RGBA8888", + "size": {"w":194,"h":64}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:a423de98fed1e06cc62611996868a2db:909cd8dbde93c0d2fca4402e7546ffd8:5ea08d4d7caaa5043281f5095baffab1$" +} +} diff --git a/packages/www/src/common/portal/assets/play_icon_loop.json b/packages/www/src/common/portal/assets/play_icon_loop.json new file mode 100644 index 00000000..bb8e0f41 --- /dev/null +++ b/packages/www/src/common/portal/assets/play_icon_loop.json @@ -0,0 +1,237 @@ +{"frames": [ + +{ + "filename": "processing-loop_190822_00000.png", + "frame": {"x":37,"y":97,"w":23,"h":11}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":40,"y":16,"w":23,"h":11}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00001.png", + "frame": {"x":37,"y":110,"w":23,"h":10}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":46,"y":16,"w":23,"h":10}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00002.png", + "frame": {"x":30,"y":257,"w":24,"h":12}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":51,"y":16,"w":24,"h":12}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00003.png", + "frame": {"x":34,"y":225,"w":25,"h":15}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":56,"y":16,"w":25,"h":15}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00004.png", + "frame": {"x":1,"y":252,"w":27,"h":20}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":61,"y":17,"w":27,"h":20}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00005.png", + "frame": {"x":35,"y":180,"w":24,"h":25}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":68,"y":19,"w":24,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00006.png", + "frame": {"x":39,"y":39,"w":21,"h":30}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":74,"y":24,"w":21,"h":30}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00007.png", + "frame": {"x":1,"y":120,"w":16,"h":34}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":80,"y":30,"w":16,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00008.png", + "frame": {"x":1,"y":58,"w":13,"h":36}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":83,"y":38,"w":13,"h":36}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00009.png", + "frame": {"x":41,"y":1,"w":19,"h":36}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":77,"y":47,"w":19,"h":36}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00010.png", + "frame": {"x":1,"y":151,"w":27,"h":33}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":68,"y":57,"w":27,"h":33}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00011.png", + "frame": {"x":1,"y":73,"w":34,"h":26}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":57,"y":68,"w":34,"h":26}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00012.png", + "frame": {"x":1,"y":1,"w":38,"h":18}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":46,"y":76,"w":38,"h":18}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00013.png", + "frame": {"x":1,"y":21,"w":38,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":81,"w":38,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00014.png", + "frame": {"x":1,"y":36,"w":36,"h":20}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":27,"y":74,"w":36,"h":20}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00015.png", + "frame": {"x":1,"y":197,"w":31,"h":27}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":21,"y":66,"w":31,"h":27}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00016.png", + "frame": {"x":1,"y":226,"w":24,"h":31}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":57,"w":24,"h":31}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00017.png", + "frame": {"x":1,"y":101,"w":17,"h":34}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":47,"w":17,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00018.png", + "frame": {"x":1,"y":138,"w":11,"h":34}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":39,"w":11,"h":34}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00019.png", + "frame": {"x":1,"y":180,"w":15,"h":32}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":31,"w":15,"h":32}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00020.png", + "frame": {"x":37,"y":149,"w":20,"h":29}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":18,"y":25,"w":20,"h":29}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00021.png", + "frame": {"x":37,"y":122,"w":22,"h":25}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":21,"y":21,"w":22,"h":25}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00022.png", + "frame": {"x":39,"y":71,"w":24,"h":21}, + "rotated": true, + "trimmed": true, + "spriteSourceSize": {"x":25,"y":18,"w":24,"h":21}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00023.png", + "frame": {"x":34,"y":206,"w":25,"h":17}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":30,"y":16,"w":25,"h":17}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "processing-loop_190822_00024.png", + "frame": {"x":34,"y":242,"w":25,"h":13}, + "rotated": false, + "trimmed": true, + "spriteSourceSize": {"x":36,"y":16,"w":25,"h":13}, + "sourceSize": {"w":110,"h":110}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "play_icon_loop.png", + "format": "RGBA8888", + "size": {"w":61,"h":273}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:4d92719faa27cbc50926429a66fc808c:25af8a045fca3b76dba8d8d26ed4ccf7:9b86d3b10829102d2ccf1bd5942144f2$" +} +} diff --git a/packages/www/src/common/portal/button.ts b/packages/www/src/common/portal/button.ts new file mode 100644 index 00000000..f7028443 --- /dev/null +++ b/packages/www/src/common/portal/button.ts @@ -0,0 +1,309 @@ +import PlayIconLoop from "./assets/play_icon_loop.json" +import PlayIconExit from "./assets/play_icon_exit.json" +import PlayIconIntro from "./assets/play_icon_intro.json" +import PlayButtonIdle from "./assets/play_button_idle.json" +import PlayButtonIntro from "./assets/play_button_intro.json" + +const button_assets = { + intro: { + image: "/src/assets/portal/play_button_intro.png", + json: PlayButtonIntro + }, + idle: { + image: "/src/assets/portal/play_button_idle.png", + json: PlayButtonIdle + } +} + +const icon_assets = { + intro: { + image: "/src/assets/portal/play_icon_intro.png", + json: PlayIconIntro + }, + loop: { + image: "/src/assets/portal/play_icon_loop.png", + json: PlayIconLoop + }, + exit: { + image: "/src/assets/portal/play_icon_exit.png", + json: PlayIconExit + } +} + +export class PortalButton { + private canvas: HTMLCanvasElement; + private currentFrame: number; + private index: number; + private buttonQueue: (() => void)[]; + private isButtonRunning: boolean; + private animationSpeed: number; + + constructor(canvas: HTMLCanvasElement) { + this.canvas = canvas; + this.currentFrame = 0; + this.index = 0; + this.buttonQueue = []; + this.isButtonRunning = false; + this.animationSpeed = 50; + } + + render(type: "intro" | "idle", loop: boolean, image: HTMLImageElement, index?: number) { + if (index) this.index = index + return new Promise((resolve) => { + const buttonTask = () => { + // Get the canvas element + const ctx = this.canvas.getContext('2d'); + + // Load the JSON data + const animationData = button_assets[type].json; + + // Play the animation + const frames = animationData.frames; + const totalFrames = frames.length; + + if (this.index) this.currentFrame = this.index; + + const targetDim = 100 //target dimensions of the output image (height, width) + + // Start the animation + const updateFrame = () => { + + // Check if we have reached the last frame + if (!loop && this.currentFrame === totalFrames - 1) { + // Animation has reached the last frame, stop playing + this.isButtonRunning = false; + + // Resolve the Promise to indicate completion + resolve(); + return null; + } + + // Clear the canvas + ctx?.clearRect(0, 0, this.canvas.width, this.canvas.height); + + // Get the current frame details + const singleFrame = frames[this.currentFrame]; + const { frame, sourceSize: ss, rotated, spriteSourceSize: sss, trimmed } = singleFrame; + + this.canvas.width = targetDim; + this.canvas.height = targetDim; + this.canvas.style.borderRadius = `${ss.h / 2}px` + + const newSize = { + w: frame.w, + h: frame.h + }; + + const newPosition = { + x: 0, + y: 0 + }; + + if (rotated) { + ctx?.save() + ctx?.translate(this.canvas.width / 2, this.canvas.height / 2) + ctx?.rotate(-Math.PI / 2); + ctx?.translate(-this.canvas.height / 2, -this.canvas.width / 2); + + newSize.w = frame.h; + newSize.h = frame.w; + } + + if (trimmed) { + newPosition.x = sss.x; + newPosition.y = sss.y; + + if (rotated) { + newPosition.x = this.canvas.height - sss.h - sss.y; + newPosition.y = sss.x; + } + } + + const scaleFactor = Math.min(targetDim / newSize.w, targetDim / newSize.h); + const scaledWidth = newSize.w * scaleFactor; + const scaledHeight = newSize.h * scaleFactor; + + // Calculate the center position to draw the resized image + const x = (targetDim - scaledWidth) / 2; + const y = (targetDim - scaledHeight) / 2; + + ctx?.drawImage( + image, + frame.x, + frame.y, + newSize.w, + newSize.h, + x, + y, + scaledWidth, + scaledHeight + ) + + + if (rotated) { + ctx?.restore() + } + // Increment the frame index + this.currentFrame = (this.currentFrame + 1) % totalFrames + + // Schedule the next frame update + setTimeout(updateFrame, this.animationSpeed); + }; + + return updateFrame() + } + // Check if the button function is already running + if (this.isButtonRunning) { + // If running, add the button task to the queue + this.buttonQueue.push(buttonTask); + + } else { + // If not running, set the flag and execute the button task immediately + this.isButtonRunning = true; + buttonTask(); + } + }) + } +} + +export class PortalIcon { + private canvas: HTMLCanvasElement; + private currentFrame: number; + private index: number; + private iconQueue: (() => void)[]; + private isIconRunning: boolean; + private animationSpeed: number; + + constructor(canvas: HTMLCanvasElement) { + this.canvas = canvas; + this.currentFrame = 0; + this.index = 0; + this.iconQueue = []; + this.isIconRunning = false; + this.animationSpeed = 50; + } + + render(type: "loop" | "intro" | "exit", loop: boolean, image: HTMLImageElement, play: boolean) { + return new Promise((resolve) => { + const iconTask = () => { + // Get the canvas element + const ctx = this.canvas.getContext('2d'); + + // Load the JSON data + const animationData = icon_assets[type].json; + + // Load the image + // const image = new Image(); + image.src = icon_assets[type].image; // Path to the sprite sheet image + + // Play the animation + const frames = animationData.frames; + const totalFrames = frames.length; + + if (!play) { + this.currentFrame = totalFrames - 3 + } else { this.currentFrame = 0 } + + // Start the animation + const updateFrame = () => { + + // Check if we have reached the last frame + if (!loop && this.currentFrame === totalFrames - 1) { + // Animation has reached the last frame, stop playing + this.isIconRunning = false; + + // Resolve the Promise to indicate completion + resolve(); + return; + } + + // Clear the canvas + ctx?.clearRect(0, 0, this.canvas.width, this.canvas.height); + + // Get the current frame details + const singleFrame = frames[this.currentFrame]; + const { frame, sourceSize: ss, rotated, spriteSourceSize: sss, trimmed } = singleFrame; + + this.canvas.width = ss.w; + this.canvas.height = ss.h + this.canvas.style.borderRadius = `${ss.h / 2}px` + + const newSize = { + w: frame.w, + h: frame.h + }; + + const newPosition = { + x: 0, + y: 0 + }; + + if (rotated) { + ctx?.save() + ctx?.translate(this.canvas.width / 2, this.canvas.height / 2) + ctx?.rotate(-Math.PI / 2); + ctx?.translate(-this.canvas.height / 2, -this.canvas.width / 2); + + newSize.w = frame.h; + newSize.h = frame.w; + } + + if (trimmed) { + newPosition.x = sss.x; + newPosition.y = sss.y; + + if (rotated) { + newPosition.x = this.canvas.height - sss.h - sss.y; + newPosition.y = sss.x; + } + } + + ctx?.drawImage( + image, + frame.x, + frame.y, + newSize.w, + newSize.h, + newPosition.x, + newPosition.y, + newSize.w, + newSize.h + ) + + + if (rotated) { + ctx?.restore() + } + // Increment the frame index + this.currentFrame = (this.currentFrame + 1) % totalFrames + + + // Schedule the next frame update + if (!play) { + this.isIconRunning = false; + + resolve(); + return; + } + + setTimeout(updateFrame, this.animationSpeed) + }; + + return updateFrame(); + } + // Check if the icon function is already running + if (this.isIconRunning) { + // If running, add the button icon to the queue + this.iconQueue.push(iconTask); + } else { + // If not running, set the flag and execute the button task immediately + this.isIconRunning = true; + iconTask(); + } + }) + } + +} + +const portal = { assets: { button_assets, icon_assets } } +export default portal; \ No newline at end of file diff --git a/packages/www/src/common/portal/index.tsx b/packages/www/src/common/portal/index.tsx new file mode 100644 index 00000000..7729b6ee --- /dev/null +++ b/packages/www/src/common/portal/index.tsx @@ -0,0 +1,123 @@ +import { createEffect, createSignal, onCleanup } from "solid-js"; +import portalbtn, { PortalButton, PortalIcon } from "./button"; +import { styled } from "@macaron-css/solid"; +import { theme } from "@nestri/www/ui"; + + +const PlayBtn = styled("button", { + base: { + position: "relative", + backgroundColor: "transparent", + outline: "none", + border: "none", + padding: 0, + margin: 0, + height: 100, + borderRadius: 999, + ":focus": { + outline: `3px solid ${theme.color.brand}` + } + } +}) + +const CanvasOne = styled("canvas", { + base: { + position: "absolute", + inset: 0, + height: "100%", + width: "100%", + borderRadius: 999, + } +}) + +const CanvasTwo = styled("canvas", { + base: { + position: "relative", + inset: 0, + zIndex: 1, + height: "100%", + width: "100%", + borderRadius: 999, + } +}) +/** + * Renders a portal play button with animated canvas icons. + * + * This Solid.js component manages two canvas elements that display an animated portal button and its icon. It asynchronously loads a set of image assets and uses instances of PortalButton and PortalIcon to render various animation states—including intro, idle, exit, and loop—on the canvases. Image loading errors are logged to the console. + * + * @returns A JSX element containing a styled button with two canvases for rendering animations. + */ +export function Portal() { + const [iconRef, setIconRef] = createSignal(); + const [buttonRef, setButtonRef] = createSignal(); + + const imageUrls = [ + portalbtn.assets.button_assets["intro"].image, + portalbtn.assets.button_assets["idle"].image, + portalbtn.assets.icon_assets["exit"].image, + portalbtn.assets.icon_assets["intro"].image, + portalbtn.assets.icon_assets["loop"].image + ]; + + const loadImages = () => { + return Promise.all(imageUrls.map(url => { + return new Promise((resolve, reject) => { + const img = new Image(); + img.onload = () => resolve(img); + img.onerror = (e) => { + console.error(`Failed to load image from ${url}:`, e); + reject(new Error(`Failed to load image from ${url}`)); + }; + img.src = url; + }); + })); + } + + createEffect(() => { + (async () => { + const btnRef = buttonRef() + const icnRef = iconRef() + let isActive = true; + + if (icnRef && btnRef) { + try { + + // Destructure images for each animation type - skipping introIconImg at index 3 + const [introImg, idleImg, exitImg, , loopImg] = await loadImages(); + + const button = new PortalButton(btnRef); + const icon = new PortalIcon(icnRef) + if (!isActive) return; + + await button.render("intro", false, introImg as HTMLImageElement); + await icon.render("exit", false, exitImg as HTMLImageElement, false); + await button.render("idle", true, idleImg as HTMLImageElement, 3); + + // Intro and loop animation + await Promise.all([ + (async () => { + if (icnRef) { + await icon.render("loop", false, loopImg as HTMLImageElement, true); + await icon.render("loop", false, loopImg as HTMLImageElement, true); + await icon.render("exit", false, exitImg as HTMLImageElement, true); + } + })(), + button.render("idle", true, idleImg as HTMLImageElement, 2), + ]); + } catch (err) { + console.error("Failed to load animation images:", err); + } + } + onCleanup(() => { + isActive = false; + }); + })() + }); + + return ( + + + + + ) +} \ No newline at end of file diff --git a/packages/www/src/components/index.ts b/packages/www/src/components/index.ts new file mode 100644 index 00000000..a0eefcec --- /dev/null +++ b/packages/www/src/components/index.ts @@ -0,0 +1 @@ +export * from "./qr-code" \ No newline at end of file diff --git a/packages/www/src/components/qr-code.tsx b/packages/www/src/components/qr-code.tsx new file mode 100644 index 00000000..69ed94a8 --- /dev/null +++ b/packages/www/src/components/qr-code.tsx @@ -0,0 +1,378 @@ +import { theme } from "@nestri/www/ui"; +import { A } from "@solidjs/router"; +import { styled } from "@macaron-css/solid"; +import { useSteam } from "../providers/steam"; +import { keyframes } from "@macaron-css/core"; +import { QRCode } from "@nestri/www/ui/custom-qr"; +import { createEffect, createSignal, onCleanup, Show } from "solid-js"; + +const EmptyState = styled("div", { + base: { + padding: "0 40px", + display: "flex", + height: "100dvh", + gap: 10, + flexDirection: "column", + alignItems: "center", + justifyContent: "center", + margin: "auto" + } +}) + + +const EmptyStateHeader = styled("h2", { + base: { + textAlign: "center", + fontSize: theme.font.size["2xl"], + fontFamily: theme.font.family.heading, + fontWeight: theme.font.weight.semibold, + letterSpacing: -0.5, + } +}) + +const EmptyStateSubHeader = styled("p", { + base: { + fontWeight: theme.font.weight.regular, + color: theme.color.gray.d900, + fontSize: theme.font.size["base"], + textAlign: "center", + maxWidth: 380, + letterSpacing: -0.4, + lineHeight: 1.1, + } +}) + +const bgRotate = keyframes({ + 'to': { transform: 'rotate(1turn)' }, +}); + +const QRContainer = styled("div", { + base: { + position: "relative", + display: "flex", + overflow: "hidden", + marginBottom: 20, + justifyContent: "center", + alignItems: "center", + borderRadius: 25, + padding: 5, + isolation: "isolate", + ":after": { + content: "", + zIndex: -1, + inset: 5, + backgroundColor: theme.color.background.d100, + borderRadius: 22, + position: "absolute" + } + }, + variants: { + login: { + true: { + ":before": { + content: "", + backgroundImage: `conic-gradient(from 0deg,transparent 0,${theme.color.blue.d600} 10%,${theme.color.blue.d600} 25%,transparent 35%)`, + animation: `${bgRotate} 2.25s linear infinite`, + width: "200%", + height: "200%", + zIndex: -2, + top: "-50%", + left: "-50%", + position: "absolute" + }, + } + } + } +}) + +const QRWrapper = styled("div", { + base: { + backgroundColor: theme.color.background.d100, + position: "relative", + textWrap: "balance", + border: `1px solid ${theme.color.gray.d400}`, + display: "flex", + justifyContent: "center", + alignItems: "center", + overflow: "hidden", + borderRadius: 22, + padding: 20, + } +}) + +const QRBg = styled("div", { + base: { + backgroundColor: theme.color.background.d200, + position: "absolute", + inset: 0, + margin: 5, + borderRadius: 20 + } +}) + +const QRReloadBtn = styled("button", { + base: { + background: "none", + border: "none", + width: 50, + height: 50, + position: "absolute", + borderRadius: 25, + zIndex: 5, + right: 2, + bottom: 2, + cursor: "pointer", + color: theme.color.blue.d700, + transition: "color 200ms", + overflow: "hidden", + display: "flex", + justifyContent: "center", + alignItems: "center", + ":before": { + zIndex: 3, + content: "", + position: "absolute", + inset: 0, + opacity: 0, + transition: "opacity 200ms", + background: "#FFF" + } + } +}) + +const QRRealoadContainer = styled("div", { + base: { + position: "absolute", + inset: 0, + isolation: "isolate", + ":before": { + background: `conic-gradient( from 90deg, currentColor 10%, #FFF 80% )`, + inset: 3, + borderRadius: 16, + position: "absolute", + content: "", + zIndex: 1 + } + } +}) + +const QRReloadSvg = styled("svg", { + base: { + zIndex: 2, + width: "100%", + height: "100%", + position: "relative", + display: "block" + } +}) + +const LogoContainer = styled("div", { + base: { + position: "absolute", + top: 0, + left: 0, + width: "100%", + height: "100%", + } +}) + +const LogoIcon = styled("svg", { + base: { + zIndex: 6, + position: "absolute", + left: "50%", + top: "50%", + transform: "translate(-50%,-50%)", + overflow: "hidden", + // width: "21%", + // height: "21%", + borderRadius: 17, + // ":before": { + // pointerEvents: "none", + // zIndex: 2, + // content: '', + // position: "absolute", + // inset: 0, + // borderRadius: "inherit", + // boxShadow: "inset 0 0 0 1px rgba(0, 0, 0, 0.02)", + // } + } +}) + +const SteamMobileLink = styled(A, { + base: { + textUnderlineOffset: 2, + textDecoration: "none", + color: theme.color.blue.d900, + display: "inline-flex", + justifyContent: "center", + alignItems: "center", + gap: 1, + width: "max-content", + textTransform: "capitalize", + ":hover": { + textDecoration: "underline" + } + } +}) + +/** + * Manages the Steam authentication flow via a reactive hook. + * + * This hook connects to Steam's login stream for QR code authentication, updating the internal state through reactive signals. It sets up event listeners to capture authentication challenges (setting the login URL) and errors (flagging login errors), and it provides methods to initiate and re-establish the connection. + * + * The returned object includes: + * - loginError: A signal that indicates whether an authentication error has occurred. + * - loginUrl: A signal that holds the URL received on a successful authentication challenge. + * - isConnecting: A signal that reflects whether the authentication process is currently in progress. + * - authenticateSteam: A function that initiates the authentication process, sets up event listeners, and returns cleanup and reset functions. + * - reconnect: A function that cleans up any existing connection and initiates a new authentication attempt. + * + * @returns An object with authentication state signals and functions to manage the connection. + */ +export function useSteamAuth() { + const [loginError, setLoginError] = createSignal(false); + const [loginUrl, setLoginUrl] = createSignal(); + const [isConnecting, setIsConnecting] = createSignal(false); + const [disconnectFn, setDisconnectFn] = createSignal<(() => void) | null>(null); + const steam = useSteam() + // Function to authenticate with Steam + const authenticateSteam = async () => { + try { + setIsConnecting(true); + setLoginError(false); + + // Connect to the Steam login stream + const steamConnection = await steam.client.login.connect(); + + // Set up event listeners for different event types + const urlUnsubscribe = steamConnection.addEventListener('challenge', (data) => { + setLoginUrl(data.url); + }); + + const loginUnsuccessfulUnsubscribe = steamConnection.addEventListener('error', (data) => { + setLoginError(true); + }); + + // Store the disconnect function for later use + const cleanupConnection = () => { + urlUnsubscribe(); + loginUnsuccessfulUnsubscribe(); + steamConnection.disconnect(); + }; + + setDisconnectFn(() => cleanupConnection); + setIsConnecting(false); + + return { + cleanup: cleanupConnection, + resetConnection: () => { + cleanupConnection(); + authenticateSteam(); + } + }; + } catch (error) { + setLoginError(true); + setIsConnecting(false); + console.error("Steam authentication error:", error); + return { + cleanup: () => { }, + resetConnection: () => authenticateSteam() + }; + } + }; + + // Function to reconnect + const reconnect = async () => { + // Clean up existing connection if any + const currentDisconnectFn = disconnectFn(); + if (currentDisconnectFn) { + currentDisconnectFn(); + } + + // Start a new connection + return authenticateSteam(); + }; + + return { + loginError, + loginUrl, + isConnecting, + authenticateSteam, + reconnect + }; +} + +/** + * Renders a Steam QR code authentication interface. + * + * On mount, the component initiates the Steam authentication process using a custom hook and sets up a cleanup routine upon unmounting. It conditionally displays a QR code for signing in when a valid login URL is available, a reload button if an error occurs, or a timeout message if the request times out. + * + * @example + * + * + * @returns A Solid.js component that provides a QR code authentication UI for Steam. + */ +export function QrCodeComponent() { + const { loginError, loginUrl, isConnecting, authenticateSteam, reconnect } = useSteamAuth(); + + createEffect(async () => { + const { cleanup } = await authenticateSteam(); + onCleanup(() => cleanup()); + }); + + + return ( + + + + + + + + + + + + + } + > + + + + + reconnect()} disabled={isConnecting()}> + + + + + + + + Request Timed Out + Click above to try again. + + } + when={!loginError() && loginUrl()} > + Sign in to your Steam account + Use your Steam Mobile App to sign in via QR code. Learn More + + + ) +} \ No newline at end of file diff --git a/packages/www/src/pages/new.tsx b/packages/www/src/pages/new.tsx index bfc90dd7..f3b0a37f 100644 --- a/packages/www/src/pages/new.tsx +++ b/packages/www/src/pages/new.tsx @@ -8,7 +8,7 @@ import { useNavigate } from "@solidjs/router"; import { useOpenAuth } from "@openauthjs/solid"; import { utility } from "@nestri/www/ui/utility"; import { useAccount } from "../providers/account"; -import { Container, FullScreen } from "@nestri/www/ui/layout"; +import { Container, Screen as FullScreen } from "@nestri/www/ui/layout"; import { FormField, Input, Select } from "@nestri/www/ui/form"; import { createForm, getValue, setError, valiForm } from "@modular-forms/solid"; @@ -191,7 +191,6 @@ export function CreateTeamComponent() { { + const handleScroll = () => { setHasScrolled(window.scrollY > 0); } + + document.addEventListener("scroll", handleScroll); + + onCleanup(() => { + document.removeEventListener("scroll", handleScroll); + }); + + }) + + // const account = useAccount() return ( - - {/* */} + diff --git a/packages/www/src/pages/team/home.tsx b/packages/www/src/pages/team/home.tsx index d4d3ec59..a4a1892a 100644 --- a/packages/www/src/pages/team/home.tsx +++ b/packages/www/src/pages/team/home.tsx @@ -3,111 +3,14 @@ import { styled } from "@macaron-css/solid"; import { Header } from "@nestri/www/pages/team/header"; import { useSteam } from "@nestri/www/providers/steam"; import { Modal } from "@nestri/www/ui/modal"; -import { createEffect, createSignal, onCleanup } from "solid-js"; +import { createEffect, createSignal, Match, onCleanup, Switch } from "solid-js"; import { Text } from "@nestri/www/ui/text" -import { QRCode } from "@nestri/www/ui/custom-qr"; import { globalStyle, keyframes } from "@macaron-css/core"; import { A } from "@solidjs/router"; +import Avatar from "@nestri/www/ui/avatar"; +import { Portal } from "@nestri/www/common/portal"; +import { QrCodeComponent } from "@nestri/www/components" -const EmptyState = styled("div", { - base: { - padding: "0 40px", - display: "flex", - gap: 10, - flexDirection: "column", - alignItems: "center", - justifyContent: "center", - margin: "auto" - } -}) - -const EmptyStateHeader = styled("h2", { - base: { - textAlign: "center", - fontSize: theme.font.size["2xl"], - fontFamily: theme.font.family.heading, - fontWeight: theme.font.weight.semibold, - letterSpacing: -0.5, - } -}) - -const EmptyStateSubHeader = styled("p", { - base: { - fontWeight: theme.font.weight.regular, - color: theme.color.gray.d900, - fontSize: theme.font.size["lg"], - textAlign: "center", - maxWidth: 380, - letterSpacing: -0.4, - lineHeight: 1.1, - } -}) - -const QRWrapper = styled("div", { - base: { - backgroundColor: theme.color.background.d100, - position: "relative", - marginBottom: 20, - textWrap: "balance", - border: `1px solid ${theme.color.gray.d400}`, - display: "flex", - justifyContent: "center", - alignItems: "center", - overflow: "hidden", - borderRadius: 22, - padding: 20, - } -}) - -const SteamMobileLink = styled(A, { - base: { - textUnderlineOffset: 2, - textDecoration: "none", - color: theme.color.blue.d900, - display: "inline-flex", - justifyContent: "center", - alignItems: "center", - gap: 1, - width: "max-content", - textTransform: "capitalize", - ":hover": { - textDecoration: "underline" - } - } -}) - -const LogoContainer = styled("div", { - base: { - position: "absolute", - top: 0, - left: 0, - width: "100%", - height: "100%", - } -}) - -const LogoIcon = styled("svg", { - base: { - zIndex: 6, - position: "absolute", - left: "50%", - top: "50%", - transform: "translate(-50%,-50%)", - overflow: "hidden", - // width: "21%", - // height: "21%", - borderRadius: 17, - // ":before": { - // pointerEvents: "none", - // zIndex: 2, - // content: '', - // position: "absolute", - // inset: 0, - // borderRadius: "inherit", - // boxShadow: "inset 0 0 0 1px rgba(0, 0, 0, 0.02)", - // } - } -}) const LastPlayedWrapper = styled("div", { base: { @@ -230,7 +133,8 @@ const GamesContainer = styled("div", { display: "flex", alignItems: "center", flexDirection: "column", - zIndex: 3, + zIndex: 10, + isolation: "isolate", backgroundColor: theme.color.background.d200, } }) @@ -293,13 +197,13 @@ const SteamLibrary = styled("div", { display: "grid", // backgroundColor: "red", maxWidth: "70vw", - gridTemplateColumns: "repeat(4, minmax(0, 1fr))", - columnGap: 12, + gridTemplateColumns: "repeat(2, minmax(0, 1fr))", + columnGap: 20, rowGap: 10, } }) -const SteamLibraryTitle = styled("h3", { +const Title = styled("h3", { base: { textAlign: "left", fontFamily: theme.font.family.heading, @@ -311,104 +215,311 @@ const SteamLibraryTitle = styled("h3", { } }) +const SteamGameTitle = styled("h3", { + base: { + textAlign: "left", + fontFamily: theme.font.family.heading, + fontWeight: theme.font.weight.medium, + fontSize: theme.font.size["xl"], + letterSpacing: -0.7, + } +}) + +const SteamGameSubTitle = styled("span", { + base: { + textAlign: "left", + fontWeight: theme.font.weight.regular, + color: theme.color.gray.d900, + fontSize: theme.font.size["base"], + letterSpacing: -0.4, + } +}) + +const SubTitle = styled("span", { + base: { + textAlign: "left", + fontWeight: theme.font.weight.regular, + color: theme.color.gray.d900, + fontSize: theme.font.size["base"], + letterSpacing: -0.4, + gridColumn: "1/-1", + marginTop: -20, + marginBottom: 20, + } +}) + +const FriendsList = styled("div", { + base: { + borderTop: `1px solid ${theme.color.gray.d400}`, + padding: "20px 0", + margin: "20px auto", + width: "100%", + display: "grid", + maxWidth: "70vw", + gridTemplateColumns: "repeat(5, minmax(0, 1fr))", + columnGap: 12, + rowGap: 10, + } +}) + +const FriendContainer = styled("div", { + base: { + width: "100%", + display: "flex", + minHeight: "calc(100% + 20px)", + aspectRatio: "300/380", + borderRadius: 15, + position: "relative", + padding: "35px 17px", + border: `1px solid ${theme.color.gray.d500}`, + backgroundColor: theme.color.background.d100, + flexDirection: "column", + alignItems: "center", + } +}) + +const FriendsSubText = styled("span", { + base: { + color: theme.color.gray.d900, + fontSize: theme.font.size.sm, + marginTop: 10, + } +}) +const FriendsText = styled("h3", { + base: { + fontSize: theme.font.size["lg"], + fontFamily: theme.font.family.heading, + marginTop: 20, + } +}) + +const FriendsInviteButton = styled("button", { + base: { + minWidth: 48, + borderRadius: 9999, + textAlign: "center", + padding: "0px 24px", + fontSize: theme.font.size["base"], + lineHeight: "1.75", + marginTop: 20, + cursor: "pointer", + fontWeight: theme.font.weight.bold, + fontFamily: theme.font.family.heading, + border: `1px solid ${theme.color.gray.d100}`, + backgroundColor: theme.color.blue.d700, + transition: "all 0.2s cubic-bezier(0.4,0,0.2,1)", + ":hover": { + transform: "scale(1.05)" + } + } +}) + +const SteamGameContainer = styled("div", { + base: { + padding: "20px 0", + width: "100%", + minHeight: 72, + display: "flex", + flexDirection: "row", + selectors: { + "&:not(:last-of-type)": { + borderBottom: `1px solid ${theme.color.gray.d400}` + }, + "&:not(:first-of-type)": { + borderTop: `1px solid ${theme.color.gray.d400}` + } + } + } +}) + +const SteamGameImg = styled("img", { + base: { + border: "none", + outline: "none", + aspectRatio: "1/1", + height: 80, + borderRadius: 8 + } +}) + +const SteamGameText = styled("div", { + base: { + paddingRight: "3em", + marginLeft: 30, + display: "flex", + gap: 8, + flexDirection: "column", + alignSelf: "center", + } +}) +const SteamGameBtn = styled("button", { + base: { + minWidth: 48, + borderRadius: 9999, + textAlign: "center", + padding: "0px 24px", + fontSize: theme.font.size["base"], + lineHeight: "1.75", + // marginTop: 20, + // marginRight: 1, + margin: "0 1px 0 auto", + cursor: "pointer", + alignSelf: "center", + fontWeight: theme.font.weight.bold, + fontFamily: theme.font.family.heading, + color: theme.color.blue.d900, + border: `1px solid ${theme.color.gray.d100}`, + backgroundColor: theme.color.blue.d300, + transition: "all 0.2s cubic-bezier(0.4,0,0.2,1)", + ":hover": { + transform: "scale(1.05)" + } + } +}) + +const PortalContainer = styled("div", { + base: { + zIndex: 4, + isolation: "isolate", + position: "fixed", + bottom: "20vh", + left: "50%", + transform: "translateX(-50%)" + } +}) + +/** + * Renders the home page layout for the gaming platform. + * + * This component wraps its content within a header and a full-screen container, + * currently displaying a QR code component. Commented sections indicate planned + * enhancements such as game previews, team mate suggestions, and a Steam library. + */ export function HomeRoute() { - // const steam = useSteam(); - // const [loginUrl, setLoginUrl] = createSignal(null); - // const [loginStatus, setLoginStatus] = createSignal("Not connected"); - // const [userData, setUserData] = createSignal<{ username?: string, steamId?: string } | null>(null); - - // createEffect(async () => { - // // Connect to the Steam login stream - // const steamConnection = await steam.client.login.connect(); - - // // Set up event listeners for different event types - // const urlUnsubscribe = steamConnection.addEventListener('url', (url) => { - // setLoginUrl(url); - // setLoginStatus('Scan QR code with Steam mobile app'); - // }); - - // const loginAttemptUnsubscribe = steamConnection.addEventListener('login-attempt', (data) => { - // setLoginStatus(`Logging in as ${data.username}...`); - // }); - - // const loginSuccessUnsubscribe = steamConnection.addEventListener('login-success', (data) => { - // setUserData(data); - // setLoginStatus(`Successfully logged in as ${data.username}`); - // }); - - // const loginUnsuccessfulUnsubscribe = steamConnection.addEventListener('login-unsuccessful', (data) => { - // setLoginStatus(`Login failed: ${data.error}`); - // }); - - // const loggedOffUnsubscribe = steamConnection.addEventListener('logged-off', (data) => { - // setLoginStatus(`Logged out of Steam: ${data.reason}`); - // setUserData(null); - // }); - - // onCleanup(() => { - // urlUnsubscribe(); - // loginAttemptUnsubscribe(); - // loginSuccessUnsubscribe(); - // loginUnsuccessfulUnsubscribe(); - // loggedOffUnsubscribe(); - // steamConnection.disconnect(); - // }); - // }) - return ( <> -
+
- - - - - - - - - - - - Sign in to your Steam account - Use your Steam Mobile App to sign in via QR code. Learn More - + {/* - */} - {/* + + + + + - - - - + + + + + + Team Mate Suggestions + Invite people to join your team and play together + + + Wanjohi Ryan + From your Steam Friends + Invite + + + + Tracy Jones + From your Steam Friends + Invite + + + + The65th + From your Steam Friends + Invite + + + + Menstral + From your Steam Friends + Invite + + + + AstroHot + From your Steam Friends + Invite + + - Games we think you will like - - - - + Your Steam library + These titles from your Steam Library are fully functional on Nestri +
+ + + + Alan Wake II + Action, Adventure, Horror + + Install + + + + + Slime Rancher 2 + Action, Adventure, Casual, Indie + + Install + + + + + Doom Eternal + Action + + Install + +
+
+ + + + Dead Space + Action, Adventure + + Update + + + + + Hi-Fi Rush + Action + + Install + + + + + Baldur's Gate 3 + Adventure, RPG, Strategy + + Install + +
-
*/} +
*/}
) -} \ No newline at end of file +} + +/* + + + + +*/ + diff --git a/packages/www/src/providers/api.tsx b/packages/www/src/providers/api.tsx index 1073cf2f..21fec120 100644 --- a/packages/www/src/providers/api.tsx +++ b/packages/www/src/providers/api.tsx @@ -6,7 +6,7 @@ import { createInitializedContext } from "@nestri/www/common/context"; export const { use: useApi, provider: ApiProvider } = createInitializedContext( - "Api", + "ApiContext", () => { const team = useTeam(); const auth = useOpenAuth(); diff --git a/packages/www/src/providers/steam.tsx b/packages/www/src/providers/steam.tsx index d13fe87b..06842870 100644 --- a/packages/www/src/providers/steam.tsx +++ b/packages/www/src/providers/steam.tsx @@ -4,23 +4,31 @@ import { useOpenAuth } from "@openauthjs/solid"; import { createSignal, onCleanup } from "solid-js"; import { createInitializedContext } from "../common/context"; +// Global connection state to prevent multiple instances +let globalEventSource: EventSource | null = null; +let globalReconnectAttempts = 0; +const MAX_RECONNECT_ATTEMPTS = 1; +let isConnecting = false; +let activeConnection: SteamConnection | null = null; + +// FIXME: The redo button is not working as expected... it does not reinitialise the connection + // Type definitions for the events interface SteamEventTypes { - 'url': string; - 'login-attempt': { username: string }; - 'login-success': { username: string; steamId: string }; - 'login-unsuccessful': { error: string }; - 'logged-off': { reason: string }; + 'connected': { sessionID: string }; + 'challenge': { sessionID: string; url: string }; + 'error': { message: string }; + 'completed': { sessionID: string }; } // Type for the connection type SteamConnection = { addEventListener: ( - event: T, + event: T, callback: (data: SteamEventTypes[T]) => void ) => () => void; removeEventListener: ( - event: T, + event: T, callback: (data: SteamEventTypes[T]) => void ) => void; disconnect: () => void; @@ -30,74 +38,67 @@ type SteamConnection = { interface SteamContext { ready: boolean; client: { - // Regular API endpoints - whoami: () => Promise; - games: () => Promise; // SSE connection for login login: { - connect: () => SteamConnection; + connect: () => Promise; }; }; } // Create the initialized context export const { use: useSteam, provider: SteamProvider } = createInitializedContext( - "Steam", + "SteamContext", () => { const team = useTeam(); const auth = useOpenAuth(); // Create the HTTP client for regular endpoints const client = { - // Regular HTTP endpoints - whoami: async () => { - const token = await auth.access(); - const response = await fetch(`${import.meta.env.VITE_STEAM_URL}/whoami`, { - headers: { - 'Authorization': `Bearer ${token}`, - 'x-nestri-team': team().id - } - }); - return response.json(); - }, - - games: async () => { - const token = await auth.access(); - const response = await fetch(`${import.meta.env.VITE_STEAM_URL}/games`, { - headers: { - 'Authorization': `Bearer ${token}`, - 'x-nestri-team': team().id - } - }); - return response.json(); - }, - // SSE connection factory for login login: { connect: async (): Promise => { - let eventSource: EventSource | null = null; + // Return existing connection if active + if (activeConnection && globalEventSource && globalEventSource.readyState !== 2) { + return activeConnection; + } + + // Prevent multiple simultaneous connection attempts + if (isConnecting) { + console.log("Connection attempt already in progress, waiting..."); + // Wait for existing connection attempt to finish + return new Promise((resolve) => { + const checkInterval = setInterval(() => { + if (!isConnecting && activeConnection) { + clearInterval(checkInterval); + resolve(activeConnection); + } + }, 100); + }); + } + + isConnecting = true; + const [isConnected, setIsConnected] = createSignal(false); - + // Store event listeners const listeners: Record void>> = { - 'url': [], - 'login-attempt': [], - 'login-success': [], - 'login-unsuccessful': [], - 'logged-off': [] + 'connected': [], + 'challenge': [], + 'error': [], + 'completed': [] }; // Method to add event listeners const addEventListener = ( - event: T, + event: T, callback: (data: SteamEventTypes[T]) => void ) => { if (!listeners[event]) { listeners[event] = []; } - + listeners[event].push(callback as any); - + // Return a function to remove this specific listener return () => { removeEventListener(event, callback); @@ -106,7 +107,7 @@ export const { use: useSteam, provider: SteamProvider } = createInitializedConte // Method to remove event listeners const removeEventListener = ( - event: T, + event: T, callback: (data: SteamEventTypes[T]) => void ) => { if (listeners[event]) { @@ -117,16 +118,39 @@ export const { use: useSteam, provider: SteamProvider } = createInitializedConte } }; + // Handle notifying listeners safely + const notifyListeners = (eventType: string, data: any) => { + if (listeners[eventType]) { + listeners[eventType].forEach(callback => { + try { + callback(data); + } catch (error) { + console.error(`Error in ${eventType} event handler:`, error); + } + }); + } + }; + // Initialize connection const initConnection = async () => { - if (eventSource) { - eventSource.close(); + if (globalReconnectAttempts >= MAX_RECONNECT_ATTEMPTS) { + console.log(`Maximum reconnection attempts (${MAX_RECONNECT_ATTEMPTS}) reached. Giving up.`); + notifyListeners('error', { message: 'Connection to Steam authentication failed after multiple attempts' }); + isConnecting = false; + disconnect() + return; + } + + if (globalEventSource) { + globalEventSource.close(); + globalEventSource = null; } try { const token = await auth.access(); - eventSource = new EventSource(`${import.meta.env.VITE_STEAM_URL}/login`, { + // Create new EventSource connection + globalEventSource = new EventSource(`${import.meta.env.VITE_API_URL}/steam/login`, { fetch: (input, init) => fetch(input, { ...init, @@ -138,59 +162,74 @@ export const { use: useSteam, provider: SteamProvider } = createInitializedConte }), }); - eventSource.onopen = () => { + globalEventSource.onopen = () => { console.log('Connected to Steam login stream'); setIsConnected(true); + globalReconnectAttempts = 0; // Reset reconnect counter on successful connection + isConnecting = false; }; // Set up event handlers for all specific events - ['url', 'login-attempt', 'login-success', 'login-unsuccessful', 'logged-off'].forEach((eventType) => { - eventSource!.addEventListener(eventType, (event) => { + ['connected', 'challenge', 'completed'].forEach((eventType) => { + globalEventSource!.addEventListener(eventType, (event) => { try { const data = JSON.parse(event.data); console.log(`Received ${eventType} event:`, data); - - // Notify all registered listeners for this event type - if (listeners[eventType]) { - listeners[eventType].forEach(callback => { - callback(data); - }); - } + notifyListeners(eventType, data); } catch (error) { console.error(`Error parsing ${eventType} event data:`, error); } }); }); - // Handle generic messages (fallback) - eventSource.onmessage = (event) => { - console.log('Received generic message:', event.data); - }; - - eventSource.onerror = (error) => { - console.error('Steam login stream error:', error); + // Handle connection errors (this is different from server-sent 'error' events) + globalEventSource.onerror = (error) => { + console.error('Steam login stream connection error:', error); setIsConnected(false); - // Attempt to reconnect after a delay - setTimeout(initConnection, 5000); + + // Close the connection to prevent automatic browser reconnect + if (globalEventSource) { + globalEventSource.close(); + } + + // Check if we should attempt to reconnect + if (globalReconnectAttempts <= MAX_RECONNECT_ATTEMPTS) { + const currentAttempt = globalReconnectAttempts + 1; + console.log(`Reconnecting (attempt ${currentAttempt}/${MAX_RECONNECT_ATTEMPTS})...`); + globalReconnectAttempts = currentAttempt; + + // Exponential backoff for reconnection + const delay = Math.min(1000 * Math.pow(2, globalReconnectAttempts), 30000); + setTimeout(initConnection, delay); + } else { + console.error(`Maximum reconnection attempts (${MAX_RECONNECT_ATTEMPTS}) reached`); + // Notify listeners about connection failure + notifyListeners('error', { message: 'Connection to Steam authentication failed after multiple attempts' }); + disconnect(); + isConnecting = false; + } }; } catch (error) { console.error('Failed to connect to Steam login stream:', error); setIsConnected(false); + isConnecting = false; } }; // Disconnection function const disconnect = () => { - if (eventSource) { - eventSource.close(); - eventSource = null; + if (globalEventSource) { + globalEventSource.close(); + globalEventSource = null; setIsConnected(false); console.log('Disconnected from Steam login stream'); - + // Clear all listeners Object.keys(listeners).forEach(key => { listeners[key] = []; }); + + activeConnection = null; } }; @@ -205,9 +244,17 @@ export const { use: useSteam, provider: SteamProvider } = createInitializedConte isConnected: () => isConnected() }; + // Store the active connection + activeConnection = connection; + // Clean up on context destruction onCleanup(() => { - disconnect(); + // Instead of disconnecting on cleanup, we'll leave the connection + // active for other components to use + // Only disconnect if no components are using it + if (!isConnected()) { + disconnect(); + } }); return connection; diff --git a/packages/www/src/sst-env.d.ts b/packages/www/src/sst-env.d.ts index d8318d4f..884d4914 100644 --- a/packages/www/src/sst-env.d.ts +++ b/packages/www/src/sst-env.d.ts @@ -7,7 +7,6 @@ interface ImportMetaEnv { readonly VITE_STAGE: string readonly VITE_AUTH_URL: string readonly VITE_ZERO_URL: string - readonly VITE_STEAM_URL: string } interface ImportMeta { readonly env: ImportMetaEnv diff --git a/packages/www/src/ui/custom-qr.tsx b/packages/www/src/ui/custom-qr.tsx index 5d333992..ba817b1c 100644 --- a/packages/www/src/ui/custom-qr.tsx +++ b/packages/www/src/ui/custom-qr.tsx @@ -28,6 +28,22 @@ type Props = { imageBackground?: string; }; +/** + * Renders an SVG element displaying a QR code generated from a URI. + * + * This component creates a QR code matrix based on the provided URI and error correction level, then renders + * the QR code using SVG elements. It highlights finder patterns and conditionally renders QR code dots, + * while optionally embedding a logo in the center with a specified background and an adjustable clear area. + * + * @param ecl - The error correction level for the QR code (defaults to 'M'). + * @param size - The overall size (in pixels) of the QR code, including margins (defaults to 200). + * @param uri - The URI to encode into the QR code. + * @param clearArea - When true, reserves extra space in the QR code for an embedded logo. + * @param image - An optional JSX element to render as a central logo within the QR code. + * @param imageBackground - The background color for the logo area (defaults to 'transparent'). + * + * @returns An SVG element representing the generated QR code. + */ export function QRCode({ ecl = 'M', size: sizeProp = 200, @@ -36,7 +52,7 @@ export function QRCode({ image, imageBackground = 'transparent', }: Props) { - const logoSize = clearArea ? 32 : 0; + const logoSize = clearArea ? 38 : 0; const size = sizeProp - 10 * 2; const dots = createMemo(() => { @@ -115,7 +131,6 @@ export function QRCode({ (i < 7 && j > matrix.length - 8) ) ) { - //if (image && i > matrix.length - 9 && j > matrix.length - 9) return; if ( image || !( diff --git a/packages/www/vite.config.ts b/packages/www/vite.config.ts index 559e6998..089f7cba 100644 --- a/packages/www/vite.config.ts +++ b/packages/www/vite.config.ts @@ -4,7 +4,6 @@ import solidPlugin from "vite-plugin-solid"; import { macaronVitePlugin } from "@macaron-css/vite"; export default defineConfig({ - //@ts-expect-error plugins: [macaronVitePlugin(), solidPlugin()], server: { port: 3000, diff --git a/sst-env.d.ts b/sst-env.d.ts index 4f8d03e1..ccf1988a 100644 --- a/sst-env.d.ts +++ b/sst-env.d.ts @@ -7,22 +7,15 @@ import "sst" declare module "sst" { export interface Resource { "Api": { - "type": "sst.aws.Router" - "url": string - } - "ApiFn": { - "name": string - "type": "sst.aws.Function" + "service": string + "type": "sst.aws.Service" "url": string } "Auth": { - "type": "sst.aws.Auth" + "service": string + "type": "sst.aws.Service" "url": string } - "AuthFingerprintKey": { - "type": "random.index/randomString.RandomString" - "value": string - } "Bus": { "arn": string "name": string @@ -73,21 +66,10 @@ declare module "sst" { "endpoint": string "type": "sst.aws.Realtime" } - "Steam": { - "service": string - "type": "sst.aws.Service" - "url": string - } "Storage": { "name": string "type": "sst.aws.Bucket" } - "Urls": { - "api": string - "auth": string - "site": string - "type": "sst.sst.Linkable" - } "VPC": { "bastion": string "type": "sst.aws.Vpc" diff --git a/sst.config.ts b/sst.config.ts index 3bff7ab7..fd03d863 100644 --- a/sst.config.ts +++ b/sst.config.ts @@ -1,5 +1,4 @@ /// -// import { readdirSync } from "fs"; export default $config({ app(input) { return {