wagtail_graphql.types package

Submodules

wagtail_graphql.types.base module

wagtail_graphql.types.base.create_model_type(model, fields, meta_attrs=None)

Create a generic GraphQL type for a Django model.

Parameters:
  • model – Django model.
  • fields – A list of wagtail_graphql.models.GraphQLField instances to be used on the type.
  • meta_attrs – Additional meta attributes to be passed to the new GraphQL object type.

wagtail_graphql.types.collection module

class wagtail_graphql.types.collection.CollectionObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

GraphQL representation of the Wagtail’s Collection model.

images = <wagtail_graphql.types.structures.QuerySetList object>
resolve_images(info, **kwargs)

Resolve images belonging to a particular collection if privacy of the collection allows.

wagtail_graphql.types.documents module

class wagtail_graphql.types.documents.DocumentObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

Represent the Wagtail’s Document model as a GraphQL type.

resolve_url(info, absolute)
url = <graphene.types.scalars.String object>

wagtail_graphql.types.images module

class wagtail_graphql.types.images.ImageInterface(*args, **kwargs)

Bases: graphene.types.interface.Interface

GraphQL interface for image object types.

focal_point_height = <graphene.types.scalars.Int object>
focal_point_width = <graphene.types.scalars.Int object>
focal_point_x = <graphene.types.scalars.Int object>
focal_point_y = <graphene.types.scalars.Int object>
height = <graphene.types.scalars.Int object>
id = <graphene.types.scalars.ID object>
rendition = <graphene.types.field.Field object>
resolve_id(info)
resolve_rendition(info, rendition_filter)

Resolve an image rendition with a specified Wagtail’s image rendition filter.

Example:

query {
    images {
        rendition(filter: "fill-200x200") {
            url
        }
    }
}
title = <graphene.types.scalars.String object>
width = <graphene.types.scalars.Int object>
class wagtail_graphql.types.images.ImageObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

GraphQL representation of Wagtail’s image model.

class wagtail_graphql.types.images.RenditionInterface(*args, **kwargs)

Bases: graphene.types.interface.Interface

GraphQL interface for rendition object types.

alt = <graphene.types.scalars.String object>
filter_spec = <graphene.types.scalars.String object>
height = <graphene.types.scalars.Int object>
id = <graphene.types.scalars.ID object>
resolve_id(info)
resolve_url(info, absolute)

Resolve to an absolute URL if necessary.

url = <graphene.types.scalars.String object>
width = <graphene.types.scalars.Int object>
class wagtail_graphql.types.images.RenditionObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

GraphQL representation of the image rendition model.

wagtail_graphql.types.images.get_allowed_rendition_filters()
wagtail_graphql.types.images.get_default_rendition_filter()

wagtail_graphql.types.pages module

class wagtail_graphql.types.pages.PageInterface(*args, **kwargs)

Bases: graphene.types.interface.Interface

Set basic fields exposed on every page object.

ancestors = <wagtail_graphql.types.structures.QuerySetList object>
children = <wagtail_graphql.types.structures.QuerySetList object>
depth = <graphene.types.scalars.Int object>
descendants = <wagtail_graphql.types.structures.QuerySetList object>
id = <graphene.types.scalars.ID object>
next_siblings = <wagtail_graphql.types.structures.QuerySetList object>
page_type = <graphene.types.scalars.String object>
parent = <graphene.types.field.Field object>
previous_siblings = <wagtail_graphql.types.structures.QuerySetList object>
resolve_ancestors(info, **kwargs)
resolve_children(info, **kwargs)
resolve_descendants(info, **kwargs)
resolve_next_siblings(info, **kwargs)
resolve_page_type(info)

Resolve a page type in a form of app.ModelName.

resolve_parent(info, **kwargs)
resolve_previous_siblings(info, **kwargs)
resolve_seo_title(info)

Get page’s SEO title. Fallback to a normal page’s title if absent.

resolve_siblings(info, **kwargs)
resolve_specific(info, **kwargs)
resolve_url(info)

Resolve a path to a page.

seo_description = <graphene.types.scalars.String object>
seo_title = <graphene.types.scalars.String object>
show_in_menus = <graphene.types.scalars.Boolean object>
siblings = <wagtail_graphql.types.structures.QuerySetList object>
specific = <graphene.types.field.Field object>
title = <graphene.types.scalars.String object>
url = <graphene.types.scalars.String object>
wagtail_graphql.types.pages.create_page_type(model, fields)

Generate a DjangoObjectType subclass for a Wagtail page.

wagtail_graphql.types.scalars module

class wagtail_graphql.types.scalars.PositiveInt(*args, **kwargs)

Bases: graphene.types.scalars.Int

GraphQL type for an integer that must be equal or greater than zero.

static parse_literal(node)

wagtail_graphql.types.site module

class wagtail_graphql.types.site.SiteObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

GraphQL representation of the Wagtail’s Site model.

name = <graphene.types.scalars.String object>
resolve_name(info)

Map Site.site_name to name for convenience.

wagtail_graphql.types.snippets module

wagtail_graphql.types.snippets.create_snippet_type(model, fields)

Generate a DjangoObjectType for a Wagtail page.

wagtail_graphql.types.streamfields module

class wagtail_graphql.types.streamfields.StreamField(*args, **kwargs)

Bases: graphene.types.json.JSONString

Scalar used to represent a Wagtail’s StreamField value.

static serialize(value)
class wagtail_graphql.types.streamfields.StreamFieldSerializer(request=None, absolute_urls=None, rendition_filter='width-1200')

Bases: object

