import gql from 'graphql-tag'; import * as ApolloReactCommon from '@apollo/react-common'; import * as React from 'react'; import * as ApolloReactComponents from '@apollo/react-components'; import * as ApolloReactHoc from '@apollo/react-hoc'; import * as ApolloReactHooks from '@apollo/react-hooks'; export type Maybe = T | null; export type Omit = Pick>; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { ID: string, String: string, Boolean: boolean, Int: number, Float: number, DateTime: any, NonEmptyString: any, Duration: any, }; export type AddToPlaylistPayload = { playlistId: Scalars['ID'], trackId: Scalars['ID'], }; export type AggregateAlbum = { __typename?: 'AggregateAlbum', count: Scalars['Int'], }; export type AggregateArtist = { __typename?: 'AggregateArtist', count: Scalars['Int'], }; export type AggregatePlaylist = { __typename?: 'AggregatePlaylist', count: Scalars['Int'], }; export type AggregateTrack = { __typename?: 'AggregateTrack', count: Scalars['Int'], }; export type AggregateUser = { __typename?: 'AggregateUser', count: Scalars['Int'], }; export type Album = { __typename?: 'Album', id: Scalars['ID'], alias: Scalars['String'], artists?: Maybe>, duration?: Maybe, genres: Array, artwork?: Maybe, name: Scalars['String'], numTracks?: Maybe, releaseDate: Scalars['DateTime'], releaseType: ReleaseType, tracks?: Maybe>, addedBy: User, createdAt: Scalars['DateTime'], updatedAt: Scalars['DateTime'], }; export type AlbumArtistsArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export type AlbumTracksArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export type AlbumConnection = { __typename?: 'AlbumConnection', pageInfo: PageInfo, edges: Array>, aggregate: AggregateAlbum, }; export type AlbumCreatePayload = { artists: Array, artwork?: Maybe, genres?: Maybe>, name: Scalars['NonEmptyString'], releaseDate: Scalars['DateTime'], releaseType: ReleaseType, tracks: Array, }; export type AlbumEdge = { __typename?: 'AlbumEdge', node: Album, cursor: Scalars['String'], }; export enum AlbumOrderByInput { IdAsc = 'id_ASC', IdDesc = 'id_DESC', AliasAsc = 'alias_ASC', AliasDesc = 'alias_DESC', DurationAsc = 'duration_ASC', DurationDesc = 'duration_DESC', NameAsc = 'name_ASC', NameDesc = 'name_DESC', NumTracksAsc = 'numTracks_ASC', NumTracksDesc = 'numTracks_DESC', ReleaseDateAsc = 'releaseDate_ASC', ReleaseDateDesc = 'releaseDate_DESC', ReleaseTypeAsc = 'releaseType_ASC', ReleaseTypeDesc = 'releaseType_DESC', CreatedAtAsc = 'createdAt_ASC', CreatedAtDesc = 'createdAt_DESC', UpdatedAtAsc = 'updatedAt_ASC', UpdatedAtDesc = 'updatedAt_DESC' } export type AlbumWhereInput = { id?: Maybe, id_not?: Maybe, id_in?: Maybe>, id_not_in?: Maybe>, id_lt?: Maybe, id_lte?: Maybe, id_gt?: Maybe, id_gte?: Maybe, id_contains?: Maybe, id_not_contains?: Maybe, id_starts_with?: Maybe, id_not_starts_with?: Maybe, id_ends_with?: Maybe, id_not_ends_with?: Maybe, alias?: Maybe, alias_not?: Maybe, alias_in?: Maybe>, alias_not_in?: Maybe>, alias_lt?: Maybe, alias_lte?: Maybe, alias_gt?: Maybe, alias_gte?: Maybe, alias_contains?: Maybe, alias_not_contains?: Maybe, alias_starts_with?: Maybe, alias_not_starts_with?: Maybe, alias_ends_with?: Maybe, alias_not_ends_with?: Maybe, artists_every?: Maybe, artists_some?: Maybe, artists_none?: Maybe, duration?: Maybe, duration_not?: Maybe, duration_in?: Maybe>, duration_not_in?: Maybe>, duration_lt?: Maybe, duration_lte?: Maybe, duration_gt?: Maybe, duration_gte?: Maybe, artwork?: Maybe, name?: Maybe, name_not?: Maybe, name_in?: Maybe>, name_not_in?: Maybe>, name_lt?: Maybe, name_lte?: Maybe, name_gt?: Maybe, name_gte?: Maybe, name_contains?: Maybe, name_not_contains?: Maybe, name_starts_with?: Maybe, name_not_starts_with?: Maybe, name_ends_with?: Maybe, name_not_ends_with?: Maybe, numTracks?: Maybe, numTracks_not?: Maybe, numTracks_in?: Maybe>, numTracks_not_in?: Maybe>, numTracks_lt?: Maybe, numTracks_lte?: Maybe, numTracks_gt?: Maybe, numTracks_gte?: Maybe, releaseDate?: Maybe, releaseDate_not?: Maybe, releaseDate_in?: Maybe>, releaseDate_not_in?: Maybe>, releaseDate_lt?: Maybe, releaseDate_lte?: Maybe, releaseDate_gt?: Maybe, releaseDate_gte?: Maybe, releaseType?: Maybe, releaseType_not?: Maybe, releaseType_in?: Maybe>, releaseType_not_in?: Maybe>, tracks_every?: Maybe, tracks_some?: Maybe, tracks_none?: Maybe, addedBy?: Maybe, createdAt?: Maybe, createdAt_not?: Maybe, createdAt_in?: Maybe>, createdAt_not_in?: Maybe>, createdAt_lt?: Maybe, createdAt_lte?: Maybe, createdAt_gt?: Maybe, createdAt_gte?: Maybe, updatedAt?: Maybe, updatedAt_not?: Maybe, updatedAt_in?: Maybe>, updatedAt_not_in?: Maybe>, updatedAt_lt?: Maybe, updatedAt_lte?: Maybe, updatedAt_gt?: Maybe, updatedAt_gte?: Maybe, AND?: Maybe>, OR?: Maybe>, NOT?: Maybe>, }; export type Artist = { __typename?: 'Artist', id: Scalars['ID'], albums?: Maybe>, alias: Scalars['String'], avatar?: Maybe, featuresIn?: Maybe>, genres: Array, name: Scalars['String'], tracks?: Maybe>, createdAt: Scalars['DateTime'], updatedAt: Scalars['DateTime'], }; export type ArtistAlbumsArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export type ArtistFeaturesInArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export type ArtistTracksArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export type ArtistConnection = { __typename?: 'ArtistConnection', pageInfo: PageInfo, edges: Array>, aggregate: AggregateArtist, }; export type ArtistCreatePayload = { alias: Scalars['String'], name: Scalars['String'], }; export type ArtistEdge = { __typename?: 'ArtistEdge', node: Artist, cursor: Scalars['String'], }; export enum ArtistOrderByInput { IdAsc = 'id_ASC', IdDesc = 'id_DESC', AliasAsc = 'alias_ASC', AliasDesc = 'alias_DESC', NameAsc = 'name_ASC', NameDesc = 'name_DESC', CreatedAtAsc = 'createdAt_ASC', CreatedAtDesc = 'createdAt_DESC', UpdatedAtAsc = 'updatedAt_ASC', UpdatedAtDesc = 'updatedAt_DESC' } export type ArtistPayload = { name: Scalars['NonEmptyString'], }; export type ArtistWhereInput = { id?: Maybe, id_not?: Maybe, id_in?: Maybe>, id_not_in?: Maybe>, id_lt?: Maybe, id_lte?: Maybe, id_gt?: Maybe, id_gte?: Maybe, id_contains?: Maybe, id_not_contains?: Maybe, id_starts_with?: Maybe, id_not_starts_with?: Maybe, id_ends_with?: Maybe, id_not_ends_with?: Maybe, albums_every?: Maybe, albums_some?: Maybe, albums_none?: Maybe, alias?: Maybe, alias_not?: Maybe, alias_in?: Maybe>, alias_not_in?: Maybe>, alias_lt?: Maybe, alias_lte?: Maybe, alias_gt?: Maybe, alias_gte?: Maybe, alias_contains?: Maybe, alias_not_contains?: Maybe, alias_starts_with?: Maybe, alias_not_starts_with?: Maybe, alias_ends_with?: Maybe, alias_not_ends_with?: Maybe, avatar?: Maybe, featuresIn_every?: Maybe, featuresIn_some?: Maybe, featuresIn_none?: Maybe, name?: Maybe, name_not?: Maybe, name_in?: Maybe>, name_not_in?: Maybe>, name_lt?: Maybe, name_lte?: Maybe, name_gt?: Maybe, name_gte?: Maybe, name_contains?: Maybe, name_not_contains?: Maybe, name_starts_with?: Maybe, name_not_starts_with?: Maybe, name_ends_with?: Maybe, name_not_ends_with?: Maybe, tracks_every?: Maybe, tracks_some?: Maybe, tracks_none?: Maybe, createdAt?: Maybe, createdAt_not?: Maybe, createdAt_in?: Maybe>, createdAt_not_in?: Maybe>, createdAt_lt?: Maybe, createdAt_lte?: Maybe, createdAt_gt?: Maybe, createdAt_gte?: Maybe, updatedAt?: Maybe, updatedAt_not?: Maybe, updatedAt_in?: Maybe>, updatedAt_not_in?: Maybe>, updatedAt_lt?: Maybe, updatedAt_lte?: Maybe, updatedAt_gt?: Maybe, updatedAt_gte?: Maybe, AND?: Maybe>, OR?: Maybe>, NOT?: Maybe>, }; export type ArtworkPayload = { url: Scalars['NonEmptyString'], }; export type Audio = { __typename?: 'Audio', id: Scalars['ID'], bitrate?: Maybe, format: Scalars['String'], size?: Maybe, uploadedBy: User, url: Scalars['String'], createdAt: Scalars['DateTime'], updatedAt: Scalars['DateTime'], }; export type AudioWhereInput = { id?: Maybe, id_not?: Maybe, id_in?: Maybe>, id_not_in?: Maybe>, id_lt?: Maybe, id_lte?: Maybe, id_gt?: Maybe, id_gte?: Maybe, id_contains?: Maybe, id_not_contains?: Maybe, id_starts_with?: Maybe, id_not_starts_with?: Maybe, id_ends_with?: Maybe, id_not_ends_with?: Maybe, bitrate?: Maybe, bitrate_not?: Maybe, bitrate_in?: Maybe>, bitrate_not_in?: Maybe>, bitrate_lt?: Maybe, bitrate_lte?: Maybe, bitrate_gt?: Maybe, bitrate_gte?: Maybe, format?: Maybe, format_not?: Maybe, format_in?: Maybe>, format_not_in?: Maybe>, format_lt?: Maybe, format_lte?: Maybe, format_gt?: Maybe, format_gte?: Maybe, format_contains?: Maybe, format_not_contains?: Maybe, format_starts_with?: Maybe, format_not_starts_with?: Maybe, format_ends_with?: Maybe, format_not_ends_with?: Maybe, size?: Maybe, size_not?: Maybe, size_in?: Maybe>, size_not_in?: Maybe>, size_lt?: Maybe, size_lte?: Maybe, size_gt?: Maybe, size_gte?: Maybe, uploadedBy?: Maybe, url?: Maybe, url_not?: Maybe, url_in?: Maybe>, url_not_in?: Maybe>, url_lt?: Maybe, url_lte?: Maybe, url_gt?: Maybe, url_gte?: Maybe, url_contains?: Maybe, url_not_contains?: Maybe, url_starts_with?: Maybe, url_not_starts_with?: Maybe, url_ends_with?: Maybe, url_not_ends_with?: Maybe, createdAt?: Maybe, createdAt_not?: Maybe, createdAt_in?: Maybe>, createdAt_not_in?: Maybe>, createdAt_lt?: Maybe, createdAt_lte?: Maybe, createdAt_gt?: Maybe, createdAt_gte?: Maybe, updatedAt?: Maybe, updatedAt_not?: Maybe, updatedAt_in?: Maybe>, updatedAt_not_in?: Maybe>, updatedAt_lt?: Maybe, updatedAt_lte?: Maybe, updatedAt_gt?: Maybe, updatedAt_gte?: Maybe, AND?: Maybe>, OR?: Maybe>, NOT?: Maybe>, }; export type AuthPayload = { __typename?: 'AuthPayload', token: Scalars['String'], user: User, }; export type Image = { __typename?: 'Image', id: Scalars['ID'], uploadedBy: User, url: Scalars['String'], createdAt: Scalars['DateTime'], updatedAt: Scalars['DateTime'], }; export enum ImageOrderByInput { IdAsc = 'id_ASC', IdDesc = 'id_DESC', UrlAsc = 'url_ASC', UrlDesc = 'url_DESC', CreatedAtAsc = 'createdAt_ASC', CreatedAtDesc = 'createdAt_DESC', UpdatedAtAsc = 'updatedAt_ASC', UpdatedAtDesc = 'updatedAt_DESC' } export type ImageWhereInput = { id?: Maybe, id_not?: Maybe, id_in?: Maybe>, id_not_in?: Maybe>, id_lt?: Maybe, id_lte?: Maybe, id_gt?: Maybe, id_gte?: Maybe, id_contains?: Maybe, id_not_contains?: Maybe, id_starts_with?: Maybe, id_not_starts_with?: Maybe, id_ends_with?: Maybe, id_not_ends_with?: Maybe, uploadedBy?: Maybe, url?: Maybe, url_not?: Maybe, url_in?: Maybe>, url_not_in?: Maybe>, url_lt?: Maybe, url_lte?: Maybe, url_gt?: Maybe, url_gte?: Maybe, url_contains?: Maybe, url_not_contains?: Maybe, url_starts_with?: Maybe, url_not_starts_with?: Maybe, url_ends_with?: Maybe, url_not_ends_with?: Maybe, createdAt?: Maybe, createdAt_not?: Maybe, createdAt_in?: Maybe>, createdAt_not_in?: Maybe>, createdAt_lt?: Maybe, createdAt_lte?: Maybe, createdAt_gt?: Maybe, createdAt_gte?: Maybe, updatedAt?: Maybe, updatedAt_not?: Maybe, updatedAt_in?: Maybe>, updatedAt_not_in?: Maybe>, updatedAt_lt?: Maybe, updatedAt_lte?: Maybe, updatedAt_gt?: Maybe, updatedAt_gte?: Maybe, AND?: Maybe>, OR?: Maybe>, NOT?: Maybe>, }; export type LoginUserPayload = { email: Scalars['String'], password: Scalars['String'], }; export type Mutation = { __typename?: 'Mutation', createAlbum?: Maybe, deleteAlbum?: Maybe, createArtist?: Maybe, createPlaylist?: Maybe, addToPlaylist?: Maybe, createTrack?: Maybe, createUser: AuthPayload, updateUser: User, authenticateUser: AuthPayload, }; export type MutationCreateAlbumArgs = { input: AlbumCreatePayload }; export type MutationDeleteAlbumArgs = { id: Scalars['ID'] }; export type MutationCreateArtistArgs = { input: ArtistCreatePayload }; export type MutationCreatePlaylistArgs = { input: PlaylistCreatePayload }; export type MutationAddToPlaylistArgs = { input: AddToPlaylistPayload }; export type MutationCreateTrackArgs = { input: TrackCreatePayload }; export type MutationCreateUserArgs = { input: UserCreatePayload }; export type MutationUpdateUserArgs = { input: UserUpdatePayload }; export type MutationAuthenticateUserArgs = { input: LoginUserPayload }; export type Node = { __typename?: 'Node', id: Scalars['ID'], }; export type PageInfo = { __typename?: 'PageInfo', hasNextPage: Scalars['Boolean'], hasPreviousPage: Scalars['Boolean'], startCursor?: Maybe, endCursor?: Maybe, }; export type Playlist = { __typename?: 'Playlist', id: Scalars['ID'], alias: Scalars['String'], artwork?: Maybe>, collaborative: Scalars['Boolean'], creator: User, description?: Maybe, duration: Scalars['Int'], name: Scalars['String'], numTracks: Scalars['Int'], privacy: Privacy, tracks?: Maybe>, createdAt: Scalars['DateTime'], updatedAt: Scalars['DateTime'], }; export type PlaylistArtworkArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export type PlaylistTracksArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export type PlaylistConnection = { __typename?: 'PlaylistConnection', pageInfo: PageInfo, edges: Array>, aggregate: AggregatePlaylist, }; export type PlaylistCreatePayload = { name: Scalars['NonEmptyString'], trackId?: Maybe, }; export type PlaylistEdge = { __typename?: 'PlaylistEdge', node: Playlist, cursor: Scalars['String'], }; export enum PlaylistOrderByInput { IdAsc = 'id_ASC', IdDesc = 'id_DESC', AliasAsc = 'alias_ASC', AliasDesc = 'alias_DESC', CollaborativeAsc = 'collaborative_ASC', CollaborativeDesc = 'collaborative_DESC', DescriptionAsc = 'description_ASC', DescriptionDesc = 'description_DESC', DurationAsc = 'duration_ASC', DurationDesc = 'duration_DESC', NameAsc = 'name_ASC', NameDesc = 'name_DESC', NumTracksAsc = 'numTracks_ASC', NumTracksDesc = 'numTracks_DESC', PrivacyAsc = 'privacy_ASC', PrivacyDesc = 'privacy_DESC', CreatedAtAsc = 'createdAt_ASC', CreatedAtDesc = 'createdAt_DESC', UpdatedAtAsc = 'updatedAt_ASC', UpdatedAtDesc = 'updatedAt_DESC' } export type PlaylistTrack = { __typename?: 'PlaylistTrack', id: Scalars['ID'], addedAt: Scalars['DateTime'], addedBy: User, playlists?: Maybe>, track: Track, }; export type PlaylistTrackPlaylistsArgs = { where?: Maybe, orderBy?: Maybe, skip?: Maybe, after?: Maybe, before?: Maybe, first?: Maybe, last?: Maybe }; export enum PlaylistTrackOrderByInput { IdAsc = 'id_ASC', IdDesc = 'id_DESC', AddedAtAsc = 'addedAt_ASC', AddedAtDesc = 'addedAt_DESC' } export type PlaylistTrackWhereInput = { id?: Maybe, id_not?: Maybe, id_in?: Maybe>, id_not_in?: Maybe>, id_lt?: Maybe, id_lte?: Maybe, id_gt?: Maybe, id_gte?: Maybe, id_contains?: Maybe, id_not_contains?: Maybe, id_starts_with?: Maybe, id_not_starts_with?: Maybe, id_ends_with?: Maybe, id_not_ends_with?: Maybe, addedAt?: Maybe, addedAt_not?: Maybe, addedAt_in?: Maybe>, addedAt_not_in?: Maybe>, addedAt_lt?: Maybe, addedAt_lte?: Maybe, addedAt_gt?: Maybe, addedAt_gte?: Maybe, addedBy?: Maybe, playlists_every?: Maybe, playlists_some?: Maybe, playlists_none?: Maybe, track?: Maybe, AND?: Maybe>, OR?: Maybe>, NOT?: Maybe>, }; export type PlaylistWhereInput = { id?: Maybe, id_not?: Maybe, id_in?: Maybe>, id_not_in?: Maybe>, id_lt?: Maybe, id_lte?: Maybe, id_gt?: Maybe, id_gte?: Maybe, id_contains?: Maybe, id_not_contains?: Maybe, id_starts_with?: Maybe, id_not_starts_with?: Maybe, id_ends_with?: Maybe, id_not_ends_with?: Maybe, alias?: Maybe, alias_not?: Maybe, alias_in?: Maybe>, alias_not_in?: Maybe>, alias_lt?: Maybe, alias_lte?: Maybe, alias_gt?: Maybe, alias_gte?: Maybe, alias_contains?: Maybe, alias_not_contains?: Maybe, alias_starts_with?: Maybe, alias_not_starts_with?: Maybe, alias_ends_with?: Maybe, alias_not_ends_with?: Maybe, artwork_every?: Maybe, artwork_some?: Maybe, artwork_none?: Maybe, collaborative?: Maybe, collaborative_not?: Maybe, creator?: Maybe, description?: Maybe, description_not?: Maybe, description_in?: Maybe>, description_not_in?: Maybe>, description_lt?: Maybe, description_lte?: Maybe, description_gt?: Maybe, description_gte?: Maybe, description_contains?: Maybe, description_not_contains?: Maybe, description_starts_with?: Maybe, description_not_starts_with?: Maybe, description_ends_with?: Maybe, description_not_ends_with?: Maybe, duration?: Maybe, duration_not?: Maybe, duration_in?: Maybe>, duration_not_in?: Maybe>, duration_lt?: Maybe, duration_lte?: Maybe, duration_gt?: Maybe, duration_gte?: Maybe, name?: Maybe, name_not?: Maybe, name_in?: Maybe>, name_not_in?: Maybe>, name_lt?: Maybe, name_lte?: Maybe, name_gt?: Maybe, name_gte?: Maybe, name_contains?: Maybe, name_not_contains?: Maybe, name_starts_with?: Maybe, name_not_starts_with?: Maybe, name_ends_with?: Maybe, name_not_ends_with?: Maybe, numTracks?: Maybe, numTracks_not?: Maybe, numTracks_in?: Maybe>, numTracks_not_in?: Maybe>, numTracks_lt?: Maybe, numTracks_lte?: Maybe, numTracks_gt?: Maybe, numTracks_gte?: Maybe, privacy?: Maybe, privacy_not?: Maybe, privacy_in?: Maybe>, privacy_not_in?: Maybe>, tracks_every?: Maybe, tracks_some?: Maybe, tracks_none?: Maybe, createdAt?: Maybe, createdAt_not?: Maybe, createdAt_in?: Maybe>, createdAt_not_in?: Maybe>, createdAt_lt?: Maybe, createdAt_lte?: Maybe, createdAt_gt?: Maybe, createdAt_gte?: Maybe, updatedAt?: Maybe, updatedAt_not?: Maybe, updatedAt_in?: Maybe>, updatedAt_not_in?: Maybe>, updatedAt_lt?: Maybe, updatedAt_lte?: Maybe, updatedAt_gt?: Maybe, updatedAt_gte?: Maybe, AND?: Maybe>, OR?: Maybe>, NOT?: Maybe>, }; export enum Privacy { Private = 'PRIVATE', Public = 'PUBLIC', Unlisted = 'UNLISTED' } export type Query = { __typename?: 'Query', album?: Maybe, albums?: Maybe, artist?: Maybe, artists?: Maybe, playlist?: Maybe, playlists?: Maybe, track?: Maybe, tracks?: Maybe, user?: Maybe, users?: Maybe, }; export type QueryAlbumArgs = { id: Scalars['ID'] }; export type QueryArtistArgs = { id: Scalars['ID'] }; export type QueryPlaylistArgs = { id: Scalars['ID'] }; export type QueryTrackArgs = { id: Scalars['ID'] }; export type QueryUserArgs = { id: Scalars['ID'] }; export enum ReleaseType { Album = 'ALBUM', Ep = 'EP', Lp = 'LP', Podcast = 'PODCAST', Single = 'SINGLE' } export type Track = { __typename?: 'Track', id: Scalars['ID'], album: Album, artists?: Maybe>, audio?: Maybe