2016-08-08 07:54:06 +00:00
|
|
|
|
import {
|
|
|
|
|
|
GraphQLObjectType,
|
|
|
|
|
|
GraphQLString,
|
|
|
|
|
|
GraphQLBoolean
|
|
|
|
|
|
} from 'graphql/type'
|
2016-11-26 01:38:32 +00:00
|
|
|
|
import { name, sortName, fieldWithID } from './helpers'
|
2016-08-08 07:54:06 +00:00
|
|
|
|
|
|
|
|
|
|
export default new GraphQLObjectType({
|
|
|
|
|
|
name: 'Alias',
|
2016-11-26 01:38:32 +00:00
|
|
|
|
description: `[Aliases](https://musicbrainz.org/doc/Aliases) are variant names
|
|
|
|
|
|
that are mostly used as search help: if a search matches an entity’s alias, the
|
|
|
|
|
|
entity will be given as a result – even if the actual name wouldn’t be. They are
|
|
|
|
|
|
available for artists, labels, and works.`,
|
2016-08-08 07:54:06 +00:00
|
|
|
|
fields: () => ({
|
2016-11-26 01:38:32 +00:00
|
|
|
|
name: {
|
|
|
|
|
|
...name,
|
|
|
|
|
|
description: 'The aliased name of the entity.'
|
|
|
|
|
|
},
|
|
|
|
|
|
sortName,
|
|
|
|
|
|
locale: {
|
|
|
|
|
|
type: GraphQLString,
|
|
|
|
|
|
description: `The locale (language and/or country) in which the alias is
|
|
|
|
|
|
used.`
|
|
|
|
|
|
},
|
|
|
|
|
|
primary: {
|
|
|
|
|
|
type: GraphQLBoolean,
|
|
|
|
|
|
description: `Whether this is the main alias for the entity in the
|
|
|
|
|
|
specified locale (this could mean the most recent or the most common).`
|
|
|
|
|
|
},
|
|
|
|
|
|
...fieldWithID('type', {
|
|
|
|
|
|
description: `The type or purpose of the alias – whether it is a variant,
|
|
|
|
|
|
search hint, etc.`
|
|
|
|
|
|
})
|
2016-08-08 07:54:06 +00:00
|
|
|
|
})
|
|
|
|
|
|
})
|