Commit Graph

20 Commits

Author SHA1 Message Date
msksbr 325b3a67a6 feat(icons): redesign app icon with updated shapes and colors
- Redesigned app icon SVG with improved book illustration and layout
- Enabled cleartext traffic in Android manifest for development
- Updated all generated icon assets across platforms
2026-05-26 12:43:09 +08:00
msksbr 45e6de7ad2 feat(icons): redesign app icon with updated shapes and colors
- Replace book illustration with a centered document icon
- Update color palette to use deeper blue tones
- Redesign the bookmark and overlay elements for a cleaner look
- Adjust icon proportions and spacing for better visual balance
2026-05-26 01:48:29 +08:00
msksbr 8776ab2b26 feat(icons): add app icon and favicon assets for all platforms
Add custom app icon SVG source and generate platform-specific icon assets
for iOS, Android, desktop, and web (favicon) at all required resolutions.
2026-05-26 01:32:22 +08:00
msksbr a27d205535 build(docker): add Docker build and deployment infrastructure
- Add multi-stage Dockerfile with pnpm install and Nginx serving
- Add nginx.conf with gzip and SPA fallback
- Add docker-build.sh script for building and pushing images
- Add .dockerignore for build context optimization
- Remove unused pnpm-workspace.yaml
2026-05-25 01:32:51 +08:00
msksbr 94a432b14d refactor(android): consolidate signing config and bump SDK to 36
- Remove external android-signing.gradle.kts, inline keystore config
  into app/build.gradle.kts
