Saltar para o conteúdo principal
No momento, os objetos só podem ser acessados através de Configurações. Vamos dar ao aplicativo uma presença real na UI: listar exibições, entradas da barra lateral, um clique Gerar documento comando, um componente frontal de record-page para visualizar um documento e uma guia de editor nativa para templates.

Visualizações e navegação

A view é uma lista salva de um determinado objeto. Um item de menu de navegação coloca essa visualização na barra lateral.
Adicionar o mesmo par para modelos. Ambos agora aparecem na barra lateral:
Visualização de documentos com um documento gerado

Documentos e Modelos na barra lateral, com o documento gerado listado.

Um componente frontal

A front component é um componente React sandboxed dentro de Twenty. Ours lê o registro selecionado, carrega o modelo de pessoa via CoreApiClient, e POSTs até a rota do último capítulo .
Estilo com variáveis CSS inline (var(--t-color-blue)), não valores importados de 25ui. O SDK simula esse pacote durante a compilação, portanto, as importações em nível de módulo de constantes de tema ficariam undefined. Veja o componente inteiro.

Um comando para abri-lo

Um item de menu de comando com availabilityType: 'RECORD_SELECTION' aparece quando uma pessoa é selecionada, e abre o componente no painel lateral.

Experimente todo o fluxo

Abra Pessoas, marque uma pessoa e pressione ⌘K / Ctrl K. “Gerar documento” aparece, marcado com seu aplicativo:
Menu de comando com o documento gerado

O comando aparece quando uma pessoa é selecionada.

Executá-lo — seu componente abre no painel lateral. Escolha um modelo, clique Gerar e uma nova terra em Documentos.
Gerar painel lateral do documento

O componente inicial, carregando templates e gerando no clique.

Cada documento gerado grava o seu aplicativo como seu autor:
Um registro de documento gerado

Criado pelo Gerador do Documento: Status Gerado.

Pré-visualizar um documento em sua página de registro

Um componente frontal não é apenas para menus de comando. Você pode montar um como uma **aba de uma página de registro . Vamos adicionar uma aba Pré-visualização ao registro de documento que renderiza o corpo Markdown como uma página polida e impressa. O componente lê o id de registro atual de seu contexto de execução, carrega o documento e o renderiza. Componentes frontais executados em uma sandbox que só permite uma lista branca de tags HTML — injeção HTML bruta (dangerouslySetInnerHTML) e \<style> estão bloqueados — então renderizamos o Markdown como elementos React com estilos inline através de um pequeno Markdown helper.
Monte-o com um layout da página. Um layout RECORD_PAGE adiciona abas à vista de registro de um objeto; um widget FRONT_COMPONENT em uma aba CANVAS hospeda o componente:
Abra qualquer documento — uma guia Pré-visualizar renderiza belíssima, com links para a página web compartilhável de e o PDF:
Visualizador de documentos do componente frontal em uma aba de registros

A aba de Pré-visualização renderiza o documento com estilos embutidos, mais links rápidos.

Edite um modelo com o editor de texto rico

Os templates não precisam de um componente personalizado. Como o body é um campo RICH_TEXT, Twenty já fornece um editor de rich text completo para ele — o mesmo que os objetos padrão Note e Task usam. Nós apenas a apresentamos na página de registro de template. Adicione uma aba com um widget FIELD no modo de exibição EDITOR, apontando para o campo body através de fieldMetadataId:
Um campo RICH_TEXT armazena tanto o JSON de blocos do editor quanto uma projeção em Markdown. O pipeline de geração lê essa projeção Markdown, então espaços reservados, o PDF, e a página da web compartilhável continuam funcionando inalterado — veja o template-record. leiaute-idade.ts. Agora editores escrevem modelos em um editor de texto rico:
Registro de modelo com a aba de editor de texto rico nativo

A aba Modelo: editor de texto rico nativo de 20 vinculado ao campo de corpo.

Após este passo: os documentos pré-visualizar lindo e os templates são editáveis dentro do aplicativo. Em seguida, deixe um atendente da IA gerá-los a partir de um chat.

Próximo: um atendente de IA →

Adicione um agente e uma habilidade que chama sua ferramenta.