chore: cleanup unused files

This commit is contained in:
Benexl
2025-07-27 23:50:25 +03:00
parent 84570c5595
commit 58618bd82d
8 changed files with 0 additions and 670 deletions

View File

@@ -1,137 +0,0 @@
query ($id: Int) {
Page {
media(id: $id) {
id
idMal
title {
romaji
english
}
mediaListEntry {
status
id
progress
}
nextAiringEpisode {
timeUntilAiring
airingAt
episode
}
coverImage {
extraLarge
}
characters(perPage: 5, sort: FAVOURITES_DESC) {
edges {
node {
name {
full
}
gender
dateOfBirth {
year
month
day
}
age
image {
medium
large
}
description
}
voiceActors {
name {
full
}
image {
medium
large
}
}
}
}
studios {
nodes {
name
isAnimationStudio
}
}
season
format
status
seasonYear
description
genres
synonyms
startDate {
year
month
day
}
endDate {
year
month
day
}
duration
countryOfOrigin
averageScore
popularity
streamingEpisodes {
title
thumbnail
}
favourites
source
hashtag
siteUrl
tags {
name
rank
}
reviews(sort: SCORE_DESC, perPage: 3) {
nodes {
summary
user {
name
avatar {
medium
large
}
}
}
}
recommendations(sort: RATING_DESC, perPage: 10) {
nodes {
mediaRecommendation {
title {
romaji
english
}
}
}
}
relations {
nodes {
title {
romaji
english
native
}
}
}
externalLinks {
url
site
icon
}
rankings {
rank
context
}
bannerImage
episodes
}
}
}

View File

@@ -1,65 +0,0 @@
query ($type: MediaType, $page: Int, $perPage: Int) {
Page(perPage: $perPage, page: $page) {
media(sort: FAVOURITES_DESC, type: $type, genre_not_in: ["hentai"]) {
id
idMal
title {
romaji
english
}
coverImage {
medium
large
}
trailer {
site
id
}
mediaListEntry {
status
id
progress
}
popularity
streamingEpisodes {
title
thumbnail
}
streamingEpisodes {
title
thumbnail
}
favourites
averageScore
episodes
description
genres
synonyms
studios {
nodes {
name
isAnimationStudio
}
}
tags {
name
}
startDate {
year
month
day
}
endDate {
year
month
day
}
status
nextAiringEpisode {
timeUntilAiring
airingAt
episode
}
}
}
}

View File

@@ -1,61 +0,0 @@
query ($type: MediaType, $page: Int, $perPage: Int) {
Page(perPage: $perPage, page: $page) {
media(sort: POPULARITY_DESC, type: $type, genre_not_in: ["hentai"]) {
id
idMal
title {
romaji
english
}
coverImage {
medium
large
}
trailer {
site
id
}
popularity
streamingEpisodes {
title
thumbnail
}
favourites
averageScore
description
episodes
genres
synonyms
mediaListEntry {
status
id
progress
}
studios {
nodes {
name
isAnimationStudio
}
}
tags {
name
}
startDate {
year
month
day
}
endDate {
year
month
day
}
status
nextAiringEpisode {
timeUntilAiring
airingAt
episode
}
}
}
}

View File

@@ -1,68 +0,0 @@
query ($type: MediaType, $page: Int, $perPage: Int) {
Page(perPage: $perPage, page: $page) {
media(
sort: UPDATED_AT_DESC
type: $type
averageScore_greater: 50
genre_not_in: ["hentai"]
status: RELEASING
) {
id
idMal
title {
romaji
english
}
coverImage {
medium
large
}
trailer {
site
id
}
mediaListEntry {
status
id
progress
}
popularity
streamingEpisodes {
title
thumbnail
}
favourites
averageScore
description
genres
synonyms
episodes
studios {
nodes {
name
isAnimationStudio
}
}
tags {
name
}
startDate {
year
month
day
}
endDate {
year
month
day
}
status
nextAiringEpisode {
timeUntilAiring
airingAt
episode
}
}
}
}

View File

@@ -1,61 +0,0 @@
query ($type: MediaType, $page: Int, $perPage: Int) {
Page(perPage: $perPage, page: $page) {
media(sort: SCORE_DESC, type: $type, genre_not_in: ["hentai"]) {
id
idMal
title {
romaji
english
}
coverImage {
medium
large
}
trailer {
site
id
}
mediaListEntry {
status
id
progress
}
popularity
streamingEpisodes {
title
thumbnail
}
episodes
favourites
averageScore
description
genres
synonyms
studios {
nodes {
name
isAnimationStudio
}
}
tags {
name
}
startDate {
year
month
day
}
endDate {
year
month
day
}
status
nextAiringEpisode {
timeUntilAiring
airingAt
episode
}
}
}
}

View File

@@ -1,61 +0,0 @@
query ($type: MediaType, $page: Int, $perPage: Int) {
Page(perPage: $perPage, page: $page) {
media(sort: TRENDING_DESC, type: $type, genre_not_in: ["hentai"]) {
id
idMal
title {
romaji
english
}
coverImage {
medium
large
}
trailer {
site
id
}
popularity
streamingEpisodes {
title
thumbnail
}
favourites
averageScore
genres
synonyms
episodes
description
studios {
nodes {
name
isAnimationStudio
}
}
tags {
name
}
startDate {
year
month
day
}
mediaListEntry {
status
id
progress
}
endDate {
year
month
day
}
status
nextAiringEpisode {
timeUntilAiring
airingAt
episode
}
}
}
}

