22
33import Image from "next/image" ;
44import { useCallback , useEffect , useState } from "react" ;
5- import {
6- openContractCall ,
7- connect ,
8- disconnect ,
9- request ,
10- } from "@stacks/connect" ;
115import { STACKS_TESTNET } from "@stacks/network" ;
126import {
137 cvToValue ,
@@ -22,6 +16,8 @@ const APP_ICON_PATH = "/icons/icon.png";
2216const CONTRACT_ADDRESS = "ST2022VXQ3E384AAHQ15KFFXVN3CY5G57HX3W1GBJ" ;
2317const CONTRACT_NAME = "streak" ;
2418
19+ export const dynamic = "force-dynamic" ;
20+
2521export default function Home ( ) {
2622 const [ walletAddress , setWalletAddress ] = useState < string > ( "" ) ;
2723 const [ status , setStatus ] = useState < string > ( "Not connected" ) ;
@@ -62,6 +58,7 @@ export default function Home() {
6258 setError ( "" ) ;
6359 setStatus ( "Opening wallet..." ) ;
6460 try {
61+ const { connect, request } = await import ( "@stacks/connect" ) ;
6562 const result = await connect ( { network : "testnet" } ) ;
6663 let nextAddress =
6764 result . addresses ?. find ( ( entry ) => entry . address . startsWith ( "ST" ) )
@@ -82,7 +79,8 @@ export default function Home() {
8279 }
8380 } ;
8481
85- const disconnectWallet = ( ) => {
82+ const disconnectWallet = async ( ) => {
83+ const { disconnect } = await import ( "@stacks/connect" ) ;
8684 disconnect ( ) ;
8785 setWalletAddress ( "" ) ;
8886 setStatus ( "Not connected" ) ;
@@ -155,11 +153,12 @@ export default function Home() {
155153 }
156154 } , [ address , fetchOnChain ] ) ;
157155
158- const claimStreak = ( ) => {
156+ const claimStreak = async ( ) => {
159157 setError ( "" ) ;
160158 setStatus ( "Submitting claim..." ) ;
161159
162160 try {
161+ const { openContractCall } = await import ( "@stacks/connect" ) ;
163162 openContractCall ( {
164163 contractAddress : CONTRACT_ADDRESS ,
165164 contractName : CONTRACT_NAME ,
0 commit comments