Componente de notificaciones tipo Dynamic Island con animaciones spring, colas inteligentes, temas, formularios y verificacion. Sin dependencias.
const blip= new meBlip({
position: 'top-center',
theme: 'dark',
closeAnimation: true,
typeColors: {
premium: '#8b5cf6',
light: '#facc15'
},
icons: {
premium: '<svg ...>...</svg>',
heart: '<svg ...>...</svg>'
},
overlayStyle: { blur: 4, contrast: 0.85, grayscale: 0.3 }
});
// Cambiar posición
blip.setPosition('top-center');
// Opciones: 'top-left', 'top-center', 'top-right',
// 'center', 'bottom-left', 'bottom-center', 'bottom-right'
// Cambiar tema
blip.setTheme('dark');
// Opciones: 'dark', 'light', 'system'
// Cambiar estilo de apilamiento
blip.setStackStyle('3d');
// Opciones: '3d', 'fan', 'counter'
// Cambiar ancho de la isla
blip.setIslandWidth('normal');
// Opciones: 'compact', 'normal', 'wide'
// Cambiar backdrop-filter del overlay bloqueante
blip.setOverlayStyle({ blur: 4, contrast: 0.85, grayscale: 0.3 });
typeColorsicons en el constructorislandWidth: 'compact' solo para esta notificaciónislandWidth: 'wide' solo para esta notificacióncontent HTML personalizadoadd()groupIdconsole.logtelABC123onVerify, onFail y onCancel con feedbackerror, icono y close buttoninput: código ciego de 6 dígitos con botón Confirmarinput: token alfanumérico de 4 caracteres con botón customselect y textareawindow.prompt()multiple: trueaccept: 'image/*' y límite de tamaño.pdf + multiple + límite 10 MBFormData + fetch para subir ficheroshighAccuracy: true y timeoutmarkerLabel descriptivoshowMarker: false