Commit Graph

19 Commits (3bc5d5f093fc119673339451aa3589fcdd0ba69d)

Author SHA1 Message Date
veypi d3137955c3 feat(auth): add SMS/email verification code support for registration
- Add validateRegisterCode function to verify codes during registration
    - Integrate Aliyun SMS SDK (dysmsapi-20170525) replacing placeholder
    - Make cookie names configurable via JWT CookiePrefix setting
    - Rename login type "phone" to "sms" for consistency
    - Add 1-minute TTL cache for setting values
    - Add $fetch wrapper replacing raw fetch calls across all UI pages
    - Add verification code inputs with countdown send buttons to register UI
    - Move CSS/JS assets from root.html to auth and default layouts
    - Add scope parameter to VBase permission check methods
    - Add i18n entries for verification code messages (zh/en)
    - Fix route guard to use next('/403') instead of router.push
2 weeks ago
veypi adf0cd36ca refactor(ui): simplify role management UI and auth flow
- Replace permission selector dialog with inline add form (scope/id/level)
    - Replace per-user role API calls with batch PUT /api/roles/{id}/users
    - Add isLogin() async method with lazy _ensureAuth initialization
    - Clean up login page CSS: replace hardcoded colors with CSS variables
    - Add Chrome autofill style override for dark theme support
    - Use @submit.prevent instead of manual e.preventDefault()
    - Remove redundant inline comments from script sections
3 weeks ago
veypi 7022c2b52f refactor(ui): Replace axios with fetch in all pages and extract auth layout
- Replace all $axios calls with native fetch across 8 page files
    - Add inline send-code button to login page code flow
    - Extract animated bubble background into shared auth layout
    - Restructure langs.json with zh-CN first, add new i18n keys
    - Add scoped langs.json for auth.send_code translation
    - Wire auth layout to login and callback routes
    - Fix mobile sign-up panel transform direction
    - Use onAuthSuccess for login/register code flows
3 weeks ago
veypi 4c021e7e93 refactor(auth): Migrate token delivery to HttpOnly Cookie with version-based revocation
- Replace JWT in response body with HttpOnly Cookie (vb_access/vb_refresh) to prevent XSS token theft
    - Add Redis-based token version management with ±1 tolerance for multi-tab concurrent refresh
    - Implement strict refresh token rotation: version must match exactly, increment on each refresh
    - Simplify JWT Claims to only carry UserID + Type + Version, remove user profile fields
    - Remove session-based token tracking and cache blacklist in favor of version increment revocation
    - Remove getAuthHeaders, wrapAxios, wrapFetch, isExpired from frontend VBase client
    - Remove client-side token/localStorage management, frontend now relies on Cookie auto-attach
    - Add CookiePath config option and change default access token expiry from 24h to 15min
    - Update Vigo app initialization to use functional options pattern
    - Add empty-body cookie read fallback in refresh endpoint
3 weeks ago
veypi a63dc65ab6 refactor(ui): Rename $vbase to $auth across frontend
- Rename $mod.$vbase to $mod.$auth in env.js initialization
    - Add guard condition to prevent duplicate VBase initialization
    - Update all page and layout templates to use $auth instead of $vbase
    - Update route guard in routes.js to reference $mod.$auth
1 month ago
veypi 6552ebf832 refactor(ui): Migrate router guard from env.js to routes.js
- Move beforeEnter router guard logic from env.js to routes.js export function
    - Update $env references to $mod in env.js, ico.html, and layout/default.html
    - Export routes as function that receives $mod context for dependency injection
    - Remove router guard from env.js initialization module
2 months ago
veypi 92156dcd53 feat(auth): Improve permission system and role management
- Add Scope and Level fields to UserPermissionInfo response
    - Include role-based permissions in /auth/me endpoint
    - Implement diff-based permission sync for role initialization
    - Remove Scope field from Role model queries (create, patch, grant)
    - Add permission-based route guards in UI (perm: '*')
    - Fix register to return error on default role assignment failure
    - Fix token refresh to only fetch user when token exists
    - Fix code formatting in api/init.go (remove extra spaces)
3 months ago
veypi e627ab0726 feat(ui): Add OAuth callback page and improve auth flow
- Add new OAuth callback page with loading states and error handling
    - Create reusable icon component (ico.html) for SVG icons
    - Remove deprecated public.html layout, merge into default
    - Update login page with improved third-party auth integration
    - Add i18n translations for OAuth-related messages
    - Update routes to include callback page and handle auth redirects
    - Enhance vbase.js with OAuth utilities and token management
3 months ago
veypi 627439bc4d feat(ui): Add system settings and OAuth providers management pages
- Add new settings page with application, auth, security, email, SMS configuration
    - Add OAuth identity providers management page with CRUD operations
    - Update login page to support dynamic OAuth providers and verification code login
    - Add navigation menu items for settings and OAuth providers
    - Add i18n translations for settings and OAuth provider management
    - Add routes for /settings and /oauth/providers pages
3 months ago
veypi be6e07404c feat(ui): Redesign login page with integrated register
- Merge login and register into single page with sliding animation
    - Add dual login modes: username/password and verification code
    - Add OAuth buttons for GitHub, WeChat, Google (placeholder)
    - Add animated bubble background effect
    - Implement responsive design for mobile devices
    - Add comprehensive i18n translations for auth flows
    - Remove separate register.html page
    - Update routes to use new unified auth page
3 months ago
veypi b378c3c5c4 refactor(ui): Remove organization management pages and related i18n
- Delete ui/page/sys/org/ directory (org management UI)
    - Remove org-related navigation from routes.js and layout
    - Remove org translations from langs.json
    - Update dashboard to remove org references
3 months ago
veypi 691f1df75b feat: 添加角色管理模块(API + UI) 4 months ago
veypi 983a5651a3 fix: 修复路由和页面加载问题 4 months ago
veypi e5308f9471 feat: 全新UI框架升级和页面重构 4 months ago
veypi ada216cfd5 feat: change auth check 10 months ago
veypi 1a29442c1c im dead 11 months ago
veypi e83f2da265 update crud and env.js 11 months ago
veypi ae463e0723 update 11 months ago
veypi 959e390126 feat: change to vigo 11 months ago