@jellyfin/sdk
Version:
A TypeScript SDK for Jellyfin.
791 lines (790 loc) • 55.3 kB
JavaScript
import globalAxios from 'axios';
import { assertParamExists, DUMMY_BASE_URL, setApiKeyToObject, setSearchParams, toPathString, createRequestFunction } from '../common.js';
import { operationServerMap, BaseAPI, BASE_PATH } from '../base.js';
/* tslint:disable */
/* eslint-disable */
/**
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* Do not edit the class manually.
*
* Jellyfin API
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
/**
* InstantMixApi - axios parameter creator
* @export
*/
const InstantMixApiAxiosParamCreator = function (configuration) {
return {
/**
*
* @summary Creates an instant playlist based on a given album.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromAlbum: async (itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'itemId' is not null or undefined
assertParamExists('getInstantMixFromAlbum', 'itemId', itemId);
const localVarPath = `/Albums/{itemId}/InstantMix`
.replace(`{${"itemId"}}`, encodeURIComponent(String(itemId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Creates an instant playlist based on a given artist.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromArtists: async (itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'itemId' is not null or undefined
assertParamExists('getInstantMixFromArtists', 'itemId', itemId);
const localVarPath = `/Artists/{itemId}/InstantMix`
.replace(`{${"itemId"}}`, encodeURIComponent(String(itemId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Creates an instant playlist based on a given artist.
* @param {string} id The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @deprecated
* @throws {RequiredError}
*/
getInstantMixFromArtists2: async (id, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'id' is not null or undefined
assertParamExists('getInstantMixFromArtists2', 'id', id);
const localVarPath = `/Artists/InstantMix`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (id !== undefined) {
localVarQueryParameter['id'] = id;
}
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Creates an instant playlist based on a given item.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromItem: async (itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'itemId' is not null or undefined
assertParamExists('getInstantMixFromItem', 'itemId', itemId);
const localVarPath = `/Items/{itemId}/InstantMix`
.replace(`{${"itemId"}}`, encodeURIComponent(String(itemId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Creates an instant playlist based on a given genre.
* @param {string} id The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromMusicGenreById: async (id, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'id' is not null or undefined
assertParamExists('getInstantMixFromMusicGenreById', 'id', id);
const localVarPath = `/MusicGenres/InstantMix`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (id !== undefined) {
localVarQueryParameter['id'] = id;
}
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Creates an instant playlist based on a given genre.
* @param {string} name The genre name.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromMusicGenreByName: async (name, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'name' is not null or undefined
assertParamExists('getInstantMixFromMusicGenreByName', 'name', name);
const localVarPath = `/MusicGenres/{name}/InstantMix`
.replace(`{${"name"}}`, encodeURIComponent(String(name)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Creates an instant playlist based on a given playlist.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromPlaylist: async (itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'itemId' is not null or undefined
assertParamExists('getInstantMixFromPlaylist', 'itemId', itemId);
const localVarPath = `/Playlists/{itemId}/InstantMix`
.replace(`{${"itemId"}}`, encodeURIComponent(String(itemId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary Creates an instant playlist based on a given song.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromSong: async (itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options = {}) => {
// verify required parameter 'itemId' is not null or undefined
assertParamExists('getInstantMixFromSong', 'itemId', itemId);
const localVarPath = `/Songs/{itemId}/InstantMix`
.replace(`{${"itemId"}}`, encodeURIComponent(String(itemId)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication CustomAuthentication required
await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration);
if (userId !== undefined) {
localVarQueryParameter['userId'] = userId;
}
if (limit !== undefined) {
localVarQueryParameter['limit'] = limit;
}
if (fields) {
localVarQueryParameter['fields'] = fields;
}
if (enableImages !== undefined) {
localVarQueryParameter['enableImages'] = enableImages;
}
if (enableUserData !== undefined) {
localVarQueryParameter['enableUserData'] = enableUserData;
}
if (imageTypeLimit !== undefined) {
localVarQueryParameter['imageTypeLimit'] = imageTypeLimit;
}
if (enableImageTypes) {
localVarQueryParameter['enableImageTypes'] = enableImageTypes;
}
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
};
};
/**
* InstantMixApi - functional programming interface
* @export
*/
const InstantMixApiFp = function (configuration) {
const localVarAxiosParamCreator = InstantMixApiAxiosParamCreator(configuration);
return {
/**
*
* @summary Creates an instant playlist based on a given album.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getInstantMixFromAlbum(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromAlbum(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromAlbum']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Creates an instant playlist based on a given artist.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getInstantMixFromArtists(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromArtists(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromArtists']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Creates an instant playlist based on a given artist.
* @param {string} id The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @deprecated
* @throws {RequiredError}
*/
async getInstantMixFromArtists2(id, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromArtists2(id, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromArtists2']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Creates an instant playlist based on a given item.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getInstantMixFromItem(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromItem(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromItem']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Creates an instant playlist based on a given genre.
* @param {string} id The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getInstantMixFromMusicGenreById(id, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromMusicGenreById(id, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromMusicGenreById']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Creates an instant playlist based on a given genre.
* @param {string} name The genre name.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getInstantMixFromMusicGenreByName(name, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromMusicGenreByName(name, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromMusicGenreByName']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Creates an instant playlist based on a given playlist.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getInstantMixFromPlaylist(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromPlaylist(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromPlaylist']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
/**
*
* @summary Creates an instant playlist based on a given song.
* @param {string} itemId The item id.
* @param {string} [userId] Optional. Filter by user id, and attach user data.
* @param {number} [limit] Optional. The maximum number of records to return.
* @param {Array<ItemFields>} [fields] Optional. Specify additional fields of information to return in the output.
* @param {boolean} [enableImages] Optional. Include image information in output.
* @param {boolean} [enableUserData] Optional. Include user data.
* @param {number} [imageTypeLimit] Optional. The max number of images to return, per image type.
* @param {Array<ImageType>} [enableImageTypes] Optional. The image types to include in the output.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getInstantMixFromSong(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options) {
var _a, _b, _c;
const localVarAxiosArgs = await localVarAxiosParamCreator.getInstantMixFromSong(itemId, userId, limit, fields, enableImages, enableUserData, imageTypeLimit, enableImageTypes, options);
const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InstantMixApi.getInstantMixFromSong']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
},
};
};
/**
* InstantMixApi - factory interface
* @export
*/
const InstantMixApiFactory = function (configuration, basePath, axios) {
const localVarFp = InstantMixApiFp(configuration);
return {
/**
*
* @summary Creates an instant playlist based on a given album.
* @param {InstantMixApiGetInstantMixFromAlbumRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromAlbum(requestParameters, options) {
return localVarFp.getInstantMixFromAlbum(requestParameters.itemId, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Creates an instant playlist based on a given artist.
* @param {InstantMixApiGetInstantMixFromArtistsRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromArtists(requestParameters, options) {
return localVarFp.getInstantMixFromArtists(requestParameters.itemId, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Creates an instant playlist based on a given artist.
* @param {InstantMixApiGetInstantMixFromArtists2Request} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @deprecated
* @throws {RequiredError}
*/
getInstantMixFromArtists2(requestParameters, options) {
return localVarFp.getInstantMixFromArtists2(requestParameters.id, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Creates an instant playlist based on a given item.
* @param {InstantMixApiGetInstantMixFromItemRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromItem(requestParameters, options) {
return localVarFp.getInstantMixFromItem(requestParameters.itemId, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Creates an instant playlist based on a given genre.
* @param {InstantMixApiGetInstantMixFromMusicGenreByIdRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromMusicGenreById(requestParameters, options) {
return localVarFp.getInstantMixFromMusicGenreById(requestParameters.id, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Creates an instant playlist based on a given genre.
* @param {InstantMixApiGetInstantMixFromMusicGenreByNameRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromMusicGenreByName(requestParameters, options) {
return localVarFp.getInstantMixFromMusicGenreByName(requestParameters.name, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Creates an instant playlist based on a given playlist.
* @param {InstantMixApiGetInstantMixFromPlaylistRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromPlaylist(requestParameters, options) {
return localVarFp.getInstantMixFromPlaylist(requestParameters.itemId, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Creates an instant playlist based on a given song.
* @param {InstantMixApiGetInstantMixFromSongRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getInstantMixFromSong(requestParameters, options) {
return localVarFp.getInstantMixFromSong(requestParameters.itemId, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(axios, basePath));
},
};
};
/**
* InstantMixApi - object-oriented interface
* @export
* @class InstantMixApi
* @extends {BaseAPI}
*/
class InstantMixApi extends BaseAPI {
/**
*
* @summary Creates an instant playlist based on a given album.
* @param {InstantMixApiGetInstantMixFromAlbumRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof InstantMixApi
*/
getInstantMixFromAlbum(requestParameters, options) {
return InstantMixApiFp(this.configuration).getInstantMixFromAlbum(requestParameters.itemId, requestParameters.userId, requestParameters.limit, requestParameters.fields, requestParameters.enableImages, requestParameters.enableUserData, requestParameters.imageTypeLimit, requestParameters.enableImageTypes, options).then((request) => request(this.axios, this.basePath));
}
/**
*
* @summary Creates an instant playlist based on a given artist.
* @param {InstantMixApiGetInstantMixFromArtistsRequest} requestParameters