WIP Implement search and watch prototype
This commit is contained in:
96
openapi/extractor.ts
Normal file
96
openapi/extractor.ts
Normal file
@ -0,0 +1,96 @@
|
||||
/**
|
||||
* Generated by orval v7.10.0 🍺
|
||||
* Do not edit manually.
|
||||
* OpenAPI definition
|
||||
* OpenAPI spec version: v0
|
||||
*/
|
||||
import axios from 'axios';
|
||||
import type {
|
||||
AxiosRequestConfig,
|
||||
AxiosResponse
|
||||
} from 'axios';
|
||||
|
||||
export interface KodikMetadata {
|
||||
title?: string;
|
||||
translations?: KodikTranslation[];
|
||||
}
|
||||
|
||||
export interface KodikTranslation {
|
||||
id?: string;
|
||||
title?: string;
|
||||
mediaId?: string;
|
||||
mediaHash?: string;
|
||||
mediaType?: string;
|
||||
translationType?: string;
|
||||
episodeCount?: number;
|
||||
}
|
||||
|
||||
export interface KodikTranslationDTO {
|
||||
mediaType?: string;
|
||||
mediaId?: string;
|
||||
mediaHash?: string;
|
||||
}
|
||||
|
||||
export type KodikVideoLinksLinks = { [key: string]: Link[] };
|
||||
|
||||
export interface KodikVideoLinks {
|
||||
links?: KodikVideoLinksLinks;
|
||||
}
|
||||
|
||||
export interface Link {
|
||||
type?: string;
|
||||
src?: string;
|
||||
}
|
||||
|
||||
export type ShikimoriParams = {
|
||||
id: string;
|
||||
};
|
||||
|
||||
export type KodikParams = {
|
||||
id: string;
|
||||
};
|
||||
|
||||
export type VideoParams = {
|
||||
mediaType: string;
|
||||
mediaId: string;
|
||||
mediaHash: string;
|
||||
quality: string;
|
||||
episode: number;
|
||||
};
|
||||
|
||||
export const shikimori = <TData = AxiosResponse<KodikMetadata>>(
|
||||
params: ShikimoriParams, options?: AxiosRequestConfig
|
||||
): Promise<TData> => {
|
||||
return axios.get(
|
||||
`http://localhost:8081/metadata/shikimori`, {
|
||||
...options,
|
||||
params: { ...params, ...options?.params },
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export const kodik = <TData = AxiosResponse<KodikMetadata>>(
|
||||
params: KodikParams, options?: AxiosRequestConfig
|
||||
): Promise<TData> => {
|
||||
return axios.get(
|
||||
`http://localhost:8081/metadata/kodik`, {
|
||||
...options,
|
||||
params: { ...params, ...options?.params },
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export const video = <TData = AxiosResponse<KodikVideoLinks>>(
|
||||
params: VideoParams, options?: AxiosRequestConfig
|
||||
): Promise<TData> => {
|
||||
return axios.get(
|
||||
`http://localhost:8081/extract/video`, {
|
||||
...options,
|
||||
params: { ...params, ...options?.params },
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export type ShikimoriResult = AxiosResponse<KodikMetadata>
|
||||
export type KodikResult = AxiosResponse<KodikMetadata>
|
||||
export type VideoResult = AxiosResponse<KodikVideoLinks>
|
Reference in New Issue
Block a user