diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c58439c..b3b7088 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: "20" - name: Cache node modules uses: actions/cache@v4 @@ -122,24 +122,27 @@ jobs: run: cargo fmt --all -- --check continue-on-error: true - - name: Run clippy + - name: Build contracts working-directory: soroban-contract - run: cargo clippy --all-targets -- -D warnings + run: | + cargo build --release --target wasm32-unknown-unknown -p ticket_nft + cargo build --release --target wasm32-unknown-unknown -p tba_account + soroban contract build + + - name: Optimize contracts + working-directory: soroban-contract + run: soroban contract optimize --wasm target/wasm32-unknown-unknown/release/*.wasm continue-on-error: true - - name: Build contracts + - name: Run clippy working-directory: soroban-contract - run: soroban contract build + run: cargo clippy --all-targets -- -D warnings + continue-on-error: true - name: Run contract tests working-directory: soroban-contract run: cargo test --workspace - - name: Optimize contracts - working-directory: soroban-contract - run: soroban contract optimize --wasm target/wasm32-unknown-unknown/release/*.wasm - continue-on-error: true - integration: name: Integration Tests runs-on: ubuntu-latest @@ -153,7 +156,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: "20" - name: Install Rust uses: dtolnay/rust-toolchain@stable @@ -179,4 +182,4 @@ jobs: - name: Run integration tests working-directory: soroban-client run: npm run test:integration --if-present - continue-on-error: true \ No newline at end of file + continue-on-error: true diff --git a/soroban-client/app/page.tsx b/soroban-client/app/page.tsx index 28db5e2..1bfb8dc 100644 --- a/soroban-client/app/page.tsx +++ b/soroban-client/app/page.tsx @@ -7,7 +7,7 @@ import PartnersSection from "../components/PartnersSection"; export default function Home() { return ( -
+
@@ -16,6 +16,6 @@ export default function Home() {
-
+ ); } diff --git a/soroban-client/contexts/WalletContext.tsx b/soroban-client/contexts/WalletContext.tsx index 1df8cb0..2789e7a 100644 --- a/soroban-client/contexts/WalletContext.tsx +++ b/soroban-client/contexts/WalletContext.tsx @@ -17,7 +17,12 @@ interface WalletContextType { const WalletContext = createContext(undefined); export const WalletProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => { - const [address, setAddress] = useState(null); + const [address, setAddress] = useState(() => { + if (typeof window !== 'undefined') { + return localStorage.getItem('wallet_address'); + } + return null; + }); const [isInstalled, setIsInstalled] = useState(false); useEffect(() => { @@ -59,13 +64,6 @@ export const WalletProvider: React.FC<{ children: React.ReactNode }> = ({ childr localStorage.removeItem('wallet_address'); }; - // Persist connection state across page navigation - useEffect(() => { - const savedAddress = localStorage.getItem('wallet_address'); - if (savedAddress) { - setAddress(savedAddress); - } - }, []); return (