diff --git a/.gitmodules b/.gitmodules
index 3ae9abb..e69de29 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +0,0 @@
-[submodule "mini-app"]
- path = mini-app
- url = https://sirgawain0x@github.com/creativeplatform/mini-app-tv.git
diff --git a/app/api/coinbase/session-token/route.ts b/app/api/coinbase/session-token/route.ts
new file mode 100644
index 0000000..da11090
--- /dev/null
+++ b/app/api/coinbase/session-token/route.ts
@@ -0,0 +1,42 @@
+// app/api/coinbase/session-token/route.ts
+import { NextRequest, NextResponse } from "next/server";
+
+export async function POST(req: NextRequest) {
+ const { address, assets } = await req.json();
+
+ if (!address) {
+ return NextResponse.json({ error: "Missing address" }, { status: 400 });
+ }
+
+ // Prepare the request body for Coinbase
+ const body = {
+ addresses: [
+ {
+ address,
+ blockchains: ["base"], // or more if needed
+ },
+ ],
+ assets: assets || ["USDC"],
+ };
+
+ // Call Coinbase Session Token API
+ const coinbaseRes = await fetch(
+ "https://api.developer.coinbase.com/onramp/v1/token",
+ {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "CDP-API-KEY": process.env.COINBASE_CDP_API_KEY as string,
+ },
+ body: JSON.stringify(body),
+ }
+ );
+
+ if (!coinbaseRes.ok) {
+ const error = await coinbaseRes.text();
+ return NextResponse.json({ error }, { status: 500 });
+ }
+
+ const data = await coinbaseRes.json();
+ return NextResponse.json({ sessionToken: data.sessionToken });
+}
diff --git a/app/apolloWrapper.tsx b/app/apolloWrapper.tsx
index d473bdd..f37c95d 100644
--- a/app/apolloWrapper.tsx
+++ b/app/apolloWrapper.tsx
@@ -6,12 +6,12 @@ import { ApolloClient, InMemoryCache } from "@apollo/client-integration-nextjs";
// have a function to create a client for you
export function makeClient() {
- if (!process.env.NEXT_PUBLIC_API_URL)
- throw new Error("NEXT_PUBLIC_API_URL is not defined");
+ if (!process.env.NEXT_PUBLIC_SNAPSHOT_API_URL)
+ throw new Error("Snapshot URL is not defined");
const httpLink = new HttpLink({
// this needs to be an absolute url, as relative urls cannot be used in SSR
- uri: `${process.env.NEXT_PUBLIC_API_URL}/graphql`,
+ uri: `${process.env.NEXT_PUBLIC_SNAPSHOT_API_URL}/graphql`,
// you can disable result caching here if you want to
// (this does not work if you are rendering your page with `export const dynamic = "force-static"`)
fetchOptions: {
diff --git a/app/layout.tsx b/app/layout.tsx
index 86b8b20..0a1c206 100644
--- a/app/layout.tsx
+++ b/app/layout.tsx
@@ -33,7 +33,7 @@ export const metadata: Metadata = {
card: "summary_large_image",
title: "Creative TV",
description: "The Way Content Should Be.",
- images: ["https://tv.creativeplatform.xyz/logo-tv.gif"],
+ images: ["https://tv.creativeplatform.xyz/creative-banner.png"],
},
};
diff --git a/components/Navbar.tsx b/components/Navbar.tsx
index e06da6b..87371dc 100644
--- a/components/Navbar.tsx
+++ b/components/Navbar.tsx
@@ -41,7 +41,7 @@ import useModularAccount from "@/lib/hooks/accountkit/useModularAccount";
import { createPublicClient, http } from "viem";
import { alchemy, mainnet, base, optimism } from "@account-kit/infra";
import { ArrowBigDown, ArrowBigUp } from "lucide-react";
-import WertButton from "./wallet/buy/fund-button";
+import WertFundButton from "./wallet/buy/wert-fund-button";
import { TokenBalance } from "./wallet/balance/TokenBalance";
import type { Chain as ViemChain } from "viem/chains";
import { AccountDropdown } from "@/components/account-dropdown/AccountDropdown";
@@ -309,7 +309,7 @@ export default function Navbar() {
Buy Crypto
Purchase crypto directly to your wallet.
-
setIsDialogOpen(false)} />
+
diff --git a/components/Videos/Upload/Create-thumbnail.tsx b/components/Videos/Upload/Create-thumbnail.tsx
index 709c750..966349d 100644
--- a/components/Videos/Upload/Create-thumbnail.tsx
+++ b/components/Videos/Upload/Create-thumbnail.tsx
@@ -15,6 +15,7 @@ import CreateThumbnailForm from "./CreateThumbnailForm";
import { toast } from "sonner";
import { NFTConfig } from "@/lib/types/video-asset";
import { Skeleton } from "@/components/ui/skeleton";
+import { Progress } from "@/components/ui/progress";
type CreateThumbnailProps = {
livePeerAssetId: string | undefined;
@@ -100,6 +101,8 @@ export default function CreateThumbnail({
thumbnailUri: selectedThumbnail,
nftConfig: nftConfig,
});
+ } else {
+ toast.error("Please select a thumbnail before submitting.");
}
};
@@ -112,6 +115,27 @@ export default function CreateThumbnail({
Video Transcoding: {String(livepeerAssetData?.status?.phase)}
+ {livepeerAssetData?.status?.phase !== "ready" &&
+ livepeerAssetData?.status?.phase !== "failed" &&
+ typeof livepeerAssetData?.status?.progress === "number" && (
+
+
+ )}
{livepeerAssetData?.status?.phase !== "ready" && (
@@ -134,7 +158,10 @@ export default function CreateThumbnail({
{
- handleComplete(thumbnailUri);
+ setSelectedThumbnail(thumbnailUri);
+ }}
+ onNFTConfigChange={(config: NFTConfig) => {
+ setNFTConfig(config);
}}
/>
diff --git a/components/Videos/Upload/CreateThumbnailForm.tsx b/components/Videos/Upload/CreateThumbnailForm.tsx
index d838424..a6002d9 100644
--- a/components/Videos/Upload/CreateThumbnailForm.tsx
+++ b/components/Videos/Upload/CreateThumbnailForm.tsx
@@ -33,12 +33,19 @@ interface FormValues {
selectedImage: string;
}
-type CreateThumbnailFormProps = {
+interface CreateThumbnailFormProps {
onSelectThumbnailImages: (imageUrl: string) => void;
-};
+ onNFTConfigChange?: (nftConfig: {
+ isMintable: boolean;
+ maxSupply: number;
+ price: number;
+ royaltyPercentage: number;
+ }) => void;
+}
const CreateThumbnailForm = ({
onSelectThumbnailImages,
+ onNFTConfigChange,
}: CreateThumbnailFormProps) => {
const {
handleSubmit,
@@ -112,9 +119,32 @@ const CreateThumbnailForm = ({
console.log("Updated imagesUrl state:", imagesUrl);
}, [imagesUrl]);
+ // Watch NFT config and notify parent on change
+ useEffect(() => {
+ if (!onNFTConfigChange) return;
+ const subscription = watch((value, { name }) => {
+ const config = value.nftConfig;
+ if (
+ (name === "nftConfig" || name?.startsWith("nftConfig.")) &&
+ config &&
+ typeof config.isMintable === "boolean" &&
+ typeof config.maxSupply === "number" &&
+ typeof config.price === "number" &&
+ typeof config.royaltyPercentage === "number"
+ )
+ onNFTConfigChange({
+ isMintable: config.isMintable,
+ maxSupply: config.maxSupply,
+ price: config.price,
+ royaltyPercentage: config.royaltyPercentage,
+ });
+ });
+ return () => subscription.unsubscribe();
+ }, [onNFTConfigChange, watch]);
+
const handleSelectionChange = (value: string) => {
setSelectedImage(value);
- onSelectThumbnailImages(value);
+ onSelectThumbnailImages(value); // Only update selection, do not trigger navigation
};
const radioValue = watch("selectedImage") ?? "";
@@ -183,6 +213,62 @@ const CreateThumbnailForm = ({
/>
{errors.prompt && {errors.prompt.message}
}
+ {/* Move Generate button and image results here */}
+
+
+ {errors["root"] && (
+
+ Sorry, we couldn’t generate your image from text. Please try
+ again.
+
+ )}
+
+ {/* Render Skeletons while loading */}
+ {loading ? (
+
+ {Array.from({ length: 4 }).map((_, idx) => (
+
+ ))}
+
+ ) : (
+ {
+ setValue("selectedImage", value);
+ handleSelectionChange(value);
+ }}
+ className="mt-4 grid grid-cols-2 gap-4 md:grid-cols-3 lg:grid-cols-4"
+ >
+ {imagesUrl.length === 0 && (
+
+ No images generated yet.
+
+ )}
+ {imagesUrl.map((img, idx) => (
+
+
+
+
+ ))}
+
+ )}
+
+ {/* NFT Configuration section moved below */}
NFT Configuration
@@ -277,57 +363,6 @@ const CreateThumbnailForm = ({
)}
-
-
-
- {errors["root"] && (
- {errors["root"].message}
- )}
-
- {/* Render Skeletons while loading */}
- {loading ? (
-
- {Array.from({ length: 4 }).map((_, idx) => (
-
- ))}
-
- ) : (
- {
- setValue("selectedImage", value);
- handleSelectionChange(value);
- }}
- className="mt-4 grid grid-cols-2 gap-4 md:grid-cols-3 lg:grid-cols-4"
- >
- {imagesUrl.length === 0 && (
-
- No images generated yet.
-
- )}
- {imagesUrl.map((img, idx) => (
-
-
-
-
- ))}
-
- )}
);
};
diff --git a/components/Videos/Upload/CreateThumbnailWrapper.tsx b/components/Videos/Upload/CreateThumbnailWrapper.tsx
index 7785d6d..101133c 100644
--- a/components/Videos/Upload/CreateThumbnailWrapper.tsx
+++ b/components/Videos/Upload/CreateThumbnailWrapper.tsx
@@ -1,6 +1,6 @@
-'use client';
+"use client";
-import CreateThumbnail from './Create-thumbnail';
+import CreateThumbnail from "./Create-thumbnail";
export default function CreateThumbnailWrapper(props: any) {
return ;
diff --git a/components/Videos/Upload/FileUpload.tsx b/components/Videos/Upload/FileUpload.tsx
index 947d1d5..2942472 100644
--- a/components/Videos/Upload/FileUpload.tsx
+++ b/components/Videos/Upload/FileUpload.tsx
@@ -2,7 +2,10 @@
import React, { useState } from "react";
import { toast } from "sonner";
import { CopyIcon } from "lucide-react";
-import { getLivepeerUploadUrl } from "@/app/api/livepeer/assetUploadActions";
+import {
+ getLivepeerUploadUrl,
+ getLivepeerAsset,
+} from "@/app/api/livepeer/assetUploadActions";
import * as tus from "tus-js-client";
import PreviewVideo from "./PreviewVideo";
import { useUser } from "@account-kit/react";
@@ -16,6 +19,7 @@ import {
import JsGoogleTranslateFree from "@kreisler/js-google-translate-free";
import { getLivepeerAudioToText } from "@/app/api/livepeer/audioToText";
import Link from "next/link";
+import { updateVideoAsset } from "@/services/video-assets";
const truncateUri = (uri: string): string => {
if (uri.length <= 30) return uri;
@@ -43,8 +47,7 @@ const translateText = async (
language: string
): Promise => {
try {
- const baseUrl =
- process.env.NEXT_PUBLIC_THIRDWEB_AUTH_DOMAIN || "http://localhost:3000";
+ const baseUrl = process.env.NEXT_PUBLIC_URL || "http://localhost:3000";
const res = await fetch(`${baseUrl}/api/livepeer/subtitles/translation`, {
method: "POST",
body: JSON.stringify({
@@ -129,6 +132,21 @@ async function translateSubtitles(data: {
);
}
+async function pollForMetadataUri(
+ assetId: string,
+ maxAttempts = 20,
+ interval = 5000
+) {
+ for (let attempt = 0; attempt < maxAttempts; attempt++) {
+ const asset = await getLivepeerAsset(assetId);
+ const metadataUri = asset?.storage?.ipfs?.nftMetadata?.url;
+ const isReady = asset?.status?.phase === "ready";
+ if (metadataUri && isReady) return metadataUri;
+ await new Promise((res) => setTimeout(res, interval));
+ }
+ throw new Error("Timed out waiting for metadata_uri");
+}
+
const FileUpload: React.FC = ({
onFileSelect,
onFileUploaded,
@@ -151,6 +169,7 @@ const FileUpload: React.FC = ({
useState(false);
const [livepeerAsset, setLivepeerAsset] = useState();
+ const [isPolling, setIsPolling] = useState(false);
const user = useUser();
const account = userToAccount(user);
@@ -263,6 +282,27 @@ const FileUpload: React.FC = ({
}
};
+ async function handlePostUploadDbUpdate(assetId: string, dbAssetId: number) {
+ setIsPolling(true);
+ try {
+ const metadataUri = await pollForMetadataUri(assetId);
+ await updateVideoAsset(dbAssetId, {
+ metadata_uri: metadataUri,
+ thumbnailUri: "", // update as needed
+ status: "ready",
+ max_supply: null,
+ price: null,
+ royalty_percentage: null,
+ });
+ toast.success("Database updated with metadata URI!");
+ } catch (err) {
+ toast.error("Failed to update database with metadata URI");
+ console.error(err);
+ } finally {
+ setIsPolling(false);
+ }
+ }
+
if (!account) {
return (
@@ -441,6 +481,12 @@ const FileUpload: React.FC = ({
)}
+
+ {isPolling && (
+
+ Processing video and syncing metadata...
+
+ )}
);
diff --git a/components/Videos/Upload/index.tsx b/components/Videos/Upload/index.tsx
index 1259ea8..f15c391 100644
--- a/components/Videos/Upload/index.tsx
+++ b/components/Videos/Upload/index.tsx
@@ -6,11 +6,10 @@ import { useRouter } from "next/navigation";
import { FaExclamationTriangle } from "react-icons/fa";
import { toast } from "sonner";
-import { useAccount } from "@account-kit/react";
import { Asset } from "livepeer/models/components";
import { StepperFormValues } from "@/lib/types/hook-stepper";
-import { useOrbisContext } from "@/lib/sdk/orbisDB/context";
+// import { useOrbisContext } from "@/lib/sdk/orbisDB/context";
import StepperIndicator from "@/components/Videos/Upload/Stepper-Indicator";
import FileUpload from "@/components/Videos/Upload/FileUpload";
import CreateInfo from "@/components/Videos/Upload/Create-info";
@@ -21,15 +20,15 @@ import {
AssetMetadata,
createAssetMetadata,
} from "@/lib/sdk/orbisDB/models/AssetMetadata";
-import { stack } from "@/lib/sdk/stack/stackClient";
-import { db } from "@/lib/sdk/orbisDB/client";
import {
updateVideoAssetMintingStatus,
updateVideoAsset,
} from "@/services/video-assets";
import { createVideoAsset } from "@/services/video-assets";
import type { VideoAsset } from "@/lib/types/video-asset";
-import { useUniversalAccount } from "@/lib/hooks/accountkit/useUniversalAccount";
+// import { useUniversalAccount } from "@/lib/hooks/accountkit/useUniversalAccount";
+import { useSmartAccountClient } from "@account-kit/react";
+import { getLivepeerAsset } from "@/app/api/livepeer/assetUploadActions";
const HookMultiStepForm = () => {
const [activeStep, setActiveStep] = useState(1);
@@ -45,9 +44,9 @@ const HookMultiStepForm = () => {
const [thumbnailUri, setThumbnailUri] = useState();
const [dbAssetId, setDbAssetId] = useState(null);
const [videoAsset, setVideoAsset] = useState(null);
- const { isConnected } = useOrbisContext();
- const { address, type, loading } = useUniversalAccount();
+ // const { address, type, loading } = useUniversalAccount();
+ const { address } = useSmartAccountClient({});
const router = useRouter();
@@ -147,10 +146,10 @@ const HookMultiStepForm = () => {
}) => {
setThumbnailUri(data.thumbnailUri);
+ // Ensure all required data is present
if (!livepeerAsset || !metadata) {
- throw new Error(
- "Error saving assetMetadata: Missing asset metadata"
- );
+ toast.error("Missing asset metadata. Please try again.");
+ return;
}
if (!address) {
@@ -159,25 +158,30 @@ const HookMultiStepForm = () => {
}
try {
- // Update the video asset with thumbnail and NFT config using videoAsset.id
+ // Fetch the latest Livepeer asset to get the most up-to-date metadata_uri
+ const latestAsset = await getLivepeerAsset(livepeerAsset.id);
+ // --- PUBLISH LOGIC ---
+ // This will set the video asset status to 'published' (or 'mintable' if NFT minting is enabled)
await updateVideoAsset(videoAsset?.id as number, {
thumbnailUri: data.thumbnailUri,
status: data.nftConfig?.isMintable ? "mintable" : "published",
max_supply: data.nftConfig?.maxSupply || null,
price: data.nftConfig?.price || null,
royalty_percentage: data.nftConfig?.royaltyPercentage || null,
+ metadata_uri:
+ latestAsset?.storage?.ipfs?.nftMetadata?.url || null,
});
// Award points for uploading a video
- await stack.track("video_upload", {
- account: address,
- points: 10,
- });
-
- const points = await stack.getPoints(address as string);
- toast.success("Video uploaded successfully!", {
- description: `You earned 10 points! Your total balance is now ${points} points.`,
- });
+ // await stack.track("video_upload", {
+ // account: address,
+ // points: 10,
+ // });
+
+ // const points = await stack.getPoints(address as string);
+ // toast.success("Video uploaded and published successfully!", {
+ // description: `You earned 10 points! Your total balance is now ${points} points.`,
+ // });
router.push("/discover");
} catch (error) {
diff --git a/components/account-dropdown/AccountDropdown.tsx b/components/account-dropdown/AccountDropdown.tsx
index 807264f..469463a 100644
--- a/components/account-dropdown/AccountDropdown.tsx
+++ b/components/account-dropdown/AccountDropdown.tsx
@@ -73,7 +73,7 @@ import {
DialogClose,
DialogDescription,
} from "@/components/ui/dialog";
-import WertButton from "@/components/wallet/buy/fund-button";
+import WertFundButton from "@/components/wallet/buy/wert-fund-button";
import { LoginButton } from "@/components/auth/LoginButton";
import useModularAccount from "@/lib/hooks/accountkit/useModularAccount";
import { TokenBalance } from "@/components/wallet/balance/TokenBalance";
@@ -537,7 +537,7 @@ export function AccountDropdown() {
Purchase crypto directly to your wallet.
-
+
);
@@ -900,6 +900,31 @@ export function AccountDropdown() {
+ {/* Wallet Actions Section */}
+
+
Wallet Actions
+
handleActionClick("buy")}
+ className="w-full flex items-center cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors p-3 md:p-2"
+ >
+ Buy
+
+
handleActionClick("send")}
+ className="w-full flex items-center cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors p-3 md:p-2"
+ >
+ Send
+
+
handleActionClick("swap")}
+ className="w-full flex items-center cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors p-3 md:p-2"
+ >
+ Swap
+
+
+
+
+
{/* Member Access Links */}
{isVerified && hasMembership && (
<>
diff --git a/components/wallet/buy/cdp-fund-button.tsx b/components/wallet/buy/cdp-fund-button.tsx
new file mode 100644
index 0000000..47c1746
--- /dev/null
+++ b/components/wallet/buy/cdp-fund-button.tsx
@@ -0,0 +1,46 @@
+import { Button } from "@/components/ui/button";
+import { getOnrampBuyUrl } from "@coinbase/onchainkit/fund";
+import { useSmartAccountClient } from "@account-kit/react";
+import { useState } from "react";
+
+function CdpFundButton() {
+ const { address } = useSmartAccountClient({});
+ const [isLoading, setIsLoading] = useState(false);
+
+ async function handleFund() {
+ if (!address) return;
+
+ setIsLoading(true);
+ // Fetch session token from your backend
+ const res = await fetch("/api/coinbase/session-token", {
+ method: "POST",
+ headers: { "Content-Type": "application/json" },
+ body: JSON.stringify({ address, assets: ["USDC"] }),
+ });
+ const { sessionToken } = await res.json();
+ setIsLoading(false);
+
+ if (!sessionToken) {
+ alert("Failed to get session token");
+ return;
+ }
+
+ // Generate the Onramp URL with the sessionToken
+ const onrampBuyUrl = getOnrampBuyUrl({
+ sessionToken,
+ presetFiatAmount: 30,
+ fiatCurrency: "USD",
+ redirectUrl: "https://tv.creativeplatform.xyz",
+ });
+
+ window.open(onrampBuyUrl, "_blank");
+ }
+
+ return (
+
+ );
+}
+
+export default CdpFundButton;
diff --git a/components/wallet/buy/fund-button.tsx b/components/wallet/buy/fund-button.tsx
deleted file mode 100644
index 3d1c604..0000000
--- a/components/wallet/buy/fund-button.tsx
+++ /dev/null
@@ -1,53 +0,0 @@
-import React from "react";
-import { Button } from "@/components/ui/button";
-import { useWertWidget } from "@wert-io/module-react-component";
-import type {
- GeneralOptions,
- ReactiveOptions,
-} from "@wert-io/module-react-component";
-
-/*
- In this example we initialize a simple crypto purchase.
- If you are looking for the full documentation or the smart contract example,
- please refer to https://www.npmjs.com/package/@wert-io/module-react-component
-*/
-
-interface WertButtonProps {
- onClose?: () => void;
-}
-
-const WertButton: React.FC = ({ onClose }) => {
- // Here goes the list of all static options. This object is then passed to the open() method
- const options: GeneralOptions = {
- partner_id: "01FGKYK638SV618KZHAVEY7P79",
- origin: "https://sandbox.wert.io", // this option needed only in sandbox
- commodity: "ETH",
- network: "base_sepolia",
- };
- // The reactive options - listeners and theme-related parameters - are passed to the useWertWidget() hook
- const [reactiveOptions] = React.useState({
- listeners: {
- loaded: () => {
- console.log("loaded");
- onClose?.();
- },
- },
- });
-
- const { open } = useWertWidget(reactiveOptions);
-
- return (
-
- );
-};
-
-export default WertButton;
diff --git a/components/wallet/buy/wert-fund-button.tsx b/components/wallet/buy/wert-fund-button.tsx
new file mode 100644
index 0000000..0fd32d2
--- /dev/null
+++ b/components/wallet/buy/wert-fund-button.tsx
@@ -0,0 +1,113 @@
+import { useState } from "react";
+import { useWertWidget } from "@wert-io/module-react-component";
+import type {
+ GeneralOptions,
+ ReactiveOptions,
+} from "@wert-io/module-react-component";
+import {
+ useSigner,
+ useBundlerClient,
+ useSmartAccountClient,
+ useUser,
+ useSignerStatus,
+ useAuthenticate,
+} from "@account-kit/react";
+import { AlchemyWebSigner } from "@account-kit/signer";
+import { Button } from "@/components/ui/button";
+import { v4 as uuidv4 } from "uuid";
+
+/*
+ In this example we initialize a simple crypto purchase.
+ If you are looking for the full documentation or the smart contract example,
+ please refer to https://www.npmjs.com/package/@wert-io/module-react-component
+*/
+
+function WertFundButton() {
+ const signer: AlchemyWebSigner | null = useSigner();
+ const bundlerClient = useBundlerClient();
+ const user = useUser();
+ const { address } = useSmartAccountClient({});
+ const [reactiveOptions] = useState({
+ theme: "dark",
+ listeners: {
+ loaded: () => console.log("loaded"),
+ },
+ });
+ const { open: openWertWidget, isWidgetOpen } = useWertWidget(reactiveOptions);
+ const signerStatus = useSignerStatus();
+ const { authenticateAsync, isPending: isAuthPending } = useAuthenticate();
+ const [error, setError] = useState(null);
+
+ async function handleDeposit() {
+ setError(null);
+ if (!signer || !address) return;
+
+ // Check authentication status
+ if (!signerStatus.isConnected) {
+ try {
+ await authenticateAsync({
+ type: "oauth",
+ authProviderId: "email",
+ isCustomProvider: true,
+ mode: "popup",
+ });
+ } catch (err) {
+ setError("Authentication failed. Please try again.");
+ return;
+ }
+ // Optionally, re-check isConnected here if needed
+ if (!signerStatus.isConnected) {
+ setError("Authentication failed. Please try again.");
+ return;
+ }
+ }
+
+ const chainId = 8453;
+ const nonce = await bundlerClient.getTransactionCount({ address });
+
+ const signed = await signer.signAuthorization({
+ address,
+ chainId,
+ nonce,
+ });
+
+ // Concatenate r, s, v to form the signature string
+ // v is a bigint, so convert to hex and pad if needed
+ const vHex = Number(signed.v).toString(16).padStart(2, "0");
+ const signature = `${signed.r}${signed.s}${vHex}`;
+
+ const options: GeneralOptions = {
+ partner_id: "01HSD48HCYJH2SNT65S5A0JYPP",
+ address,
+ network: "base",
+ commodity: "usdc",
+ commodities: JSON.stringify([
+ {
+ commodity: "USDC",
+ network: "base",
+ },
+ {
+ commodity: "ETH",
+ network: "base",
+ },
+ ]),
+ click_id: uuidv4(),
+ email: user?.email,
+ origin: "https://widget.wert.io",
+ signature,
+ };
+ openWertWidget({ options });
+ console.log(isWidgetOpen);
+ }
+
+ return (
+
+
+ {error && {error}}
+
+ );
+}
+
+export default WertFundButton;
diff --git a/lib/apollo-server-client.ts b/lib/apollo-server-client.ts
index e7ad9d2..1404ef7 100644
--- a/lib/apollo-server-client.ts
+++ b/lib/apollo-server-client.ts
@@ -1,13 +1,13 @@
import { ApolloClient, InMemoryCache, HttpLink } from "@apollo/client";
export function makeServerClient() {
- if (!process.env.NEXT_PUBLIC_API_URL)
- throw new Error("NEXT_PUBLIC_API_URL is not defined");
+ if (!process.env.NEXT_PUBLIC_SNAPSHOT_API_URL)
+ throw new Error("Snapshot URL is not defined");
return new ApolloClient({
ssrMode: true,
link: new HttpLink({
- uri: `${process.env.NEXT_PUBLIC_API_URL}/graphql`,
+ uri: `${process.env.NEXT_PUBLIC_SNAPSHOT_API_URL}/graphql`,
fetch,
}),
cache: new InMemoryCache(),
diff --git a/lib/contracts/Unlock.json b/lib/contracts/Unlock.json
index 2486f83..3acd7ec 100644
--- a/lib/contracts/Unlock.json
+++ b/lib/contracts/Unlock.json
@@ -1,5 +1,4 @@
{
- "address": "0xC9bdfA5f177961D96F137C42241e8EcBCa605781",
"abi": [
{
"inputs": [],
diff --git a/lib/sdk/stack/stackClient.ts b/lib/sdk/stack/stackClient.ts
index 34e9d29..230b369 100644
--- a/lib/sdk/stack/stackClient.ts
+++ b/lib/sdk/stack/stackClient.ts
@@ -1,5 +1,4 @@
import { StackClient } from "@stackso/js-core";
-import crypto from "crypto";
// Initialize the client with custom event ID generation
export const stack = new StackClient({
diff --git a/mini-app b/mini-app
deleted file mode 160000
index cf9ff7c..0000000
--- a/mini-app
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit cf9ff7c4369cd352180e5f3e92763ca16d9e15eb
diff --git a/package.json b/package.json
index d49b873..9ff1bd6 100644
--- a/package.json
+++ b/package.json
@@ -11,15 +11,16 @@
"knip": "knip"
},
"dependencies": {
- "@aa-sdk/core": "^4.14.0",
- "@aa-sdk/ethers": "^4.27.0",
- "@account-kit/core": "^4.9.0",
- "@account-kit/infra": "^4.34.0",
- "@account-kit/react": "^4.34.0",
- "@account-kit/signer": "^4.14.0",
- "@account-kit/smart-contracts": "^4.34.0",
+ "@aa-sdk/core": "^4.35.0",
+ "@aa-sdk/ethers": "^4.35.0",
+ "@account-kit/core": "^4.35.0",
+ "@account-kit/infra": "^4.35.0",
+ "@account-kit/react": "^4.35.0",
+ "@account-kit/signer": "^4.35.0",
+ "@account-kit/smart-contracts": "^4.35.0",
"@apollo/client": "^3.13.8",
"@apollo/client-integration-nextjs": "^0.12.2",
+ "@coinbase/onchainkit": "^0.38.13",
"@hookform/resolvers": "^5.0.1",
"@kreisler/js-google-translate-free": "^4.0.2",
"@livepeer/ai": "^0.6.2",
diff --git a/public/sw.js b/public/sw.js
index 94b6da3..dd8dfb7 100644
--- a/public/sw.js
+++ b/public/sw.js
@@ -1 +1 @@
-if(!self.define){let e,s={};const a=(a,c)=>(a=new URL(a+".js",c).href,s[a]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=a,e.onload=s,document.head.appendChild(e)}else e=a,importScripts(a),s()})).then((()=>{let e=s[a];if(!e)throw new Error(`Module ${a} didn’t register its module`);return e})));self.define=(c,i)=>{const n=e||("document"in self?document.currentScript.src:"")||location.href;if(s[n])return;let t={};const d=e=>a(e,n),r={module:{uri:n},exports:t,require:d};s[n]=Promise.all(c.map((e=>r[e]||d(e)))).then((e=>(i(...e),t)))}}define(["./workbox-1bb06f5e"],(function(e){"use strict";importScripts(),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"/_next/app-build-manifest.json",revision:"bceb0bf3e9cf9a61158cbc6c474a5f83"},{url:"/_next/static/Oc7CFjT-NddJ6Hahxxk7P/_buildManifest.js",revision:"3e2d62a10f4d6bf0b92e14aecf7836f4"},{url:"/_next/static/Oc7CFjT-NddJ6Hahxxk7P/_ssgManifest.js",revision:"b6652df95db52feb4daf4eca35380933"},{url:"/_next/static/chunks/0e5ce63c-89bf21b6bb4817fa.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/140-3deb040394406004.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/1452-adab6f2c9f637731.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/1487-0b949ef26142c6bb.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/1621-72fba0a46fe92096.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/1712-6a88fcfeca2bec3f.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/1888-3f8023bf401b254a.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/2107-8eb50e5a294d1464.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/2186.90107d68554810f9.js",revision:"90107d68554810f9"},{url:"/_next/static/chunks/2484.aebe5fb3bdd24122.js",revision:"aebe5fb3bdd24122"},{url:"/_next/static/chunks/2675-fab211fa6462da9e.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/2810-f88093e83e218024.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/2975-efbb333baf0a5af4.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/3047-5ed7604e6cb814b3.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/3910-d64501bfcafac963.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/3a91511d-3cc8f95538cc21c7.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/3d436824-15210b0281bf4670.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/410-a8b0b71c6076eae4.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/4116-317ee3d0cd5c5bd8.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/4334-f61a371dc89dac96.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/4791.6b1661f9a840f5b2.js",revision:"6b1661f9a840f5b2"},{url:"/_next/static/chunks/4854.73fcfadba8caabeb.js",revision:"73fcfadba8caabeb"},{url:"/_next/static/chunks/4861-540b368ba895a446.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/5026.ed0a3890fd0b8030.js",revision:"ed0a3890fd0b8030"},{url:"/_next/static/chunks/5192-33af298c335e6e65.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/5193-0738ee030eaf6928.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/5306-49fdb9fee3cb13af.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/5414-ee8498965c9b5eb1.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/5459-37282f994bbf6749.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/5979-c7644bb499394c7e.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/6135-0dd487fcf711bd31.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/6226-9d4fad1fc1cacd91.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/6261-74904edf61874c80.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/6648-d2e0ad2627c29d75.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/6768-ff0d0925aa400ceb.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/6951-c6173da58a93efb4.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/6993-8b9dee7f1c61fc9d.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/7023-a067368a9e4a307d.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/7078-af8c8d0ee6654447.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/7138-a7292227b3a56441.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/7320-9eb2f8266fc83021.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/7550.4ba51e3d0190ed65.js",revision:"4ba51e3d0190ed65"},{url:"/_next/static/chunks/7627-8574abfd14523d70.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/775ca1a0.09645cdbd722e1d6.js",revision:"09645cdbd722e1d6"},{url:"/_next/static/chunks/7776-6cd57728c4e7d6fe.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/7852-f41e162bbb7e6e8d.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/8434.8a06709d93119b8f.js",revision:"8a06709d93119b8f"},{url:"/_next/static/chunks/8772.f3ae0c14b00e84cf.js",revision:"f3ae0c14b00e84cf"},{url:"/_next/static/chunks/8877-786b00b170490245.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/8e1d74a4-68a3cbefe0c23d64.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/9149-8e9f36e22372eaf2.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/947-d1641a048c8d2b88.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/9728-c39d19faa4799a7e.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/a4634e51-4a76e72501d55b52.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/aaea2bcf-45c601d73a123aa1.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/ajs-destination.216a4f121de6d6a9.js",revision:"216a4f121de6d6a9"},{url:"/_next/static/chunks/app/_not-found/page-a3ff1ee78f350a07.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/clips/page-196f1a1526947b25.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/discover/%5Bid%5D/page-bf86a9fd0db204e6.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/discover/loading-cde03269a637e787.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/discover/page-b0cfd2c2155a9456.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/layout-21d4c9da3b650ecf.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/leaderboard/page-a98de3cfe26a3caf.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/live/%5Baddress%5D/page-1f456021c20fda4c.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/live/page-e73990ef3eb98005.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/page-b162b687e9708b4b.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/profile/%5Baddress%5D/%5Bid%5D/page-4f41f2057e9082aa.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/profile/%5Baddress%5D/page-ef91c0d0851b04c4.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/profile/page-dc0237cf9266f807.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/send/page-1995b0e133887491.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/upload/page-b75ca92480e8ddd7.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/vote/%5Bid%5D/page-4aa37157d65723fc.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/vote/create/page-e22b7fa1ef4e9dfd.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/app/vote/page-b4fbb8bc2387408f.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/auto-track.542968b9d0ae13c6.js",revision:"542968b9d0ae13c6"},{url:"/_next/static/chunks/d09ec4ee-135459f10d7ffa46.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/fd9d1056-c18f18d28f8dea9d.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/framework-8e0e0f4a6b83a956.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/legacyVideos.ada78047db966e3b.js",revision:"ada78047db966e3b"},{url:"/_next/static/chunks/main-app-ae5105ac8c595dbb.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/main-e8082d739c0c36ae.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/pages/_app-f870474a17b7f2fd.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/pages/_error-c66a4e8afc46f17b.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js",revision:"79330112775102f91e1010318bae2bd3"},{url:"/_next/static/chunks/queryString.724e57bfa30441fc.js",revision:"724e57bfa30441fc"},{url:"/_next/static/chunks/remoteMiddleware.e3d85592b7492036.js",revision:"e3d85592b7492036"},{url:"/_next/static/chunks/schemaFilter.1dfbabdfa27e2066.js",revision:"1dfbabdfa27e2066"},{url:"/_next/static/chunks/tsub-middleware.c6740e2ee49e18a7.js",revision:"c6740e2ee49e18a7"},{url:"/_next/static/chunks/webpack-e120c2728e3b8f07.js",revision:"Oc7CFjT-NddJ6Hahxxk7P"},{url:"/_next/static/css/07aa7b9cfb326cf7.css",revision:"07aa7b9cfb326cf7"},{url:"/_next/static/css/8522623149c9bfb4.css",revision:"8522623149c9bfb4"},{url:"/_next/static/media/26a46d62cd723877-s.woff2",revision:"befd9c0fdfa3d8a645d5f95717ed6420"},{url:"/_next/static/media/55c55f0601d81cf3-s.woff2",revision:"43828e14271c77b87e3ed582dbff9f74"},{url:"/_next/static/media/581909926a08bbc8-s.woff2",revision:"f0b86e7c24f455280b8df606b89af891"},{url:"/_next/static/media/6d93bde91c0c2823-s.woff2",revision:"621a07228c8ccbfd647918f1021b4868"},{url:"/_next/static/media/97e0cb1ae144a2a9-s.woff2",revision:"e360c61c5bd8d90639fd4503c829c2dc"},{url:"/_next/static/media/a34f9d1faa5f3315-s.p.woff2",revision:"d4fe31e6a2aebc06b8d6e558c9141119"},{url:"/_next/static/media/df0a9ae256c0569c-s.woff2",revision:"d54db44de5ccb18886ece2fda72bdfe0"},{url:"/creative.svg",revision:"6201706f33410589d6fd3c0e58c449a3"},{url:"/fonts/ConthraxSb-Regular.otf",revision:"a2293644ad4af500ed5c675788cc4754"},{url:"/icons/CreativeTV_blur-192x192.png",revision:"a1ed3bd73b35206c1f2a56d6bcc54f0c"},{url:"/icons/CreativeTV_blur-512x512.png",revision:"818e91b75ac709ffdf7138034679870b"},{url:"/images/Creative_TV_Logo.png",revision:"8e1ffd092c25d1758ee3947385a83bd0"},{url:"/images/chains/base-sepolia.svg",revision:"67d4b0ea99bc06806dfc1cde1c61a187"},{url:"/images/chains/base.svg",revision:"92548ad75c2f998e4664b732126c9a96"},{url:"/images/chains/default-chain.svg",revision:"352f3d9f5d5403defbcee72a8f1fb0c6"},{url:"/images/chains/optimism.svg",revision:"7977e5ca5ef72b05333db751ae1289a9"},{url:"/images/chains/polygon.svg",revision:"3ef4ef741bdabcb75ec71cf121603844"},{url:"/images/creative-banner.png",revision:"08281b93c0aac1929dcc795d3e7f0385"},{url:"/images/logo-tv.gif",revision:"38eace9fa91a7923cd64352a77569427"},{url:"/manifest.json",revision:"d5c63343b2a4595e345eb31a4c20d2bb"}],{ignoreURLParametersMatching:[]}),e.cleanupOutdatedCaches(),e.registerRoute("/",new e.NetworkFirst({cacheName:"start-url",plugins:[{cacheWillUpdate:async({request:e,response:s,event:a,state:c})=>s&&"opaqueredirect"===s.type?new Response(s.body,{status:200,statusText:"OK",headers:s.headers}):s}]}),"GET"),e.registerRoute(/^https:\/\/fonts\.(?:gstatic)\.com\/.*/i,new e.CacheFirst({cacheName:"google-fonts-webfonts",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:31536e3})]}),"GET"),e.registerRoute(/^https:\/\/fonts\.(?:googleapis)\.com\/.*/i,new e.StaleWhileRevalidate({cacheName:"google-fonts-stylesheets",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),e.registerRoute(/\.(?:eot|otf|ttc|ttf|woff|woff2|font.css)$/i,new e.StaleWhileRevalidate({cacheName:"static-font-assets",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),e.registerRoute(/\.(?:jpg|jpeg|gif|png|svg|ico|webp)$/i,new e.StaleWhileRevalidate({cacheName:"static-image-assets",plugins:[new e.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\/_next\/image\?url=.+$/i,new e.StaleWhileRevalidate({cacheName:"next-image",plugins:[new e.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:mp3|wav|ogg)$/i,new e.CacheFirst({cacheName:"static-audio-assets",plugins:[new e.RangeRequestsPlugin,new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:mp4)$/i,new e.CacheFirst({cacheName:"static-video-assets",plugins:[new e.RangeRequestsPlugin,new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:js)$/i,new e.StaleWhileRevalidate({cacheName:"static-js-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:css|less)$/i,new e.StaleWhileRevalidate({cacheName:"static-style-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\/_next\/data\/.+\/.+\.json$/i,new e.StaleWhileRevalidate({cacheName:"next-data",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:json|xml|csv)$/i,new e.NetworkFirst({cacheName:"static-data-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>{if(!(self.origin===e.origin))return!1;const s=e.pathname;return!s.startsWith("/api/auth/")&&!!s.startsWith("/api/")}),new e.NetworkFirst({cacheName:"apis",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:16,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>{if(!(self.origin===e.origin))return!1;return!e.pathname.startsWith("/api/")}),new e.NetworkFirst({cacheName:"others",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>!(self.origin===e.origin)),new e.NetworkFirst({cacheName:"cross-origin",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:3600})]}),"GET")}));
+if(!self.define){let s,e={};const t=(t,a)=>(t=new URL(t+".js",a).href,e[t]||new Promise((e=>{if("document"in self){const s=document.createElement("script");s.src=t,s.onload=e,document.head.appendChild(s)}else s=t,importScripts(t),e()})).then((()=>{let s=e[t];if(!s)throw new Error(`Module ${t} didn’t register its module`);return s})));self.define=(a,i)=>{const c=s||("document"in self?document.currentScript.src:"")||location.href;if(e[c])return;let n={};const r=s=>t(s,c),o={module:{uri:c},exports:n,require:r};e[c]=Promise.all(a.map((s=>o[s]||r(s)))).then((s=>(i(...s),n)))}}define(["./workbox-1bb06f5e"],(function(s){"use strict";importScripts(),self.skipWaiting(),s.clientsClaim(),s.precacheAndRoute([{url:"/_next/app-build-manifest.json",revision:"c88721d9489f0525ca9640945f2b8461"},{url:"/_next/static/5BgBwpBt9msJCBobqmzSG/_buildManifest.js",revision:"3e2d62a10f4d6bf0b92e14aecf7836f4"},{url:"/_next/static/5BgBwpBt9msJCBobqmzSG/_ssgManifest.js",revision:"b6652df95db52feb4daf4eca35380933"},{url:"/_next/static/chunks/0e5ce63c-89bf21b6bb4817fa.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/1146-2774e3b25c055744.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/140-96bdf6f6ba916a66.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/1487-0b949ef26142c6bb.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/1501.dc01428625ed80c8.js",revision:"dc01428625ed80c8"},{url:"/_next/static/chunks/1621-72fba0a46fe92096.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/1918-ae3e0ba1b44fbee7.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/2186.90107d68554810f9.js",revision:"90107d68554810f9"},{url:"/_next/static/chunks/2334-0d359bbbee1a140d.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/2484.aebe5fb3bdd24122.js",revision:"aebe5fb3bdd24122"},{url:"/_next/static/chunks/2549-342fe41be6579c66.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/2675-63deb80cfcd04487.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/2975-efbb333baf0a5af4.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/3047-a206a2dbcd067855.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/314-deb274c692fda00a.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/3910-f86af41fa30657df.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/3a91511d-c13e2c716c4bd8f5.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/3d436824-65a9b29e8b7219d3.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/4035-9df0b1105090d86f.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/410-a8b0b71c6076eae4.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/4116-19c499f803c2a374.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/4791.a28a0c95ffdc54ee.js",revision:"a28a0c95ffdc54ee"},{url:"/_next/static/chunks/4854.73fcfadba8caabeb.js",revision:"73fcfadba8caabeb"},{url:"/_next/static/chunks/4861-540b368ba895a446.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/5025-d1535cd1d17af2d6.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/5026.ed0a3890fd0b8030.js",revision:"ed0a3890fd0b8030"},{url:"/_next/static/chunks/5093-c86c7f9cace3adb7.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/5192-6884b0510797a12d.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/5306-7820e8897d7590e2.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/5414-a702bca3175abc05.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/6226-e01131901a419f5e.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/6261-643779867972544d.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/6648-86b2ed8821cac141.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/6968-1c66b8b1cac914f0.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/6993-320e568e75cc5a92.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/7023-a067368a9e4a307d.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/7060-b5d1bf9c1517a038.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/7078-af8c8d0ee6654447.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/7138-a7292227b3a56441.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/722-3bc8a94a2924c1b1.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/7420.4cfa584cf9dfc438.js",revision:"4cfa584cf9dfc438"},{url:"/_next/static/chunks/7509-04119de616598660.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/775ca1a0.a3bc4bfce43a4afb.js",revision:"a3bc4bfce43a4afb"},{url:"/_next/static/chunks/7776-efd044fc3fec5ca3.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/7852-3fe8e92d60dd63c1.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/7966-f3bc8fba449775b1.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/8877-340dfbed5cdf499d.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/8e1d74a4-68a3cbefe0c23d64.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/9050.5622bf4bc74f0efc.js",revision:"5622bf4bc74f0efc"},{url:"/_next/static/chunks/9432-5fc1fc39129adfd6.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/947-f56f077b70b3b128.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/a4634e51-23f7f8d0e1db7368.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/aaea2bcf-45c601d73a123aa1.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/ajs-destination.216a4f121de6d6a9.js",revision:"216a4f121de6d6a9"},{url:"/_next/static/chunks/app/_not-found/page-a3ff1ee78f350a07.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/clips/page-ad0251473095d72c.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/discover/%5Bid%5D/page-d95b3b3c44bb318c.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/discover/loading-cde03269a637e787.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/discover/page-7dfd58daf35f3ff6.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/layout-d16b46a2c337c6e9.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/leaderboard/page-bb7f0a8697a6585d.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/live/%5Baddress%5D/page-806cd25376db3ee7.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/live/page-f5b7529c9cf01a39.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/page-3bde6803e3a4de66.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/profile/%5Baddress%5D/%5Bid%5D/page-4f41f2057e9082aa.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/profile/%5Baddress%5D/page-947328721d321816.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/profile/page-545348a1cc46b99e.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/send/page-ee2477bbdfcd1262.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/upload/%5Baddress%5D/page-573bd3126c8789dc.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/upload/page-150445f443fbc53e.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/vote/%5Bid%5D/page-9a24cc97bee63abc.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/vote/create/%5Baddress%5D/page-8cc544751e5afd0a.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/vote/create/page-3b6fe1d30007089c.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/app/vote/page-8d8fc9467c1ec856.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/auto-track.542968b9d0ae13c6.js",revision:"542968b9d0ae13c6"},{url:"/_next/static/chunks/b7c8da3e-3ec705574f771987.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/fd9d1056-c18f18d28f8dea9d.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/framework-8e0e0f4a6b83a956.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/legacyVideos.ada78047db966e3b.js",revision:"ada78047db966e3b"},{url:"/_next/static/chunks/main-02c65e3778d398a0.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/main-app-ae5105ac8c595dbb.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/pages/_app-f870474a17b7f2fd.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/pages/_error-c66a4e8afc46f17b.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js",revision:"79330112775102f91e1010318bae2bd3"},{url:"/_next/static/chunks/queryString.724e57bfa30441fc.js",revision:"724e57bfa30441fc"},{url:"/_next/static/chunks/remoteMiddleware.e3d85592b7492036.js",revision:"e3d85592b7492036"},{url:"/_next/static/chunks/schemaFilter.1dfbabdfa27e2066.js",revision:"1dfbabdfa27e2066"},{url:"/_next/static/chunks/tsub-middleware.c6740e2ee49e18a7.js",revision:"c6740e2ee49e18a7"},{url:"/_next/static/chunks/webpack-7aa5cdae35b4be66.js",revision:"5BgBwpBt9msJCBobqmzSG"},{url:"/_next/static/css/181a3455c236ff8b.css",revision:"181a3455c236ff8b"},{url:"/_next/static/css/8522623149c9bfb4.css",revision:"8522623149c9bfb4"},{url:"/_next/static/media/26a46d62cd723877-s.woff2",revision:"befd9c0fdfa3d8a645d5f95717ed6420"},{url:"/_next/static/media/55c55f0601d81cf3-s.woff2",revision:"43828e14271c77b87e3ed582dbff9f74"},{url:"/_next/static/media/581909926a08bbc8-s.woff2",revision:"f0b86e7c24f455280b8df606b89af891"},{url:"/_next/static/media/8e9860b6e62d6359-s.woff2",revision:"01ba6c2a184b8cba08b0d57167664d75"},{url:"/_next/static/media/97e0cb1ae144a2a9-s.woff2",revision:"e360c61c5bd8d90639fd4503c829c2dc"},{url:"/_next/static/media/df0a9ae256c0569c-s.woff2",revision:"d54db44de5ccb18886ece2fda72bdfe0"},{url:"/_next/static/media/e4af272ccee01ff0-s.p.woff2",revision:"65850a373e258f1c897a2b3d75eb74de"},{url:"/creative.svg",revision:"6201706f33410589d6fd3c0e58c449a3"},{url:"/fonts/ConthraxSb-Regular.otf",revision:"a2293644ad4af500ed5c675788cc4754"},{url:"/icons/CreativeTV_blur-192x192.png",revision:"a1ed3bd73b35206c1f2a56d6bcc54f0c"},{url:"/icons/CreativeTV_blur-512x512.png",revision:"818e91b75ac709ffdf7138034679870b"},{url:"/images/Creative_TV_Logo.png",revision:"8e1ffd092c25d1758ee3947385a83bd0"},{url:"/images/chains/base-sepolia.svg",revision:"67d4b0ea99bc06806dfc1cde1c61a187"},{url:"/images/chains/base.svg",revision:"92548ad75c2f998e4664b732126c9a96"},{url:"/images/chains/default-chain.svg",revision:"352f3d9f5d5403defbcee72a8f1fb0c6"},{url:"/images/chains/optimism.svg",revision:"7977e5ca5ef72b05333db751ae1289a9"},{url:"/images/chains/polygon.svg",revision:"3ef4ef741bdabcb75ec71cf121603844"},{url:"/images/creative-banner.png",revision:"08281b93c0aac1929dcc795d3e7f0385"},{url:"/images/logo-tv.gif",revision:"38eace9fa91a7923cd64352a77569427"},{url:"/manifest.json",revision:"d5c63343b2a4595e345eb31a4c20d2bb"}],{ignoreURLParametersMatching:[]}),s.cleanupOutdatedCaches(),s.registerRoute("/",new s.NetworkFirst({cacheName:"start-url",plugins:[{cacheWillUpdate:async({request:s,response:e,event:t,state:a})=>e&&"opaqueredirect"===e.type?new Response(e.body,{status:200,statusText:"OK",headers:e.headers}):e}]}),"GET"),s.registerRoute(/^https:\/\/fonts\.(?:gstatic)\.com\/.*/i,new s.CacheFirst({cacheName:"google-fonts-webfonts",plugins:[new s.ExpirationPlugin({maxEntries:4,maxAgeSeconds:31536e3})]}),"GET"),s.registerRoute(/^https:\/\/fonts\.(?:googleapis)\.com\/.*/i,new s.StaleWhileRevalidate({cacheName:"google-fonts-stylesheets",plugins:[new s.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),s.registerRoute(/\.(?:eot|otf|ttc|ttf|woff|woff2|font.css)$/i,new s.StaleWhileRevalidate({cacheName:"static-font-assets",plugins:[new s.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),s.registerRoute(/\.(?:jpg|jpeg|gif|png|svg|ico|webp)$/i,new s.StaleWhileRevalidate({cacheName:"static-image-assets",plugins:[new s.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),s.registerRoute(/\/_next\/image\?url=.+$/i,new s.StaleWhileRevalidate({cacheName:"next-image",plugins:[new s.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),s.registerRoute(/\.(?:mp3|wav|ogg)$/i,new s.CacheFirst({cacheName:"static-audio-assets",plugins:[new s.RangeRequestsPlugin,new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),s.registerRoute(/\.(?:mp4)$/i,new s.CacheFirst({cacheName:"static-video-assets",plugins:[new s.RangeRequestsPlugin,new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),s.registerRoute(/\.(?:js)$/i,new s.StaleWhileRevalidate({cacheName:"static-js-assets",plugins:[new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),s.registerRoute(/\.(?:css|less)$/i,new s.StaleWhileRevalidate({cacheName:"static-style-assets",plugins:[new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),s.registerRoute(/\/_next\/data\/.+\/.+\.json$/i,new s.StaleWhileRevalidate({cacheName:"next-data",plugins:[new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),s.registerRoute(/\.(?:json|xml|csv)$/i,new s.NetworkFirst({cacheName:"static-data-assets",plugins:[new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),s.registerRoute((({url:s})=>{if(!(self.origin===s.origin))return!1;const e=s.pathname;return!e.startsWith("/api/auth/")&&!!e.startsWith("/api/")}),new s.NetworkFirst({cacheName:"apis",networkTimeoutSeconds:10,plugins:[new s.ExpirationPlugin({maxEntries:16,maxAgeSeconds:86400})]}),"GET"),s.registerRoute((({url:s})=>{if(!(self.origin===s.origin))return!1;return!s.pathname.startsWith("/api/")}),new s.NetworkFirst({cacheName:"others",networkTimeoutSeconds:10,plugins:[new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),s.registerRoute((({url:s})=>!(self.origin===s.origin)),new s.NetworkFirst({cacheName:"cross-origin",networkTimeoutSeconds:10,plugins:[new s.ExpirationPlugin({maxEntries:32,maxAgeSeconds:3600})]}),"GET")}));
diff --git a/services/video-assets.ts b/services/video-assets.ts
index 3f9d8b7..9afa118 100644
--- a/services/video-assets.ts
+++ b/services/video-assets.ts
@@ -61,6 +61,7 @@ export async function updateVideoAsset(
max_supply: number | null;
price: number | null;
royalty_percentage: number | null;
+ metadata_uri?: string | null;
}
) {
const result = await sql`
@@ -70,7 +71,8 @@ export async function updateVideoAsset(
status = ${data.status},
max_supply = ${data.max_supply},
price = ${data.price},
- royalty_percentage = ${data.royalty_percentage}
+ royalty_percentage = ${data.royalty_percentage},
+ metadata_uri = ${data.metadata_uri}
WHERE id = ${id}
RETURNING *
`;
diff --git a/yarn.lock b/yarn.lock
index 2c7fe83..3ed9a7e 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,21 +2,21 @@
# yarn lockfile v1
-"@aa-sdk/core@^4.14.0", "@aa-sdk/core@^4.34.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@aa-sdk/core/-/core-4.34.0.tgz#d908d43f09d06c5a19f7022d4c8c14da906ee079"
- integrity sha512-rR2Ufg6zC0Weoe6mafRtWKOniPzEcgwRJTn9IO/VPcBuCkIYk+q8DOxGEX0iE+bWTnpv5DPwRDAMLWvEN5+FDw==
+"@aa-sdk/core@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@aa-sdk/core/-/core-4.35.0.tgz#ab32b0fee722b338eff7ad2d3ad1675b2711ff38"
+ integrity sha512-qqVJ9vWa1sVvbkFy2nsFJdwprPjgYm9UeDV6IloM/l6e6aI1PHcgdHhFgbu0WzM3hAb1tWDbzC6f2jQT3RU7ew==
dependencies:
abitype "^0.8.3"
eventemitter3 "^5.0.1"
zod "^3.22.4"
-"@aa-sdk/ethers@^4.27.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@aa-sdk/ethers/-/ethers-4.34.0.tgz#939fe0449ff2e3941ff5f402dc42869b6d7266b9"
- integrity sha512-9NDI7Ewh9++r2CQsQ3z4+enkPclRqzj7djQOwwDuLtTTV4rebeq800Oc/97kzjpbRclg/ZqbyNYk3YzxcHxJRg==
+"@aa-sdk/ethers@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@aa-sdk/ethers/-/ethers-4.35.0.tgz#63b144d4974bdb5bc8c29902ee02594011843057"
+ integrity sha512-FwqV6qjBQFKU8XZueDdu5iAtMA+VpvdhJqFtUkmwfpm5yWARzepD0nPs2i+/b29Ux+0bFkzIOJL3WTZILyzV5Q==
dependencies:
- "@aa-sdk/core" "^4.34.0"
+ "@aa-sdk/core" "^4.35.0"
"@ethersproject/abi" "^5.7.0"
"@ethersproject/abstract-signer" "^5.7.0"
"@ethersproject/bytes" "^5.7.0"
@@ -26,16 +26,16 @@
"@ethersproject/providers" "^5.7.2"
"@ethersproject/wallet" "^5.7.0"
-"@account-kit/core@^4.34.0", "@account-kit/core@^4.9.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@account-kit/core/-/core-4.34.0.tgz#c9f14b13b72d1ff77097a5ba55f223abbfbcda0e"
- integrity sha512-npBS28FzLrc3ky9jHBL8Kw6ZrvrK0yqIJa85xIPSwTHTDGehLCznKTLtjcKlJlcikSGylkazEjq1NFCRA9U7Dw==
+"@account-kit/core@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@account-kit/core/-/core-4.35.0.tgz#0bdabf1688e61dc268e4ab1a46e2ccdd00e4397e"
+ integrity sha512-Ohys+iAlnxJgGhC3RBENaF2pMwAv6FxFsiaJx3Fc7jaASCXQ+/KR/Ei5sQjhqp+Ed1xKVXBzS27E46ECSAvkhA==
dependencies:
- "@account-kit/infra" "^4.34.0"
- "@account-kit/logging" "^4.34.0"
- "@account-kit/react-native-signer" "^4.34.0"
- "@account-kit/signer" "^4.34.0"
- "@account-kit/smart-contracts" "^4.34.0"
+ "@account-kit/infra" "^4.35.0"
+ "@account-kit/logging" "^4.35.0"
+ "@account-kit/react-native-signer" "^4.35.0"
+ "@account-kit/signer" "^4.35.0"
+ "@account-kit/smart-contracts" "^4.35.0"
"@solana/web3.js" "^1.98.0"
js-cookie "^3.0.5"
zod "^3.22.4"
@@ -43,44 +43,44 @@
optionalDependencies:
alchemy-sdk "^3.0.0"
-"@account-kit/infra@^4.34.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@account-kit/infra/-/infra-4.34.0.tgz#fc136a50c085473b579f7a40c16770189816672f"
- integrity sha512-+zztS7ANg4qa0MYl9EuF3tto4U1zVyyWGHXIdY8QXlKobSAHQEhlUMo6jo3RZnz72FiGOoFfyI8j3PUErpjTpA==
+"@account-kit/infra@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@account-kit/infra/-/infra-4.35.0.tgz#f92ce6625702009e5f0eeb433bb7a47e53443222"
+ integrity sha512-kK2qWEi9077dnZwpNfXmWj+eJz4D44Mf4ijgwrcXjG7C1/tP/OM1kcllBPm2gh3fC3h+v49U6fCjHHj9LJ4SCw==
dependencies:
- "@aa-sdk/core" "^4.34.0"
- "@account-kit/logging" "^4.34.0"
+ "@aa-sdk/core" "^4.35.0"
+ "@account-kit/logging" "^4.35.0"
eventemitter3 "^5.0.1"
zod "^3.22.4"
optionalDependencies:
alchemy-sdk "^3.0.0"
-"@account-kit/logging@^4.34.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@account-kit/logging/-/logging-4.34.0.tgz#6fd2c1ea16f6ea462d9969e1425d5904420b2c12"
- integrity sha512-7ZZXdBOMMZdbjrYPsDDu91lo4z+YMdqHXMp58wbiBXmgZonI5OnbmWzfmdgC5RdxneZwRp6i4Rii7FGJF9jxwg==
+"@account-kit/logging@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@account-kit/logging/-/logging-4.35.0.tgz#d17f3676d431dc68008bad0f4776bc22bf33190f"
+ integrity sha512-D8VGw3y5W0dVxdo0BBzjZtHAGEVXImWKklrhcNcqppGd/12ENn00t5BI8vjRdzZFiUqor7E2176mA17B2QIZvg==
dependencies:
"@segment/analytics-next" "^1.74.0"
uuid "^11.0.2"
-"@account-kit/react-native-signer@^4.34.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@account-kit/react-native-signer/-/react-native-signer-4.34.0.tgz#f58ae711d6767dd21d5ed48407ff226f98f3ab79"
- integrity sha512-VchDAtyY3USyqU17ncVTcAHJJWZUp/7JqIWWPNts1NedxEmjfIvVVhn1JHeKEotyOjS0gAMLRZWQckORTLKJ/A==
+"@account-kit/react-native-signer@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@account-kit/react-native-signer/-/react-native-signer-4.35.0.tgz#f6c771a8177838045d8c23db5f4305ff79646495"
+ integrity sha512-aMQfWqTuSVaZtS7WDUTsFezNWrZFX1OEdqVS9hkXrdYHXZu6ienOzl885NjswXlZTsgnchB0v6BxbCUAFVfFoQ==
dependencies:
- "@aa-sdk/core" "^4.34.0"
- "@account-kit/signer" "^4.34.0"
+ "@aa-sdk/core" "^4.35.0"
+ "@account-kit/signer" "^4.35.0"
viem "^2.21.40"
-"@account-kit/react@^4.34.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@account-kit/react/-/react-4.34.0.tgz#5565f1404f0b1db6f44fbeee4b18b7eae7fa6c9d"
- integrity sha512-Bib6HAgSEJaoYTNc+WDpkfGE7XAS6YWH+/9XXpwm4g/2NiUoapnkOd1/pOL7BvLEEky7yT4bWohyJBeNMG1kRg==
+"@account-kit/react@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@account-kit/react/-/react-4.35.0.tgz#53769a64ea5ef21b11b972200699e9d01d710267"
+ integrity sha512-jxSenbHlpJ/PKWjtVFDIdCZhs2i30ShfjzY6MPF0o/D45MW9mYtwLbyVtG5RmArfxpNJGU/0UI4Axoj5kphJBQ==
dependencies:
- "@account-kit/core" "^4.34.0"
- "@account-kit/infra" "^4.34.0"
- "@account-kit/logging" "^4.34.0"
- "@account-kit/signer" "^4.34.0"
+ "@account-kit/core" "^4.35.0"
+ "@account-kit/infra" "^4.35.0"
+ "@account-kit/logging" "^4.35.0"
+ "@account-kit/signer" "^4.35.0"
"@solana/web3.js" "^1.98.0"
"@tanstack/react-form" "^0.33.0"
"@tanstack/zod-form-adapter" "^0.33.0"
@@ -93,13 +93,13 @@
optionalDependencies:
alchemy-sdk "^3.0.0"
-"@account-kit/signer@^4.14.0", "@account-kit/signer@^4.34.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@account-kit/signer/-/signer-4.34.0.tgz#730082466716d0513d71eb7379c2f16c8fdb0da7"
- integrity sha512-/6ABcw5AMjG7QzwCyJ5djoer+YGWCgIW4BVnKpVfbf2QcEO+7D5zMvZttlV1HSOCkuuS1fo+zl6ZdxSFjPVv1A==
+"@account-kit/signer@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@account-kit/signer/-/signer-4.35.0.tgz#4ffe9d52fe3983ac9204e7b0013cf98ee61bbcbd"
+ integrity sha512-tFvlrdDx/Vp6tltwJFZ4niAyVip9IlEoae2IUi56slo4bSJfvpxlGYC1PJJJ2jFsBYtZzWDCSR9NrbaF8TXcnw==
dependencies:
- "@aa-sdk/core" "^4.34.0"
- "@account-kit/logging" "^4.34.0"
+ "@aa-sdk/core" "^4.35.0"
+ "@account-kit/logging" "^4.35.0"
"@solana/web3.js" "^1.98.0"
"@turnkey/http" "^2.22.0"
"@turnkey/iframe-stamper" "^1.0.0"
@@ -110,13 +110,13 @@
zod "^3.22.4"
zustand "^5.0.0-rc.2"
-"@account-kit/smart-contracts@^4.34.0":
- version "4.34.0"
- resolved "https://registry.npmjs.org/@account-kit/smart-contracts/-/smart-contracts-4.34.0.tgz#e52eb4ce89b6f90eb13a8caa969d98eb4b8c79df"
- integrity sha512-Qu8zYv1BcWIMJHT0BevDDRlzlIwIFBfsn32n0HS1cg0gccGZHs8Qah2uBOswnjoYPmec8VUtoLHyuKf77wrWJQ==
+"@account-kit/smart-contracts@^4.35.0":
+ version "4.35.0"
+ resolved "https://registry.npmjs.org/@account-kit/smart-contracts/-/smart-contracts-4.35.0.tgz#c8e9737dca56d6db1a9bd43ebb707edd0eaff48a"
+ integrity sha512-+G8wwGJSVJuXNOJX9kMALTwFM/dOc0QqlXp8W5EB8Ou26TxDUmqE42lMh54OYIE1aW2ltKR8OH0Y7riCMrt2wQ==
dependencies:
- "@aa-sdk/core" "^4.34.0"
- "@account-kit/infra" "^4.34.0"
+ "@aa-sdk/core" "^4.35.0"
+ "@account-kit/infra" "^4.35.0"
"@adraffy/ens-normalize@1.10.0":
version "1.10.0"