Conn2Flow
Navegação das docs

Referência / Bibliotecas

Biblioteca html-editor.php

O editor de HTML e CSS dos CRUDs de páginas, layouts, componentes, templates, publicações e widgets: código, visual, pré-visualização com Tailwind, modelos, variáveis, widgets e assistente de IA.

Caminho no Gestor bibliotecas/html-editor.php

O editor que aparece nos formulários de páginas, layouts, componentes, templates, publicações, menus, galerias, formulários e índices (cerca de 30 chamadas em 12 módulos). O servidor monta a tela e responde ao AJAX; a edição em si roda no navegador (interface/html-editor.js e html-editor-interface.js).

Abrir o editor: html_editor_componente()

gestor_incluir_biblioteca('html-editor');
$_GESTOR['pagina'] = modelo_var_troca($_GESTOR['pagina'], '#html-editor#', html_editor_componente([
    'editar' => true,
    'modulo' => $modulo,                    // o JSON do módulo
    'alvo' => 'paginas',                    // escolhe modelos e prompts de IA
    'css_precompiled' => $registro['css_precompiled'],
    'layout_id' => $registro['layout_id'],  // para pré-visualizar com a cascata do layout
]));

Parâmetros: editar / adicionarEditar (edição, ou adição que já edita HTML e CSS), modulo, alvo, alvos_modelos (alvos extras de modelos), publisher e publisherPage (controles de variáveis do publicador, html_editor_publisher_controls()), css_precompiled e layout_id.

A tela tem:

  • código HTML e CSS em CodeMirror (assets externos);

  • visual e pré-visualização num iframe com o Tailwind rodando no navegador (versão do registro, html_editor_tailwind_browser_version()), nos tamanhos desktop, tablet e celular; o CSS de base é a mesma cascata do site: pré-compilado do layout, do recurso e o CSS autoral do layout (html_editor_css_precompiled_baseline(), html_editor_layout_css_autoral(), html_editor_css_precompiled_concatenar()). Trocar o layout no formulário recarrega essa cascata (html-editor-layout-css);

  • modelos (templates por alvo) para começar uma página;

  • variáveis @[[…]]@ e widgets mostrados como caixas no visual, com o conteúdo real renderizado sob demanda;

  • assistente de IA (ia.php), aba SEO & Compartilhamento nas páginas, e o histórico de backups do HTML/CSS para restaurar.

O que o navegador compila vai para css_compiled ao salvar, com a assinatura de procedência (recursos).

AJAX: html_editor_ajax_interface()

Chamada pela interface.php quando a biblioteca está entre as do módulo. Primeiro passa por ia_ajax_interface() e depois despacha pela ajax-opcao:

Opção Função Faz
html-editor-templates-load html_editor_ajax_templates_load() Lista os modelos do alvo (filtro html-editor.templates.load.where)
html-editor-widget-types, html-editor-widgets-list html_editor_ajax_widget_types(), html_editor_ajax_widgets_list() Tipos de widget e instâncias para inserir (html_editor_widgets_buscar())
html-editor-widget-render html_editor_ajax_widget_render() Renderiza um widget para o visual
html-editor-render-vars html_editor_ajax_render_vars() Troca variáveis e widgets do HTML por caixas visuais (html_editor_boxes_variaveis(), html_editor_boxes_widgets(), html_editor_resolver_variaveis(), html_editor_resolver_var(), html_editor_var_box(), html_editor_var_pattern(), html_editor_render_widget_signature())
html-editor-layout-css html_editor_ajax_layout_css() CSS do layout escolhido, separado em pré-compilado e autoral
html-editor-ia-requests html_editor_ajax_ia_requests() Envia o pedido à IA com HTML, CSS, modo e tokens do tema

Tokens do tema para a IA

Para a IA usar as cores e fontes do site em vez de inventar, o editor resume o contrato Tailwind do projeto (contents/tailwindcss/browser-contract.css, html_editor_tailwind_browser_contract()) num bloco {{theme_tokens}} de até ~1,5 KB (teto 2 KB), priorizando cor, fonte e espaçamento: html_editor_ia_tokens_tema_compilar(), com html_editor_ia_tokens_tema_limite(), html_editor_ia_tokens_tema_namespaces(), html_editor_ia_tokens_tema_valor_util(), html_editor_ia_tokens_tema_bloco(), html_editor_ia_tokens_tema_componentes(), html_editor_ia_css_classes_resumir() e html_editor_ia_extrair_tokens_tema(). O modo de IA recebe o bloco no marcador próprio (html_editor_ia_theme_tokens_marcador(), html_editor_ia_modo_theme_tokens_aplicar()).

Inclusões e filtros

  • html_editor_include(['js_vars' => …]) inclui o editor visual e suas dependências; os filtros html-editor.html_editor_include.projectJS e html-editor.html_editor_include.imagepickJS (hooks) deixam o projeto trocar o JS do projeto e o seletor de imagens.

  • html_editor_assets_registro() carrega sob demanda o registro de assets externos.

  • html_editor_tailwind_browser_contract() lê o contrato de tema do projeto (contents/tailwindcss/browser-contract.css, que prevalece sobre o do core) entregue ao Tailwind do navegador.

