Pular para o conteúdo principal

<kaleidr-map> — o elemento

A façade declarativa. Insira o elemento e defina os atributos; ele é montado ao conectar e desmontado quando removido.

<kaleidr-map product="viewer" share-id="abcd1234" style="height:480px"></kaleidr-map>

Tabela de atributos

Verificado em relação a kaleidr-sdk/packages/embed/src/element.ts. Os nomes dos atributos usam kebab-case; os nomes das opções correspondentes de Kaleidr.mount(...) em kaleidr.js usam camelCase.

AtributoProdutosObrigatórioPadrãoSignificado
producttodossimchat | viewer | editor | tile
publishable-keychat, editor, tilesim*kld_pk_live_…; trocado por um token de sessão em tempo de execução
api-keychat, editor, tileAlias obsoleto; também aceita kld_live_… legado
share-idviewersimMapa publicado / share id; omiti-lo causa erro no carregamento do bundle
map-idviewerAlias de share-id
style-idtile, editoropcionaltile: padrão do viewer; editor: padrão da org → kaleidr-morningID de estilo do mapa-base ou (editor) URL completa de estilo
map-targetchatopcionalSeletor CSS do elemento de mapa host
containedchatopcionalfalseFixa o painel dentro do elemento de montagem em vez de deixá-lo flutuar em document.body
centerviewer, tile, editoropcionallon,lat
zoomviewer, tile, editoropcionaleditor: 2Zoom inicial
pitchviewer, tile, editoropcional0Inclinação inicial
bearingviewer, tile, editoropcional0Orientação inicial
themechat, editoropcionalString de objeto JSON de tokens CSS
doorwaytodosopcionalpadrão do produtoSubstituição iframe | attach
basetodosopcionalhttps://cdn.kaleidr.comOrigem CDN para bundles carregados sob demanda (/embed/v1/*.js)
viewer-baseviewer, tileopcionalhttps://map-embed.kaleidr.comOrigem carregada pelo iframe — diferente do CDN do bundle
api-basechat, editor, tileopcionalhttps://api.kaleidr.com/inference-apiDeve incluir /inference-api. Uma origem simples como https://api.kaleidr.com retorna 404 na troca de sessão. Aplica-se a qualquer produto que execute uma troca de sessão (chat, editor, tile).
tile-baseeditoropcionalhttps://tile.kaleidr.comCDN de tiles usado para resolver valores style-id do catálogo
flagtodosopcionalSubstituição de dormancy por elemento

* Obrigatório para uso autorizado/faturado. Viewer não precisa de chave; passar uma chave para um Viewer embed é rejeitado com product_not_allowed.

Defina uma altura para o elemento (style inline ou CSS). Cada produto preenche seu contêiner; um produto iframe dentro de um contêiner sem dimensões usa como alternativa uma altura fixa de 500px para continuar visível.

Handle matrix

Comportamento conforme distribuído em /embed/v1/. Combinações não suportadas não lançam erros — o SDK registra um aviso [kaleidr] e retorna. Isso faz parte do contrato do alias principal v1; remover métodos chamáveis seria uma alteração incompatível de comportamento.

Métodochatviewereditortile
destroy()simsimsimsim
setCamera(camera)no-opsimsimsim
setTheme(theme)sim (live)n/asomente na montagemn/a
setStyle(styleId)n/an/an/aexposto apenas em tile

Chat não controla a câmera do mapa — use a API de câmera da sua instância após Kaleidr.mount(...). O live-setTheme do Editor chegará em uma versão posterior do SDK; o theme na montagem já funciona.

Atualizações em tempo real

center, zoom, pitch e bearing são observados e reenquadram viewer, editor e tile sem remontagem. Alterações de theme atualizam chat em tempo real; o tema do editor continua limitado ao momento da montagem.

Chat + map-target

Chat se conecta ao seu mapa ativo, algo que um atributo string não consegue transportar. Há duas formas de fornecê-lo:

  • Imperativa (recomendada): Kaleidr.mount(el, { product: 'chat', publishableKey, map, contained: true }).
  • Declarativa: armazene sua instância do mapa no elemento host como hostEl.__kaleidrMap__ = map e depois use map-target="#host".

Sem um mapa, chat funciona em modo headless (sem interações com o mapa).