核心特性
你需要的一切,都在一个不到 10KB 的包中
零依赖
TypeScript 严格模式,纯原生实现,无任何运行时依赖。兼容所有现代浏览器。
107 种图标类型
success / error / warning / info / loading 及 100+ 扩展类型,覆盖所有常见场景。
11 种动画 + 自定义
每种感官差异明显,animations.register() 注册自定义动画,动态注入 keyframes 真实生效。
主题系统
light / dark / auto / warm 内置主题,registerTheme() 自定义,跟随系统自动切换。
国际化
zh-CN / en-US 完整翻译,addTranslations() 扩展任意语言,RTL 完整适配。
插件系统
4 款预设:keyboard / persistence / accessibility / dedupe,支持自定义插件架构。
17 个钩子
完整生命周期钩子,beforeShow / beforeClose / beforeUpdate 支持拦截。
拖拽关闭
任意方向拖动即关,阈值 dragThreshold 可配置。Pointer Events 全端一致。
React 适配器
@metona-team/metona-toast/react — useToast hook + 声明式 Toast 组件,主包保持零依赖。
错误捕获
全局 onError 回调捕获钩子与定时器异常,方便接入 Sentry、DataDog。
暂停恢复
悬停暂停、拖拽暂停、手动 pause/resume,剩余时间精确保持不丢失。
类型安全
严格模式源码,类型自动生成零漂移。加载态转换 id 稳定,原地更新。