Commit graph

34 commits

Author SHA1 Message Date
Claude
dda92f5664
fix: ensure eventid is removed from URL when drawer closes
- Replace onCloseEventDetail with handleDrawerOpenChange
- Handle all drawer close scenarios: button click, outside click, ESC key
- Remove eventid from URL whenever drawer is closed via any method
- Fixes issue where eventid remained in URL after closing drawer
2025-11-23 07:28:52 +00:00
Claude
8720a56c7d
feat: add eventid query parameter to auto-open event details
- Add eventid URL parameter support to open specific event on page load
- Automatically fetch and display event detail drawer when eventid is present
- Show error message if event ID is invalid or doesn't exist
- Update URL when opening/closing event detail drawer
- Add error message UI with dismiss functionality
- Maintain eventid in URL for shareable links to specific events
2025-11-23 07:24:01 +00:00
Claude
96964f4f00
feat: add URL query params for page and status filter in repair admin
- Initialize page and statusFilter from URL query parameters on mount
- Update URL when page or statusFilter state changes
- Support comma-separated status values in URL
- Enables sharing specific page/filter state via URL
- Preserves state on page refresh
2025-11-23 07:19:30 +00:00
Clas Wen
8072dd5ce7 feat: implement server-side pagination for repair admin
- Replace client-side pagination (limit: 1000) with server-side pagination (limit: 10)
- Add totalCount state to track pagination from API headers
- Extract X-Total-Count from response headers for accurate page calculation
- Pass status filter as array to API instead of comma-separated string
- Add loading state during pagination changes
- Add min-h-[600px] to prevent layout shifts during loading
- Remove client-side filtering and slicing logic
- Add useEffect to reload data on page/filter changes

Performance improvements:
- 99% reduction in data transfer (10 vs 1000 events per request)
- Faster initial load and page transitions
- Better scalability for growing datasets

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 21:45:28 +08:00
Clas Wen
da62d5358f fix drop action 2025-11-08 20:10:36 +08:00
Clas Wen
a2eb15c002 Improve authentication callback UI and error handling
- Enhanced callback.astro with loading states and user feedback
- Fixed React prop naming in HeaderNavigation (stroke-width -> strokeWidth)
- Added safe utility for promise error handling
- Improved TicketForm authentication check using safe wrapper

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 20:13:59 +08:00
Clas Wen
094d6b17e4 add error handling 2025-10-10 20:14:52 +08:00
Clas Wen
42df93b9e6 Improve authentication error handling and update dependencies
- Add try-catch block for authentication check in TicketForm
- Handle authentication errors gracefully with proper error logging
- Update caniuse-lite dependency to latest version

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 19:11:15 +08:00
Clas Wen
f235cd5f1b Add pagination to UserRepairHistory component
- Add pagination state management with currentPage and totalPages
- Update API call to use limit/offset parameters for pagination
- Add HeroUI Pagination component with navigation controls
- Support 12 items per page with conditional pagination display
- Handle page changes and loading states properly

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 19:10:30 +08:00
Clas Wen
e33b81775e change loading 2025-10-03 23:28:49 +08:00
Clas Wen
5a175875ae remove loading state 2025-09-30 00:16:06 +08:00
Clas Wen
8e5c1753fb update wording 2025-09-30 00:05:01 +08:00
Clas Wen
7d5960ae87 Add comprehensive repair system functionality
- Add repair ticket form and detail components
- Implement repair history tracking and display
- Create repair event detail view
- Add repair landing section and modal components
- Update repair header and main page

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-29 23:56:33 +08:00
Clas Wen
6536c61317 use openapi fetch 2025-09-25 23:18:33 +08:00
Clas Wen
3ef9cc2ebe Make RepairAdmin page responsive with mobile card layout
- Add responsive container layout with mobile-first approach
- Implement mobile card component for better touch interaction
- Switch between table (desktop) and cards (mobile) at sm breakpoint
- Make header section responsive with stacked layout on mobile
- Enhance drawer with full-screen mobile support
- Add mobile-optimized filter controls
- Improve touch targets and spacing for mobile devices
- Fix global CSS button border issue for card styling

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-25 19:37:34 +08:00
Clas Wen
bc35482cef change default export time range 2025-05-25 10:12:50 +08:00
Clas Wen
f4a7df3ab0 add default filter 2025-05-25 10:04:12 +08:00
Clas Wen
928162ece2 update style 2025-05-24 17:47:49 +08:00
Clas Wen
5e12d7051e save 2025-05-24 17:33:11 +08:00
Clas Wen
9eaf58ef86 fix offset 2025-05-24 15:20:40 +08:00
Clas Wen
74c95626c8 add export dialog 2025-05-24 14:24:16 +08:00
Clas Wen
6a99120e14 save 2025-05-24 14:07:41 +08:00
Clas Wen
c00cdb478c add event detail loading 2025-05-24 13:57:36 +08:00
Clas Wen
478a7146f5 fix commit 2025-05-24 13:54:06 +08:00
Clas Wen
b4350c9b50 add memberId 2025-05-24 12:52:19 +08:00
Clas Wen
33d93d0347 add event actions 2025-05-24 12:40:25 +08:00
Clas Wen
bd38b8ed2b fix page 2025-05-24 02:42:15 +08:00
Clas Wen
91666db1d7 init 2025-05-24 01:14:46 +08:00
Clas Wen
6512718e0b remove mini-program page 2025-05-18 16:20:17 +08:00
Clas Wen
5dd3b4ccf3 save 2025-05-18 16:15:27 +08:00
Clas Wen
d782137f81 save 2025-05-13 22:00:08 +08:00
Clas Wen
0c7a5a9578 save 2025-04-24 22:12:05 +08:00
Clas Wen
3eb45180cf save 2025-04-24 22:10:04 +08:00
ClasWen
e50f36edc5 add mini-program page 2024-09-24 23:00:40 +08:00