No arquivo de configuração do *-hsmeta.json para seu cartão de aplicativo, inclua as propriedades abaixo.
Reportar código incorreto
Copiar
Perguntar à IA
{ "uid": "example-card", "type": "card", "config": { "name": "Hello Example App", "description": "A description of the card's purpose.", "location": "crm.record.tab", "entrypoint": "/app/cards/ExampleCard.jsx", "objectTypes": ["contacts"] }}
Campos marcados com * são obrigatórios.
Campo
Tipo
Descrição
uid*
String
O identificador exclusivo do cartão. Ele pode ser qualquer string, mas deve identificar o aplicativo de uma maneira significativa. O HubSpot identificará o cartão por esse ID para que você possa alterar o título do cartão sem remover dados do histórico ou de estado, como a posição no registro de CRM.
type
String
O tipo de componente, que deve ser card neste caso.
config
Objeto
Um objeto que contém detalhes de configuração.
name*
String
O título do cartão, exibido na interface do usuário do HubSpot.
description
String
Uma descrição do cartão.
previewImage
Objeto
Um objeto que contenha os campos file e altText. O campo file é o caminho relativo para a imagem de visualização. As extensões de arquivo válidas são png, jpeg, jpg ou gif. O tamanho máximo do arquivo é 5,0 MB. O campo altText é uma breve descrição da imagem.
entrypoint*
String
O caminho de arquivo do código do React de frontend do cartão.
Onde o cartão aparece na interface do usuário do HubSpot. Você só pode especificar um valor de local, mas algumas combinações location e objectTypes resultam em suporte a vários locais. Consulte a seção Locais com suporte para obter mais detalhes.
objectTypes*
Matriz
Os tipos de registros de CRM em que o cartão aparecerá. Consulte a seção Objetos com suporte abaixo para obter mais detalhes.
Na matriz objectTypes do arquivo de configuração *-hsmeta.json do cartão, especifique os tipos de registros de CRM em que o cartão aparecerá. Veja abaixo os objetos do CRM atualmente compatíveis, seu valor de objectType e o escopo mínimo a adicionar ao seu aplicativo.
Para objetos padrão do HubSpot, os valores de objectType não fazem distinção entre maiúsculas e minúsculas e tanto singular quanto plural são aceitos. Por exemplo, "CONTACT" e "contacts" são ambos válidos.
Valor
objectType do objeto do CRM
Escopo relacionado
Contatos
CONTACT
crm.objects.contacts.read
Empresas
COMPANY
crm.objects.companies.read
Negócios
DEALS
crm.objects.deals.read
Tickets
TICKETS
tickets
Objeto personalizado
p_objectName (diferencia maiúsculas de minúsculas)
No campo location do arquivo de configuração de *-hsmeta.json do cartão, especifique onde o cartão será exibido no HubSpot. Veja abaixo os locais compatíveis no momento.
crm.record.tab: coloca a extensão na coluna do meio das páginas de registro do CRM, em uma das guias padrão do HubSpot ou em uma guia personalizada. Quando objectType está definido como COMPANIES, o cartão estará igualmente disponível no painel de visualização de contas-alvo do espaço de trabalho de vendas.
crm.preview: exibe o cartão de aplicativo no painel de visualização que você pode acessar em todo o CRM. Ao usar este local, a extensão estará disponível ao visualizar o objectTypes especificado no arquivo de configuração JSON. Isso inclui a visualização de registros nas páginas de registro do CRM, páginas de índice, exibições de quadro e a ferramenta de listas. Saiba mais sobre como personalizar visualizações.
Mostrar captura de tela
helpdesk.sidebar: exibe o cartão nas barras laterais do ticket no help desk. Isso inclui o painel de visualização do ticket na página inicial do help desk e a barra lateral direita da exibição do ticket no help desk. Para adicionar um cartão a esse local, você precisará definir suas configurações de help desk.
A interface do usuário de um cartão de aplicativo é criada por um arquivo de componente do React, .jsx ou .tsx. Este arquivo fica no diretório cards/ ao lado do arquivo JSON de configuração do cartão (*-hsmeta.json). No arquivo de configuração do cartão, você especifica o caminho do arquivo React no campo entrypoint.Veja abaixo um exemplo de um cartão de aplicativo simples, que inclui Componentes da interfaceText e Button para renderizar o conteúdo do cartão, além de um componente Flex para gerenciar layout.
Reportar código incorreto
Copiar
Perguntar à IA
import React from "react";import { Text, Button, Flex, hubspot } from "@hubspot/ui-extensions";// Define the extension to be run within the Hubspot CRMhubspot.extend(() => <Extension />);// Define the Extension componentconst Extension = () => { return ( <Flex direction="column" gap="medium"> <Text>This is a simple getting started UI extension with static text.</Text> <Button onClick={() => console.log("Button clicked!")}>Click me!</Button> </Flex> );};
Veja a documentação de referência a seguir para criar a aparência e a funcionalidade do cartão:
Você pode incluir dependências para seu cartão de aplicativo em um arquivo package.json no diretório cards/. Por padrão, ao adicionar um cartão de aplicativo por meio do comando hs project add, um arquivo package.json será criado para você com as seguintes dependências:
@hubspot/ui-extensions
react
typescript
Para instalar dependências para componentes do projeto com um arquivo package.json, você pode executar o comando hs project install-deps no diretório do projeto.