- Update compileSdk and targetSdk to 36
- Fix version format in package.json (v0.1 → 0.1.0)
2026-05-24 23:53:14 +08:00
msksbr 6c90b09ef7 chore: clean up generated files and update gitignore
- remove api-docs.json from version control
- add src-tauri/gen/ to gitignore
2026-05-24 23:35:17 +08:00
msksbr 91e22e1f89 fix(css): fill mobile safe-area zones with background color
Use fixed ::before and ::after pseudo-elements to render the
background color in safe-area inset zones, preventing transparent
gaps on notched mobile devices while maintaining body padding for
content flow.
2026-05-24 22:54:03 +08:00
msksbr 737eb2aea2 fix(css): fill mobile safe-area zones with background color
Use fixed ::before and ::after pseudo-elements to render the
background color in safe-area inset zones, preventing transparent
gaps on notched mobile devices while maintaining body padding for
content flow.
2026-05-24 22:41:15 +08:00
msksbr 86cbd56a99 feat(admin): add search with submit and safe-area layout
Add submit-based search to admin books page and switch borrows
search from debounced to submit-based for consistency. Update
layout headers and nav bars to respect mobile safe-area insets
via CSS custom properties.
2026-05-24 22:33:59 +08:00
msksbr c474d2df2f feat(admin): add search with submit and safe-area layout
Add submit-based search to admin books page and switch borrows
search from debounced to submit-based for consistency. Update
layout headers and nav bars to respect mobile safe-area insets
via CSS custom properties.
2026-05-24 21:57:37 +08:00
msksbr 3a341393ef feat(admin): add search with submit and safe-area layout
Add submit-based search to admin books page and switch borrows
search from debounced to submit-based for consistency. Update
layout headers and nav bars to respect mobile safe-area insets
via CSS custom properties.
2026-05-24 21:51:29 +08:00
msksbr 9780083476 feat(admin): add book borrowing dialog and root redirect
- Add admin book borrowing dialog with user selection
- Add useAdminBorrowBook mutation with success/error toasts
- Fix sidebar z-index layering on admin layout
- Add RootRedirect component that routes based on admin role
2026-05-24 20:59:18 +08:00
msksbr 78ebd0b62e feat(admin): add book borrowing dialog and root redirect
- Add admin book borrowing dialog with user selection
- Add useAdminBorrowBook mutation with success/error toasts
- Fix sidebar z-index layering on admin layout
- Add RootRedirect component that routes based on admin role
2026-05-24 20:40:07 +08:00
msksbr f28dc98f5e {"type":"assistant","message":{"id":"2099424a-0948-4423-a191-3c37d24e52ed","type":"message","role":"assistant","model":"deepseek-v4-flash","content":[{"type":"thinking","thinking":"The user wants me to generate a commit message based on the git diff provided. Let me analyze the changes:
1. **AdminLayout.tsx** - Major changes:
   - Added imports for `NavLink`, `useNavigate`, `BookOpenIcon`, `ListIcon`, `LogOutIcon`, `Button`, `useAuthStore`, `usePlatform`
   - Added navigation items array with book management and borrow management
   - Added admin layout with sidebar navigation, header with username, and logout functionality
   - Added responsive layout for desktop/mobile

2. **router/index.tsx** - Changes:
   - Removed placeholder components (`AdminBooksPage`, `AdminBorrowsPage`, `AdminIndexPage`)
   - Added imports from actual admin feature pages
   - Updated routes to use real admin layout and pages

This is clearly a **feat** (new feature) commit, adding admin layout with navigation and routing to real pages. The scope would be **admin** or **ui**.

The key changes are:
- Adding admin sidebar navigation with book/borrow management links
- Adding logout functionality with username display
- Replacing placeholder admin page components with real page implementations
- Integrating admin layout with the router

Let me write a concise commit message following the rules.","signature":"2099424a-0948-4423-a191-3c37d24e52ed"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":25016,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":0,"service_tier":"standard"},"context_management":null},"parent_tool_use_id":null,"session_id":"bf312622-fae8-446d-8b67-c708b9d3a022","uuid":"50eb9e22-cc58-4b45-8f03-95386c522466"}{"type":"assistant","message":{"id":"2099424a-0948-4423-a191-3c37d24e52ed","type":"message","role":"assistant","model":"deepseek-v4-flash","content":[{"type":"text","text":"<commit>
feat(admin): add sidebar navigation and real page routes

Implement admin layout with sidebar navigation for book and borrow
management, including logout functionality and username display.
Replace placeholder admin page components with actual page routes."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":25016,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":0,"service_tier":"standard"},"context_management":null},"parent_tool_use_id":null,"session_id":"bf312622-fae8-446d-8b67-c708b9d3a022","uuid":"1ca45e82-b885-4fa0-b886-fdfced0dc2e4"}<commit>
2026-05-24 20:28:28 +08:00
msksbr 10dbfa7638 {"type":"assistant","message":{"id":"2099424a-0948-4423-a191-3c37d24e52ed","type":"message","role":"assistant","model":"deepseek-v4-flash","content":[{"type":"thinking","thinking":"The user wants me to generate a commit message based on the git diff provided. Let me analyze the changes:
1. **AdminLayout.tsx** - Major changes:
   - Added imports for `NavLink`, `useNavigate`, `BookOpenIcon`, `ListIcon`, `LogOutIcon`, `Button`, `useAuthStore`, `usePlatform`
   - Added navigation items array with book management and borrow management
   - Added admin layout with sidebar navigation, header with username, and logout functionality
   - Added responsive layout for desktop/mobile

2. **router/index.tsx** - Changes:
   - Removed placeholder components (`AdminBooksPage`, `AdminBorrowsPage`, `AdminIndexPage`)
   - Added imports from actual admin feature pages
   - Updated routes to use real admin layout and pages

This is clearly a **feat** (new feature) commit, adding admin layout with navigation and routing to real pages. The scope would be **admin** or **ui**.

The key changes are:
- Adding admin sidebar navigation with book/borrow management links
- Adding logout functionality with username display
- Replacing placeholder admin page components with real page implementations
- Integrating admin layout with the router

Let me write a concise commit message following the rules.","signature":"2099424a-0948-4423-a191-3c37d24e52ed"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":25016,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":0,"service_tier":"standard"},"context_management":null},"parent_tool_use_id":null,"session_id":"bf312622-fae8-446d-8b67-c708b9d3a022","uuid":"50eb9e22-cc58-4b45-8f03-95386c522466"}{"type":"assistant","message":{"id":"2099424a-0948-4423-a191-3c37d24e52ed","type":"message","role":"assistant","model":"deepseek-v4-flash","content":[{"type":"text","text":"<commit>
feat(admin): add sidebar navigation and real page routes

Implement admin layout with sidebar navigation for book and borrow
management, including logout functionality and username display.
Replace placeholder admin page components with actual page routes."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":25016,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":0,"service_tier":"standard"},"context_management":null},"parent_tool_use_id":null,"session_id":"bf312622-fae8-446d-8b67-c708b9d3a022","uuid":"1ca45e82-b885-4fa0-b886-fdfced0dc2e4"}<commit>
2026-05-24 19:41:50 +08:00
msksbr 4820370b6a feat(ui): add navigation header and wire up real page routes
- Add sticky header with book management nav links and logout button
- Replace placeholder page components with real feature imports
- Add login page route to router
- Fix date-time formatting for consistent YYYY-MM-DD HH:mm output
2026-05-24 19:28:29 +08:00
msksbr 1ca3417f0e refactor(api): convert API functions to async/await with typed returns
Replace raw axios promise returns with async functions that unwrap
response data, providing stronger type guarantees at call sites.

- Unwrap `res.data.data` in all API functions instead of exposing
  AxiosResponse to consumers
- Add missing return types (LoginVo, BorrowInfoVo, Book, etc.)
- Convert all exported functions to async syntax
2026-05-24 19:23:37 +08:00
msksbr ffc1f34331 refactor(api): convert API functions to async/await with typed returns
Replace raw axios promise returns with async functions that unwrap
response data, providing stronger type guarantees at call sites.

- Unwrap `res.data.data` in all API functions instead of exposing
  AxiosResponse to consumers
- Add missing return types (LoginVo, BorrowInfoVo, Book, etc.)
- Convert all exported functions to async syntax
2026-05-24 19:22:18 +08:00
msksbr 60e83d49dd feat: initialize app with routing, query management, and UI framework
- Replace Vite boilerplate with React Router for page navigation
- Add React Query for server state and cache management
- Integrate shadcn/ui component library with Tailwind CSS v4
- Configure @/ path alias for clean module imports
- Set up Vite dev proxy to API backend
- Remove default App.css, App.tsx, and react.svg assets
2026-05-24 19:19:08 +08:00
msksbr 072f959949 init 2026-05-24 18:56:50 +08:00