Skip to main content
Version: 3.0.0-beta


In a map property you define child properties in the same way you define them at the entity schema level:

import { buildProperty } from "./builders";

const ctaProperty = buildProperty({
dataType: "map",
properties: {
name: {
name: "Name",
description: "Text that will be shown on the button",
validation: { required: true },
dataType: "string"
type: {
name: "Type",
description: "Action type that determines the user flow",
validation: { required: true, uniqueInArray: true },
dataType: "string",
enumValues: {
complete: "Complete",
continue: "Continue"


Record of properties included in this map.


List of properties rendered as this map preview. Defaults to first 3.


Display the child properties as independent columns in the collection view. Defaults to false.


Should the map be expanded by default in the form view. Defaults to false.


Render this map as a key-value table that allows to use arbitrary keys. You don't need to define the properties in this case.


  • required Should this field be compulsory.
  • requiredMessage Message to be displayed as a validation error.

The widget that gets created is


Sign up to our newsletter to get the latest news and updates. No spam!