Map
Em uma propriedade map, você define propriedades filhas da mesma forma que as define no nível do esquema da entidade:
import { buildProperty } from "@firecms/core";
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" } } }});properties
Seção intitulada “properties”Registro de propriedades incluídas neste map.
previewProperties
Seção intitulada “previewProperties”Lista de propriedades renderizadas como pré-visualização deste map. Padrão as 3 primeiras.
spreadChildren
Seção intitulada “spreadChildren”Exibe as propriedades filhas como colunas independentes na vista
de coleção. Padrão false.
pickOnlySomeKeys
Seção intitulada “pickOnlySomeKeys”Permite ao utilizador adicionar apenas algumas chaves neste map. Por padrão, todas as propriedades do map têm o campo correspondente na vista de formulário. Definir este flag como true permite selecionar apenas algumas. Útil para maps que possam ter muitas sub-propriedades que podem não ser necessárias.
expanded
Seção intitulada “expanded”Determina se o campo deve ser inicialmente expandido. Padrão true.
keyValue
Seção intitulada “keyValue”Renderiza este map como um array chave-valor que permite usar chaves arbitrárias. Não precisa definir as propriedades neste caso.
minimalistView
Seção intitulada “minimalistView”Quando definido como true, exibe as propriedades filhas diretamente sem serem envolvidas em um painel expansível.
validation
Seção intitulada “validation”requiredSe este campo deve ser obrigatório.requiredMessageMensagem a ser exibida como erro de validação.
O widget criado é
MapFieldBindingCampo que renderiza os campos de propriedades filhas
Links: