Create dedicated mock files for shared/lib modules and map them
in moduleNameMapper for reliable module resolution in CI.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Mock shared/lib/tiki, shared/lib/referral, and shared/lib/scores
modules which depend on @pezkuwi/api that's not installed in CI.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@polkadot/api and @pezkuwi/* packages are not installed in CI,
so jest.mock needs virtual: true to allow mocking without the
actual module being present.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Major fixes:
- Replace `any` types with proper TypeScript types across all files
- Convert require() imports to ES module imports
- Add __DEV__ guards to console statements
- Escape special characters in JSX (' and ")
- Fix unused variables (prefix with _ or remove)
- Fix React hooks violations (useCallback, useMemo patterns)
- Convert wasm-crypto-shim.js to TypeScript
- Add eslint-disable comments for valid setState patterns
Files affected: 50+ screens, components, contexts, and services
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
HEZ Logo:
- Three colored rings (Red, Yellow, Green)
- Two mountains with rising sun
- HEZ text at bottom
PEZ Logo:
- 6 ovals (alternating red/green)
- Sun rays in center
- Stylized Pezkuwi head
- Changed referral link from fake pezkuwi.app to pezkuwichain.io/app
- Updated deep link scheme to pezkuwichain://
- Updated share message with correct branding and Kurdish text
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- BottomTabNavigator uses HomeStackNavigator for Home tab
- HomeStackNavigator has all screens from Dashboard with headers
- SimpleHeader with back button for all screens except Dashboard
- Kurdish titles (Cîzdan, Nasname, Meclîs, Dadwerî, etc.)
- Bottom tabs stay visible when navigating from Dashboard
- Enable SimpleHeader with back button for all 27+ screens
- Fix Connect Wallet: check if accounts exist, navigate to WalletSetup if not
- Use Kurdish (Kurmanci) for alert messages instead of Turkish
- DashboardScreen: use handleConnectWallet with proper logic
- AppsScreen: same connect wallet logic as ReferralScreen
- DashboardScreen: Add Connect Wallet button near Finance section
- DashboardScreen: Replace all alert popups with proper navigation
- AppsScreen: Use real connectWallet from PezkuwiContext
- AppsScreen: Add missing form fields (phone, domain, github)
- AppsScreen: Show Connected badge when wallet connected
- Add 13 new placeholder screens with back button headers:
Assembly, Bank, Certificates, Events, Help, Justice,
Music, Polls, Research, University, VPN, WhatsKURD
- Update AppNavigator with all new screen routes
- Redesign AppsScreen with MiniApps Store:
- Search bar for app discovery
- Horizontal scrolling categories
- Build on Pezkuwichain section with submission form
- Professional submission modal
- Featured apps section
- Add screen registrations to AppNavigator (P2P, Forum, TaxZekat,
Launchpad, President, Vote, Validators, Proposals, Identity,
KurdMedia, Perwerde, B2B)
- Fix supabase.ts with hardcoded fallback credentials for production
- Fix Home tab header (headerShown: false)
- Add new screen components for mini apps
- Update DashboardScreen with proper navigation and alerts