Skip to content

Modal

AlpopModal é um diálogo estruturado baseado no vue-universal-modal. A visibilidade é controlada por v-model (recomendado) ou pela prop legada show; close (e update:modelValue com false) é emitido ao fechar.

O layout é estruturado: um cabeçalho opcional (ícone + título + descrição), o slot de conteúdo padrão, um bloco notice opcional e um rodapé actions opcional. Cada região é omitida quando não há conteúdo para ela.

Requer que a AlpopUI seja instalada como plugin (app.use(AlpopUI)).

AlpopConfirmationModal adiciona ações de cancelar/confirmar. Todos os rótulos são props.

AlpopReportModal consulta o status de um relatório assíncrono e mostra uma barra de progresso até ficar pronto, oferecendo então o download. Desacoplado do HTTP: passe uma função fetchReport que resolve o payload do relatório.

PropTipoPadrãoDescrição
showBooleanVisibilidade (obrigatório)
fetchReportFunctionRetorna o payload do relatório (obrigatório)
reportPageUrlStringnullLink para a página do relatório
pollIntervalNumber2000Intervalo de consulta (ms)

Props do AlpopModal

PropTipoPadrãoDescrição
modelValueBooleannullVisibilidade via v-model (recomendado).
showBooleanfalseVisibilidade legada, usada quando v-model não está vinculado.
sizeStringmdLargura: sm | md | lg | xl (valor inválido cai para md).
titleString""Título do cabeçalho estruturado.
descriptionString""Descrição do cabeçalho estruturado.
iconString""Ícone do cabeçalho (nome do AlpopIcon).
iconWeightStringregularPeso do ícone.
hideCloseBooleanfalseOculta o botão de fechar.
closeLabelStringnullSobrescreve o aria-label do botão de fechar (senão usa components.modal.close).
closeOnBackdropBooleantrueFecha ao clicar no fundo (mapeado para closeClickDimmed).
modalClassString | Array | Object""Classes extras no contêiner do modal.
optionsObject{}Opções repassadas ao vue-universal-modal.

Eventos: update:modelValue (Boolean), close.

Slots: default (conteúdo), header (sobrescreve o cabeçalho padrão), notice (bloco destacado), actions (rodapé de ações).