View File

@@ -1,72 +0,0 @@
query ($page: Int, $type: MediaType, $perPage: Int) {
Page(perPage: $perPage, page: $page) {
pageInfo {
total
perPage
currentPage
hasNextPage
}
media(
type: $type
status: NOT_YET_RELEASED
sort: POPULARITY_DESC
genre_not_in: ["hentai"]
) {
id
idMal
title {
romaji
english
}
coverImage {
medium
large
}
trailer {
site
id
}
mediaListEntry {
status
id
progress
}
popularity
streamingEpisodes {
title
thumbnail
}
favourites
averageScore
genres
synonyms
episodes
description
studios {
nodes {
name
isAnimationStudio
}
}
tags {
name
}
startDate {
year
month
day
}
endDate {
year
month
day
}
status
nextAiringEpisode {
timeUntilAiring
airingAt
episode
}
}
}
}

View File

@@ -1,145 +0,0 @@
"""
Example integration of IPC MPV Player with FastAnime.
This shows how to use the updated PlayerParams with IPC-specific parameters
for episode navigation features. The IPC player is automatically used when
mpv.use_ipc is enabled and the required parameters are provided.
"""
from typing import List, Literal, Optional
from ....libs.player.params import PlayerParams
from ....libs.provider.anime.base import BaseAnimeProvider
from ....libs.provider.anime.types import Anime
def create_ipc_player_params(
url: str,
title: str,
provider: BaseAnimeProvider,
anime: Anime,
current_episode: str,
translation_type: Literal["sub", "dub"] = "sub",
subtitles: Optional[List[str]] = None,
headers: Optional[dict] = None,
start_time: Optional[str] = None,
) -> PlayerParams:
"""
Create PlayerParams with IPC player dependencies for episode navigation.
Args:
url: Stream URL
title: Episode title
provider: Anime provider for fetching episode streams
anime: Current anime object
current_episode: Current episode number
translation_type: Translation type ("sub" or "dub")
subtitles: List of subtitle URLs
headers: HTTP headers for streaming
start_time: Start time for playback
Returns:
PlayerParams configured for IPC player
"""
# Get available episodes for the translation type
available_episodes: List[str] = getattr(anime.episodes, translation_type, [])
return PlayerParams(
url=url,
title=title,
subtitles=subtitles,
headers=headers,
start_time=start_time,
# IPC-specific parameters
anime_provider=provider,
current_anime=anime,
available_episodes=available_episodes,
current_episode=current_episode,
current_anime_id=anime.id,
current_anime_title=anime.title,
current_translation_type=translation_type,
)
def example_usage():
"""Example of how to use the IPC player in an interactive session."""
# This would typically be called from within the servers.py menu
# when the IPC player is enabled
# Updated integration example:
"""
# In servers.py, around line 82:
if config.mpv.use_ipc and state.provider.anime:
# Get available episodes for current translation type
available_episodes = getattr(
state.provider.anime.episodes,
config.stream.translation_type,
[]
)
# Create player params with IPC dependencies
player_result = ctx.player.play(
PlayerParams(
url=stream_link_obj.link,
title=final_title,
subtitles=[sub.url for sub in selected_server.subtitles],
headers=selected_server.headers,
start_time=state.provider.start_time,
# IPC-specific parameters
anime_provider=provider,
current_anime=state.provider.anime,
available_episodes=available_episodes,
current_episode=episode_number,
current_anime_id=state.provider.anime.id,
current_anime_title=state.provider.anime.title,
current_translation_type=config.stream.translation_type
)
)
else:
# Use regular player without IPC features
player_result = ctx.player.play(
PlayerParams(
url=stream_link_obj.link,
title=final_title,
subtitles=[sub.url for sub in selected_server.subtitles],
headers=selected_server.headers,
start_time=state.provider.start_time,
)
)
"""
pass
# Key features enabled by IPC player:
#
# 1. Episode Navigation:
# - Shift+N: Next episode
# - Shift+P: Previous episode
# - Shift+R: Reload current episode
#
# 2. Quality/Server switching:
# - Script message: select-quality 720
# - Script message: select-server gogoanime
#
# 3. Episode jumping:
# - Script message: select-episode 5
#
# 4. Translation type switching:
# - Shift+T: Toggle between sub/dub
#
# 5. Auto-next episode (when implemented):
# - Automatically plays next episode when current one ends
#
# To send script messages from MPV console (` key):
# script-message select-episode 5
# script-message select-quality 1080
# script-message select-server top
#
# Configuration:
# To enable IPC player, set in config: mpv.use_ipc = true
#
# The IPC player will automatically be used when:
# 1. mpv.use_ipc is enabled in config
# 2. The required anime provider and episode data is passed in PlayerParams
# 3. MPV executable is available and unix sockets are supported (Linux/macOS)