• Search for manga on AniList by title. Results are cached for 30 minutes to minimize API calls.

    Parameters

    • search: string

      Search query string.

    • page: number = 1

      Results page number (default: 1).

    • perPage: number = 50

      Results per page (default: 50).

    • Optionaltoken: string

      Optional access token for authenticated requests.

    • OptionalbypassCache: boolean

      Skip cache and fetch from API (default: false).

    • OptionalnoRetry: boolean

      Disable automatic retry logic (default: false).

    Returns Promise<SearchResult<AniListManga>>

    Promise resolving to paginated search results.

    export async function searchManga(
    search: string,
    page: number = 1,
    perPage: number = 50,
    token?: string,
    bypassCache?: boolean,
    noRetry?: boolean,
    ): Promise<SearchResult<AniListManga>> {
    const cacheKey = createCacheKey(search, page, perPage);
    const variables = { search, page, perPage };

    return executeSearchQuery({
    query: SEARCH_MANGA,
    variables,
    search,
    cacheKey,
    searchType: "Searching",
    token,
    bypassCache,
    page,
    perPage,
    noRetry,
    });
    }