Carregando documentação...

oziCore

Versão: 1.2.0Atualizado em: 2026-04-19

Descrição

Orquestrador do ecossistema ozi-ui. Responsável por carregar os scripts dos plugins em sequência garantida, respeitando dependências, e registrar automaticamente os hooks de reinicialização no zldConf.zldHooks.afterRender.

Regra crítica: o ozi-loaddata deve ser sempre o primeiro da lista — os demais plugins dependem do zldConf e dos hooks que ele expõe.


Exemplos

[1] Uso básico

oziCore({
    urlBase: '/plugins/ozi-ui/',
    urlScript: [
        'ozi-loaddata/js/ozi-loaddata.js',
        'ozi-select/js/ozi-select.js',
        'ozi-search/js/ozi-search.js'
    ],
    log: false
});

[2] Uso completo — todos os plugins

oziCore({
    urlBase: '/plugins/ozi-ui/',
    urlScript: [
        // 1º SEMPRE — os demais dependem do zldConf que ele expõe
        'ozi-loaddata/js/ozi-loaddata.js',

        // Demais plugins na ordem que precisar
        'ozi-autocomplete/js/ozi-autocomplete.js',
        'ozi-select/js/ozi-select.js',
        'ozi-search/js/ozi-search.js',
        'ozi-editor/js/ozi-editor.js',
        'ozi-audio/js/ozi-audio.js',

        // Addons
        'ozi-addons/js/ozi-addons.js',
        'ozi-addons/js/ozi-auth.js',
        'ozi-addons/js/ozi-check.js',
        'ozi-addons/js/ozi-copy.js',
        'ozi-addons/js/ozi-toggle.js',
    ],
    log: false
});

[3] Uso com string — urlBase apenas

Quando passado como string, usa a lista padrão de scripts (loaddata + select + search):

oziCore('/plugins/ozi-ui/');

[4] Usando o retorno Promise

oziCore({ urlBase: '/plugins/ozi-ui/' })
    .then(function(result) {
        if (result.ok) {
            console.log('Pronto! Plugins carregados.');
        }
    });

Recursos

  • Carregamento sequencial — scripts carregados em ordem garantida via Promise encadeada
  • Respeito a dependênciasozi-loaddata sempre primeiro
  • Hooks automáticos — registra reinicialização dos plugins no afterRender
  • Promise-based — retorna Promise com status do carregamento
  • Modo debug — ativa logs detalhados via log: true
  • API pública — métodos para carregar scripts individuais ou em lote

Parâmetros

Parâmetro Tipo Descrição
config.urlBase string Caminho base dos plugins
config.urlScript string[] Lista de scripts a carregar
config.log boolean Ativa logs de depuração

Retorno

Sucesso:

{
    ok: true,
    urlBase: '/plugins/ozi-ui/',
    urlScript: [...]
}

Erro:

{
    ok: false,
    error: Error
}

Hooks Automáticos

Após o carregamento, o oziCore registra automaticamente no zldConf.zldHooks.afterRender os plugins que precisam ser reinicializados quando novo conteúdo é inserido via ZLD:

Plugin Comportamento
OziSelect Reinicializado via hook
OziAudio Reinicializado via hook
OziAutocomplete Reinicializado via hook
OziEditor Reinicializado via hook
oziCheck Auto-registra internamente
oziAuth Auto-registra internamente
oziSearch Opera via delegação de eventos — não precisa reinicializar
oziToggle Opera via delegação de eventos — não precisa reinicializar

API Pública

Método Descrição
oziCore(config) Carrega scripts e registra hooks
oziCore.loadScript(src) Carrega um script individual
oziCore.loadMany(base, []) Carrega lista sequencial
oziCore.version Versão atual do core

Estrutura de Pastas Esperada

public/plugins/ozi-ui/
├── ozi-core.js
├── ozi-core.css
├── ozi-loaddata/
│   ├── js/ozi-loaddata.js
│   └── css/ozi-loaddata.css
├── ozi-autocomplete/
│   ├── js/ozi-autocomplete.js
│   └── css/ozi-autocomplete.css
├── ozi-select/
│   ├── js/ozi-select.js
│   └── css/ozi-select.css
├── ozi-search/
│   └── js/ozi-search.js
├── ozi-editor/
│   ├── js/ozi-editor.js
│   └── css/ozi-editor.css
├── ozi-audio/
│   ├── js/ozi-audio.js
│   └── css/ozi-audio.css
└── ozi-addons/
    ├── js/
    │   ├── ozi-addons.js
    │   ├── ozi-auth.js
    │   ├── ozi-check.js
    │   ├── ozi-copy.js
    │   └── ozi-toggle.js
    └── css/
        ├── ozi-auth.css
        ├── ozi-check.css
        ├── ozi-copy.css
        └── ozi-toggle.css