🚀 SafeCall Framework

Framework baseado em execução de ações controladas pelo backend, onde o frontend apenas interpreta e executa instruções JSON.

---

1. 🧠 Conceito

O SafeCall não trabalha com rotas tradicionais ou HTML direto do backend.

Ele funciona com um modelo:
Backend → Instruções → Frontend executa
---

2. 🔁 Fluxo do Framework

Usuário
↓
SafeCallAcao (click interceptado)
↓
BotaoClique()
↓
Api.enviar()
↓
Backend processa ação
↓
Retorna JSON (FUNCOES)
↓
tratarRetorno()
↓
Execução dinâmica no frontend
---

3. 📦 Protocolo JSON

{
  "FUNCOES": [
    {
      "funcao": "NomeFuncao",
      "parametros": []
    }
  ]
}
👉 Esse é o coração do framework
---

4. ⚡ Ações (SafeCallAcao)

<button SafeCallAcao data-acao="MinhaAcao">
    Executar
</button>

Toda ação é automaticamente interceptada pelo framework.

---

5. 🔔 AlertaEmHtml

$response['FUNCOES'][] = [
  "funcao" => "AlertaEmHtml",
  "parametros" => [
    "msg" => "Sucesso!",
    "tipo" => "sucesso"
  ]
];
Tipos: sucesso erro alerta
---

6. 🖥️ Estrutura do App

Gera automaticamente a estrutura principal da aplicação:

HtmlCriarHtmlApp()
---

7. 📄 Sistema de Telas

✔ Cache de telas
✔ Estado automático de inputs
✔ Evita reload desnecessário
✔ Troca instantânea de UI
HtmlTelaPrincipal({
  idtela: "Dashboard",
  html: "...",
  Atualizar: false
});
---
criarModal({
  id: "Modal1",
  html: "<p>Conteúdo</p>",
  id_alvo: "App"
});
---

9. ⏳ Loader

mostrarLoader("App");

LoaderProgresso({
  ref: "App",
  porcentagem: 70,
  log: "Processando..."
});

ocultarLoader("App");
---

10. 🧩 Manipulação DOM

AtualizarElemento
ReplaceElemento
AppendElemento
PrependElemento
RemoverElemento
---

11. ⚙️ JS Dinâmico

EXECUTAR_JS([
  "console.log('Executado')"
]);
---

12. 📚 Libs Dinâmicas

EXECUTAR_LIBS([
  "js/chart.js"
]);
---

13. 🧠 Arquitetura Real

O frontend NÃO decide nada

Ele apenas:
Backend = cérebro
Frontend = executor
---