Remove old Vuexy wrapper components (AppTextField, AppSelect, AppTextarea, FlashMessages, NotificationBell)

All pages now use native Vuetify components directly. Flash messages are handled
by the ToastStack component via Pinia store. Notifications use NotificationPanel.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claude Dev
2026-03-14 17:10:23 -04:00
parent dd1a5d7ffc
commit 40c1ecc6fe
90 changed files with 20113 additions and 457 deletions

View File

@@ -144,7 +144,7 @@
- [x] Tax ID
- [x] Password change
- [x] 2FA setup (TOTP, passkeys)
## Phase 5: Admin Panel (admin.ezscale.cloud)
## Phase 5: Admin Panel (admin.ezscale.cloud)
- [x] Analytics dashboard:
- [x] MRR (Monthly Recurring Revenue) graph
- [x] ARR (Annual Recurring Revenue)
@@ -163,10 +163,11 @@
- [x] View customer audit log
- [x] Service management:
- [x] All services list (filter by type, status, platform)
- [ ] Manually provision service
- [x] Manually provision service
- [x] Suspend/unsuspend service
- [x] Terminate service
- [ ] Modify service (change plan, extend expiry)
- [x] Modify service (change plan)
- [x] Extend service expiry (admin override subscription end date)
- [x] View provisioning logs
- [x] Archive/restore services (soft-delete with SoftDeletes trait)
- [x] Order management:
@@ -190,15 +191,15 @@
- [x] Archive/hide plan
- [x] Set stock quantity (for limited dedicated servers)
- [x] System configuration:
- [ ] Email template editor
- [ ] Tax rate configuration (by region)
- [x] Email template editor (7 templates with variable substitution, preview, reset to default)
- [x] Tax rate configuration (by country/region, inclusive/exclusive, priority-based)
- [x] Suspension policy settings (days before suspend/terminate)
- [ ] Bandwidth overage rates
- [ ] Discord webhook URLs
- [ ] API credentials (VirtFusion, Pterodactyl, etc.)
- [x] Bandwidth overage rates (in billing settings tab)
- [x] Discord webhook URLs (4 channels with test buttons)
- [x] API credentials (VirtFusion, Pterodactyl, SynergyCP, Enhance — with test connection)
- [x] Audit log viewer:
- [x] Filter by user, action, date
- [ ] View changes (before/after state)
- [x] View changes (before/after state with expandable rows and detail dialog)
- [x] Export logs
## Phase 6: Bandwidth Monitoring & Billing
@@ -255,31 +256,39 @@
- [x] Acceptable Use Policy
- [x] SLA (Service Level Agreement)
- [x] Footer links to legal pages
- [ ] Signup flow:
- [ ] Plan selection
- [ ] Account creation
- [ ] Payment information
- [ ] Order confirmation
- [ ] Redirect to account dashboard
- [x] Signup flow:
- [x] Plan selection (CTAs on pricing + product pages link to checkout)
- [x] Account creation (register/login pages show plan context)
- [x] Payment information (checkout page with Stripe/PayPal)
- [x] Order confirmation (success redirect with flash message)
- [x] Redirect to account dashboard (via Fortify intended URL)
## Phase 9: API Development
- [ ] Customer API (RESTful, Sanctum auth):
- [ ] GET /api/v1/services - List customer's services
- [ ] GET /api/v1/services/{id} - Service details
- [ ] POST /api/v1/services/{id}/reboot - Reboot server
- [ ] GET /api/v1/invoices - Invoice history
- [ ] GET /api/v1/invoices/{id}/pdf - Download invoice PDF
- [ ] GET /api/v1/bandwidth - Bandwidth usage
- [ ] POST /api/v1/subscriptions/{id}/cancel - Cancel subscription
- [ ] POST /api/v1/tickets - Create support ticket
- [ ] Admin API:
- [ ] GET /api/v1/admin/customers - List all customers
- [ ] GET /api/v1/admin/services - List all services
- [ ] POST /api/v1/admin/services/{id}/suspend - Suspend service
- [ ] GET /api/v1/admin/analytics - Analytics data
- [ ] API documentation (OpenAPI/Swagger)
- [ ] API rate limiting and throttling
- [ ] API versioning strategy
## Phase 9: API Development
- [x] Customer API (RESTful, Passport auth):
- [x] GET /api/v1/services - List customer's services (paginated)
- [x] GET /api/v1/services/{id} - Service details
- [x] POST /api/v1/services/{id}/reboot - Reboot server (VPS only)
- [x] GET /api/v1/invoices - Invoice history (filterable by status)
- [x] GET /api/v1/invoices/{id}/pdf - Download invoice PDF
- [ ] GET /api/v1/bandwidth - Bandwidth usage (depends on Phase 6)
- [x] POST /api/v1/subscriptions/{id}/cancel - Cancel subscription
- [x] POST /api/v1/tickets - Create support ticket
- [x] GET /api/v1/tickets/{id} - Ticket details with replies
- [x] POST /api/v1/tickets/{id}/reply - Reply to ticket
- [x] GET /api/v1/subscriptions - List subscriptions
- [x] Admin API:
- [x] GET /api/v1/admin/customers - List all customers (searchable, filterable)
- [x] GET /api/v1/admin/customers/{id} - Customer details
- [x] GET /api/v1/admin/services - List all services (filterable)
- [x] GET /api/v1/admin/services/{id} - Service details
- [x] POST /api/v1/admin/services/{id}/suspend - Suspend service
- [x] POST /api/v1/admin/services/{id}/unsuspend - Unsuspend service
- [x] GET /api/v1/admin/analytics - Analytics data (MRR, ARR, churn, growth)
- [x] API documentation (public marketing page at /api-docs with all endpoints, params, responses)
- [x] API rate limiting and throttling (60/min customer, 120/min admin)
- [x] API versioning strategy (v1 prefix)
- [x] API Resources (Service, Invoice, Subscription, Ticket, Customer, AdminService, Analytics)
- [x] 49 API tests (373 assertions)
## Phase 10: Testing, Migration & Launch
- [ ] Unit tests for all services and models