Commit Graph

399 Commits

Author SHA1 Message Date
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 910114d9f0 fix(build): restore polyfill shims for shared folder imports 2026-02-11 03:14:45 +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 6f6cedf239 fix(security): block government portal access without verification
- Move verification modal to separate return block when !accessGranted
- Prevent bypassing verification by clicking rapidly
- Redirect to /citizens if modal is closed without verification
- Fix Turkish text to Kurdish: Doğrula -> Bipejirîne
2026-02-10 23:11:41 +03:00
pezkuwichain fc0907f8ac fix(tiki): fetch roleNFTs from blockchain instead of returning empty array
- getAllTikiNFTDetails now calls fetchUserTikiNFTs to query UserTikis storage
- This enables proper authorization check for government roles like Serok
2026-02-10 22:56:22 +03:00
pezkuwichain cd69be7487 fix: remove double verification and add debug logging
- Remove verification dialog from Citizens.tsx (GovernmentEntrance handles it)
- Add console debug logging to see roleNFTs and authorization check
2026-02-10 22:29:00 +03:00
pezkuwichain 415be478b8 feat(Citizens): use localStorage for citizen profile instead of Supabase
- Personal info (name, father name, location, photo) stored locally
- Added edit modal for updating profile info
- Auto-open edit modal on first visit for new device
- Profile data tied to wallet address
- Removed Supabase dependency for privacy
2026-02-10 21:50:58 +03:00
pezkuwichain 2fa7623d17 fix: correct tiki role field name and update card header text
- GovernmentEntrance: changed tiki.tiki_type to tiki.tikiRole
- Citizens: changed KOMARGEHA to KOMARI KURDISTAN
2026-02-10 21:37:58 +03:00
pezkuwichain bbee091e88 feat(Citizens): replace PNG citizen card with professional HTML/CSS design
- New digital citizen ID card with Kurdish flag colors gradient
- Added security pattern overlay for authenticity
- Header with sun symbol, Republic of Kurdistan branding
- Clean layout: photo, personal info, NFT/citizen number badges
- Verified badge and corner decorations
- Footer with blockchain info
2026-02-10 21:23:27 +03:00
pezkuwichain d6ae97d70b fix(GovernmentEntrance): use correct citizen ID format for verification 2026-02-10 21:20:58 +03:00
pezkuwichain 3fd726e1f2 Fix CitizensIssues: add missing filter state variables and fix dependency array 2026-02-10 19:18:44 +03:00
pezkuwichain 66e16c62f0 Add debug logging to handleCitizensIssue 2026-02-10 18:41:53 +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 e12d08d356 fix: use getAllScoresWithFallback in Dashboard.tsx
Both AccountBalance.tsx and Dashboard.tsx now use the same
frontend fallback for trust score calculation until runtime upgrade.
2026-02-07 01:48:06 +03:00
pezkuwichain e787eaac15 debug: add console logs for trust score calculation 2026-02-07 01:39:11 +03:00
pezkuwichain 598c9f2fec fix: use frontend fallback for trust score calculation
On-chain trust pallet exists but StakingInfoProvider returns None,
causing trust score to be 0 even when user has stake. Use frontend
calculation until runtime upgrade is deployed.
2026-02-07 01:25:05 +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 f93681ed96 fix: formatBalance now correctly parses hex values from blockchain 2026-02-06 22:14:56 +03:00
pezkuwichain 13646d6e8c fix: support both sonner and shadcn toast APIs in error handler 2026-02-06 21:42:27 +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 61eb5cff20 fix: update score system to use correct People Chain APIs
- Remove LP staking score (not available in blockchain)
- All scores now fetched from People Chain
- Add Start Score Tracking button to Dashboard
- Add staking status display showing tracking duration
2026-02-06 20:48:27 +03:00
pezkuwichain b0c3626e7a feat: add LP staking score and DOT/ETH/BTC tokens 2026-02-06 20:01:12 +03:00
pezkuwichain 1f14cd475f fix: restore web3FromAddress for browser extension signing 2026-02-06 19:38:59 +03:00
pezkuwichain 9fd0805a97 fix: fetch scores from correct chains (People + Relay) 2026-02-06 19:33:42 +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 87e17cf9bd fix: use People Chain API for referral data 2026-02-06 19:14:25 +03:00
pezkuwichain eff8a642a0 fix: restore index parameter in tikis map 2026-02-06 19:00:35 +03:00
pezkuwichain e80533505f fix: fetch tiki/role data from People Chain instead of Relay Chain 2026-02-06 18:06:28 +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