Commit Graph

507 Commits

Author SHA1 Message Date
pezkuwichain c533d60de0 fix: use correct asset format for assetConversion pallet
assetConversion.createPool expects { Asset: id } format, not raw numbers.
This fixes pool creation on Asset Hub.
2026-02-04 14:05:42 +03:00
pezkuwichain bae4daa4d5 fix: suppress API/INIT and REGISTRY warnings in production
Added warning suppression at main.tsx entry point to catch
Polkadot.js warnings before any API imports load.
2026-02-04 14:01:43 +03:00
pezkuwichain f061120112 fix: correct wHEZ asset ID from 0 to 2
tokenWrapper pallet on Asset Hub creates wHEZ as Asset ID 2, not 0.

Asset IDs on Asset Hub:
- Asset 1: PEZ
- Asset 2: wHEZ (via tokenWrapper)
- Asset 1000: wUSDT

Updated:
- shared/constants/index.ts: KNOWN_TOKENS
- shared/lib/wallet.ts: ASSET_IDS.WHEZ default
- AccountBalance.tsx: pool queries
- InitializeHezPoolModal.tsx: balance query
2026-02-04 13:52:47 +03:00
pezkuwichain 34486018bb feat: migrate DEX modals to Asset Hub API
DEX pallets (tokenWrapper, assets, assetConversion) are deployed on
Asset Hub teyrchain, not on the relay chain. Updated all DEX modals
to use assetHubApi instead of relay chain api:

- InitializeHezPoolModal: HEZ → wHEZ wrapping via Asset Hub
- InitializeUsdtModal: wUSDT minting via Asset Hub
- CreatePoolModal: Pool creation via Asset Hub
- XCMConfigurationWizard: Steps 5-6 use Asset Hub API

Added pallet availability checks with user-friendly error messages.
2026-02-04 13:13:24 +03:00
pezkuwichain cf12720b4a chore: suppress noisy API warnings in production console 2026-02-04 12:47:40 +03:00
pezkuwichain 9f6e477e6b fix: add People Chain deps to AccountBalance useEffect for proper balance fetch 2026-02-04 12:40:16 +03:00
pezkuwichain ca3709e8ef fix: correct RPC endpoints - remove wrong :9944 port 2026-02-04 12:35:42 +03:00
pezkuwichain 91e14bf200 fix: add production fallback endpoints for blockchain connection
- Add VITE_NETWORK and endpoint env vars to CI/CD build
- Add Asset Hub and People Chain endpoints to build config
- Add hardcoded production fallbacks in PezkuwiContext
- Disable WebSocket real-time service (not deployed yet)
- Endpoints: rpc.pezkuwichain.io, mainnet, beta, asset-hub, people
2026-02-04 12:19:29 +03:00
pezkuwichain 468e8d18f0 test: update mobile app snapshots for Feb 2026 2026-02-04 12:02:17 +03:00
pezkuwichain 76e99689e5 fix: resolve all lint errors for CI/CD workflow
- Remove unused supabase import from AppLayout.tsx
- Replace any types with proper type assertions in XCMTeleportModal.tsx
- Remove unused events parameter from signAndSend callback
- Fix any types in PezkuwiContext.tsx debug code
- Escape apostrophe in EmailVerification.tsx
- Remove unused ArrowDownRight import from AccountBalance.tsx
2026-02-04 12:00:48 +03:00
pezkuwichain 02094a3635 feat: add XCM teleport and CI/CD deployment workflow
Features:
- Add XCMTeleportModal for cross-chain HEZ transfers
- Support Asset Hub and People Chain teleports
- Add "Fund Fees" button with user-friendly tooltips
- Use correct XCM V3 format with teyrchain junction

Fixes:
- Fix PEZ transfer to use Asset Hub API
- Silence unnecessary pallet availability warnings
- Fix transaction loading performance (10 blocks limit)
- Remove Supabase admin_roles dependency

CI/CD:
- Add auto-deploy to VPS on main branch push
- Add version bumping on deploy
- Upload build artifacts for deployment
2026-02-04 11:35:25 +03:00
pezkuwichain 9d57473000 fix: use price proxy to avoid CORS and rate limits 2026-02-04 09:42:37 +03:00
pezkuwichain 3642ee0cd1 fix: query PEZ balance from Asset Hub and prevent localhost WebSocket errors
- Add Asset Hub API connection for PEZ token queries (Asset ID 1 is on Asset Hub)
- Update AccountBalance to fetch PEZ balance from Asset Hub instead of main chain
- WebSocket: Only try localhost endpoints when running locally, use production
  endpoint directly when on domain
