Carry over pre-existing WABA outreach automation WIP

This work already existed uncommitted in the main working tree (not
authored by this branch) and is required as a runtime dependency for the
campaign outreach port (zpro-client, templates, outreach routes/UI). Copied
in as-is, untouched, so this feature branch has a working baseline; the
original uncommitted state in the main checkout is left exactly as it was.
This commit is contained in:
Gustavo
2026-08-01 10:12:25 -03:00
parent 0894ab68b3
commit 4f736562f3
33 changed files with 3537 additions and 342 deletions
+5
View File
@@ -79,6 +79,11 @@ function h(tag, attrs = {}, ...children) {
}
let toastTimer = null;
// Aviso: um <dialog> aberto via showModal() fica acima de qualquer div normal
// (top layer do navegador, z-index nao ajuda — e testamos que nem a Popover
// API resolve, o dialog continua por cima). Por isso o toast NAO deve ser a
// unica forma de mostrar erro de uma acao disparada de dentro de um modal
// aberto: use tambem uma mensagem inline no proprio modal nesses casos.
function toast(message, ms = 3500) {
const box = el('toast');
box.textContent = message;