Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

Index

Properties

Optional controls

controls?: Control[]

Array of fields and their associated widgetId

Optional editor

editor?: Editor

Legacy singular editor override

Optional editorLayout

editorLayout?: FieldGroupItem[]

Array of editor layout field groups

Optional editors

editors?: Editor[]

Array of editors. Defaults will be used if property is missing.

Optional groupControls

groupControls?: GroupControl[]

Array of field groups and their associated widgetId

Optional sidebar

sidebar?: SidebarItem[]

Array of sidebar widgets. Defaults will be used if property is missing.

sys

sys: MetaSysProps & { contentType: { sys: MetaLinkProps }; environment: { sys: MetaLinkProps }; space: { sys: MetaLinkProps } }

Methods

getControlForField

  • getControlForField(id: string): null | Control
  • Gets a control for a specific field

    Parameters

    • id: string

    Returns null | Control

    control object for specific field

    const contentful = require('contentful-management')

    const client = contentful.createClient({
    accessToken: '<content_management_api_key>'
    })

    client.getSpace('<space_id>')
    .then((space) => space.getEnvironment('<environment_id>'))
    .then((environment) => environment.getContentType('<contentType_id>'))
    .then((contentType) => contentType.getEditorInterface())
    .then((editorInterface) => {
    control = editorInterface.getControlForField('<field-id>')
    console.log(control)
    })
    .catch(console.error)

toPlainObject

update

  • Sends an update to the server with any changes made to the object's properties

    Returns Promise<EditorInterface>

    Object returned from the server with updated changes.

    const contentful = require('contentful-management')

    const client = contentful.createClient({
    accessToken: '<content_management_api_key>'
    })

    client.getSpace('<space_id>')
    .then((space) => space.getEnvironment('<environment_id>'))
    .then((environment) => environment.getContentType('<contentType_id>'))
    .then((contentType) => contentType.getEditorInterface())
    .then((editorInterface) => {
    editorInterface.controls[0] = { "fieldId": "title", "widgetId": "singleLine"}
    editorInterface.editors = [
    { "widgetId": "custom-widget", "widgetNamespace": "app" }
    ]
    return editorInterface.update()
    })
    .catch(console.error)