serialize(block)
serialize_block_value(block, value)
serialize_bound_block(block)
serialize_list_block(block, value)
serialize_stream_block(stream_block)
serialize_struct_block(value)
wagtail_graphql.types.streamfields.convert_rich_text(source, request, absolute)

wagtail_graphql.types.structures module

class wagtail_graphql.types.structures.QuerySetList(of_type, *args, **kwargs)

Bases: graphene.types.structures.List

List type with arguments used by Django’s query sets.

This list setts the following arguments on itself:

  • id
  • limit
  • offset
  • search_query
  • order
Parameters:
  • enable_limit (bool) – Enable limit argument.
  • enable_offset (bool) – Enable offset argument.
  • enable_search (bool) – Enable search query argument.
  • enable_order (bool) – Enable ordering via query argument.
class wagtail_graphql.types.structures.TagList(*args, **kwargs)

Bases: graphene.types.json.JSONString

A tag list from the TaggableManager.

static serialize(value)

Module contents

class wagtail_graphql.types.CollectionObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

GraphQL representation of the Wagtail’s Collection model.

images = <wagtail_graphql.types.structures.QuerySetList object>
resolve_images(info, **kwargs)

Resolve images belonging to a particular collection if privacy of the collection allows.

class wagtail_graphql.types.DocumentObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

Represent the Wagtail’s Document model as a GraphQL type.

resolve_url(info, absolute)
url = <graphene.types.scalars.String object>
class wagtail_graphql.types.ImageInterface(*args, **kwargs)

Bases: graphene.types.interface.Interface

GraphQL interface for image object types.

focal_point_height = <graphene.types.scalars.Int object>
focal_point_width = <graphene.types.scalars.Int object>
focal_point_x = <graphene.types.scalars.Int object>
focal_point_y = <graphene.types.scalars.Int object>
height = <graphene.types.scalars.Int object>
id = <graphene.types.scalars.ID object>
rendition = <graphene.types.field.Field object>
resolve_id(info)
resolve_rendition(info, rendition_filter)

Resolve an image rendition with a specified Wagtail’s image rendition filter.

Example:

query {
    images {
        rendition(filter: "fill-200x200") {
            url
        }
    }
}
title = <graphene.types.scalars.String object>
width = <graphene.types.scalars.Int object>
class wagtail_graphql.types.ImageObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

GraphQL representation of Wagtail’s image model.

class wagtail_graphql.types.PageInterface(*args, **kwargs)

Bases: graphene.types.interface.Interface

Set basic fields exposed on every page object.

ancestors = <wagtail_graphql.types.structures.QuerySetList object>
children = <wagtail_graphql.types.structures.QuerySetList object>
depth = <graphene.types.scalars.Int object>
descendants = <wagtail_graphql.types.structures.QuerySetList object>
id = <graphene.types.scalars.ID object>
next_siblings = <wagtail_graphql.types.structures.QuerySetList object>
page_type = <graphene.types.scalars.String object>
parent = <graphene.types.field.Field object>
previous_siblings = <wagtail_graphql.types.structures.QuerySetList object>
resolve_ancestors(info, **kwargs)
resolve_children(info, **kwargs)
resolve_descendants(info, **kwargs)
resolve_next_siblings(info, **kwargs)
resolve_page_type(info)

Resolve a page type in a form of app.ModelName.

resolve_parent(info, **kwargs)
resolve_previous_siblings(info, **kwargs)
resolve_seo_title(info)

Get page’s SEO title. Fallback to a normal page’s title if absent.

resolve_siblings(info, **kwargs)
resolve_specific(info, **kwargs)
resolve_url(info)

Resolve a path to a page.

seo_description = <graphene.types.scalars.String object>
seo_title = <graphene.types.scalars.String object>
show_in_menus = <graphene.types.scalars.Boolean object>
siblings = <wagtail_graphql.types.structures.QuerySetList object>
specific = <graphene.types.field.Field object>
title = <graphene.types.scalars.String object>
url = <graphene.types.scalars.String object>
class wagtail_graphql.types.PositiveInt(*args, **kwargs)

Bases: graphene.types.scalars.Int

GraphQL type for an integer that must be equal or greater than zero.

static parse_literal(node)
class wagtail_graphql.types.SiteObjectType(*args, **kwargs)

Bases: graphene_django.types.DjangoObjectType

GraphQL representation of the Wagtail’s Site model.

name = <graphene.types.scalars.String object>
resolve_name(info)

Map Site.site_name to name for convenience.

class wagtail_graphql.types.StreamField(*args, **kwargs)

Bases: graphene.types.json.JSONString

Scalar used to represent a Wagtail’s StreamField value.

static serialize(value)
class wagtail_graphql.types.QuerySetList(of_type, *args, **kwargs)

Bases: graphene.types.structures.List

List type with arguments used by Django’s query sets.

This list setts the following arguments on itself:

  • id
  • limit
  • offset
  • search_query
  • order
Parameters:
  • enable_limit (bool) – Enable limit argument.
  • enable_offset (bool) – Enable offset argument.
  • enable_search (bool) – Enable search query argument.
  • enable_order (bool) – Enable ordering via query argument.
wagtail_graphql.types.create_model_type(model, fields, meta_attrs=None)

Create a generic GraphQL type for a Django model.

Parameters:
  • model – Django model.
  • fields – A list of wagtail_graphql.models.GraphQLField instances to be used on the type.
  • meta_attrs – Additional meta attributes to be passed to the new GraphQL object type.
wagtail_graphql.types.create_page_type(model, fields)

Generate a DjangoObjectType subclass for a Wagtail page.

wagtail_graphql.types.create_snippet_type(model, fields)

Generate a DjangoObjectType for a Wagtail page.