♻ ️refactor: Completely redesign TopUp page with modern card-based UI and enhanced UX
- Replace simple form layout with sophisticated card-based design system - Implement bank card-style wallet display with gradient backgrounds and decorative elements - Integrate real user data from UserContext (username, quota, usage stats, user role, group) - Add personalized color schemes using stringToColor for unique user identification - Implement comprehensive responsive design for mobile, tablet, and desktop devices - Add skeleton loading states for all data-dependent components and API calls - Replace basic Input with InputNumber component for amount input with built-in validation (min: 1) - Add official brand icons for payment methods (Alipay, WeChat) using react-icons/si - Integrate Semi UI Banner component for better warning notifications - Implement real-time data synchronization between local state and UserContext - Add sophisticated loading states with proper error handling and user feedback - Clean up all code comments and remove unused imports, functions, and state variables - Enhance visual hierarchy with proper spacing, shadows, and modern typography - Add glass-morphism effects and backdrop filters for premium visual experience - Improve accessibility with proper text truncation and responsive font sizing This update transforms the TopUp page from a basic form into a professional, modern payment interface that provides excellent user experience across all devices while maintaining full functionality and adding comprehensive data validation.
Showing
| ... | @@ -11,23 +11,25 @@ | ... | @@ -11,23 +11,25 @@ |
| "@visactor/vchart": "~1.8.8", | "@visactor/vchart": "~1.8.8", | ||
| "@visactor/vchart-semi-theme": "~1.8.8", | "@visactor/vchart-semi-theme": "~1.8.8", | ||
| "axios": "^0.27.2", | "axios": "^0.27.2", | ||
| "country-flag-icons": "^1.5.19", | |||
| "dayjs": "^1.11.11", | "dayjs": "^1.11.11", | ||
| "history": "^5.3.0", | "history": "^5.3.0", | ||
| "i18next": "^23.16.8", | "i18next": "^23.16.8", | ||
| "i18next-browser-languagedetector": "^7.2.0", | "i18next-browser-languagedetector": "^7.2.0", | ||
| "lucide-react": "^0.511.0", | |||
| "marked": "^4.1.1", | "marked": "^4.1.1", | ||
| "react": "^18.2.0", | "react": "^18.2.0", | ||
| "react-dom": "^18.2.0", | "react-dom": "^18.2.0", | ||
| "react-dropzone": "^14.2.3", | "react-dropzone": "^14.2.3", | ||
| "react-fireworks": "^1.0.4", | "react-fireworks": "^1.0.4", | ||
| "react-i18next": "^13.0.0", | "react-i18next": "^13.0.0", | ||
| "react-icons": "^5.5.0", | |||
| "react-router-dom": "^6.3.0", | "react-router-dom": "^6.3.0", | ||
| "react-telegram-login": "^1.1.2", | "react-telegram-login": "^1.1.2", | ||
| "react-toastify": "^9.0.8", | "react-toastify": "^9.0.8", | ||
| "react-turnstile": "^1.0.5", | "react-turnstile": "^1.0.5", | ||
| "semantic-ui-offline": "^2.5.0", | "semantic-ui-offline": "^2.5.0", | ||
| "semantic-ui-react": "^2.1.3", | "semantic-ui-react": "^2.1.3", | ||
| "country-flag-icons": "^1.5.19", | |||
| "sse": "https://github.com/mpetazzoni/sse.js" | "sse": "https://github.com/mpetazzoni/sse.js" | ||
| }, | }, | ||
| "scripts": { | "scripts": { | ||
| ... | ... |
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment