Configuración
oziConf() es opcional — sin él, ozi-ui funciona con los valores por defecto (tema default, idioma en, todos los plugins cargados).
Llama a oziConf() justo después de incluir ozi.js:
<script src="/plugins/ozi-ui/ozi.js"></script>
<script>
oziConf({ ... });
</script>
Configuración mínima
La mayoría de los proyectos solo necesita definir el tema y el idioma:
oziConf({
theme: 'bootstrap5',
lang: 'es'
});
Temas
| Tema |
Cuándo usar |
default |
Proyectos con CSS propio o sin framework UI |
bootstrap5 |
Proyectos con Bootstrap 5 — estándar recomendado |
tailwind |
Proyectos con Tailwind CSS |
oziConf({ theme: 'bootstrap5' });
El tema define el classMap — las clases CSS aplicadas por ozi-ui para los estados de validación, botones y retroalimentación visual. Consulta la sección classMap para personalizar.
Idiomas
| Valor |
Idioma |
en |
Inglés — por defecto |
pt-BR |
Portugués de Brasil |
oziConf({
lang: 'es',
fallbackLang: 'en' // usado cuando una clave no existe en el idioma principal
});
Plugins — carga solo lo que necesitas
Por defecto ozi-ui carga todos los plugins. Para cargar solo los necesarios:
oziConf({
plugins: ['loaddata', 'select', 'toggle']
});
Las dependencias se resuelven automáticamente — no es necesario declarar los módulos internos.
Plugins disponibles
| Plugin |
Categoría |
loaddata |
módulo |
select |
componente |
autocomplete |
componente |
editor |
componente |
audio |
componente |
auth |
componente |
check |
componente |
search |
componente |
copy |
behavior |
toggle |
behavior |
Configuración completa
oziConf({
// ── Tema y modo visual ──────────────────────
theme: 'bootstrap5', // 'default' | 'bootstrap5' | 'tailwind'
themeMode: 'auto', // 'light' | 'dark' | 'auto'
// ── Idioma ──────────────────────────────────
lang: 'es',
fallbackLang: 'en',
// ── Plugins a cargar ────────────────────────
plugins: 'all', // 'all' o array: ['loaddata', 'select', ...]
// ── Core ────────────────────────────────────
core: {
urlBase: './plugins/ozi-ui/', // ruta base de los archivos
log: false, // logs de depuración en la consola
failFast: false // detiene el boot al primer error
},
// ── Configuración por plugin ─────────────────
pluginConf: {
loaddata: {
progressBarGlobalClass: 'ozi-progress',
interactiveValidation: true // valida campos al perder el foco
},
select: {
imageDimension: '24px', // tamaño por defecto de las imágenes en las opciones
autoObserve: false // detecta nuevos elementos vía MutationObserver
},
autocomplete: {
autoObserve: false
},
editor: {
uicolor: 'var(--ozi-color-primary)' // color de los botones activos y borde con foco
},
audio: {
autoObserve: false
},
auth: {
passMin: 12, // mínimo de caracteres en la contraseña
passMax: 64, // máximo de caracteres en la contraseña
userCaracter: 4 // mínimo de caracteres en el campo de usuario
}
},
// ── classMap — sobrescribe el preset del tema ─
classMap: {
invalid: 'is-invalid',
valid: 'is-valid',
formValidated: 'was-validated',
feedback: 'invalid-feedback',
button: 'btn btn-primary',
disabled: 'disabled'
}
});
Referencia
core
| Parámetro |
Por defecto |
Descripción |
urlBase |
'./plugins/ozi-ui/' |
Ruta base donde se sirven los archivos de ozi-ui |
log |
false |
Activa logs detallados en la consola |
failFast |
false |
Detiene el boot al primer error de carga |
pluginConf
loaddata
| Parámetro |
Por defecto |
Descripción |
progressBarGlobalClass |
'ozi-progress' |
Clase CSS de la barra de progreso global |
interactiveValidation |
true |
Valida campos individualmente al perder el foco |
select
| Parámetro |
Por defecto |
Descripción |
imageDimension |
'24px' |
Tamaño por defecto de las imágenes mostradas en las opciones |
autoObserve |
false |
Inicializa automáticamente nuevos elementos vía MutationObserver |
autocomplete
| Parámetro |
Por defecto |
Descripción |
autoObserve |
false |
Inicializa automáticamente nuevos elementos vía MutationObserver |
editor
| Parámetro |
Por defecto |
Descripción |
uicolor |
'var(--ozi-color-primary)' |
Color aplicado en los botones activos y borde con foco |
audio
| Parámetro |
Por defecto |
Descripción |
autoObserve |
false |
Inicializa automáticamente nuevos elementos vía MutationObserver |
auth
| Parámetro |
Por defecto |
Descripción |
passMin |
12 |
Mínimo de caracteres aceptados en la contraseña |
passMax |
64 |
Máximo de caracteres aceptados en la contraseña |
userCaracter |
4 |
Mínimo de caracteres en el campo de usuario |
classMap
Mapeo de tokens semánticos a clases CSS del framework UI. Se rellena automáticamente con el preset del tema — sobrescribe solo lo necesario.
Bootstrap 5 (por defecto del tema bootstrap5)
| Token |
Valor |
invalid |
'is-invalid' |
valid |
'is-valid' |
formValidated |
'was-validated' |
feedback |
'invalid-feedback' |
button |
'btn btn-primary' |
disabled |
'disabled' |
Tailwind (tema tailwind)
| Token |
Valor |
invalid |
'border-red-500 text-red-600' |
valid |
'border-green-500 text-green-600' |
formValidated |
'ozi-validated' |
feedback |
'text-red-500 text-sm mt-1' |
button |
'px-4 py-2 bg-blue-600 text-white rounded' |
disabled |
'opacity-50 cursor-not-allowed' |
Sobrescritura puntual
Para ajustar solo un token sin cambiar el tema:
oziConf({
theme: 'bootstrap5',
classMap: {
button: 'btn btn-danger' // solo este cambia — el resto viene del preset
}
});