Conceitos de layout
| Conceito | O que controla | Entidade |
|---|---|---|
| Vista | Uma configuração de lista salva para um objeto — campos visíveis, ordem, filtros, grupos | defineView |
| Item do menu de navegação | Uma entrada na barra lateral esquerda que aponta para uma vista ou uma URL externa | defineNavigationMenuItem |
| Layout da Página | As abas e widgets que compõem a página de detalhes de um registro | definePageLayout |
| Aba Layout da Página | Uma aba independente vinculada a um layout de página existente (padrão ou do seu próprio aplicativo) | definePageLayoutTab |
universalIdentifier:
- Um item do menu de navegação do tipo
VIEWaponta para um identificadordefineView, assim o link da barra lateral abre essa vista salva. - Um layout de página do tipo
RECORD_PAGEdestina-se a um objeto e pode incorporar front components em suas abas como widgets.
defineView
Defina visualizações salvas para objetos
defineView
Defina visualizações salvas para objetos
As visualizações são configurações salvas de como os registros de um objeto são exibidos — incluindo quais campos são visíveis, sua ordem e quaisquer filtros ou grupos aplicados. Use Pontos-chave:
defineView() para enviar visualizações pré-configuradas com seu app:src/views/example-view.ts
objectUniversalIdentifierespecifica a qual objeto esta visualização se aplica.keydetermina o tipo de visualização (por exemplo,ViewKey.INDEXpara a visualização de lista principal).fieldscontrola quais colunas aparecem e sua ordem. Cada campo referencia umfieldMetadataUniversalIdentifier.- Você também pode definir
filters,filterGroups,groupsefieldGroupspara configurações mais avançadas. positioncontrola a ordenação quando existem várias visualizações para o mesmo objeto.
defineNavigationMenuItem
Defina links de navegação da barra lateral
defineNavigationMenuItem
Defina links de navegação da barra lateral
definePageLayout
Defina layouts de página personalizados para visualizações de registro
definePageLayout
Defina layouts de página personalizados para visualizações de registro
Layouts de página permitem personalizar como uma página de detalhes do registro se parece — quais abas aparecem, quais widgets estão dentro de cada aba e como eles são organizados. Use Pontos-chave:
definePageLayout() para enviar layouts personalizados com seu app:src/page-layouts/example-record-page-layout.ts
typegeralmente é'RECORD_PAGE'para personalizar a visualização de detalhes de um objeto específico.objectUniversalIdentifierespecifica a qual objeto este layout se aplica.- Cada
tabdefine uma seção da página com umtitle,positionelayoutMode(CANVASpara layout livre). - Cada
widgetdentro de uma aba pode renderizar um componente de front-end, uma lista de relações ou outros tipos de widget incorporados. positionnas abas controla sua ordem. Use valores mais altos (por exemplo, 50) para colocar abas personalizadas após as nativas.
definePageLayoutTab
Adicionar uma aba a um layout de página existente
definePageLayoutTab
Adicionar uma aba a um layout de página existente
definePageLayoutTab permite que seu app adicione uma única aba — com widgets opcionais — a um layout de página existente. O caso de uso mais comum é adicionar uma aba personalizada (por exemplo, uma aba de análises ou de resumo por IA) a uma das páginas de registro nativas do Twenty, ou a um layout de página que o seu próprio app já fornece.O layout de página de destino deve ser um layout de página padrão do Twenty ou um definido pelo seu próprio app; referências entre apps a layouts de página pertencentes a outro app instalado não são compatíveis no momento.src/page-layouts/example-extra-tab.ts
pageLayoutUniversalIdentifieré obrigatório ao usardefinePageLayoutTabe deve apontar para um layout de página que já exista no momento da instalação (padrão ou do seu app). Quando o layout de página pai está ausente, a instalação falha com um erro de validação claro.widgetstêm escopo apenas para esta aba — eles referenciam componentes de interface, visualizações etc., exatamente como widgets definidos inline emdefinePageLayout.positioncontrola a ordenação em relação às abas existentes no layout de destino. Escolha um valor que posicione sua aba onde você deseja em relação às abas nativas.- Use isto em vez de
definePageLayoutquando você quiser apenas adicionar a um layout existente. UsedefinePageLayoutquando você for o proprietário de todo o layout (normalmente umaRECORD_PAGEpara um objeto que você fornece no seu app, ou umaSTANDALONE_PAGE).