[Ecosystem Portal] Fix: WalletConnect Connection (#5438)

CNCT-2258

<!-- start pr-codex -->

---

## PR-Codex overview
This PR focuses on enhancing the `wallet-ui` application, introducing multi-tenancy support, updating configurations, and improving code quality with better imports and utility functions.

### Detailed summary
- Removed unused files: `erc20.ts`, `Erc20Token.ts`
- Added `isMultiTenant` utility for environment checks
- Updated `README.md` for ecosystem portal
- Enhanced routing with ecosystem ID in redirects
- Introduced new configuration files for `knip` and `biome`
- Updated ESLint rules and configurations
- Refactored image handling to use a new `Image` component
- Streamlined various imports across components and hooks

> The following files were skipped due to too many changes: `pnpm-lock.yaml`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
This commit is contained in:
gregfromstl
2024-11-18 19:16:57 +00:00
parent 565dbb9ef3
commit 8e22cf8812
32 changed files with 400 additions and 327 deletions
+6
View File
@@ -8,6 +8,12 @@ playground:
packages:
- changed-files:
- any-glob-to-any-file: "packages/**/*"
sdk:
- changed-files:
- any-glob-to-any-file: "packages/thirdweb/**/*"
portal:
- changed-files:
- any-glob-to-any-file: "apps/portal/**/*"
"Ecosystem Portal":
- changed-files:
- any-glob-to-any-file: "apps/wallet-ui/**/*"
+3 -1
View File
@@ -1,5 +1,7 @@
# Root domain for the app
NEXT_PUBLIC_ROOT_DOMAIN=ecosystem.localhost:3000
NEXT_PUBLIC_ROOT_DOMAIN=localhost:3000
# If set to production, multi-tenant subdomains will be used
NEXT_PUBLIC_ENVIRONMENT=development
# Thirdweb client ID
NEXT_PUBLIC_THIRDWEB_CLIENT_ID=
# Thirdweb API key
+71
View File
@@ -0,0 +1,71 @@
module.exports = {
extends: [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@next/next/recommended",
],
rules: {
"react-compiler/react-compiler": "error",
"no-restricted-syntax": [
"error",
{
selector: "CallExpression[callee.name='useEffect']",
message:
'Are you *sure* you need to use "useEffect" here? If you loading any async function prefer using "useQuery".',
},
{
selector: "CallExpression[callee.name='createContext']",
message:
'Are you *sure* you need to use a "Context"? In almost all cases you should prefer passing props directly.',
},
],
"no-restricted-imports": [
"error",
{
paths: [
{
name: "next/navigation",
importNames: ["useRouter"],
message:
'Use `import { useRouter } from "@/lib/useRouter";` instead',
},
],
},
],
},
parser: "@typescript-eslint/parser",
plugins: ["@typescript-eslint", "react-compiler"],
parserOptions: {
ecmaVersion: 2019,
ecmaFeatures: {
impliedStrict: true,
jsx: true,
},
warnOnUnsupportedTypeScriptVersion: true,
},
settings: {
react: {
createClass: "createReactClass",
pragma: "React",
version: "detect",
},
},
overrides: [
// enable rule specifically for TypeScript files
{
files: ["*.ts", "*.tsx"],
rules: {
"@typescript-eslint/explicit-module-boundary-types": ["off"],
},
},
// THIS NEEDS TO GO LAST!
{
files: ["*.ts", "*.js", "*.tsx", "*.jsx"],
extends: ["biome"],
},
],
env: {
browser: true,
node: true,
},
};
+1 -1
View File
@@ -1 +1 @@
# thirdweb Wallet UI
# thirdweb Ecosystem Portal
+16
View File
@@ -0,0 +1,16 @@
{
"$schema": "https://biomejs.dev/schemas/1.9.2/schema.json",
"extends": ["../../biome.json"],
"overrides": [
{
"include": ["src/css/swagger-ui.css"],
"linter": {
"rules": {
"suspicious": {
"noImportantInKeyframe": "off"
}
}
}
}
]
}
+8
View File
@@ -0,0 +1,8 @@
{
"$schema": "https://unpkg.com/knip@latest/schema.json",
"next": true,
"ignore": ["src/components/ui/**"],
"ignoreBinaries": ["biome"],
"ignoreDependencies": ["thirdweb"],
"project": ["src/**"]
}
+10 -4
View File
@@ -6,8 +6,8 @@
"dev": "next dev --turbopack",
"build": "next build",
"start": "next start",
"lint": "biome check ./src",
"fix": "biome check ./src --fix"
"lint": "biome check ./src && knip && eslint ./src",
"fix": "biome check ./src --fix && knip --fix --allow-remove-files && eslint ./src --fix"
},
"dependencies": {
"@hookform/resolvers": "^3.9.1",
@@ -16,7 +16,6 @@
"@radix-ui/react-label": "^2.1.0",
"@radix-ui/react-popover": "^1.1.2",
"@radix-ui/react-slot": "^1.1.0",
"@radix-ui/react-toast": "^1.2.2",
"@tanstack/react-query": "5.60.2",
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
@@ -27,6 +26,7 @@
"react": "19.0.0-rc-69d4b800-20241021",
"react-dom": "19.0.0-rc-69d4b800-20241021",
"react-hook-form": "7.52.0",
"server-only": "^0.0.1",
"sonner": "^1.7.0",
"tailwind-merge": "^2.5.4",
"tailwindcss-animate": "^1.0.7",
@@ -35,12 +35,18 @@
"zod": "3.23.8"
},
"devDependencies": {
"@next/eslint-plugin-next": "15.0.3",
"@types/node": "20.14.9",
"@types/react": "npm:[email protected]",
"@types/react-dom": "npm:[email protected]",
"@typescript-eslint/eslint-plugin": "7.14.1",
"@typescript-eslint/parser": "7.14.1",
"eslint": "8.57.0",
"eslint-config-next": "15.0.3",
"eslint-config-biome": "1.9.3",
"eslint-plugin-react-compiler": "19.0.0-beta-a7bf2bd-20241110",
"knip": "5.37.0",
"postcss": "8.4.49",
"postcss-load-config": "^6.0.1",
"tailwindcss": "3.4.15",
"typescript": "5.6.3"
}
+1 -1
View File
@@ -5,4 +5,4 @@ const config = {
},
};
export default config;
export default config;
@@ -1,4 +1,5 @@
import ConnectButton from "@/components/ConnectButton";
import { Image } from "@/components/ui/image";
import { authedOnly } from "@/lib/auth";
import { getEcosystemInfo } from "@/lib/ecosystems";
import { resolveScheme } from "thirdweb/storage";
@@ -12,14 +13,14 @@ export default async function Layout(props: {
const { children } = props;
await authedOnly();
await authedOnly(params.ecosystem);
const ecosystem = await getEcosystemInfo(params.ecosystem);
return (
<div className="flex w-full flex-col items-stretch">
<header className="hidden w-full border-accent border-b bg-card py-4 sm:block">
<div className="container mx-auto flex justify-between">
<div className="flex items-center gap-2">
<img
<Image
className="h-8 w-8"
src={resolveScheme({ uri: ecosystem.imageUrl, client })}
alt={ecosystem.name}
@@ -6,12 +6,12 @@ export default async function Page(props: {
params: Promise<{ address: string }>;
searchParams: Promise<{ chainId?: string; uri?: string }>;
}) {
const searchParams = await props.searchParams;
const [searchParams, params] = await Promise.all([
props.searchParams,
props.params,
]);
const { chainId, uri } = searchParams;
const params = await props.params;
const { address } = params;
return (
@@ -1,12 +1,15 @@
import { redirect } from "next/navigation";
import { getCurrentUser } from "../../../lib/auth";
import { getCurrentUser } from "@/lib/auth";
import { redirect } from "@/lib/redirect";
export default async function Layout({
children,
}: { children: React.ReactNode }) {
params,
}: { children: React.ReactNode; params: Promise<{ ecosystem: string }> }) {
const { ecosystem } = await params;
const userAddress = await getCurrentUser();
if (userAddress) {
redirect(`/wallet/${userAddress}`);
redirect(`/wallet/${userAddress}`, ecosystem);
}
return (
+7 -4
View File
@@ -1,10 +1,13 @@
import { getCurrentUser } from "@/lib/auth";
import { redirect } from "next/navigation";
import { redirect } from "@/lib/redirect";
export default async function Page() {
export default async function Page({
params,
}: { params: Promise<{ ecosystem: string }> }) {
const { ecosystem } = await params;
const user = await getCurrentUser();
if (user) {
redirect("/wallet/${user}");
redirect(`/wallet/${user}`, ecosystem);
}
redirect("/login");
redirect("/login", ecosystem);
}
+11 -5
View File
@@ -1,19 +1,25 @@
// This page is to accept a Wallet Connect request
import { getCurrentUser } from "@/lib/auth";
import { redirect } from "next/navigation";
import { redirect } from "@/lib/redirect";
export default async function Page(props: {
params: Promise<{ ecosystem: string }>;
searchParams: Promise<{ uri: string }>;
}) {
const searchParams = await props.searchParams;
const [params, searchParams] = await Promise.all([
props.params,
props.searchParams,
]);
const { uri } = searchParams;
const currentUser = await getCurrentUser();
if (!currentUser) {
redirect(`/login?uri=${encodeURIComponent(uri)}`);
redirect(`/login?uri=${encodeURIComponent(uri)}`, params.ecosystem);
}
redirect(`/wallet/${currentUser}?uri=${encodeURIComponent(uri)}`);
redirect(
`/wallet/${currentUser}?uri=${encodeURIComponent(uri)}`,
params.ecosystem,
);
}
+1 -1
View File
@@ -1,7 +1,7 @@
import Providers from "@/components/Providers";
import { cn } from "@/lib/utils";
import { Inter } from "next/font/google";
import "./globals.css";
import { cn } from "../lib/utils";
const inter = Inter({ subsets: ["latin"] });
+2
View File
@@ -1,3 +1,5 @@
/* eslint-disable @next/next/no-img-element */
export default function NotFound() {
return (
<div className="flex h-screen w-screen items-center justify-center">
@@ -14,9 +14,10 @@ import {
PopoverContent,
PopoverTrigger,
} from "@/components/ui/popover";
import { useRouter } from "@/hooks/useRouter";
import { cn } from "@/lib/utils";
import { ChevronsUpDown } from "lucide-react";
import { usePathname, useRouter, useSearchParams } from "next/navigation";
import { useParams, usePathname, useSearchParams } from "next/navigation";
import React from "react";
import type { ChainMetadata } from "thirdweb/chains";
import { ChainIcon } from "./ChainIcon";
@@ -24,6 +25,7 @@ import { ChainIcon } from "./ChainIcon";
export function ChainCombobox({ chains }: { chains: ChainMetadata[] }) {
const router = useRouter();
const pathname = usePathname();
const params = useParams();
const searchParams = useSearchParams();
const [open, setOpen] = React.useState(false);
const [value, setValue] = React.useState(searchParams.get("chainId") ?? "0");
@@ -43,7 +45,7 @@ export function ChainCombobox({ chains }: { chains: ChainMetadata[] }) {
const search = current.toString();
const query = search ? `?${search}` : "";
router.push(`${pathname}${query}`);
router.push(`${pathname}${query}`, params.ecosystem as string);
};
return (
+3 -2
View File
@@ -1,7 +1,8 @@
"use client";
import { Image } from "@/components/ui/image";
import { client } from "@/lib/client";
import { useQuery } from "@tanstack/react-query";
import { resolveScheme } from "thirdweb/storage";
import { client } from "../lib/client";
const fallbackChainIcon =
"data:image/svg+xml;charset=UTF-8,%3csvg width='15' height='14' viewBox='0 0 15 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M7 8.04238e-07C5.1435 8.04238e-07 3.36301 0.737501 2.05025 2.05025C0.7375 3.36301 0 5.1435 0 7C0 7.225 -1.52737e-07 7.445 0.0349998 7.665C0.16385 9.0151 0.68213 10.2988 1.52686 11.3598C2.37158 12.4209 3.50637 13.2137 4.79326 13.642C6.0801 14.0702 7.4637 14.1153 8.7758 13.7719C10.0879 13.4285 11.2719 12.7113 12.184 11.7075C13.0961 10.7038 13.6969 9.4567 13.9135 8.1178C14.1301 6.7789 13.9531 5.406 13.4039 4.16587C12.8548 2.92574 11.9573 1.87184 10.8204 1.13228C9.6835 0.392721 8.3563 -0.000649196 7 8.04238e-07ZM7 1C8.581 1.00137 10.0975 1.62668 11.22 2.74V3.24C9.2438 2.55991 7.0956 2.56872 5.125 3.265C4.96758 3.1116 4.76997 3.00586 4.555 2.96H4.43C4.37 2.75 4.315 2.54 4.27 2.325C4.225 2.11 4.2 1.92 4.175 1.715C5.043 1.24658 6.0137 1.00091 7 1ZM5.5 3.935C7.3158 3.32693 9.2838 3.34984 11.085 4C10.8414 5.2703 10.3094 6.4677 9.53 7.5C9.312 7.4077 9.0707 7.3855 8.8395 7.4366C8.6083 7.4877 8.3988 7.6094 8.24 7.785C8.065 7.685 7.89 7.585 7.74 7.47C6.7307 6.7966 5.8877 5.9023 5.275 4.855C5.374 4.73221 5.4461 4.58996 5.4866 4.43749C5.5271 4.28502 5.5351 4.12575 5.51 3.97L5.5 3.935ZM3.5 2.135C3.5 2.24 3.53 2.35 3.55 2.455C3.595 2.675 3.655 2.89 3.715 3.105C3.52353 3.21838 3.36943 3.38531 3.2717 3.58522C3.17397 3.78513 3.13688 4.00927 3.165 4.23C2.37575 4.7454 1.67078 5.3795 1.075 6.11C1.19455 5.3189 1.47112 4.55966 1.88843 3.87701C2.30575 3.19437 2.85539 2.60208 3.505 2.135H3.5ZM3.5 9.99C3.30481 10.0555 3.13037 10.1714 2.9943 10.3259C2.85822 10.4804 2.76533 10.6681 2.725 10.87H2.405C1.59754 9.9069 1.1146 8.7136 1.025 7.46L1.08 7.365C1.70611 6.3942 2.52463 5.562 3.485 4.92C3.62899 5.0704 3.81094 5.179 4.01162 5.2345C4.2123 5.2899 4.42423 5.2901 4.625 5.235C5.2938 6.3652 6.208 7.3306 7.3 8.06C7.505 8.195 7.715 8.32 7.925 8.44C7.9082 8.6312 7.9391 8.8237 8.015 9C7.1 9.7266 6.0445 10.256 4.915 10.555C4.78401 10.3103 4.57028 10.1201 4.31199 10.0184C4.05369 9.9167 3.76766 9.9102 3.505 10L3.5 9.99ZM7 12.99C5.9831 12.9903 4.98307 12.7304 4.095 12.235L4.235 12.205C4.43397 12.1397 4.61176 12.0222 4.74984 11.8648C4.88792 11.7074 4.98122 11.5158 5.02 11.31C6.2985 10.984 7.4921 10.3872 8.52 9.56C8.7642 9.7027 9.0525 9.75 9.3295 9.6927C9.6064 9.6355 9.8524 9.4778 10.02 9.25C10.7254 9.4334 11.4511 9.5275 12.18 9.53H12.445C11.9626 10.5673 11.1938 11.4451 10.2291 12.0599C9.2643 12.6747 8.144 13.0009 7 13V12.99ZM10.255 8.54C10.2545 8.3304 10.1975 8.1249 10.09 7.945C10.9221 6.8581 11.5012 5.5991 11.785 4.26C12.035 4.37667 12.2817 4.50667 12.525 4.65C13.0749 5.9495 13.1493 7.4012 12.735 8.75C11.9049 8.8142 11.0698 8.7484 10.26 8.555L10.255 8.54Z' fill='%23646D7A'/%3e%3c/svg%3e";
@@ -32,7 +33,7 @@ export function ChainIcon(props: {
});
return (
<img
<Image
alt=""
width={100}
height={100}
+16 -1
View File
@@ -1,8 +1,10 @@
"use client";
import { useRouter } from "@/hooks/useRouter";
import { generatePayload, getCurrentUser, login, logout } from "@/lib/auth";
import { client } from "@/lib/client";
import { useQuery } from "@tanstack/react-query";
import { useTheme } from "next-themes";
import { useParams, useRouter, useSearchParams } from "next/navigation";
import { useParams, useSearchParams } from "next/navigation";
import type { VerifyLoginPayloadParams } from "thirdweb/auth";
import { ConnectEmbed as ThirdwebConnectEmbed } from "thirdweb/react";
import { ecosystemWallet } from "thirdweb/wallets";
@@ -13,6 +15,18 @@ export function ConnectEmbed() {
const params = useParams();
const searchParams = useSearchParams();
const { data: userAddress } = useQuery({
queryKey: ["userAddress"],
queryFn: getCurrentUser,
});
if (userAddress) {
router.push(
`/wallet/${userAddress}?${searchParams.toString()}`,
params.ecosystem as string,
);
}
return (
<ThirdwebConnectEmbed
theme={theme === "light" ? "light" : "dark"}
@@ -26,6 +40,7 @@ export function ConnectEmbed() {
if (success) {
router.push(
`/wallet/${loginParams.payload.address}?${searchParams.toString()}`,
params.ecosystem as string,
);
}
},
+2 -1
View File
@@ -1,3 +1,4 @@
import { Image } from "@/components/ui/image";
import type { Erc721Token } from "@/types/Erc721Token";
import { shortenAddress } from "thirdweb/utils";
import { getChain } from "../lib/chains";
@@ -21,7 +22,7 @@ export default async function NftCard({
<Card className="group h-[400px] w-full md:h-[350px] xl:h-[300px]">
<div className="absolute inset-0 h-full w-full bg-accent object-cover">
{(data.image_url || data.collection.image_url) && (
<img
<Image
src={data.image_url || data.collection.image_url}
alt={data.name}
className="h-full w-full object-cover object-center"
+2 -1
View File
@@ -1,4 +1,5 @@
"use client";
import { Image } from "@/components/ui/image";
import { zodResolver } from "@hookform/resolvers/zod";
import { useMutation } from "@tanstack/react-query";
import { Loader2, OctagonXIcon } from "lucide-react";
@@ -120,7 +121,7 @@ export function NftModal({
</DialogTrigger>
<DialogContent className="gap-0 overflow-hidden rounded-xl p-0 sm:w-[425px] md:rounded-xl">
<div className="relative h-[425px] w-full">
<img
<Image
src={data.image_url || data.collection.image_url}
alt={data.name}
className="h-full w-full object-cover object-center"
@@ -0,0 +1,18 @@
/* eslint-disable @next/next/no-img-element */
import type { ImgHTMLAttributes } from "react";
interface ImageProps extends ImgHTMLAttributes<HTMLImageElement> {
alt: string; // Making alt required for accessibility
}
export const Image = ({ alt, ...props }: ImageProps) => {
// biome-ignore lint/a11y/useAltText: alt is required
return (
<img
alt={alt}
loading="lazy" // Add lazy loading by default
{...props}
/>
);
};
+18
View File
@@ -0,0 +1,18 @@
/* eslint-disable no-restricted-imports */
import { isMultiTenant } from "@/lib/utils";
import { useRouter as useNextRouter } from "next/navigation";
export function useRouter() {
const router = useNextRouter();
return {
...router,
push: (path: string, ecosystemId: string) => {
if (isMultiTenant && ecosystemId) {
return router.push(`/${ecosystemId}${path}`);
}
return router.push(path);
},
};
}
-73
View File
@@ -1,73 +0,0 @@
import "server-only";
import type { Erc20Token } from "@/types/Erc20Token";
import { chainIdToName, nameToChainId } from "@/util/simplehash";
import type { Address } from "thirdweb";
export type GetErc20TokensParams = {
owner: Address;
chainIds: number[];
limit?: number;
cursor?: string;
};
export async function getErc20Tokens({
owner,
chainIds,
limit = 50,
cursor,
}: GetErc20TokensParams): Promise<{
nextCursor?: string;
tokens: Erc20Token[];
}> {
const chainlist = chainIds
.map((id) => {
try {
return `${chainIdToName(id)},`;
} catch {
// Ignore unsupported chains when fetching assets
}
})
.join("")
.slice(0, -1); // remove trailing comma
const queryParams = new URLSearchParams({
wallet_addresses: owner,
limit: limit.toString(),
chains: chainlist,
});
if (cursor) {
queryParams.append("cursor", cursor);
}
const options = {
method: "GET",
headers: {
accept: "application/json",
"X-API-KEY": process.env.SIMPLEHASH_API_KEY as string,
},
};
const response = await fetch(
`https://api.simplehash.com/api/v0/fungibles/balances?${decodeURIComponent(queryParams.toString())}`,
options,
);
if (!response.ok) {
response.body?.cancel();
throw new Error("Failed to fetch ERC20tokens");
}
const data = await response.json();
return {
nextCursor: data.next_cursor,
// biome-ignore lint/suspicious/noExplicitAny: false
tokens: data.fungibles.map((token: any) => ({
name: token.name,
symbol: token.symbol,
decimals: token.decimals,
chainId: nameToChainId(token.chain),
})),
};
}
+1 -1
View File
@@ -3,7 +3,7 @@ import type { Erc721Token } from "@/types/Erc721Token";
import { chainIdToName, nameToChainId } from "@/util/simplehash";
import type { Address } from "thirdweb";
export type GetErc721TokensParams = {
type GetErc721TokensParams = {
owner: Address;
chainIds: number[];
limit?: number;
+6 -6
View File
@@ -1,8 +1,8 @@
"use server";
import "server-only";
import { redirect } from "@/lib/redirect";
import { secp256k1 } from "@noble/curves/secp256k1";
import { cookies } from "next/headers";
import { redirect } from "next/navigation";
import { toHex } from "thirdweb";
import {
type GenerateLoginPayloadParams,
@@ -41,7 +41,6 @@ export async function login(payload: VerifyLoginPayloadParams) {
secure: process.env.NODE_ENV !== "development",
sameSite: "strict",
maxAge: 3600,
domain: process.env.NEXT_PUBLIC_ROOT_DOMAIN,
path: "/",
});
return true;
@@ -49,15 +48,16 @@ export async function login(payload: VerifyLoginPayloadParams) {
return false;
}
export async function authedOnly() {
const loggedIn = await getCurrentUser();
export async function authedOnly(ecosystemId: string) {
const loggedIn = await isLoggedIn();
if (loggedIn) {
return;
}
redirect("/login");
redirect("/login", ecosystemId);
}
export async function isLoggedIn(): Promise<boolean> {
async function isLoggedIn(): Promise<boolean> {
const user = await getCurrentUser();
return !!user;
}
+13
View File
@@ -0,0 +1,13 @@
import { redirect as nextRedirect } from "next/navigation";
import { isMultiTenant } from "./utils";
/**
* Wraps Next's redirect to add the ecosystem ID if we're in development mode.
* In dev, we don't use subdomains. We can't move this to middleware because the edge runtime does not support the JWT verification.
*/
export function redirect(path: string, ecosystemId: string) {
if (isMultiTenant) {
return nextRedirect(`/${ecosystemId}${path}`);
}
return nextRedirect(path);
}
+3
View File
@@ -4,3 +4,6 @@ import { twMerge } from "tailwind-merge";
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs));
}
export const isMultiTenant =
process.env.NEXT_PUBLIC_ENVIRONMENT !== "production";
+8 -2
View File
@@ -1,4 +1,5 @@
import { type NextRequest, NextResponse } from "next/server";
import { isMultiTenant } from "./lib/utils";
export const config = {
matcher: [
@@ -12,7 +13,6 @@ export const config = {
"/((?!api/|_next/|_static/|_vercel|[\\w-]+\\.\\w+).*)",
],
};
const ROOT_DOMAIN = process.env.NEXT_PUBLIC_ROOT_DOMAIN;
export default async function middleware(req: NextRequest) {
// Get the request hostname (e.g. demo.thirdweb.com)
@@ -24,6 +24,11 @@ export default async function middleware(req: NextRequest) {
searchParams.length > 0 ? `?${searchParams}` : ""
}`;
// If running development environment, do not rewrite
if (isMultiTenant) {
return NextResponse.next();
}
// keep root application at `/`
if (hostname === ROOT_DOMAIN || hostname === null) {
return NextResponse.next();
@@ -31,6 +36,7 @@ export default async function middleware(req: NextRequest) {
// rewrite everything else to `/[ecosystem]/... dynamic route
const ecosystem = hostname.split(".")[0];
const rewriteUrl = new URL(`/${ecosystem}${path}`, req.url);
return NextResponse.rewrite(new URL(`/${ecosystem}${path}`, req.url));
return NextResponse.rewrite(rewriteUrl);
}
-9
View File
@@ -1,9 +0,0 @@
import type { Address } from "thirdweb";
export type Erc20Token = {
address: Address;
name: string;
symbol: string;
decimals: number;
chainId: number;
};
-9
View File
@@ -49,15 +49,6 @@ export function chainIdToName(chainId: number) {
throw new Error(`Unknown chain id: ${chainId}`);
}
export function chainIdToLabel(chainId: number) {
const chain = chainIdNameMap.find((chain) => chain.id === chainId);
if (chain) {
return chain.label;
}
throw new Error(`Unknown chain id: ${chainId}`);
}
export function nameToChainId(name: string) {
const chain = chainIdNameMap.find((chain) => chain.name === name);
if (chain) {
@@ -7,7 +7,7 @@ import { useActiveWallet } from "./useActiveWallet.js";
/**
* A hook to get a call bundle's current status according to [EIP-5792](https://eips.ethereum.org/EIPS/eip-5792).
*
* @note This function is dependent on the wallet's support for EIP-5792 and could throw an error if it's not supported.
* This function is dependent on the wallet's support for EIP-5792 and could throw an error if it's not supported.
*
* @returns a React Query object.
* @beta
+154 -192
View File
@@ -137,7 +137,7 @@ importers:
version: 1.1.4([email protected]([email protected]))([email protected])([email protected])([email protected])
'@sentry/nextjs':
specifier: 8.38.0
version: 8.38.0(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
version: 8.38.0(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected])([email protected](@swc/[email protected])([email protected]))
'@shazow/whatsabi':
specifier: ^0.16.0
version: 0.16.0(@noble/[email protected])([email protected])([email protected])
@@ -158,7 +158,7 @@ importers:
version: link:../../packages/service-utils
'@vercel/functions':
specifier: ^1.4.2
version: 1.5.0(@aws-sdk/[email protected](@aws-sdk/[email protected]))
version: 1.5.0(@aws-sdk/[email protected])
'@vercel/og':
specifier: ^0.6.2
version: 0.6.3
@@ -290,7 +290,7 @@ importers:
version: 2.5.4
tailwindcss-animate:
specifier: ^1.0.7
version: 1.0.7([email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])))
version: 1.0.7([email protected]([email protected](@types/[email protected])([email protected])))
thirdweb:
specifier: workspace:*
version: link:../../packages/thirdweb
@@ -339,7 +339,7 @@ importers:
version: 8.4.4([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))
'@storybook/nextjs':
specifier: 8.4.4
version: 8.4.4(@swc/[email protected](@swc/[email protected]))([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])([email protected])([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
version: 8.4.4(@swc/[email protected])([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])([email protected])([email protected])([email protected](@swc/[email protected])([email protected]))
'@storybook/react':
specifier: 8.4.4
version: 8.4.4(@storybook/[email protected]([email protected]([email protected])([email protected])([email protected])))([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])
@@ -387,7 +387,7 @@ importers:
version: 10.4.20([email protected])
checkly:
specifier: ^4.8.1
version: 4.9.1(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])([email protected])([email protected])
version: 4.9.1(@swc/[email protected])(@types/[email protected])([email protected])([email protected])([email protected])
eslint:
specifier: 8.57.0
version: 8.57.0
@@ -414,7 +414,7 @@ importers:
version: 8.4.4([email protected])([email protected])([email protected])
tailwindcss:
specifier: 3.4.15
version: 3.4.15([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))
version: 3.4.15([email protected](@types/[email protected])([email protected]))
typescript:
specifier: 5.6.3
version: 5.6.3
@@ -532,10 +532,10 @@ importers:
version: 8.4.49
tailwindcss:
specifier: 3.4.15
version: 3.4.15([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))
version: 3.4.15([email protected](@types/[email protected])([email protected]))
tailwindcss-animate:
specifier: ^1.0.7
version: 1.0.7([email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])))
version: 1.0.7([email protected]([email protected](@types/[email protected])([email protected])))
typescript:
specifier: 5.6.3
version: 5.6.3
@@ -547,13 +547,13 @@ importers:
version: 1.0.5([email protected])
'@mdx-js/loader':
specifier: ^2.3.0
version: 2.3.0([email protected](@swc/[email protected](@swc/[email protected])))
version: 2.3.0([email protected])
'@mdx-js/react':
specifier: ^2.3.0
version: 2.3.0([email protected])
'@next/mdx':
specifier: 15.0.3
version: 15.0.3(@mdx-js/[email protected]([email protected](@swc/[email protected](@swc/[email protected]))))(@mdx-js/[email protected]([email protected]))
version: 15.0.3(@mdx-js/[email protected]([email protected]))(@mdx-js/[email protected]([email protected]))
'@radix-ui/react-dialog':
specifier: 1.1.2
version: 1.1.2([email protected]([email protected]))([email protected])([email protected])([email protected])
@@ -634,7 +634,7 @@ importers:
version: 2.5.4
tailwindcss-animate:
specifier: ^1.0.7
version: 1.0.7([email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])))
version: 1.0.7([email protected]([email protected](@types/[email protected])([email protected])))
thirdweb:
specifier: workspace:*
version: link:../../packages/thirdweb
@@ -692,7 +692,7 @@ importers:
version: 1.2.4
eslint-plugin-tailwindcss:
specifier: ^3.17.5
version: 3.17.5([email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])))
version: 3.17.5([email protected]([email protected](@types/[email protected])([email protected])))
next-sitemap:
specifier: ^4.2.3
version: 4.2.3([email protected](@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))
@@ -701,7 +701,7 @@ importers:
version: 8.4.49
tailwindcss:
specifier: 3.4.15
version: 3.4.15([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))
version: 3.4.15([email protected](@types/[email protected])([email protected]))
tsx:
specifier: 4.19.2
version: 4.19.2
@@ -729,9 +729,6 @@ importers:
'@radix-ui/react-slot':
specifier: ^1.1.0
version: 1.1.0([email protected])([email protected])
'@radix-ui/react-toast':
specifier: ^1.2.2
version: 1.2.2([email protected]([email protected]))([email protected])([email protected])([email protected])
'@tanstack/react-query':
specifier: 5.60.2
version: 5.60.2([email protected])
@@ -762,6 +759,9 @@ importers:
react-hook-form:
specifier: 7.52.0
version: 7.52.0([email protected])
server-only:
specifier: ^0.0.1
version: 0.0.1
sonner:
specifier: ^1.7.0
version: 1.7.0([email protected]([email protected]))([email protected])
@@ -770,7 +770,7 @@ importers:
version: 2.5.4
tailwindcss-animate:
specifier: ^1.0.7
version: 1.0.7([email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])))
version: 1.0.7([email protected]([email protected](@types/[email protected])([email protected])))
thirdweb:
specifier: workspace:*
version: link:../../packages/thirdweb
@@ -781,6 +781,9 @@ importers:
specifier: 3.23.8
version: 3.23.8
devDependencies:
'@next/eslint-plugin-next':
specifier: 15.0.3
version: 15.0.3
'@types/node':
specifier: 20.14.9
version: 20.14.9
@@ -790,18 +793,33 @@ importers:
'@types/react-dom':
specifier: npm:[email protected]
version: [email protected]
'@typescript-eslint/eslint-plugin':
specifier: 7.14.1
version: 7.14.1(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])
'@typescript-eslint/parser':
specifier: 7.14.1
version: 7.14.1([email protected])([email protected])
eslint:
specifier: 8.57.0
version: 8.57.0
eslint-config-next:
specifier: 15.0.3
version: 15.0.3([email protected])([email protected])
eslint-config-biome:
specifier: 1.9.3
version: 1.9.3
eslint-plugin-react-compiler:
specifier: 19.0.0-beta-a7bf2bd-20241110
version: 19.0.0-beta-a7bf2bd-20241110([email protected])
knip:
specifier: 5.37.0
version: 5.37.0(@types/[email protected])([email protected])
postcss:
specifier: 8.4.49
version: 8.4.49
postcss-load-config:
specifier: ^6.0.1
version: 6.0.1([email protected])([email protected])([email protected])([email protected])
tailwindcss:
specifier: 3.4.15
version: 3.4.15([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))
version: 3.4.15([email protected](@types/[email protected])([email protected]))
typescript:
specifier: 5.6.3
version: 5.6.3
@@ -4357,19 +4375,6 @@ packages:
'@types/react-dom':
optional: true
'@radix-ui/[email protected]':
resolution: {integrity: sha512-Z6pqSzmAP/bFJoqMAston4eSNa+ud44NSZTiZUmUen+IOZ5nBY8kzuU5WDBVyFXPtcW6yUalOHsxM/BP6Sv8ww==}
peerDependencies:
'@types/react': npm:[email protected]
'@types/react-dom': npm:[email protected]
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
optional: true
'@types/react-dom':
optional: true
'@radix-ui/[email protected]':
resolution: {integrity: sha512-QpObUH/ZlpaO4YgHSaYzrLO2VuO+ZBFFgGzjMUPwtiYnAzzNNDPJeEGRrT7qNOrWm/Jr08M1vlp+vTHtnSQ0Uw==}
peerDependencies:
@@ -5504,9 +5509,6 @@ packages:
'@swc/[email protected]':
resolution: {integrity: sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==}
'@swc/[email protected]':
resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==}
'@swc/[email protected]':
resolution: {integrity: sha512-XKaZ+dzDIQ9Ot9o89oJQ/aluI17+VvUnIpYJTcZtvv1iYX6MzHh3Ik2CSR7MdPKpPwfZXHBeCingb2b4PoDVdw==}
@@ -11383,6 +11385,24 @@ packages:
ts-node:
optional: true
[email protected]:
resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==}
engines: {node: '>= 18'}
peerDependencies:
jiti: '>=1.21.0'
postcss: '>=8.0.9'
tsx: ^4.8.1
yaml: ^2.4.2
peerDependenciesMeta:
jiti:
optional: true
postcss:
optional: true
tsx:
optional: true
yaml:
optional: true
[email protected]:
resolution: {integrity: sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==}
engines: {node: '>= 18.12.0'}
@@ -17197,11 +17217,11 @@ snapshots:
react: 19.0.0-rc-69d4b800-20241021
react-dom: 19.0.0-rc-69d4b800-20241021([email protected])
'@mdx-js/[email protected]([email protected](@swc/[email protected](@swc/[email protected])))':
'@mdx-js/[email protected]([email protected])':
dependencies:
'@mdx-js/mdx': 2.3.0
source-map: 0.7.4
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))
webpack: 5.96.1
transitivePeerDependencies:
- supports-color
@@ -17341,11 +17361,11 @@ snapshots:
dependencies:
fast-glob: 3.3.1
'@next/[email protected](@mdx-js/[email protected]([email protected](@swc/[email protected](@swc/[email protected]))))(@mdx-js/[email protected]([email protected]))':
'@next/[email protected](@mdx-js/[email protected]([email protected]))(@mdx-js/[email protected]([email protected]))':
dependencies:
source-map: 0.7.4
optionalDependencies:
'@mdx-js/loader': 2.3.0([email protected](@swc/[email protected](@swc/[email protected])))
'@mdx-js/loader': 2.3.0([email protected])
'@mdx-js/react': 2.3.0([email protected])
'@next/[email protected]':
@@ -17495,7 +17515,7 @@ snapshots:
widest-line: 3.1.0
wrap-ansi: 7.0.0
'@oclif/[email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])':
'@oclif/[email protected](@swc/[email protected])(@types/[email protected])([email protected])':
dependencies:
'@types/cli-progress': 3.11.5
ansi-escapes: 4.3.2
@@ -17521,7 +17541,7 @@ snapshots:
strip-ansi: 6.0.1
supports-color: 8.1.1
supports-hyperlinks: 2.3.0
ts-node: 10.9.2(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])
ts-node: 10.9.2(@swc/[email protected])(@types/[email protected])([email protected])
tslib: 2.8.1
widest-line: 3.1.0
wordwrap: 1.0.0
@@ -17558,10 +17578,10 @@ snapshots:
dependencies:
'@oclif/core': 1.26.2
'@oclif/[email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])':
'@oclif/[email protected](@swc/[email protected])(@types/[email protected])([email protected])':
dependencies:
'@oclif/color': 1.0.13
'@oclif/core': 2.8.11(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])
'@oclif/core': 2.8.11(@swc/[email protected])(@types/[email protected])([email protected])
fast-levenshtein: 3.0.0
lodash: 4.17.21
transitivePeerDependencies:
@@ -17586,9 +17606,9 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@oclif/[email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])':
'@oclif/[email protected](@swc/[email protected])(@types/[email protected])([email protected])':
dependencies:
'@oclif/core': 2.8.11(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])
'@oclif/core': 2.8.11(@swc/[email protected])(@types/[email protected])([email protected])
chalk: 4.1.2
debug: 4.3.7([email protected])
fs-extra: 9.1.0
@@ -17977,7 +17997,7 @@ snapshots:
dependencies:
playwright: 1.48.2
'@pmmmwh/[email protected]([email protected])([email protected])([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))':
'@pmmmwh/[email protected]([email protected])([email protected])([email protected])([email protected](@swc/[email protected])([email protected]))':
dependencies:
ansi-html: 0.0.9
core-js-pure: 3.39.0
@@ -17987,7 +18007,7 @@ snapshots:
react-refresh: 0.14.2
schema-utils: 4.2.0
source-map: 0.7.4
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
optionalDependencies:
type-fest: 4.27.0
webpack-hot-middleware: 2.26.1
@@ -18504,26 +18524,6 @@ snapshots:
'@types/react': [email protected]
'@types/react-dom': [email protected]
'@radix-ui/[email protected]([email protected]([email protected]))([email protected])([email protected])([email protected])':
dependencies:
'@radix-ui/primitive': 1.1.0
'@radix-ui/react-collection': 1.1.0([email protected]([email protected]))([email protected])([email protected])([email protected])
'@radix-ui/react-compose-refs': 1.1.0([email protected])([email protected])
'@radix-ui/react-context': 1.1.1([email protected])([email protected])
'@radix-ui/react-dismissable-layer': 1.1.1([email protected]([email protected]))([email protected])([email protected])([email protected])
'@radix-ui/react-portal': 1.1.2([email protected]([email protected]))([email protected])([email protected])([email protected])
'@radix-ui/react-presence': 1.1.1([email protected]([email protected]))([email protected])([email protected])([email protected])
'@radix-ui/react-primitive': 2.0.0([email protected]([email protected]))([email protected])([email protected])([email protected])
'@radix-ui/react-use-callback-ref': 1.1.0([email protected])([email protected])
'@radix-ui/react-use-controllable-state': 1.1.0([email protected])([email protected])
'@radix-ui/react-use-layout-effect': 1.1.0([email protected])([email protected])
'@radix-ui/react-visually-hidden': 1.1.0([email protected]([email protected]))([email protected])([email protected])([email protected])
react: 19.0.0-rc-69d4b800-20241021
react-dom: 19.0.0-rc-69d4b800-20241021([email protected])
optionalDependencies:
'@types/react': [email protected]
'@types/react-dom': [email protected]
'@radix-ui/[email protected]([email protected]([email protected]))([email protected])([email protected])([email protected])':
dependencies:
'@radix-ui/primitive': 1.1.0
@@ -19005,7 +19005,7 @@ snapshots:
'@sentry/types': 8.38.0
'@sentry/utils': 8.38.0
'@sentry/[email protected](@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))':
'@sentry/[email protected](@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected])([email protected](@swc/[email protected])([email protected]))':
dependencies:
'@opentelemetry/api': 1.9.0
'@opentelemetry/instrumentation-http': 0.53.0(@opentelemetry/[email protected])
@@ -19019,7 +19019,7 @@ snapshots:
'@sentry/types': 8.38.0
'@sentry/utils': 8.38.0
'@sentry/vercel-edge': 8.38.0
'@sentry/webpack-plugin': 2.22.6([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
'@sentry/webpack-plugin': 2.22.6([email protected](@swc/[email protected])([email protected]))
chalk: 3.0.0
next: 15.0.3(@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected])
resolve: 1.22.8
@@ -19109,12 +19109,12 @@ snapshots:
'@sentry/types': 8.38.0
'@sentry/utils': 8.38.0
'@sentry/[email protected]([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))':
'@sentry/[email protected]([email protected](@swc/[email protected])([email protected]))':
dependencies:
'@sentry/bundler-plugin-core': 2.22.6
unplugin: 1.0.1
uuid: 9.0.1
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
transitivePeerDependencies:
- encoding
- supports-color
@@ -19736,7 +19736,7 @@ snapshots:
ts-dedent: 2.2.0
vite: 5.4.11(@types/[email protected])([email protected])([email protected])
'@storybook/[email protected](@swc/[email protected](@swc/[email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])':
'@storybook/[email protected](@swc/[email protected])([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])':
dependencies:
'@storybook/core-webpack': 8.4.4([email protected]([email protected])([email protected])([email protected]))
'@types/node': 22.9.0
@@ -19745,23 +19745,23 @@ 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([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
css-loader: 6.11.0([email protected](@swc/[email protected])([email protected]))
es-module-lexer: 1.5.4
fork-ts-checker-webpack-plugin: 8.0.0([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
html-webpack-plugin: 5.6.3([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
fork-ts-checker-webpack-plugin: 8.0.0([email protected])([email protected](@swc/[email protected])([email protected]))
html-webpack-plugin: 5.6.3([email protected](@swc/[email protected])([email protected]))
magic-string: 0.30.12
path-browserify: 1.0.1
process: 0.11.10
semver: 7.6.3
storybook: 8.4.4([email protected])([email protected])([email protected])
style-loader: 3.3.4([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
terser-webpack-plugin: 5.3.10(@swc/[email protected](@swc/[email protected]))([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
style-loader: 3.3.4([email protected](@swc/[email protected])([email protected]))
terser-webpack-plugin: 5.3.10(@swc/[email protected])([email protected])([email protected](@swc/[email protected])([email protected]))
ts-dedent: 2.2.0
url: 0.11.4
util: 0.12.5
util-deprecate: 1.0.2
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack-dev-middleware: 6.1.3([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
webpack: 5.96.1(@swc/[email protected])([email protected])
webpack-dev-middleware: 6.1.3([email protected](@swc/[email protected])([email protected]))
webpack-hot-middleware: 2.26.1
webpack-virtual-modules: 0.6.2
optionalDependencies:
@@ -19838,7 +19838,7 @@ snapshots:
dependencies:
storybook: 8.4.4([email protected])([email protected])([email protected])
'@storybook/[email protected](@swc/[email protected](@swc/[email protected]))([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])([email protected])([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))':
'@storybook/[email protected](@swc/[email protected])([email protected])([email protected](@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected]))([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])([email protected])([email protected])([email protected](@swc/[email protected])([email protected]))':
dependencies:
'@babel/core': 7.26.0
'@babel/plugin-syntax-bigint': 7.8.3(@babel/[email protected])
@@ -19853,31 +19853,31 @@ snapshots:
'@babel/preset-react': 7.25.9(@babel/[email protected])
'@babel/preset-typescript': 7.26.0(@babel/[email protected])
'@babel/runtime': 7.26.0
'@pmmmwh/react-refresh-webpack-plugin': 0.5.15([email protected])([email protected])([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
'@storybook/builder-webpack5': 8.4.4(@swc/[email protected](@swc/[email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])
'@storybook/preset-react-webpack': 8.4.4(@storybook/[email protected]([email protected]([email protected])([email protected])([email protected])))(@swc/[email protected](@swc/[email protected]))([email protected])([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])
'@pmmmwh/react-refresh-webpack-plugin': 0.5.15([email protected])([email protected])([email protected])([email protected](@swc/[email protected])([email protected]))
'@storybook/builder-webpack5': 8.4.4(@swc/[email protected])([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])
'@storybook/preset-react-webpack': 8.4.4(@storybook/[email protected]([email protected]([email protected])([email protected])([email protected])))(@swc/[email protected])([email protected])([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])
'@storybook/react': 8.4.4(@storybook/[email protected]([email protected]([email protected])([email protected])([email protected])))([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])
'@storybook/test': 8.4.4([email protected]([email protected])([email protected])([email protected]))
'@types/node': 22.9.0
'@types/semver': 7.5.8
babel-loader: 9.2.1(@babel/[email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
css-loader: 6.11.0([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
babel-loader: 9.2.1(@babel/[email protected])([email protected](@swc/[email protected])([email protected]))
css-loader: 6.11.0([email protected](@swc/[email protected])([email protected]))
find-up: 5.0.0
image-size: 1.1.1
loader-utils: 3.3.1
next: 15.0.3(@babel/[email protected])(@opentelemetry/[email protected])(@playwright/[email protected])([email protected]([email protected]))([email protected])
node-polyfill-webpack-plugin: 2.0.1([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
node-polyfill-webpack-plugin: 2.0.1([email protected](@swc/[email protected])([email protected]))
pnp-webpack-plugin: 1.7.0([email protected])
postcss: 8.4.49
postcss-loader: 8.1.1([email protected])([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
postcss-loader: 8.1.1([email protected])([email protected])([email protected](@swc/[email protected])([email protected]))
react: 19.0.0-rc-69d4b800-20241021
react-dom: 19.0.0-rc-69d4b800-20241021([email protected])
react-refresh: 0.14.2
resolve-url-loader: 5.0.0
sass-loader: 13.3.3([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
sass-loader: 13.3.3([email protected](@swc/[email protected])([email protected]))
semver: 7.6.3
storybook: 8.4.4([email protected])([email protected])([email protected])
style-loader: 3.3.4([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
style-loader: 3.3.4([email protected](@swc/[email protected])([email protected]))
styled-jsx: 5.1.6(@babel/[email protected])([email protected])
ts-dedent: 2.2.0
tsconfig-paths: 4.2.0
@@ -19885,7 +19885,7 @@ snapshots:
optionalDependencies:
sharp: 0.33.5
typescript: 5.6.3
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
transitivePeerDependencies:
- '@rspack/core'
- '@swc/core'
@@ -19905,11 +19905,11 @@ snapshots:
- webpack-hot-middleware
- webpack-plugin-serve
'@storybook/[email protected](@storybook/[email protected]([email protected]([email protected])([email protected])([email protected])))(@swc/[email protected](@swc/[email protected]))([email protected])([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])':
'@storybook/[email protected](@storybook/[email protected]([email protected]([email protected])([email protected])([email protected])))(@swc/[email protected])([email protected])([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])':
dependencies:
'@storybook/core-webpack': 8.4.4([email protected]([email protected])([email protected])([email protected]))
'@storybook/react': 8.4.4(@storybook/[email protected]([email protected]([email protected])([email protected])([email protected])))([email protected]([email protected]))([email protected])([email protected]([email protected])([email protected])([email protected]))([email protected])
'@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
'@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0([email protected])([email protected](@swc/[email protected])([email protected]))
'@types/node': 22.9.0
'@types/semver': 7.5.8
find-up: 5.0.0
@@ -19921,7 +19921,7 @@ snapshots:
semver: 7.6.3
storybook: 8.4.4([email protected])([email protected])([email protected])
tsconfig-paths: 4.2.0
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
@@ -19936,7 +19936,7 @@ snapshots:
dependencies:
storybook: 8.4.4([email protected])([email protected])([email protected])
'@storybook/[email protected]([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))':
'@storybook/[email protected]([email protected])([email protected](@swc/[email protected])([email protected]))':
dependencies:
debug: 4.3.7([email protected])
endent: 2.1.0
@@ -19946,7 +19946,7 @@ snapshots:
react-docgen-typescript: 2.2.2([email protected])
tslib: 2.8.1
typescript: 5.6.3
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
transitivePeerDependencies:
- supports-color
@@ -20385,7 +20385,7 @@ snapshots:
'@swc/[email protected]':
optional: true
'@swc/[email protected](@swc/[email protected])':
'@swc/[email protected]':
dependencies:
'@swc/counter': 0.1.3
'@swc/types': 0.1.15
@@ -20400,7 +20400,6 @@ snapshots:
'@swc/core-win32-arm64-msvc': 1.9.2
'@swc/core-win32-ia32-msvc': 1.9.2
'@swc/core-win32-x64-msvc': 1.9.2
'@swc/helpers': 0.5.15
optional: true
'@swc/[email protected]': {}
@@ -20409,11 +20408,6 @@ snapshots:
dependencies:
tslib: 2.8.1
'@swc/[email protected]':
dependencies:
tslib: 2.8.1
optional: true
'@swc/[email protected]':
dependencies:
'@swc/counter': 0.1.3
@@ -20913,7 +20907,7 @@ snapshots:
'@urql/core': 5.0.8([email protected])
wonka: 6.3.4
'@vercel/[email protected](@aws-sdk/[email protected](@aws-sdk/[email protected]))':
'@vercel/[email protected](@aws-sdk/[email protected])':
optionalDependencies:
'@aws-sdk/credential-provider-web-identity': 3.693.0(@aws-sdk/[email protected])
@@ -21806,12 +21800,12 @@ snapshots:
transitivePeerDependencies:
- supports-color
[email protected](@babel/[email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected](@babel/[email protected])([email protected](@swc/[email protected])([email protected])):
dependencies:
'@babel/core': 7.26.0
find-cache-dir: 4.0.0
schema-utils: 4.2.0
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]:
dependencies:
@@ -22264,13 +22258,13 @@ snapshots:
[email protected]: {}
[email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])([email protected])([email protected]):
[email protected](@swc/[email protected])(@types/[email protected])([email protected])([email protected])([email protected]):
dependencies:
'@oclif/core': 2.8.11(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])
'@oclif/core': 2.8.11(@swc/[email protected])(@types/[email protected])([email protected])
'@oclif/plugin-help': 5.1.20
'@oclif/plugin-not-found': 2.3.23(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])
'@oclif/plugin-not-found': 2.3.23(@swc/[email protected])(@types/[email protected])([email protected])
'@oclif/plugin-plugins': 5.4.4
'@oclif/plugin-warn-if-update-available': 2.0.24(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])
'@oclif/plugin-warn-if-update-available': 2.0.24(@swc/[email protected])(@types/[email protected])([email protected])
'@typescript-eslint/typescript-estree': 7.18.0([email protected])
acorn: 8.8.1
acorn-walk: 8.2.0
@@ -22727,7 +22721,7 @@ snapshots:
[email protected]: {}
[email protected]([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected]([email protected](@swc/[email protected])([email protected])):
dependencies:
icss-utils: 5.1.0([email protected])
postcss: 8.4.49
@@ -22738,7 +22732,7 @@ snapshots:
postcss-value-parser: 4.2.0
semver: 7.6.3
optionalDependencies:
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]:
dependencies:
@@ -23434,8 +23428,8 @@ snapshots:
'@typescript-eslint/parser': 7.14.1([email protected])([email protected])
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])([email protected])
eslint-plugin-import: 2.31.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])
eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected])
eslint-plugin-import: 2.31.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected]))([email protected])
eslint-plugin-jsx-a11y: 6.10.2([email protected])
eslint-plugin-react: 7.37.2([email protected])
eslint-plugin-react-hooks: 5.0.0([email protected])
@@ -23454,19 +23448,19 @@ snapshots:
transitivePeerDependencies:
- supports-color
[email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])([email protected]):
[email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected]):
dependencies:
'@nolyfill/is-core-module': 1.0.39
debug: 4.3.7([email protected])
enhanced-resolve: 5.17.1
eslint: 8.57.0
eslint-module-utils: 2.12.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])([email protected]))([email protected])
eslint-module-utils: 2.12.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected]))([email protected])
fast-glob: 3.3.2
get-tsconfig: 4.8.1
is-bun-module: 1.2.1
is-glob: 4.0.3
optionalDependencies:
eslint-plugin-import: 2.31.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])
eslint-plugin-import: 2.31.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected]))([email protected])
transitivePeerDependencies:
- '@typescript-eslint/parser'
- eslint-import-resolver-node
@@ -23494,18 +23488,18 @@ snapshots:
- bluebird
- supports-color
[email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])([email protected]))([email protected]):
[email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected]))([email protected]):
dependencies:
debug: 3.2.7
optionalDependencies:
'@typescript-eslint/parser': 7.14.1([email protected])([email protected])
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])([email protected])
eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected])
transitivePeerDependencies:
- supports-color
[email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected]):
[email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected]))([email protected]):
dependencies:
'@rtsao/scc': 1.1.0
array-includes: 3.1.8
@@ -23516,7 +23510,7 @@ snapshots:
doctrine: 2.1.0
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-module-utils: 2.12.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected])([email protected]))([email protected])
eslint-module-utils: 2.12.0(@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected])([email protected](@typescript-eslint/[email protected]([email protected])([email protected]))([email protected]))([email protected]))([email protected])
hasown: 2.0.2
is-core-module: 2.15.1
is-glob: 4.0.3
@@ -23626,11 +23620,11 @@ snapshots:
[email protected]: {}
[email protected]([email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))):
[email protected]([email protected]([email protected](@types/[email protected])([email protected]))):
dependencies:
fast-glob: 3.3.2
postcss: 8.4.49
tailwindcss: 3.4.15([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))
tailwindcss: 3.4.15([email protected](@types/[email protected])([email protected]))
[email protected]:
dependencies:
@@ -24304,7 +24298,7 @@ snapshots:
cross-spawn: 7.0.5
signal-exit: 4.1.0
[email protected]([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected]([email protected])([email protected](@swc/[email protected])([email protected])):
dependencies:
'@babel/code-frame': 7.26.2
chalk: 4.1.2
@@ -24319,7 +24313,7 @@ snapshots:
semver: 7.6.3
tapable: 2.2.1
typescript: 5.6.3
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]: {}
@@ -24803,7 +24797,7 @@ snapshots:
[email protected]: {}
[email protected]([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected]([email protected](@swc/[email protected])([email protected])):
dependencies:
'@types/html-minifier-terser': 6.1.0
html-minifier-terser: 6.1.0
@@ -24811,7 +24805,7 @@ snapshots:
pretty-error: 4.0.0
tapable: 2.2.1
optionalDependencies:
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]:
dependencies:
@@ -27365,7 +27359,7 @@ snapshots:
[email protected]: {}
[email protected]([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected]([email protected](@swc/[email protected])([email protected])):
dependencies:
assert: 2.1.0
browserify-zlib: 0.2.0
@@ -27392,7 +27386,7 @@ snapshots:
url: 0.11.4
util: 0.12.5
vm-browserify: 1.1.2
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]: {}
@@ -28001,22 +27995,31 @@ snapshots:
camelcase-css: 2.0.1
postcss: 8.4.49
[email protected]([email protected])([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])):
[email protected]([email protected])([email protected](@types/[email protected])([email protected])):
dependencies:
lilconfig: 3.1.2
yaml: 2.6.0
optionalDependencies:
postcss: 8.4.49
ts-node: 10.9.2(@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])
ts-node: 10.9.2(@swc/[email protected])(@types/[email protected])([email protected])
postcss-load[email protected]([email protected])([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected].0)):
postcss-load[email protected]([email protected])([email protected])([email protected])([email protected].0):
dependencies:
lilconfig: 3.1.2
optionalDependencies:
jiti: 2.4.0
postcss: 8.4.49
tsx: 4.19.2
yaml: 2.6.0
[email protected]([email protected])([email protected])([email protected](@swc/[email protected])([email protected])):
dependencies:
cosmiconfig: 9.0.0([email protected])
jiti: 1.21.6
postcss: 8.4.49
semver: 7.6.3
optionalDependencies:
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
transitivePeerDependencies:
- typescript
@@ -29187,10 +29190,10 @@ snapshots:
[email protected]: {}
[email protected]([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected]([email protected](@swc/[email protected])([email protected])):
dependencies:
neo-async: 2.6.2
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]:
dependencies:
@@ -29718,9 +29721,9 @@ snapshots:
[email protected]: {}
[email protected]([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected]([email protected](@swc/[email protected])([email protected])):
dependencies:
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]:
dependencies:
@@ -29863,11 +29866,11 @@ snapshots:
[email protected]: {}
[email protected]([email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))):
[email protected]([email protected]([email protected](@types/[email protected])([email protected]))):
dependencies:
tailwindcss: 3.4.15([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))
tailwindcss: 3.4.15([email protected](@types/[email protected])([email protected]))
[email protected]([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected])):
[email protected]([email protected](@types/[email protected])([email protected])):
dependencies:
'@alloc/quick-lru': 5.2.0
arg: 5.0.2
@@ -29886,7 +29889,7 @@ snapshots:
postcss: 8.4.49
postcss-import: 15.1.0([email protected])
postcss-js: 4.0.1([email protected])
postcss-load-config: 4.0.2([email protected])([email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]))
postcss-load-config: 4.0.2([email protected])([email protected](@types/[email protected])([email protected]))
postcss-nested: 6.2.0([email protected])
postcss-selector-parser: 6.1.2
resolve: 1.22.8
@@ -29965,29 +29968,18 @@ snapshots:
ansi-escapes: 4.3.2
supports-hyperlinks: 2.3.0
[email protected](@swc/[email protected](@swc/[email protected]))([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected](@swc/[email protected])([email protected])([email protected](@swc/[email protected])([email protected])):
dependencies:
'@jridgewell/trace-mapping': 0.3.25
jest-worker: 27.5.1
schema-utils: 3.3.0
serialize-javascript: 6.0.2
terser: 5.36.0
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
optionalDependencies:
'@swc/core': 1.9.2(@swc/[email protected])
'@swc/core': 1.9.2
esbuild: 0.24.0
[email protected](@swc/[email protected](@swc/[email protected]))([email protected](@swc/[email protected](@swc/[email protected]))):
dependencies:
'@jridgewell/trace-mapping': 0.3.25
jest-worker: 27.5.1
schema-utils: 3.3.0
serialize-javascript: 6.0.2
terser: 5.36.0
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))
optionalDependencies:
'@swc/core': 1.9.2(@swc/[email protected])
[email protected]([email protected]):
dependencies:
'@jridgewell/trace-mapping': 0.3.25
@@ -30127,7 +30119,7 @@ snapshots:
[email protected]: {}
[email protected](@swc/[email protected](@swc/[email protected]))(@types/[email protected])([email protected]):
[email protected](@swc/[email protected])(@types/[email protected])([email protected]):
dependencies:
'@cspotcode/source-map-support': 0.8.1
'@tsconfig/node10': 1.0.11
@@ -30145,7 +30137,7 @@ snapshots:
v8-compile-cache-lib: 3.0.1
yn: 3.1.1
optionalDependencies:
'@swc/core': 1.9.2(@swc/[email protected])
'@swc/core': 1.9.2
[email protected]([email protected]):
optionalDependencies:
@@ -30953,7 +30945,7 @@ snapshots:
- bufferutil
- utf-8-validate
[email protected]([email protected](@swc/[email protected](@swc/[email protected]))([email protected])):
[email protected]([email protected](@swc/[email protected])([email protected])):
dependencies:
colorette: 2.0.20
memfs: 3.5.3
@@ -30961,7 +30953,7 @@ snapshots:
range-parser: 1.2.1
schema-utils: 4.2.0
optionalDependencies:
webpack: 5.96.1(@swc/[email protected](@swc/[email protected]))([email protected])
webpack: 5.96.1(@swc/[email protected])([email protected])
[email protected]:
dependencies:
@@ -31005,7 +30997,7 @@ snapshots:
- esbuild
- uglify-js
[email protected](@swc/[email protected](@swc/[email protected])):
[email protected](@swc/[email protected])([email protected]):
dependencies:
'@types/eslint-scope': 3.7.7
'@types/estree': 1.0.6
@@ -31027,37 +31019,7 @@ snapshots:
neo-async: 2.6.2
schema-utils: 3.3.0
tapable: 2.2.1
terser-webpack-plugin: 5.3.10(@swc/[email protected](@swc/[email protected]))([email protected](@swc/[email protected](@swc/[email protected])))
watchpack: 2.4.2
webpack-sources: 3.2.3
transitivePeerDependencies:
- '@swc/core'
- esbuild
- uglify-js
[email protected](@swc/[email protected](@swc/[email protected]))([email protected]):
dependencies:
'@types/eslint-scope': 3.7.7
'@types/estree': 1.0.6
'@webassemblyjs/ast': 1.14.1
'@webassemblyjs/wasm-edit': 1.14.1
'@webassemblyjs/wasm-parser': 1.14.1
acorn: 8.14.0
browserslist: 4.24.2
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/[email protected](@swc/[email protected]))([email protected])([email protected](@swc/[email protected](@swc/[email protected]))([email protected]))
terser-webpack-plugin: 5.3.10(@swc/[email protected])([email protected])([email protected](@swc/[email protected])([email protected]))
watchpack: 2.4.2
webpack-sources: 3.2.3
transitivePeerDependencies: