2016-08-20 05:59:32 +00:00
|
|
|
|
import { GraphQLEnumType } from 'graphql/type'
|
|
|
|
|
|
|
2016-11-26 01:38:32 +00:00
|
|
|
|
export const ArtistType = new GraphQLEnumType({
|
|
|
|
|
|
name: 'ArtistType',
|
2016-11-30 02:18:50 +00:00
|
|
|
|
description: `A type used to describe artists, e.g. person, group, character,
|
|
|
|
|
|
etc.`,
|
2016-11-26 01:38:32 +00:00
|
|
|
|
values: {
|
|
|
|
|
|
PERSON: {
|
|
|
|
|
|
name: 'Person',
|
|
|
|
|
|
description: 'This indicates an individual person.',
|
|
|
|
|
|
value: 'Person'
|
|
|
|
|
|
},
|
|
|
|
|
|
GROUP: {
|
|
|
|
|
|
name: 'Group',
|
|
|
|
|
|
description: `This indicates a group of people that may or may not have a
|
|
|
|
|
|
distinctive name.`,
|
|
|
|
|
|
value: 'Group'
|
|
|
|
|
|
},
|
|
|
|
|
|
ORCHESTRA: {
|
|
|
|
|
|
name: 'Orchestra',
|
|
|
|
|
|
description: 'This indicates an orchestra (a large instrumental ensemble).',
|
|
|
|
|
|
value: 'Orchestra'
|
|
|
|
|
|
},
|
|
|
|
|
|
CHOIR: {
|
|
|
|
|
|
name: 'Choir',
|
|
|
|
|
|
description: 'This indicates a choir/chorus (a large vocal ensemble).',
|
|
|
|
|
|
value: 'Choir'
|
|
|
|
|
|
},
|
|
|
|
|
|
CHARACTER: {
|
|
|
|
|
|
name: 'Character',
|
|
|
|
|
|
description: 'This indicates an individual fictional character.',
|
|
|
|
|
|
value: 'Character'
|
|
|
|
|
|
},
|
|
|
|
|
|
OTHER: {
|
|
|
|
|
|
name: 'Other',
|
|
|
|
|
|
description: 'An artist which does not fit into the other categories.',
|
|
|
|
|
|
value: 'Other'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
|
2016-08-20 05:59:32 +00:00
|
|
|
|
export const ReleaseStatus = new GraphQLEnumType({
|
|
|
|
|
|
name: 'ReleaseStatus',
|
2016-11-30 02:18:50 +00:00
|
|
|
|
description: `A type used to describe the status of releases, e.g. official,
|
|
|
|
|
|
bootleg, etc.`,
|
2016-08-20 05:59:32 +00:00
|
|
|
|
values: {
|
|
|
|
|
|
OFFICIAL: {
|
|
|
|
|
|
name: 'Official',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `Any release officially sanctioned by the artist and/or their
|
|
|
|
|
|
record company. (Most releases will fit into this category.)`,
|
|
|
|
|
|
value: 'Official'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
PROMOTION: {
|
|
|
|
|
|
name: 'Promotion',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A giveaway release or a release intended to promote an
|
2016-11-26 10:37:23 +00:00
|
|
|
|
upcoming official release, e.g. prerelease albums or releases included with a
|
|
|
|
|
|
magazine.`,
|
2016-11-26 01:38:32 +00:00
|
|
|
|
value: 'Promotion'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
BOOTLEG: {
|
|
|
|
|
|
name: 'Bootleg',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `An unofficial/underground release that was not sanctioned by
|
|
|
|
|
|
the artist and/or the record company.`,
|
|
|
|
|
|
value: 'Bootleg'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
PSEUDORELEASE: {
|
|
|
|
|
|
name: 'Pseudo-Release',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A pseudo-release is a duplicate release for
|
|
|
|
|
|
translation/transliteration purposes.`,
|
|
|
|
|
|
value: 'Pseudo-Release'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
export const ReleaseGroupType = new GraphQLEnumType({
|
|
|
|
|
|
name: 'ReleaseGroupType',
|
2016-11-30 02:18:50 +00:00
|
|
|
|
description: `A type used to describe release groups, e.g. album, single, EP,
|
|
|
|
|
|
etc.`,
|
2016-08-20 05:59:32 +00:00
|
|
|
|
values: {
|
|
|
|
|
|
ALBUM: {
|
|
|
|
|
|
name: 'Album',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `An album, perhaps better defined as a “Long Play” (LP)
|
|
|
|
|
|
release, generally consists of previously unreleased material (unless this type
|
|
|
|
|
|
is combined with secondary types which change that, such as “Compilation”). This
|
|
|
|
|
|
includes album re-issues, with or without bonus tracks.`,
|
|
|
|
|
|
value: 'Album'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
SINGLE: {
|
|
|
|
|
|
name: 'Single',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A single typically has one main song and possibly a handful
|
|
|
|
|
|
of additional tracks or remixes of the main track. A single is usually named
|
|
|
|
|
|
after its main song.`,
|
|
|
|
|
|
value: 'Single'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
EP: {
|
|
|
|
|
|
name: 'EP',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `An EP is a so-called “Extended Play” release and often
|
|
|
|
|
|
contains the letters EP in the title. Generally an EP will be shorter than a
|
|
|
|
|
|
full length release (an LP or “Long Play”) and the tracks are usually exclusive
|
|
|
|
|
|
to the EP, in other words the tracks don’t come from a previously issued
|
|
|
|
|
|
release. EP is fairly difficult to define; usually it should only be assumed
|
|
|
|
|
|
that a release is an EP if the artist defines it as such.`,
|
|
|
|
|
|
value: 'EP'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
OTHER: {
|
|
|
|
|
|
name: 'Other',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: 'Any release that does not fit any of the other categories.',
|
|
|
|
|
|
value: 'Other'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
BROADCAST: {
|
|
|
|
|
|
name: 'Broadcast',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `An episodic release that was originally broadcast via radio,
|
|
|
|
|
|
television, or the Internet, including podcasts.`,
|
|
|
|
|
|
value: 'Broadcast'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
COMPILATION: {
|
|
|
|
|
|
name: 'Compilation',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A compilation is a collection of previously released tracks
|
|
|
|
|
|
by one or more artists.`,
|
|
|
|
|
|
value: 'Compilation'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
SOUNDTRACK: {
|
|
|
|
|
|
name: 'Soundtrack',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A soundtrack is the musical score to a movie, TV series,
|
2016-11-26 10:37:23 +00:00
|
|
|
|
stage show, computer game, etc.`,
|
2016-11-26 01:38:32 +00:00
|
|
|
|
value: 'Soundtrack'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
SPOKENWORD: {
|
|
|
|
|
|
name: 'Spoken Word',
|
|
|
|
|
|
description: 'A non-music spoken word release.',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
value: 'Spoken Word'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
INTERVIEW: {
|
|
|
|
|
|
name: 'Interview',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `An interview release contains an interview, generally with
|
|
|
|
|
|
an artist.`,
|
|
|
|
|
|
value: 'Interview'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
AUDIOBOOK: {
|
|
|
|
|
|
name: 'Audiobook',
|
|
|
|
|
|
description: 'An audiobook is a book read by a narrator without music.',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
value: 'Audiobook'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
LIVE: {
|
|
|
|
|
|
name: 'Live',
|
|
|
|
|
|
description: 'A release that was recorded live.',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
value: 'Live'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
REMIX: {
|
|
|
|
|
|
name: 'Remix',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A release that was (re)mixed from previously released
|
|
|
|
|
|
material.`,
|
|
|
|
|
|
value: 'Remix'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
DJMIX: {
|
|
|
|
|
|
name: 'DJ-mix',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A DJ-mix is a sequence of several recordings played one
|
|
|
|
|
|
after the other, each one modified so that they blend together into a continuous
|
|
|
|
|
|
flow of music. A DJ mix release requires that the recordings be modified in some
|
|
|
|
|
|
manner, and the DJ who does this modification is usually (although not always)
|
|
|
|
|
|
credited in a fairly prominent way.`,
|
|
|
|
|
|
value: 'DJ-mix'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
MIXTAPE: {
|
|
|
|
|
|
name: 'Mixtape/Street',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `Promotional in nature (but not necessarily free), mixtapes
|
|
|
|
|
|
and street albums are often released by artists to promote new artists, or
|
|
|
|
|
|
upcoming studio albums by prominent artists. They are also sometimes used to
|
|
|
|
|
|
keep fans’ attention between studio releases and are most common in rap & hip
|
|
|
|
|
|
hop genres. They are often not sanctioned by the artist’s label, may lack proper
|
|
|
|
|
|
sample or song clearances and vary widely in production and recording quality.
|
|
|
|
|
|
While mixtapes are generally DJ-mixed, they are distinct from commercial DJ
|
|
|
|
|
|
mixes (which are usually deemed compilations) and are defined by having a
|
|
|
|
|
|
significant proportion of new material, including original production or
|
|
|
|
|
|
original vocals over top of other artists’ instrumentals. They are distinct from
|
2016-11-26 10:37:23 +00:00
|
|
|
|
demos in that they are designed for release directly to the public and fans, not
|
2016-11-26 01:38:32 +00:00
|
|
|
|
to labels.`,
|
|
|
|
|
|
value: 'Mixtape/Street'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
DEMO: {
|
|
|
|
|
|
name: 'Demo',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `A release that was recorded for limited circulation or
|
|
|
|
|
|
reference use rather than for general public release.`,
|
|
|
|
|
|
value: 'Demo'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
},
|
|
|
|
|
|
NAT: {
|
|
|
|
|
|
name: 'Non-Album Track',
|
|
|
|
|
|
description: 'A non-album track (special case).',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
value: 'NAT'
|
2016-08-20 05:59:32 +00:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|