Skip to content

Commit

Permalink
Update trakt-manager extension (#16907)
Browse files Browse the repository at this point in the history
* Update trakt-manager extension

- Merge pull request #4 from thesobercoder/merge-before-publish
- feat: add season grid component and update package.json with check script; remove unused refresh and tmdb files
- docs: update README to enhance clarity and add episode search feature
- refactor: remove unused components and types to clean up the codebase
- Merge branch \'contributions/merge-1739029469795\' into merge-before-publish
- Pull contributions
- feat: add pull command to package.json for contributions
- feat: update Trakt API URL and improve client initialization
- feat: add watched_at timestamp to episode grid component
- feat: add watched_at timestamp to episode check-in and history endpoints
- feat: add check-in action for episodes
- feat: add check-in functionality for the first episode of a show
- feat: add check-in functionality for episodes and seasons
- Merge pull request #3 from thesobercoder/dependabot/npm_and_yarn/micromatch-4.0.8
- chore(deps): bump micromatch from 4.0.7 to 4.0.8
- feat: add functionality to retrieve and add the first episode of a show to history
- configs backup: 2025-01-13 22:48:35
- refactor: handle non-200 response status by returning empty data structures
- refactor: correct path formatting in Trakt movie and show contracts
- refactor: update response status codes in Trakt movie and show contracts
- refactor: update shortcut and icon for "Add to History" action in shows and up-next components
- refactor: streamline SeasonGrid usage and enhance GenericGrid properties
- refactor: replace MovieGrid and ShowGrid with GenericGrid and enhance action panel for watchlist items
- refactor: replace ShowGrid with GenericGrid and enhance action panel for up-next shows
- refactor: replace ShowHistoryGrid with GenericGrid and update episode search functionality
- refactor: update recommendation schemas and enhance query parameters for movie and show recommendations
- refactor: replace MovieHistoryGrid and ShowHistoryGrid with GenericGrid and enhance action panel for history items
- refactor: replace ShowGrid with GenericGrid and enhance action panel for shows
- refactor: replace MovieGrid with GenericGrid and enhance action panel for movie items
- feat: add recommendations feature for movies and shows with new API endpoints and grid component
- refactor: rename inner item schemas for movies and shows to base item schemas
- refactor: add episode search functionality and enhance history item components
- refactor: replace hardcoded URLs with constants for IMDb and Trakt in grid item components
- refactor: update IMDb and Trakt URLs for consistency and improve history grid components
- refactor: enhance Trakt schemas and query parameters for improved history tracking
- refactor: update history schemas and components for movie and show history retrieval
- refactor: update Trakt schemas and query parameters for improved data handling
- refactor: enhance query parameters for movie and show history retrieval
- refactor: update Trakt URLs and query parameters for consistency
- refactor: rename mutation functions for consistency and clarity
- refactor: remove unused types and components, update API query parameters for enhanced data retrieval
- feat: integrate Trakt client for episode and season data retrieval
- refactor: simplify Trakt client initialization and enhance API request handling
- feat: integrate Trakt API client and update movie history handling
- refactor: enhance Trakt client response handling and add additional properties
- feat: add ts-rest Trakt API client and contract schemas
- fix: improve hook dependencies
- feat: performance improvements
- chore: update snippets
- fix: memory leak
- Merge pull request #1 from thesobercoder/feature/pagination
- chore: improve formatting
- feat: add console logging for all show api methods
- feat: consolidate all hooks based on feature
- feat: improve movie grid component
- feat: switch shows and up-next command to advanced pagination
- feat: switch history command to advanced pagination
- feat: switch episode-grid component to use useCachedPromise hook
- feat: switch season-grid component to use useCachedPromise hook
- feat: switch watchlist command to advanced pagination
- feat: switch movies command to advanced pagination
- Merge branch \'main\' into feature/pagination
- feat: add check-in first episode command
- feat: implement native grid pagination for movie command
- chore: update CHANGELOG
- feat: use hooks for the seasons component
- feat: improve loading computation and other improvements
- chore: remove loading state from hooks
- feat: add success to useEpisodes hook
- feat: use hooks for episode component
- chore: rename components
- feat: add loading state for mutation
- feat: optimize movie grid component
- feat: optimize show grid component
- feat: use separate movie and show details hook
- feat: optimize useMovies hook
- feat: use hooks for search movies command
- feat: use hooks for up-next command
- feat: refine history command hooks
- feat: use hooks for watchlist command
- feat: bubble up error from history hooks
- feat: add better types
- feat: use hooks for history command
- chore: upgrade packages
- feat: simplify auth massively
- chore: upgrade packages
- chore: update README attribution images
- feat: add attributions details in README
- feat: massive refactor and polishing for release
- chore: update packages
- chore: update auth error message
- feat: switch to react context for authentication state
- chore: update command descriptions
- fix: remove from history shortcut
- fix: add to history action
- chore: update command description
- feat: add remove from history command
- chore: improve message
- fix: catch authorization error gracefully
- fix: unnecessary rerender bug
- fix: view component rerender logic
- fix: refresh command crash if user not authorized
- fix: remove unused helper method
- feat: add history command
- chore: update README
- chore: update README
- chore: update README
- chore: update README
- feat: switch to TMDB readonly bearer token
- fix: watchlist build errors
- feat: add  seasons and episodes to history
- feat: add movie and show to history
- chore: remove unused package.json attribute
- chore: remove console.log
- fix: malformed movie check-in body
- fix: up-next not showing any shows
- feat: prepare for release
- feat: refactor for performance
- feat: invalidate single show cache after next episode check-in
- feat: invalidate cache in refresh command
- chore: update description
- feat: add refresh command
- feat: add additional types
- chore: further refactoring
- chore: further refactoring
- chore: refactor common functions
- feat: optimize types
- fix: lint issues
- feat: skip up next shows which are being rewatched
- chore: cleanup command descriptions
- chore: cleanup and rename command
- fix: improve on-deck search condition
- fix: trakt show link
- feat: optimize subtitle
- fix: year null for movie or show
- chore: cleanup code
- feat: polish up the interface
- fix: show success toast only on success
- feat: check-in next episode
- feat: fix types
- feat: on deck shows
- fix: react rendering warnings
- feat: add preference action
- fix: remove show from watchlist bug
- feat: create show grid component
- feat: empty movie watchlist text
- feat: create movie grid component
- feat: switch shows to background image fetching
- feat: switch movies to background image fetching
- feat: add on-deck command and switch to global type declarations
- feat: add new command snippet and on-deck command
- chore: remove console.log
- feat: cache user details during oauth
- fix: assign max listeners for abort signal
- fix: increase max listener to fix memory leak
- fix: movie search limited to title
- fix: set search movie limit to 10
- fix: pagination rendering
- fix: incorrect shortcut
- fix: keyboard shortcut standardization
- feat: make TMDB API Key optional
- fix: wrong show cache key
- feat: add shows to watchlist
- fix: check-in issues
- fix: episode toast labels
- feat: open links for Trakt and IMDb
- feat: switch episodes to Trakt API
- fix: movie image cache bug
- feat: optimize fetch calls
- feat: turn off TMDB if no key if present
- fix: use path.join
- feat: switch seasons to Trakt API
- chore: cleanup constants
- feat: add check-in to watchlist
- feat: switch movie search to Trakt
- feat: remove from watchlist
- feat: add watchlist for movies
- feat: switch to 3 column layout for episodes
- feat: add episode view
- feat: switch shows to TMDB API
- chore: remove unused assets
- feat: movie title fallback
- feat: add error handling for abort signal
- feat: switch moives to TMDB API
- feat: show toast if not AbortError
- chore: remove console logs
- chore: update README
- feat: store fetched images
- chore: remove unused null coalescing operators
- feat: add abort controller cleanup on unload
- feat: improve error handling for movies
- feat: add abort controller for movies
- feat: movie poster
- chore: format with import sorting
- fix: migrate to npm lock file required to publish
- fix: lint issues
- chore: remove redundant packages
- chore: format
- chore: update README
- chore: update README
- chore: improve README
- chore: update README
- chore: update README
- chore: update README
- chore: update README
- chore: update README
- feat: add show seasons
- feat: search shows
- feat: add movie to watchlist
- feat: implement search movie list
- feat: fix oauth login flow
- feat: get movie list
- initial commit

* Delete extensions/trakt-manager/src/api directory

* chore: removed unused files

* chore: remove unused hooks

* chore: remove unused types

* chore: remove unused command

* chore: update CHANGELOG

* chore: update publish and pull scripts in package.json

* Update CHANGELOG.md and optimise images

---------

Co-authored-by: raycastbot <[email protected]>
  • Loading branch information
thesobercoder and raycastbot authored Feb 13, 2025
1 parent ed18569 commit 68d7c77
Show file tree
Hide file tree
Showing 45 changed files with 4,120 additions and 2,904 deletions.
6 changes: 6 additions & 0 deletions extensions/trakt-manager/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Trakt Manager Changelog

## [Update] - 2025-02-08

- Added new Recommendation command
- Added new Search Episodes command
- Completely rewrote the API client from ground-up to be end-to-end type-safe.

## [Update] - 2024-06-23

- Fixed rendering performance issues
Expand Down
23 changes: 8 additions & 15 deletions extensions/trakt-manager/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,7 @@ Control your Trakt account directly from Raycast.

## Usage

Trakt Manager enables you to control your Trakt account directly from Raycast. It provides a set of commands to perform various actions on your account like adding shows to watchlist, checking-in on shows, and more. It allows you to sign in to your Trakt account using OAuth and then perform actions on your account.

> [!IMPORTANT]
> Please note that you would need a VIP account to be able to perform actions like add to watchlist or check-in.
> [!NOTE]
> Since Trakt doesn't provide a way to get the poster images, this extension makes use of a read only TMDB API bearer token to fetch the poster images from TMDB.
Trakt Manager enables you to control your Trakt account directly from Raycast. It provides a set of commands to perform various actions on your account like adding items to watchlist, marking items as watched, and many more. It allows you to sign in to your Trakt account using OAuth and then perform actions on your account.

## Commands

Expand All @@ -22,6 +16,10 @@ Search for movies by title.

Search for shows by title.

### Search Episodes

Search for episodes by title.

### Watchlist

Lists movies and shows that are in your watchlist.
Expand All @@ -34,15 +32,10 @@ Get the list of shows that are up next.

Lists movies and shows that are in your history.

### Refresh

Refreshes the cache from API.
### Recommendation

> [!NOTE]
> This command also runs in the background every 6 hours to keep the cache up to date.
Lists recommended movies and shows.

## Powered by

<img src="https://trakt.tv/assets/branding/logos/wide/pixels/trakt-wide-red-black-eb9e7093a42b12fd46f65ea6ca9ef118462b657847842f427dc1b553c309df2f.png" alt="Trakt" width="400"/>
<br />
<img src="https://www.themoviedb.org/assets/2/v4/logos/v2/blue_square_2-d537fb228cf3ded904ef09b136fe3fec72548ebc1fea3fbbd1ad9e36364db38b.svg" alt="TMDB" width="400"/>
<img src="https://trakt.tv/assets/logos/logo.tagline.positive-29126460f3e6cbf05387c299752cd30b076b25997363d71487d26123265b3d3e.svg" alt="Trakt" width="400"/>
Binary file modified extensions/trakt-manager/assets/episode.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified extensions/trakt-manager/assets/poster.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified extensions/trakt-manager/assets/trakt.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified extensions/trakt-manager/metadata/trakt-manager-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 68d7c77

Please sign in to comment.