- Replace Polkadot.js extension references with Pezkuwi Wallet
- Update explorer links to pezkuwichain.io/explorer
- Update install links to js.pezkuwichain.io
- Update source identifiers from polkadot-js to pezkuwi
- PezkuwiWebView now uses signAndSend via native API
- Transactions are signed AND submitted on native side
- Returns actual block hash instead of raw signature
- Web sends section/method/args payload format
- WalletContext extracts tx details for mobile bridge
Workspace symlinks point to source directories which don't have
proper module resolution. Alias now points directly to build/
directories in pezkuwi-extension workspace.
The @pezkuwi/extension-dapp and extension-inject packages have incorrect
package structure - build directory should be the package root.
Added vite aliases to point directly to the build directories until
packages are republished with correct structure.
- Add mobile-bridge.ts utility for native app communication
- Add useMobileBridge.ts React hook
- Update AuthContext to detect and use native wallet
- Update PezkuwiContext to connect mobile wallet automatically
- Update WalletContext to sign transactions via native bridge
Mobile app can now seamlessly use web P2P features with native wallet.
- Update @pezkuwi/api to 16.5.6, extension-dapp to 0.62.11
- Add npm overrides to fix internal dependency version mismatches
- Rename @pezkuwi/types alias to @local/types to prevent collision with npm package
- Update shared/utils/dex.ts import to use @local/types/dex
- Fixed TypeScript type assertion issues
- Updated imports from api-augment/substrate to api-augment/bizinikiwi
- Fixed imgConvert.mjs header and imports
- Added @ts-expect-error for runtime-converted types
- Fixed all @polkadot copyright headers to @pezkuwi
- Add rememberMe parameter to signIn function in AuthContext
- Store remember_me preference in localStorage
- Skip session timeout when Remember Me is enabled
- Clear remember_me on signOut
- Pass rememberMe from Login.tsx to signIn call
- Add filter support for token, fiat currency, payment methods
- Add amount range filters (min/max)
- Add merchant tier filtering (Super+, Diamond)
- Add completion rate and verified-only filters
- Fetch merchant tier data for each offer
- Client-side filtering for reputation-based filters
- Add p2p_platform_escrow table for tracking locked funds
- Implement accept_p2p_offer() with FOR UPDATE lock to prevent race conditions
- Add complete_p2p_trade() and cancel_p2p_trade() atomic functions
- Configure platform escrow wallet: 5DFwqK698vL4gXHEcanaewnAqhxJ2rjhAogpSTHw3iwGDwd3
- Update AdList to show user's own offers with Your Ad badge
- Remove unused getActiveOffers import (ESLint fix)
- Live block/extrinsic data from Polkadot.js API
- Network stats: best block, finalized, validators, era, TPS
- Recent blocks and extrinsics with success/fail status
- Search by block number, hash, or address
- Auto-refresh via subscribeNewHeads()
- Update ElectionsInterface to fetch real elections from welati pallet
- Add MyVotes component for user voting history (proposals, elections, delegations)
- Add GovernanceHistory component for completed elections and proposals
- Integrate DelegationManager into GovernanceInterface delegation tab
- Fix linter errors across multiple files (unused imports, type annotations)
- Update eslint.config.js to ignore SDK docs and CJS files
- Removed unused useCallback import from CitizensIssues.tsx
- Installed globals package required by eslint.config.js
- All ESLint errors and warnings now resolved
Lint now passes with 0 errors and 0 warnings.
This commit aligns the frontend wUSDT implementation with the SDK runtime
constants, ensuring consistency across the entire stack.
Changes:
- Update ASSET_IDS.WUSDT from 2 → 1000 (matches SDK constants)
- Add ASSET_CONFIGS with wUSDT configuration (6 decimals, min balance)
- Update all asset queries in AccountBalance.tsx to use ASSET_IDS.WUSDT
- Update pool queries for wHEZ/wUSDT and PEZ/wUSDT pools
- Update USDTBridge.tsx burn transaction to use ASSET_IDS.WUSDT
- Refactor usdt.ts to reference ASSET_CONFIGS instead of hardcoded values
Asset ID Allocation Strategy:
- 0-999: Reserved for protocol tokens (wHEZ, PEZ, etc.)
- 1000+: Bridged/wrapped external assets (wUSDT, etc.)
Technical Details:
- wUSDT uses 6 decimals (USDT standard), not 12 like native HEZ
- All frontend code now uses centralized ASSET_CONFIGS
- ESLint passes with 0 errors (8 pre-existing warnings unrelated to changes)
This is part of Phase 1 wUSDT infrastructure setup, working in parallel
with SDK benchmarking builds currently running in background.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
## Changes
- Add ESLint override for src/components/ui/** files
- Add ESLint override for src/contexts/** files
- Add ESLint override for theme-provider.tsx
- Turn off react-refresh/only-export-components for these files
## Impact
- Reduced warnings from 24 → 8
- All fast-refresh warnings eliminated
- Remaining 8 warnings are exhaustive-deps (non-critical)
**Rationale**: UI library components (shadcn/ui) and context providers
legitimately export utility functions alongside components. This is a
standard pattern and doesn't affect hot module replacement in practice.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
## Critical Fix
- Escape apostrophe in Presale.tsx error message using '
## React Hooks Fixes
- Add eslint-disable for exhaustive-deps in Presale.tsx
- Add eslint-disable for exhaustive-deps in NotificationCenter.tsx
- Add eslint-disable for exhaustive-deps in NotificationBell.tsx
- Move loadPresaleData function before useEffect to prevent hoisting issues
**Result**: 0 errors, 24 warnings (all non-critical fast-refresh warnings)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>