2026-02-04 09:24:03 +03:00
pezkuwichain 9bb71c436b fix: update escrow address to Treasury_3
- Update PLATFORM_ESCROW_ADDRESS in p2p-fiat.ts
- Update PLATFORM_WALLET in verify-deposit edge function
- Use controlled wallet for P2P deposits/withdrawals
2026-02-03 16:50:56 +03:00
pezkuwichain 1e049340a7 chore: update @pezkuwi packages to latest stable versions
- Update all @pezkuwi packages in web, mobile, and backend
- API 16.5.36, Common 14.0.25, WASM 7.5.17
2026-02-01 22:50:51 +03:00
pezkuwichain 94f91cf765 feat: add CoinGecko price logic with DOT-based fallback
- HEZ price: CoinGecko direct > DOT/3 > DEX pool
- PEZ price: CoinGecko direct > DOT/10 > DEX pool
- Added AuthorizeCall signed extension for blockchain connection
- Updated @pezkuwi packages to 16.5.22 and 14.0.13
2026-01-31 18:56:28 +03:00
pezkuwichain d37eacf4e0 fix: update @pezkuwi/api packages to 16.5.22 2026-01-31 18:27:51 +03:00
pezkuwichain 953188456c chore: update @pezkuwi packages to latest versions
- @pezkuwi/api: 16.5.18 (mainnet genesis hash fix)
- @pezkuwi/keyring: 14.0.13
- @pezkuwi/util: 14.0.13
- @pezkuwi/util-crypto: 14.0.13
- All other @pezkuwi packages updated accordingly
2026-01-31 08:18:52 +03:00
pezkuwichain 72d3b9204a feat: add Telegram mini app connect for P2P access 2026-01-29 21:27:13 +03:00
pezkuwichain 68a5b96bbd feat: smart extension detection - only redirect to Chrome Web Store if not installed 2026-01-29 15:09:28 +03:00
pezkuwichain 122a06fa08 fix: update vite and vite-plugin-node-polyfills to fix moderate vulnerabilities 2026-01-29 03:59:28 +03:00
pezkuwichain 62a21fa9be fix: remove telegram import from App.tsx 2026-01-29 03:47:40 +03:00
pezkuwichain 6da3c5b88c fix: remove telegram module (moved to separate repo) and fix ESLint
- Remove src/telegram/* (moved to pezkuwi-telegram-miniapp repo)
- Fix unused variable in process-withdraw Edge Function
2026-01-29 03:45:01 +03:00
pezkuwichain 7636d46c7d feat(p2p): OKX-level security upgrade with Edge Functions
- Add process-withdraw Edge Function for blockchain withdrawals
- Update verify-deposit Edge Function with @pezkuwi/api
- Add withdrawal limits (daily/monthly) and fee system
- Add hot wallet configuration with production address
- Add admin roles for dispute resolution
- Add COMBINED SQL migration with full P2P system
- Encrypt payment details with AES-256-GCM
- Prevent TX hash reuse with UNIQUE constraint
2026-01-29 03:12:02 +03:00
pezkuwichain cee837e061 fix: update Supabase project URL to correct DKSapp instance 2026-01-28 10:03:33 +03:00
pezkuwichain 2f05ec7294 feat(telegram): redesign all sections with production-quality UI
- Rewrite AnnouncementsSection with shadcn/ui Card components
- Rewrite ForumSection with proper thread/reply UI
- Rewrite APKSection with version history and download features
- All sections now use consistent design patterns
- Turkish localization for all UI text
- Bottom navigation instead of sidebar
- Remove obsolete sub-components (AnnouncementCard, ThreadCard, etc.)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 23:24:41 +03:00
pezkuwichain 568fca33f2 feat(telegram): add Telegram Mini App for Pezkuwichain
- Add @twa-dev/sdk dependency for Telegram WebApp integration
- Create useTelegram hook for Telegram SDK integration (haptics, popups, etc.)
- Create usePezkuwiApi hook for blockchain API connection
- Add Discord-like Sidebar with 5 sections navigation
- Add Announcements section with like/dislike reactions
- Add Forum section with thread creation and replies
- Add Rewards section with referral program and epoch claims
- Add APK section for Pezwallet download with changelog
- Add Wallet section with balance, staking info, and transactions
- Create main TelegramApp component with routing
- Add /telegram route to App.tsx

UI Structure:
- Left: Discord-style icon sidebar (Announcements, Forum, Rewards, APK, Wallet)
- Right: Active section content area
- Mobile-first responsive design with Telegram theme integration

Integrations:
- Uses existing shared/lib functions for referral, staking, scores
- Supports Telegram startParam for referral codes
- Haptic feedback for native Telegram experience
- Telegram Main/Back button integration
2026-01-26 17:42:35 +03:00
pezkuwichain 2e0b5d73fd fix: Resolve mobile app crash with import.meta and babel config
- Add guard for import.meta in endpoints.ts for React Native compatibility
- Add jsEngine: jsc to app.json to match gradle.properties
- Add @babel/plugin-transform-class-static-block for @pezkuwi/types-codec
2026-01-20 01:28:56 +03:00
pezkuwichain b74df16210 feat(mobile): Add semantic versioning with standard-version
- Add standard-version for automated version bumping
- Create .versionrc with custom configuration for app.json
- Add version-updater.cjs script for Expo version syncing
- Add version bump scripts (release, release:patch, release:minor, release:major)
- Initialize CHANGELOG.md with v1.0.0 release notes
- Add iOS buildNumber and Android versionCode for app store releases
- Update .gitignore to allow CHANGELOG.md

This establishes proper engineering practices for version management.
2026-01-19 16:00:43 +03:00
pezkuwichain 1e1c2310c9 fix: Remove workspace config, fix test suite, update snapshots
- Remove root /home/mamostehp/package.json workspace config
- Each project now independent (aligned with CI workflow)
- Add SafeAreaProvider mock to jest setup
- Add __DEV__ global for React Native tests
- Update 4 snapshots for SafeAreaView changes
- All 29 test suites pass (122 tests)
2026-01-19 15:26:47 +03:00
pezkuwichain ee23b5fba2 docs: Update README for new project structure 2026-01-19 14:53:35 +03:00
pezkuwichain 12feaee1b1 refactor: Move pezkuwi-sdk-ui to separate repo, add postinstall for mobile
- Remove pezkuwi-sdk-ui from pwap (now at /home/mamostehp/pezkuwi-sdk-ui)
- Add scripts/fix-pezkuwi-packages.cjs for @pezkuwi package path fixes
- Add postinstall hook to mobile package.json
- Update metro.config.cjs documentation
- Update backend @pezkuwi/api version to 16.5.11

pezkuwi-sdk-ui is now a standalone repo at:
https://github.com/pezkuwichain/pezkuwi-sdk-ui

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:44:52 +03:00
pezkuwichain 7e2c2840d3 chore: Fix linting errors and update shared libs for mobile build 2026-01-19 03:35:33 +03:00
pezkuwichain 122c8b38d9 chore: Fix all linting errors for green build 2026-01-19 03:31:23 +03:00
pezkuwichain 0a388befbf fix: Import PezkuwiWebView in screens to resolve build errors 2026-01-19 03:20:39 +03:00
pezkuwichain 6ffc4a8207 feat: Add biometric verification and restore onboarding flow 2026-01-19 03:19:12 +03:00
pezkuwichain 0d3b34a92a chore: Fix 430+ TS errors, Safe Area issues, WebView SSO, and mock Alice for testing 2026-01-19 03:06:22 +03:00
pezkuwichain fb462017d2 Fix react-test-renderer version conflict for npm audit
Pin react-test-renderer@19.1.0 to match react@19.1.0

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 06:13:40 +03:00
pezkuwichain cdb58297d0 Remove Cloudflare workflow - using Cloudflare dashboard instead 2026-01-18 05:37:11 +03:00
pezkuwichain b1781bb2b4 Fix: handle missing SDK docs in CI build 2026-01-18 05:26:19 +03:00
pezkuwichain 8b85ae7ece Fix: create .env from secret in Cloudflare workflow 2026-01-18 05:18:22 +03:00
pezkuwichain 1576088821 Fix Cloudflare workflow: remove npm cache dependency 2026-01-18 05:11:22 +03:00
pezkuwichain a194c87b7c Add Cloudflare Pages deployment workflow 2026-01-18 05:01:01 +03:00
pezkuwichain 899d2a3b8b Add moduleNameMapper for shared lib mocks in Jest
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>
2026-01-18 03:40:46 +03:00
pezkuwichain e2127bb03e Add mocks for shared/lib modules in Jest
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>
2026-01-18 03:35:00 +03:00
pezkuwichain 6c6aa2883f Fix Jest mocks for CI: add virtual: true for optional packages
@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>
2026-01-18 03:30:47 +03:00
pezkuwichain 1a47363938 Fix all ESLint errors in mobile app (157 errors -> 0)
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 (&apos; and &quot;)
- 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>
2026-01-18 02:55:03 +03:00
pezkuwichain b9903831c6 Fix ESLint errors in governance screens, services, types, and utils 2026-01-18 01:51:22 +03:00
pezkuwichain 80eac5d6b9 Fix ESLint errors in remaining screens: TaxZekat, WhatsKURD, governance screens 2026-01-18 01:48:13 +03:00
pezkuwichain a5c3ec4032 Fix ESLint errors: escape entities, fix any types, remove unused imports 2026-01-18 01:45:31 +03:00