import type { Component } from "vue" import EliEntradaConfirmacao from "./EliEntradaConfirmacao.vue" import EliEntradaCoordenadas from "./EliEntradaCoordenadas.vue" import EliEntradaDataHora from "./EliEntradaDataHora/index.vue" import EliEntradaNumero from "./EliEntradaNumero.vue" import EliEntradaParagrafo from "./EliEntradaParagrafo.vue" import EliEntradaSelecao from "./EliEntradaSelecao.vue" import EliEntradaSelecaoMultipla from "./EliEntradaSelecaoMultipla.vue" import EliEntradaTexto from "./EliEntradaTexto.vue" import type { TipoEntrada } from "./tiposEntradas" /** * Mapa (dispatch table) que associa cada `TipoEntrada` ao seu componente Vue correspondente. * Usado pelo sistema de filtro avançado para renderizar dinamicamente o campo correto * a partir da configuração declarada em `tipoEliTabelaConsulta.filtroAvancado[].entrada`. * * Adicionar um novo tipo de entrada requer: * 1. Criar o componente Vue * 2. Adicionar a chave em `TipoEntrada` (tiposEntradas.ts) * 3. Registrar aqui no mapa */ export const registryTabelaCelulas: Record = { texto: EliEntradaTexto, coordenadas: EliEntradaCoordenadas, numero: EliEntradaNumero, dataHora: EliEntradaDataHora, paragrafo: EliEntradaParagrafo, selecao: EliEntradaSelecao, selecaoMultipla: EliEntradaSelecaoMultipla, confirmacao: EliEntradaConfirmacao, }