Funções

Gerado a partir de gestor/bibliotecas/html-editor.php · 37 funções

37 de 37

html_editor_ia_tokens_tema_bloco

ver no código · linha 260 ↗
html_editor_ia_tokens_tema_bloco(string $css): string

Recorta o conteúdo do primeiro bloco @theme / @theme static do contrato (req-127).

Parâmetros

$cssstring
CSS do contrato, já sem comentários.

Retorno

string
conteúdo interno do bloco, ou string vazia quando não houver @theme.

html_editor_ia_css_classes_resumir

ver no código · linha 345 ↗
html_editor_ia_css_classes_resumir(string $css, int|null $limiteBytes = null): string

Resume um CSS qualquer na lista de nomes de classe que ele define (req-127).

Parâmetros

$cssstring
CSS a resumir.
$limiteBytesint|null
orçamento total; null usa html_editor_ia_tokens_tema_limite().

Retorno

string
lista de classes separadas por espaço, ou string vazia.

html_editor_ia_tokens_tema_compilar

ver no código · linha 387 ↗
html_editor_ia_tokens_tema_compilar(string $css, int|null $limiteBytes = null): string

Monta o bloco {{theme_tokens}} a partir do CSS do contrato (req-127).

Parâmetros

$cssstring
conteúdo do browser-contract.css.
$limiteBytesint|null
orçamento total; null usa html_editor_ia_tokens_tema_limite().

Retorno

string
bloco CSS compacto, ou string vazia quando não houver nada aproveitável.

html_editor_ia_modo_theme_tokens_aplicar

ver no código · linha 543 ↗
html_editor_ia_modo_theme_tokens_aplicar(string $modo, string $theme_tokens): string

Aplica (ou remove) a seção de tokens de tema no texto do modo de IA (req-127).

Parâmetros

$modostring
texto do modo de IA.
$theme_tokensstring
saída de html_editor_ia_extrair_tokens_tema().

Retorno

string

html_editor_ia_extrair_tokens_tema

ver no código · linha 595 ↗
html_editor_ia_extrair_tokens_tema(string|null $caminhoContrato = null, int|null $limiteBytes = null): string

Extrator semântico leve de tokens de tema para o Assistente de IA (req-127).

Parâmetros

$caminhoContratostring|null
caminho explícito do contrato; null resolve pelo projeto ativo.
$limiteBytesint|null
orçamento total; null usa html_editor_ia_tokens_tema_limite().

Retorno

string
bloco CSS compacto, ou string vazia quando não houver contrato aproveitável.

html_editor_var_pattern

ver no código · linha 1293 ↗
html_editor_var_pattern()

============================================================================ req-093 (BATCH-093) — Renderização de variáveis/widgets como caixas no Editor HTML Visual CLÁSSICO e no preview, espelhando a Editbar (Dashboard Site Toolbar).

html_editor_widget_js_modulos

ver no código · linha 1350 ↗
html_editor_widget_js_modulos(): array

Módulos que têm controlador público de widget (<modulo>.widget.js), pelo cadastro de widgets. A prévia do editor carrega o controlador dos widgets presentes na página; com uma lista fixa no JavaScript, widget de projeto ou de plugin ficava sem comportamento na prévia.

Retorno

array
[modulo => true]

html_editor_ajax_render_vars

ver no código · linha 1469 ↗
html_editor_ajax_render_vars()

AJAX — Recebe o HTML do editor (CodeMirror) e devolve duas versões renderizadas (req-093): - boxes: variáveis globais em caixas (.c2f-var-box + data-c2f-marker) + widgets renderizados entre comentários — para carregar no EDITOR VISUAL (átomos reversíveis no save). - values: variáveis globais resolvidas para valor puro (sem caixas) — para o PREVIEW iframe. As variáveis LOCAIS/de simulação (desconhecidas do backend) são preservadas para o frontend resolver.

html_editor_widgets_buscar

ver no código · linha 1652 ↗
html_editor_widgets_buscar(array $params = array()): array

Busca paginada de itens de widget para o painel "+" do Live Editor (BATCH-081 §6).

Parâmetros

$paramsarray
{ module?:string, busca?:string, pagina?:int, limite?:int }

Retorno

array
Estrutura de resposta pronta para $_GESTOR['ajax-json'].

Widgets e prévias responsivas

html_editor_widget_renderizar renderiza um widget declarado e retorna um array com html e css; html_editor_widget_js_modulos devolve um mapa módulo => true para widgets ativos com arquivo .widget.js. O Dashboard coleta CSS, head e scripts registrados durante a renderização e restaura o contexto temporário. O editor visual usa altura baseada no viewport, calc(100vh - 220px), nos modais Tailwind de edição/visualização. Widgets precisam dos estilos de template, registro e tema na prévia isolada. Veja Dashboard para a ordem das folhas.

O Futuro é Híbrido: Humano + IA.

O Conn2Flow é a ferramenta. Se você precisa do Arquiteto para desenhar a estratégia da sua empresa usando essa tecnologia...

Contrate Consultoria Especializada