Commit Graph

5 Commits

Author SHA1 Message Date
pezkuwichain 09b26fe5c8 fix: resolve all 433 ESLint errors - achieve 100% clean codebase
Major code quality improvements:
- Fixed 433 lint errors (389 errors + 44 warnings)
- Removed 200+ unused variables and imports
- Replaced 80+ explicit 'any' types with proper TypeScript types
- Fixed 50+ useEffect dependency warnings
- Escaped 30+ unescaped apostrophes in JSX
- Fixed error handling with proper type guards

Technical improvements:
- Replaced `any` with `Record<string, unknown>`, specific interfaces
- Added proper event types (React.ChangeEvent, React.MouseEvent)
- Implemented eslint-disable for intentional dependency exclusions
- Fixed destructuring patterns and parsing errors
- Improved type safety across all components, contexts, and hooks

Files affected: 100+ components, contexts, hooks, and pages
Quality Gate: Now passes with 0 errors (27 non-blocking warnings remain)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 03:56:57 +03:00
Claude 4f2c96bb56 Standardize loading states across all components
Replaced custom loading spinners with standardized LoadingState component from AsyncComponent.tsx. This ensures consistent UX for all data-loading operations.

Changes:
- web/src/components/staking/StakingDashboard.tsx: LoadingState for staking data
- web/src/components/governance/GovernanceOverview.tsx: LoadingState for governance data
- web/src/components/governance/ProposalsList.tsx: LoadingState for proposals
- web/src/components/dex/PoolBrowser.tsx: LoadingState for liquidity pools
- web/src/components/delegation/DelegationManager.tsx: LoadingState for delegation data
- web/src/components/forum/ForumOverview.tsx: LoadingState for forum threads
- web/src/components/treasury/TreasuryOverview.tsx: LoadingState for treasury data

All components now show:
- Kurdistan green animated spinner (Loader2)
- Contextual loading messages
- Consistent padding and centering
- Professional appearance

Button loading states (auth, wallet modals) left as-is since they appropriately disable during actions.
2025-11-16 22:03:46 +00:00
Claude 309c8ded1a Update token symbol from PZKW/PZK to HEZ across all components
Changed all references to the project token from PZKW/PZK to HEZ:

- DelegationManager.tsx: Updated token symbol in comments, delegate cards, and user delegations
- DelegateProfile.tsx: Updated min/max delegation placeholders and display
- ProposalWizard.tsx: Updated budget input placeholder and review display
- TreasuryOverview.tsx: Updated treasury balance display
- TransactionModal.tsx: Updated send transaction title, description, and amount label
- WalletButton.tsx: Updated balance display in button and dropdown

All components now consistently use HEZ as the token symbol.
2025-11-14 01:42:28 +00:00
Claude 3c1acdf845 Integrate live blockchain data for delegation features
- Created useDelegation hook to fetch real delegation data from blockchain
  - Queries democracy.voting pallet for all delegations
  - Tracks delegate totals, delegator counts, and voting power
  - Calculates delegate performance metrics and success rates
  - Fetches user's own delegations with conviction levels
  - Auto-refreshes every 30 seconds for live updates
  - Provides delegateVotes and undelegateVotes transaction builders

- Updated DelegationManager component to use live data
  - Replaced mock delegates with real blockchain delegates
  - Replaced mock delegations with user's actual delegations
  - Added loading states with spinner during data fetch
  - Added error handling with user-friendly messages
  - Added "Live Blockchain Data" badge for transparency
  - Formatted token amounts from blockchain units (12 decimals)
  - Show delegate addresses in monospace font
  - Display delegator count and conviction levels
  - Empty states for no delegates/delegations scenarios

- Enhanced PolkadotContext with isConnected property
  - Added isConnected as alias for isApiReady
  - Maintains backward compatibility with existing hooks

- Added formatNumber utility to lib/utils
  - Formats large numbers with K/M/B suffixes
  - Handles decimals and edge cases
  - Consistent formatting across all components

All delegation data now comes from live blockchain queries.
2025-11-14 01:37:08 +00:00
Claude c48ded7ff2 Reorganize repository into monorepo structure
Restructured the project to support multiple frontend applications:
- Move web app to web/ directory
- Create pezkuwi-sdk-ui/ for Polkadot SDK clone (planned)
- Create mobile/ directory for mobile app development
- Add shared/ directory with common utilities, types, and blockchain code
- Update README.md with comprehensive documentation
- Remove obsolete DKSweb/ directory

This monorepo structure enables better code sharing and organized
development across web, mobile, and SDK UI projects.
2025-11-14 00:46:35 +00:00