feat: dark mode, skeleton loaders, batch upsert optimization, and error boundaries (#122, #124, #125, #128) - #299
Conversation
|
@Sweet-Kid Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
|
@Sweet-Kid is attempting to deploy a commit to the ACCENSA Team on Vercel. A member of the Team first needs to authorize it. |
|
MergeKeeper review Scope: in scope for linked issue The pull request correctly implements dark mode cycling, skeleton loaders, database upsert query optimizations, and API error boundaries as specified by the linked issues. Reviewed commit: |
|
MergeKeeper merge status Status: blocked Reason: One or more required CI checks failed. Failing checks:
Next steps:
|
- theme-toggle: use lazy initializer, ThemeIcon component, eslint-disable for mount - widget-skeleton: replace Math.random() with pre-computed bar heights - sync route: remove unused imports (decodeTransferEvent, setLastSyncedLedger, PAYMENTS_BATCH_SIZE) - dashboard: remove unused loadRefundedFromStorage, saveRefundedToStorage, TableSkeleton
Summary
This PR resolves 4 open issues to improve the merchant dashboard experience:
closes #128 – Dark Mode Support
closes #125 – Skeleton Loaders
closes #124 – Optimize Postgres Upsert Queries
insertPaymentsInTransactioncloses #122 – API Error Boundaries
Files Changed
apps/web/src/components/theme-toggle.tsx– 3-way theme toggleapps/web/src/components/widget-skeleton.tsx– New skeleton componentapps/web/src/app/dashboard/page.tsx– Integrate skeletons and error boundariesapps/web/src/app/dashboard/layout.tsx– New dashboard layout with ErrorBoundaryapps/web/src/app/api/sync/route.ts– Batch upsert optimization and bug fixes