Commit Graph

140 Commits

Author SHA1 Message Date
pezkuwichain 930c2fc910 feat: two-card wallet connection UI (extension + mobile) and update Chrome Web Store link 2026-02-22 20:47:41 +03:00
pezkuwichain 88b69f13cd feat: add WalletConnect v2 integration for mobile wallet connection
- Add @walletconnect/sign-client for dApp-side WC v2 support
- Create walletconnect-service.ts with session management and Signer adapter
- Create WalletConnectModal.tsx with QR code display
- Update PezkuwiContext with connectWalletConnect(), session restore, walletSource tracking
- Update WalletContext signing router: mobile → WalletConnect → extension
- Update WalletModal with "Connect with pezWallet (Mobile)" button
- Move WalletConnect projectId to env variable
- Fix vite build: disable assetsInclude for JSON (crypto-browserify compat)
2026-02-22 18:36:29 +03:00
pezkuwichain 8f187cd971 fix: query nominators from Asset Hub, treasury balances from both chains
NetworkStats now queries staking.nominators from Asset Hub instead of
Relay Chain (staking migrated to AH). Treasury hook fetches HEZ from RC
and PEZ from AH (asset 1) for accurate balance display.
2026-02-22 06:36:15 +03:00
pezkuwichain 4f683538d3 feat: complete i18n support for all components (6 languages)
Add full internationalization across 127+ components and pages.
790+ translation keys in en, tr, kmr, ckb, ar, fa locales.
Remove duplicate keys and delete unused .json locale files.
2026-02-22 04:48:20 +03:00
pezkuwichain 829fdc83d2 feat: add language switcher to mobile nav bar 2026-02-21 16:53:48 +03:00
pezkuwichain c844932519 fix: calculate total staked from ledger entries instead of erasTotalStake 2026-02-21 16:35:39 +03:00
pezkuwichain 43ffc65ee6 fix: replace trust score card with citizen count (Hejmara Kurd) 2026-02-21 16:33:16 +03:00
pezkuwichain a5a9bcca91 feat: nav 4x2 button grid + hero stats from correct chains
- Replace nav menu with 4x2 mobile-app-style button grid (responsive)
- Fetch staking stats from Asset Hub instead of Relay Chain
- Governance stats (proposals, voters) remain on Relay Chain
- Trust score: show login prompt for guests, real score for users
- Full-width root container, centered hero, node globals shim fix
2026-02-21 16:29:53 +03:00
pezkuwichain e4abee939f feat: migrate staking from Relay Chain to Asset Hub
- shared/staking.ts: update for AH (remove babe dep, remove validatorPool, bonding 2 eras)
- StakingDashboard: switch all staking operations from api (RC) to assetHubApi (AH)
2026-02-21 02:55:27 +03:00
pezkuwichain ecda5374e4 fix: resolve eslint no-explicit-any in PEZ treasury query 2026-02-18 06:01:42 +03:00
pezkuwichain dd2301f175 fix: correct trust score divisor to 10000 and show both relay+PEZ treasury balances 2026-02-18 05:45:33 +03:00
pezkuwichain ead3ea11a5 fix: replace mock governance data with live chain queries and fix trust score formulas 2026-02-18 05:04:01 +03:00
pezkuwichain 6cabedb269 fix: reduce hero stat card font size to prevent text overflow 2026-02-17 16:50:32 +03:00
pezkuwichain 210fb09469 fix: hero stats - format staked tokens, real trust score, active-only proposals 2026-02-17 03:11:21 +03:00
pezkuwichain b7d7d008dc feat: staking score 3-state model and noter integration 2026-02-17 01:32:54 +03:00
pezkuwichain 48250a36f5 fix: rename Trust Score to Referral Score, merge invitations list 2026-02-16 04:31:31 +03:00
pezkuwichain 12a27c3f87 fix: remove unused FOUNDER_ADDRESS import 2026-02-16 04:07:59 +03:00
pezkuwichain 6a33b9ccb1 fix: hide hero background image on mobile, improve responsive sizing 2026-02-16 03:19:53 +03:00
pezkuwichain 86dc8c1fcd fix: rewrite citizenship workflow to referral-based model
- Replace governance-based KYC with trustless referral workflow
- New 3-step flow: applyForCitizenship -> approveReferral -> confirmCitizenship
- Fix FOUNDER_ADDRESS (was Alice test address)
- Use applications storage instead of legacy pendingKycApplications
- Add approveReferral, cancelApplication, confirmCitizenship functions
- Rewrite KycApprovalTab as referrer approval panel (no governance)
- Fix InviteUserModal to use peopleApi for referral pallet
- Add pending approvals section to ReferralDashboard
2026-02-16 02:56:27 +03:00
pezkuwichain 59442e58ae fix: broken image paths and staking signer reconnect 2026-02-16 01:30:21 +03:00
pezkuwichain f3450d1207 feat: align frontend scoring with People Chain pallet queries
- Update staking score/tracking calls from relayApi to peopleApi
- Fix referral score to use on-chain tiered scoring with penalties
- Fix perwerde score to query studentCourses + enrollments storage
- Update Dashboard and StakingDashboard for People Chain API
2026-02-13 20:13:55 +03:00
pezkuwichain 9963a759d3 fix: fix Zagros endpoints, hide PEZ Rewards when pallet unavailable
- Remove Asset Hub and People Chain endpoints from Zagros/Development config (relay chain only)
- Default network now always mainnet
- PEZ Rewards card only renders when pallet is available on chain
- Dynamic grid layout when PEZ Rewards card is hidden
2026-02-13 18:11:24 +03:00
pezkuwichain 6fe061cef2 feat(pez-rewards): align frontend with blockchain pallet storage queries
- Fix storage query names: getCurrentEpochInfo, epochStatus, getUserTrustScoreForEpoch, getClaimedReward, getEpochRewardPool
- Add recordTrustScore() and claimPezReward() extrinsic functions
- Add EpochStatus type and epoch status display (Open/ClaimPeriod/Closed)
- Move PezRewardInfo and getPezRewards from staking.ts to scores.ts
- Add PEZ Rewards error/success messages to error-handler.ts
- Add PEZ Rewards card with Record/Claim to Dashboard, Wallet, and Staking pages
- Add recordTrustScore to TransactionHistory tracking
2026-02-13 17:37:10 +03:00
pezkuwichain b378aeb171 refactor(scores): remove frontend fallback, read all scores from blockchain
Remove all frontend staking/trust score calculation and localStorage
fallback code. All scores now read directly from People Chain pallets
(pezpallet-trust, pezpallet-referral, pezpallet-tiki). Trust pallet
computes composite score on-chain.
2026-02-13 03:14:57 +03:00
pezkuwichain 12874822fc fix(mobile): comprehensive mobile UI redesign for better UX
- Header: icon-only wallet button on mobile, fix hamburger overflow
- Dashboard: responsive tabs with flex-wrap and smaller text
- Citizens: responsive ID card layout, stack NFT badges on mobile
- BeCitizen: stack header buttons vertically on mobile
- GovernanceInterface: add scrollable tabs
- DEXDashboard: responsive admin buttons grid (2 cols on mobile)
- P2PDashboard: responsive header and scrollable tabs
- Dialog: mobile-first sizing with proper padding and max-height
- Tabs UI: base responsive classes for all tab components
- Add xs:480px breakpoint and scrollbar-hide utility
- Fix vite polyfills config to prevent initialization errors
2026-02-11 02:14:32 +03:00
pezkuwichain b173810c27 refactor: remove WalletConnect, add mobile menu with wallet button
- Remove WalletConnectModal component (WalletConnect not ready)
- Restore PezkuwiWalletButton for extension-only connection
- Hide logo on mobile to save header space
- Add hamburger menu for mobile navigation
2026-02-11 01:14:38 +03:00
pezkuwichain 11241e8252 feat: add wallet connection options and mobile navigation
- New WalletConnectModal with Extension/WalletConnect options
- Mobile detection: shows only Pezkuwi Wallet on mobile
- Deep link support for pezkuwiwallet:// scheme
- Hamburger menu for mobile navigation
- Full mobile menu with all navigation items
2026-02-11 00:41:45 +03:00
pezkuwichain fbbb0486eb fix: remove unused variables (lint errors) 2026-02-10 18:14:33 +03:00
pezkuwichain 82a6a51b22 fix: use People Chain API for tiki and identityKyc pallets
- DashboardContext: query tiki/kyc from peopleApi instead of relay api
- KycApprovalTab: use peopleApi for identityKyc.pendingKycApplications
- NewCitizenApplication: all KYC operations now use People Chain

