76 Commits

Author SHA1 Message Date
14474ca024 Added delete button on frontend 2025-12-19 22:25:28 +09:00
e7aa62358c Changed the perma delete endpoint to target archive instead of current 2025-12-19 22:16:44 +09:00
8c2ea2b0d0 Merge branch 'main' into develop 2025-12-19 22:04:45 +09:00
30297521f5 Merge branch 'develop' 2025-12-19 22:03:47 +09:00
5b02eb1226 feat(archive): implement sortable columns in archive table with toggle functionality 2025-12-18 01:01:35 +09:00
2889a38ab6 feat(archive): update archive page layout and add season column to episode list 2025-12-17 23:42:40 +09:00
f17905eeff feat(archive): enhance archive page with scrollable table and responsive design 2025-12-17 23:13:40 +09:00
77c0c1586b feat(docs): add admin-only GET endpoint to list archived episodes with Swagger documentation 2025-12-17 23:07:08 +09:00
17f60c9ccb feat(archive): add admin-only endpoint to list archived episodes and implement corresponding frontend page 2025-12-17 23:05:53 +09:00
204c71d7b5 feat(auth): update claim-admin endpoint to use Firebase UID instead of ID token 2025-12-17 22:48:21 +09:00
4b5a8c1d46 feat(auth): add endpoint to set Firebase admin custom claim 2025-12-17 22:21:04 +09:00
2063dffc09 feat(repo): enhance MoveToArchive to compute new IDs for archived episodes 2025-12-11 21:57:17 +09:00
e34d2bf8f1 feat(repo): refactor MoveToArchive to use structured data for improved readability and maintainability 2025-12-11 21:53:09 +09:00
a9de32bed1 feat(repo): format SQL query in MoveToArchive for improved readability 2025-12-11 21:50:21 +09:00
a537eb4fc2 feat(logging): add logging for archive move failures in handlers and episode repository 2025-12-11 21:48:18 +09:00
a0db346ab7 feat(repo): enhance MoveToArchive functionality to handle duplicates and improve error handling 2025-12-11 21:43:50 +09:00
c4ac2ed128 feat(shows): redesign archive functionality and update delete show references 2025-12-11 21:36:24 +09:00
33ccef5142 feat(routes): redesign delete button functionality and restore archive endpoint 2025-12-11 21:33:31 +09:00
dea090b501 feat(auth): remove unused backendClaims and simplify verification messages 2025-12-11 21:28:05 +09:00
41500eaeff feat(shows): redesign selection bar and update delete button functionality 2025-12-11 21:25:51 +09:00
6267753aec feat(auth): update sidebar for authentication status and improve user guidance 2025-12-10 23:23:06 +09:00
6f8d8b8af0 feat(auth): add Firebase environment variables to Docker configuration 2025-12-10 22:57:48 +09:00
6745181a4b feat(auth): improve error handling and user feedback in Google sign-in flow 2025-12-10 22:45:12 +09:00
0f3ee5d537 feat(auth): enhance Google sign-in flow with loading state and error handling 2025-12-10 21:17:48 +09:00
008f8a3cca feat(auth): integrate Firebase authentication and add auth status component
- Added Firebase as a dependency for authentication.
- Created AuthProvider to manage authentication state and user sessions.
- Implemented AuthStatus component to display authentication status in the UI.
- Added verifyFirebaseIdToken function to validate Firebase ID tokens against the backend.
- Updated API endpoints to include Firebase OAuth verification.
- Enhanced ShowsPage to allow authenticated users to delete shows.
- Updated configuration to include Firebase settings and authentication enablement.
- Styled authentication components and added necessary CSS for better UI.
2025-12-10 21:16:14 +09:00
8b268640a5 feat(docker): add Firebase credentials volume to Docker Compose for OAuth integration 2025-12-10 19:37:11 +09:00
8a549504a4 feat(auth): implement Firebase authentication and token verification
- Added FirebaseAuth struct and TokenVerifier interface for verifying Firebase ID tokens.
- Introduced FirebaseConfig struct in config to manage Firebase credentials and project ID.
- Implemented OAuth handler for Firebase ID token verification in HTTP handlers.
- Added middleware for authenticating requests using Firebase tokens.
- Updated router to conditionally apply authentication based on configuration.
- Created tests for the new authentication middleware.
- Added request and response types for Firebase OAuth handling.
- Included a sample JSON file for testing purposes.
2025-12-10 19:05:11 +09:00
aebd3048f6 Refine partId extraction logic to ensure valid animestore URLs and update error message for clarity 2025-12-06 20:04:27 +09:00
138e0d5eb7 Add Danime episode scraping functionality and UI integration 2025-12-06 20:00:53 +09:00
88f4ee3d4a Add Danime episode metadata fetching and related API endpoint
- Implemented FetchEpisode function to retrieve episode metadata from dアニメストア.
- Added /api/v1/danime GET endpoint to fetch episode details by partId.
- Updated Swagger documentation for the new endpoint and response structure.
- Created DanimeEpisodeResponse type for API responses.
- Added tests for the new functionality and handlers.
2025-12-06 19:26:45 +09:00
10c54e9821 Implement default start time for create show endpoint and update documentation 2025-12-06 18:36:57 +09:00
b14847f94d Update README with Swagger documentation and clarify create show endpoint 2025-12-06 18:31:44 +09:00
338403d80d Add create show endpoint with validation and error handling 2025-12-06 18:31:19 +09:00
9ef61fe8a6 Fix Japanese translations for error messages and UI prompts 2025-12-06 03:31:10 +09:00
9674fc9cbe Squashed commit of the following:
commit da3f3bff39f09e753c1c52de0c47a12383cd20dc
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:49:31 2025 +0900

    docs: add README files for frontend and backend with setup instructions and commands

