From 960ea890849af9841c2ebdfb9788663002f8a9d7 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Wed, 11 Feb 2026 12:58:55 +0000 Subject: [PATCH 1/3] Fix Unauthorized error and implement ENABLE_AUTH logic Co-authored-by: ngoiyaeric <115367894+ngoiyaeric@users.noreply.github.com> --- .env | 3 +- app/auth/auth-client-page.tsx | 63 ++++++ app/auth/page.tsx | 68 +----- app/page.tsx | 10 +- app/search/[id]/page.tsx | 16 +- bun.lock | 368 ++++++++++++++++----------------- lib/actions/chat.ts | 13 +- lib/actions/users.ts | 24 +++ lib/auth/get-current-user.ts | 93 +++------ lib/auth/use-current-user.ts | 21 +- lib/db/index.ts | 16 +- lib/db/migrate.ts | 2 +- lib/supabase/browser-client.ts | 13 +- lib/supabase/client.ts | 18 +- middleware.ts | 40 ++-- next-env.d.ts | 2 +- 16 files changed, 410 insertions(+), 360 deletions(-) create mode 100644 app/auth/auth-client-page.tsx diff --git a/.env b/.env index a146a1f7..5f3bff47 100644 --- a/.env +++ b/.env @@ -1,8 +1,9 @@ AUTH_DISABLED_FOR_DEV=false -DATABASE_URL="postgresql://user:password@host:port/db" +DATABASE_URL=postgresql://postgres:postgres@localhost:5432/postgres SERVER_ACTIONS_ALLOWED_ORIGINS=* STANDARD_TIER_BILLING_CYCLE="yearly" STANDARD_TIER_CREDITS=500 STANDARD_TIER_MONTHLY_PRICE=500 STANDARD_TIER_PRICE_ID="price_standard_500_yearly" ENABLE_SHARE=true +ENABLE_AUTH=true diff --git a/app/auth/auth-client-page.tsx b/app/auth/auth-client-page.tsx new file mode 100644 index 00000000..9a81fa7a --- /dev/null +++ b/app/auth/auth-client-page.tsx @@ -0,0 +1,63 @@ +"use client" + +export const dynamic = 'force-dynamic' + +import Image from "next/image" +import { AuthPage } from "@/components/auth" +import { useAuth } from "@/lib/auth/v0" + +function Logo() { + return ( +
+ QCX Logo + QCX +
+ ) +} + +function ArtPanel() { + return ( +
+ Abstract art +
+ ) +} + +export function AuthClientPage() { + const { + isLoading, + error, + magicLinkSent, + magicLinkEmail, + handleGoogleSignIn, + handleMagicLink, + resetError, + resetMagicLink, + } = useAuth({ + // Optional callbacks for additional handling + onMagicLinkSent: (email) => { + console.log("Magic link sent to:", email) + }, + onError: (error) => { + console.error("Auth error:", error) + }, + }) + + return ( + } + onGoogleSignIn={handleGoogleSignIn} + onMagicLinkSubmit={handleMagicLink} + showGitHub={false} + decorativePanel={} + isLoading={isLoading} + error={error} + magicLinkSent={magicLinkSent} + magicLinkEmail={magicLinkEmail} + onResetMagicLink={resetMagicLink} + onResetError={resetError} + /> + ) +} diff --git a/app/auth/page.tsx b/app/auth/page.tsx index 7641d841..9be0c54a 100644 --- a/app/auth/page.tsx +++ b/app/auth/page.tsx @@ -1,63 +1,17 @@ -"use client" +import { getCurrentUserIdOnServer } from "@/lib/auth/get-current-user" +import { redirect } from "next/navigation" +import { AuthClientPage } from "./auth-client-page" export const dynamic = 'force-dynamic' -import Image from "next/image" -import { AuthPage } from "@/components/auth" -import { useAuth } from "@/lib/auth/v0" +export default async function LoginPage() { + const userId = await getCurrentUserIdOnServer() + const isAuthEnabled = process.env.ENABLE_AUTH === 'true' -function Logo() { - return ( -
- QCX Logo - QCX -
- ) -} - -function ArtPanel() { - return ( -
- Abstract art -
- ) -} - -export default function LoginPage() { - const { - isLoading, - error, - magicLinkSent, - magicLinkEmail, - handleGoogleSignIn, - handleMagicLink, - resetError, - resetMagicLink, - } = useAuth({ - // Optional callbacks for additional handling - onMagicLinkSent: (email) => { - console.log("Magic link sent to:", email) - }, - onError: (error) => { - console.error("Auth error:", error) - }, - }) + // If auth is disabled, redirect to home as we are always "logged in" as anonymous user + if (!isAuthEnabled && userId) { + redirect('/') + } - return ( - } - onGoogleSignIn={handleGoogleSignIn} - onMagicLinkSubmit={handleMagicLink} - showGitHub={false} - decorativePanel={} - isLoading={isLoading} - error={error} - magicLinkSent={magicLinkSent} - magicLinkEmail={magicLinkEmail} - onResetMagicLink={resetMagicLink} - onResetError={resetError} - /> - ) + return } diff --git a/app/page.tsx b/app/page.tsx index 141e1742..9b0bec07 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,20 +1,24 @@ import { Chat } from '@/components/chat' import { nanoid } from '@/lib/utils' import { AI } from './actions' -import { getCurrentUserIdOnServer } from '@/lib/auth/get-current-user' +import { getCurrentUserIdOnServer, getSupabaseUserAndSessionOnServer } from '@/lib/auth/get-current-user' import { redirect } from 'next/navigation' import { MapDataProvider } from '@/components/map/map-data-context' +import { ensureUserExists } from '@/lib/actions/users' export const maxDuration = 60 export const dynamic = 'force-dynamic' export default async function Page() { - const userId = await getCurrentUserIdOnServer() + const { user } = await getSupabaseUserAndSessionOnServer() - if (!userId) { + if (!user) { redirect('/auth') } + // Ensure user exists in public.users table for FK constraints + await ensureUserExists(user.id, user.email) + const id = nanoid() return ( diff --git a/app/search/[id]/page.tsx b/app/search/[id]/page.tsx index 4fcb5356..b07f79bf 100644 --- a/app/search/[id]/page.tsx +++ b/app/search/[id]/page.tsx @@ -3,7 +3,8 @@ import { Chat } from '@/components/chat'; import { getChat, getChatMessages } from '@/lib/actions/chat'; import { AI } from '@/app/actions'; import { MapDataProvider } from '@/components/map/map-data-context'; -import { getCurrentUserIdOnServer } from '@/lib/auth/get-current-user'; +import { getSupabaseUserAndSessionOnServer } from '@/lib/auth/get-current-user'; +import { ensureUserExists } from '@/lib/actions/users'; import type { AIMessage } from '@/lib/types'; export const maxDuration = 60; @@ -14,8 +15,8 @@ export interface SearchPageProps { export async function generateMetadata({ params }: SearchPageProps) { const { id } = await params; - const userId = await getCurrentUserIdOnServer(); - const chat = await getChat(id, userId); + const { user } = await getSupabaseUserAndSessionOnServer(); + const chat = await getChat(id, user?.id); return { title: chat?.title?.toString().slice(0, 50) || 'Search', }; @@ -23,13 +24,16 @@ export async function generateMetadata({ params }: SearchPageProps) { export default async function SearchPage({ params }: SearchPageProps) { const { id } = await params; - const userId = await getCurrentUserIdOnServer(); + const { user } = await getSupabaseUserAndSessionOnServer(); - if (!userId) { + if (!user) { redirect('/'); } - const chat = await getChat(id, userId); + // Ensure user exists + await ensureUserExists(user.id, user.email); + + const chat = await getChat(id, user.id); if (!chat) { notFound(); diff --git a/bun.lock b/bun.lock index 99559714..5df0b487 100644 --- a/bun.lock +++ b/bun.lock @@ -61,11 +61,7 @@ "lottie-react": "^2.4.1", "lucide-react": "^0.507.0", "mapbox-gl": "^3.11.0", -<<<<<<< HEAD "next": "^16.0.10", -======= - "next": "15.3.8", ->>>>>>> origin/main "next-themes": "^0.3.0", "open-codex": "^0.1.30", "pg": "^8.16.2", @@ -147,27 +143,27 @@ "@aws-crypto/util": ["@aws-crypto/util@5.2.0", "", { "dependencies": { "@aws-sdk/types": "^3.222.0", "@smithy/util-utf8": "^2.0.0", "tslib": "^2.6.2" } }, "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ=="], - "@aws-sdk/client-bedrock-runtime": ["@aws-sdk/client-bedrock-runtime@3.984.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/credential-provider-node": "^3.972.5", "@aws-sdk/eventstream-handler-node": "^3.972.5", "@aws-sdk/middleware-eventstream": "^3.972.3", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/middleware-websocket": "^3.972.5", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/token-providers": "3.984.0", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.984.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.4", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.0", "@smithy/eventstream-serde-browser": "^4.2.8", "@smithy/eventstream-serde-config-resolver": "^4.3.8", "@smithy/eventstream-serde-node": "^4.2.8", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.12", "@smithy/middleware-retry": "^4.4.29", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.28", "@smithy/util-defaults-mode-node": "^4.2.31", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-stream": "^4.5.10", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-iFrdkDXdo+ELZ5qD8ZYw9MHoOhcXyVutO8z7csnYpJO0rbET/X6B8cQlOCMsqJHxkyMwW21J4vt9S5k2/FgPCg=="], + "@aws-sdk/client-bedrock-runtime": ["@aws-sdk/client-bedrock-runtime@3.987.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/credential-provider-node": "^3.972.6", "@aws-sdk/eventstream-handler-node": "^3.972.5", "@aws-sdk/middleware-eventstream": "^3.972.3", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/middleware-websocket": "^3.972.6", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/token-providers": "3.987.0", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.987.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.5", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.1", "@smithy/eventstream-serde-browser": "^4.2.8", "@smithy/eventstream-serde-config-resolver": "^4.3.8", "@smithy/eventstream-serde-node": "^4.2.8", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-retry": "^4.4.30", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.9", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.29", "@smithy/util-defaults-mode-node": "^4.2.32", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-stream": "^4.5.11", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-eUy4k+qnKRRWNlLxsJ7j0PvZvqcT+oiqP0zeKCW3Adorw+dONCd7jFX0uw7SLTx8LUUkZTOeMlW3qbIOUV4kiw=="], - "@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.982.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.982.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.4", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.0", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.12", "@smithy/middleware-retry": "^4.4.29", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.28", "@smithy/util-defaults-mode-node": "^4.2.31", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-qJrIiivmvujdGqJ0ldSUvhN3k3N7GtPesoOI1BSt0fNXovVnMz4C/JmnkhZihU7hJhDvxJaBROLYTU+lpild4w=="], + "@aws-sdk/client-sso": ["@aws-sdk/client-sso@3.985.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.985.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.5", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-retry": "^4.4.30", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.9", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.29", "@smithy/util-defaults-mode-node": "^4.2.32", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-81J8iE8MuXhdbMfIz4sWFj64Pe41bFi/uqqmqOC5SlGv+kwoyLsyKS/rH2tW2t5buih4vTUxskRjxlqikTD4oQ=="], - "@aws-sdk/core": ["@aws-sdk/core@3.973.6", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@aws-sdk/xml-builder": "^3.972.4", "@smithy/core": "^3.22.0", "@smithy/node-config-provider": "^4.3.8", "@smithy/property-provider": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/signature-v4": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-middleware": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-pz4ZOw3BLG0NdF25HoB9ymSYyPbMiIjwQJ2aROXRhAzt+b+EOxStfFv8s5iZyP6Kiw7aYhyWxj5G3NhmkoOTKw=="], + "@aws-sdk/core": ["@aws-sdk/core@3.973.7", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@aws-sdk/xml-builder": "^3.972.4", "@smithy/core": "^3.22.1", "@smithy/node-config-provider": "^4.3.8", "@smithy/property-provider": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/signature-v4": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-middleware": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-wNZZQQNlJ+hzD49cKdo+PY6rsTDElO8yDImnrI69p2PLBa7QomeUKAJWYp9xnaR38nlHqWhMHZuYLCQ3oSX+xg=="], - "@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.972.4", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-/8dnc7+XNMmViEom2xsNdArQxQPSgy4Z/lm6qaFPTrMFesT1bV3PsBhb19n09nmxHdrtQskYmViddUIjUQElXg=="], + "@aws-sdk/credential-provider-env": ["@aws-sdk/credential-provider-env@3.972.5", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-LxJ9PEO4gKPXzkufvIESUysykPIdrV7+Ocb9yAhbhJLE4TiAYqbCVUE+VuKP1leGR1bBfjWjYgSV5MxprlX3mQ=="], - "@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.972.6", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/types": "^3.973.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/node-http-handler": "^4.4.8", "@smithy/property-provider": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/util-stream": "^4.5.10", "tslib": "^2.6.2" } }, "sha512-5ERWqRljiZv44AIdvIRQ3k+EAV0Sq2WeJHvXuK7gL7bovSxOf8Al7MLH7Eh3rdovH4KHFnlIty7J71mzvQBl5Q=="], + "@aws-sdk/credential-provider-http": ["@aws-sdk/credential-provider-http@3.972.7", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/types": "^3.973.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/node-http-handler": "^4.4.9", "@smithy/property-provider": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/util-stream": "^4.5.11", "tslib": "^2.6.2" } }, "sha512-L2uOGtvp2x3bTcxFTpSM+GkwFIPd8pHfGWO1764icMbo7e5xJh0nfhx1UwkXLnwvocTNEf8A7jISZLYjUSNaTg=="], - "@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.972.4", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/credential-provider-env": "^3.972.4", "@aws-sdk/credential-provider-http": "^3.972.6", "@aws-sdk/credential-provider-login": "^3.972.4", "@aws-sdk/credential-provider-process": "^3.972.4", "@aws-sdk/credential-provider-sso": "^3.972.4", "@aws-sdk/credential-provider-web-identity": "^3.972.4", "@aws-sdk/nested-clients": "3.982.0", "@aws-sdk/types": "^3.973.1", "@smithy/credential-provider-imds": "^4.2.8", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-eRUg+3HaUKuXWn/lEMirdiA5HOKmEl8hEHVuszIDt2MMBUKgVX5XNGmb3XmbgU17h6DZ+RtjbxQpjhz3SbTjZg=="], + "@aws-sdk/credential-provider-ini": ["@aws-sdk/credential-provider-ini@3.972.5", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/credential-provider-env": "^3.972.5", "@aws-sdk/credential-provider-http": "^3.972.7", "@aws-sdk/credential-provider-login": "^3.972.5", "@aws-sdk/credential-provider-process": "^3.972.5", "@aws-sdk/credential-provider-sso": "^3.972.5", "@aws-sdk/credential-provider-web-identity": "^3.972.5", "@aws-sdk/nested-clients": "3.985.0", "@aws-sdk/types": "^3.973.1", "@smithy/credential-provider-imds": "^4.2.8", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-SdDTYE6jkARzOeL7+kudMIM4DaFnP5dZVeatzw849k4bSXDdErDS188bgeNzc/RA2WGrlEpsqHUKP6G7sVXhZg=="], - "@aws-sdk/credential-provider-login": ["@aws-sdk/credential-provider-login@3.972.4", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/nested-clients": "3.982.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-nLGjXuvWWDlQAp505xIONI7Gam0vw2p7Qu3P6on/W2q7rjJXtYjtpHbcsaOjJ/pAju3eTvEQuSuRedcRHVQIAQ=="], + "@aws-sdk/credential-provider-login": ["@aws-sdk/credential-provider-login@3.972.5", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/nested-clients": "3.985.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-uYq1ILyTSI6ZDCMY5+vUsRM0SOCVI7kaW4wBrehVVkhAxC6y+e9rvGtnoZqCOWL1gKjTMouvsf4Ilhc5NCg1Aw=="], - "@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.972.5", "", { "dependencies": { "@aws-sdk/credential-provider-env": "^3.972.4", "@aws-sdk/credential-provider-http": "^3.972.6", "@aws-sdk/credential-provider-ini": "^3.972.4", "@aws-sdk/credential-provider-process": "^3.972.4", "@aws-sdk/credential-provider-sso": "^3.972.4", "@aws-sdk/credential-provider-web-identity": "^3.972.4", "@aws-sdk/types": "^3.973.1", "@smithy/credential-provider-imds": "^4.2.8", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-VWXKgSISQCI2GKN3zakTNHSiZ0+mux7v6YHmmbLQp/o3fvYUQJmKGcLZZzg2GFA+tGGBStplra9VFNf/WwxpYg=="], + "@aws-sdk/credential-provider-node": ["@aws-sdk/credential-provider-node@3.972.6", "", { "dependencies": { "@aws-sdk/credential-provider-env": "^3.972.5", "@aws-sdk/credential-provider-http": "^3.972.7", "@aws-sdk/credential-provider-ini": "^3.972.5", "@aws-sdk/credential-provider-process": "^3.972.5", "@aws-sdk/credential-provider-sso": "^3.972.5", "@aws-sdk/credential-provider-web-identity": "^3.972.5", "@aws-sdk/types": "^3.973.1", "@smithy/credential-provider-imds": "^4.2.8", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-DZ3CnAAtSVtVz+G+ogqecaErMLgzph4JH5nYbHoBMgBkwTUV+SUcjsjOJwdBJTHu3Dm6l5LBYekZoU2nDqQk2A=="], - "@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.972.4", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-TCZpWUnBQN1YPk6grvd5x419OfXjHvhj5Oj44GYb84dOVChpg/+2VoEj+YVA4F4E/6huQPNnX7UYbTtxJqgihw=="], + "@aws-sdk/credential-provider-process": ["@aws-sdk/credential-provider-process@3.972.5", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-HDKF3mVbLnuqGg6dMnzBf1VUOywE12/N286msI9YaK9mEIzdsGCtLTvrDhe3Up0R9/hGFbB+9l21/TwF5L1C6g=="], - "@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.972.4", "", { "dependencies": { "@aws-sdk/client-sso": "3.982.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/token-providers": "3.982.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-wzsGwv9mKlwJ3vHLyembBvGE/5nPUIwRR2I51B1cBV4Cb4ql9nIIfpmHzm050XYTY5fqTOKJQnhLj7zj89VG8g=="], + "@aws-sdk/credential-provider-sso": ["@aws-sdk/credential-provider-sso@3.972.5", "", { "dependencies": { "@aws-sdk/client-sso": "3.985.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/token-providers": "3.985.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-8urj3AoeNeQisjMmMBhFeiY2gxt6/7wQQbEGun0YV/OaOOiXrIudTIEYF8ZfD+NQI6X1FY5AkRsx6O/CaGiybA=="], - "@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.972.4", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/nested-clients": "3.982.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-hIzw2XzrG8jzsUSEatehmpkd5rWzASg5IHUfA+m01k/RtvfAML7ZJVVohuKdhAYx+wV2AThLiQJVzqn7F0khrw=="], + "@aws-sdk/credential-provider-web-identity": ["@aws-sdk/credential-provider-web-identity@3.972.5", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/nested-clients": "3.985.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-OK3cULuJl6c+RcDZfPpaK5o3deTOnKZbxm7pzhFNGA3fI2hF9yDih17fGRazJzGGWaDVlR9ejZrpDef4DJCEsw=="], "@aws-sdk/eventstream-handler-node": ["@aws-sdk/eventstream-handler-node@3.972.5", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/eventstream-codec": "^4.2.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-xEmd3dnyn83K6t4AJxBJA63wpEoCD45ERFG0XMTViD2E/Ohls9TLxjOWPb1PAxR9/46cKy/TImez1GoqP6xVNQ=="], @@ -179,19 +175,19 @@ "@aws-sdk/middleware-recursion-detection": ["@aws-sdk/middleware-recursion-detection@3.972.3", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@aws/lambda-invoke-store": "^0.2.2", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-PY57QhzNuXHnwbJgbWYTrqIDHYSeOlhfYERTAuc16LKZpTZRJUjzBFokp9hF7u1fuGeE3D70ERXzdbMBOqQz7Q=="], - "@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.972.6", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.982.0", "@smithy/core": "^3.22.0", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-TehLN8W/kivl0U9HcS+keryElEWORROpghDXZBLfnb40DXM7hx/i+7OOjkogXQOF3QtUraJVRkHQ07bPhrWKlw=="], + "@aws-sdk/middleware-user-agent": ["@aws-sdk/middleware-user-agent@3.972.7", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.985.0", "@smithy/core": "^3.22.1", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-HUD+geASjXSCyL/DHPQc/Ua7JhldTcIglVAoCV8kiVm99IaFSlAbTvEnyhZwdE6bdFyTL+uIaWLaCFSRsglZBQ=="], - "@aws-sdk/middleware-websocket": ["@aws-sdk/middleware-websocket@3.972.5", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-format-url": "^3.972.3", "@smithy/eventstream-codec": "^4.2.8", "@smithy/eventstream-serde-browser": "^4.2.8", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/protocol-http": "^5.3.8", "@smithy/signature-v4": "^5.3.8", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-hex-encoding": "^4.2.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-BN4A9K71WRIlpQ3+IYGdBC2wVyobZ95g6ZomodmJ8Te772GWo0iDk2Mv6JIHdr842tOTgi1b3npLIFDUS4hl4g=="], + "@aws-sdk/middleware-websocket": ["@aws-sdk/middleware-websocket@3.972.6", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-format-url": "^3.972.3", "@smithy/eventstream-codec": "^4.2.8", "@smithy/eventstream-serde-browser": "^4.2.8", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/protocol-http": "^5.3.8", "@smithy/signature-v4": "^5.3.8", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-hex-encoding": "^4.2.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-1DedO6N3m8zQ/vG6twNiHtsdwBgk773VdavLEbB3NXeKZDlzSK1BTviqWwvJdKx5UnIy4kGGP6WWpCEFEt/bhQ=="], - "@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.984.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.984.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.4", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.0", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.12", "@smithy/middleware-retry": "^4.4.29", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.28", "@smithy/util-defaults-mode-node": "^4.2.31", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-E9Os+U9NWFoEJXbTVT8sCi+HMnzmsMA8cuCkvlUUfin/oWewUTnCkB/OwFwiUQ2N7v1oBk+i4ZSsI1PiuOy8/w=="], + "@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.987.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.987.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.5", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-retry": "^4.4.30", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.9", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.29", "@smithy/util-defaults-mode-node": "^4.2.32", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-tfoAZyZfrxAL1Gd6xl6S1Nq7mysBgJPnJIIwT6o4J624UaFVtZ5/7XQa7aj87Yjrje1c1c8Ve2kheUG+GRwK4w=="], "@aws-sdk/region-config-resolver": ["@aws-sdk/region-config-resolver@3.972.3", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/config-resolver": "^4.4.6", "@smithy/node-config-provider": "^4.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-v4J8qYAWfOMcZ4MJUyatntOicTzEMaU7j3OpkRCGGFSL2NgXQ5VbxauIyORA+pxdKZ0qQG2tCQjQjZDlXEC3Ow=="], - "@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.984.0", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/nested-clients": "3.984.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-UJ/+OzZv+4nAQ1bSspCSb4JlYbMB2Adn8CK7hySpKX5sjhRu1bm6w1PqQq59U67LZEKsPdhl1rzcZ7ybK8YQxw=="], + "@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.987.0", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/nested-clients": "3.987.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-vXdEugarrMwgFnxbUskcWYPZH7Gp+bPsFsMPY9NBqbaecrOxVK/ccmGvmxrQFeW3BwUMIGeHQPTVIivQkFRgqQ=="], "@aws-sdk/types": ["@aws-sdk/types@3.973.1", "", { "dependencies": { "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-DwHBiMNOB468JiX6+i34c+THsKHErYUdNQ3HexeXZvVn4zouLjgaS4FejiGSi2HyBuzuyHg7SuOPmjSvoU9NRg=="], - "@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.984.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-9ebjLA0hMKHeVvXEtTDCCOBtwjb0bOXiuUV06HNeVdgAjH6gj4x4Zwt4IBti83TiyTGOCl5YfZqGx4ehVsasbQ=="], + "@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.987.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-rZnZwDq7Pn+TnL0nyS6ryAhpqTZtLtHbJaqfxuHlDX3v/bq0M7Ch/V3qF9dZWaGgsJ2H9xn7/vFOxlnL4fBMcQ=="], "@aws-sdk/util-format-url": ["@aws-sdk/util-format-url@3.972.3", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/querystring-builder": "^4.2.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-n7F2ycckcKFXa01vAsT/SJdjFHfKH9s96QHcs5gn8AaaigASICeME8WdUL9uBp8XV/OVwEt8+6gzn6KFUgQa8g=="], @@ -199,7 +195,7 @@ "@aws-sdk/util-user-agent-browser": ["@aws-sdk/util-user-agent-browser@3.972.3", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "sha512-JurOwkRUcXD/5MTDBcqdyQ9eVedtAsZgw5rBwktsPTN7QtPiS2Ld1jkJepNgYoCufz1Wcut9iup7GJDoIHp8Fw=="], - "@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.972.4", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/types": "^3.973.1", "@smithy/node-config-provider": "^4.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-3WFCBLiM8QiHDfosQq3Py+lIMgWlFWwFQliUHUqwEiRqLnKyhgbU3AKa7AWJF7lW2Oc/2kFNY4MlAYVnVc0i8A=="], + "@aws-sdk/util-user-agent-node": ["@aws-sdk/util-user-agent-node@3.972.5", "", { "dependencies": { "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/types": "^3.973.1", "@smithy/node-config-provider": "^4.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" }, "peerDependencies": { "aws-crt": ">=1.0.0" }, "optionalPeers": ["aws-crt"] }, "sha512-GsUDF+rXyxDZkkJxUsDxnA67FG+kc5W1dnloCFLl6fWzceevsCYzJpASBzT+BPjwUgREE6FngfJYYYMQUY5fZQ=="], "@aws-sdk/xml-builder": ["@aws-sdk/xml-builder@3.972.4", "", { "dependencies": { "@smithy/types": "^4.12.0", "fast-xml-parser": "5.3.4", "tslib": "^2.6.2" } }, "sha512-0zJ05ANfYqI6+rGqj8samZBFod0dPPousBjLEqg8WdxSgbMAkRgLyn81lP215Do0rFJ/17LIXwr7q0yK24mP6Q=="], @@ -441,11 +437,7 @@ "@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.12", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@tybys/wasm-util": "^0.10.0" } }, "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ=="], -<<<<<<< HEAD "@next/env": ["@next/env@16.1.6", "", {}, "sha512-N1ySLuZjnAtN3kFnwhAwPvZah8RJxKasD7x1f8shFqhncnWZn4JMfg37diLNuoHsLAlrDfM3g4mawVdtAG8XLQ=="], -======= - "@next/env": ["@next/env@15.3.8", "", {}, "sha512-SAfHg0g91MQVMPioeFeDjE+8UPF3j3BvHjs8ZKJAUz1BG7eMPvfCKOAgNWJ6s1MLNeP6O2InKQRTNblxPWuq+Q=="], ->>>>>>> origin/main "@next/eslint-plugin-next": ["@next/eslint-plugin-next@16.1.6", "", { "dependencies": { "fast-glob": "3.3.1" } }, "sha512-/Qq3PTagA6+nYVfryAtQ7/9FEr/6YVyvOtl6rZnGsbReGLf0jZU6gkpr1FuChAQpvV46a78p4cmHOVP8mbfSMQ=="], @@ -477,7 +469,7 @@ "@petamoriken/float16": ["@petamoriken/float16@3.9.3", "", {}, "sha512-8awtpHXCx/bNpFt4mt2xdkgtgVvKqty8VbjHI/WWWQuEw+KLzFot3f4+LkQY9YmOtq7A5GdOnqoIC8Pdygjk2g=="], - "@playwright/test": ["@playwright/test@1.58.1", "", { "dependencies": { "playwright": "1.58.1" }, "bin": { "playwright": "cli.js" } }, "sha512-6LdVIUERWxQMmUSSQi0I53GgCBYgM2RpGngCPY7hSeju+VrKjq3lvs7HpJoPbDiY5QM5EYRtRX5fvrinnMAz3w=="], + "@playwright/test": ["@playwright/test@1.58.2", "", { "dependencies": { "playwright": "1.58.2" }, "bin": { "playwright": "cli.js" } }, "sha512-akea+6bHYBBfA9uQqSYmlJXn61cTa+jbO87xVLCWbTqbWadRVmhxlXATaOjOgcBaWU4ePo0wB41KMFv3o35IXA=="], "@radix-ui/number": ["@radix-ui/number@1.1.1", "", {}, "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g=="], @@ -607,7 +599,7 @@ "@smithy/config-resolver": ["@smithy/config-resolver@4.4.6", "", { "dependencies": { "@smithy/node-config-provider": "^4.3.8", "@smithy/types": "^4.12.0", "@smithy/util-config-provider": "^4.2.0", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "tslib": "^2.6.2" } }, "sha512-qJpzYC64kaj3S0fueiu3kXm8xPrR3PcXDPEgnaNMRn0EjNSZFoFjvbUp0YUDsRhN1CB90EnHJtbxWKevnH99UQ=="], - "@smithy/core": ["@smithy/core@3.22.1", "", { "dependencies": { "@smithy/middleware-serde": "^4.2.9", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-middleware": "^4.2.8", "@smithy/util-stream": "^4.5.11", "@smithy/util-utf8": "^4.2.0", "@smithy/uuid": "^1.1.0", "tslib": "^2.6.2" } }, "sha512-x3ie6Crr58MWrm4viHqqy2Du2rHYZjwu8BekasrQx4ca+Y24dzVAwq3yErdqIbc2G3I0kLQA13PQ+/rde+u65g=="], + "@smithy/core": ["@smithy/core@3.23.0", "", { "dependencies": { "@smithy/middleware-serde": "^4.2.9", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-middleware": "^4.2.8", "@smithy/util-stream": "^4.5.12", "@smithy/util-utf8": "^4.2.0", "@smithy/uuid": "^1.1.0", "tslib": "^2.6.2" } }, "sha512-Yq4UPVoQICM9zHnByLmG8632t2M0+yap4T7ANVw482J0W7HW0pOuxwVmeOwzJqX2Q89fkXz0Vybz55Wj2Xzrsg=="], "@smithy/credential-provider-imds": ["@smithy/credential-provider-imds@4.2.8", "", { "dependencies": { "@smithy/node-config-provider": "^4.3.8", "@smithy/property-provider": "^4.2.8", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "tslib": "^2.6.2" } }, "sha512-FNT0xHS1c/CPN8upqbMFP83+ul5YgdisfCfkZ86Jh2NSmnqw/AJ6x5pEogVCTVvSm7j9MopRU89bmDelxuDMYw=="], @@ -631,9 +623,9 @@ "@smithy/middleware-content-length": ["@smithy/middleware-content-length@4.2.8", "", { "dependencies": { "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-RO0jeoaYAB1qBRhfVyq0pMgBoUK34YEJxVxyjOWYZiOKOq2yMZ4MnVXMZCUDenpozHue207+9P5ilTV1zeda0A=="], - "@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.4.13", "", { "dependencies": { "@smithy/core": "^3.22.1", "@smithy/middleware-serde": "^4.2.9", "@smithy/node-config-provider": "^4.3.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-middleware": "^4.2.8", "tslib": "^2.6.2" } }, "sha512-x6vn0PjYmGdNuKh/juUJJewZh7MoQ46jYaJ2mvekF4EesMuFfrl4LaW/k97Zjf8PTCPQmPgMvwewg7eNoH9n5w=="], + "@smithy/middleware-endpoint": ["@smithy/middleware-endpoint@4.4.14", "", { "dependencies": { "@smithy/core": "^3.23.0", "@smithy/middleware-serde": "^4.2.9", "@smithy/node-config-provider": "^4.3.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-middleware": "^4.2.8", "tslib": "^2.6.2" } }, "sha512-FUFNE5KVeaY6U/GL0nzAAHkaCHzXLZcY1EhtQnsAqhD8Du13oPKtMB9/0WK4/LK6a/T5OZ24wPoSShff5iI6Ag=="], - "@smithy/middleware-retry": ["@smithy/middleware-retry@4.4.30", "", { "dependencies": { "@smithy/node-config-provider": "^4.3.8", "@smithy/protocol-http": "^5.3.8", "@smithy/service-error-classification": "^4.2.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/uuid": "^1.1.0", "tslib": "^2.6.2" } }, "sha512-CBGyFvN0f8hlnqKH/jckRDz78Snrp345+PVk8Ux7pnkUCW97Iinse59lY78hBt04h1GZ6hjBN94BRwZy1xC8Bg=="], + "@smithy/middleware-retry": ["@smithy/middleware-retry@4.4.31", "", { "dependencies": { "@smithy/node-config-provider": "^4.3.8", "@smithy/protocol-http": "^5.3.8", "@smithy/service-error-classification": "^4.2.8", "@smithy/smithy-client": "^4.11.3", "@smithy/types": "^4.12.0", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/uuid": "^1.1.0", "tslib": "^2.6.2" } }, "sha512-RXBzLpMkIrxBPe4C8OmEOHvS8aH9RUuCOH++Acb5jZDEblxDjyg6un72X9IcbrGTJoiUwmI7hLypNfuDACypbg=="], "@smithy/middleware-serde": ["@smithy/middleware-serde@4.2.9", "", { "dependencies": { "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-eMNiej0u/snzDvlqRGSN3Vl0ESn3838+nKyVfF2FKNXFbi4SERYT6PR392D39iczngbqqGG0Jl1DlCnp7tBbXQ=="], @@ -641,7 +633,7 @@ "@smithy/node-config-provider": ["@smithy/node-config-provider@4.3.8", "", { "dependencies": { "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-aFP1ai4lrbVlWjfpAfRSL8KFcnJQYfTl5QxLJXY32vghJrDuFyPZ6LtUL+JEGYiFRG1PfPLHLoxj107ulncLIg=="], - "@smithy/node-http-handler": ["@smithy/node-http-handler@4.4.9", "", { "dependencies": { "@smithy/abort-controller": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/querystring-builder": "^4.2.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-KX5Wml5mF+luxm1szW4QDz32e3NObgJ4Fyw+irhph4I/2geXwUy4jkIMUs5ZPGflRBeR6BUkC2wqIab4Llgm3w=="], + "@smithy/node-http-handler": ["@smithy/node-http-handler@4.4.10", "", { "dependencies": { "@smithy/abort-controller": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/querystring-builder": "^4.2.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-u4YeUwOWRZaHbWaebvrs3UhwQwj+2VNmcVCwXcYTvPIuVyM7Ex1ftAj+fdbG/P4AkBwLq/+SKn+ydOI4ZJE9PA=="], "@smithy/property-provider": ["@smithy/property-provider@4.2.8", "", { "dependencies": { "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-EtCTbyIveCKeOXDSWSdze3k612yCPq1YbXsbqX3UHhkOSW8zKsM9NOJG5gTIya0vbY2DIaieG8pKo1rITHYL0w=="], @@ -657,7 +649,7 @@ "@smithy/signature-v4": ["@smithy/signature-v4@5.3.8", "", { "dependencies": { "@smithy/is-array-buffer": "^4.2.0", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "@smithy/util-hex-encoding": "^4.2.0", "@smithy/util-middleware": "^4.2.8", "@smithy/util-uri-escape": "^4.2.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-6A4vdGj7qKNRF16UIcO8HhHjKW27thsxYci+5r/uVRkdcBEkOEiY8OMPuydLX4QHSrJqGHPJzPRwwVTqbLZJhg=="], - "@smithy/smithy-client": ["@smithy/smithy-client@4.11.2", "", { "dependencies": { "@smithy/core": "^3.22.1", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-stack": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "@smithy/util-stream": "^4.5.11", "tslib": "^2.6.2" } }, "sha512-SCkGmFak/xC1n7hKRsUr6wOnBTJ3L22Qd4e8H1fQIuKTAjntwgU8lrdMe7uHdiT2mJAOWA/60qaW9tiMu69n1A=="], + "@smithy/smithy-client": ["@smithy/smithy-client@4.11.3", "", { "dependencies": { "@smithy/core": "^3.23.0", "@smithy/middleware-endpoint": "^4.4.14", "@smithy/middleware-stack": "^4.2.8", "@smithy/protocol-http": "^5.3.8", "@smithy/types": "^4.12.0", "@smithy/util-stream": "^4.5.12", "tslib": "^2.6.2" } }, "sha512-Q7kY5sDau8OoE6Y9zJoRGgje8P4/UY0WzH8R2ok0PDh+iJ+ZnEKowhjEqYafVcubkbYxQVaqwm3iufktzhprGg=="], "@smithy/types": ["@smithy/types@4.12.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-9YcuJVTOBDjg9LWo23Qp0lTQ3D7fQsQtwle0jVfpbUHy9qBwCEgKuVH4FqFB3VYu0nwdHKiEMA+oXz7oV8X1kw=="], @@ -673,9 +665,9 @@ "@smithy/util-config-provider": ["@smithy/util-config-provider@4.2.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-YEjpl6XJ36FTKmD+kRJJWYvrHeUvm5ykaUS5xK+6oXffQPHeEM4/nXlZPe+Wu0lsgRUcNZiliYNh/y7q9c2y6Q=="], - "@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.3.29", "", { "dependencies": { "@smithy/property-provider": "^4.2.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-nIGy3DNRmOjaYaaKcQDzmWsro9uxlaqUOhZDHQed9MW/GmkBZPtnU70Pu1+GT9IBmUXwRdDuiyaeiy9Xtpn3+Q=="], + "@smithy/util-defaults-mode-browser": ["@smithy/util-defaults-mode-browser@4.3.30", "", { "dependencies": { "@smithy/property-provider": "^4.2.8", "@smithy/smithy-client": "^4.11.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-cMni0uVU27zxOiU8TuC8pQLC1pYeZ/xEMxvchSK/ILwleRd1ugobOcIRr5vXtcRqKd4aBLWlpeBoDPJJ91LQng=="], - "@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.2.32", "", { "dependencies": { "@smithy/config-resolver": "^4.4.6", "@smithy/credential-provider-imds": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/property-provider": "^4.2.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-7dtFff6pu5fsjqrVve0YMhrnzJtccCWDacNKOkiZjJ++fmjGExmmSu341x+WU6Oc1IccL7lDuaUj7SfrHpWc5Q=="], + "@smithy/util-defaults-mode-node": ["@smithy/util-defaults-mode-node@4.2.33", "", { "dependencies": { "@smithy/config-resolver": "^4.4.6", "@smithy/credential-provider-imds": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/property-provider": "^4.2.8", "@smithy/smithy-client": "^4.11.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-LEb2aq5F4oZUSzWBG7S53d4UytZSkOEJPXcBq/xbG2/TmK9EW5naUZ8lKu1BEyWMzdHIzEVN16M3k8oxDq+DJA=="], "@smithy/util-endpoints": ["@smithy/util-endpoints@3.2.8", "", { "dependencies": { "@smithy/node-config-provider": "^4.3.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-8JaVTn3pBDkhZgHQ8R0epwWt+BqPSLCjdjXXusK1onwJlRuN69fbvSK66aIKKO7SwVFM6x2J2ox5X8pOaWcUEw=="], @@ -685,7 +677,7 @@ "@smithy/util-retry": ["@smithy/util-retry@4.2.8", "", { "dependencies": { "@smithy/service-error-classification": "^4.2.8", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-CfJqwvoRY0kTGe5AkQokpURNCT1u/MkRzMTASWMPPo2hNSnKtF1D45dQl3DE2LKLr4m+PW9mCeBMJr5mCAVThg=="], - "@smithy/util-stream": ["@smithy/util-stream@4.5.11", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.3.9", "@smithy/node-http-handler": "^4.4.9", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-buffer-from": "^4.2.0", "@smithy/util-hex-encoding": "^4.2.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-lKmZ0S/3Qj2OF5H1+VzvDLb6kRxGzZHq6f3rAsoSu5cTLGsn3v3VQBA8czkNNXlLjoFEtVu3OQT2jEeOtOE2CA=="], + "@smithy/util-stream": ["@smithy/util-stream@4.5.12", "", { "dependencies": { "@smithy/fetch-http-handler": "^5.3.9", "@smithy/node-http-handler": "^4.4.10", "@smithy/types": "^4.12.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-buffer-from": "^4.2.0", "@smithy/util-hex-encoding": "^4.2.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-D8tgkrmhAX/UNeCZbqbEO3uqyghUnEmmoO9YEvRuwxjlkKKUE7FOgCJnqpTlQPe9MApdWPky58mNQQHbnCzoNg=="], "@smithy/util-uri-escape": ["@smithy/util-uri-escape@4.2.0", "", { "dependencies": { "tslib": "^2.6.2" } }, "sha512-igZpCKV9+E/Mzrpq6YacdTQ0qTiLm85gD6N/IrmyDvQFA4UnU3d5g3m8tMT/6zG/vVkWSU+VxeUyGonL62DuxA=="], @@ -721,235 +713,235 @@ "@tootallnate/once": ["@tootallnate/once@2.0.0", "", {}, "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A=="], - "@turf/along": ["@turf/along@7.3.3", "", { "dependencies": { "@turf/bearing": "7.3.3", "@turf/destination": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-75S6UH13yyRUfpJ2pUnedTPmexHfYX8BD5k++rerCa8DhtEF9DBA+7FtLVLfcsp7sqRY5X5jBLBsKeKKgnmwuQ=="], + "@turf/along": ["@turf/along@7.3.4", "", { "dependencies": { "@turf/bearing": "7.3.4", "@turf/destination": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-PvIoXin0I1t3nRwJz7uqR6fsxDMqdGwJq90qGOeqkNwlZqlF+5o2wKHPwYwi0RXZhLvxRP5qlbNIvV8ADdbWxw=="], - "@turf/angle": ["@turf/angle@7.3.3", "", { "dependencies": { "@turf/bearing": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/rhumb-bearing": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-grshSC7zdpFUlsskNbqSZiR9d+kVupjuDQSvAWdMZw7Ek86eosy+wadXh7cTtQOyaupr3YyQG22FxN1pQSFprg=="], + "@turf/angle": ["@turf/angle@7.3.4", "", { "dependencies": { "@turf/bearing": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/rhumb-bearing": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-235JAfbrNMjHQXQfd/p+fYnlfCHsQsKHda5Eeyc+/jIY0s5mKvhcxgFaOEnigA2q1n+PrVOExs3BViGTKnWhAg=="], - "@turf/area": ["@turf/area@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-FT66TCxUec+3RsCCyO1kWP57/tiEWEqYfpIs5n44dup401Cne/E+xunahEWxMfP/HSUxfcRQqrjH5vEulLrNoA=="], + "@turf/area": ["@turf/area@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-UEQQFw2XwHpozSBAMEtZI3jDsAad4NnHL/poF7/S6zeDCjEBCkt3MYd6DSGH/cvgcOozxH/ky3/rIVSMZdx4vA=="], - "@turf/bbox": ["@turf/bbox@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-1zNO/JUgDp0N+3EG5fG7+8EolE95OW1LD8ur0hRP0JK+lRyN0gAvJT7n1I9pu/NIqTa8x/zXxGRc1dcOdohYkg=="], + "@turf/bbox": ["@turf/bbox@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-D5ErVWtfQbEPh11yzI69uxqrcJmbPU/9Y59f1uTapgwAwQHQztDWgsYpnL3ns8r1GmPWLP8sGJLVTIk2TZSiYA=="], - "@turf/bbox-clip": ["@turf/bbox-clip@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-CO0j/Ax34f96TO1+hWfW7IdO5vD3ETAOK5FM4njaYwiAPztF+bXnd1pQ4GNz+u9KaA7sTUy+2bnVLZplMQ6TJA=="], + "@turf/bbox-clip": ["@turf/bbox-clip@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-HCn0q/WPVEE9Dztg7tCvClOPrrh9MoxNUk73byHvcZLBcvziN6F84f/ZbFcbQSh8hgOeVMs/keeqWMqsICcNLg=="], - "@turf/bbox-polygon": ["@turf/bbox-polygon@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-m2WfHVoJLZJf+nJizRfnm0GHyJN3eYY/oWL6xsp1bDodgBgrNqNPRD3OfA00x4HIt5VYXOyQ0GMDfvILLjlXWw=="], + "@turf/bbox-polygon": ["@turf/bbox-polygon@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-XCDYQwCA41Bum3R1xX0Na1nR4ozoe/pCYy5bxqrzyMs87kPJUIfBrD5IWxjnZyLqFpfEpolMHJz5ed1uA2PanQ=="], - "@turf/bearing": ["@turf/bearing@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-tGesFINcDLZZ9u3mL8eiJJ6XAXKPxhUL5HzHmYrNwz3PxT1OHcge9WJJV+LO6xeNo7zKh5eyoEKru6jl5BQiJw=="], + "@turf/bearing": ["@turf/bearing@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-zvFjapyFaOrM8nBtAND7f4yb0BJV0jyj6cyoXyTYqLY+3Hn0eHgL0M8lwxDLbTom5KfqYDHDVDQC3+VSfypoEA=="], - "@turf/bezier-spline": ["@turf/bezier-spline@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-12Qt8FEibQUUeVPGWkUycKjEAduR83cljYNsIOYl4EfwnBX01Puv+b9h4afFxsX4ltNRz4rFqYBBQQ2a6TdaMg=="], + "@turf/bezier-spline": ["@turf/bezier-spline@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-+iDUeiBKByIs/6K5WW8pG6IDxrRLJHFLM80zSpzk2xBtgy3mq36NZwwt67Pu7EJAkc9GUXKIm9SkspoKue9aYQ=="], - "@turf/boolean-clockwise": ["@turf/boolean-clockwise@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-eC0wMnI+HB//V16Rnq736Z0HifaVcmF4Z9X1Ixlt8uZwVC6UHf3BB6ages8igmTp5fyoixZozxK7amfKgV7k5w=="], + "@turf/boolean-clockwise": ["@turf/boolean-clockwise@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-X/O+u/OsoJ99mujhlqviuB7HX0tdJ5931TBjNSseps43XtROVuB5PwBDgwKfu5lY1B4DSGAxbbxJ795RmPnguQ=="], - "@turf/boolean-concave": ["@turf/boolean-concave@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Ycy/ra7/hn0Q4PQwkthMh9tF/5YvuHyI4qHbRucNw33lCfNjGKDRTd09gl1m2kmyM/z/QmgnJ8YPh8bALZJ51g=="], + "@turf/boolean-concave": ["@turf/boolean-concave@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-SHuAzjqaAes6ELDZcN/FKZWCQZsqwYv3gMosoLRFWTwKyBQe8i29e4y6XnXakDr1uklVUeRRcdhZ5oKtX9ABPQ=="], - "@turf/boolean-contains": ["@turf/boolean-contains@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/boolean-point-on-line": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-split": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-uwg7g7NHmyz4eVXh2g+4yWTgdIf5U7EsWb4bqJfVKprtvVeu/E9IWJIYs4haoAwEfVdOIUxTRErAf4IFPj8aqQ=="], + "@turf/boolean-contains": ["@turf/boolean-contains@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/boolean-point-on-line": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-split": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-AJMGbtC6HiXgHvq0RNlTfsDB58Qf9Js45MP/APbhGTH4AiLZ8VMDISywVFNd7qN6oppNlDd3xApVR28+ti8bNg=="], - "@turf/boolean-crosses": ["@turf/boolean-crosses@7.3.3", "", { "dependencies": { "@turf/boolean-equal": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-intersect": "7.3.3", "@turf/polygon-to-line": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-2PjeLm2BTcDIbkVd0zebaiYjAHvIfneDnb9P9pLLWohwwAuSEaig+Wru1m61HlFRRU6Wddc1BLmw8DNjbeIobQ=="], + "@turf/boolean-crosses": ["@turf/boolean-crosses@7.3.4", "", { "dependencies": { "@turf/boolean-equal": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-intersect": "7.3.4", "@turf/polygon-to-line": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-v/U3SuGdkexfLTMhho6Vj0OjqPUeYdThxp8zggGJ1VHow27fvLLez0DjUR3AftHjjHM6bRzZoNsu2qUlEe5hjw=="], - "@turf/boolean-disjoint": ["@turf/boolean-disjoint@7.3.3", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.3", "@turf/helpers": "7.3.3", "@turf/line-intersect": "7.3.3", "@turf/meta": "7.3.3", "@turf/polygon-to-line": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-ybt4jIcHrxES1eVGJWiX78R/NqqF1BRa8ynXqVw837oN5PfVBlhLKAgbTQneKWMjhRbczq0SJv0nZo4foynCqg=="], + "@turf/boolean-disjoint": ["@turf/boolean-disjoint@7.3.4", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.4", "@turf/helpers": "7.3.4", "@turf/line-intersect": "7.3.4", "@turf/meta": "7.3.4", "@turf/polygon-to-line": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Dl4O27ygi2NqskGQuvSlDLJYlJ2SPkHb3A9T/v6eAudjlMiKdEY6bMxKUfU5y+Px1WiCZxd+9rXGXJgGC3WiQg=="], - "@turf/boolean-equal": ["@turf/boolean-equal@7.3.3", "", { "dependencies": { "@turf/clean-coords": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "geojson-equality-ts": "^1.0.2", "tslib": "^2.8.1" } }, "sha512-2aZXbjiKQyYyEgEC9UySodYW4dda6RfYyoPe+eaTqRpvOhWBWPzNThhofiV2R0FnbinhbTTK8RkXs2hMcfqv+Q=="], + "@turf/boolean-equal": ["@turf/boolean-equal@7.3.4", "", { "dependencies": { "@turf/clean-coords": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "geojson-equality-ts": "^1.0.2", "tslib": "^2.8.1" } }, "sha512-AhWqe7D1o0wp3d3QQRSqgWDI8s1JfTFKFe9rU5mrSxYPGlmaQsJC07RCaYfFiGym9lACd1lxBJiPidCbLaPOfw=="], - "@turf/boolean-intersects": ["@turf/boolean-intersects@7.3.3", "", { "dependencies": { "@turf/boolean-disjoint": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-NiwD37d5bHmTdrpBh+AKggKRF/Vpkbfs7WBy5oce2iineyrSj6p203yCbzo8tSVWTgA0NEW2t+YHwpLjvlv47g=="], + "@turf/boolean-intersects": ["@turf/boolean-intersects@7.3.4", "", { "dependencies": { "@turf/boolean-disjoint": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-sxi41NXkb5hrJgOvpm32hyBLhW8fem0vn2XxR4+jyRg1rM/v3ziF10/VqC9KDZuDNZkt9JjL9B0825Cf7AN6Lg=="], - "@turf/boolean-overlap": ["@turf/boolean-overlap@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-intersect": "7.3.3", "@turf/line-overlap": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "geojson-equality-ts": "^1.0.2", "tslib": "^2.8.1" } }, "sha512-qmZ6UOTAp7fEsH79NuK2xje32yuH7qxdnbZwA94r9iYLaUAxIGuXMRqgjrUWEL0DjyRtHQD7V2aEus4TOdNsOw=="], + "@turf/boolean-overlap": ["@turf/boolean-overlap@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-intersect": "7.3.4", "@turf/line-overlap": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "geojson-equality-ts": "^1.0.2", "tslib": "^2.8.1" } }, "sha512-Q3dlswIuqffSiMfln7xa36YDnN1TWtERMF/155rzjglm4NTUG/6S+gNsb8s6qpLjc+hN6btCq1ZjxAWurPf8Vg=="], - "@turf/boolean-parallel": ["@turf/boolean-parallel@7.3.3", "", { "dependencies": { "@turf/clean-coords": "7.3.3", "@turf/helpers": "7.3.3", "@turf/line-segment": "7.3.3", "@turf/rhumb-bearing": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-R6eYdc3SAT3NkP4jwpMdWiwXER6bnP/K7Xrb2u1LvZkjVH0ljHV+/YbgwXgrB2QMp6npEAZvKE4xEzl6hs8KRw=="], + "@turf/boolean-parallel": ["@turf/boolean-parallel@7.3.4", "", { "dependencies": { "@turf/clean-coords": "7.3.4", "@turf/helpers": "7.3.4", "@turf/line-segment": "7.3.4", "@turf/rhumb-bearing": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-sTNMqsUkLPnSJEqc2IZ5ig3nHRoubyOH2HW1LILqOybCJI630FEM9UoYP1pZniF5nwTyCjQWnXA1FxusVILuFQ=="], - "@turf/boolean-point-in-polygon": ["@turf/boolean-point-in-polygon@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "point-in-polygon-hao": "^1.1.0", "tslib": "^2.8.1" } }, "sha512-hmXV4PofLAVbVZcnKk/yp//0s65huap+L3wKGKzbLWk57fWla/eRmFKx/iQ15xGu05zylHz5cA5AfriVGZHj2g=="], + "@turf/boolean-point-in-polygon": ["@turf/boolean-point-in-polygon@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "point-in-polygon-hao": "^1.1.0", "tslib": "^2.8.1" } }, "sha512-v/4hfyY90Vz9cDgs2GwjQf+Lft8o7mNCLJOTz/iv8SHAIgMMX0czEoIaNVOJr7tBqPqwin1CGwsncrkf5C9n8Q=="], - "@turf/boolean-point-on-line": ["@turf/boolean-point-on-line@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-iHLLdIdPNs29PgWGvsgdHTk3FntDAH0ILzcfsu/Uwdxbubz0GcPEWRFtMNKdszOQLT8LOtpJAgO617iiYNIkng=="], + "@turf/boolean-point-on-line": ["@turf/boolean-point-on-line@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-70gm5x6YQOZKcw0b/O4jjMwVWnFj+Zb6TXozLgZFDZShc8pgTQtZku7K+HKZ7Eya+7usHIB4IimZauomOMa+iw=="], - "@turf/boolean-touches": ["@turf/boolean-touches@7.3.3", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.3", "@turf/boolean-point-on-line": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-gDPEDEkW6rV11DsCAORKoklViySku85DCm357CON6i0CyzLzdHIePgiodH23VrtpWIPuyeLd/MePWxSpHPa7Eg=="], + "@turf/boolean-touches": ["@turf/boolean-touches@7.3.4", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.4", "@turf/boolean-point-on-line": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-XOwhjc0oCWhnBUB+l4drpXcg7mkNXPX3SuSz/Xv7gvLH/yRrBwzVGllzK1AHlGU9BVkGVBJIZGYX7jgTM681NQ=="], - "@turf/boolean-valid": ["@turf/boolean-valid@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/boolean-crosses": "7.3.3", "@turf/boolean-disjoint": "7.3.3", "@turf/boolean-overlap": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/boolean-point-on-line": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-intersect": "7.3.3", "@types/geojson": "^7946.0.10", "geojson-polygon-self-intersections": "^1.2.1", "tslib": "^2.8.1" } }, "sha512-ysjm8c40NVa0GlVU6SFzH1PdfU1owE4Kila8lllmhgC81hKtzABuBbnb6yzj6UgWUUxKNI0+NL90I8WrCWTCHg=="], + "@turf/boolean-valid": ["@turf/boolean-valid@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/boolean-crosses": "7.3.4", "@turf/boolean-disjoint": "7.3.4", "@turf/boolean-overlap": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/boolean-point-on-line": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-intersect": "7.3.4", "@types/geojson": "^7946.0.10", "geojson-polygon-self-intersections": "^1.2.1", "tslib": "^2.8.1" } }, "sha512-P6M9BtRvzFF2N5g+1/DTIbYGpEbwQ2sv/Pw+uj11P3NYAA9VE8mvrxFYf+CowFdSfY6bY4ejhuqKhrTmAMv7wA=="], - "@turf/boolean-within": ["@turf/boolean-within@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/boolean-point-on-line": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-split": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-jDjnNmhjlmZh2t1djPcW+E3XRpeiQPHNQdWaHhTZ/DLXtbne6iQjeKOnsNMGTC/I0QgOjDaZwFGxwlBFQFKKrg=="], + "@turf/boolean-within": ["@turf/boolean-within@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/boolean-point-on-line": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-split": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-eLgi803gz0KcYkyxnnqnz9Vd6tw2/0eAExe/Rq8sO0dqypaSiomSumxjqu89d/yo24Qz8gW7c0kJ6YihNbMYxA=="], - "@turf/buffer": ["@turf/buffer@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/center": "7.3.3", "@turf/helpers": "7.3.3", "@turf/jsts": "^2.7.1", "@turf/meta": "7.3.3", "@turf/projection": "7.3.3", "@types/geojson": "^7946.0.10", "d3-geo": "1.7.1" } }, "sha512-/Yv7sMunh9KtSGeQ1nYJbxk+vRdkQs0jdSZghKT2iy3sEKpFpsPt543YUpoflr4z3pmX7GOqwMdx0z2BH68sdQ=="], + "@turf/buffer": ["@turf/buffer@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/center": "7.3.4", "@turf/helpers": "7.3.4", "@turf/jsts": "^2.7.1", "@turf/meta": "7.3.4", "@turf/projection": "7.3.4", "@types/geojson": "^7946.0.10", "d3-geo": "1.7.1" } }, "sha512-MVOCBDuOl3KGDsh2stW12RmiFaFeSkVjeUbZ+ADUtIVnv+jlFsmjBpFtsEw8s9YQn5g0667QppOshm0FBHA57Q=="], - "@turf/center": ["@turf/center@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Hl+/tuRev29QTPbKDIucqT1hUjI7yZ1IYFAQzMuWCNmtVh12BHZdrzBNIUl2IN6vFZWcrQy/7L2a55nNPKIFng=="], + "@turf/center": ["@turf/center@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-4SsLMDHWthXbyIHsczgFCo4fx+8tC8w2+B5HdEuY+P+cSOOL4T+6QQzd7WWjuN/Y3ndowFssUmwRrvXuwVRxQA=="], - "@turf/center-mean": ["@turf/center-mean@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-UNVVzj7RylbdGu+X9la0/c+jQdwscMJ9d53oaEddLdg6b3qPSMs5yasv8DTs8CAgnCJHdOUH7lOWSB1yXJno9w=="], + "@turf/center-mean": ["@turf/center-mean@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-6foVk5HLjlSPr48EI686Eis6/bYrJiHjKQlwY/7YlJc1uDitsIjPw2LjUCGIUZDEd6PdNUgg1+LgI7klXYvW3A=="], - "@turf/center-median": ["@turf/center-median@7.3.3", "", { "dependencies": { "@turf/center-mean": "7.3.3", "@turf/centroid": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-OqH5aHs3FUPp7CNt9pUpFYKZ7VxMszsyMoQC6jueym2ga0449vJLxXRlU2cmGe34i+bAOzkqJUwqxBgMKJaw9g=="], + "@turf/center-median": ["@turf/center-median@7.3.4", "", { "dependencies": { "@turf/center-mean": "7.3.4", "@turf/centroid": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Bz6rDr0plQOGSXgT3X3t941pYd44a5vIY8OEt4Y11H1BsgpmzFc6g7L5mr7FXW/uiYGxOewAfNcVUYUdJf9kMg=="], - "@turf/center-of-mass": ["@turf/center-of-mass@7.3.3", "", { "dependencies": { "@turf/centroid": "7.3.3", "@turf/convex": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-UDymsi00QlHBRVgukC9ObCQp/FjwPJ5M8ozH9EnJfnmpzbZpIZUI9vFgCbVR62A5hhMN5TkLwp65KJQQRhs2bA=="], + "@turf/center-of-mass": ["@turf/center-of-mass@7.3.4", "", { "dependencies": { "@turf/centroid": "7.3.4", "@turf/convex": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-mOSupDF5qxQTA/kOWYletHcBJQ3S2gVl/IRgrBH/YY9yiFq6UGRpZ0sNcIML4H06u/1DY/jqqG+d1nc/1yIA6Q=="], - "@turf/centroid": ["@turf/centroid@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-3vWLnF1CksLk7xTUH11IzOQJ6fOoj7zhuL8M3GTxcKruVkGat/vIm3Ye5b68sDVcE5nFDA2pYjjbL7Rfmn3/GQ=="], + "@turf/centroid": ["@turf/centroid@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-6c3kyTSKBrmiPMe75UkHw6MgedroZ6eR5usEvdlDhXgA3MudFPXIZkMFmMd1h9XeJ9xFfkmq+HPCdF0cOzvztA=="], - "@turf/circle": ["@turf/circle@7.3.3", "", { "dependencies": { "@turf/destination": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-IFS30B10GASkEpsAqKV04B4YcwrEhwgdIfiOAUwuSm9Xp41hXwnJSjSBgjXwMpqlttdoyDWsG26+CRq18bNP4w=="], + "@turf/circle": ["@turf/circle@7.3.4", "", { "dependencies": { "@turf/destination": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-6ccr5iT51/XONF+pbpkqoRxKX4ZVWLubXb1frGCnClv2suo1UIY9SIlINNctVDupXd2P9PpqZCbrXATrcrokPg=="], - "@turf/clean-coords": ["@turf/clean-coords@7.3.3", "", { "dependencies": { "@turf/boolean-point-on-line": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-lkXGy75On5cywCAqgLVBP0DdkYnaZmeTkqfrhCwW6Ac90t9iLpght496oN3Jru5PlPB6HS3rEmgmY/JWUBU6Ag=="], + "@turf/clean-coords": ["@turf/clean-coords@7.3.4", "", { "dependencies": { "@turf/boolean-point-on-line": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-S61aJXLvPN/uZHtjzmJbLv7xhi28Sq3PshCIZSvno4Mo45bvl79Vg4aZskrG05AaSSbipplqfH+MZrkW9Xboeg=="], - "@turf/clone": ["@turf/clone@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-IrG3zXKy++xmnQAuL3ZQDVHdsTpKoEY87cLwsKg1Z1VnH7egluxL0T6VTwcu1l64c0QeBtnTjXJBC8XiO4ajog=="], + "@turf/clone": ["@turf/clone@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-pwQ+RyQw986uu7IulY/18NRAebwZZScb084bvVqVkTrllwLSv4oVBqUxmUMiwtp+PNdiRGRFOvNyZqtRsiD+Jw=="], - "@turf/clusters": ["@turf/clusters@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-ibtKVnPKSnMu0uY3elEQwiS90RPo6H+Ppf2rHXHZZhtZC41bPjRx1mHunCyblxNaUQ5ToEE4I1+b4HDJOb0rjg=="], + "@turf/clusters": ["@turf/clusters@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-+zoSyiF0LilXy4Tr0/lC7IgqbTMZZ2wwP3iSrqre58b61pUtdhCnBcjA2r8FkcW7z3GMbGf5XkIWhO+b+vDSsw=="], - "@turf/clusters-dbscan": ["@turf/clusters-dbscan@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "@types/geokdbush": "^1.1.5", "geokdbush": "^2.0.1", "kdbush": "^4.0.2", "tslib": "^2.8.1" } }, "sha512-6xAWb19xr5hjXrBASyB8OnvgYY9e8MguBSKhV15l9TBAuKrIuOqD/XVvf0TbXE6VYC7jhDJ8LQSPyjD9gP4MoQ=="], + "@turf/clusters-dbscan": ["@turf/clusters-dbscan@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "@types/geokdbush": "^1.1.5", "geokdbush": "^2.0.1", "kdbush": "^4.0.2", "tslib": "^2.8.1" } }, "sha512-RkuXf767Shk0AfY+fh0PASVw8YR4H8zYR7XQrCgWd/bCuh6CXs7rWZ6UTLu/PiA6y6WsIhyAQv4LhNH5kCzpbA=="], - "@turf/clusters-kmeans": ["@turf/clusters-kmeans@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "skmeans": "0.9.7", "tslib": "^2.8.1" } }, "sha512-BxSGql6TzL4Crx3hgDfwJa10GbOobi5oMjK8cnKdtNKOe8gY9f+sZsu+ihILFZX+VEtKkmakeqVvq5hOCMuUqA=="], + "@turf/clusters-kmeans": ["@turf/clusters-kmeans@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "skmeans": "0.9.7", "tslib": "^2.8.1" } }, "sha512-89mlwhcb+vyZAKX0eBa3LQ8VyIKLayrzJpKGb90sEkIu0hDua9JCE+zlbaPoUAvAqflEiX+poFFuh7pngtsBMg=="], - "@turf/collect": ["@turf/collect@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "rbush": "^3.0.1", "tslib": "^2.8.1" } }, "sha512-E1wuB0W+zktOmsKgO3RGdGpHBjPb/x11L3dLlkwgb4Xu1e3sHPkO8YXkT8REYyk3lxc0efZC/6grMPUqdOJmtg=="], + "@turf/collect": ["@turf/collect@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "rbush": "^3.0.1", "tslib": "^2.8.1" } }, "sha512-fG28oDZK4HCXC/AhF0pmHKLtI9DWwdJr/ktuWolrqzA5b1G7eawrXwDu8B5I3sXhdWonNRMcuLbIuz+XQscHKw=="], - "@turf/combine": ["@turf/combine@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-WryXoIK5Ggq3LkWlG3kCs+26iMuXLMs6YxJZwnjkWndB81k9dkB5ibbnZ71PERESCJfpBBtgyQc2cfMdyeqWuA=="], + "@turf/combine": ["@turf/combine@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-wNp9ar4FfpTfQXLZWXQ/jUBBoUFOwRN/mmlv5xrhoYFpP/F5SNy7GVDMZXaBfHdUUplfJUPF5hIKQlCUR8+k3A=="], - "@turf/concave": ["@turf/concave@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/tin": "7.3.3", "@types/geojson": "^7946.0.10", "topojson-client": "3.x", "topojson-server": "3.x", "tslib": "^2.8.1" } }, "sha512-V+OV02WHioK1Z7Yabd+PKYzxhXJhlPNLUO4wN4dzzHqyn500G2I0+YXgJ9YW45zmPKOi1AGh0E8vehV1XYUG1w=="], + "@turf/concave": ["@turf/concave@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/tin": "7.3.4", "@types/geojson": "^7946.0.10", "topojson-client": "3.x", "topojson-server": "3.x", "tslib": "^2.8.1" } }, "sha512-HZa1CV2pv4Xpcoe3t5S3ZW6j9jVbc27exzKwZWF7MlFxSz4BKRirWiME8Fku8nvQcGafpfLc+Lwpma+nGvg06w=="], - "@turf/convex": ["@turf/convex@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "concaveman": "^1.2.1", "tslib": "^2.8.1" } }, "sha512-GnE6rj+WMqaC5PTLnOUqgbGotHOBu4KNelcZKyHoIPZPhcHxHg1pIApInZflb2Kc1TeW6bYYcFSxmAtxvJUZjw=="], + "@turf/convex": ["@turf/convex@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "concaveman": "^1.2.1", "tslib": "^2.8.1" } }, "sha512-zeNv0fFdOoHuOQB7nl6OLb0DyjvzDvm0e3zlFkph50GF9pEKOmkCSmlniw681aWL2aRBdWZBnON3rRzOS+9C7Q=="], - "@turf/destination": ["@turf/destination@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-X1rVDHLTJLb29tZAVryQz5BD3YKid77Q6PTGEeghZk9PZfRVPhloLSOtKksp6JnmNXV2iHsiY0bORAYzq29+JQ=="], + "@turf/destination": ["@turf/destination@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-YxoUJwkKmTHiRFQxMQOP0tz8Vy+ga5EXl+C+F/WubjDLwT1AJu5y8CNIjLvWyjPWckj/vZG4u/1js5bx6MLADA=="], - "@turf/difference": ["@turf/difference@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-JHqO26U810wxQFStNt0Ga4XycbNDk+bwZrDCZ0TOqeijeqaEm8f8NT1GE3c2KcAQJZJogONt9WmLe1VCKPraGA=="], + "@turf/difference": ["@turf/difference@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-kIxizNQrYLO2rtqUIeed0tPycicrXoipy/g9d4mjv91kzBEbwpyojz9zi8U9G1ISBfCEgA7wsViQD0r+8qzxXw=="], - "@turf/dissolve": ["@turf/dissolve@7.3.3", "", { "dependencies": { "@turf/flatten": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-YkWB3qNhLnmQFaI/DGDlirZU9urUHRic1Vcv1GBWPPw7Wt8CM+2y3ZRGuvGo4nMmsi3Ghgdrf4155PnOxkD5BA=="], + "@turf/dissolve": ["@turf/dissolve@7.3.4", "", { "dependencies": { "@turf/flatten": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-xjGY1gQ4icWhDgsW0YfU2KQtij1+ru34AfvtkVMQEgI86O9EwjW2r9Jq5DJY2PMKPbor3kz9yM/RTOiDP7f3Jg=="], - "@turf/distance": ["@turf/distance@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-bmv0GzqlICjMWuQ05ipDDbT9ppQUMNo02+T5f/rPF9hSEXCPkSJQ1OdQ6XjUGzdJ/vxgES4DM4zhIDUKU/g8RQ=="], + "@turf/distance": ["@turf/distance@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-9drWgd46uHPPyzgrcRQLgSvdS/SjVlQ6ZIBoRQagS5P2kSjUbcOXHIMeOSPwfxwlKhEtobLyr+IiR2ns1TfF8w=="], - "@turf/distance-weight": ["@turf/distance-weight@7.3.3", "", { "dependencies": { "@turf/centroid": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-xi02KPZ8gjXkJKdtwxyi3Pgggbb5C0jp270Ve3gzatGvQuf/1nzb6XQFqUMYcEDvFW8mm5CVj48EenqOmnMRUQ=="], + "@turf/distance-weight": ["@turf/distance-weight@7.3.4", "", { "dependencies": { "@turf/centroid": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-dVMNEmIluKgn7iQTmzJJOe0UASRNmmSdFX1boAev5MISaW3AvPiURCCOV+lTIeoaQbWRpEAESbAp6JIimXFr8Q=="], - "@turf/ellipse": ["@turf/ellipse@7.3.3", "", { "dependencies": { "@turf/destination": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/transform-rotate": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-prpLP+zYYVg7QoYCKR3aG78Gr0KmRFqXTzJhw/jdbxOAhSA6Gz4d9k0O9DFQ6MnXS1s7/ye1iGPbSlB5wYoydg=="], + "@turf/ellipse": ["@turf/ellipse@7.3.4", "", { "dependencies": { "@turf/destination": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/transform-rotate": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-SMgbERZl12j7H8YaIofmnf0NwAvdF5Wly4tjI/eUhj/sFOKrKXOS1lvCSBJ6uSV9tFijl3ecGOVOlTpURdZ30g=="], - "@turf/envelope": ["@turf/envelope@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/bbox-polygon": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-E1aRVebT/ixwOuQwnJmEB7Q6L91EdqgIAwN7yi76mu/0otGxjdGiervw+O/a7/xgQsv9EAXGi3bzgkwhaRuedA=="], + "@turf/envelope": ["@turf/envelope@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/bbox-polygon": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-anXSjYMXGAyXT7rpO74VyRI0q/rPAbKE/MYvou+QvG0U/Oa7el0yF4JNNi9wKEAxXg/10aWm9kHp8s2caeLg6A=="], - "@turf/explode": ["@turf/explode@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-nygZAr0YGkfD612AToHUWcoLHl38cL3eUbH1LC6lWys1bk6WG1X+oywdDK4cBP/Z0/74UTCT/jR+gmj+WhlWqA=="], + "@turf/explode": ["@turf/explode@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-7QWhp3f8jhrWjvArhJ74hXBFHMaiJr/2Y1PzHCWue2/pC5MbbTV0o7peehwrrrJC/1uD6CVb3hlcb77IxtMQkw=="], - "@turf/flatten": ["@turf/flatten@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-XL0hEfxO30QeltQVhL47juOHkeFj4GNYGKVzO5Q9FOEwSSn753rcqih1JWLowpbBYuZLU1TrOHnfTygXYxNSqQ=="], + "@turf/flatten": ["@turf/flatten@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Yt3HCh/qeNaXS4LYhXczFhBfTeaKlTBoxEw1OICb9RT3SiGU0XCxuK7H0W26OLo7XxB0qP7GPs2L3FZbiri6wQ=="], - "@turf/flip": ["@turf/flip@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-CKAimOAXJjuQcLXuz/kmqNV9ehdAUpl4tU4z3/SmlIm+GSYA8/HvLta3tRlw7bajP5Z15WUWq728jyoOlj3UvA=="], + "@turf/flip": ["@turf/flip@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-HME+kVMTyvcsYVY6dC6DTvuzq8vvDpw+C7PviEqpuT3KcVlBCoGPAqlWRdyWYOb9MDciOqNxvvJF/okpb/GQcg=="], - "@turf/geojson-rbush": ["@turf/geojson-rbush@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "rbush": "^3.0.1", "tslib": "^2.8.1" } }, "sha512-J/8oew3X9iYoKR7WsD9MeLmuyeYeXy+h6z1NUF8Scs/DQgigQV/hzOv20azt9S6neyfP72yIKDEo7dNxPJcoWw=="], + "@turf/geojson-rbush": ["@turf/geojson-rbush@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "rbush": "^3.0.1", "tslib": "^2.8.1" } }, "sha512-aDG/5mMCgKduqBwZ3XpLOdlE2hizV3fM+5dHCWyrBepCQLeM/QRvvpBDCdQKDWKpoIBmrGGYDNiOofnf3QmGhg=="], - "@turf/great-circle": ["@turf/great-circle@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "arc": "^0.2.0", "tslib": "^2.8.1" } }, "sha512-UT6cootKr2saXw9dIt+fZU/IG0rqm2WSFsmxqS8ZAtkfXe7Nr/JL4R94OCDr0y1ALkIX8IgzZjo9555c8x4hJA=="], + "@turf/great-circle": ["@turf/great-circle@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "arc": "^0.2.0", "tslib": "^2.8.1" } }, "sha512-JvfzWFL9efP+xKtOnKzGvwEIXfaN0CLZoPPxNnWa/cVisLs9FVMlC9PWnuL3/3aqH5VhBHPddmU8ipzNE6KIIA=="], - "@turf/helpers": ["@turf/helpers@7.3.3", "", { "dependencies": { "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-9Ias0L1GuZPIzO6sk8jraTEuLJye6n9LYNEdw69ZGOQ6C1IigjxkPW49zmn21aTv1z27vxdVLSS3r+78DB2QnQ=="], + "@turf/helpers": ["@turf/helpers@7.3.4", "", { "dependencies": { "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-U/S5qyqgx3WTvg4twaH0WxF3EixoTCfDsmk98g1E3/5e2YKp7JKYZdz0vivsS5/UZLJeZDEElOSFH4pUgp+l7g=="], - "@turf/hex-grid": ["@turf/hex-grid@7.3.3", "", { "dependencies": { "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/intersect": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-kK99bi+/3H1JV1mSbtp5qAADZT7/QsIYnoSgBJgAjdqXxCahrnkaDQWuoMCFBeIxSVG2xANEJJjmGithMhZ8Og=="], + "@turf/hex-grid": ["@turf/hex-grid@7.3.4", "", { "dependencies": { "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/intersect": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-TDCgBykFdsrP3IOOfToiiLpYkbUb3eEEhM9riIqWht0ubKUY61LN7qVs9bxZD83hG6XaDB6uY7SWkxK1zIEopQ=="], - "@turf/interpolate": ["@turf/interpolate@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/centroid": "7.3.3", "@turf/clone": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/hex-grid": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/point-grid": "7.3.3", "@turf/square-grid": "7.3.3", "@turf/triangle-grid": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-0bCRzC91el+74BBqoTwdslI8PUlO5pRaUNWs4M5jEmNuet6NJyP8+CYwHVtb9VmVt3CpDAJ+c2yoGwt+D2JGyQ=="], + "@turf/interpolate": ["@turf/interpolate@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/centroid": "7.3.4", "@turf/clone": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/hex-grid": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/point-grid": "7.3.4", "@turf/square-grid": "7.3.4", "@turf/triangle-grid": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-lwYSMbHxsXYEWObv0tyBCjwTLXyfsTvOLn/NFhlsGrNCYEXn8I1VPtLGwuxbSdF3hVRgurn8qftkB1npHrNs6Q=="], - "@turf/intersect": ["@turf/intersect@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-vmNBZ/FwIyszFxxMjCkYrJk+C1O6r50c0Nwu0T2KxoivRMICyOuHFP27r5QeHR5tN7MqmSZPfEHgCiXzg8/iEQ=="], + "@turf/intersect": ["@turf/intersect@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-VsqMEMeRWWs2mjwI7sTlUgH1cEfugTGhQ0nF8ncHG7YKd9HUUTzIKpn9FJeoguPWIYITcy1ar4yJEOU/hteBVw=="], - "@turf/invariant": ["@turf/invariant@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-q6UDgWmtIlU+AIxt5Awnh18ZMSuNti6drCXbIBdGdgQaQ1qEiyGZDE3P9RKk6otoLXOBYecOuI0HIwf2IxurhQ=="], + "@turf/invariant": ["@turf/invariant@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-88Eo4va4rce9sNZs6XiMJowWkikM3cS2TBhaCKlU+GFHdNf8PFEpiU42VDU8q5tOF6/fu21Rvlke5odgOGW4AQ=="], - "@turf/isobands": ["@turf/isobands@7.3.3", "", { "dependencies": { "@turf/area": "7.3.3", "@turf/bbox": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/explode": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-tYc+7GaFxmPctQ0KKxgMiLH7lU/etQs/KX9OOnyLDdEYtCEN2CjMA+tKUhu8vxE1hAji/I1RN5uqAbJEPcPNQQ=="], + "@turf/isobands": ["@turf/isobands@7.3.4", "", { "dependencies": { "@turf/area": "7.3.4", "@turf/bbox": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/explode": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-SFYefwjQdQfF0MV0zfaSwNg9J1wD7mfPP8scGcScKGM3admbwS2A3V8rqPADBfYLD2eCPBDFnySxcl9SHbPung=="], - "@turf/isolines": ["@turf/isolines@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-X2cgOg2HkOcF1ERUfJqUslVAb9+XKhtcBf0Wj7+vZ3NQsCoFH8HLp6VM43lkjaazpI7tAVFEQgALKVZqwtQxrA=="], + "@turf/isolines": ["@turf/isolines@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-UFRIULkIgkZOmrhLxExWvguixbzfoCgVcXIqo2Cp68do4v+nwc3pTM7MTt4DBVFloIdX0Usrn4K44LQ/V05gxg=="], "@turf/jsts": ["@turf/jsts@2.7.2", "", { "dependencies": { "jsts": "2.7.1" } }, "sha512-zAezGlwWHPyU0zxwcX2wQY3RkRpwuoBmhhNE9HY9kWhFDkCxZ3aWK5URKwa/SWKJbj9aztO+8vtdiBA28KVJFg=="], - "@turf/kinks": ["@turf/kinks@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-+k6hB/1LIxqkt/2DTAYxx4ggq51V1iLNLm7s4a+ZV3orPob+zpVvpqENHx7ppuDHNx9x+gz1yR1AZNR0S3MXxw=="], + "@turf/kinks": ["@turf/kinks@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-LZTKELWxvXl0vc9ZxVgi0v07fO9+2FrZOam2B10fz/eGjy3oKNazU5gjggbnc499wEIcJS4hN+VyjQZrmsJAdQ=="], - "@turf/length": ["@turf/length@7.3.3", "", { "dependencies": { "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Yax4dZoZJOJbgZ2kiD4EKLRdC1JGyp92YvhbvpO4Vnugbbh0VTgWdFW3TElYqAHjSFCFpHiths06sztDXCRnMQ=="], + "@turf/length": ["@turf/length@7.3.4", "", { "dependencies": { "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Dg1GnQ/B2go5NIWXt91N4L7XTjIgIWCftBSYIXkrpIM7QGjItzglek0Z5caytvb8ZRWXzZOGs8//+Q5we91WuQ=="], - "@turf/line-arc": ["@turf/line-arc@7.3.3", "", { "dependencies": { "@turf/circle": "7.3.3", "@turf/destination": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-CQSUD5aseUG6p+uwWU3bk0sTWr9ZKgngdes/pRTzC8C9araxcD+xFoXdZPNmRvIEIqeVZi3w/R7CYkcTjyGCmg=="], + "@turf/line-arc": ["@turf/line-arc@7.3.4", "", { "dependencies": { "@turf/circle": "7.3.4", "@turf/destination": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-nqZ+JKjDVIrvREFHgtJIP9Ps4WbWw3eStqdIzAPolrzoXyAZnpIKquyfRTxpJFYUUjDmf+uQ/SFWsPP4SOWAqQ=="], - "@turf/line-chunk": ["@turf/line-chunk@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/length": "7.3.3", "@turf/line-slice-along": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-HNYZNe+Fv272cUSO+j8lBPrHJ7PtZgcL+roWt3IZv7i0+TAvzkH99h3zAfgqEkFhbUSGXy/9f37539SzVhO5mg=="], + "@turf/line-chunk": ["@turf/line-chunk@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/length": "7.3.4", "@turf/line-slice-along": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-xWEHR99EpUO5ZPEZhMfa0QvnFZC0W+QLxB1GcJcSeJAQ5ZMXUXY8doKF1Nztk0eppawMprEEO3nQWLvQoR4z2g=="], - "@turf/line-intersect": ["@turf/line-intersect@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "sweepline-intersections": "^1.5.0", "tslib": "^2.8.1" } }, "sha512-RXlIPDseXT2PplbN8GMQOE3oa6DzAGSVm6xp7qaf4VyNvhRH85J+SpCYXuilYfd6eYWUrewUI1CkO5RIqHGlCA=="], + "@turf/line-intersect": ["@turf/line-intersect@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "sweepline-intersections": "^1.5.0", "tslib": "^2.8.1" } }, "sha512-XygbTvHa6A+v6l2ZKYtS8AAWxwmrPxKxfBbdH75uED1JvdytSLWYTKGlcU3soxd9sYb4x/g9sDvRIVyU6Lucrg=="], - "@turf/line-offset": ["@turf/line-offset@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Vvm6dds1pr2yH4WKonV/FDbRDH04DlXxFWYjZJShVzFQ2QuNYqNJRg2x5exbkCwnSP1cgk21wzzEwkzdJbrdRw=="], + "@turf/line-offset": ["@turf/line-offset@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-CSrg3njde9Tx+C0oL+BHUpZYpgD+PEmzp0ldDNis5ZQiTe5tUrwiIyG7A/QXf9eDnGhtV1WhCAycX0Wjged4pg=="], - "@turf/line-overlap": ["@turf/line-overlap@7.3.3", "", { "dependencies": { "@turf/boolean-point-on-line": "7.3.3", "@turf/geojson-rbush": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-segment": "7.3.3", "@turf/meta": "7.3.3", "@turf/nearest-point-on-line": "7.3.3", "@types/geojson": "^7946.0.10", "fast-deep-equal": "^3.1.3", "tslib": "^2.8.1" } }, "sha512-UjE/O+xHV2Y8vXMPVMMeA+sJSMyYJa4HiTfyjCB5AZz50KFNHoNOz/XnYzsmOeixUjKm89Ivjzab41mNu11ufQ=="], + "@turf/line-overlap": ["@turf/line-overlap@7.3.4", "", { "dependencies": { "@turf/boolean-point-on-line": "7.3.4", "@turf/geojson-rbush": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-segment": "7.3.4", "@turf/meta": "7.3.4", "@turf/nearest-point-on-line": "7.3.4", "@types/geojson": "^7946.0.10", "fast-deep-equal": "^3.1.3", "tslib": "^2.8.1" } }, "sha512-3GBECiwNAQ2MmSwiqAHMweIl+EiePK0Jx4fXxF1KFE+NGCDv/MbGcEYfAbmsTg8mg6oRI9D8fJZzrT44DHpHXA=="], - "@turf/line-segment": ["@turf/line-segment@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-2lhD3hDa73Q3uoNcr03bnQROpT6eGDNd+eupGSE8ZLeIKFy9Kkvi5YMmLz99IjUK23HO3RNmqYFR3X6JU0+4KQ=="], + "@turf/line-segment": ["@turf/line-segment@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-UeISzf/JHoWEY5yeoyvKwA5epWcvJMCpCwbIMolvfTC5pp+IVozjHPVCRvRWuzmbmAvetcW0unL5bjqi0ADmuQ=="], - "@turf/line-slice": ["@turf/line-slice@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/nearest-point-on-line": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-gL9BVhE3slme/bKp5a+KqWGrZppjz9fOHoUU9iDX47jlpEi+hYQyhU0XlEGilEmqF7MZAsCWBVKF1t1YIwM6dg=="], + "@turf/line-slice": ["@turf/line-slice@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/nearest-point-on-line": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-6Vt4Eptdr2C5T+jtpbo8D4v8b6X7KqYonPPyMB6huv+Kcg3nz4JRI9OQCDCaon9rWvU3ffWwjsjcbJCQS9o0sA=="], - "@turf/line-slice-along": ["@turf/line-slice-along@7.3.3", "", { "dependencies": { "@turf/bearing": "7.3.3", "@turf/destination": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-ARRi73OZEhIWVasim0XOQKqe7BsmIB+m2mpWB+QRkaUoNWoIR4awDQ720qGnDKffEVZx8YXv89nWLuXCSEFCaQ=="], + "@turf/line-slice-along": ["@turf/line-slice-along@7.3.4", "", { "dependencies": { "@turf/bearing": "7.3.4", "@turf/destination": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-RT5HydNy8+m9Y3u39USeYZauG2EyMqCYoLnTpWcAxbZGdq9WjIwdzAwYir3d8eJkOzjlR6Khz071VM4Ufqs0Kg=="], - "@turf/line-split": ["@turf/line-split@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/geojson-rbush": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-intersect": "7.3.3", "@turf/line-segment": "7.3.3", "@turf/meta": "7.3.3", "@turf/nearest-point-on-line": "7.3.3", "@turf/truncate": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-vSOCO2Hwd6/ZO3evtDNxwTX3yNkDGrfIWCscnJbKc0i5KukfHxYqM6jZI/8prWeEyOt6u8eAYbAN92Ew8j5NTA=="], + "@turf/line-split": ["@turf/line-split@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/geojson-rbush": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-intersect": "7.3.4", "@turf/line-segment": "7.3.4", "@turf/meta": "7.3.4", "@turf/nearest-point-on-line": "7.3.4", "@turf/truncate": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-l1zmCSUnGsiN4gf22Aw91a2VnYs5DZS67FdkYqKgr+wPEAL/gpQgIBBWSTmhwY8zb3NEqty+f/gMEe8EJAWYng=="], - "@turf/line-to-polygon": ["@turf/line-to-polygon@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-INLY6eg6v1KASUjXHtAbehY3LXhf2mxtwmnp60NB8LjqTBgyW8erMf+Hapb15w6MiNJ8cE75y087AhXp+0HIXA=="], + "@turf/line-to-polygon": ["@turf/line-to-polygon@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-vRnDHjzwOroC74/fsJEU+dUeGhiR/B2bG0/HeEWRBplAjmwVPptRBmDGtXKTz8sbA6or17/XtOITp3zTU0lBZw=="], - "@turf/mask": ["@turf/mask@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-qBInOKsUVxh1BI24nUR5dhw9A0yHBpAa34Fk7ikQUSsiuvvngnnmHf8+M1fnXkdhYAfVA8Ad6rxhkB2ZCYEz3g=="], + "@turf/mask": ["@turf/mask@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-FJIlSk8m0AiqzNoLSMdYuhDRif6aeOYVdW/WxjEjpUoMalwy2w5MMlZqJB9zxt/xSrMq6lvTWJgZfZfGL2s4ZQ=="], - "@turf/meta": ["@turf/meta@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Tz1j4h70iFB5SebWWoVv/uL59x4aOngXU+d1xQDXzOCn/O6txnreGVGMcYU362c5F06yqZx38H9UFTQ553lK0w=="], + "@turf/meta": ["@turf/meta@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-tlmw9/Hs1p2n0uoHVm1w3ugw1I6L8jv9YZrcdQa4SH5FX5UY0ATrKeIvfA55FlL//PGuYppJp+eyg/0eb4goqw=="], - "@turf/midpoint": ["@turf/midpoint@7.3.3", "", { "dependencies": { "@turf/bearing": "7.3.3", "@turf/destination": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-YZWpZuwk7fOZnHMHArkYdNtzBQPA1v4hz1M1u2OopM7ciqP+ZW8qUC3mdlUO5esEnxDXwmG/NRna6cgbXRBnMw=="], + "@turf/midpoint": ["@turf/midpoint@7.3.4", "", { "dependencies": { "@turf/bearing": "7.3.4", "@turf/destination": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-/XAeGvsz8l5HaqcP7TUlexzGfibqXozQgBZ8rH7az6op2Dfm3pL/Z7bKLHoVavM0ccBg0Pt7g6j9NM54kZWdKA=="], - "@turf/moran-index": ["@turf/moran-index@7.3.3", "", { "dependencies": { "@turf/distance-weight": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-vL9nDje9nTNBw0bF0GOvDxxpGXaOzve6ivm3QNJsArZXWM3W/whZtOKZrvfmx39Fz+2Tj7RmxdLaFwGkPNSSOA=="], + "@turf/moran-index": ["@turf/moran-index@7.3.4", "", { "dependencies": { "@turf/distance-weight": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-SNb16szwEG0OiyNn3z9zvSnk3M3tfwvvN8i//9UIC32APEApI+MRXCl93H/qZkKMhhh/cHA0pF0pjYZwl5z8Ow=="], - "@turf/nearest-neighbor-analysis": ["@turf/nearest-neighbor-analysis@7.3.3", "", { "dependencies": { "@turf/area": "7.3.3", "@turf/bbox": "7.3.3", "@turf/bbox-polygon": "7.3.3", "@turf/centroid": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@turf/nearest-point": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-3fX7WNot0LjmF6XUvCCq8w+V62+JdBUpObpGEK9/JYc5luiyB4rvB86YGASuKLFPV1+61CGkskBwdapD1KhQlA=="], + "@turf/nearest-neighbor-analysis": ["@turf/nearest-neighbor-analysis@7.3.4", "", { "dependencies": { "@turf/area": "7.3.4", "@turf/bbox": "7.3.4", "@turf/bbox-polygon": "7.3.4", "@turf/centroid": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@turf/nearest-point": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-8EZlDy5poU0t7BDy8KTzOmfiGsAs2kWuB3/kgI4sMdbThKVk2P4hHKuToCSGvqAzwSy3B2qKYM1N6JeVWytu+w=="], - "@turf/nearest-point": ["@turf/nearest-point@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-DZRlQ8J7W3KwEBYb/C1ZpQdkjVPDVOAl8NFqeIKKPKjcViOnk/opYQsJTnMADvv28IGB/mlUM11qVPnnCg7YeA=="], + "@turf/nearest-point": ["@turf/nearest-point@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-WfI09f2bX0nKx/jkO7zCt3tUrJulyAlUYQtZHP7lWYMCOmZ6Pq26D6lKWjpfs2it0OHbhlx1XF/UupEUaz830w=="], - "@turf/nearest-point-on-line": ["@turf/nearest-point-on-line@7.3.3", "", { "dependencies": { "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-xFSTH7Vgqa/tMOPWzS3SZKgxCn2WB5F6v1AFAefYtCGnKy2BGM6cyLoEhegaCZKaJk2ftn/yd6P90+FBKm0nnQ=="], + "@turf/nearest-point-on-line": ["@turf/nearest-point-on-line@7.3.4", "", { "dependencies": { "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-DQrP3lRju83rIXFN68tUEpc7ki/eRwdwBkK2CTT4RAcyCxbcH2NGJPQv8dYiww/Ar77u1WLVn+aINXZH904dWw=="], - "@turf/nearest-point-to-line": ["@turf/nearest-point-to-line@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/point-to-line-distance": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-663JyfGYKZ1qGf0x6C5XxUOgxj/MDUxWu9qG6+Nd0SN+sqHJdePmt09p7dxDrjiZb2WHrn0EWd3A/digFpIztg=="], + "@turf/nearest-point-to-line": ["@turf/nearest-point-to-line@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/point-to-line-distance": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Nzp3ojQt0gDACNYG+oNWymRXAUCey0LzdiSezYtRwdA0/+FQCtuxP8Lbc8FftV10JL8D78/CRlmt7omaXLLXCg=="], - "@turf/planepoint": ["@turf/planepoint@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-AIkekrZq5KqzDnDpnxjAW/w7+12vsyaLjqAR8gY6viXpo6ZLG8+jCTJ+Ag8Jq4LtDWQn2qz/njP39b/HoPuX3A=="], + "@turf/planepoint": ["@turf/planepoint@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-KAhMAnddbuWIEZuk2bK//g+xTeKn8aV9N2AaE27x6JMJyV/wqvatIuVVqEIXI3SkAFbhiVBpVuarvPYhrJ+fhg=="], - "@turf/point-grid": ["@turf/point-grid@7.3.3", "", { "dependencies": { "@turf/boolean-within": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-N3sHc4BkTRPGrE7dVLrbds9SXEHfnC3F00DBMegTrjZntUQX0gyWvfpjWfk4J3U/+G8Kzqkv+BVwWimeIEo/pQ=="], + "@turf/point-grid": ["@turf/point-grid@7.3.4", "", { "dependencies": { "@turf/boolean-within": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-9CL3OJ4dEt266+fxYlOQeRFqAY3XtsAuak2Gpk+K8k+Y3yGv8pvyn3QaAQ6P2npbiKt0zfG8Md/+HBAPOMPQ0A=="], - "@turf/point-on-feature": ["@turf/point-on-feature@7.3.3", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.3", "@turf/center": "7.3.3", "@turf/explode": "7.3.3", "@turf/helpers": "7.3.3", "@turf/nearest-point": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-JwnZYD7IRhXRqVNUZuka5aw00ws9P5Br3ZhFhd/UpoVi93M117/hdXwZhA9S98LNbTyAqj7ugvrlkXXeHqCBDw=="], + "@turf/point-on-feature": ["@turf/point-on-feature@7.3.4", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.4", "@turf/center": "7.3.4", "@turf/explode": "7.3.4", "@turf/helpers": "7.3.4", "@turf/nearest-point": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-tQfIxsJUxZqyO7OeJC25y3DqN9i4fmrAt4TBrPvZcIIwymgN7aMrElJKlg/dfi7JDihKp3h/CkWMjtMQA14Vwg=="], - "@turf/point-to-line-distance": ["@turf/point-to-line-distance@7.3.3", "", { "dependencies": { "@turf/bearing": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/nearest-point-on-line": "7.3.3", "@turf/projection": "7.3.3", "@turf/rhumb-bearing": "7.3.3", "@turf/rhumb-distance": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-pN+fqvcWK+cKhx+YF5azTHcIHvq8PrOt8Gb44bFMzwCcFJ5CgdMLqoztrbYpc3tVG9eK8taC9qesptQ8C1e8bg=="], + "@turf/point-to-line-distance": ["@turf/point-to-line-distance@7.3.4", "", { "dependencies": { "@turf/bearing": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/nearest-point-on-line": "7.3.4", "@turf/projection": "7.3.4", "@turf/rhumb-bearing": "7.3.4", "@turf/rhumb-distance": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-IdPAxlAQZj7FCZg+ObyVHlNdqwLL/oxYoQjpxMNJ511gNxokCtEv0aeRZQjYOYIxr9Ss97v3yo3ILJaF9V2kPw=="], - "@turf/point-to-polygon-distance": ["@turf/point-to-polygon-distance@7.3.3", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/point-to-line-distance": "7.3.3", "@turf/polygon-to-line": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-T3OqOyc+ZSNZU1DgodDAbh7LBmdvoXnKyjxkRmYHcYNei1uWVHALDI6c5/8ED3fyt6p7DIdqw3e3brV2jiu/Ug=="], + "@turf/point-to-polygon-distance": ["@turf/point-to-polygon-distance@7.3.4", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/point-to-line-distance": "7.3.4", "@turf/polygon-to-line": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-VxbkgHyzCkYWSxirqSUqw+lzbYmTf2qFhVZ/T5dprhwyXWcgalpupvgRzmZmjKkgsoJ017vrvCNKZRaCCn+Z7Q=="], - "@turf/points-within-polygon": ["@turf/points-within-polygon@7.3.3", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-shi4H7sO+yK+8y7IHyErSCl3QD9QTNIdaXD5uePt91LpheSWGm75Vgi12pOlY+LosM3Yip/Rd6AoRxzkM2NBAA=="], + "@turf/points-within-polygon": ["@turf/points-within-polygon@7.3.4", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-HfT83Iw99zywDfCp+nJwS+JDzH+GdNug0sut9WDjGEznHKoZyAcOk+hGKL/ja8TeCLx9VsZHOiVCQFm+NTgvgA=="], - "@turf/polygon-smooth": ["@turf/polygon-smooth@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-ejFe9fXRM5nUEhUbUwXMHhHfexU5uIsAQxXU9FVifJK28NMPD9ABpmmZOk+mxFkKKLgA5Ha0fWi15kkua4vf3w=="], + "@turf/polygon-smooth": ["@turf/polygon-smooth@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-AnpaGgNYVvP/dfz10id3AotDrUh9O+4unXCk3es1ff51VrpUhVgH3H+zyTSbVL4zAXN/ejPb8UnKCxDvNOQs4g=="], - "@turf/polygon-tangents": ["@turf/polygon-tangents@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/boolean-within": "7.3.3", "@turf/explode": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/nearest-point": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Agm+fnLH4YhOUPtnYGsoRweR1hZeo9H9m4jEYk64yy98lVRHeHwN2k+Mxes17IoQ9bfqk+1i57RISl4M4ySBgg=="], + "@turf/polygon-tangents": ["@turf/polygon-tangents@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/boolean-within": "7.3.4", "@turf/explode": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/nearest-point": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-D1IFocXJYF8PUMZ+BmnOstyRrzklqC86FgakYVk9O61F9Ki8LhMGaRfF+6reKMD473KvHvEf1M2EgmGt+OHDRw=="], - "@turf/polygon-to-line": ["@turf/polygon-to-line@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-DK47Ne3hHgoukTKn5ZlHKk+XuxnED4ePTQHxDHJoPJHd2lVVZugur9GnGx82ZZBSV/aWLonOGQhrdL+bLux4lw=="], + "@turf/polygon-to-line": ["@turf/polygon-to-line@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-xhmOZ5rHZAKLUDLeYKWMsX84ip8CCGOcGLBHtPPYOjdIDHddMV6Sxt5kVgkmlZpK6NEWEmOD6lYR4obxHcHlGA=="], - "@turf/polygonize": ["@turf/polygonize@7.3.3", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.3", "@turf/envelope": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-R4on0ywo4rF7xxCnO0rle3OpnUDFKWe/x9uo57R2l4o0v1MexgLV5uEGmJsK3ZN09nDEMlbZyaU2EMjA8yMa7w=="], + "@turf/polygonize": ["@turf/polygonize@7.3.4", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.4", "@turf/envelope": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-kmj05rkJ4tE8LvbQ4GVsL5GOrRiX/F5W4RIdxo8gPGTw1Y5oLG/1vFk6Hg6x63L1WcdNtF0sq6AdEI0G9BXWXA=="], - "@turf/projection": ["@turf/projection@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-yFPO74m0n/z9kO472AzyBkl9yMrMQJnUsh4O/Qr3FkGX0hauCWvkSkMrDS4Ax0fD/WoNJBjl84AimMtNs75h4g=="], + "@turf/projection": ["@turf/projection@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-p91zOaLmzoBHzU/2H6Ot1tOhTmAom85n1P7I4Oo0V9xU8hmJXWfNnomLFf/6rnkKDIFZkncLQIBz4iIecZ61sA=="], - "@turf/quadrat-analysis": ["@turf/quadrat-analysis@7.3.3", "", { "dependencies": { "@turf/area": "7.3.3", "@turf/bbox": "7.3.3", "@turf/bbox-polygon": "7.3.3", "@turf/centroid": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/point-grid": "7.3.3", "@turf/random": "7.3.3", "@turf/square-grid": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-0HbClHHe2rmtWjQN54MrY1FIzeZnzS1nWtDwoiwP30/PC5d4nVNCgZalLrSpcLQp07Fk02PDdsERtj9ANiVGBQ=="], + "@turf/quadrat-analysis": ["@turf/quadrat-analysis@7.3.4", "", { "dependencies": { "@turf/area": "7.3.4", "@turf/bbox": "7.3.4", "@turf/bbox-polygon": "7.3.4", "@turf/centroid": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/point-grid": "7.3.4", "@turf/random": "7.3.4", "@turf/square-grid": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Yxqq8wgrDiXIX+s0uOZ2exmYfRwTIcUX8J7j4P+sbyLVbyN8W3AjN2s5ZX21P0aFf3v24FBd2fNWlm5VmMUAdg=="], - "@turf/random": ["@turf/random@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-11gqu8Fu1mACzcEAPrc9N8QFNeHfSOI21j80Tj4E1fa5qTgbveZ8nIKlIc5Y9XmWfNzSWwjABFejNs8E/OXcag=="], + "@turf/random": ["@turf/random@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-CXMS5XDoI5x0zc1aCYbn3t603k8hjaFHNsSOvGBW20z68cwP0UwMQQr0KLqFPqI4J1O7dMX+urn8IHH27RXFYg=="], - "@turf/rectangle-grid": ["@turf/rectangle-grid@7.3.3", "", { "dependencies": { "@turf/boolean-intersects": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-6o8dwH2VUpSyMtpudlLuQAncw/41ByAJUmOoUS/nTvD2hMpUh8dNG2oPwL8Fx512D69rXVurPnLotrh5wl1mcQ=="], + "@turf/rectangle-grid": ["@turf/rectangle-grid@7.3.4", "", { "dependencies": { "@turf/boolean-intersects": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-qM7vujJ4wndB4MKZlEcnUSawgvs5wXpSEFf4f+LWRIfmGhtv6serzDqFzWcmy8kF8hg5J465PMktRmAFWq/a+w=="], - "@turf/rewind": ["@turf/rewind@7.3.3", "", { "dependencies": { "@turf/boolean-clockwise": "7.3.3", "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-7cUv9zBUDJmQMBVfJD3uwP8hNXEmpn1EgZVb+ZeW4Fa4+WGrjoDIxGx9O+DyH7KXcUqK/PiQn3NgRvPV8DEs1Q=="], + "@turf/rewind": ["@turf/rewind@7.3.4", "", { "dependencies": { "@turf/boolean-clockwise": "7.3.4", "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-4BZ8MHMujl4NAT7XnIs7JoOuDhpR96oDTB0RtqTeIP4onioIedVnw1ZA3Uq08sILGpR0qKLuDsvdz4x9jtbptg=="], - "@turf/rhumb-bearing": ["@turf/rhumb-bearing@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-Ips10N/uc6d66h2ZYAEf1Ppsf6In7BIzUQ9l3MoyKZh5lLyS1wpmNE79vRAdtTnL8NX95jKUZXaOczxsOql+PQ=="], + "@turf/rhumb-bearing": ["@turf/rhumb-bearing@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-tvX1toSo80q0iL0cUMMXpSKsCCfOjRqDGCmOdR6B9shhk6xP1ZM2PLQDr+MFPBFeGyQuyY4CNFkV2+3DF49vYw=="], - "@turf/rhumb-destination": ["@turf/rhumb-destination@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-NrdkQr8D5RqzDsg0/SfYE+ca9MThNlGQecUUaV/a6pxLYq7VM1hvLRvTSJ9fgdiwSaMR73lB3/VZxrhSGzkWKA=="], + "@turf/rhumb-destination": ["@turf/rhumb-destination@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-6HikEb5nm2A18FQWk6vVLMQkc099I/7c69j47RYM27xQK8J8uBCNk1zLYyMPcZTh24xcNSbZ1iPHDsDOqw6wWQ=="], - "@turf/rhumb-distance": ["@turf/rhumb-distance@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-bOgp9ifVA0gt1H4OvkCqE+0+ZOSOBVJhpa3vT53aBJftKLq9iabmLEpRBDzrb+rnpT/BBYhLC8HgHFfzuwskjw=="], + "@turf/rhumb-distance": ["@turf/rhumb-distance@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-phwskeijdgYMsR3qDQmytfsg2iZcp3uWK7UFc76wKTEpxozbDGFI4enX5gXvZPpyI1iD7gsktGqHsO33AjnFDA=="], - "@turf/sample": ["@turf/sample@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-6nKybDtJEVo26JNHIWzdBKah3fzDiiVS5tsXt5tft0SXoS431cbx1eMtaUsjSuCanuOscMqo//0pkLm04PKOAA=="], + "@turf/sample": ["@turf/sample@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-XzAATg09c2XYAXkIBbg8lktSrU1tXNjJYXtbVwF6jLp1q2wTRpwb+mZpTEPAwzZwVF81uR5c0CsdQyr5UHINVw=="], - "@turf/sector": ["@turf/sector@7.3.3", "", { "dependencies": { "@turf/circle": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/line-arc": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-rBOgHb3z3xWMvuBAR2Bg3/UbMaaIzvgmg92vUdpMLU+IjKELpbXzaguHFeH/xIIjPoQLtwrGKMVYg27UI3Kv4g=="], + "@turf/sector": ["@turf/sector@7.3.4", "", { "dependencies": { "@turf/circle": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/line-arc": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-x2tNAXl21HRcF302ghU5ohE/vmmfDcXpQKgoWHyi7o5Q9kDRBwy7kbvr5YxbT3vwW/kAWUDYM7FoXNH42bXgCw=="], - "@turf/shortest-path": ["@turf/shortest-path@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/bbox-polygon": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/clean-coords": "7.3.3", "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/transform-scale": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-md77Ork6TvHyxQnPSlUMFjmU8FZdxWUbZ6YnAMZDB8yYuNhIz/atc9oXY4dl+c9uiIjdCN0B4OVCmoedcS2WLw=="], + "@turf/shortest-path": ["@turf/shortest-path@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/bbox-polygon": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/clean-coords": "7.3.4", "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/transform-scale": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-xbK/oM+JRL+lJCHkAdZ3QPgoivT40J9WKJ0d1Ddt8LXTpzX2YeJVgcwOZaBPG9ncZUzHfHIWS1rUjc54clnZcg=="], - "@turf/simplify": ["@turf/simplify@7.3.3", "", { "dependencies": { "@turf/clean-coords": "7.3.3", "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-skbIAkjOOCTthcSquUves5a+VkBTiqhPAsmTbCtQCypgP5fTrqsldeMD5nRuT7cmtSNS+OY9wbI1iJy65AYbrw=="], + "@turf/simplify": ["@turf/simplify@7.3.4", "", { "dependencies": { "@turf/clean-coords": "7.3.4", "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-OoSwu3vI0H9P+GzLDaOJIL9v0V8ubeP8wQjM8GeMEZrq6U2uh9JWQnAU+jviT3ODcKF5H+88snpiMik585L0wA=="], - "@turf/square": ["@turf/square@7.3.3", "", { "dependencies": { "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-lV1pX42jR3v3Pt7guL2qJKbNnKH0Q7cutrFE8UyWL08l5t8sUIGSjWuwjU0RfgF3cXcsMTEd9EgspsHvr1Rewg=="], + "@turf/square": ["@turf/square@7.3.4", "", { "dependencies": { "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-vJ+NeiEaOVsb8YiUExtyIgvH+ZybthHszl2TASZn5q340ioKHPb2JeHGlbgrB2x8pEMh3MVhoqxAbXDuND/cnw=="], - "@turf/square-grid": ["@turf/square-grid@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/rectangle-grid": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-VItI5IAb2BsZNst2ujTVbA3OYT1XfGYVnjPBZfJq6InjyyMrvuDdotXHVC4mYJgtcuVblcs6oxNzhkQaDdnL9w=="], + "@turf/square-grid": ["@turf/square-grid@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/rectangle-grid": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-MgjlVRklQYFfQm9yJNha9kXothLPliVdeycNdmn4lWLH3SOZe1rqJPB5Z9+dhmJELT3BJraDq3W5ik5taEpKyQ=="], - "@turf/standard-deviational-ellipse": ["@turf/standard-deviational-ellipse@7.3.3", "", { "dependencies": { "@turf/center-mean": "7.3.3", "@turf/ellipse": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/points-within-polygon": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-wUCjdvqv60a3dXzeSQcNUYW1/3944YPdASweUNzQjARSpvaWurxunyedB9r+flaOer2TqXw+vWgXtCX0kqi83A=="], + "@turf/standard-deviational-ellipse": ["@turf/standard-deviational-ellipse@7.3.4", "", { "dependencies": { "@turf/center-mean": "7.3.4", "@turf/ellipse": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/points-within-polygon": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-+BaetOKN8zA2mQCVTcRWMcfidNR3JkjmYj0r5iGRncK0J+pdxIjX2q6sF6yBMOOxMoEMy393P7j07HdBIPbibw=="], - "@turf/tag": ["@turf/tag@7.3.3", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.3", "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-BmJDDXbRJkdk/IptrRgcfaGWwcf4Qboe2lXN6IhY3gu2jzHWGH/7hq37Z7YAA+KhKKNHTI94eYr0AKuOmhLgKw=="], + "@turf/tag": ["@turf/tag@7.3.4", "", { "dependencies": { "@turf/boolean-point-in-polygon": "7.3.4", "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-ienLhLzBLeChtKhbJMmU3/vGg0hWzi6Wh/q0n39W4CmdNb+yAoGQhlYjcCbPOJT4IcdFlWE3OhbP9EmH/xPgfg=="], - "@turf/tesselate": ["@turf/tesselate@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "earcut": "^2.2.4", "tslib": "^2.8.1" } }, "sha512-N5vozeU+f66p9XHEKfxwbBCuaVcKDDbdB8ECwobs65b4iXqoyY8jM1ZfS15roS105gG+SwaXrw/XPi2XAgxwRg=="], + "@turf/tesselate": ["@turf/tesselate@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "earcut": "^2.2.4", "tslib": "^2.8.1" } }, "sha512-NnDgVb5ZchJEhEpq1je2hktS5UhnHMfeeumxZQgnIoMeGILpJtcOL//b/1biBBUVSJ0ZZg5zxiHdQc1PgK2gxA=="], - "@turf/tin": ["@turf/tin@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-7Cel4wMbNvnIZGxT/6Z8+rFAR4QR5QDGYFE9pXqLPQj3zpEw4SW3pbDEEdNNtZFhtXmU/eYh+62pwbpfeaBL/g=="], + "@turf/tin": ["@turf/tin@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-tuegrGlbKPp6Dm8r5SuYDtQ2EVzdXVVxelqI1agnzj9N+l8oTBIKLRxRbBkLsizeVIDnlmVHCQB6cRc3v+u8JQ=="], - "@turf/transform-rotate": ["@turf/transform-rotate@7.3.3", "", { "dependencies": { "@turf/centroid": "7.3.3", "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/rhumb-bearing": "7.3.3", "@turf/rhumb-destination": "7.3.3", "@turf/rhumb-distance": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-0aa/o1lg7xEChyeSvLrkIzHxZk9Dx38v9wFF2YMmp6oIPEQzdwIFlH9+H2trTbTaqzLgL6d41NAQbCRW7NsOeg=="], + "@turf/transform-rotate": ["@turf/transform-rotate@7.3.4", "", { "dependencies": { "@turf/centroid": "7.3.4", "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/rhumb-bearing": "7.3.4", "@turf/rhumb-destination": "7.3.4", "@turf/rhumb-distance": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-pbUG6QLwyJvvitq4aAq4IQH79X8T0NmEPUGDUEEP69yW7t4+UZjDBAVbCKwpOc8gtsK0K5yvxlZ0e2CdtpNmEw=="], - "@turf/transform-scale": ["@turf/transform-scale@7.3.3", "", { "dependencies": { "@turf/bbox": "7.3.3", "@turf/center": "7.3.3", "@turf/centroid": "7.3.3", "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/rhumb-bearing": "7.3.3", "@turf/rhumb-destination": "7.3.3", "@turf/rhumb-distance": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-P8GrF5lZrqXiY1uEKaB0X5dnkR4hInD3lBYwFjA1YkIvG4FRYYM5lIs5/H2mS4LlOu4cMFgHFRygAzsSIPhHyw=="], + "@turf/transform-scale": ["@turf/transform-scale@7.3.4", "", { "dependencies": { "@turf/bbox": "7.3.4", "@turf/center": "7.3.4", "@turf/centroid": "7.3.4", "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/rhumb-bearing": "7.3.4", "@turf/rhumb-destination": "7.3.4", "@turf/rhumb-distance": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-7gUIFFHaU3Ewj3rCzIu5Yo7Zjfv4R2ypjh6UWiMJnDavb7RQ8fn0AKKcNMA/vF/yxuncp2l3zoa2gygv4AKM8A=="], - "@turf/transform-translate": ["@turf/transform-translate@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@turf/meta": "7.3.3", "@turf/rhumb-destination": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-iROzUmoGTYcWR5sQbr5HyaTHWyWG+nYonwzfEB+mZUcfSuyfQ7hf4QJ3RJswcbJo1AqoIkClmzZRqdty+sBjtQ=="], + "@turf/transform-translate": ["@turf/transform-translate@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@turf/meta": "7.3.4", "@turf/rhumb-destination": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-qbSIEueOR8mNB7p4EB88vHvUAyuSBM8zxP68UiiTNV3Gh+OZF2VXTFiu3EFYMTaD9sE6Lxmzvv3fjW8N2q82pw=="], - "@turf/triangle-grid": ["@turf/triangle-grid@7.3.3", "", { "dependencies": { "@turf/distance": "7.3.3", "@turf/helpers": "7.3.3", "@turf/intersect": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-x0BaixcOM9rcXbLO55ndfcdxJsxWtX6BNeD0ZAYNNmX5CQqqsFVEgoiNSiR9Oe7NeeLPF7tSIIaAfJml9rn97A=="], + "@turf/triangle-grid": ["@turf/triangle-grid@7.3.4", "", { "dependencies": { "@turf/distance": "7.3.4", "@turf/helpers": "7.3.4", "@turf/intersect": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-0bki10XwYvNcPzDcSs5kUh3niOogdVeFtawJEz5FdlyTAUohbNlC+Vb40K//OqEyTrGII+q1/dE4q+1J6ZCmDA=="], - "@turf/truncate": ["@turf/truncate@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-p4jZMgxQWlIX8WcbjJiuxpAFwFxpXkp2jCEAWlz8hMaKEky0Kh1ZhIsE4WpUNxeFx7/QpJh9BiHbvaRKdETjIA=="], + "@turf/truncate": ["@turf/truncate@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-VPXdae9+RLLM19FMrJgt7QANBikm7DxPbfp/dXgzE4Ca7v+mJ4T1fYc7gCZDaqOrWMccHKbvv4iSuW7YZWdIIA=="], - "@turf/turf": ["@turf/turf@7.3.3", "", { "dependencies": { "@turf/along": "7.3.3", "@turf/angle": "7.3.3", "@turf/area": "7.3.3", "@turf/bbox": "7.3.3", "@turf/bbox-clip": "7.3.3", "@turf/bbox-polygon": "7.3.3", "@turf/bearing": "7.3.3", "@turf/bezier-spline": "7.3.3", "@turf/boolean-clockwise": "7.3.3", "@turf/boolean-concave": "7.3.3", "@turf/boolean-contains": "7.3.3", "@turf/boolean-crosses": "7.3.3", "@turf/boolean-disjoint": "7.3.3", "@turf/boolean-equal": "7.3.3", "@turf/boolean-intersects": "7.3.3", "@turf/boolean-overlap": "7.3.3", "@turf/boolean-parallel": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/boolean-point-on-line": "7.3.3", "@turf/boolean-touches": "7.3.3", "@turf/boolean-valid": "7.3.3", "@turf/boolean-within": "7.3.3", "@turf/buffer": "7.3.3", "@turf/center": "7.3.3", "@turf/center-mean": "7.3.3", "@turf/center-median": "7.3.3", "@turf/center-of-mass": "7.3.3", "@turf/centroid": "7.3.3", "@turf/circle": "7.3.3", "@turf/clean-coords": "7.3.3", "@turf/clone": "7.3.3", "@turf/clusters": "7.3.3", "@turf/clusters-dbscan": "7.3.3", "@turf/clusters-kmeans": "7.3.3", "@turf/collect": "7.3.3", "@turf/combine": "7.3.3", "@turf/concave": "7.3.3", "@turf/convex": "7.3.3", "@turf/destination": "7.3.3", "@turf/difference": "7.3.3", "@turf/dissolve": "7.3.3", "@turf/distance": "7.3.3", "@turf/distance-weight": "7.3.3", "@turf/ellipse": "7.3.3", "@turf/envelope": "7.3.3", "@turf/explode": "7.3.3", "@turf/flatten": "7.3.3", "@turf/flip": "7.3.3", "@turf/geojson-rbush": "7.3.3", "@turf/great-circle": "7.3.3", "@turf/helpers": "7.3.3", "@turf/hex-grid": "7.3.3", "@turf/interpolate": "7.3.3", "@turf/intersect": "7.3.3", "@turf/invariant": "7.3.3", "@turf/isobands": "7.3.3", "@turf/isolines": "7.3.3", "@turf/kinks": "7.3.3", "@turf/length": "7.3.3", "@turf/line-arc": "7.3.3", "@turf/line-chunk": "7.3.3", "@turf/line-intersect": "7.3.3", "@turf/line-offset": "7.3.3", "@turf/line-overlap": "7.3.3", "@turf/line-segment": "7.3.3", "@turf/line-slice": "7.3.3", "@turf/line-slice-along": "7.3.3", "@turf/line-split": "7.3.3", "@turf/line-to-polygon": "7.3.3", "@turf/mask": "7.3.3", "@turf/meta": "7.3.3", "@turf/midpoint": "7.3.3", "@turf/moran-index": "7.3.3", "@turf/nearest-neighbor-analysis": "7.3.3", "@turf/nearest-point": "7.3.3", "@turf/nearest-point-on-line": "7.3.3", "@turf/nearest-point-to-line": "7.3.3", "@turf/planepoint": "7.3.3", "@turf/point-grid": "7.3.3", "@turf/point-on-feature": "7.3.3", "@turf/point-to-line-distance": "7.3.3", "@turf/point-to-polygon-distance": "7.3.3", "@turf/points-within-polygon": "7.3.3", "@turf/polygon-smooth": "7.3.3", "@turf/polygon-tangents": "7.3.3", "@turf/polygon-to-line": "7.3.3", "@turf/polygonize": "7.3.3", "@turf/projection": "7.3.3", "@turf/quadrat-analysis": "7.3.3", "@turf/random": "7.3.3", "@turf/rectangle-grid": "7.3.3", "@turf/rewind": "7.3.3", "@turf/rhumb-bearing": "7.3.3", "@turf/rhumb-destination": "7.3.3", "@turf/rhumb-distance": "7.3.3", "@turf/sample": "7.3.3", "@turf/sector": "7.3.3", "@turf/shortest-path": "7.3.3", "@turf/simplify": "7.3.3", "@turf/square": "7.3.3", "@turf/square-grid": "7.3.3", "@turf/standard-deviational-ellipse": "7.3.3", "@turf/tag": "7.3.3", "@turf/tesselate": "7.3.3", "@turf/tin": "7.3.3", "@turf/transform-rotate": "7.3.3", "@turf/transform-scale": "7.3.3", "@turf/transform-translate": "7.3.3", "@turf/triangle-grid": "7.3.3", "@turf/truncate": "7.3.3", "@turf/union": "7.3.3", "@turf/unkink-polygon": "7.3.3", "@turf/voronoi": "7.3.3", "@types/geojson": "^7946.0.10", "tslib": "^2.8.1" } }, "sha512-H3UUrd5E6+6maR1vTcYO3vcd9kivVzhEhTXUfyjLLm9SaIoedcTIADNa/L/XnBVHOUxH3si7w5/HBQqR4ct5AA=="], + "@turf/turf": ["@turf/turf@7.3.4", "", { "dependencies": { "@turf/along": "7.3.4", "@turf/angle": "7.3.4", "@turf/area": "7.3.4", "@turf/bbox": "7.3.4", "@turf/bbox-clip": "7.3.4", "@turf/bbox-polygon": "7.3.4", "@turf/bearing": "7.3.4", "@turf/bezier-spline": "7.3.4", "@turf/boolean-clockwise": "7.3.4", "@turf/boolean-concave": "7.3.4", "@turf/boolean-contains": "7.3.4", "@turf/boolean-crosses": "7.3.4", "@turf/boolean-disjoint": "7.3.4", "@turf/boolean-equal": "7.3.4", "@turf/boolean-intersects": "7.3.4", "@turf/boolean-overlap": "7.3.4", "@turf/boolean-parallel": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/boolean-point-on-line": "7.3.4", "@turf/boolean-touches": "7.3.4", "@turf/boolean-valid": "7.3.4", "@turf/boolean-within": "7.3.4", "@turf/buffer": "7.3.4", "@turf/center": "7.3.4", "@turf/center-mean": "7.3.4", "@turf/center-median": "7.3.4", "@turf/center-of-mass": "7.3.4", "@turf/centroid": "7.3.4", "@turf/circle": "7.3.4", "@turf/clean-coords": "7.3.4", "@turf/clone": "7.3.4", "@turf/clusters": "7.3.4", "@turf/clusters-dbscan": "7.3.4", "@turf/clusters-kmeans": "7.3.4", "@turf/collect": "7.3.4", "@turf/combine": "7.3.4", "@turf/concave": "7.3.4", "@turf/convex": "7.3.4", "@turf/destination": "7.3.4", "@turf/difference": "7.3.4", "@turf/dissolve": "7.3.4", "@turf/distance": "7.3.4", "@turf/distance-weight": "7.3.4", "@turf/ellipse": "7.3.4", "@turf/envelope": "7.3.4", "@turf/explode": "7.3.4", "@turf/flatten": "7.3.4", "@turf/flip": "7.3.4", "@turf/geojson-rbush": "7.3.4", "@turf/great-circle": "7.3.4", "@turf/helpers": "7.3.4", "@turf/hex-grid": "7.3.4", "@turf/interpolate": "7.3.4", "@turf/intersect": "7.3.4", "@turf/invariant": "7.3.4", "@turf/isobands": "7.3.4", "@turf/isolines": "7.3.4", "@turf/kinks": "7.3.4", "@turf/length": "7.3.4", "@turf/line-arc": "7.3.4", "@turf/line-chunk": "7.3.4", "@turf/line-intersect": "7.3.4", "@turf/line-offset": "7.3.4", "@turf/line-overlap": "7.3.4", "@turf/line-segment": "7.3.4", "@turf/line-slice": "7.3.4", "@turf/line-slice-along": "7.3.4", "@turf/line-split": "7.3.4", "@turf/line-to-polygon": "7.3.4", "@turf/mask": "7.3.4", "@turf/meta": "7.3.4", "@turf/midpoint": "7.3.4", "@turf/moran-index": "7.3.4", "@turf/nearest-neighbor-analysis": "7.3.4", "@turf/nearest-point": "7.3.4", "@turf/nearest-point-on-line": "7.3.4", "@turf/nearest-point-to-line": "7.3.4", "@turf/planepoint": "7.3.4", "@turf/point-grid": "7.3.4", "@turf/point-on-feature": "7.3.4", "@turf/point-to-line-distance": "7.3.4", "@turf/point-to-polygon-distance": "7.3.4", "@turf/points-within-polygon": "7.3.4", "@turf/polygon-smooth": "7.3.4", "@turf/polygon-tangents": "7.3.4", "@turf/polygon-to-line": "7.3.4", "@turf/polygonize": "7.3.4", "@turf/projection": "7.3.4", "@turf/quadrat-analysis": "7.3.4", "@turf/random": "7.3.4", "@turf/rectangle-grid": "7.3.4", "@turf/rewind": "7.3.4", "@turf/rhumb-bearing": "7.3.4", "@turf/rhumb-destination": "7.3.4", "@turf/rhumb-distance": "7.3.4", "@turf/sample": "7.3.4", "@turf/sector": "7.3.4", "@turf/shortest-path": "7.3.4", "@turf/simplify": "7.3.4", "@turf/square": "7.3.4", "@turf/square-grid": "7.3.4", "@turf/standard-deviational-ellipse": "7.3.4", "@turf/tag": "7.3.4", "@turf/tesselate": "7.3.4", "@turf/tin": "7.3.4", "@turf/transform-rotate": "7.3.4", "@turf/transform-scale": "7.3.4", "@turf/transform-translate": "7.3.4", "@turf/triangle-grid": "7.3.4", "@turf/truncate": "7.3.4", "@turf/union": "7.3.4", "@turf/unkink-polygon": "7.3.4", "@turf/voronoi": "7.3.4", "@types/geojson": "^7946.0.10", "@types/kdbush": "^3.0.5", "tslib": "^2.8.1" } }, "sha512-uMAKLYt2tWJj8xIepq4vExF1r8fzJviP/5l/elDHuRyauI2mASy/Gox6kSFlrN0t0p8AT4Cs8o//4GuJTXyC+Q=="], - "@turf/union": ["@turf/union@7.3.3", "", { "dependencies": { "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-bEh7AxpkZepXOKe2KcjhFjVy671cf+3Mgq91DHDeINHtja7rQtSbJoyXbbasDGQEMcxiVQOn9VLWOCTIPmkSQA=="], + "@turf/union": ["@turf/union@7.3.4", "", { "dependencies": { "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "polyclip-ts": "^0.16.8", "tslib": "^2.8.1" } }, "sha512-JJYyPMmGcrTa9sPv2ief2QU9Hb//cEAU1zgKu/OfoCMa9a8Imp5QVm9UTAkhGlc+4qm/N/X16iJ+cvVWaxPjkg=="], - "@turf/unkink-polygon": ["@turf/unkink-polygon@7.3.3", "", { "dependencies": { "@turf/area": "7.3.3", "@turf/boolean-point-in-polygon": "7.3.3", "@turf/helpers": "7.3.3", "@turf/meta": "7.3.3", "@types/geojson": "^7946.0.10", "rbush": "^3.0.1", "tslib": "^2.8.1" } }, "sha512-FlTX/T5vat9zyV1xngLfnl5IryGFrSLmDsJswII7AU8DtZKe7URyD7AW5TWPUKDHCAJEoiP8lrDCQrZsoO9F8g=="], + "@turf/unkink-polygon": ["@turf/unkink-polygon@7.3.4", "", { "dependencies": { "@turf/area": "7.3.4", "@turf/boolean-point-in-polygon": "7.3.4", "@turf/helpers": "7.3.4", "@turf/meta": "7.3.4", "@types/geojson": "^7946.0.10", "rbush": "^3.0.1", "tslib": "^2.8.1" } }, "sha512-dFIqTLAnLL5D3OANPJtRb5OvmOM81GlNCjwgjlLQy0xdpYgKwGdE+gNXjygDrPUUXNc22xnaj3EfAfC3Pq7W4Q=="], - "@turf/voronoi": ["@turf/voronoi@7.3.3", "", { "dependencies": { "@turf/clone": "7.3.3", "@turf/helpers": "7.3.3", "@turf/invariant": "7.3.3", "@types/d3-voronoi": "^1.1.12", "@types/geojson": "^7946.0.10", "d3-voronoi": "1.1.2", "tslib": "^2.8.1" } }, "sha512-eb3ryYjtUENKSfSmVzeCB7r2l4F6+T6NcYO1wtiGdVlm8H1ffqoGoOP8GexazwFDPXiNvA/6uEdAU0ib6nh/qw=="], + "@turf/voronoi": ["@turf/voronoi@7.3.4", "", { "dependencies": { "@turf/clone": "7.3.4", "@turf/helpers": "7.3.4", "@turf/invariant": "7.3.4", "@types/d3-voronoi": "^1.1.12", "@types/geojson": "^7946.0.10", "d3-voronoi": "1.1.2", "tslib": "^2.8.1" } }, "sha512-cwKSiDzDHRnA7yafQ1zOhWxRuMzp+fYFFzadCdByBAG1jAD7UlFwKhS1fjNPBNs67Fl5X3LL5ahCLW5gEdFgmg=="], "@tybys/wasm-util": ["@tybys/wasm-util@0.10.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg=="], @@ -983,7 +975,7 @@ "@types/katex": ["@types/katex@0.16.8", "", {}, "sha512-trgaNyfU+Xh2Tc+ABIb44a5AYUpicB3uwirOioeOkNPPbmgRNtcWyDeeFRzjPZENO9Vq8gvVqfhaaXWLlevVwg=="], - "@types/kdbush": ["@types/kdbush@1.0.7", "", {}, "sha512-QM5iB8m/0mnGOjUKshErIZQ0LseyTieRSYc3yaOpmrRM0xbWiOuJUWlduJx+TPNK7/VFMWphUGwx3nus7eT1Wg=="], + "@types/kdbush": ["@types/kdbush@3.0.5", "", {}, "sha512-tdJz7jaWFu4nR+8b2B+CdPZ6811ighYylWsu2hpsivapzW058yP0KdfZuNY89IiRe5jbKvBGXN3LQdN2KPXVdQ=="], "@types/lodash": ["@types/lodash@4.17.23", "", {}, "sha512-RDvF6wTulMPjrNdCoYRC8gNR880JNGT8uB+REUpC2Ns4pRqQJhGz90wh7rgdXDPpCczF3VGktDuFGVnz8zP7HA=="], @@ -997,7 +989,7 @@ "@types/ms": ["@types/ms@2.1.0", "", {}, "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA=="], - "@types/node": ["@types/node@20.19.32", "", { "dependencies": { "undici-types": "~6.21.0" } }, "sha512-Ez8QE4DMfhjjTsES9K2dwfV258qBui7qxUsoaixZDiTzbde4U12e1pXGNu/ECsUIOi5/zoCxAQxIhQnaUQ2VvA=="], + "@types/node": ["@types/node@20.19.33", "", { "dependencies": { "undici-types": "~6.21.0" } }, "sha512-Rs1bVAIdBs5gbTIKza/tgpMuG1k3U/UMJLWecIMxNdJFDMzcM5LOiLVRYh3PilWEYDIeUDv7bpiHPLPsbydGcw=="], "@types/node-fetch": ["@types/node-fetch@2.6.13", "", { "dependencies": { "@types/node": "*", "form-data": "^4.0.4" } }, "sha512-QGpRVpzSaUs30JBSGPjOg4Uveu384erbHBoT1zeONvyCfwQxIkUshLAOqN/k9EjGviPRmWTTe6aH2qySWKTVSw=="], @@ -1007,7 +999,7 @@ "@types/phoenix": ["@types/phoenix@1.6.7", "", {}, "sha512-oN9ive//QSBkf19rfDv45M7eZPi0eEXylht2OLEXicu5b4KoQ1OzXIw+xDSGWxSxe1JmepRR/ZH283vsu518/Q=="], - "@types/react": ["@types/react@19.2.13", "", { "dependencies": { "csstype": "^3.2.2" } }, "sha512-KkiJeU6VbYbUOp5ITMIc7kBfqlYkKA5KhEHVrGMmUUMt7NeaZg65ojdPk+FtNrBAOXNVM5QM72jnADjM+XVRAQ=="], + "@types/react": ["@types/react@19.2.14", "", { "dependencies": { "csstype": "^3.2.2" } }, "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w=="], "@types/react-dom": ["@types/react-dom@19.2.3", "", { "peerDependencies": { "@types/react": "^19.2.0" } }, "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ=="], @@ -1027,25 +1019,25 @@ "@types/ws": ["@types/ws@8.18.1", "", { "dependencies": { "@types/node": "*" } }, "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg=="], - "@typescript-eslint/eslint-plugin": ["@typescript-eslint/eslint-plugin@8.54.0", "", { "dependencies": { "@eslint-community/regexpp": "^4.12.2", "@typescript-eslint/scope-manager": "8.54.0", "@typescript-eslint/type-utils": "8.54.0", "@typescript-eslint/utils": "8.54.0", "@typescript-eslint/visitor-keys": "8.54.0", "ignore": "^7.0.5", "natural-compare": "^1.4.0", "ts-api-utils": "^2.4.0" }, "peerDependencies": { "@typescript-eslint/parser": "^8.54.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-hAAP5io/7csFStuOmR782YmTthKBJ9ND3WVL60hcOjvtGFb+HJxH4O5huAcmcZ9v9G8P+JETiZ/G1B8MALnWZQ=="], + "@typescript-eslint/eslint-plugin": ["@typescript-eslint/eslint-plugin@8.55.0", "", { "dependencies": { "@eslint-community/regexpp": "^4.12.2", "@typescript-eslint/scope-manager": "8.55.0", "@typescript-eslint/type-utils": "8.55.0", "@typescript-eslint/utils": "8.55.0", "@typescript-eslint/visitor-keys": "8.55.0", "ignore": "^7.0.5", "natural-compare": "^1.4.0", "ts-api-utils": "^2.4.0" }, "peerDependencies": { "@typescript-eslint/parser": "^8.55.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-1y/MVSz0NglV1ijHC8OT49mPJ4qhPYjiK08YUQVbIOyu+5k862LKUHFkpKHWu//zmr7hDR2rhwUm6gnCGNmGBQ=="], - "@typescript-eslint/parser": ["@typescript-eslint/parser@8.54.0", "", { "dependencies": { "@typescript-eslint/scope-manager": "8.54.0", "@typescript-eslint/types": "8.54.0", "@typescript-eslint/typescript-estree": "8.54.0", "@typescript-eslint/visitor-keys": "8.54.0", "debug": "^4.4.3" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-BtE0k6cjwjLZoZixN0t5AKP0kSzlGu7FctRXYuPAm//aaiZhmfq1JwdYpYr1brzEspYyFeF+8XF5j2VK6oalrA=="], + "@typescript-eslint/parser": ["@typescript-eslint/parser@8.55.0", "", { "dependencies": { "@typescript-eslint/scope-manager": "8.55.0", "@typescript-eslint/types": "8.55.0", "@typescript-eslint/typescript-estree": "8.55.0", "@typescript-eslint/visitor-keys": "8.55.0", "debug": "^4.4.3" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-4z2nCSBfVIMnbuu8uinj+f0o4qOeggYJLbjpPHka3KH1om7e+H9yLKTYgksTaHcGco+NClhhY2vyO3HsMH1RGw=="], - "@typescript-eslint/project-service": ["@typescript-eslint/project-service@8.54.0", "", { "dependencies": { "@typescript-eslint/tsconfig-utils": "^8.54.0", "@typescript-eslint/types": "^8.54.0", "debug": "^4.4.3" }, "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-YPf+rvJ1s7MyiWM4uTRhE4DvBXrEV+d8oC3P9Y2eT7S+HBS0clybdMIPnhiATi9vZOYDc7OQ1L/i6ga6NFYK/g=="], + "@typescript-eslint/project-service": ["@typescript-eslint/project-service@8.55.0", "", { "dependencies": { "@typescript-eslint/tsconfig-utils": "^8.55.0", "@typescript-eslint/types": "^8.55.0", "debug": "^4.4.3" }, "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-zRcVVPFUYWa3kNnjaZGXSu3xkKV1zXy8M4nO/pElzQhFweb7PPtluDLQtKArEOGmjXoRjnUZ29NjOiF0eCDkcQ=="], - "@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.54.0", "", { "dependencies": { "@typescript-eslint/types": "8.54.0", "@typescript-eslint/visitor-keys": "8.54.0" } }, "sha512-27rYVQku26j/PbHYcVfRPonmOlVI6gihHtXFbTdB5sb6qA0wdAQAbyXFVarQ5t4HRojIz64IV90YtsjQSSGlQg=="], + "@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.55.0", "", { "dependencies": { "@typescript-eslint/types": "8.55.0", "@typescript-eslint/visitor-keys": "8.55.0" } }, "sha512-fVu5Omrd3jeqeQLiB9f1YsuK/iHFOwb04bCtY4BSCLgjNbOD33ZdV6KyEqplHr+IlpgT0QTZ/iJ+wT7hvTx49Q=="], - "@typescript-eslint/tsconfig-utils": ["@typescript-eslint/tsconfig-utils@8.54.0", "", { "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-dRgOyT2hPk/JwxNMZDsIXDgyl9axdJI3ogZ2XWhBPsnZUv+hPesa5iuhdYt2gzwA9t8RE5ytOJ6xB0moV0Ujvw=="], + "@typescript-eslint/tsconfig-utils": ["@typescript-eslint/tsconfig-utils@8.55.0", "", { "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-1R9cXqY7RQd7WuqSN47PK9EDpgFUK3VqdmbYrvWJZYDd0cavROGn+74ktWBlmJ13NXUQKlZ/iAEQHI/V0kKe0Q=="], - "@typescript-eslint/type-utils": ["@typescript-eslint/type-utils@8.54.0", "", { "dependencies": { "@typescript-eslint/types": "8.54.0", "@typescript-eslint/typescript-estree": "8.54.0", "@typescript-eslint/utils": "8.54.0", "debug": "^4.4.3", "ts-api-utils": "^2.4.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-hiLguxJWHjjwL6xMBwD903ciAwd7DmK30Y9Axs/etOkftC3ZNN9K44IuRD/EB08amu+Zw6W37x9RecLkOo3pMA=="], + "@typescript-eslint/type-utils": ["@typescript-eslint/type-utils@8.55.0", "", { "dependencies": { "@typescript-eslint/types": "8.55.0", "@typescript-eslint/typescript-estree": "8.55.0", "@typescript-eslint/utils": "8.55.0", "debug": "^4.4.3", "ts-api-utils": "^2.4.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-x1iH2unH4qAt6I37I2CGlsNs+B9WGxurP2uyZLRz6UJoZWDBx9cJL1xVN/FiOmHEONEg6RIufdvyT0TEYIgC5g=="], - "@typescript-eslint/types": ["@typescript-eslint/types@8.54.0", "", {}, "sha512-PDUI9R1BVjqu7AUDsRBbKMtwmjWcn4J3le+5LpcFgWULN3LvHC5rkc9gCVxbrsrGmO1jfPybN5s6h4Jy+OnkAA=="], + "@typescript-eslint/types": ["@typescript-eslint/types@8.55.0", "", {}, "sha512-ujT0Je8GI5BJWi+/mMoR0wxwVEQaxM+pi30xuMiJETlX80OPovb2p9E8ss87gnSVtYXtJoU9U1Cowcr6w2FE0w=="], - "@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.54.0", "", { "dependencies": { "@typescript-eslint/project-service": "8.54.0", "@typescript-eslint/tsconfig-utils": "8.54.0", "@typescript-eslint/types": "8.54.0", "@typescript-eslint/visitor-keys": "8.54.0", "debug": "^4.4.3", "minimatch": "^9.0.5", "semver": "^7.7.3", "tinyglobby": "^0.2.15", "ts-api-utils": "^2.4.0" }, "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-BUwcskRaPvTk6fzVWgDPdUndLjB87KYDrN5EYGetnktoeAvPtO4ONHlAZDnj5VFnUANg0Sjm7j4usBlnoVMHwA=="], + "@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.55.0", "", { "dependencies": { "@typescript-eslint/project-service": "8.55.0", "@typescript-eslint/tsconfig-utils": "8.55.0", "@typescript-eslint/types": "8.55.0", "@typescript-eslint/visitor-keys": "8.55.0", "debug": "^4.4.3", "minimatch": "^9.0.5", "semver": "^7.7.3", "tinyglobby": "^0.2.15", "ts-api-utils": "^2.4.0" }, "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-EwrH67bSWdx/3aRQhCoxDaHM+CrZjotc2UCCpEDVqfCE+7OjKAGWNY2HsCSTEVvWH2clYQK8pdeLp42EVs+xQw=="], - "@typescript-eslint/utils": ["@typescript-eslint/utils@8.54.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", "@typescript-eslint/scope-manager": "8.54.0", "@typescript-eslint/types": "8.54.0", "@typescript-eslint/typescript-estree": "8.54.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-9Cnda8GS57AQakvRyG0PTejJNlA2xhvyNtEVIMlDWOOeEyBkYWhGPnfrIAnqxLMTSTo6q8g12XVjjev5l1NvMA=="], + "@typescript-eslint/utils": ["@typescript-eslint/utils@8.55.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", "@typescript-eslint/scope-manager": "8.55.0", "@typescript-eslint/types": "8.55.0", "@typescript-eslint/typescript-estree": "8.55.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-BqZEsnPGdYpgyEIkDC1BadNY8oMwckftxBT+C8W0g1iKPdeqKZBtTfnvcq0nf60u7MkjFO8RBvpRGZBPw4L2ow=="], - "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.54.0", "", { "dependencies": { "@typescript-eslint/types": "8.54.0", "eslint-visitor-keys": "^4.2.1" } }, "sha512-VFlhGSl4opC0bprJiItPQ1RfUhGDIBokcPwaFH4yiBCaNPeld/9VeXbiPO1cLyorQi1G1vL+ecBk1x8o1axORA=="], + "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.55.0", "", { "dependencies": { "@typescript-eslint/types": "8.55.0", "eslint-visitor-keys": "^4.2.1" } }, "sha512-AxNRwEie8Nn4eFS1FzDMJWIISMGoXMb037sgCBJ3UR6o0fQTzr2tqN9WT+DkWJPhIdQCfV7T6D387566VtnCJA=="], "@ungap/structured-clone": ["@ungap/structured-clone@1.3.0", "", {}, "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g=="], @@ -1167,7 +1159,7 @@ "axe-core": ["axe-core@4.11.1", "", {}, "sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A=="], - "axios": ["axios@1.13.4", "", { "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.4", "proxy-from-env": "^1.1.0" } }, "sha512-1wVkUaAO6WyaYtCkcYCOx12ZgpGf9Zif+qXa4n+oYzK558YryKqiL6UWwd5DqiH3VRW0GYhTZQ/vlgJrCoNQlg=="], + "axios": ["axios@1.13.5", "", { "dependencies": { "follow-redirects": "^1.15.11", "form-data": "^4.0.5", "proxy-from-env": "^1.1.0" } }, "sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q=="], "axobject-query": ["axobject-query@4.1.0", "", {}, "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ=="], @@ -1187,7 +1179,7 @@ "body-parser": ["body-parser@2.2.2", "", { "dependencies": { "bytes": "^3.1.2", "content-type": "^1.0.5", "debug": "^4.4.3", "http-errors": "^2.0.0", "iconv-lite": "^0.7.0", "on-finished": "^2.4.1", "qs": "^6.14.1", "raw-body": "^3.0.1", "type-is": "^2.0.1" } }, "sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA=="], - "bowser": ["bowser@2.13.1", "", {}, "sha512-OHawaAbjwx6rqICCKgSG0SAnT05bzd7ppyKLVUITZpANBaaMFBAsaNkto3LoQ31tyFP5kNujE8Cdx85G9VzOkw=="], + "bowser": ["bowser@2.14.1", "", {}, "sha512-tzPjzCxygAKWFOJP011oxFHs57HzIhOEracIgAePE4pqB3LikALKnSzUyU4MGs9/iCEUuHlAJTjTc5M+u7YEGg=="], "brace-expansion": ["brace-expansion@1.1.12", "", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg=="], @@ -1367,7 +1359,7 @@ "dotenv": ["dotenv@16.6.1", "", {}, "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow=="], - "drizzle-kit": ["drizzle-kit@0.31.8", "", { "dependencies": { "@drizzle-team/brocli": "^0.10.2", "@esbuild-kit/esm-loader": "^2.5.5", "esbuild": "^0.25.4", "esbuild-register": "^3.5.0" }, "bin": { "drizzle-kit": "bin.cjs" } }, "sha512-O9EC/miwdnRDY10qRxM8P3Pg8hXe3LyU4ZipReKOgTwn4OqANmftj8XJz1UPUAS6NMHf0E2htjsbQujUTkncCg=="], + "drizzle-kit": ["drizzle-kit@0.31.9", "", { "dependencies": { "@drizzle-team/brocli": "^0.10.2", "@esbuild-kit/esm-loader": "^2.5.5", "esbuild": "^0.25.4", "esbuild-register": "^3.5.0" }, "bin": { "drizzle-kit": "bin.cjs" } }, "sha512-GViD3IgsXn7trFyBUUHyTFBpH/FsHTxYJ66qdbVggxef4UBPHRYxQaRzYLTuekYnk9i5FIEL9pbBIwMqX/Uwrg=="], "drizzle-orm": ["drizzle-orm@0.29.5", "", { "peerDependencies": { "@aws-sdk/client-rds-data": ">=3", "@cloudflare/workers-types": ">=3", "@libsql/client": "*", "@neondatabase/serverless": ">=0.1", "@opentelemetry/api": "^1.4.1", "@planetscale/database": ">=1", "@types/better-sqlite3": "*", "@types/pg": "*", "@types/react": ">=18", "@types/sql.js": "*", "@vercel/postgres": "*", "better-sqlite3": ">=7", "bun-types": "*", "expo-sqlite": ">=13.2.0", "knex": "*", "kysely": "*", "mysql2": ">=2", "pg": ">=8", "postgres": ">=3", "react": ">=18", "sql.js": ">=1", "sqlite3": ">=5" }, "optionalPeers": ["@aws-sdk/client-rds-data", "@cloudflare/workers-types", "@libsql/client", "@neondatabase/serverless", "@opentelemetry/api", "@planetscale/database", "@types/better-sqlite3", "@types/pg", "@types/react", "@types/sql.js", "@vercel/postgres", "better-sqlite3", "bun-types", "expo-sqlite", "knex", "kysely", "mysql2", "pg", "postgres", "react", "sql.js", "sqlite3"] }, "sha512-jS3+uyzTz4P0Y2CICx8FmRQ1eplURPaIMWDn/yq6k4ShRFj9V7vlJk67lSf2kyYPzQ60GkkNGXcJcwrxZ6QCRw=="], @@ -1491,7 +1483,7 @@ "fast-uri": ["fast-uri@3.1.0", "", {}, "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA=="], - "fast-xml-parser": ["fast-xml-parser@5.3.4", "", { "dependencies": { "strnum": "^2.1.0" }, "bin": { "fxparser": "src/cli/cli.js" } }, "sha512-EFd6afGmXlCx8H8WTZHhAoDaWaGyuIBoZJ2mknrNxug+aZKjkp0a0dlars9Izl+jF+7Gu1/5f/2h68cQpe0IiA=="], + "fast-xml-parser": ["fast-xml-parser@5.3.5", "", { "dependencies": { "strnum": "^2.1.2" }, "bin": { "fxparser": "src/cli/cli.js" } }, "sha512-JeaA2Vm9ffQKp9VjvfzObuMCjUYAp5WDYhRYL5LrBPY/jUDlUtOvDfot0vKSkB9tuX885BDHjtw4fZadD95wnA=="], "fastq": ["fastq@1.20.1", "", { "dependencies": { "reusify": "^1.0.4" } }, "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw=="], @@ -1535,7 +1527,7 @@ "forwarded": ["forwarded@0.2.0", "", {}, "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow=="], - "framer-motion": ["framer-motion@12.33.0", "", { "dependencies": { "motion-dom": "^12.33.0", "motion-utils": "^12.29.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-ca8d+rRPcDP5iIF+MoT3WNc0KHJMjIyFAbtVLvM9eA7joGSpeqDfiNH/kCs1t4CHi04njYvWyj0jS4QlEK/rJQ=="], + "framer-motion": ["framer-motion@12.34.0", "", { "dependencies": { "motion-dom": "^12.34.0", "motion-utils": "^12.29.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-+/H49owhzkzQyxtn7nZeF4kdH++I2FWrESQ184Zbcw5cEqNHYkE5yxWxcTLSj5lNx3NWdbIRy5FHqUvetD8FWg=="], "fresh": ["fresh@2.0.0", "", {}, "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A=="], @@ -1579,7 +1571,7 @@ "get-symbol-description": ["get-symbol-description@1.1.0", "", { "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", "get-intrinsic": "^1.2.6" } }, "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg=="], - "get-tsconfig": ["get-tsconfig@4.13.5", "", { "dependencies": { "resolve-pkg-maps": "^1.0.0" } }, "sha512-v4/4xAEpBRp6SvCkWhnGCaLkJf9IwWzrsygJPxD/+p2/xPE3C5m2fA9FD0Ry9tG+Rqqq3gBzHSl6y1/T9V/tMQ=="], + "get-tsconfig": ["get-tsconfig@4.13.6", "", { "dependencies": { "resolve-pkg-maps": "^1.0.0" } }, "sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw=="], "gl-matrix": ["gl-matrix@3.4.4", "", {}, "sha512-latSnyDNt/8zYUB6VIJ6PCh2jBjJX6gnDsoCZ7LyW7GkqrD51EWwa9qCoGixj8YqBtETQK/xY7OmpTF8xz1DdQ=="], @@ -1645,7 +1637,7 @@ "highlight.js": ["highlight.js@10.7.3", "", {}, "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A=="], - "hono": ["hono@4.11.8", "", {}, "sha512-eVkB/CYCCei7K2WElZW9yYQFWssG0DhaDhVvr7wy5jJ22K+ck8fWW0EsLpB0sITUTvPnc97+rrbQqIr5iqiy9Q=="], + "hono": ["hono@4.11.9", "", {}, "sha512-Eaw2YTGM6WOxA6CXbckaEvslr2Ne4NFsKrvc0v97JD5awbmeBLO5w9Ho9L9kmKonrwF9RJlW6BxT1PVv/agBHQ=="], "html-entities": ["html-entities@2.6.0", "", {}, "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ=="], @@ -1991,7 +1983,7 @@ "moo-server": ["moo-server@1.3.0", "", {}, "sha512-9A8/eor2DXwpv1+a4pZAAydqLFVrWoKoO1fzdzqLUhYVXAO1Kgd1FR2gFZi7YdHzF0s4W8cDNwCfKJQrvLqxDw=="], - "motion-dom": ["motion-dom@12.33.0", "", { "dependencies": { "motion-utils": "^12.29.2" } }, "sha512-XRPebVypsl0UM+7v0Hr8o9UAj0S2djsQWRdHBd5iVouVpMrQqAI0C/rDAT3QaYnXnHuC5hMcwDHCboNeyYjPoQ=="], + "motion-dom": ["motion-dom@12.34.0", "", { "dependencies": { "motion-utils": "^12.29.2" } }, "sha512-Lql3NuEcScRDxTAO6GgUsRHBZOWI/3fnMlkMcH5NftzcN37zJta+bpbMAV9px4Nj057TuvRooMK7QrzMCgtz6Q=="], "motion-utils": ["motion-utils@12.29.2", "", {}, "sha512-G3kc34H2cX2gI63RqU+cZq+zWRRPSsNIOjpdl9TN4AQwC4sgwYPl/Q/Obf/d53nOm569T0fYK+tcoSV50BWx8A=="], @@ -2009,11 +2001,7 @@ "negotiator": ["negotiator@1.0.0", "", {}, "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg=="], -<<<<<<< HEAD "next": ["next@16.1.6", "", { "dependencies": { "@next/env": "16.1.6", "@swc/helpers": "0.5.15", "baseline-browser-mapping": "^2.8.3", "caniuse-lite": "^1.0.30001579", "postcss": "8.4.31", "styled-jsx": "5.1.6" }, "optionalDependencies": { "@next/swc-darwin-arm64": "16.1.6", "@next/swc-darwin-x64": "16.1.6", "@next/swc-linux-arm64-gnu": "16.1.6", "@next/swc-linux-arm64-musl": "16.1.6", "@next/swc-linux-x64-gnu": "16.1.6", "@next/swc-linux-x64-musl": "16.1.6", "@next/swc-win32-arm64-msvc": "16.1.6", "@next/swc-win32-x64-msvc": "16.1.6", "sharp": "^0.34.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", "@playwright/test": "^1.51.1", "babel-plugin-react-compiler": "*", "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "sass": "^1.3.0" }, "optionalPeers": ["@opentelemetry/api", "@playwright/test", "babel-plugin-react-compiler", "sass"], "bin": { "next": "dist/bin/next" } }, "sha512-hkyRkcu5x/41KoqnROkfTm2pZVbKxvbZRuNvKXLRXxs3VfyO0WhY50TQS40EuKO9SW3rBj/sF3WbVwDACeMZyw=="], -======= - "next": ["next@15.3.8", "", { "dependencies": { "@next/env": "15.3.8", "@swc/counter": "0.1.3", "@swc/helpers": "0.5.15", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", "postcss": "8.4.31", "styled-jsx": "5.1.6" }, "optionalDependencies": { "@next/swc-darwin-arm64": "15.3.5", "@next/swc-darwin-x64": "15.3.5", "@next/swc-linux-arm64-gnu": "15.3.5", "@next/swc-linux-arm64-musl": "15.3.5", "@next/swc-linux-x64-gnu": "15.3.5", "@next/swc-linux-x64-musl": "15.3.5", "@next/swc-win32-arm64-msvc": "15.3.5", "@next/swc-win32-x64-msvc": "15.3.5", "sharp": "^0.34.1" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", "@playwright/test": "^1.41.2", "babel-plugin-react-compiler": "*", "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "sass": "^1.3.0" }, "optionalPeers": ["@opentelemetry/api", "@playwright/test", "babel-plugin-react-compiler", "sass"], "bin": { "next": "dist/bin/next" } }, "sha512-L+4c5Hlr84fuaNADZbB9+ceRX9/CzwxJ+obXIGHupboB/Q1OLbSUapFs4bO8hnS/E6zV/JDX7sG1QpKVR2bguA=="], ->>>>>>> origin/main "next-themes": ["next-themes@0.3.0", "", { "peerDependencies": { "react": "^16.8 || ^17 || ^18", "react-dom": "^16.8 || ^17 || ^18" } }, "sha512-/QHIrsYpd6Kfk7xakK4svpDI5mmXP0gfvCoJdGpZQ2TOrQZmsW0QxjaiLn8wbIKjtm4BTSqLoix4lxYYOnLJ/w=="], @@ -2123,9 +2111,9 @@ "pkce-challenge": ["pkce-challenge@5.0.1", "", {}, "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ=="], - "playwright": ["playwright@1.58.1", "", { "dependencies": { "playwright-core": "1.58.1" }, "optionalDependencies": { "fsevents": "2.3.2" }, "bin": { "playwright": "cli.js" } }, "sha512-+2uTZHxSCcxjvGc5C891LrS1/NlxglGxzrC4seZiVjcYVQfUa87wBL6rTDqzGjuoWNjnBzRqKmF6zRYGMvQUaQ=="], + "playwright": ["playwright@1.58.2", "", { "dependencies": { "playwright-core": "1.58.2" }, "optionalDependencies": { "fsevents": "2.3.2" }, "bin": { "playwright": "cli.js" } }, "sha512-vA30H8Nvkq/cPBnNw4Q8TWz1EJyqgpuinBcHET0YVJVFldr8JDNiU9LaWAE1KqSkRYazuaBhTpB5ZzShOezQ6A=="], - "playwright-core": ["playwright-core@1.58.1", "", { "bin": { "playwright-core": "cli.js" } }, "sha512-bcWzOaTxcW+VOOGBCQgnaKToLJ65d6AqfLVKEWvexyS3AS6rbXl+xdpYRMGSRBClPvyj44njOWoxjNdL/H9UNg=="], + "playwright-core": ["playwright-core@1.58.2", "", { "bin": { "playwright-core": "cli.js" } }, "sha512-yZkEtftgwS8CsfYo7nm0KE8jsvm6i/PTgVtB8DL726wNf6H2IMsDuxCpJj59KDaxCtSnrWan2AeDqM7JBaultg=="], "point-in-polygon": ["point-in-polygon@1.1.0", "", {}, "sha512-3ojrFwjnnw8Q9242TzgXuTD+eKiutbzyslcq1ydfu82Db2y+Ogbmyrkpv0Hgj31qwT3lbS9+QAAO/pIQM35XRw=="], @@ -2403,7 +2391,7 @@ "sucrase": ["sucrase@3.35.1", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", "lines-and-columns": "^1.1.6", "mz": "^2.7.0", "pirates": "^4.0.1", "tinyglobby": "^0.2.11", "ts-interface-checker": "^0.1.9" }, "bin": { "sucrase": "bin/sucrase", "sucrase-node": "bin/sucrase-node" } }, "sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw=="], - "supabase": ["supabase@2.75.5", "", { "dependencies": { "bin-links": "^6.0.0", "https-proxy-agent": "^7.0.2", "node-fetch": "^3.3.2", "tar": "7.5.7" }, "bin": { "supabase": "bin/supabase" } }, "sha512-gjCFvMTJ51HDPEGkvLroGgA4GEB5VhU136Gc/9BZgaHogqAKvTs7M28xlPcG5flGzmZjiqlNP1PcgzuQdw9fxQ=="], + "supabase": ["supabase@2.76.7", "", { "dependencies": { "bin-links": "^6.0.0", "https-proxy-agent": "^7.0.2", "node-fetch": "^3.3.2", "tar": "7.5.7" }, "bin": { "supabase": "bin/supabase" } }, "sha512-tUseXvr7uLkw665cHdY3mg8NTHL5GABViRk7OhJkkbpOzvAJW/ydxQWAwLTcvXaI4P+cjbAmUgIv+6m8lOUe1Q=="], "supercluster": ["supercluster@8.0.1", "", { "dependencies": { "kdbush": "^4.0.2" } }, "sha512-IiOea5kJ9iqzD2t7QJq/cREyLHTtSmUT6gQsweojg9WH2sYJqZK9SswTu6jrscO6D1G5v5vYZ9ru/eq85lXeZQ=="], @@ -2491,7 +2479,7 @@ "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], - "typescript-eslint": ["typescript-eslint@8.54.0", "", { "dependencies": { "@typescript-eslint/eslint-plugin": "8.54.0", "@typescript-eslint/parser": "8.54.0", "@typescript-eslint/typescript-estree": "8.54.0", "@typescript-eslint/utils": "8.54.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-CKsJ+g53QpsNPqbzUsfKVgd3Lny4yKZ1pP4qN3jdMOg/sisIDLGyDMezycquXLE5JsEU0wp3dGNdzig0/fmSVQ=="], + "typescript-eslint": ["typescript-eslint@8.55.0", "", { "dependencies": { "@typescript-eslint/eslint-plugin": "8.55.0", "@typescript-eslint/parser": "8.55.0", "@typescript-eslint/typescript-estree": "8.55.0", "@typescript-eslint/utils": "8.55.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-HE4wj+r5lmDVS9gdaN0/+iqNvPZwGfnJ5lZuz7s5vLlg9ODw0bIiiETaios9LvFI1U94/VBXGm3CB2Y5cNFMpw=="], "tz-lookup": ["tz-lookup@6.1.25", "", {}, "sha512-fFewT9o1uDzsW1QnUU1ValqaihFnwiUiiHr1S79/fxOzKXYYvX+EHeRnpvQJ9B3Qg67wPXT6QF2Esc4pFOrvLg=="], @@ -2665,17 +2653,19 @@ "@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-sso/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.982.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-M27u8FJP7O0Of9hMWX5dipp//8iglmV9jr7R8SR8RveU+Z50/8TqH68Tu6wUWBGMfXjzbVwn1INIAO5lZrlxXQ=="], + "@aws-sdk/client-sso/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.985.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-vth7UfGSUR3ljvaq8V4Rc62FsM7GUTH/myxPWkaEgOrprz1/Pc72EgTXxj+cPPPDAfHFIpjhkB7T7Td0RJx+BA=="], - "@aws-sdk/credential-provider-ini/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.982.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.982.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.4", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.0", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.12", "@smithy/middleware-retry": "^4.4.29", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.28", "@smithy/util-defaults-mode-node": "^4.2.31", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-VVkaH27digrJfdVrT64rjkllvOp4oRiZuuJvrylLXAKl18ujToJR7AqpDldL/LS63RVne3QWIpkygIymxFtliQ=="], + "@aws-sdk/credential-provider-ini/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.985.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.985.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.5", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-retry": "^4.4.30", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.9", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.29", "@smithy/util-defaults-mode-node": "^4.2.32", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-TsWwKzb/2WHafAY0CE7uXgLj0FmnkBTgfioG9HO+7z/zCPcl1+YU+i7dW4o0y+aFxFgxTMG+ExBQpqT/k2ao8g=="], - "@aws-sdk/credential-provider-login/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.982.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.982.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.4", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.0", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.12", "@smithy/middleware-retry": "^4.4.29", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.28", "@smithy/util-defaults-mode-node": "^4.2.31", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-VVkaH27digrJfdVrT64rjkllvOp4oRiZuuJvrylLXAKl18ujToJR7AqpDldL/LS63RVne3QWIpkygIymxFtliQ=="], + "@aws-sdk/credential-provider-login/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.985.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.985.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.5", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-retry": "^4.4.30", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.9", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.29", "@smithy/util-defaults-mode-node": "^4.2.32", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-TsWwKzb/2WHafAY0CE7uXgLj0FmnkBTgfioG9HO+7z/zCPcl1+YU+i7dW4o0y+aFxFgxTMG+ExBQpqT/k2ao8g=="], - "@aws-sdk/credential-provider-sso/@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.982.0", "", { "dependencies": { "@aws-sdk/core": "^3.973.6", "@aws-sdk/nested-clients": "3.982.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-v3M0KYp2TVHYHNBT7jHD9lLTWAdS9CaWJ2jboRKt0WAB65bA7iUEpR+k4VqKYtpQN4+8kKSc4w+K6kUNZkHKQw=="], + "@aws-sdk/credential-provider-sso/@aws-sdk/token-providers": ["@aws-sdk/token-providers@3.985.0", "", { "dependencies": { "@aws-sdk/core": "^3.973.7", "@aws-sdk/nested-clients": "3.985.0", "@aws-sdk/types": "^3.973.1", "@smithy/property-provider": "^4.2.8", "@smithy/shared-ini-file-loader": "^4.4.3", "@smithy/types": "^4.12.0", "tslib": "^2.6.2" } }, "sha512-+hwpHZyEq8k+9JL2PkE60V93v2kNhUIv7STFt+EAez1UJsJOQDhc5LpzEX66pNjclI5OTwBROs/DhJjC/BtMjQ=="], - "@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.982.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.982.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.4", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.0", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.12", "@smithy/middleware-retry": "^4.4.29", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.28", "@smithy/util-defaults-mode-node": "^4.2.31", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-VVkaH27digrJfdVrT64rjkllvOp4oRiZuuJvrylLXAKl18ujToJR7AqpDldL/LS63RVne3QWIpkygIymxFtliQ=="], + "@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.985.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.985.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.5", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-retry": "^4.4.30", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.9", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.29", "@smithy/util-defaults-mode-node": "^4.2.32", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-TsWwKzb/2WHafAY0CE7uXgLj0FmnkBTgfioG9HO+7z/zCPcl1+YU+i7dW4o0y+aFxFgxTMG+ExBQpqT/k2ao8g=="], - "@aws-sdk/middleware-user-agent/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.982.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-M27u8FJP7O0Of9hMWX5dipp//8iglmV9jr7R8SR8RveU+Z50/8TqH68Tu6wUWBGMfXjzbVwn1INIAO5lZrlxXQ=="], + "@aws-sdk/middleware-user-agent/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.985.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-vth7UfGSUR3ljvaq8V4Rc62FsM7GUTH/myxPWkaEgOrprz1/Pc72EgTXxj+cPPPDAfHFIpjhkB7T7Td0RJx+BA=="], + + "@aws-sdk/xml-builder/fast-xml-parser": ["fast-xml-parser@5.3.4", "", { "dependencies": { "strnum": "^2.1.0" }, "bin": { "fxparser": "src/cli/cli.js" } }, "sha512-EFd6afGmXlCx8H8WTZHhAoDaWaGyuIBoZJ2mknrNxug+aZKjkp0a0dlars9Izl+jF+7Gu1/5f/2h68cQpe0IiA=="], "@babel/core/json5": ["json5@2.2.3", "", { "bin": { "json5": "lib/cli.js" } }, "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="], @@ -2731,6 +2721,8 @@ "@turf/tesselate/earcut": ["earcut@2.2.4", "", {}, "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ=="], + "@types/geokdbush/@types/kdbush": ["@types/kdbush@1.0.7", "", {}, "sha512-QM5iB8m/0mnGOjUKshErIZQ0LseyTieRSYc3yaOpmrRM0xbWiOuJUWlduJx+TPNK7/VFMWphUGwx3nus7eT1Wg=="], + "@types/request/form-data": ["form-data@2.5.5", "", { "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", "es-set-tostringtag": "^2.1.0", "hasown": "^2.0.2", "mime-types": "^2.1.35", "safe-buffer": "^5.2.1" } }, "sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A=="], "@typescript-eslint/eslint-plugin/ignore": ["ignore@7.0.5", "", {}, "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg=="], @@ -2887,13 +2879,13 @@ "@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/credential-provider-ini/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.982.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-M27u8FJP7O0Of9hMWX5dipp//8iglmV9jr7R8SR8RveU+Z50/8TqH68Tu6wUWBGMfXjzbVwn1INIAO5lZrlxXQ=="], + "@aws-sdk/credential-provider-ini/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.985.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-vth7UfGSUR3ljvaq8V4Rc62FsM7GUTH/myxPWkaEgOrprz1/Pc72EgTXxj+cPPPDAfHFIpjhkB7T7Td0RJx+BA=="], - "@aws-sdk/credential-provider-login/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.982.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-M27u8FJP7O0Of9hMWX5dipp//8iglmV9jr7R8SR8RveU+Z50/8TqH68Tu6wUWBGMfXjzbVwn1INIAO5lZrlxXQ=="], + "@aws-sdk/credential-provider-login/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.985.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-vth7UfGSUR3ljvaq8V4Rc62FsM7GUTH/myxPWkaEgOrprz1/Pc72EgTXxj+cPPPDAfHFIpjhkB7T7Td0RJx+BA=="], - "@aws-sdk/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.982.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.6", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.6", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.982.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.4", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.0", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.12", "@smithy/middleware-retry": "^4.4.29", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.8", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.28", "@smithy/util-defaults-mode-node": "^4.2.31", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-VVkaH27digrJfdVrT64rjkllvOp4oRiZuuJvrylLXAKl18ujToJR7AqpDldL/LS63RVne3QWIpkygIymxFtliQ=="], + "@aws-sdk/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients": ["@aws-sdk/nested-clients@3.985.0", "", { "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", "@aws-sdk/core": "^3.973.7", "@aws-sdk/middleware-host-header": "^3.972.3", "@aws-sdk/middleware-logger": "^3.972.3", "@aws-sdk/middleware-recursion-detection": "^3.972.3", "@aws-sdk/middleware-user-agent": "^3.972.7", "@aws-sdk/region-config-resolver": "^3.972.3", "@aws-sdk/types": "^3.973.1", "@aws-sdk/util-endpoints": "3.985.0", "@aws-sdk/util-user-agent-browser": "^3.972.3", "@aws-sdk/util-user-agent-node": "^3.972.5", "@smithy/config-resolver": "^4.4.6", "@smithy/core": "^3.22.1", "@smithy/fetch-http-handler": "^5.3.9", "@smithy/hash-node": "^4.2.8", "@smithy/invalid-dependency": "^4.2.8", "@smithy/middleware-content-length": "^4.2.8", "@smithy/middleware-endpoint": "^4.4.13", "@smithy/middleware-retry": "^4.4.30", "@smithy/middleware-serde": "^4.2.9", "@smithy/middleware-stack": "^4.2.8", "@smithy/node-config-provider": "^4.3.8", "@smithy/node-http-handler": "^4.4.9", "@smithy/protocol-http": "^5.3.8", "@smithy/smithy-client": "^4.11.2", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", "@smithy/util-defaults-mode-browser": "^4.3.29", "@smithy/util-defaults-mode-node": "^4.2.32", "@smithy/util-endpoints": "^3.2.8", "@smithy/util-middleware": "^4.2.8", "@smithy/util-retry": "^4.2.8", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-TsWwKzb/2WHafAY0CE7uXgLj0FmnkBTgfioG9HO+7z/zCPcl1+YU+i7dW4o0y+aFxFgxTMG+ExBQpqT/k2ao8g=="], - "@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.982.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-M27u8FJP7O0Of9hMWX5dipp//8iglmV9jr7R8SR8RveU+Z50/8TqH68Tu6wUWBGMfXjzbVwn1INIAO5lZrlxXQ=="], + "@aws-sdk/credential-provider-web-identity/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.985.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-vth7UfGSUR3ljvaq8V4Rc62FsM7GUTH/myxPWkaEgOrprz1/Pc72EgTXxj+cPPPDAfHFIpjhkB7T7Td0RJx+BA=="], "@esbuild-kit/core-utils/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.18.20", "", { "os": "android", "cpu": "arm" }, "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw=="], @@ -2983,7 +2975,7 @@ "@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/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.982.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-M27u8FJP7O0Of9hMWX5dipp//8iglmV9jr7R8SR8RveU+Z50/8TqH68Tu6wUWBGMfXjzbVwn1INIAO5lZrlxXQ=="], + "@aws-sdk/credential-provider-sso/@aws-sdk/token-providers/@aws-sdk/nested-clients/@aws-sdk/util-endpoints": ["@aws-sdk/util-endpoints@3.985.0", "", { "dependencies": { "@aws-sdk/types": "^3.973.1", "@smithy/types": "^4.12.0", "@smithy/url-parser": "^4.2.8", "@smithy/util-endpoints": "^3.2.8", "tslib": "^2.6.2" } }, "sha512-vth7UfGSUR3ljvaq8V4Rc62FsM7GUTH/myxPWkaEgOrprz1/Pc72EgTXxj+cPPPDAfHFIpjhkB7T7Td0RJx+BA=="], "@types/request/form-data/mime-types/mime-db": ["mime-db@1.52.0", "", {}, "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="], diff --git a/lib/actions/chat.ts b/lib/actions/chat.ts index fb690078..09665cee 100644 --- a/lib/actions/chat.ts +++ b/lib/actions/chat.ts @@ -16,7 +16,7 @@ import { getSharedChat as supabaseGetSharedChat, } from '@/lib/supabase/persistence' import { getSupabaseServerClient } from '../supabase/client' -import { getCurrentUserIdOnServer } from '@/lib/auth/get-current-user' +import { getCurrentUserIdOnServer, getSupabaseUserAndSessionOnServer } from '@/lib/auth/get-current-user' import { getChat as dbGetChat, getChatsPage as dbGetChatsPage, @@ -34,6 +34,7 @@ import { users, chats } from '@/lib/db/schema' import { eq } from 'drizzle-orm' import { embedMany } from 'ai' import { getEmbeddingModel } from '@/lib/utils' +import { ensureUserExists } from './users' // Using Drizzle versions by default as per main's direction export async function getChats(userId?: string | null): Promise { @@ -129,6 +130,9 @@ export async function saveChat(chat: Chat, userId: string): Promise (m.role === 'user' || m.role === 'assistant') && m.content && m.content.length > 0 ); @@ -166,7 +166,6 @@ export async function saveChat(chat: Chat, userId: string): Promise m.content as string), }); - // Map embeddings back to messages messagesToProcess.forEach(m => { const index = messagesNeedingEmbeddings.findIndex(nm => nm.id === m.id); processedMessages.push({ @@ -182,7 +181,6 @@ export async function saveChat(chat: Chat, userId: string): Promise { processedMessages.push({ ...m, chatId: chat.id, embedding: null }); }); @@ -271,7 +269,6 @@ export async function shareChat(id: string): Promise { const userId = await getCurrentUserIdOnServer(); if (!userId) return null; - // Check if the user is the owner const chat = await dbGetChat(id, userId); if (!chat || chat.userId !== userId) { console.error('shareChat: Only owners can share chats'); diff --git a/lib/actions/users.ts b/lib/actions/users.ts index 6fba7f8b..4a1e6f71 100644 --- a/lib/actions/users.ts +++ b/lib/actions/users.ts @@ -209,3 +209,27 @@ export async function searchUsers(query: string) { return []; } } + +/** + * Ensures a user exists in the public.users table. + * Useful for anonymous mode or syncing auth users on first access. + */ +export async function ensureUserExists(userId: string, email?: string) { + try { + const [existing] = await db.select({ id: users.id }) + .from(users) + .where(eq(users.id, userId)) + .limit(1); + + if (!existing) { + console.log(`[UserAction] Creating user record for ${userId}`); + await db.insert(users).values({ + id: userId, + email: email || 'anonymous@example.com', + role: 'viewer', + }).onConflictDoNothing(); + } + } catch (error) { + console.error('[Action: ensureUserExists] Error:', error); + } +} diff --git a/lib/auth/get-current-user.ts b/lib/auth/get-current-user.ts index 8ff39bfc..bad3eb38 100644 --- a/lib/auth/get-current-user.ts +++ b/lib/auth/get-current-user.ts @@ -1,92 +1,67 @@ import { createServerClient, type CookieOptions } from '@supabase/ssr'; import { cookies } from 'next/headers'; import type { User, Session } from '@supabase/supabase-js'; +import { getSupabaseServerClient } from '../supabase/client'; // Ensure NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY are available const supabaseUrl = process.env.NEXT_PUBLIC_SUPABASE_URL; const supabaseAnonKey = process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY; +const ENABLE_AUTH = process.env.ENABLE_AUTH === 'true'; +const ANONYMOUS_USER_ID = process.env.ANONYMOUS_USER_ID || '00000000-0000-0000-0000-000000000000'; /** * Retrieves the Supabase user and session object in server-side contexts * (Route Handlers, Server Actions, Server Components). - * Uses '@supabase/ssr' for cookie-based session management. - * - * @returns {Promise<{ user: User | null; session: Session | null; error: any | null }>} */ export async function getSupabaseUserAndSessionOnServer(): Promise<{ user: User | null; session: Session | null; error: any | null; }> { + if (!ENABLE_AUTH) { + return { + user: { id: ANONYMOUS_USER_ID, email: 'anonymous@example.com' } as User, + session: null, + error: null + }; + } + if (!supabaseUrl || !supabaseAnonKey) { - console.error('[Auth] Supabase URL or Anon Key is not set for server-side auth.'); + console.warn('[Auth] ENABLE_AUTH is true but Supabase URL or Anon Key is missing.'); return { user: null, session: null, error: new Error('Missing Supabase environment variables') }; } - const cookieStore = cookies(); - const supabase = createServerClient(supabaseUrl, supabaseAnonKey, { - cookies: { - async get(name: string): Promise { - const cookie = (await cookieStore).get(name); // Use the correct get method - return cookie?.value; // Return the value or undefined - }, - async set(name: string, value: string, options: CookieOptions): Promise { - try { - const store = await cookieStore; - store.set({ name, value, ...options }); // Set cookie with options - } catch (error) { - // console.warn(`[Auth] Failed to set cookie ${name}:`, error); - } - }, - async remove(name: string, options: CookieOptions): Promise { - try { - const store = await cookieStore; - store.set({ name, value: '', ...options, maxAge: 0 }); // Delete cookie by setting maxAge to 0 - } catch (error) { - // console.warn(`[Auth] Failed to delete cookie ${name}:`, error); - } - }, - }, - }); + try { + const supabase = getSupabaseServerClient(); + const { + data: { user }, + error, + } = await supabase.auth.getUser(); - const { - data: { user }, - error, - } = await supabase.auth.getUser(); + if (error) { + if (error.message !== 'Auth session missing!') { + console.error('[Auth] Error getting Supabase user:', error.message); + } + return { user: null, session: null, error }; + } - if (error) { - // Only log non-auth errors; "Auth session missing" is expected for unauthenticated users - if (error.message !== 'Auth session missing!') { - console.error('[Auth] Error getting Supabase user on server:', error.message); + if (!user) { + return { user: null, session: null, error: null }; } - return { user: null, session: null, error }; - } - if (!user) { - return { user: null, session: null, error: null }; + const { data: { session } } = await supabase.auth.getSession(); + return { user, session, error: null }; + } catch (err) { + console.error('[Auth] Unexpected error in getSupabaseUserAndSessionOnServer:', err); + return { user: null, session: null, error: err }; } - - // Best effort to get session if needed, but we mainly care about the user - const { data: { session } } = await supabase.auth.getSession(); - - return { user, session, error: null }; } /** * Retrieves the current user's ID in server-side contexts. - * Enforces authentication—returns null if user is not authenticated. - * - * @returns {Promise} The user ID if authenticated, otherwise null. + * Returns null if user is not authenticated and auth is enabled. */ export async function getCurrentUserIdOnServer(): Promise { - const { user, error } = await getSupabaseUserAndSessionOnServer(); - if (error) { - // Error is already logged in getSupabaseUserAndSessionOnServer - return null; - } - if (!user) { - // No session means user is not authenticated - return null; - } - return user.id; + const { user } = await getSupabaseUserAndSessionOnServer(); + return user?.id || null; } diff --git a/lib/auth/use-current-user.ts b/lib/auth/use-current-user.ts index ee6d81bd..71992184 100644 --- a/lib/auth/use-current-user.ts +++ b/lib/auth/use-current-user.ts @@ -5,13 +5,26 @@ import type { User } from '@supabase/supabase-js'; export function useCurrentUser() { const [user, setUser] = useState(null); const [loading, setLoading] = useState(true); - const supabase = getSupabaseBrowserClient(); useEffect(() => { + const supabase = getSupabaseBrowserClient(); + + // If auth is disabled or Supabase not configured, we might want to return a mock user + // However, the server side is the source of truth for "authenticated" status + // For the UI, we'll just set loading to false if no supabase client + if (!supabase) { + setLoading(false); + return; + } + async function fetchUser() { - const { data, error } = await supabase.auth.getUser(); - if (data?.user) { - setUser(data.user); + try { + const { data, error } = await supabase!.auth.getUser(); + if (data?.user) { + setUser(data.user); + } + } catch (e) { + console.warn('[Auth] useCurrentUser: Failed to fetch user', e); } setLoading(false); } diff --git a/lib/db/index.ts b/lib/db/index.ts index 1bfdf035..703736a5 100644 --- a/lib/db/index.ts +++ b/lib/db/index.ts @@ -8,13 +8,21 @@ if (!connectionString) { throw new Error('DATABASE_URL environment variable is not set') } -const ssl = connectionString.includes('supabase.co') - ? { rejectUnauthorized: false } - : undefined +// SSL Configuration +// For cloud providers like Supabase, SSL is usually required. +// We allow disabling it for local development via DATABASE_SSL_DISABLED=true +const sslConfig = process.env.DATABASE_SSL_DISABLED === 'true' + ? false + : { rejectUnauthorized: connectionString.includes('supabase.co') ? true : false }; + +// Note: Using rejectUnauthorized: true for Supabase as suggested. +// If it fails in certain environments, we might need to fallback to false or provide CA. const pool = new Pool({ connectionString, - ssl, + ssl: sslConfig, + connectionTimeoutMillis: 50000, + idleTimeoutMillis: 30000, }) export const db = drizzle(pool, { diff --git a/lib/db/migrate.ts b/lib/db/migrate.ts index 7c696a4d..b7a7d8fc 100644 --- a/lib/db/migrate.ts +++ b/lib/db/migrate.ts @@ -13,7 +13,7 @@ async function runMigrations() { const pool = new Pool({ connectionString: process.env.DATABASE_URL, ssl: { - rejectUnauthorized: false, // Ensure this is appropriate for your Supabase connection + rejectUnauthorized: connectionString.includes("supabase.co") ? true : false, // Ensure this is appropriate for your Supabase connection }, // max: 1, // Optional: restrict to 1 connection for migration }); diff --git a/lib/supabase/browser-client.ts b/lib/supabase/browser-client.ts index 3a1a6b70..f8342278 100644 --- a/lib/supabase/browser-client.ts +++ b/lib/supabase/browser-client.ts @@ -3,8 +3,17 @@ import { createBrowserClient } from '@supabase/ssr' export function getSupabaseBrowserClient() { + const supabaseUrl = process.env.NEXT_PUBLIC_SUPABASE_URL + const supabaseAnonKey = process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY + + if (!supabaseUrl || !supabaseAnonKey) { + // Return a dummy client or handle it in the caller + // For now, we'll return null and expect callers to handle it + return null + } + return createBrowserClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY! + supabaseUrl, + supabaseAnonKey ) } diff --git a/lib/supabase/client.ts b/lib/supabase/client.ts index 7a7b2172..c10dee1a 100644 --- a/lib/supabase/client.ts +++ b/lib/supabase/client.ts @@ -3,11 +3,18 @@ import { createClient } from '@supabase/supabase-js' import { cookies } from 'next/headers' export function getSupabaseServerClient() { + const supabaseUrl = process.env.NEXT_PUBLIC_SUPABASE_URL + const supabaseAnonKey = process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY + + if (!supabaseUrl || !supabaseAnonKey) { + return null + } + const cookieStore = cookies() return createServerClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!, + supabaseUrl, + supabaseAnonKey, { cookies: { async get(name: string) { @@ -33,10 +40,9 @@ export function getSupabaseServiceClient() { const serviceRoleKey = process.env.SUPABASE_SERVICE_ROLE_KEY if (!supabaseUrl || !serviceRoleKey) { - throw new Error( - 'Missing required environment variables: NEXT_PUBLIC_SUPABASE_URL or SUPABASE_SERVICE_ROLE_KEY. ' + - 'Service client cannot be created without these credentials.' - ) + // Return null instead of throwing to avoid crashing if only using DB + console.warn('getSupabaseServiceClient: Missing credentials.') + return null } return createClient( diff --git a/middleware.ts b/middleware.ts index 8ad3194b..00e17131 100644 --- a/middleware.ts +++ b/middleware.ts @@ -2,32 +2,13 @@ import { createServerClient, type CookieOptions } from "@supabase/ssr" import { NextResponse, type NextRequest } from "next/server" export async function middleware(request: NextRequest) { - // 1. Normalize 'origin' and 'x-forwarded-host' to avoid "Invalid Server Actions request" - const xForwardedHost = request.headers.get("x-forwarded-host") - const originHeader = request.headers.get("origin") - let originHost: string | null = null - if (originHeader) { - try { - originHost = originHeader.startsWith("http") - ? new URL(originHeader).host - : originHeader - } catch { - originHost = originHeader - } - } - let response = NextResponse.next({ request: { headers: request.headers, }, }) - if (xForwardedHost && originHost && xForwardedHost !== originHost) { - response.headers.delete("x-forwarded-host") - } - - // 2. Supabase Session Refresh - // Note: We only do this if we have the environment variables + // 1. Supabase Session Refresh if (process.env.NEXT_PUBLIC_SUPABASE_URL && process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY) { const supabase = createServerClient( process.env.NEXT_PUBLIC_SUPABASE_URL, @@ -83,6 +64,25 @@ export async function middleware(request: NextRequest) { } } + // 2. Normalize 'origin' and 'x-forwarded-host' to avoid "Invalid Server Actions request" + // Apply this to the FINAL response we return + const xForwardedHost = request.headers.get("x-forwarded-host") + const originHeader = request.headers.get("origin") + let originHost: string | null = null + if (originHeader) { + try { + originHost = originHeader.startsWith("http") + ? new URL(originHeader).host + : originHeader + } catch { + originHost = originHeader + } + } + + if (xForwardedHost && originHost && xForwardedHost !== originHost) { + response.headers.delete("x-forwarded-host") + } + return response } diff --git a/next-env.d.ts b/next-env.d.ts index 9edff1c7..c4b7818f 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -1,6 +1,6 @@ /// /// -import "./.next/types/routes.d.ts"; +import "./.next/dev/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. From 9db9100556970ebdf50e1218abda3f817d42a84d Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Wed, 11 Feb 2026 13:46:51 +0000 Subject: [PATCH 2/3] Fix build errors and improve Supabase client resiliency - Handled potential null Supabase clients in API routes and persistence layer. - Consolidated authentication checks using getCurrentUserIdOnServer. - Fixed TypeScript errors in collaboration and RAG actions. - Corrected Database migration script to properly handle SSL configuration. - Improved overall robustness of the auth and database connection logic. Co-authored-by: ngoiyaeric <115367894+ngoiyaeric@users.noreply.github.com> --- app/api/user/credits/route.ts | 15 ++++---------- app/api/user/upgrade/route.ts | 14 +++++-------- app/auth/callback/route.ts | 11 ++++++++-- components/profile-toggle.tsx | 2 +- lib/actions/collaboration.ts | 5 ++++- lib/actions/rag.ts | 3 +++ lib/auth/get-current-user.ts | 4 ++++ lib/auth/v0/auth-service.ts | 39 ++++++++++++++++++----------------- lib/db/migrate.ts | 14 ++++++------- lib/supabase/persistence.ts | 17 +++++++++++++++ next-env.d.ts | 2 +- 11 files changed, 74 insertions(+), 52 deletions(-) diff --git a/app/api/user/credits/route.ts b/app/api/user/credits/route.ts index 330048ca..719b833e 100644 --- a/app/api/user/credits/route.ts +++ b/app/api/user/credits/route.ts @@ -2,18 +2,14 @@ import { NextRequest, NextResponse } from 'next/server'; import { db } from '@/lib/db'; import { users } from '@/lib/db/schema'; import { eq } from 'drizzle-orm'; -import { getSupabaseServerClient } from '@/lib/supabase/client'; import { TIERS, parseTier, getTierConfig } from '@/lib/utils/subscription'; +import { getCurrentUserIdOnServer } from '@/lib/auth/get-current-user'; export async function GET(req: NextRequest) { try { - const supabase = getSupabaseServerClient(); - const { - data: { user }, - error: userError - } = await supabase.auth.getUser(); + const userId = await getCurrentUserIdOnServer(); - if (userError || !user) { + if (!userId) { return NextResponse.json( { error: 'Unauthorized' }, { status: 401 } @@ -22,7 +18,7 @@ export async function GET(req: NextRequest) { // Get user from database const dbUser = await db.query.users.findFirst({ - where: eq(users.id, user.id) + where: eq(users.id, userId) }); if (!dbUser) { @@ -33,9 +29,6 @@ export async function GET(req: NextRequest) { } const tier = parseTier(dbUser.tier); - // If user is not on Standard tier, they might not need credits logic, - // but for now we return the credits regardless. - // If the tier doesn't support credits (e.g. Free or Pro), the UI can handle it. return NextResponse.json({ credits: dbUser.credits, diff --git a/app/api/user/upgrade/route.ts b/app/api/user/upgrade/route.ts index 1edf4e08..062d2a6f 100644 --- a/app/api/user/upgrade/route.ts +++ b/app/api/user/upgrade/route.ts @@ -2,18 +2,14 @@ import { NextRequest, NextResponse } from 'next/server'; import { db } from '@/lib/db'; import { users } from '@/lib/db/schema'; import { eq } from 'drizzle-orm'; -import { getSupabaseServerClient } from '@/lib/supabase/client'; import { TIER_CONFIGS, TIERS, parseTier } from '@/lib/utils/subscription'; +import { getCurrentUserIdOnServer } from '@/lib/auth/get-current-user'; export async function POST(req: NextRequest) { try { - const supabase = getSupabaseServerClient(); - const { - data: { user }, - error: userError - } = await supabase.auth.getUser(); + const userId = await getCurrentUserIdOnServer(); - if (userError || !user) { + if (!userId) { return NextResponse.json( { error: 'Unauthorized' }, { status: 401 } @@ -41,7 +37,7 @@ export async function POST(req: NextRequest) { // Get current user from database const currentUser = await db.query.users.findFirst({ - where: eq(users.id, user.id) + where: eq(users.id, userId) }); if (!currentUser) { @@ -62,7 +58,7 @@ export async function POST(req: NextRequest) { tier: tier, credits: newCreditsTotal }) - .where(eq(users.id, user.id)) + .where(eq(users.id, userId)) .returning(); return NextResponse.json({ diff --git a/app/auth/callback/route.ts b/app/auth/callback/route.ts index bf61d555..7a80d81e 100644 --- a/app/auth/callback/route.ts +++ b/app/auth/callback/route.ts @@ -19,10 +19,17 @@ export async function GET(request: Request) { }) if (code) { + const supabaseUrl = process.env.NEXT_PUBLIC_SUPABASE_URL; + const supabaseAnonKey = process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY; + + if (!supabaseUrl || !supabaseAnonKey) { + return NextResponse.redirect(`${origin}/auth/auth-code-error?error=Missing+Supabase+Configuration`) + } + const cookieStore = cookies() const supabase = createServerClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!, + supabaseUrl, + supabaseAnonKey, { cookies: { async get(name: string) { diff --git a/components/profile-toggle.tsx b/components/profile-toggle.tsx index d0e492be..7db6a719 100644 --- a/components/profile-toggle.tsx +++ b/components/profile-toggle.tsx @@ -46,7 +46,7 @@ export function ProfileToggle() { } const handleSignOut = async () => { - await supabase.auth.signOut() + await supabase?.auth.signOut() router.refresh() router.push('/auth') } diff --git a/lib/actions/collaboration.ts b/lib/actions/collaboration.ts index 7bc72edd..3e972809 100644 --- a/lib/actions/collaboration.ts +++ b/lib/actions/collaboration.ts @@ -8,7 +8,7 @@ export async function inviteUserToChat(chatId: string, email: string, role: 'own const supabase = getSupabaseServerClient() const inviterId = await getCurrentUserIdOnServer() - if (!inviterId) { + if (!inviterId || !supabase) { return { error: 'You must be logged in to invite users.' } } @@ -31,6 +31,9 @@ export async function inviteUserToChat(chatId: string, email: string, role: 'own // Get the user ID of the person being invited using admin client const adminClient = getSupabaseServiceClient() + if (!adminClient) { + return { error: 'Auth system not configured.' } + } const { data: { users }, error: userError } = await adminClient.auth.admin.listUsers() if (userError) { diff --git a/lib/actions/rag.ts b/lib/actions/rag.ts index 25af2b6a..84a1f1c7 100644 --- a/lib/actions/rag.ts +++ b/lib/actions/rag.ts @@ -25,6 +25,9 @@ export async function retrieveContext( } const supabase = getSupabaseServerClient() + if (!supabase) { + return [] + } // 1. Generate embedding for the query using AI SDK const { embedding } = await embed({ diff --git a/lib/auth/get-current-user.ts b/lib/auth/get-current-user.ts index bad3eb38..20f6ed08 100644 --- a/lib/auth/get-current-user.ts +++ b/lib/auth/get-current-user.ts @@ -33,6 +33,10 @@ export async function getSupabaseUserAndSessionOnServer(): Promise<{ try { const supabase = getSupabaseServerClient(); + if (!supabase) { + return { user: null, session: null, error: null }; + } + const { data: { user }, error, diff --git a/lib/auth/v0/auth-service.ts b/lib/auth/v0/auth-service.ts index 41dea550..dbabbf18 100644 --- a/lib/auth/v0/auth-service.ts +++ b/lib/auth/v0/auth-service.ts @@ -22,14 +22,13 @@ export const AUTH_CONFIG = { /** * Send magic link to email - * Replace with your actual implementation: - * - Supabase: supabase.auth.signInWithOtp({ email }) - * - NextAuth: signIn("email", { email }) - * - Custom: POST to your magic link endpoint */ export async function sendMagicLink(email: string): Promise { try { - const { error } = await getSupabase().auth.signInWithOtp({ + const supabase = getSupabase() + if (!supabase) return { success: false, message: "Auth not configured" } + + const { error } = await supabase.auth.signInWithOtp({ email, options: { emailRedirectTo: `${window.location.origin}/auth/callback`, @@ -57,14 +56,13 @@ export async function sendMagicLink(email: string): Promise { /** * Initiate Google OAuth flow - * Replace with your actual implementation: - * - Supabase: supabase.auth.signInWithOAuth({ provider: 'google' }) - * - NextAuth: signIn("google") - * - Custom: Redirect to your OAuth endpoint */ export async function signInWithGoogle(): Promise { try { - const { error } = await getSupabase().auth.signInWithOAuth({ + const supabase = getSupabase() + if (!supabase) return { success: false, error: { code: "CONFIG_ERROR", message: "Auth not configured" } } + + const { error } = await supabase.auth.signInWithOAuth({ provider: "google", options: { redirectTo: `${window.location.origin}/auth/callback`, @@ -99,11 +97,13 @@ export async function signInWithGoogle(): Promise { /** * Initiate GitHub OAuth flow - * Replace with your actual implementation */ export async function signInWithGitHub(): Promise { try { - const { error } = await getSupabase().auth.signInWithOAuth({ + const supabase = getSupabase() + if (!supabase) return { success: false, error: { code: "CONFIG_ERROR", message: "Auth not configured" } } + + const { error } = await supabase.auth.signInWithOAuth({ provider: "github", options: { redirectTo: `${window.location.origin}/auth/callback`, @@ -134,14 +134,13 @@ export async function signInWithGitHub(): Promise { /** * Get current user session - * Replace with your actual implementation: - * - Supabase: supabase.auth.getUser() - * - NextAuth: getSession() - * - Custom: Fetch from your session endpoint */ export async function getCurrentUser(): Promise { try { - const { data: { user } } = await getSupabase().auth.getUser() + const supabase = getSupabase() + if (!supabase) return null + + const { data: { user } } = await supabase.auth.getUser() if (!user) return null return { @@ -160,11 +159,13 @@ export async function getCurrentUser(): Promise { /** * Sign out the current user - * Replace with your actual implementation */ export async function signOut(): Promise { try { - await getSupabase().auth.signOut() + const supabase = getSupabase() + if (supabase) { + await supabase.auth.signOut() + } window.location.href = "/" } catch (error) { console.error("Sign out failed:", error) diff --git a/lib/db/migrate.ts b/lib/db/migrate.ts index b7a7d8fc..5cc3cdc1 100644 --- a/lib/db/migrate.ts +++ b/lib/db/migrate.ts @@ -6,30 +6,29 @@ import * as dotenv from 'dotenv'; dotenv.config({ path: '.env.local' }); async function runMigrations() { - if (!process.env.DATABASE_URL) { + const connectionString = process.env.DATABASE_URL; + if (!connectionString) { throw new Error('DATABASE_URL environment variable is not set for migrations'); } const pool = new Pool({ - connectionString: process.env.DATABASE_URL, + connectionString, ssl: { - rejectUnauthorized: connectionString.includes("supabase.co") ? true : false, // Ensure this is appropriate for your Supabase connection + rejectUnauthorized: connectionString.includes("supabase.co") ? true : false, }, - // max: 1, // Optional: restrict to 1 connection for migration }); const db = drizzle(pool); console.log('Running database migrations...'); try { - // Point to the directory containing your migration files await migrate(db, { migrationsFolder: './drizzle/migrations' }); console.log('Migrations completed successfully.'); } catch (error) { console.error('Error running migrations:', error); - process.exit(1); // Exit with error code + process.exit(1); } finally { - await pool.end(); // Ensure the connection pool is closed + await pool.end(); } } @@ -37,5 +36,4 @@ if (process.env.EXECUTE_MIGRATIONS === 'true') { runMigrations(); } else { console.log('Skipping migrations. Set EXECUTE_MIGRATIONS=true to run them.'); - console.log('To run migrations, use the "npm run db:migrate" or "bun run db:migrate" script, which sets this variable.'); } diff --git a/lib/supabase/persistence.ts b/lib/supabase/persistence.ts index b0b64302..42deee04 100644 --- a/lib/supabase/persistence.ts +++ b/lib/supabase/persistence.ts @@ -6,6 +6,7 @@ import { PostgrestError } from '@supabase/supabase-js' export async function saveChat(chat: Chat, userId: string): Promise<{ data: string | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } const { data: chatData, error: chatError } = await supabase .from('chats') @@ -56,6 +57,8 @@ export async function saveChat(chat: Chat, userId: string): Promise<{ data: stri export async function getMessagesByChatId(chatId: string): Promise<{ data: any[] | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } + const { data, error } = await supabase .from('messages') .select('*, locations(*)') @@ -72,6 +75,8 @@ export async function getMessagesByChatId(chatId: string): Promise<{ data: any[] export async function saveSystemPrompt(userId: string, prompt: string): Promise<{ error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { error: null } + const { error } = await supabase .from('system_prompts') .upsert({ user_id: userId, prompt: prompt, updated_at: new Date().toISOString() }, { onConflict: 'user_id' }) @@ -85,6 +90,8 @@ export async function saveSystemPrompt(userId: string, prompt: string): Promise< export async function getSystemPrompt(userId: string): Promise<{ data: string | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } + const { data, error } = await supabase .from('system_prompts') .select('prompt') @@ -106,6 +113,8 @@ export async function saveDrawing( name?: string ): Promise<{ data: { id: string } | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } + const { data, error } = await supabase .from('locations') .insert({ @@ -133,6 +142,8 @@ export async function createMessage(messageData: { location_id?: string }): Promise<{ data: AIMessage | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } + const { data, error } = await supabase.from('messages').insert(messageData).select().single(); if (error) { console.error('Error creating message:', error); @@ -142,6 +153,7 @@ export async function createMessage(messageData: { export async function getChat(id: string, userId: string): Promise<{ data: Chat | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } const { data, error } = await supabase .from('chats') @@ -167,6 +179,7 @@ export async function getChat(id: string, userId: string): Promise<{ data: Chat export async function getChats(userId: string): Promise<{ data: Chat[] | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } // Get chats where user is participant const { data, error } = await supabase @@ -185,6 +198,8 @@ export async function getChats(userId: string): Promise<{ data: Chat[] | null; e export async function clearChats(userId: string): Promise<{ error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { error: null } + const { error } = await supabase .from('chats') .delete() @@ -199,6 +214,8 @@ export async function clearChats(userId: string): Promise<{ error: PostgrestErro export async function getSharedChat(id: string): Promise<{ data: Chat | null; error: PostgrestError | null }> { const supabase = getSupabaseServerClient() + if (!supabase) return { data: null, error: null } + const { data, error } = await supabase .from('chats') .select('*, messages(*)') diff --git a/next-env.d.ts b/next-env.d.ts index c4b7818f..9edff1c7 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -1,6 +1,6 @@ /// /// -import "./.next/dev/types/routes.d.ts"; +import "./.next/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. From d1f25a9a34ea62080548872ed756259e32a6493f Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Wed, 11 Feb 2026 18:39:10 +0000 Subject: [PATCH 3/3] Finalize auth fixes with Guest mode support and build stability - Implemented ENABLE_GUEST_CHAT support in API routes and pages. - Added null checks for userId when fetching system prompts in app/actions.tsx. - Ensured user existence in database only for authenticated users. - Verified successful production build with bun run build. - Refactored middleware and callback routes for better cookie preservation and error handling. Co-authored-by: ngoiyaeric <115367894+ngoiyaeric@users.noreply.github.com> --- app/actions.tsx | 5 +++-- app/api/chat/route.ts | 3 ++- app/page.tsx | 11 +++++++---- app/search/[id]/page.tsx | 11 +++++++---- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/app/actions.tsx b/app/actions.tsx index edc81fef..2c4423ed 100644 --- a/app/actions.tsx +++ b/app/actions.tsx @@ -400,9 +400,10 @@ async function submit(formData?: FormData, skip?: boolean) { } const userId = await getCurrentUserIdOnServer() - if (!userId) throw new Error('Unauthorized') + const guestChatEnabled = process.env.ENABLE_GUEST_CHAT === 'true'; + if (!userId && !guestChatEnabled) throw new Error('Unauthorized') const userInputAction = formData?.get('input') as string; - const currentSystemPrompt = (await getSystemPrompt(userId)) || ''; + const currentSystemPrompt = (userId ? (await getSystemPrompt(userId)) : '') || ''; const retrievedContext = userInputAction ? await retrieveContext(userInput, aiState.get().chatId) : []; const augmentedSystemPrompt = retrievedContext.length > 0 ? `Context: ${retrievedContext.join('\n')}\n${currentSystemPrompt}` : currentSystemPrompt; const mapProvider = formData?.get('mapProvider') as 'mapbox' | 'google' diff --git a/app/api/chat/route.ts b/app/api/chat/route.ts index 6d9ec11a..f61bb131 100644 --- a/app/api/chat/route.ts +++ b/app/api/chat/route.ts @@ -7,8 +7,9 @@ export const maxDuration = 60 export async function POST(req: Request) { const { messages } = await req.json() const userId = await getCurrentUserIdOnServer() + const guestChatEnabled = process.env.ENABLE_GUEST_CHAT === 'true' - if (!userId) { + if (!userId && !guestChatEnabled) { return new Response('Unauthorized', { status: 401 }) } diff --git a/app/page.tsx b/app/page.tsx index 9b0bec07..980109ec 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,7 +1,7 @@ import { Chat } from '@/components/chat' import { nanoid } from '@/lib/utils' import { AI } from './actions' -import { getCurrentUserIdOnServer, getSupabaseUserAndSessionOnServer } from '@/lib/auth/get-current-user' +import { getSupabaseUserAndSessionOnServer } from '@/lib/auth/get-current-user' import { redirect } from 'next/navigation' import { MapDataProvider } from '@/components/map/map-data-context' import { ensureUserExists } from '@/lib/actions/users' @@ -11,13 +11,16 @@ export const dynamic = 'force-dynamic' export default async function Page() { const { user } = await getSupabaseUserAndSessionOnServer() + const guestChatEnabled = process.env.ENABLE_GUEST_CHAT === 'true' - if (!user) { + if (!user && !guestChatEnabled) { redirect('/auth') } - // Ensure user exists in public.users table for FK constraints - await ensureUserExists(user.id, user.email) + // Ensure user exists in public.users table if they are authenticated + if (user) { + await ensureUserExists(user.id, user.email) + } const id = nanoid() return ( diff --git a/app/search/[id]/page.tsx b/app/search/[id]/page.tsx index b07f79bf..62f6877d 100644 --- a/app/search/[id]/page.tsx +++ b/app/search/[id]/page.tsx @@ -25,15 +25,18 @@ export async function generateMetadata({ params }: SearchPageProps) { export default async function SearchPage({ params }: SearchPageProps) { const { id } = await params; const { user } = await getSupabaseUserAndSessionOnServer(); + const guestChatEnabled = process.env.ENABLE_GUEST_CHAT === 'true'; - if (!user) { + if (!user && !guestChatEnabled) { redirect('/'); } - // Ensure user exists - await ensureUserExists(user.id, user.email); + // Ensure user exists if authenticated + if (user) { + await ensureUserExists(user.id, user.email); + } - const chat = await getChat(id, user.id); + const chat = await getChat(id, user?.id); if (!chat) { notFound();