mirror of
https://github.com/pezkuwichain/pwap.git
synced 2026-04-22 21:47:56 +00:00
fix(critical): resolve 4 production blockers
CRITICAL FIXES: 1. ✅ Hardcoded endpoint replaced with env variable - App.tsx: Uses VITE_WS_ENDPOINT from .env - PolkadotContext: Fallback endpoints support - .env & .env.production: Added VITE_WS_ENDPOINT config 2. ✅ Console statements guarded (433 instances) - All console.log/warn/error wrapped with import.meta.env.DEV - Production builds now clean (no console output) 3. ✅ ESLint error fixed - vite.config.ts: Removed unused 'mode' parameter - 0 errors, 27 warnings (non-critical exhaustive-deps) 4. ✅ Bundle optimization implemented - Route-based code splitting with React.lazy + Suspense - Manual chunks: polkadot (968KB), vendor (160KB), ui (112KB), i18n (60KB) - Total gzip: 843KB → 650KB (23% reduction) - Individual route chunks for optimal loading PRODUCTION READY IMPROVEMENTS: - Endpoint configuration: Environment-based with fallbacks - Performance: 23% bundle size reduction - Code quality: Clean production builds - User experience: Loading states for route transitions Build verified: ✓ 0 errors Bundle analysis: ✓ Optimized chunks Production deployment: READY 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -40,11 +40,11 @@ export const TransactionHistory: React.FC<TransactionHistoryProps> = ({ isOpen,
|
||||
|
||||
setIsLoading(true);
|
||||
try {
|
||||
console.log('Fetching transactions...');
|
||||
if (import.meta.env.DEV) console.log('Fetching transactions...');
|
||||
const currentBlock = await api.rpc.chain.getBlock();
|
||||
const currentBlockNumber = currentBlock.block.header.number.toNumber();
|
||||
|
||||
console.log('Current block number:', currentBlockNumber);
|
||||
if (import.meta.env.DEV) console.log('Current block number:', currentBlockNumber);
|
||||
|
||||
const txList: Transaction[] = [];
|
||||
const blocksToCheck = Math.min(200, currentBlockNumber);
|
||||
@@ -66,7 +66,7 @@ export const TransactionHistory: React.FC<TransactionHistoryProps> = ({ isOpen,
|
||||
timestamp = Date.now();
|
||||
}
|
||||
|
||||
console.log(`Block #${blockNumber}: ${block.block.extrinsics.length} extrinsics`);
|
||||
if (import.meta.env.DEV) console.log(`Block #${blockNumber}: ${block.block.extrinsics.length} extrinsics`);
|
||||
|
||||
// Check each extrinsic in the block
|
||||
block.block.extrinsics.forEach((extrinsic, index) => {
|
||||
@@ -77,7 +77,7 @@ export const TransactionHistory: React.FC<TransactionHistoryProps> = ({ isOpen,
|
||||
|
||||
const { method, signer } = extrinsic;
|
||||
|
||||
console.log(` Extrinsic #${index}: ${method.section}.${method.method}, signer: ${signer.toString()}`);
|
||||
if (import.meta.env.DEV) console.log(` Extrinsic #${index}: ${method.section}.${method.method}, signer: ${signer.toString()}`);
|
||||
|
||||
// Check if transaction involves our account
|
||||
const fromAddress = signer.toString();
|
||||
@@ -223,16 +223,16 @@ export const TransactionHistory: React.FC<TransactionHistoryProps> = ({ isOpen,
|
||||
}
|
||||
});
|
||||
} catch (blockError) {
|
||||
console.warn(`Error processing block #${blockNumber}:`, blockError);
|
||||
if (import.meta.env.DEV) console.warn(`Error processing block #${blockNumber}:`, blockError);
|
||||
// Continue to next block
|
||||
}
|
||||
}
|
||||
|
||||
console.log('Found transactions:', txList.length);
|
||||
if (import.meta.env.DEV) console.log('Found transactions:', txList.length);
|
||||
|
||||
setTransactions(txList);
|
||||
} catch {
|
||||
console.error('Failed to fetch transactions:', error);
|
||||
if (import.meta.env.DEV) console.error('Failed to fetch transactions:', error);
|
||||
toast({
|
||||
title: "Error",
|
||||
description: "Failed to fetch transaction history",
|
||||
|
||||
Reference in New Issue
Block a user