commit df71faa0751d1cef3ad6d50d0293fb8f8239d000
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:44:13 2025 +0900

    chore: update Vite version and add Vitest configuration

    - Updated Vite dependency from rolldown-vite@7.1.12 to ^5.4.11 in package.json.
    - Added setup file for Vitest to handle Vite SSR helpers, preventing ReferenceError during unit tests.
    - Created a new tsconfig.vitest.json file extending the main tsconfig for Vitest compatibility.
    - Added vitest.config.ts to configure Vitest with Node environment and setup files.

commit f3a1710dd0fe12998965992f6b5f8803422087cf
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:37:32 2025 +0900

    feat: add testing framework and implement unit tests for API and config

    - Added Vitest as a testing framework with scripts for running tests.
    - Created unit tests for the `fetchSchedule` and `fetchServerNow` functions in `watchparty.test.ts`.
    - Implemented unit tests for configuration functions in `config.test.ts`.
    - Added utility functions for parsing time in `time.ts` with corresponding tests in `time.test.ts`.
    - Updated API error handling to use `unknown` type for better type safety.
    - Refactored `TimeSyncNotice` and `Timer` components to improve performance and error handling.
    - Enhanced toast notifications by moving related functions to `toastBus.ts`.
    - Improved type definitions across various files for better type safety and clarity.

commit 0d436849fc4a0b87d0c73f4fe14fe1e272d47ad9
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:30:01 2025 +0900

    Refactor components to utilize centralized configuration: update TimeSyncNotice and Timer to use config for intervals; enhance error handling and retry logic in ShowsPage.

commit 8dbd4d207a471d05fab8c6f9cd95e3f4f7ec9099
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:22:28 2025 +0900

    Refactor API endpoint handling: replace join function with buildApiUrl for cleaner URL construction; update BrowserRouter basename to use config

commit 3e327aa73877034019dffe262580536f4be7c62e
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:18:31 2025 +0900

    Refactor configuration management: introduce config.ts for centralized app configuration; update API endpoint handling and logger to use new config

commit 131984d1baf368f94a14a62986eaf028ebbd7c86
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:11:33 2025 +0900

    Refactor API types: move ScheduleResponse and ShowItem types to a new types.ts file; update imports in watchparty and Timer components

commit 8faa4661a9ccc0691490a5766f0eb1d97f24b6e5
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 02:05:42 2025 +0900

    Refactor API handling: introduce centralized error handling and logging; replace direct fetch calls with apiFetch in Timer, ShowsPage, and hooks

commit ffde7e89fcab6f48c6023afab73e4b2e1122efa5
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 01:52:36 2025 +0900

    Add dist directory to .gitignore

commit 128a5be6eaa16bf4db5f7dd832b1d461fa2b835d
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Sat Dec 6 01:52:28 2025 +0900

    Add toast notifications and debug overlay components; refactor Timer and ShowsPage for error handling
2025-12-06 03:03:30 +09:00
51f640bc99 Squashed commit of the following:
commit f17f943bc149fef1a0ef3f884cf8653e70469ac5
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Fri Dec 5 22:33:01 2025 +0900

    Fix JSON tags for Episode struct fields in model.go
2025-12-05 22:47:02 +09:00
409cd4a22f Squashed commit of the following:
commit 8acd255dd459488ac1d9346780e05dc099ba74b1
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Fri Dec 5 21:58:10 2025 +0900

    Fix optional parameters handling in time parsing functions and enhance API response logging

commit 7e9a82a137057c85a909d027c51d71654ec61ac1
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Fri Dec 5 21:53:44 2025 +0900

    Handle API schedule loading errors and log them for debugging

commit ec993908043c841b18fcb66916c5f9ce66b9e2f1
Author: Nik Afiq <nik.afiq98@ymail.com>
Date:   Fri Dec 5 21:48:16 2025 +0900

    Implement logging utility and integrate API request/response error handling
2025-12-05 22:09:40 +09:00
6ac23c24ee Add tests for episode repository methods and refactor service interface 2025-12-03 20:34:08 +09:00
ab7f919d0e Refactor episode service and handlers to use UseCases interface 2025-12-02 20:56:45 +09:00
f8837fed9f Refactor episode management: introduce core episode model and update service/repo interfaces 2025-12-02 20:47:46 +09:00
5f081d3eb9 Added swagger endpoint 2025-11-22 21:43:45 +09:00
b5aed5928b added docs 2025-11-22 21:33:26 +09:00
e6fe4449ea Changed folder structure to allow swagger to generate openapi file 2025-11-22 21:33:04 +09:00
009e79332a changed the delete to handle parameter differently 2025-11-22 20:26:30 +09:00
d819b04020 Added env load from one directory higher 2025-11-22 19:38:22 +09:00
70c76c62c3 Added delete function 2025-11-22 19:37:06 +09:00
a24b72740b Merge branch 'main' into develop 2025-11-12 22:19:21 +09:00
adade2f8cc Changed time sync off threshold 2025-11-12 11:34:47 +09:00
baa1894926 Added TTL to desync flag 2025-11-11 23:43:39 +09:00
2023e12658 Fixed the timeskew second display 2025-11-11 23:16:21 +09:00