These pallets are on People Chain, not Relay Chain. This fixes the
"mafe te tuneye" error when accessing Citizens portal.
2026-02-10 18:09:26 +03:00
pezkuwichain 90b8204c25 feat: add frontend fallback for staking and trust scores
Until runtime upgrade is deployed, calculate scores on frontend:

shared/lib/scores.ts:
- getFrontendStakingScore: Read stake from Relay Chain, track in localStorage
- getFrontendTrustScore: Calculate using pallet formula
- getAllScoresWithFallback: Combined score fetching with fallback

Formula (matching pezpallet-trust):
- weighted_sum = staking*100 + referral*300 + perwerde*300 + tiki*300
- trust_score = (staking * weighted_sum) / 100

Components updated:
- AccountBalance.tsx: Use getAllScoresWithFallback
- HeroSection.tsx: Use getTrustScoreWithFallback
2026-02-07 00:44:04 +03:00
pezkuwichain 6b26f434dd fix: query pezRewards and stakingScore from People Chain
- pezRewards pallet is on People Chain, not Relay Chain
- stakingScore pallet is also on People Chain
- Update getStakingInfo to accept optional peopleApi parameter
- Update StakingDashboard to pass peopleApi
2026-02-06 21:28:56 +03:00
pezkuwichain b0c3626e7a feat: add LP staking score and DOT/ETH/BTC tokens 2026-02-06 20:01:12 +03:00
pezkuwichain 215f492c76 fix: dynamic token dropdown based on available pools, add PEZ token 2026-02-06 19:30:33 +03:00
pezkuwichain dff6d69673 fix: use People Chain API for citizen verification, improve input UI 2026-02-06 19:21:49 +03:00
pezkuwichain 6f3c1abdca fix: make LP stake button always visible with contrasting colors 2026-02-06 16:06:51 +03:00
pezkuwichain 30ea31dd64 feat: add LP token staking with duration selection 2026-02-06 15:56:14 +03:00
pezkuwichain c0e3df9801 feat: add LP staking UI for reward pools 2026-02-06 14:54:41 +03:00
pezkuwichain b05e93cdf6 Revert "feat: add LP staking modal and reward pools creation script"
This reverts commit d81342e94d.
2026-02-06 14:47:08 +03:00
pezkuwichain d81342e94d feat: add LP staking modal and reward pools creation script 2026-02-06 14:46:11 +03:00
pezkuwichain 85a29723f3 fix: check both assets and poolAssets pallets for LP tokens, use getReserves API 2026-02-06 14:34:08 +03:00
pezkuwichain 957df59a58 fix: remove unused variable lint errors 2026-02-06 14:22:54 +03:00
pezkuwichain 0a2e38cb27 fix: use pool reserves ratio for liquidity calculation instead of swap quotes 2026-02-06 14:17:23 +03:00
pezkuwichain dcb5a2c313 fix: calculate minimum deposits based on pool ratio for Add Liquidity 2026-02-06 13:39:39 +03:00
pezkuwichain 7641c24fdd fix: fetch DOT/ETH/BTC balances from Asset Hub for Add Liquidity modal 2026-02-06 13:19:32 +03:00
pezkuwichain 0d520592a4 fix: verify asset exists on blockchain before displaying in Other Assets 2026-02-06 11:50:27 +03:00
pezkuwichain a8c75e9911 fix: exclude old USDT (asset #3) from Other Assets 2026-02-06 11:45:46 +03:00
pezkuwichain 6340830ba8 fix: exclude core tokens from Other Assets using hardcoded IDs 2026-02-06 11:38:13 +03:00
pezkuwichain 1aed7dedf8 fix: use Asset Hub API for custom tokens instead of relay chain 2026-02-06 11:32:45 +03:00
pezkuwichain 755c618fc8 feat: reorganize wallet dashboard and add blockchain token lookup
- Move Recent Activity and NFTs to left column
- Move token balances to right column under action buttons
- Add Token modal now fetches asset info from blockchain
- Shows symbol, name, decimals before adding
- Search by asset ID with Enter key support
2026-02-06 11:26:25 +03:00
pezkuwichain 7d1a330d4c fix: add DOT, ETH, BTC support in liquidity modals 2026-02-06 11:13:24 +03:00