From d2079ace4af742f75ddf48d9b02195f154925b76 Mon Sep 17 00:00:00 2001 From: Manan Tank Date: Wed, 23 Oct 2024 01:54:41 +0530 Subject: [PATCH] DO NOT MERGE - Use Next.js 15 in Dashboard --- apps/dashboard/package.json | 17 +- apps/dashboard/src/@/api/projects.ts | 4 +- apps/dashboard/src/@/api/team.ts | 4 +- apps/dashboard/src/@/constants/cookie.ts | 10 +- .../components/server/chain-header.tsx | 8 +- .../(chain)/[chain_id]/(chainPage)/layout.tsx | 24 +- .../(chainPage)/opengraph-image.tsx | 4 +- .../(chain)/[chain_id]/(chainPage)/page.tsx | 4 +- .../[chain_id]/(chainPage)/popular/page.tsx | 20 +- .../components/marketplace-table.tsx | 8 +- .../(marketplace)/direct-listings/page.tsx | 8 +- .../(marketplace)/english-auctions/page.tsx | 8 +- .../claim-conditions/snapshot-upload.tsx | 16 +- .../_utils/getContractFromParams.ts | 2 +- .../account-permissions/page.tsx | 8 +- .../[contractAddress]/account/page.tsx | 8 +- .../[contractAddress]/accounts/page.tsx | 8 +- .../[contractAddress]/analytics/page.tsx | 8 +- .../claim-conditions/page.tsx | 8 +- .../[contractAddress]/code/page.tsx | 6 +- .../[contractAddress]/embed/page.tsx | 8 +- .../[contractAddress]/events/page.tsx | 6 +- .../[contractAddress]/explorer/page.tsx | 6 +- .../[chain_id]/[contractAddress]/layout.tsx | 25 +- .../[contractAddress]/modules/page.tsx | 8 +- .../nfts/ContractNFTPage.tsx | 6 +- .../[tokenId]/components/airdrop-upload.tsx | 12 +- .../[contractAddress]/nfts/[tokenId]/page.tsx | 18 +- .../nfts/[tokenId]/token-id.tsx | 7 +- .../nfts/components/table.tsx | 8 +- .../[contractAddress]/nfts/page.tsx | 8 +- .../[contractAddress]/opengraph-image.tsx | 4 +- .../overview/components/ContractChecklist.tsx | 4 +- .../overview/components/LatestEvents.tsx | 8 +- .../[chain_id]/[contractAddress]/page.tsx | 6 +- .../[contractAddress]/permissions/page.tsx | 6 +- .../[contractAddress]/proposals/page.tsx | 8 +- .../[contractAddress]/settings/page.tsx | 6 +- .../sources/ContractSourcesPage.tsx | 8 +- .../[contractAddress]/sources/page.tsx | 6 +- .../[contractAddress]/split/page.tsx | 8 +- .../components/airdrop-upload-erc20.tsx | 176 ++++--- .../[contractAddress]/tokens/page.tsx | 6 +- .../(chain)/[chain_id]/faucet/page.tsx | 4 +- .../(chain)/[chain_id]/tx/[txHash]/page.tsx | 8 +- .../(chain)/chainlist/[chain_type]/page.tsx | 156 +++--- .../(dashboard)/(chain)/chainlist/page.tsx | 14 +- .../contracts/deploy/[compiler_uri]/page.tsx | 12 +- .../contracts/publish/[publish_uri]/page.tsx | 8 +- .../account-abstraction/[clientId]/page.tsx | 19 +- .../connect/analytics/[clientId]/page.tsx | 6 +- .../ecosystem/EcosystemLandingPage.tsx | 2 +- .../[slug]/(active)/EcosystemSlugLayout.tsx | 4 +- .../client/add-partner-form.client.tsx | 4 +- .../client/update-partner-form.client.tsx | 4 +- .../components/server/partners-table.tsx | 6 +- .../ecosystem/[slug]/(active)/layout.tsx | 11 +- .../ecosystem/[slug]/(active)/page.tsx | 3 +- .../in-app-wallets/[clientId]/page.tsx | 17 +- .../dashboard/connect/pay/[id]/page.tsx | 6 +- .../connect/pay/[id]/settings/page.tsx | 6 +- .../connect/pay/[id]/webhooks/page.tsx | 6 +- .../(dashboard)/explore/[category]/page.tsx | 6 +- .../[contract_id]/[version]/deploy/page.tsx | 27 +- .../[publisher]/[contract_id]/deploy/page.tsx | 15 +- .../[publisher]/[contract_id]/layout.tsx | 5 +- .../[publisher]/[contract_id]/page.tsx | 52 +- .../publishedContractOGImageTemplate.tsx | 20 +- .../components/uri-based-deploy.tsx | 2 +- .../(dashboard)/published-contract/page.tsx | 12 +- .../components/create-ticket.action.ts | 2 +- .../tools/transaction-simulator/page.tsx | 4 +- .../src/app/(dashboard)/trending/page.tsx | 11 +- .../src/app/api/auth/ensure-login/route.ts | 2 +- .../src/app/api/auth/get-auth-token/route.ts | 2 +- .../src/app/api/auth/logout/route.ts | 2 +- .../dashboard/src/app/api/contact-us/route.ts | 3 +- .../dashboard/src/app/api/lib/getAuthToken.ts | 6 +- apps/dashboard/src/app/layout.tsx | 6 +- apps/dashboard/src/app/login/auth-actions.ts | 6 +- .../src/app/team/[team_slug]/(team)/page.tsx | 8 +- .../(team)/~/settings/billing/page.tsx | 6 +- .../[team_slug]/(team)/~/settings/layout.tsx | 6 +- .../(team)/~/settings/members/page.tsx | 8 +- .../[team_slug]/(team)/~/settings/page.tsx | 6 +- .../connect/account-abstraction/page.tsx | 4 +- .../[project_slug]/connect/analytics/page.tsx | 8 +- .../ecosystem/[slug]/(active)/layout.tsx | 10 +- .../ecosystem/[slug]/(active)/page.tsx | 3 +- .../connect/ecosystem/create/page.tsx | 10 +- .../[project_slug]/connect/ecosystem/page.tsx | 4 +- .../connect/in-app-wallets/page.tsx | 8 +- .../[project_slug]/connect/layout.tsx | 18 +- .../[project_slug]/connect/page.tsx | 16 +- .../[project_slug]/connect/pay/layout.tsx | 10 +- .../[project_slug]/connect/pay/page.tsx | 8 +- .../connect/pay/webhooks/page.tsx | 8 +- .../[project_slug]/contracts/page.tsx | 10 +- .../engine/(general)/layout.tsx | 20 +- .../[project_slug]/engine/(general)/page.tsx | 22 +- .../engine/(instance)/[engineId]/layout.tsx | 26 +- .../engine/(instance)/[engineId]/page.tsx | 12 +- .../team/[team_slug]/[project_slug]/page.tsx | 10 +- .../settings/account-abstraction/page.tsx | 4 +- .../settings/in-app-wallets/page.tsx | 4 +- .../[project_slug]/settings/layout.tsx | 18 +- .../[project_slug]/settings/page.tsx | 4 +- .../[project_slug]/settings/pay/page.tsx | 6 +- .../src/app/team/[team_slug]/layout.tsx | 2 +- .../components/TeamHeader/TeamSelectionUI.tsx | 9 +- .../src/components/buttons/MismatchButton.tsx | 15 +- .../Form/NetworkIdInput.tsx | 4 +- .../external-links-input.tsx | 4 +- .../contract-table-v2/index.tsx | 8 +- .../tables/deployed-contracts.tsx | 8 +- .../overview/create-backend-wallet-button.tsx | 207 ++++---- .../engine/overview/transaction-timeline.tsx | 8 +- .../components/inputs/BasisPointsInput.tsx | 4 +- .../landing-pages/card-with-metrics.tsx | 8 +- .../components/mission/ReasonWeb3Section.tsx | 8 +- .../components/PayCustomersTable.tsx | 6 +- .../components/PaymentHistory.tsx | 6 +- .../components/TotalVolumePieChart.tsx | 6 +- .../settings/Account/Billing/CouponCard.tsx | 4 +- .../SponsorshipPolicies/index.tsx | 8 +- .../src/core-ui/batch-upload/batch-table.tsx | 12 +- apps/dashboard/src/pages/api/og/profile.tsx | 8 +- .../src/pages/hackathon/consumer-crypto.tsx | 4 +- apps/dashboard/src/pages/hackathon/earn.tsx | 4 +- .../src/tw-components/code-block.tsx | 10 +- .../src/tw-components/masked-avatar/index.tsx | 6 +- .../ui/components/QRCode/QRCodeRenderer.tsx | 207 ++++---- pnpm-lock.yaml | 483 ++++++++++-------- 133 files changed, 1229 insertions(+), 1117 deletions(-) diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json index 31cb53a4a13..c4271869b7b 100644 --- a/apps/dashboard/package.json +++ b/apps/dashboard/package.json @@ -53,6 +53,7 @@ "@tanstack/react-query": "5.59.13", "@tanstack/react-table": "^8.17.3", "@thirdweb-dev/service-utils": "workspace:*", + "@vercel/functions": "^1.4.2", "@vercel/og": "^0.6.2", "abitype": "1.0.6", "chakra-react-select": "^4.7.6", @@ -69,7 +70,7 @@ "ipaddr.js": "^2.2.0", "lottie-react": "^2.4.0", "lucide-react": "0.452.0", - "next": "14.2.15", + "next": "15.0.0", "next-plausible": "^3.12.0", "next-seo": "^6.5.0", "next-themes": "^0.3.0", @@ -107,8 +108,8 @@ "devDependencies": { "@chakra-ui/cli": "^2.4.1", "@chromatic-com/storybook": "2.0.2", - "@next/bundle-analyzer": "14.2.15", - "@next/eslint-plugin-next": "14.2.15", + "@next/bundle-analyzer": "15.0.0", + "@next/eslint-plugin-next": "15.0.0", "@playwright/test": "1.47.2", "@storybook/addon-essentials": "8.3.5", "@storybook/addon-interactions": "8.3.5", @@ -124,8 +125,8 @@ "@types/papaparse": "^5.3.15", "@types/pluralize": "^0.0.33", "@types/qrcode": "^1.5.5", - "@types/react": "^18.3.11", - "@types/react-dom": "^18.3.1", + "@types/react": "18.3.11", + "@types/react-dom": "18.3.1", "@types/react-table": "^7.7.20", "@types/spdx-correct": "^3.1.3", "@types/swagger-ui-react": "^4.18.3", @@ -143,5 +144,11 @@ "storybook": "8.3.5", "tailwindcss": "3.4.13", "typescript": "5.6.3" + }, + "pnpm": { + "overrides": { + "@types/react": "18.3.11", + "@types/react-dom": "18.3.1" + } } } diff --git a/apps/dashboard/src/@/api/projects.ts b/apps/dashboard/src/@/api/projects.ts index 0c17dc450b2..ef2cbdbd558 100644 --- a/apps/dashboard/src/@/api/projects.ts +++ b/apps/dashboard/src/@/api/projects.ts @@ -21,7 +21,7 @@ export type Project = { }; export async function getProjects(teamSlug: string) { - const cookiesManager = cookies(); + const cookiesManager = await cookies(); const activeAccount = cookiesManager.get(COOKIE_ACTIVE_ACCOUNT)?.value; const token = activeAccount ? cookiesManager.get(COOKIE_PREFIX_TOKEN + activeAccount)?.value @@ -46,7 +46,7 @@ export async function getProjects(teamSlug: string) { } export async function getProject(teamSlug: string, projectSlug: string) { - const cookiesManager = cookies(); + const cookiesManager = await cookies(); const activeAccount = cookiesManager.get(COOKIE_ACTIVE_ACCOUNT)?.value; const token = activeAccount ? cookiesManager.get(COOKIE_PREFIX_TOKEN + activeAccount)?.value diff --git a/apps/dashboard/src/@/api/team.ts b/apps/dashboard/src/@/api/team.ts index 1759bb1624d..4ec8153815b 100644 --- a/apps/dashboard/src/@/api/team.ts +++ b/apps/dashboard/src/@/api/team.ts @@ -23,7 +23,7 @@ export type Team = { }; export async function getTeamBySlug(slug: string) { - const cookiesManager = cookies(); + const cookiesManager = await cookies(); const activeAccount = cookiesManager.get(COOKIE_ACTIVE_ACCOUNT)?.value; const token = activeAccount ? cookiesManager.get(COOKIE_PREFIX_TOKEN + activeAccount)?.value @@ -45,7 +45,7 @@ export async function getTeamBySlug(slug: string) { } export async function getTeams() { - const cookiesManager = cookies(); + const cookiesManager = await cookies(); const activeAccount = cookiesManager.get(COOKIE_ACTIVE_ACCOUNT)?.value; const token = activeAccount ? cookiesManager.get(COOKIE_PREFIX_TOKEN + activeAccount)?.value diff --git a/apps/dashboard/src/@/constants/cookie.ts b/apps/dashboard/src/@/constants/cookie.ts index 669cc606f7f..c64b933473e 100644 --- a/apps/dashboard/src/@/constants/cookie.ts +++ b/apps/dashboard/src/@/constants/cookie.ts @@ -1,12 +1,16 @@ -import { cookies } from "next/headers"; +import { type UnsafeUnwrappedCookies, cookies } from "next/headers"; export const COOKIE_ACTIVE_ACCOUNT = "tw_active_account"; export const COOKIE_PREFIX_TOKEN = "tw_token_"; export function getActiveAccountCookie() { - return cookies().get(COOKIE_ACTIVE_ACCOUNT)?.value; + return (cookies() as unknown as UnsafeUnwrappedCookies).get( + COOKIE_ACTIVE_ACCOUNT, + )?.value; } export function getJWTCookie(address: string) { - return cookies().get(COOKIE_PREFIX_TOKEN + address)?.value; + return (cookies() as unknown as UnsafeUnwrappedCookies).get( + COOKIE_PREFIX_TOKEN + address, + )?.value; } diff --git a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/chain-header.tsx b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/chain-header.tsx index f057047b77c..1dac58a178b 100644 --- a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/chain-header.tsx +++ b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/chain-header.tsx @@ -17,7 +17,7 @@ type ChainHeaderProps = { export function ChainHeader(props: ChainHeaderProps) { return ( // force the banner image to be 4:1 aspect ratio and full-width on mobile devices -
+ (
{!props.headerImageUrl &&
}
{props.headerImageUrl && ( // eslint-disable-next-line @next/next/no-img-element - + />) )}
{/* below header */} @@ -65,6 +65,6 @@ export function ChainHeader(props: ChainHeaderProps) {
- + ) ); } diff --git a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/layout.tsx b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/layout.tsx index e2fe40d0c2e..dcf842f334d 100644 --- a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/layout.tsx +++ b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/layout.tsx @@ -32,9 +32,8 @@ import { ChainHeader } from "./components/server/chain-header"; // TODO: improve the behavior when clicking "Get started with thirdweb", currently just redirects to the dashboard -export async function generateMetadata({ - params, -}: { params: { chain_id: string } }): Promise { +export async function generateMetadata(props: { params: Promise<{ chain_id: string }> }): Promise { + const params = await props.params; const chain = await getChain(params.chain_id); const sanitizedChainName = chain.name.replace("Mainnet", "").trim(); const title = `${sanitizedChainName}: RPC and Chain Settings`; @@ -54,13 +53,18 @@ export async function generateMetadata({ } // this is the dashboard layout file -export default async function ChainPageLayout({ - children, - params, -}: { - children: React.ReactNode; - params: { chain_id: string }; -}) { +export default async function ChainPageLayout( + props: { + children: React.ReactNode; + params: Promise<{ chain_id: string }>; + } +) { + const params = await props.params; + + const { + children + } = props; + const chain = await getChain(params.chain_id); if (params.chain_id !== chain.slug) { diff --git a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/opengraph-image.tsx b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/opengraph-image.tsx index bbc548926b7..0a04405bcf6 100644 --- a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/opengraph-image.tsx +++ b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/opengraph-image.tsx @@ -18,7 +18,7 @@ export const contentType = "image/png"; const TWLogo: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( - + ) ); // Image generation diff --git a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/page.tsx b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/page.tsx index 67a974a6590..2571241f7ad 100644 --- a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/page.tsx @@ -13,9 +13,9 @@ import { ChainCTA } from "./components/server/cta-card"; import { ExplorersSection } from "./components/server/explorer-section"; export default async function Page(props: { - params: { chain_id: string }; + params: Promise<{ chain_id: string }>; }) { - const chain = await getChain(props.params.chain_id); + const chain = await getChain((await props.params).chain_id); const chainMetadata = await getChainMetadata(chain.chainId); const isDeprecated = chain.status === "deprecated"; diff --git a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/popular/page.tsx b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/popular/page.tsx index ebe8cbf0efe..846a3178f59 100644 --- a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/popular/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/popular/page.tsx @@ -7,39 +7,35 @@ import { getChain } from "../../../utils"; export const dynamic = "force-dynamic"; export default async function Page(props: { - params: { chain_id: string }; - searchParams: { page?: number; sortBy?: SortBy }; + params: Promise<{ chain_id: string }>; + searchParams: Promise<{ page?: number; sortBy?: SortBy }>; }) { - const chain = await getChain(props.params.chain_id); + const chain = await getChain((await props.params).chain_id); const topContracts = await fetchTopContracts({ chainId: chain.chainId, - page: props.searchParams.page, - sortBy: props.searchParams.sortBy, + page: (await props.searchParams).page, + sortBy: (await props.searchParams).sortBy, perPage: 15, timeRange: "month", }); return ( -
+ (

Popular Contracts

-

Explore contracts on Ethereum and sort them by your preferred metrics

-
- {topContracts.length > 0 && ( )} - {topContracts.length === 0 && (
@@ -48,6 +44,6 @@ export default async function Page(props: {
)} -
+
) ); } diff --git a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/[contractAddress]/(marketplace)/components/marketplace-table.tsx b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/[contractAddress]/(marketplace)/components/marketplace-table.tsx index 1784e397011..78a6cc8d6c8 100644 --- a/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/[contractAddress]/(marketplace)/components/marketplace-table.tsx +++ b/apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/[contractAddress]/(marketplace)/components/marketplace-table.tsx @@ -182,7 +182,7 @@ export const MarketplaceTable: React.FC = ({ >(null); return ( - + ( - + ) ); } diff --git a/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/client/update-partner-form.client.tsx b/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/client/update-partner-form.client.tsx index 3562e003ca6..f5e75b09a52 100644 --- a/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/client/update-partner-form.client.tsx +++ b/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/client/update-partner-form.client.tsx @@ -49,7 +49,7 @@ export function UpdatePartnerForm({ }); return ( -
+ ( { updatePartner({ @@ -152,6 +152,6 @@ export function UpdatePartnerForm({ Update
- + ) ); } diff --git a/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/server/partners-table.tsx b/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/server/partners-table.tsx index 95ce105019e..4bee0b28374 100644 --- a/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/server/partners-table.tsx +++ b/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/server/partners-table.tsx @@ -26,12 +26,12 @@ export function PartnersTable({ ecosystem }: { ecosystem: Ecosystem }) { if (isPending) { return ( -
+ (
{Array.from({ length: 3 }).map((_, i) => ( // biome-ignore lint/suspicious/noArrayIndexKey: static list with index as key - + () ))} -
+
) ); } diff --git a/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/layout.tsx b/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/layout.tsx index 193d6af21af..4f534005609 100644 --- a/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/layout.tsx +++ b/apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/layout.tsx @@ -1,9 +1,12 @@ import { EcosystemLayoutSlug } from "./EcosystemSlugLayout"; -export default async function Layout({ - children, - params, -}: { children: React.ReactNode; params: { slug: string } }) { +export default async function Layout(props: { children: React.ReactNode; params: Promise<{ slug: string }> }) { + const params = await props.params; + + const { + children + } = props; + return ( }) { + const params = await props.params; return ; } diff --git a/apps/dashboard/src/app/(dashboard)/dashboard/connect/in-app-wallets/[clientId]/page.tsx b/apps/dashboard/src/app/(dashboard)/dashboard/connect/in-app-wallets/[clientId]/page.tsx index 8e0bb1cacb1..ad5b094e868 100644 --- a/apps/dashboard/src/app/(dashboard)/dashboard/connect/in-app-wallets/[clientId]/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/dashboard/connect/in-app-wallets/[clientId]/page.tsx @@ -6,15 +6,15 @@ import { getInAppWalletSupportedAPIKeys } from "../getInAppWalletSupportedAPIKey import { InAppWalletsAPIKeysMenu } from "../inAppWalletsAPIKeysMenu"; export default async function Page(props: { - params: { + params: Promise<{ clientId: string; - }; - searchParams: { + }>; + searchParams: Promise<{ tab?: string; - }; + }>; }) { const authToken = getAuthToken(); - const { clientId } = props.params; + const { clientId } = (await props.params); if (!authToken) { redirect( @@ -30,7 +30,7 @@ export default async function Page(props: { } return ( -
+ (
{/* header */}
@@ -44,13 +44,12 @@ export default async function Page(props: { />
-
-
+
) ); } diff --git a/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/page.tsx b/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/page.tsx index 765388960a1..3fefd42fcff 100644 --- a/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/page.tsx @@ -3,11 +3,11 @@ import { PayAnalytics } from "../../../../../../components/pay/PayAnalytics/PayA import { getAPIKey } from "../../../../../api/lib/getAPIKeys"; export default async function Page(props: { - params: { + params: Promise<{ id: string; - }; + }>; }) { - const apiKey = await getAPIKey(props.params.id); + const apiKey = await getAPIKey((await props.params).id); if (!apiKey) { notFound(); diff --git a/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/settings/page.tsx b/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/settings/page.tsx index 36b0e45c849..964099743c4 100644 --- a/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/settings/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/settings/page.tsx @@ -3,11 +3,11 @@ import { PayConfig } from "../../../../../../../components/pay/PayConfig"; import { getAPIKey } from "../../../../../../api/lib/getAPIKeys"; export default async function Page(props: { - params: { + params: Promise<{ id: string; - }; + }>; }) { - const apiKey = await getAPIKey(props.params.id); + const apiKey = await getAPIKey((await props.params).id); if (!apiKey) { notFound(); diff --git a/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/webhooks/page.tsx b/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/webhooks/page.tsx index 7266157db25..c05593ad80b 100644 --- a/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/webhooks/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/[id]/webhooks/page.tsx @@ -3,11 +3,11 @@ import { getAPIKey } from "../../../../../../api/lib/getAPIKeys"; import { PayWebhooksPage } from "../../components/webhooks.client"; export default async function Page(props: { - params: { + params: Promise<{ id: string; - }; + }>; }) { - const apiKey = await getAPIKey(props.params.id); + const apiKey = await getAPIKey((await props.params).id); if (!apiKey) { notFound(); diff --git a/apps/dashboard/src/app/(dashboard)/explore/[category]/page.tsx b/apps/dashboard/src/app/(dashboard)/explore/[category]/page.tsx index 7c2b20404f2..d64902ee9d9 100644 --- a/apps/dashboard/src/app/(dashboard)/explore/[category]/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/explore/[category]/page.tsx @@ -18,9 +18,9 @@ import { notFound } from "next/navigation"; import { Suspense } from "react"; type ExploreCategoryPageProps = { - params: { + params: Promise<{ category: string; - }; + }>; }; export const metadata: Metadata = { @@ -48,7 +48,7 @@ export async function generateMetadatra( export default async function ExploreCategoryPage( props: ExploreCategoryPageProps, ) { - const category = getCategory(props.params.category); + const category = getCategory((await props.params).category); if (!category) { notFound(); } diff --git a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/[version]/deploy/page.tsx b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/[version]/deploy/page.tsx index cf2df3be2f7..4857b57375a 100644 --- a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/[version]/deploy/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/[version]/deploy/page.tsx @@ -1,19 +1,20 @@ import { DeployFormForPublishInfo } from "../../../../components/publish-based-deploy"; import { moduleFromBase64 } from "../../../../utils/module-base-64"; -export default function PublishedContractVersionDeployPage({ - params, - searchParams, -}: { - params: { - publisher: string; - contract_id: string; - version: string; - }; - searchParams: { - module?: string[]; - }; -}) { +export default async function PublishedContractVersionDeployPage( + props: { + params: Promise<{ + publisher: string; + contract_id: string; + version: string; + }>; + searchParams: Promise<{ + module?: string[]; + }>; + } +) { + const searchParams = await props.searchParams; + const params = await props.params; const modules = searchParams.module ?.map((m) => moduleFromBase64(m)) .filter((m) => m !== null); diff --git a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/deploy/page.tsx b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/deploy/page.tsx index 9704ca3ea27..e2f83dfa356 100644 --- a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/deploy/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/deploy/page.tsx @@ -2,19 +2,18 @@ import { DeployFormForPublishInfo } from "../../../components/publish-based-depl import { moduleFromBase64 } from "../../../utils/module-base-64"; type Props = { - params: { + params: Promise<{ publisher: string; contract_id: string; - }; - searchParams: { + }>; + searchParams: Promise<{ module?: string[]; - }; + }>; }; -export default function PublishedContractDeployPage({ - params, - searchParams, -}: Props) { +export default async function PublishedContractDeployPage(props: Props) { + const searchParams = await props.searchParams; + const params = await props.params; const modules = searchParams.module ?.map((m) => moduleFromBase64(m)) .filter((m) => m !== null); diff --git a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/layout.tsx b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/layout.tsx index 7858489bf62..0cefb87d98c 100644 --- a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/layout.tsx +++ b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/layout.tsx @@ -6,7 +6,7 @@ type Params = { publisher: string; contract_id: string }; export default function PublishedContractLayout(props: { children: React.ReactNode; - params: Params; + params: Promise; }) { return (
@@ -16,7 +16,8 @@ export default function PublishedContractLayout(props: { ); } -export async function generateMetadata({ params }: { params: Params }) { +export async function generateMetadata(props: { params: Promise }) { + const params = await props.params; const { publisher, contract_id } = params; const publishedContracts = await getPublishedContractsWithPublisherMapping({ diff --git a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/page.tsx b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/page.tsx index c2e332d1163..036417a9710 100644 --- a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/page.tsx @@ -7,10 +7,10 @@ import { DeployContractHeader } from "../../components/contract-header"; import { getPublishedContractsWithPublisherMapping } from "./utils/getPublishedContractsWithPublisherMapping"; type PublishedContractDeployPageProps = { - params: { + params: Promise<{ publisher: string; contract_id: string; - }; + }>; }; export default async function PublishedContractPage( @@ -18,8 +18,8 @@ export default async function PublishedContractPage( ) { const publishedContractVersions = await getPublishedContractsWithPublisherMapping({ - publisher: props.params.publisher, - contract_id: props.params.contract_id, + publisher: (await props.params).publisher, + contract_id: (await props.params).contract_id, }); if (!publishedContractVersions) { @@ -32,28 +32,26 @@ export default async function PublishedContractPage( notFound(); } - return ( - <> - - + + + + + {/* TODO: remove the chakra things :) */} + +
+ - - - {/* TODO: remove the chakra things :) */} - -
- -
-
- - ); +
+
+ ); } diff --git a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/utils/publishedContractOGImageTemplate.tsx b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/utils/publishedContractOGImageTemplate.tsx index 42615d2d7a6..750187ca99a 100644 --- a/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/utils/publishedContractOGImageTemplate.tsx +++ b/apps/dashboard/src/app/(dashboard)/published-contract/[publisher]/[contract_id]/utils/publishedContractOGImageTemplate.tsx @@ -5,7 +5,7 @@ import { download } from "thirdweb/storage"; const OgBrandIcon: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( fill="white" fillOpacity="0.5" /> - + ) ); const PackageIcon: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( - + ) ); const FileTextIcon: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( - + ) ); const CalendarIcon: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( - + ) ); const VersionIcon: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( - + ) ); const MAX_LENGTH = 190; diff --git a/apps/dashboard/src/app/(dashboard)/published-contract/components/uri-based-deploy.tsx b/apps/dashboard/src/app/(dashboard)/published-contract/components/uri-based-deploy.tsx index cb21a8100a5..67fab66cbc1 100644 --- a/apps/dashboard/src/app/(dashboard)/published-contract/components/uri-based-deploy.tsx +++ b/apps/dashboard/src/app/(dashboard)/published-contract/components/uri-based-deploy.tsx @@ -19,7 +19,7 @@ export async function DeployFormForUri(props: DeployFormForUriProps) { return
Could not fetch metadata
; } - const cookieStore = cookies(); + const cookieStore = await cookies(); const address = cookieStore.get(COOKIE_ACTIVE_ACCOUNT)?.value; if (!address) { redirect(`/login?next=${encodeURIComponent(pathname)}`); diff --git a/apps/dashboard/src/app/(dashboard)/published-contract/page.tsx b/apps/dashboard/src/app/(dashboard)/published-contract/page.tsx index 3acd1e96dda..bad3e739e41 100644 --- a/apps/dashboard/src/app/(dashboard)/published-contract/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/published-contract/page.tsx @@ -3,11 +3,11 @@ import { redirect } from "next/navigation"; import { fetchDeployMetadata } from "thirdweb/contract"; export default async function Page(props: { - searchParams: { + searchParams: Promise<{ uri?: string; - }; + }>; }) { - if (!props.searchParams?.uri) { + if (!(await props.searchParams)?.uri) { // redirect back out if we do not have a uri return redirect("/dashboard"); } @@ -15,9 +15,9 @@ export default async function Page(props: { const contractMetadata = await fetchDeployMetadata({ client: getThirdwebClient(), // force `ipfs://` prefix - uri: props.searchParams.uri.startsWith("ipfs://") - ? props.searchParams.uri - : `ipfs://${props.searchParams.uri}`, + uri: (await props.searchParams).uri.startsWith("ipfs://") + ? (await props.searchParams).uri + : `ipfs://${(await props.searchParams).uri}`, }).catch(() => null); return ( diff --git a/apps/dashboard/src/app/(dashboard)/support/components/create-ticket.action.ts b/apps/dashboard/src/app/(dashboard)/support/components/create-ticket.action.ts index aa61a76f35a..a18e208994d 100644 --- a/apps/dashboard/src/app/(dashboard)/support/components/create-ticket.action.ts +++ b/apps/dashboard/src/app/(dashboard)/support/components/create-ticket.action.ts @@ -71,7 +71,7 @@ export async function createTicketAction( _previousState: State, formData: FormData, ) { - const cookieManager = cookies(); + const cookieManager = await cookies(); const activeAccount = cookieManager.get(COOKIE_ACTIVE_ACCOUNT)?.value; const token = activeAccount ? cookieManager.get(COOKIE_PREFIX_TOKEN + activeAccount)?.value diff --git a/apps/dashboard/src/app/(dashboard)/tools/transaction-simulator/page.tsx b/apps/dashboard/src/app/(dashboard)/tools/transaction-simulator/page.tsx index 411a3201ff4..10caa05d8a4 100644 --- a/apps/dashboard/src/app/(dashboard)/tools/transaction-simulator/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/tools/transaction-simulator/page.tsx @@ -11,7 +11,7 @@ export const metadata: Metadata = { }; export default async function Page(props: { - searchParams: Partial; + searchParams: Promise>; }) { - return ; + return ; } diff --git a/apps/dashboard/src/app/(dashboard)/trending/page.tsx b/apps/dashboard/src/app/(dashboard)/trending/page.tsx index a18fdc434eb..ede1fc31b22 100644 --- a/apps/dashboard/src/app/(dashboard)/trending/page.tsx +++ b/apps/dashboard/src/app/(dashboard)/trending/page.tsx @@ -16,25 +16,24 @@ export const metadata: Metadata = { export const dynamic = "force-dynamic"; export default async function DashboardContractTrendingPage(props: { - searchParams: { timeRange?: TimeRange; page?: number; sortBy?: SortBy }; + searchParams: Promise<{ timeRange?: TimeRange; page?: number; sortBy?: SortBy }>; }) { const topContracts = await fetchTopContracts({ - ...props.searchParams, + ...(await props.searchParams), timeRange: "month", perPage: 20, }); return ( - + (

Trending Contracts

- -
+
) ); } diff --git a/apps/dashboard/src/app/api/auth/ensure-login/route.ts b/apps/dashboard/src/app/api/auth/ensure-login/route.ts index 7c24bc66808..5ba7c408e16 100644 --- a/apps/dashboard/src/app/api/auth/ensure-login/route.ts +++ b/apps/dashboard/src/app/api/auth/ensure-login/route.ts @@ -12,7 +12,7 @@ export type EnsureLoginResponse = { export const GET = async (req: NextRequest) => { const address = req.nextUrl.searchParams.get("address"); - const cookieStore = cookies(); + const cookieStore = await cookies(); // if we are "disconnected" we are not logged in, clear the cookie and redirect to login // this is the "log out" case (for now) if (!address) { diff --git a/apps/dashboard/src/app/api/auth/get-auth-token/route.ts b/apps/dashboard/src/app/api/auth/get-auth-token/route.ts index fa08bd548b3..5d9fd4cfbf7 100644 --- a/apps/dashboard/src/app/api/auth/get-auth-token/route.ts +++ b/apps/dashboard/src/app/api/auth/get-auth-token/route.ts @@ -17,7 +17,7 @@ function respond(jwt: string | null) { export const GET = async (req: NextRequest) => { const address = req.nextUrl.searchParams.get("address"); - const cookieStore = cookies(); + const cookieStore = await cookies(); if (!address) { return NextResponse.json( diff --git a/apps/dashboard/src/app/api/auth/logout/route.ts b/apps/dashboard/src/app/api/auth/logout/route.ts index 4921e120891..7ba34f0ca36 100644 --- a/apps/dashboard/src/app/api/auth/logout/route.ts +++ b/apps/dashboard/src/app/api/auth/logout/route.ts @@ -2,7 +2,7 @@ import { COOKIE_ACTIVE_ACCOUNT, COOKIE_PREFIX_TOKEN } from "@/constants/cookie"; import { cookies } from "next/headers"; export const POST = async () => { - const cookieStore = cookies(); + const cookieStore = await cookies(); // delete all cookies that start with the token prefix const allCookies = cookieStore.getAll(); diff --git a/apps/dashboard/src/app/api/contact-us/route.ts b/apps/dashboard/src/app/api/contact-us/route.ts index 699df626989..fe731e64927 100644 --- a/apps/dashboard/src/app/api/contact-us/route.ts +++ b/apps/dashboard/src/app/api/contact-us/route.ts @@ -1,4 +1,5 @@ import { type NextRequest, NextResponse } from "next/server"; +import { ipAddress as ipAddress1 } from "@vercel/functions"; import invariant from "tiny-invariant"; import { cacheGet, cacheSet } from "../../../lib/redis"; import type { ContactFormPayload } from "./types"; @@ -48,7 +49,7 @@ async function rateLimiter(req: NextRequest) { const ipAddress = req.headers.get("CF-Connecting-IP") || - req.ip || + ipAddress1(req) || req.headers.get("X-Forwarded-For"); if (!ipAddress) { diff --git a/apps/dashboard/src/app/api/lib/getAuthToken.ts b/apps/dashboard/src/app/api/lib/getAuthToken.ts index 24f3174458d..ada1f1fc19f 100644 --- a/apps/dashboard/src/app/api/lib/getAuthToken.ts +++ b/apps/dashboard/src/app/api/lib/getAuthToken.ts @@ -1,8 +1,8 @@ import { COOKIE_ACTIVE_ACCOUNT, COOKIE_PREFIX_TOKEN } from "@/constants/cookie"; -import { cookies } from "next/headers"; +import { cookies, type UnsafeUnwrappedCookies } from "next/headers"; export function getAuthToken() { - const cookiesManager = cookies(); + const cookiesManager = (cookies() as unknown as UnsafeUnwrappedCookies); const activeAccount = cookiesManager.get(COOKIE_ACTIVE_ACCOUNT)?.value; const token = activeAccount ? cookiesManager.get(COOKIE_PREFIX_TOKEN + activeAccount)?.value @@ -12,7 +12,7 @@ export function getAuthToken() { } export function getAuthTokenWalletAddress() { - const cookiesManager = cookies(); + const cookiesManager = (cookies() as unknown as UnsafeUnwrappedCookies); const activeAccount = cookiesManager.get(COOKIE_ACTIVE_ACCOUNT)?.value; if (!activeAccount) { return null; diff --git a/apps/dashboard/src/app/layout.tsx b/apps/dashboard/src/app/layout.tsx index d4c1f9137ba..dde3a9b0ff8 100644 --- a/apps/dashboard/src/app/layout.tsx +++ b/apps/dashboard/src/app/layout.tsx @@ -4,10 +4,10 @@ import { DashboardRouterTopProgressBar } from "@/lib/DashboardRouter"; import { cn } from "@/lib/utils"; import type { Metadata } from "next"; import PlausibleProvider from "next-plausible"; -import dynamic from "next/dynamic"; import { Inter } from "next/font/google"; import NextTopLoader from "nextjs-toploader"; import { UnlimitedWalletsBanner } from "../components/notices/AnnouncementBanner"; +import PostHogPageView from "./components/posthog-pageview"; import { PostHogProvider } from "./components/root-providers"; import { AppRouterProviders } from "./providers"; @@ -45,10 +45,6 @@ export const metadata: Metadata = { }, }; -const PostHogPageView = dynamic(() => import("./components/posthog-pageview"), { - ssr: false, -}); - export default function RootLayout({ children, }: { diff --git a/apps/dashboard/src/app/login/auth-actions.ts b/apps/dashboard/src/app/login/auth-actions.ts index 07626227f0d..d4793802a7b 100644 --- a/apps/dashboard/src/app/login/auth-actions.ts +++ b/apps/dashboard/src/app/login/auth-actions.ts @@ -43,7 +43,7 @@ export async function doLogin(payload: VerifyLoginPayloadParams) { throw new Error("API_SERVER_SECRET is not set"); } - const cookieStore = cookies(); + const cookieStore = await cookies(); // forward the request to the API server const res = await fetch(`${API_SERVER_URL}/v2/siwe/login`, { @@ -121,7 +121,7 @@ export async function doLogin(payload: VerifyLoginPayloadParams) { } export async function doLogout() { - const cookieStore = cookies(); + const cookieStore = await cookies(); // delete all cookies that start with the token prefix const allCookies = cookieStore.getAll(); for (const cookie of allCookies) { @@ -135,7 +135,7 @@ export async function doLogout() { export async function isLoggedIn(address: string) { const cookieName = COOKIE_PREFIX_TOKEN + getAddress(address); - const cookieStore = cookies(); + const cookieStore = await cookies(); // check if we have an access token const token = cookieStore.get(cookieName)?.value; if (!token) { diff --git a/apps/dashboard/src/app/team/[team_slug]/(team)/page.tsx b/apps/dashboard/src/app/team/[team_slug]/(team)/page.tsx index 5c04f4b70d2..bb7b56c3e90 100644 --- a/apps/dashboard/src/app/team/[team_slug]/(team)/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/(team)/page.tsx @@ -2,11 +2,9 @@ import { getProjects } from "@/api/projects"; import { TeamOverviewPage } from "./TeamOverviewPage"; export default async function Page(props: { - params: { team_slug: string }; + params: Promise<{ team_slug: string }>; }) { - const projects = await getProjects(props.params.team_slug); + const projects = await getProjects((await props.params).team_slug); - return ( - - ); + return (); } diff --git a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/billing/page.tsx b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/billing/page.tsx index 6e66af03fa2..68de40cd4bd 100644 --- a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/billing/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/billing/page.tsx @@ -4,11 +4,11 @@ import { notFound } from "next/navigation"; import { SettingsBillingPage } from "./BillingSettingsPage"; export default async function Page(props: { - params: { + params: Promise<{ team_slug: string; - }; + }>; }) { - const team = await getTeamBySlug(props.params.team_slug); + const team = await getTeamBySlug((await props.params).team_slug); if (!team) { notFound(); diff --git a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/layout.tsx index 1df3233f44f..7d22fb821bb 100644 --- a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/layout.tsx @@ -3,12 +3,12 @@ import { notFound } from "next/navigation"; import { SettingsLayout } from "./SettingsLayout"; export default async function Layout(props: { - params: { + params: Promise<{ team_slug: string; - }; + }>; children: React.ReactNode; }) { - const team = await getTeamBySlug(props.params.team_slug); + const team = await getTeamBySlug((await props.params).team_slug); if (!team) { notFound(); diff --git a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/members/page.tsx b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/members/page.tsx index cd8dc450d19..eb8de525787 100644 --- a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/members/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/members/page.tsx @@ -5,14 +5,14 @@ import { getAccount } from "../../../../../../account/settings/getAccount"; import { TeamMembersSettingsPage } from "./TeamMembersSettingsPage"; export default async function Page(props: { - params: { + params: Promise<{ team_slug: string; - }; + }>; }) { const [account, team, members] = await Promise.all([ getAccount(), - getTeamBySlug(props.params.team_slug), - getMembers(props.params.team_slug), + getTeamBySlug((await props.params).team_slug), + getMembers((await props.params).team_slug), ]); if (!team || !account || !members) { diff --git a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/page.tsx b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/page.tsx index 923626aa546..a252a5cb6d1 100644 --- a/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/page.tsx @@ -4,11 +4,11 @@ import { getAuthToken } from "../../../../../api/lib/getAuthToken"; import { TeamGeneralSettingsPage } from "./general/TeamGeneralSettingsPage"; export default async function Page(props: { - params: { + params: Promise<{ team_slug: string; - }; + }>; }) { - const team = await getTeamBySlug(props.params.team_slug); + const team = await getTeamBySlug((await props.params).team_slug); const token = getAuthToken(); if (!team || !token) { notFound(); diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/account-abstraction/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/account-abstraction/page.tsx index 1e83b8e3cd1..fd8889e0122 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/account-abstraction/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/account-abstraction/page.tsx @@ -5,9 +5,9 @@ import { getAPIKeyForProjectId } from "../../../../../api/lib/getAPIKeys"; import { AccountAbstractionPage } from "./AccountAbstractionPage"; export default async function Page(props: { - params: { team_slug: string; project_slug: string }; + params: Promise<{ team_slug: string; project_slug: string }>; }) { - const { team_slug, project_slug } = props.params; + const { team_slug, project_slug } = (await props.params); const project = await getProject(team_slug, project_slug); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/page.tsx index f5b02c8127f..dd5fb836f5e 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/page.tsx @@ -4,14 +4,14 @@ import { notFound } from "next/navigation"; import { ConnectAnalyticsDashboard } from "./ConnectAnalyticsDashboard"; export default async function Page(props: { - params: { + params: Promise<{ team_slug: string; project_slug: string; - }; + }>; }) { const project = await getProject( - props.params.team_slug, - props.params.project_slug, + (await props.params).team_slug, + (await props.params).project_slug, ); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/layout.tsx index 4909a0581e4..f739dac6a4c 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/layout.tsx @@ -1,17 +1,17 @@ import { EcosystemLayoutSlug } from "../../../../../../../(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/EcosystemSlugLayout"; export default async function Layout(props: { - params: { team_slug: string; project_slug: string; slug: string }; + params: Promise<{ team_slug: string; project_slug: string; slug: string }>; children: React.ReactNode; }) { - const { team_slug, project_slug } = props.params; + const { team_slug, project_slug } = (await props.params); return ( - {props.children} - + ) ); } diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/page.tsx index c353c61fb0c..e385b56cd75 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/[slug]/(active)/page.tsx @@ -1,5 +1,6 @@ import { EcosystemPermissionsPage } from "../../../../../../../(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/EcosystemPermissionsPage"; -export default function Page({ params }: { params: { slug: string } }) { +export default async function Page(props: { params: Promise<{ slug: string }> }) { + const params = await props.params; return ; } diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/create/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/create/page.tsx index 6fada436e52..5a354d746b5 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/create/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/ecosystem/create/page.tsx @@ -1,9 +1,11 @@ import { EcosystemCreatePage } from "../../../../../../(dashboard)/dashboard/connect/ecosystem/create/EcosystemCreatePage"; -export default function Page(props: { - params: { team_slug: string; project_slug: string }; -}) { - const { team_slug, project_slug } = props.params; +export default async function Page( + props: { + params: Promise<{ team_slug: string; project_slug: string }>; + } +) { + const { team_slug, project_slug } = (await props.params); return ( ; }) { - const { team_slug, project_slug } = props.params; + const { team_slug, project_slug } = (await props.params); return ( ; }) { const project = await getProject( - props.params.team_slug, - props.params.project_slug, + (await props.params).team_slug, + (await props.params).project_slug, ); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/layout.tsx index b65f1d02535..a0258d7a31c 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/layout.tsx @@ -1,13 +1,15 @@ import { SidebarLayout } from "@/components/blocks/SidebarLayout"; -export default function Layout(props: { - params: { - team_slug: string; - project_slug: string; - }; - children: React.ReactNode; -}) { - const { team_slug, project_slug } = props.params; +export default async function Layout( + props: { + params: Promise<{ + team_slug: string; + project_slug: string; + }>; + children: React.ReactNode; + } +) { + const { team_slug, project_slug } = (await props.params); const links: { label: string; href: string }[] = [ { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/page.tsx index 4dee28158fe..24f619ba0c3 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/page.tsx @@ -1,11 +1,13 @@ import { redirect } from "next/navigation"; -export default function Page(props: { - params: { - team_slug: string; - project_slug: string; - }; -}) { - const { team_slug, project_slug } = props.params; +export default async function Page( + props: { + params: Promise<{ + team_slug: string; + project_slug: string; + }>; + } +) { + const { team_slug, project_slug } = (await props.params); redirect(`/team/${team_slug}/${project_slug}/connect/analytics`); } diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/layout.tsx index 66cdd1eb3e2..067453a3c9d 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/layout.tsx @@ -4,22 +4,22 @@ import Link from "next/link"; import { notFound } from "next/navigation"; export default async function Layout(props: { - params: { + params: Promise<{ team_slug: string; project_slug: string; - }; + }>; children: React.ReactNode; }) { const project = await getProject( - props.params.team_slug, - props.params.project_slug, + (await props.params).team_slug, + (await props.params).project_slug, ); if (!project) { notFound(); } - const payLayoutPath = `/team/${props.params.team_slug}/${props.params.project_slug}/connect/pay`; + const payLayoutPath = `/team/${(await props.params).team_slug}/${(await props.params).project_slug}/connect/pay`; return (
diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/page.tsx index 30097449e2d..b7f81e6fc53 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/page.tsx @@ -3,14 +3,14 @@ import { notFound } from "next/navigation"; import { PayAnalytics } from "../../../../../../components/pay/PayAnalytics/PayAnalytics"; export default async function Page(props: { - params: { + params: Promise<{ team_slug: string; project_slug: string; - }; + }>; }) { const project = await getProject( - props.params.team_slug, - props.params.project_slug, + (await props.params).team_slug, + (await props.params).project_slug, ); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/webhooks/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/webhooks/page.tsx index 6e0f6979fd3..3276fa7ef93 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/webhooks/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/pay/webhooks/page.tsx @@ -3,14 +3,14 @@ import { notFound } from "next/navigation"; import { PayWebhooksPage } from "../../../../../../(dashboard)/dashboard/connect/pay/components/webhooks.client"; export default async function Page(props: { - params: { + params: Promise<{ team_slug: string; project_slug: string; - }; + }>; }) { const project = await getProject( - props.params.team_slug, - props.params.project_slug, + (await props.params).team_slug, + (await props.params).project_slug, ); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/contracts/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/contracts/page.tsx index c305fbeae6c..7ae4ef0ec2b 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/contracts/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/contracts/page.tsx @@ -2,10 +2,12 @@ import { redirect } from "next/navigation"; import { getAuthTokenWalletAddress } from "../../../../api/lib/getAuthToken"; import { DeployedContractsPage } from "./_components/DeployedContractsPage"; -export default function Page(props: { - params: { team_slug: string; project_slug: string }; -}) { - const { team_slug, project_slug } = props.params; +export default async function Page( + props: { + params: Promise<{ team_slug: string; project_slug: string }>; + } +) { + const { team_slug, project_slug } = (await props.params); const accountAddress = getAuthTokenWalletAddress(); if (!accountAddress) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/layout.tsx index 85f17ffeb8c..2927d42b642 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/layout.tsx @@ -1,15 +1,17 @@ import type { SidebarLink } from "@/components/blocks/Sidebar"; import { SidebarLayout } from "@/components/blocks/SidebarLayout"; -export default function Layout(props: { - params: { - team_slug: string; - project_slug: string; - engineId: string; - }; - children: React.ReactNode; -}) { - const linkPrefix = `/team/${props.params.team_slug}/${props.params.project_slug}/engine`; +export default async function Layout( + props: { + params: Promise<{ + team_slug: string; + project_slug: string; + engineId: string; + }>; + children: React.ReactNode; + } +) { + const linkPrefix = `/team/${(await props.params).team_slug}/${(await props.params).project_slug}/engine`; const sidebarLinks: SidebarLink[] = [ { label: "Overview", diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/page.tsx index ef8a7e100f7..70724fd6221 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(general)/page.tsx @@ -1,15 +1,17 @@ import { EngineInstancesList } from "../../../../../../components/engine/engine-list"; -export default function Page(props: { - params: { - team_slug: string; - project_slug: string; - engineId: string; - }; -}) { +export default async function Page( + props: { + params: Promise<{ + team_slug: string; + project_slug: string; + engineId: string; + }>; + } +) { return ( - + () ); } diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/layout.tsx index 22dc106ab32..b89a6d5b5ac 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/layout.tsx @@ -1,21 +1,23 @@ import { EngineSidebarLayout } from "components/engine/EnginePageLayout"; -export default function Layout(props: { - params: { - team_slug: string; - project_slug: string; - engineId: string; - }; - children: React.ReactNode; -}) { +export default async function Layout( + props: { + params: Promise<{ + team_slug: string; + project_slug: string; + engineId: string; + }>; + children: React.ReactNode; + } +) { return ( -
+ (
{props.children} -
+
) ); } diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/page.tsx index 85c78a6421b..76cdfb35d82 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/engine/(instance)/[engineId]/page.tsx @@ -1,15 +1,17 @@ -"use client"; +"use client";; +import { use } from "react"; import { WithEngineInstance } from "components/engine/EnginePageLayout"; import { EngineOverview } from "components/engine/overview/engine-overview"; import type { EngineInstancePageProps } from "./types"; export default function Page(props: EngineInstancePageProps) { + const params = use(props.params); return ( - } - rootPath={`/team/${props.params.team_slug}/${props.params.project_slug}/engine`} - /> + rootPath={`/team/${params.team_slug}/${params.project_slug}/engine`} + />) ); } diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/page.tsx index c820ed22438..eb5e4d26bcc 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/page.tsx @@ -1,11 +1,13 @@ import { redirect } from "next/navigation"; -export default function ProjectOverviewPage(props: { - params: { team_slug: string; project_slug: string }; -}) { +export default async function ProjectOverviewPage( + props: { + params: Promise<{ team_slug: string; project_slug: string }>; + } +) { // TODO: implement overview page for project // redirect to connect for now redirect( - `/team/${props.params.team_slug}/${props.params.project_slug}/connect`, + `/team/${(await props.params).team_slug}/${(await props.params).project_slug}/connect`, ); } diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/account-abstraction/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/account-abstraction/page.tsx index 60df47f5673..2117237750c 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/account-abstraction/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/account-abstraction/page.tsx @@ -5,9 +5,9 @@ import { AccountAbstractionSettingsPage } from "../../../../../../components/sma import { getAPIKeyForProjectId } from "../../../../../api/lib/getAPIKeys"; export default async function Page(props: { - params: { team_slug: string; project_slug: string }; + params: Promise<{ team_slug: string; project_slug: string }>; }) { - const { team_slug, project_slug } = props.params; + const { team_slug, project_slug } = (await props.params); const project = await getProject(team_slug, project_slug); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/in-app-wallets/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/in-app-wallets/page.tsx index 7c63058a78a..c88387f73c3 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/in-app-wallets/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/in-app-wallets/page.tsx @@ -4,9 +4,9 @@ import { InAppWalletSettingsPage } from "../../../../../../components/embedded-w import { getAPIKeyForProjectId } from "../../../../../api/lib/getAPIKeys"; export default async function Page(props: { - params: { team_slug: string; project_slug: string }; + params: Promise<{ team_slug: string; project_slug: string }>; }) { - const { team_slug, project_slug } = props.params; + const { team_slug, project_slug } = (await props.params); const project = await getProject(team_slug, project_slug); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/layout.tsx index e827b7530b0..a5746b18576 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/layout.tsx @@ -1,13 +1,15 @@ import { SidebarLayout } from "@/components/blocks/SidebarLayout"; -export default function Layout(props: { - children: React.ReactNode; - params: { - team_slug: string; - project_slug: string; - }; -}) { - const { project_slug, team_slug } = props.params; +export default async function Layout( + props: { + children: React.ReactNode; + params: Promise<{ + team_slug: string; + project_slug: string; + }>; + } +) { + const { project_slug, team_slug } = (await props.params); const layoutPath = `/team/${team_slug}/${project_slug}/settings`; return ( diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/page.tsx index 5f57a4509d5..970e4c43680 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/page.tsx @@ -4,9 +4,9 @@ import { getAPIKeyForProjectId } from "../../../../api/lib/getAPIKeys"; import { ProjectGeneralSettingsPageForTeams } from "./ProjectGeneralSettingsPageForTeams"; export default async function Page(props: { - params: { team_slug: string; project_slug: string }; + params: Promise<{ team_slug: string; project_slug: string }>; }) { - const { team_slug, project_slug } = props.params; + const { team_slug, project_slug } = (await props.params); const project = await getProject(team_slug, project_slug); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/pay/page.tsx b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/pay/page.tsx index baded5f7913..ca8b98e434f 100644 --- a/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/pay/page.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/[project_slug]/settings/pay/page.tsx @@ -4,12 +4,12 @@ import { PayConfig } from "../../../../../../components/pay/PayConfig"; import { getAPIKeyForProjectId } from "../../../../../api/lib/getAPIKeys"; export default async function Page(props: { - params: { + params: Promise<{ team_slug: string; project_slug: string; - }; + }>; }) { - const { team_slug, project_slug } = props.params; + const { team_slug, project_slug } = (await props.params); const project = await getProject(team_slug, project_slug); if (!project) { diff --git a/apps/dashboard/src/app/team/[team_slug]/layout.tsx b/apps/dashboard/src/app/team/[team_slug]/layout.tsx index f9f13fc7d0f..c6ed8b22dd6 100644 --- a/apps/dashboard/src/app/team/[team_slug]/layout.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/layout.tsx @@ -4,7 +4,7 @@ import { TWAutoConnect } from "../../components/autoconnect"; export default function RootTeamLayout(props: { children: React.ReactNode; - params: { team_slug: string }; + params: Promise<{ team_slug: string }>; }) { return (
diff --git a/apps/dashboard/src/app/team/components/TeamHeader/TeamSelectionUI.tsx b/apps/dashboard/src/app/team/components/TeamHeader/TeamSelectionUI.tsx index b50cbe7cdb3..af994c1e322 100644 --- a/apps/dashboard/src/app/team/components/TeamHeader/TeamSelectionUI.tsx +++ b/apps/dashboard/src/app/team/components/TeamHeader/TeamSelectionUI.tsx @@ -31,7 +31,7 @@ export function TeamSelectionUI(props: { : teams; return ( -
+ (
-
  • { @@ -99,7 +99,7 @@ export function TeamSelectionUI(props: { )} -
  • + ) ); })} @@ -119,7 +119,6 @@ export function TeamSelectionUI(props: {
    - {/* Bottom */} {teamPlan && teamPlan !== "pro" && props.upgradeTeamLink && (
    @@ -133,6 +132,6 @@ export function TeamSelectionUI(props: {
    )} -
    +
    ) ); } diff --git a/apps/dashboard/src/components/buttons/MismatchButton.tsx b/apps/dashboard/src/components/buttons/MismatchButton.tsx index 9ec64f19bc3..5a50d92feff 100644 --- a/apps/dashboard/src/components/buttons/MismatchButton.tsx +++ b/apps/dashboard/src/components/buttons/MismatchButton.tsx @@ -287,7 +287,7 @@ function NoFundsDialogContent(props: { }); return ( -
    + (
    {/* Header */} @@ -311,21 +311,20 @@ function NoFundsDialogContent(props: {
    {props.chain.id === localhost.id ? ( // localhost case - + () ) : chainWithServiceInfoQuery.data.testnet ? ( // faucet case - + () ) : chainWithServiceInfoQuery.data.services.find( (x) => x.enabled && x.service === "pay", ) ? ( // pay case - - Buy Funds - + >Buy Funds + ) ) : // no funds options available null}
    @@ -347,7 +346,7 @@ function NoFundsDialogContent(props: {
    -
    +
    ) ); } diff --git a/apps/dashboard/src/components/configure-networks/Form/NetworkIdInput.tsx b/apps/dashboard/src/components/configure-networks/Form/NetworkIdInput.tsx index 158040e2fb1..6f449cebf0a 100644 --- a/apps/dashboard/src/components/configure-networks/Form/NetworkIdInput.tsx +++ b/apps/dashboard/src/components/configure-networks/Form/NetworkIdInput.tsx @@ -13,7 +13,7 @@ export const NetworkIDInput: React.FC<{ const existingChain = slugToChain.get(slug); return ( - - + ) ); }; diff --git a/apps/dashboard/src/components/contract-components/contract-publish-form/external-links-input.tsx b/apps/dashboard/src/components/contract-components/contract-publish-form/external-links-input.tsx index a102b23ab79..6c0a495961b 100644 --- a/apps/dashboard/src/components/contract-components/contract-publish-form/external-links-input.tsx +++ b/apps/dashboard/src/components/contract-components/contract-publish-form/external-links-input.tsx @@ -21,7 +21,7 @@ export const ExternalLinksInput: React.FC = ({ const form = useFormContext(); return ( - + ( = ({ /> - + ) ); }; diff --git a/apps/dashboard/src/components/contract-components/contract-table-v2/index.tsx b/apps/dashboard/src/components/contract-components/contract-table-v2/index.tsx index fadd2e2bedb..24eaaa5f307 100644 --- a/apps/dashboard/src/components/contract-components/contract-table-v2/index.tsx +++ b/apps/dashboard/src/components/contract-components/contract-table-v2/index.tsx @@ -165,7 +165,7 @@ export const PublishedContractTable: ComponentWithChildren< data: rows, }); return ( - + ( {isFetching && ( {tableInstance.headerGroups.map((headerGroup, headerGroupIndex) => ( // biome-ignore lint/suspicious/noArrayIndexKey: FIXME - + ( {headerGroup.headers.map((column, columnIndex) => ( - + ) ))} @@ -205,7 +205,7 @@ export const PublishedContractTable: ComponentWithChildren< {children} - + ) ); }; diff --git a/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx b/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx index 331f94760e8..bb4229caca6 100644 --- a/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx +++ b/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx @@ -309,13 +309,13 @@ const ContractTable: React.FC = ({ }, [numRowsOnPage, setPageSize]); return ( - + ( {isFetching && } {headerGroups.map((headerGroup, index) => ( // biome-ignore lint/suspicious/noArrayIndexKey: FIXME - + ( {headerGroup.headers.map((column, i) => ( = ({

    ))} -
    +
    ) ))}
    @@ -362,7 +362,7 @@ const ContractTable: React.FC = ({ )} - + ) ); }; diff --git a/apps/dashboard/src/components/engine/overview/create-backend-wallet-button.tsx b/apps/dashboard/src/components/engine/overview/create-backend-wallet-button.tsx index 659991666fc..3cd46c142b9 100644 --- a/apps/dashboard/src/components/engine/overview/create-backend-wallet-button.tsx +++ b/apps/dashboard/src/components/engine/overview/create-backend-wallet-button.tsx @@ -105,118 +105,115 @@ export const CreateBackendWalletButton: React.FC< (walletType === "aws-kms" && isAwsKmsConfigured) || (walletType === "gcp-kms" && isGcpKmsConfigured); - return ( - <> - + return (<> + + + +
    + +
    + + + Create Wallet + + - - - - -
    - - - Create Wallet - - +
    + {/* Wallet type */} + + + -
    - {/* Wallet type */} - + + + {selectedOption?.name} is not yet configured + + + Provide your credentials on the{" "} + + Configuration + {" "} + tab to enable backend wallets stored on{" "} + {selectedOption?.name}. + + ) + ) : ( + // Label + ( - - - - {(walletType === "aws-kms" && !isAwsKmsConfigured) || - (walletType === "gcp-kms" && !isGcpKmsConfigured) ? ( - // Warning if not configured - - - - {selectedOption?.name} is not yet configured - - - Provide your credentials on the{" "} - - Configuration - {" "} - tab to enable backend wallets stored on{" "} - {selectedOption?.name}. - - - ) : ( - // Label - - - - )} -
    + + ) + )}
    +
    - - - - - - -
    -
    - - ); + + + + + + + +
    + ); }; diff --git a/apps/dashboard/src/components/engine/overview/transaction-timeline.tsx b/apps/dashboard/src/components/engine/overview/transaction-timeline.tsx index e43db7acfbc..829949a57ca 100644 --- a/apps/dashboard/src/components/engine/overview/transaction-timeline.tsx +++ b/apps/dashboard/src/components/engine/overview/transaction-timeline.tsx @@ -120,7 +120,7 @@ export const TransactionTimeline = ({ const activeIdx = timeline.findIndex((s) => !!s.isLatest); return ( - + ( } @@ -154,10 +154,10 @@ export const TransactionTimeline = ({ )} - + ) ); })} - + ) ); }; diff --git a/apps/dashboard/src/components/inputs/BasisPointsInput.tsx b/apps/dashboard/src/components/inputs/BasisPointsInput.tsx index 0c8fb108cf4..7f673ef7294 100644 --- a/apps/dashboard/src/components/inputs/BasisPointsInput.tsx +++ b/apps/dashboard/src/components/inputs/BasisPointsInput.tsx @@ -44,7 +44,7 @@ export const BasisPointsInput: React.FC = ({ }, [stringValue]); return ( - + ( setStringValue(e.target.value)} @@ -62,6 +62,6 @@ export const BasisPointsInput: React.FC = ({ maxLength={5} /> % - + ) ); }; diff --git a/apps/dashboard/src/components/landing-pages/card-with-metrics.tsx b/apps/dashboard/src/components/landing-pages/card-with-metrics.tsx index 23b329bb6d8..0322f29508a 100644 --- a/apps/dashboard/src/components/landing-pages/card-with-metrics.tsx +++ b/apps/dashboard/src/components/landing-pages/card-with-metrics.tsx @@ -40,7 +40,7 @@ const CardWithMetric = ({ hoverBackground, }: CardWithMetricsProps) => { return ( - {items.map((item, index) => ( // biome-ignore lint/suspicious/noArrayIndexKey: FIXME - + ( {item.title} @@ -95,12 +95,12 @@ const CardWithMetric = ({ {item.description} - + ) ))} )} - + ) ); }; diff --git a/apps/dashboard/src/components/mission/ReasonWeb3Section.tsx b/apps/dashboard/src/components/mission/ReasonWeb3Section.tsx index 4a02ad7a39f..7cfb9412168 100644 --- a/apps/dashboard/src/components/mission/ReasonWeb3Section.tsx +++ b/apps/dashboard/src/components/mission/ReasonWeb3Section.tsx @@ -63,7 +63,7 @@ const Arrow = () => { const ReasonWeb3Section = () => { return ( - + ( Why web3? @@ -86,7 +86,7 @@ const ReasonWeb3Section = () => { return ( // biome-ignore lint/suspicious/noArrayIndexKey: FIXME - + ( { return
  • {list}
  • ; })} -
    +
    ) ); })} -
    +
    ) ); }; diff --git a/apps/dashboard/src/components/pay/PayAnalytics/components/PayCustomersTable.tsx b/apps/dashboard/src/components/pay/PayAnalytics/components/PayCustomersTable.tsx index 93f1d53f1d9..33fabf7faf6 100644 --- a/apps/dashboard/src/components/pay/PayAnalytics/components/PayCustomersTable.tsx +++ b/apps/dashboard/src/components/pay/PayAnalytics/components/PayCustomersTable.tsx @@ -141,7 +141,7 @@ export function PayCustomersTable(props: { function RenderData(props: { query: ProcessedQuery; loadMore: () => void }) { return ( - + (
    @@ -154,7 +154,7 @@ function RenderData(props: { query: ProcessedQuery; loadMore: () => void }) { <> {new Array(5).fill(0).map((_, i) => ( // biome-ignore lint/suspicious/noArrayIndexKey: ok - + () ))} ) : ( @@ -188,7 +188,7 @@ function RenderData(props: { query: ProcessedQuery; loadMore: () => void }) { )} - + ) ); } diff --git a/apps/dashboard/src/components/pay/PayAnalytics/components/PaymentHistory.tsx b/apps/dashboard/src/components/pay/PayAnalytics/components/PaymentHistory.tsx index e2eda4f4b21..81b66610cf9 100644 --- a/apps/dashboard/src/components/pay/PayAnalytics/components/PaymentHistory.tsx +++ b/apps/dashboard/src/components/pay/PayAnalytics/components/PaymentHistory.tsx @@ -124,7 +124,7 @@ function RenderData(props: { setPage: (page: number) => void; }) { return ( -
    + (
    @@ -150,7 +150,7 @@ function RenderData(props: { ) : ( new Array(pageSize).fill(0).map((_, i) => ( // biome-ignore lint/suspicious/noArrayIndexKey: ok - + () )) ))} @@ -168,7 +168,7 @@ function RenderData(props: { onPageClick={props.setPage} /> )} - + ) ); } diff --git a/apps/dashboard/src/components/pay/PayAnalytics/components/TotalVolumePieChart.tsx b/apps/dashboard/src/components/pay/PayAnalytics/components/TotalVolumePieChart.tsx index da9b7779580..b6f18542ac5 100644 --- a/apps/dashboard/src/components/pay/PayAnalytics/components/TotalVolumePieChart.tsx +++ b/apps/dashboard/src/components/pay/PayAnalytics/components/TotalVolumePieChart.tsx @@ -110,7 +110,7 @@ function RenderData(props: { query: ProcessedQuery }) { : skeletonData; return ( -
    + (
    {/* Left */}
    @@ -131,7 +131,7 @@ function RenderData(props: { query: ProcessedQuery }) { > {volumeData.map((entry, index) => ( // biome-ignore lint/suspicious/noArrayIndexKey: ok - + () ))} @@ -184,7 +184,7 @@ function RenderData(props: { query: ProcessedQuery }) { ))}
    -
    + ) ); } diff --git a/apps/dashboard/src/components/settings/Account/Billing/CouponCard.tsx b/apps/dashboard/src/components/settings/Account/Billing/CouponCard.tsx index 93dcf204875..627ef3a59e8 100644 --- a/apps/dashboard/src/components/settings/Account/Billing/CouponCard.tsx +++ b/apps/dashboard/src/components/settings/Account/Billing/CouponCard.tsx @@ -26,7 +26,9 @@ import { z } from "zod"; const LazyShareFreeWalletsModal = dynamic( () => import("./share-free-wallets-modal.client").then( - (mod) => mod.ShareFreeWalletsModal, + (mod) => ({ + default: mod.ShareFreeWalletsModal + }), ), { ssr: false, diff --git a/apps/dashboard/src/components/smart-wallets/SponsorshipPolicies/index.tsx b/apps/dashboard/src/components/smart-wallets/SponsorshipPolicies/index.tsx index 3a9e52aafde..9b7347ad184 100644 --- a/apps/dashboard/src/components/smart-wallets/SponsorshipPolicies/index.tsx +++ b/apps/dashboard/src/components/smart-wallets/SponsorshipPolicies/index.tsx @@ -169,7 +169,7 @@ export function AccountAbstractionSettingsPage( } return ( - + ( { return ( // biome-ignore lint/suspicious/noArrayIndexKey: FIXME - + ( - + ) ); })}
    {headerGroups.map((headerGroup, index) => ( // biome-ignore lint/suspicious/noArrayIndexKey: FIXME - + ( {headerGroup.headers.map((column, i) => ( // biome-ignore lint/suspicious/noArrayIndexKey: FIXME - + ) ))} - + ) ))} @@ -259,6 +259,6 @@ export const BatchTable: React.FC = ({ - + ) ); }; diff --git a/apps/dashboard/src/pages/api/og/profile.tsx b/apps/dashboard/src/pages/api/og/profile.tsx index 525bb451446..8c74d7f76fd 100644 --- a/apps/dashboard/src/pages/api/og/profile.tsx +++ b/apps/dashboard/src/pages/api/og/profile.tsx @@ -35,7 +35,7 @@ const ibmPlexMono700_ = fetch( const OgBrandIcon: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( fill="white" fillOpacity="0.5" /> - + ) ); const PackageIcon: React.FC = () => ( // biome-ignore lint/a11y/noSvgWithoutTitle: not needed - ( - + ) ); const MAX_LENGTH = 320; diff --git a/apps/dashboard/src/pages/hackathon/consumer-crypto.tsx b/apps/dashboard/src/pages/hackathon/consumer-crypto.tsx index 4a3856f3592..24e722ca756 100644 --- a/apps/dashboard/src/pages/hackathon/consumer-crypto.tsx +++ b/apps/dashboard/src/pages/hackathon/consumer-crypto.tsx @@ -19,7 +19,9 @@ import { PageId } from "page-id"; import { Heading, LinkButton, Text } from "tw-components"; const List = dynamic( - () => import("@chakra-ui/react").then((result) => result.List), + () => import("@chakra-ui/react").then((result) => ({ + default: result.List + })), { ssr: false, }, diff --git a/apps/dashboard/src/pages/hackathon/earn.tsx b/apps/dashboard/src/pages/hackathon/earn.tsx index a3852e05f9f..1a3be66c0b2 100644 --- a/apps/dashboard/src/pages/hackathon/earn.tsx +++ b/apps/dashboard/src/pages/hackathon/earn.tsx @@ -18,7 +18,9 @@ import { PageId } from "page-id"; import { Heading, LinkButton, Text } from "tw-components"; const List = dynamic( - () => import("@chakra-ui/react").then((result) => result.List), + () => import("@chakra-ui/react").then((result) => ({ + default: result.List + })), { ssr: false, }, diff --git a/apps/dashboard/src/tw-components/code-block.tsx b/apps/dashboard/src/tw-components/code-block.tsx index fb6d14dffc3..48de04fe66a 100644 --- a/apps/dashboard/src/tw-components/code-block.tsx +++ b/apps/dashboard/src/tw-components/code-block.tsx @@ -62,7 +62,7 @@ export const CodeBlock: React.FC = ({ } return ( - = ({ > {tokens.map((line, i) => ( // biome-ignore lint/suspicious/noArrayIndexKey: index IS the key here - + ( {line.map((token, key) => ( // biome-ignore lint/suspicious/noArrayIndexKey: index IS the key here - + () ))} - + ) ))} )} - + ) ); }; diff --git a/apps/dashboard/src/tw-components/masked-avatar/index.tsx b/apps/dashboard/src/tw-components/masked-avatar/index.tsx index ba0d6ffd9c4..26ad8e669a7 100644 --- a/apps/dashboard/src/tw-components/masked-avatar/index.tsx +++ b/apps/dashboard/src/tw-components/masked-avatar/index.tsx @@ -17,7 +17,7 @@ export const MaskedAvatar: React.FC = ({ className, }) => { return ( - = ({ loadedData={src} render={(v) => ( // eslint-disable-next-line @next/next/no-img-element - {alt + ({alt) )} - /> + />) ); }; diff --git a/packages/thirdweb/src/react/web/ui/components/QRCode/QRCodeRenderer.tsx b/packages/thirdweb/src/react/web/ui/components/QRCode/QRCodeRenderer.tsx index b97561446d9..0ab76eefc0f 100644 --- a/packages/thirdweb/src/react/web/ui/components/QRCode/QRCodeRenderer.tsx +++ b/packages/thirdweb/src/react/web/ui/components/QRCode/QRCodeRenderer.tsx @@ -1,7 +1,7 @@ "use client"; +import { useSuspenseQuery } from "@tanstack/react-query"; import type React from "react"; -import { type ReactElement, useMemo } from "react"; -import { encode } from "uqr"; +import type { ReactElement } from "react"; type QRCodeRendererProps = { ecl?: "L" | "M" | "Q" | "H"; @@ -25,113 +25,130 @@ function QRCodeRenderer({ }: QRCodeRendererProps) { const logoSize = clearSize; const size = sizeProp - 10 * 2; + const dataQuery = useSuspenseQuery({ + queryKey: [ + "qr-code-dots", + { + ecl, + image, + imageBackground, + logoSize, + size, + uri, + }, + ], + queryFn: async () => { + const uqr = await import("uqr"); + console.log("uqr", uqr); - const dots = useMemo(() => { - const dotsArray: ReactElement[] = []; - const matrix = encode(uri, { ecc: ecl, border: 0 }).data; - const cellSize = size / matrix.length; - const qrList = [ - { x: 0, y: 0 }, - { x: 1, y: 0 }, - { x: 0, y: 1 }, - ]; + const dotsArray: ReactElement[] = []; + const matrix = uqr.encode(uri, { ecc: ecl, border: 0 }).data; + const cellSize = size / matrix.length; + const qrList = [ + { x: 0, y: 0 }, + { x: 1, y: 0 }, + { x: 0, y: 1 }, + ]; - for (const { x, y } of qrList) { - const x1 = (matrix.length - 7) * cellSize * x; - const y1 = (matrix.length - 7) * cellSize * y; - for (let i = 0; i < 3; i++) { + for (const { x, y } of qrList) { + const x1 = (matrix.length - 7) * cellSize * x; + const y1 = (matrix.length - 7) * cellSize * y; + for (let i = 0; i < 3; i++) { + dotsArray.push( + , + ); + } + } + + if (image) { + const x1 = (matrix.length - 7) * cellSize * 1; + const y1 = (matrix.length - 7) * cellSize * 1; dotsArray.push( - , + <> + + +
    + {image} +
    +
    + , ); } - } - - if (image) { - const x1 = (matrix.length - 7) * cellSize * 1; - const y1 = (matrix.length - 7) * cellSize * 1; - dotsArray.push( - <> - - -
    - {image} -
    -
    - , - ); - } - const clearArenaSize = Math.floor((logoSize + 25) / cellSize); - const matrixMiddleStart = matrix.length / 2 - clearArenaSize / 2; - const matrixMiddleEnd = matrix.length / 2 + clearArenaSize / 2 - 1; + const clearArenaSize = Math.floor((logoSize + 25) / cellSize); + const matrixMiddleStart = matrix.length / 2 - clearArenaSize / 2; + const matrixMiddleEnd = matrix.length / 2 + clearArenaSize / 2 - 1; - matrix.forEach((row, i: number) => { - row.forEach((_: boolean, j: number) => { - if (matrix[i]?.[j]) { - // Do not render dots under position squares - if ( - !( - (i < 7 && j < 7) || - (i > matrix.length - 8 && j < 7) || - (i < 7 && j > matrix.length - 8) - ) - ) { - //if (image && i > matrix.length - 9 && j > matrix.length - 9) return; + matrix.forEach((row, i: number) => { + row.forEach((_: boolean, j: number) => { + if (matrix[i]?.[j]) { + // Do not render dots under position squares if ( - image || !( - i > matrixMiddleStart && - i < matrixMiddleEnd && - j > matrixMiddleStart && - j < matrixMiddleEnd + (i < 7 && j < 7) || + (i > matrix.length - 8 && j < 7) || + (i < 7 && j > matrix.length - 8) ) ) { - dotsArray.push( - , - ); + //if (image && i > matrix.length - 9 && j > matrix.length - 9) return; + if ( + image || + !( + i > matrixMiddleStart && + i < matrixMiddleEnd && + j > matrixMiddleStart && + j < matrixMiddleEnd + ) + ) { + dotsArray.push( + , + ); + } } } - } + }); }); - }); - return dotsArray; - }, [ecl, image, imageBackground, logoSize, size, uri]); + return dotsArray; + }, + }); return ( - {dots} + {dataQuery.data} ); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7dcced55d1e..e04407c56b9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -137,7 +137,7 @@ importers: version: 1.1.3(@types/react-dom@18.3.1)(@types/react@18.3.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@sentry/nextjs': specifier: 8.34.0 - version: 8.34.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + version: 8.34.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) '@shazow/whatsabi': specifier: ^0.15.4 version: 0.15.4(@noble/hashes@1.5.0)(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -156,6 +156,9 @@ importers: '@thirdweb-dev/service-utils': specifier: workspace:* version: link:../../packages/service-utils + '@vercel/functions': + specifier: ^1.4.2 + version: 1.4.2(@aws-sdk/credential-provider-web-identity@3.667.0) '@vercel/og': specifier: ^0.6.2 version: 0.6.3 @@ -205,20 +208,20 @@ importers: specifier: 0.452.0 version: 0.452.0(react@18.3.1) next: - specifier: 14.2.15 - version: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 15.0.0 + version: 15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) next-plausible: specifier: ^3.12.0 - version: 3.12.2(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 3.12.2(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) next-seo: specifier: ^6.5.0 - version: 6.6.0(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) next-themes: specifier: ^0.3.0 version: 0.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nextjs-toploader: specifier: ^1.6.12 - version: 1.6.12(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 1.6.12(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) papaparse: specifier: ^5.4.1 version: 5.4.1 @@ -293,7 +296,7 @@ importers: version: 2.5.4 tailwindcss-animate: specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3))) + version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3))) thirdweb: specifier: workspace:* version: link:../../packages/thirdweb @@ -314,11 +317,11 @@ importers: specifier: 2.0.2 version: 2.0.2(react@18.3.1) '@next/bundle-analyzer': - specifier: 14.2.15 - version: 14.2.15(bufferutil@4.0.8)(utf-8-validate@5.0.10) + specifier: 15.0.0 + version: 15.0.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) '@next/eslint-plugin-next': - specifier: 14.2.15 - version: 14.2.15 + specifier: 15.0.0 + version: 15.0.0 '@playwright/test': specifier: 1.47.2 version: 1.47.2 @@ -342,7 +345,7 @@ importers: version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)) '@storybook/nextjs': specifier: 8.3.5 - version: 8.3.5(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(type-fest@4.26.1)(typescript@5.6.3)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + version: 8.3.5(@swc/core@1.7.35)(esbuild@0.23.1)(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(type-fest@4.26.1)(typescript@5.6.3)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) '@storybook/react': specifier: 8.3.5 version: 8.3.5(@storybook/test@8.3.6(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3) @@ -365,10 +368,10 @@ importers: specifier: ^1.5.5 version: 1.5.5 '@types/react': - specifier: ^18.3.11 + specifier: 18.3.11 version: 18.3.11 '@types/react-dom': - specifier: ^18.3.1 + specifier: 18.3.1 version: 18.3.1 '@types/react-table': specifier: ^7.7.20 @@ -390,7 +393,7 @@ importers: version: 10.4.20(postcss@8.4.47) checkly: specifier: ^4.8.1 - version: 4.9.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10) + version: 4.9.0(@swc/core@1.7.35)(@types/node@20.14.9)(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10) eslint: specifier: 8.57.0 version: 8.57.0 @@ -408,7 +411,7 @@ importers: version: 5.33.3(@types/node@20.14.9)(typescript@5.6.3) next-sitemap: specifier: ^4.2.3 - version: 4.2.3(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) + version: 4.2.3(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) postcss: specifier: 8.4.47 version: 8.4.47 @@ -417,7 +420,7 @@ importers: version: 8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10) tailwindcss: specifier: 3.4.13 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)) + version: 3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)) typescript: specifier: 5.6.3 version: 5.6.3 @@ -529,10 +532,10 @@ importers: version: 8.4.47 tailwindcss: specifier: 3.4.13 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)) + version: 3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)) tailwindcss-animate: specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3))) + version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3))) typescript: specifier: 5.6.3 version: 5.6.3 @@ -544,13 +547,13 @@ importers: version: 1.0.1(react@18.3.1) '@mdx-js/loader': specifier: ^2.3.0 - version: 2.3.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))) + version: 2.3.0(webpack@5.95.0) '@mdx-js/react': specifier: ^2.3.0 version: 2.3.0(react@18.3.1) '@next/mdx': specifier: ^13.5.6 - version: 13.5.7(@mdx-js/loader@2.3.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))))(@mdx-js/react@2.3.0(react@18.3.1)) + version: 13.5.7(@mdx-js/loader@2.3.0(webpack@5.95.0))(@mdx-js/react@2.3.0(react@18.3.1)) '@radix-ui/react-dialog': specifier: 1.1.2 version: 1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -631,7 +634,7 @@ importers: version: 2.5.4 tailwindcss-animate: specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3))) + version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3))) thirdweb: specifier: workspace:* version: link:../../packages/thirdweb @@ -689,7 +692,7 @@ importers: version: 1.2.4 eslint-plugin-tailwindcss: specifier: ^3.17.5 - version: 3.17.5(tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3))) + version: 3.17.5(tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3))) next-sitemap: specifier: ^4.2.3 version: 4.2.3(next@14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) @@ -698,7 +701,7 @@ importers: version: 8.4.47 tailwindcss: specifier: 3.4.13 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)) + version: 3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)) tsx: specifier: ^4.19.1 version: 4.19.1 @@ -767,7 +770,7 @@ importers: version: 2.5.4 tailwindcss-animate: specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3))) + version: 1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3))) thirdweb: specifier: workspace:* version: link:../../packages/thirdweb @@ -798,7 +801,7 @@ importers: version: 8.4.47 tailwindcss: specifier: 3.4.13 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)) + version: 3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)) typescript: specifier: 5.6.3 version: 5.6.3 @@ -3897,8 +3900,8 @@ packages: '@types/react': '*' react: '*' - '@next/bundle-analyzer@14.2.15': - resolution: {integrity: sha512-W6iyrp/3G7WbIztDcNt+owYX1iv37m9f4RJs0fa/Ayw4EDdjNPX6qKQrC7gBrESHV3FuchED+8R+CNiw1i78eQ==} + '@next/bundle-analyzer@15.0.0': + resolution: {integrity: sha512-FGkM4yaHe+BadSJvcI5C4hV00i7MSbrc7esqjICxN1tEttDFPzxrXHb5W0DUJGcbnEsei0psdQMvbu4Bz8wS0Q==} '@next/env@13.5.6': resolution: {integrity: sha512-Yac/bV5sBGkkEXmAX5FWPS9Mmo2rthrOPRQQNfycJPkjUAUclomCPH7QFVCDQ4Mp2k2K1SSM6m0zrxYrOwtFQw==} @@ -3906,9 +3909,15 @@ packages: '@next/env@14.2.15': resolution: {integrity: sha512-S1qaj25Wru2dUpcIZMjxeMVSwkt8BK4dmWHHiBuRstcIyOsMapqT4A4jSB6onvqeygkSSmOkyny9VVx8JIGamQ==} + '@next/env@15.0.0': + resolution: {integrity: sha512-Mcv8ZVmEgTO3bePiH/eJ7zHqQEs2gCqZ0UId2RxHmDDc7Pw6ngfSrOFlxG8XDpaex+n2G+TKPsQAf28MO+88Gw==} + '@next/eslint-plugin-next@14.2.15': resolution: {integrity: sha512-pKU0iqKRBlFB/ocOI1Ip2CkKePZpYpnw5bEItEkuZ/Nr9FQP1+p7VDWr4VfOdff4i9bFmrOaeaU1bFEyAcxiMQ==} + '@next/eslint-plugin-next@15.0.0': + resolution: {integrity: sha512-UG/Gnsq6Sc4wRhO9qk+vc/2v4OfRXH7GEH6/TGlNF5eU/vI9PIO7q+kgd65X2DxJ+qIpHWpzWwlPLmqMi1FE9A==} + '@next/mdx@13.5.7': resolution: {integrity: sha512-VXkH/KPdLiwWSyRyUdU2tcNBKBSNEraKwYVTVZfOwlwGCFP1UoceJZYIMd3oV7RsuH4ouo69Ng5KF3GerDvbqg==} peerDependencies: @@ -3926,42 +3935,84 @@ packages: cpu: [arm64] os: [darwin] + '@next/swc-darwin-arm64@15.0.0': + resolution: {integrity: sha512-Gjgs3N7cFa40a9QT9AEHnuGKq69/bvIOn0SLGDV+ordq07QOP4k1GDOVedMHEjVeqy1HBLkL8rXnNTuMZIv79A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + '@next/swc-darwin-x64@14.2.15': resolution: {integrity: sha512-5TGyjFcf8ampZP3e+FyCax5zFVHi+Oe7sZyaKOngsqyaNEpOgkKB3sqmymkZfowy3ufGA/tUgDPPxpQx931lHg==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] + '@next/swc-darwin-x64@15.0.0': + resolution: {integrity: sha512-BUtTvY5u9s5berAuOEydAUlVMjnl6ZjXS+xVrMt317mglYZ2XXjY8YRDCaz9vYMjBNPXH8Gh75Cew5CMdVbWTw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + '@next/swc-linux-arm64-gnu@14.2.15': resolution: {integrity: sha512-3Bwv4oc08ONiQ3FiOLKT72Q+ndEMyLNsc/D3qnLMbtUYTQAmkx9E/JRu0DBpHxNddBmNT5hxz1mYBphJ3mfrrw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@next/swc-linux-arm64-gnu@15.0.0': + resolution: {integrity: sha512-sbCoEpuWUBpYoLSgYrk0CkBv8RFv4ZlPxbwqRHr/BWDBJppTBtF53EvsntlfzQJ9fosYX12xnS6ltxYYwsMBjg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@next/swc-linux-arm64-musl@14.2.15': resolution: {integrity: sha512-k5xf/tg1FBv/M4CMd8S+JL3uV9BnnRmoe7F+GWC3DxkTCD9aewFRH1s5rJ1zkzDa+Do4zyN8qD0N8c84Hu96FQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@next/swc-linux-arm64-musl@15.0.0': + resolution: {integrity: sha512-JAw84qfL81aQCirXKP4VkgmhiDpXJupGjt8ITUkHrOVlBd+3h5kjfPva5M0tH2F9KKSgJQHEo3F5S5tDH9h2ww==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@next/swc-linux-x64-gnu@14.2.15': resolution: {integrity: sha512-kE6q38hbrRbKEkkVn62reLXhThLRh6/TvgSP56GkFNhU22TbIrQDEMrO7j0IcQHcew2wfykq8lZyHFabz0oBrA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@next/swc-linux-x64-gnu@15.0.0': + resolution: {integrity: sha512-r5Smd03PfxrGKMewdRf2RVNA1CU5l2rRlvZLQYZSv7FUsXD5bKEcOZ/6/98aqRwL7diXOwD8TCWJk1NbhATQHg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@next/swc-linux-x64-musl@14.2.15': resolution: {integrity: sha512-PZ5YE9ouy/IdO7QVJeIcyLn/Rc4ml9M2G4y3kCM9MNf1YKvFY4heg3pVa/jQbMro+tP6yc4G2o9LjAz1zxD7tQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@next/swc-linux-x64-musl@15.0.0': + resolution: {integrity: sha512-fM6qocafz4Xjhh79CuoQNeGPhDHGBBUbdVtgNFJOUM8Ih5ZpaDZlTvqvqsh5IoO06CGomxurEGqGz/4eR/FaMQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@next/swc-win32-arm64-msvc@14.2.15': resolution: {integrity: sha512-2raR16703kBvYEQD9HNLyb0/394yfqzmIeyp2nDzcPV4yPjqNUG3ohX6jX00WryXz6s1FXpVhsCo3i+g4RUX+g==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] + '@next/swc-win32-arm64-msvc@15.0.0': + resolution: {integrity: sha512-ZOd7c/Lz1lv7qP/KzR513XEa7QzW5/P0AH3A5eR1+Z/KmDOvMucht0AozccPc0TqhdV1xaXmC0Fdx0hoNzk6ng==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + '@next/swc-win32-ia32-msvc@14.2.15': resolution: {integrity: sha512-fyTE8cklgkyR1p03kJa5zXEaZ9El+kDNM5A+66+8evQS5e/6v0Gk28LqA0Jet8gKSOyP+OTm/tJHzMlGdQerdQ==} engines: {node: '>= 10'} @@ -3974,6 +4025,12 @@ packages: cpu: [x64] os: [win32] + '@next/swc-win32-x64-msvc@15.0.0': + resolution: {integrity: sha512-2RVWcLtsqg4LtaoJ3j7RoKpnWHgcrz5XvuUGE7vBYU2i6M2XeD9Y8RlLaF770LEIScrrl8MdWsp6odtC6sZccg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + '@noble/ciphers@0.5.3': resolution: {integrity: sha512-B0+6IIHiqEs3BPMT0hcRmHvEj2QHOLu+uwt+tqDDeVd0oyVzh7BPrDcPjRnV1PV/5LaknXJJQvOuRGR0zQJz+w==} @@ -6361,6 +6418,9 @@ packages: '@swc/counter@0.1.3': resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} + '@swc/helpers@0.5.13': + resolution: {integrity: sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==} + '@swc/helpers@0.5.5': resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} @@ -6903,6 +6963,15 @@ packages: peerDependencies: graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + '@vercel/functions@1.4.2': + resolution: {integrity: sha512-WLY3g6NT1SVJDAoAqz5pJfJ8uyOmEejZkatZn0q57Dn6qXNrh/pjbeffolQy9npWRYJPcfwjgqw8tUqolTEyuw==} + engines: {node: '>= 16'} + peerDependencies: + '@aws-sdk/credential-provider-web-identity': '*' + peerDependenciesMeta: + '@aws-sdk/credential-provider-web-identity': + optional: true + '@vercel/og@0.6.3': resolution: {integrity: sha512-aoCrC9FqkeA+WEEb9CwSmjD0rGlFeNqbUsI41JPmKWR9Hx6FFn86tvH96O5HZMF6VAXTGHxa3nPH3BokROpdgA==} engines: {node: '>=16'} @@ -9201,6 +9270,10 @@ packages: fast-fifo@1.3.2: resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} + fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} @@ -11658,6 +11731,27 @@ packages: sass: optional: true + next@15.0.0: + resolution: {integrity: sha512-/ivqF6gCShXpKwY9hfrIQYh8YMge8L3W+w1oRLv/POmK4MOQnh+FscZ8a0fRFTSQWE+2z9ctNYvELD9vP2FV+A==} + engines: {node: '>=18.18.0'} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.41.2 + babel-plugin-react-compiler: '*' + react: ^18.2.0 || 19.0.0-rc-65a56d0e-20241020 + react-dom: ^18.2.0 || 19.0.0-rc-65a56d0e-20241020 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + nextjs-toploader@1.6.12: resolution: {integrity: sha512-nbun5lvVjlKnxLQlahzZ55nELVEduqoEXT03KCHnsEYJnFpI/3BaIzpMyq/v8C7UGU2NfxQmjq6ldZ310rsDqA==} peerDependencies: @@ -19122,11 +19216,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@mdx-js/loader@2.3.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5)))': + '@mdx-js/loader@2.3.0(webpack@5.95.0)': dependencies: '@mdx-js/mdx': 2.3.0 source-map: 0.7.4 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5)) + webpack: 5.95.0 transitivePeerDependencies: - supports-color @@ -19267,7 +19361,7 @@ snapshots: '@types/react': 18.3.11 react: 18.3.1 - '@next/bundle-analyzer@14.2.15(bufferutil@4.0.8)(utf-8-validate@5.0.10)': + '@next/bundle-analyzer@15.0.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)': dependencies: webpack-bundle-analyzer: 4.10.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) transitivePeerDependencies: @@ -19278,44 +19372,74 @@ snapshots: '@next/env@14.2.15': {} + '@next/env@15.0.0': {} + '@next/eslint-plugin-next@14.2.15': dependencies: glob: 10.3.10 - '@next/mdx@13.5.7(@mdx-js/loader@2.3.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))))(@mdx-js/react@2.3.0(react@18.3.1))': + '@next/eslint-plugin-next@15.0.0': + dependencies: + fast-glob: 3.3.1 + + '@next/mdx@13.5.7(@mdx-js/loader@2.3.0(webpack@5.95.0))(@mdx-js/react@2.3.0(react@18.3.1))': dependencies: source-map: 0.7.4 optionalDependencies: - '@mdx-js/loader': 2.3.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))) + '@mdx-js/loader': 2.3.0(webpack@5.95.0) '@mdx-js/react': 2.3.0(react@18.3.1) '@next/swc-darwin-arm64@14.2.15': optional: true + '@next/swc-darwin-arm64@15.0.0': + optional: true + '@next/swc-darwin-x64@14.2.15': optional: true + '@next/swc-darwin-x64@15.0.0': + optional: true + '@next/swc-linux-arm64-gnu@14.2.15': optional: true + '@next/swc-linux-arm64-gnu@15.0.0': + optional: true + '@next/swc-linux-arm64-musl@14.2.15': optional: true + '@next/swc-linux-arm64-musl@15.0.0': + optional: true + '@next/swc-linux-x64-gnu@14.2.15': optional: true + '@next/swc-linux-x64-gnu@15.0.0': + optional: true + '@next/swc-linux-x64-musl@14.2.15': optional: true + '@next/swc-linux-x64-musl@15.0.0': + optional: true + '@next/swc-win32-arm64-msvc@14.2.15': optional: true + '@next/swc-win32-arm64-msvc@15.0.0': + optional: true + '@next/swc-win32-ia32-msvc@14.2.15': optional: true '@next/swc-win32-x64-msvc@14.2.15': optional: true + '@next/swc-win32-x64-msvc@15.0.0': + optional: true + '@noble/ciphers@0.5.3': {} '@noble/curves@1.2.0': @@ -19439,7 +19563,7 @@ snapshots: widest-line: 3.1.0 wrap-ansi: 7.0.0 - '@oclif/core@2.8.11(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)': + '@oclif/core@2.8.11(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3)': dependencies: '@types/cli-progress': 3.11.5 ansi-escapes: 4.3.2 @@ -19465,7 +19589,7 @@ snapshots: strip-ansi: 6.0.1 supports-color: 8.1.1 supports-hyperlinks: 2.3.0 - ts-node: 10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3) + ts-node: 10.9.2(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3) tslib: 2.7.0 widest-line: 3.1.0 wordwrap: 1.0.0 @@ -19502,10 +19626,10 @@ snapshots: dependencies: '@oclif/core': 1.26.2 - '@oclif/plugin-not-found@2.3.23(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)': + '@oclif/plugin-not-found@2.3.23(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3)': dependencies: '@oclif/color': 1.0.13 - '@oclif/core': 2.8.11(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3) + '@oclif/core': 2.8.11(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3) fast-levenshtein: 3.0.0 lodash: 4.17.21 transitivePeerDependencies: @@ -19530,9 +19654,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@oclif/plugin-warn-if-update-available@2.0.24(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)': + '@oclif/plugin-warn-if-update-available@2.0.24(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3)': dependencies: - '@oclif/core': 2.8.11(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3) + '@oclif/core': 2.8.11(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3) chalk: 4.1.2 debug: 4.3.7(supports-color@8.1.1) fs-extra: 9.1.0 @@ -19895,7 +20019,7 @@ snapshots: playwright: 1.48.0 optional: true - '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.14.2)(type-fest@4.26.1)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.14.2)(type-fest@4.26.1)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1))': dependencies: ansi-html: 0.0.9 core-js-pure: 3.38.1 @@ -19905,7 +20029,7 @@ snapshots: react-refresh: 0.14.2 schema-utils: 4.2.0 source-map: 0.7.4 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) optionalDependencies: type-fest: 4.26.1 webpack-hot-middleware: 2.26.1 @@ -21387,7 +21511,7 @@ snapshots: '@sentry/types': 8.34.0 '@sentry/utils': 8.34.0 - '@sentry/nextjs@8.34.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1))': + '@sentry/nextjs@8.34.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0))(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1))': dependencies: '@opentelemetry/instrumentation-http': 0.53.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 @@ -21400,14 +21524,14 @@ snapshots: '@sentry/types': 8.34.0 '@sentry/utils': 8.34.0 '@sentry/vercel-edge': 8.34.0 - '@sentry/webpack-plugin': 2.22.3(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + '@sentry/webpack-plugin': 2.22.3(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) chalk: 3.0.0 - next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) resolve: 1.22.8 rollup: 3.29.5 stacktrace-parser: 0.1.10 optionalDependencies: - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) transitivePeerDependencies: - '@opentelemetry/api' - '@opentelemetry/core' @@ -21489,12 +21613,12 @@ snapshots: '@sentry/types': 8.34.0 '@sentry/utils': 8.34.0 - '@sentry/webpack-plugin@2.22.3(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1))': + '@sentry/webpack-plugin@2.22.3(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1))': dependencies: '@sentry/bundler-plugin-core': 2.22.3 unplugin: 1.0.1 uuid: 9.0.1 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) transitivePeerDependencies: - encoding - supports-color @@ -22142,7 +22266,7 @@ snapshots: - supports-color - webpack-sources - '@storybook/builder-webpack5@8.3.5(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3)': + '@storybook/builder-webpack5@8.3.5(@swc/core@1.7.35)(esbuild@0.23.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3)': dependencies: '@storybook/core-webpack': 8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)) '@types/node': 22.7.5 @@ -22151,25 +22275,25 @@ snapshots: case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.4.1 constants-browserify: 1.0.0 - css-loader: 6.11.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + css-loader: 6.11.0(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) es-module-lexer: 1.5.4 express: 4.21.1 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) fs-extra: 11.2.0 - html-webpack-plugin: 5.6.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + html-webpack-plugin: 5.6.0(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) magic-string: 0.30.12 path-browserify: 1.0.1 process: 0.11.10 semver: 7.6.3 storybook: 8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10) - style-loader: 3.3.4(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) - terser-webpack-plugin: 5.3.10(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + style-loader: 3.3.4(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.35)(esbuild@0.23.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) ts-dedent: 2.2.0 url: 0.11.4 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) - webpack-dev-middleware: 6.1.3(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) + webpack-dev-middleware: 6.1.3(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) webpack-hot-middleware: 2.26.1 webpack-virtual-modules: 0.6.2 optionalDependencies: @@ -22252,7 +22376,7 @@ snapshots: dependencies: storybook: 8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10) - '@storybook/nextjs@8.3.5(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(type-fest@4.26.1)(typescript@5.6.3)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1))': + '@storybook/nextjs@8.3.5(@swc/core@1.7.35)(esbuild@0.23.1)(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(type-fest@4.26.1)(typescript@5.6.3)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1))': dependencies: '@babel/core': 7.25.8 '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.25.8) @@ -22267,32 +22391,32 @@ snapshots: '@babel/preset-react': 7.25.7(@babel/core@7.25.8) '@babel/preset-typescript': 7.25.7(@babel/core@7.25.8) '@babel/runtime': 7.25.7 - '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.14.2)(type-fest@4.26.1)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) - '@storybook/builder-webpack5': 8.3.5(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3) - '@storybook/preset-react-webpack': 8.3.5(@storybook/test@8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)))(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.14.2)(type-fest@4.26.1)(webpack-hot-middleware@2.26.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) + '@storybook/builder-webpack5': 8.3.5(@swc/core@1.7.35)(esbuild@0.23.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3) + '@storybook/preset-react-webpack': 8.3.5(@storybook/test@8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)))(@swc/core@1.7.35)(esbuild@0.23.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3) '@storybook/react': 8.3.5(@storybook/test@8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3) '@storybook/test': 8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)) '@types/node': 22.7.5 '@types/semver': 7.5.8 - babel-loader: 9.2.1(@babel/core@7.25.8)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) - css-loader: 6.11.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + babel-loader: 9.2.1(@babel/core@7.25.8)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) + css-loader: 6.11.0(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) find-up: 5.0.0 fs-extra: 11.2.0 image-size: 1.1.1 loader-utils: 3.3.1 - next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - node-polyfill-webpack-plugin: 2.0.1(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + next: 15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + node-polyfill-webpack-plugin: 2.0.1(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) pnp-webpack-plugin: 1.7.0(typescript@5.6.3) postcss: 8.4.47 - postcss-loader: 8.1.1(postcss@8.4.47)(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + postcss-loader: 8.1.1(postcss@8.4.47)(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-refresh: 0.14.2 resolve-url-loader: 5.0.0 - sass-loader: 13.3.3(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + sass-loader: 13.3.3(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) semver: 7.6.3 storybook: 8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10) - style-loader: 3.3.4(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + style-loader: 3.3.4(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) styled-jsx: 5.1.6(@babel/core@7.25.8)(react@18.3.1) ts-dedent: 2.2.0 tsconfig-paths: 4.2.0 @@ -22300,7 +22424,7 @@ snapshots: optionalDependencies: sharp: 0.33.5 typescript: 5.6.3 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) transitivePeerDependencies: - '@rspack/core' - '@swc/core' @@ -22320,11 +22444,11 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/preset-react-webpack@8.3.5(@storybook/test@8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)))(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3)': + '@storybook/preset-react-webpack@8.3.5(@storybook/test@8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)))(@swc/core@1.7.35)(esbuild@0.23.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3)': dependencies: '@storybook/core-webpack': 8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)) '@storybook/react': 8.3.5(@storybook/test@8.3.5(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10))(typescript@5.6.3) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) '@types/node': 22.7.5 '@types/semver': 7.5.8 find-up: 5.0.0 @@ -22337,7 +22461,7 @@ snapshots: semver: 7.6.3 storybook: 8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10) tsconfig-paths: 4.2.0 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) optionalDependencies: typescript: 5.6.3 transitivePeerDependencies: @@ -22352,7 +22476,7 @@ snapshots: dependencies: storybook: 8.3.5(bufferutil@4.0.8)(utf-8-validate@5.0.10) - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1))': dependencies: debug: 4.3.7(supports-color@8.1.1) endent: 2.1.0 @@ -22362,7 +22486,7 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.6.3) tslib: 2.7.0 typescript: 5.6.3 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) transitivePeerDependencies: - supports-color @@ -22855,7 +22979,7 @@ snapshots: '@swc/core-win32-x64-msvc@1.7.35': optional: true - '@swc/core@1.7.35(@swc/helpers@0.5.5)': + '@swc/core@1.7.35': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.13 @@ -22870,11 +22994,14 @@ snapshots: '@swc/core-win32-arm64-msvc': 1.7.35 '@swc/core-win32-ia32-msvc': 1.7.35 '@swc/core-win32-x64-msvc': 1.7.35 - '@swc/helpers': 0.5.5 optional: true '@swc/counter@0.1.3': {} + '@swc/helpers@0.5.13': + dependencies: + tslib: 2.7.0 + '@swc/helpers@0.5.5': dependencies: '@swc/counter': 0.1.3 @@ -23497,6 +23624,10 @@ snapshots: graphql: 15.8.0 wonka: 4.0.15 + '@vercel/functions@1.4.2(@aws-sdk/credential-provider-web-identity@3.667.0)': + optionalDependencies: + '@aws-sdk/credential-provider-web-identity': 3.667.0(@aws-sdk/client-sts@3.670.0) + '@vercel/og@0.6.3': dependencies: '@resvg/resvg-wasm': 2.4.0 @@ -24425,12 +24556,12 @@ snapshots: dependencies: '@babel/core': 7.25.8 - babel-loader@9.2.1(@babel/core@7.25.8)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + babel-loader@9.2.1(@babel/core@7.25.8)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: '@babel/core': 7.25.8 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) babel-plugin-macros@3.1.0: dependencies: @@ -24856,13 +24987,13 @@ snapshots: check-error@2.1.1: {} - checkly@4.9.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10): + checkly@4.9.0(@swc/core@1.7.35)(@types/node@20.14.9)(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10): dependencies: - '@oclif/core': 2.8.11(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3) + '@oclif/core': 2.8.11(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3) '@oclif/plugin-help': 5.1.20 - '@oclif/plugin-not-found': 2.3.23(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3) + '@oclif/plugin-not-found': 2.3.23(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3) '@oclif/plugin-plugins': 5.4.4 - '@oclif/plugin-warn-if-update-available': 2.0.24(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3) + '@oclif/plugin-warn-if-update-available': 2.0.24(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3) '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3) acorn: 8.8.1 acorn-walk: 8.2.0 @@ -25340,7 +25471,7 @@ snapshots: css-color-keywords@1.0.0: {} - css-loader@6.11.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + css-loader@6.11.0(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: icss-utils: 5.1.0(postcss@8.4.47) postcss: 8.4.47 @@ -25351,7 +25482,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) css-select@4.3.0: dependencies: @@ -26243,11 +26374,11 @@ snapshots: eslint-plugin-svg-jsx@1.2.4: {} - eslint-plugin-tailwindcss@3.17.5(tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3))): + eslint-plugin-tailwindcss@3.17.5(tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3))): dependencies: fast-glob: 3.3.2 postcss: 8.4.47 - tailwindcss: 3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)) + tailwindcss: 3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)) eslint-scope@5.1.1: dependencies: @@ -26651,6 +26782,14 @@ snapshots: fast-fifo@1.3.2: {} + fast-glob@3.3.1: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + fast-glob@3.3.2: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -26869,7 +27008,7 @@ snapshots: cross-spawn: 7.0.3 signal-exit: 4.1.0 - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: '@babel/code-frame': 7.25.7 chalk: 4.1.2 @@ -26884,7 +27023,7 @@ snapshots: semver: 7.6.3 tapable: 2.2.1 typescript: 5.6.3 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) form-data-encoder@2.1.4: {} @@ -27412,7 +27551,7 @@ snapshots: html-void-elements@3.0.0: {} - html-webpack-plugin@5.6.0(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + html-webpack-plugin@5.6.0(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -27420,7 +27559,7 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) htmlparser2@3.10.1: dependencies: @@ -29826,66 +29965,39 @@ snapshots: netmask@2.0.2: {} - next-plausible@3.12.2(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next-plausible@3.12.2(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - next-seo@6.6.0(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next-seo@6.6.0(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - next-sitemap@4.2.3(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): + next-sitemap@4.2.3(next@14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): dependencies: '@corex/deepmerge': 4.0.43 '@next/env': 13.5.6 fast-glob: 3.3.2 minimist: 1.2.8 - next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - next-sitemap@4.2.3(next@14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): + next-sitemap@4.2.3(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): dependencies: '@corex/deepmerge': 4.0.43 '@next/env': 13.5.6 fast-glob: 3.3.2 minimist: 1.2.8 - next: 14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) next-themes@0.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - '@next/env': 14.2.15 - '@swc/helpers': 0.5.5 - busboy: 1.6.0 - caniuse-lite: 1.0.30001668 - graceful-fs: 4.2.11 - postcss: 8.4.31 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - styled-jsx: 5.1.1(@babel/core@7.25.8)(react@18.3.1) - optionalDependencies: - '@next/swc-darwin-arm64': 14.2.15 - '@next/swc-darwin-x64': 14.2.15 - '@next/swc-linux-arm64-gnu': 14.2.15 - '@next/swc-linux-arm64-musl': 14.2.15 - '@next/swc-linux-x64-gnu': 14.2.15 - '@next/swc-linux-x64-musl': 14.2.15 - '@next/swc-win32-arm64-msvc': 14.2.15 - '@next/swc-win32-ia32-msvc': 14.2.15 - '@next/swc-win32-x64-msvc': 14.2.15 - '@opentelemetry/api': 1.9.0 - '@playwright/test': 1.47.2 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@next/env': 14.2.15 @@ -29913,44 +30025,44 @@ snapshots: - '@babel/core' - babel-plugin-macros - next@14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@next/env': 14.2.15 - '@swc/helpers': 0.5.5 + '@next/env': 15.0.0 + '@swc/counter': 0.1.3 + '@swc/helpers': 0.5.13 busboy: 1.6.0 caniuse-lite: 1.0.30001668 - graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - styled-jsx: 5.1.1(@babel/core@7.25.8)(react@18.3.1) + styled-jsx: 5.1.6(@babel/core@7.25.8)(react@18.3.1) optionalDependencies: - '@next/swc-darwin-arm64': 14.2.15 - '@next/swc-darwin-x64': 14.2.15 - '@next/swc-linux-arm64-gnu': 14.2.15 - '@next/swc-linux-arm64-musl': 14.2.15 - '@next/swc-linux-x64-gnu': 14.2.15 - '@next/swc-linux-x64-musl': 14.2.15 - '@next/swc-win32-arm64-msvc': 14.2.15 - '@next/swc-win32-ia32-msvc': 14.2.15 - '@next/swc-win32-x64-msvc': 14.2.15 + '@next/swc-darwin-arm64': 15.0.0 + '@next/swc-darwin-x64': 15.0.0 + '@next/swc-linux-arm64-gnu': 15.0.0 + '@next/swc-linux-arm64-musl': 15.0.0 + '@next/swc-linux-x64-gnu': 15.0.0 + '@next/swc-linux-x64-musl': 15.0.0 + '@next/swc-win32-arm64-msvc': 15.0.0 + '@next/swc-win32-x64-msvc': 15.0.0 '@opentelemetry/api': 1.9.0 - '@playwright/test': 1.48.0 + '@playwright/test': 1.47.2 + sharp: 0.33.5 transitivePeerDependencies: - '@babel/core' - babel-plugin-macros - nextjs-toploader@1.6.12(next@14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + nextjs-toploader@1.6.12(next@14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 14.2.15(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nprogress: 0.2.0 prop-types: 15.8.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - nextjs-toploader@1.6.12(next@14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + nextjs-toploader@1.6.12(next@15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - next: 14.2.15(@opentelemetry/api@1.9.0)(@playwright/test@1.48.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 15.0.0(@babel/core@7.25.8)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nprogress: 0.2.0 prop-types: 15.8.1 react: 18.3.1 @@ -30002,7 +30114,7 @@ snapshots: node-int64@0.4.0: {} - node-polyfill-webpack-plugin@2.0.1(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + node-polyfill-webpack-plugin@2.0.1(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -30029,7 +30141,7 @@ snapshots: url: 0.11.4 util: 0.12.5 vm-browserify: 1.1.2 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) node-releases@2.0.18: {} @@ -30628,22 +30740,22 @@ snapshots: camelcase-css: 2.0.1 postcss: 8.4.47 - postcss-load-config@4.0.2(postcss@8.4.47)(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)): + postcss-load-config@4.0.2(postcss@8.4.47)(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)): dependencies: lilconfig: 3.1.2 yaml: 2.5.1 optionalDependencies: postcss: 8.4.47 - ts-node: 10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3) + ts-node: 10.9.2(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3) - postcss-loader@8.1.1(postcss@8.4.47)(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + postcss-loader@8.1.1(postcss@8.4.47)(typescript@5.6.3)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: cosmiconfig: 9.0.0(typescript@5.6.3) jiti: 1.21.6 postcss: 8.4.47 semver: 7.6.3 optionalDependencies: - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) transitivePeerDependencies: - typescript @@ -31925,10 +32037,10 @@ snapshots: safer-buffer@2.1.2: {} - sass-loader@13.3.3(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + sass-loader@13.3.3(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: neo-async: 2.6.2 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) satori@0.10.9: dependencies: @@ -32458,9 +32570,9 @@ snapshots: structured-headers@0.4.1: {} - style-loader@3.3.4(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + style-loader@3.3.4(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) style-to-object@0.4.4: dependencies: @@ -32609,11 +32721,11 @@ snapshots: tailwind-merge@2.5.4: {} - tailwindcss-animate@1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3))): + tailwindcss-animate@1.0.7(tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3))): dependencies: - tailwindcss: 3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)) + tailwindcss: 3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)) - tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)): + tailwindcss@3.4.13(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -32632,7 +32744,7 @@ snapshots: postcss: 8.4.47 postcss-import: 15.1.0(postcss@8.4.47) postcss-js: 4.0.1(postcss@8.4.47) - postcss-load-config: 4.0.2(postcss@8.4.47)(ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3)) + postcss-load-config: 4.0.2(postcss@8.4.47)(ts-node@10.9.2(@types/node@20.14.9)(typescript@5.6.3)) postcss-nested: 6.2.0(postcss@8.4.47) postcss-selector-parser: 6.1.2 resolve: 1.22.8 @@ -32723,29 +32835,18 @@ snapshots: ansi-escapes: 4.3.2 supports-hyperlinks: 2.3.0 - terser-webpack-plugin@5.3.10(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + terser-webpack-plugin@5.3.10(@swc/core@1.7.35)(esbuild@0.23.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.34.1 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) optionalDependencies: - '@swc/core': 1.7.35(@swc/helpers@0.5.5) + '@swc/core': 1.7.35 esbuild: 0.23.1 - terser-webpack-plugin@5.3.10(@swc/core@1.7.35(@swc/helpers@0.5.5))(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))): - dependencies: - '@jridgewell/trace-mapping': 0.3.25 - jest-worker: 27.5.1 - schema-utils: 3.3.0 - serialize-javascript: 6.0.2 - terser: 5.34.1 - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5)) - optionalDependencies: - '@swc/core': 1.7.35(@swc/helpers@0.5.5) - terser-webpack-plugin@5.3.10(webpack@5.95.0): dependencies: '@jridgewell/trace-mapping': 0.3.25 @@ -32899,7 +33000,7 @@ snapshots: ts-mixer@6.0.4: {} - ts-node@10.9.2(@swc/core@1.7.35(@swc/helpers@0.5.5))(@types/node@20.14.9)(typescript@5.6.3): + ts-node@10.9.2(@swc/core@1.7.35)(@types/node@20.14.9)(typescript@5.6.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -32917,7 +33018,7 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: - '@swc/core': 1.7.35(@swc/helpers@0.5.5) + '@swc/core': 1.7.35 ts-pnp@1.2.0(typescript@5.6.3): optionalDependencies: @@ -33743,7 +33844,7 @@ snapshots: - bufferutil - utf-8-validate - webpack-dev-middleware@6.1.3(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)): + webpack-dev-middleware@6.1.3(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -33751,7 +33852,7 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1) + webpack: 5.95.0(@swc/core@1.7.35)(esbuild@0.23.1) webpack-hot-middleware@2.26.1: dependencies: @@ -33795,37 +33896,7 @@ snapshots: - esbuild - uglify-js - webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5)): - dependencies: - '@types/estree': 1.0.6 - '@webassemblyjs/ast': 1.12.1 - '@webassemblyjs/wasm-edit': 1.12.1 - '@webassemblyjs/wasm-parser': 1.12.1 - acorn: 8.12.1 - acorn-import-attributes: 1.9.5(acorn@8.12.1) - browserslist: 4.24.0 - chrome-trace-event: 1.0.4 - enhanced-resolve: 5.17.1 - es-module-lexer: 1.5.4 - eslint-scope: 5.1.1 - events: 3.3.0 - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - json-parse-even-better-errors: 2.3.1 - loader-runner: 4.3.0 - mime-types: 2.1.35 - neo-async: 2.6.2 - schema-utils: 3.3.0 - tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.35(@swc/helpers@0.5.5))(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))) - watchpack: 2.4.2 - webpack-sources: 3.2.3 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1): + webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1): dependencies: '@types/estree': 1.0.6 '@webassemblyjs/ast': 1.12.1 @@ -33847,7 +33918,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)(webpack@5.95.0(@swc/core@1.7.35(@swc/helpers@0.5.5))(esbuild@0.23.1)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.35)(esbuild@0.23.1)(webpack@5.95.0(@swc/core@1.7.35)(esbuild@0.23.1)) watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies:
    + ( {column.render("Header")} -