diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1ff8249..3812759 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,19 @@
All notable changes to MetonaToast will be documented in this file.
+## [0.4.0] - 2026-08-08
+
+### Added
+- **React 适配器子包**:`@metona-team/metona-toast/react` — `useToast()` hook(组件卸载时自动移除本组件创建的 Toast)+ 声明式 `` 组件(props 变化更新、卸载自动清理)。主包保持零依赖,`react` 为 optional peerDependency
+- **`dedupe` 预设插件**:相同 type+message 的 Toast 自动去重(更新已有实例而非重复弹出),支持 uninstall
+- **`dragThreshold` 配置项**:拖拽关闭阈值可配置(默认 120px,原为硬编码)
+- **RTL 完整适配**:容器设置 `dir="rtl"`,进度条/side 条/类型色条/圆角正确镜像
+- **`update({ duration })` 支持**:动态变更显示时长并自动重启/停止计时器(此前 update 忽略 duration)
+- **幽灵实例修复**:`_emit` 检查 `create()` 结果,beforeShow 拦截后的 toast 不再注册到 `_toasts`(此前会残留幽灵记录,影响 count 与去重类插件)
+
+### Changed
+- **loading 链式转换 id 稳定**:`loading.success/error/info/warning` 由"关闭旧 + 新建"改为原地 `update()` 同一实例,返回的 Toast id 与 loading id 一致;转换后 duration 自动恢复默认值(自动关闭)。注:转换不再产生新的入场动画,改为平滑更新;关闭按钮/进度条保持 loading 配置(如需默认外观,请通过 opts 覆盖)
+
## [0.3.0] - 2026-08-08
### Fixed
diff --git a/README.md b/README.md
index a43c481..9e7696d 100644
--- a/README.md
+++ b/README.md
@@ -13,8 +13,8 @@
- **11 种动画** — slide/fade/scale/bounce/flip/rotate/zoom/slideUp/slideDown/slideLeft/slideRight,每种效果明显不同
- **主题系统** — light/dark/auto/warm 四种内置主题,支持 `registerTheme()` 注册自定义主题
- **国际化** — 内置 zh-CN / en-US 完整翻译(去重优化),可通过 `addTranslations()` 扩展
-- **插件系统** — 3 款预设插件 (keyboard/persistence/accessibility) + 自定义插件
-- **可拖拽关闭** — 拖动 Toast 任意方向即可关闭
+- **插件系统** — 4 款预设插件 (keyboard/persistence/accessibility/dedupe) + 自定义插件
+- **可拖拽关闭** — 拖动 Toast 任意方向即可关闭,阈值可配置
- **TypeScript** — 严格模式,源码级类型安全,类型从源码自动生成无手动维护
- **全局错误回调** — `onError` 捕获所有钩子异常和定时器错误,方便接入监控系统
@@ -82,9 +82,11 @@ MeToast.info('系统维护中');
// 带标题
MeToast.success({ title: '保存成功', message: '文件已同步到云端' });
-// 加载 → 成功链式转换
+// 加载 → 成功链式转换(原地更新同一实例,id 稳定)
const loading = MeToast.loading('正在提交...');
-setTimeout(() => loading.success('提交成功!'), 2000);
+const toast = await wait();
+loading.success('提交成功!');
+// toast.id === loading.id
// Promise 风格
await MeToast.promise(fetch('/api/data'), {
@@ -105,6 +107,8 @@ MeToast.configure({
animation: 'slide', // slide | fade | scale | bounce | flip | rotate | zoom | slideUp | slideDown | slideLeft | slideRight
pauseOnHover: true, // 悬停暂停计时
closeOnClick: true, // 点击关闭
+ draggable: true, // 允许拖拽关闭
+ dragThreshold: 120, // 拖拽关闭阈值(px)
showProgress: true, // 显示进度条
draggable: true, // 允许拖拽关闭
locale: 'zh-CN', // 语言
@@ -197,6 +201,7 @@ MeToast.stack(['消息1', '消息2', '消息3'], { stagger: 150 });
MeToast.use('keyboard'); // ESC 关闭所有 Toast
MeToast.use('persistence'); // 配置持久化到 localStorage
MeToast.use('accessibility'); // 屏幕阅读器朗读公告
+MeToast.use('dedupe'); // 相同 type+message 自动去重(更新已有实例)
// 自定义插件(通过 install 中注册 Toast 生命周期钩子)
import MeToast, { Toast } from '@metona-team/metona-toast';
@@ -262,6 +267,40 @@ MeToast.configure({
});
```
+## React 适配器
+
+主包保持零依赖;React 适配器通过子路径导入,`react` 为 optional peerDependency。
+
+```bash
+npm install @metona-team/metona-toast react
+```
+
+```tsx
+import { useToast, Toast } from '@metona-team/metona-toast/react';
+
+function SubmitButton() {
+ // 本组件创建的 Toast 会在组件卸载时自动移除
+ const toast = useToast();
+
+ const submit = async () => {
+ const loading = toast.loading('正在提交...');
+ try {
+ await api.submit();
+ loading.success('提交成功!');
+ } catch (e) {
+ loading.error('提交失败');
+ }
+ };
+
+ return ;
+}
+
+// 声明式 Toast — props 变化时更新,组件卸载时自动移除
+function SaveIndicator({ saving }: { saving: boolean }) {
+ return saving ? : null;
+}
+```
+
## License
MIT
diff --git a/dist/metona-toast.cjs.js b/dist/metona-toast.cjs.js
index 2cd7fdb..72ff504 100644
--- a/dist/metona-toast.cjs.js
+++ b/dist/metona-toast.cjs.js
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
/**
* MetonaToast Utils — 工具函数
* @module utils
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 生成唯一ID
@@ -42,7 +42,7 @@ const prefersDark = () => {
/**
* MetonaToast Icons — 图标SVG定义
* @module icons
- * @version 0.3.0
+ * @version 0.4.0
* @description 107 个内置 SVG 图标
*/
const ICONS = {
@@ -539,7 +539,7 @@ const ICONS = {
/**
* MetonaToast Locales — 国际化翻译数据
* @module locales
- * @version 0.3.0
+ * @version 0.4.0
* @description 内置 zh-CN / en-US 完整翻译
*/
const LOCALES = {
@@ -1026,12 +1026,12 @@ const LOCALES = {
/**
* MetonaToast Constants — 常量定义
* @module constants
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 版本号 — 唯一来源,发布时只需修改此处
*/
-const VERSION = '0.3.0';
+const VERSION = '0.4.0';
/**
* 默认配置
*/
@@ -1044,6 +1044,7 @@ const DEFAULTS = Object.freeze({
pauseOnHover: true,
closeOnClick: true,
draggable: true,
+ dragThreshold: 120,
showProgress: true,
progressDirection: 'horizontal',
icon: true,
@@ -1297,7 +1298,7 @@ const ANIMATION_TYPES = ['slide', 'fade', 'scale', 'bounce', 'flip', 'rotate', '
/**
* MetonaToast Styles — 样式管理
* @module styles
- * @version 0.3.0
+ * @version 0.4.0
*/
// 样式缓存
let styleElement = null;
@@ -1655,6 +1656,41 @@ const generateCSS = () => {
transition: transform 0.1s linear;
}
+ /* RTL 镜像:进度条从右向左收缩、side 条移到右侧、类型色条翻转到右边 */
+ [dir="rtl"] .met-bar {
+ transform-origin: right;
+ }
+ [dir="rtl"] .met-side {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-progress-v {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-toast.met-success {
+ border-left-width: 1px;
+ border-right: 4px solid #10b981;
+ }
+ [dir="rtl"] .met-toast.met-error {
+ border-left-width: 1px;
+ border-right: 4px solid #ef4444;
+ }
+ [dir="rtl"] .met-toast.met-warning {
+ border-left-width: 1px;
+ border-right: 4px solid #f59e0b;
+ }
+ [dir="rtl"] .met-toast.met-info {
+ border-left-width: 1px;
+ border-right: 4px solid #3b82f6;
+ }
+ [dir="rtl"] .met-toast.met-loading {
+ border-left-width: 1px;
+ border-right: 4px solid #6366f1;
+ }
+
.met-container::-webkit-scrollbar { width: 6px; height: 6px; }
.met-container::-webkit-scrollbar-track { background: transparent; }
.met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }
@@ -1751,7 +1787,7 @@ const injectStyles = () => {
/**
* MetonaToast Themes — 主题管理
* @module themes
- * @version 0.3.0
+ * @version 0.4.0
*/
// 当前主题状态
let currentTheme = 'auto';
@@ -2095,7 +2131,7 @@ const themeUtils = {
/**
* MetonaToast i18n — 国际化管理
* @module i18n
- * @version 0.3.0
+ * @version 0.4.0
*/
// 当前语言状态
let currentLocale = 'zh-CN';
@@ -2770,7 +2806,7 @@ const animationUtils = {
/**
* MetonaToast Toast — Toast 类
* @module toast
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* Toast 类 — 核心通知组件
@@ -2931,6 +2967,9 @@ class Toast {
el.className = `met-container ${position}`;
el.setAttribute('aria-label', 'Notifications');
el.setAttribute('role', 'region');
+ // RTL 语言设置容器文字方向,使内容/关闭按钮/进度条正确镜像
+ if (isRTL)
+ el.setAttribute('dir', 'rtl');
const posStyles = {
'top-left': 'top:0;left:0;align-items:flex-start',
'top-center': 'top:0;left:0;right:0;align-items:center',
@@ -3122,7 +3161,8 @@ class Toast {
dragging = false;
el.releasePointerCapture(e.pointerId);
el.style.transition = '';
- if (Math.abs(dx) > 120) {
+ const threshold = this.config.dragThreshold ?? 120;
+ if (Math.abs(dx) > threshold) {
el.style.transform = `translate(${dx * 2}px, ${dy}px) rotate(${dx * 0.2}deg)`;
el.style.opacity = '0';
setTimeout(() => this.close(true), 250);
@@ -3240,6 +3280,18 @@ class Toast {
: (this.message ? `
${escapeHTML(this.message)}
` : '');
content.innerHTML = `${safeTitle}${safeMessage}`;
}
+ // duration 变更:重启或停止计时器(loading 0 → N 转换、动态调整时长等场景)
+ if (partial.duration !== undefined && partial.duration !== this.config.duration) {
+ this.config.duration = partial.duration;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ this.remaining = Math.max(0, partial.duration);
+ if (partial.duration > 0 && !this.paused) {
+ this.startedAt = Date.now();
+ this._startTimer();
+ }
+ }
// resetTimerOnUpdate: 更新内容后重置计时器
if (this.config.resetTimerOnUpdate && (this.config.duration || 0) > 0) {
if (this.rafId !== null)
@@ -3386,7 +3438,7 @@ const _containerCache = new Map();
/**
* MetonaToast Templates — HTML 模板辅助函数
* @module templates
- * @version 0.3.0
+ * @version 0.4.0
* @description confirm / prompt / progress / action 的 DOM 模板
*/
/**
@@ -3458,7 +3510,7 @@ const actionHTML = (actions) => {
/**
* MetonaToast Plugins — 插件系统
* @module plugins
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 插件管理器
@@ -3636,6 +3688,32 @@ const presetPlugins = {
el.parentNode.removeChild(el); }, 3000);
},
},
+ /**
+ * 去重插件 — 相同 type + message 的 toast 自动合并(更新已有的一条)
+ */
+ dedupe: {
+ name: 'dedupe',
+ version: '1.0.0',
+ description: '相同类型和消息的 Toast 自动去重,更新已有实例而非重复弹出',
+ _off: null,
+ install() {
+ const off = Toast.on('beforeShow', (toast) => {
+ const existing = Array.from(Toast._registry.values()).find(t => !t.closing && t.type === toast.type && t.message === toast.message);
+ if (existing) {
+ existing.update({ title: toast.title || existing.title });
+ return false;
+ }
+ return undefined;
+ });
+ this._off = off;
+ },
+ uninstall() {
+ const off = this._off;
+ if (off)
+ off();
+ this._off = null;
+ },
+ },
};
/**
* 插件工具
@@ -3678,7 +3756,7 @@ const defaultPluginManager = new PluginManager();
/**
* MetonaToast API — meToast 核心 API 对象
* @module api
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 参数标准化工具
@@ -3729,7 +3807,10 @@ const meToast = {
merged.message = merged.content;
const t = new Toast(merged);
t.create();
- this._toasts.set(t.id, t);
+ // beforeShow/onBeforeShow 拦截(返回 false)时 el 为 null,不注册幽灵实例
+ if (t.el !== null) {
+ this._toasts.set(t.id, t);
+ }
return t;
},
_remove(id) {
@@ -3795,14 +3876,21 @@ const meToast = {
throw err;
});
},
+ /**
+ * loading 链式转换 — 原地 update 同一实例(id 稳定,不重建 DOM)
+ * duration 从 0 恢复为默认值,使转换后的 toast 自动关闭
+ */
_resolve(loadingToast, type, message, opts) {
- const id = loadingToast.id;
- const old = this._toasts.get(id);
+ const old = this._toasts.get(loadingToast.id);
if (!old)
return null;
- const position = old.config.position;
- old.close();
- return this._emit({ ...opts, type, message, position });
+ old.update({
+ ...opts,
+ type,
+ message,
+ duration: opts.duration ?? (old.config.duration || this._config.duration),
+ });
+ return old;
},
confirm(message, opts = {}) {
if (typeof message !== 'string') {
@@ -4340,7 +4428,7 @@ Toast.setCallbacks({
/**
* MetonaToast — 轻量级Toast通知库
* @module metona-toast
- * @version 0.3.0
+ * @version 0.4.0
* @author thzxx
* @license MIT
*/
diff --git a/dist/metona-toast.cjs.js.map b/dist/metona-toast.cjs.js.map
index bfeb69b..572d1f8 100644
--- a/dist/metona-toast.cjs.js.map
+++ b/dist/metona-toast.cjs.js.map
@@ -1 +1 @@
-{"version":3,"file":"metona-toast.cjs.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"metona-toast.cjs.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/dist/metona-toast.d.ts b/dist/metona-toast.d.ts
index 8a6bd3b..805758d 100644
--- a/dist/metona-toast.d.ts
+++ b/dist/metona-toast.d.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast — 核心类型定义
* @module types
- * @version 0.3.0
+ * @version 0.4.0
*/
/** Toast 通知类型(107种内置图标类型) */
type ToastType = 'default' | 'success' | 'error' | 'warning' | 'info' | 'loading' | 'check' | 'x' | 'alert' | 'question' | 'star' | 'heart' | 'bell' | 'mail' | 'settings' | 'user' | 'home' | 'search' | 'plus' | 'minus' | 'edit' | 'trash' | 'download' | 'upload' | 'share' | 'link' | 'external' | 'clock' | 'calendar' | 'map' | 'compass' | 'globe' | 'wifi' | 'cloud' | 'sun' | 'moon' | 'zap' | 'activity' | 'cpu' | 'database' | 'server' | 'terminal' | 'code' | 'git' | 'package' | 'layers' | 'grid' | 'list' | 'filter' | 'sort' | 'refresh' | 'sync' | 'power' | 'battery' | 'bluetooth' | 'volume' | 'mic' | 'camera' | 'image' | 'video' | 'music' | 'file' | 'folder' | 'clipboard' | 'save' | 'print' | 'eye' | 'eyeOff' | 'lock' | 'unlock' | 'shield' | 'key' | 'flag' | 'bookmark' | 'tag' | 'gift' | 'award' | 'target' | 'crosshair' | 'move' | 'maximize' | 'minimize' | 'copy' | 'cut' | 'paste' | 'rotateCw' | 'rotateCcw' | 'zoomIn' | 'zoomOut' | 'crop' | 'sliders' | 'toggleLeft' | 'toggleRight' | 'checkCircle' | 'xCircle' | 'alertCircle' | 'infoCircle' | 'helpCircle' | 'alertTriangle' | 'checkSquare' | 'square' | 'circle' | 'triangle' | 'hexagon' | 'octagon' | 'pentagon' | 'diamond';
@@ -26,6 +26,7 @@ interface ToastConfig {
pauseOnHover?: boolean;
closeOnClick?: boolean;
draggable?: boolean;
+ dragThreshold?: number;
showProgress?: boolean;
progressDirection?: ToastProgressDirection;
icon?: boolean;
@@ -417,7 +418,7 @@ declare global {
/**
* MetonaToast Toast — Toast 类
* @module toast
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
@@ -491,13 +492,13 @@ declare class Toast implements ToastInstance {
/**
* MetonaToast Constants — 常量定义
* @module constants
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 版本号 — 唯一来源,发布时只需修改此处
*/
-declare const VERSION = "0.3.0";
+declare const VERSION = "0.4.0";
/**
* 增强的 MeToast 对象 — 在 meToast 基础上注入子模块
diff --git a/dist/metona-toast.esm.js b/dist/metona-toast.esm.js
index 348ce2a..345136f 100644
--- a/dist/metona-toast.esm.js
+++ b/dist/metona-toast.esm.js
@@ -1,7 +1,7 @@
/**
* MetonaToast Utils — 工具函数
* @module utils
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 生成唯一ID
@@ -38,7 +38,7 @@ const prefersDark = () => {
/**
* MetonaToast Icons — 图标SVG定义
* @module icons
- * @version 0.3.0
+ * @version 0.4.0
* @description 107 个内置 SVG 图标
*/
const ICONS = {
@@ -535,7 +535,7 @@ const ICONS = {
/**
* MetonaToast Locales — 国际化翻译数据
* @module locales
- * @version 0.3.0
+ * @version 0.4.0
* @description 内置 zh-CN / en-US 完整翻译
*/
const LOCALES = {
@@ -1022,12 +1022,12 @@ const LOCALES = {
/**
* MetonaToast Constants — 常量定义
* @module constants
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 版本号 — 唯一来源,发布时只需修改此处
*/
-const VERSION = '0.3.0';
+const VERSION = '0.4.0';
/**
* 默认配置
*/
@@ -1040,6 +1040,7 @@ const DEFAULTS = Object.freeze({
pauseOnHover: true,
closeOnClick: true,
draggable: true,
+ dragThreshold: 120,
showProgress: true,
progressDirection: 'horizontal',
icon: true,
@@ -1293,7 +1294,7 @@ const ANIMATION_TYPES = ['slide', 'fade', 'scale', 'bounce', 'flip', 'rotate', '
/**
* MetonaToast Styles — 样式管理
* @module styles
- * @version 0.3.0
+ * @version 0.4.0
*/
// 样式缓存
let styleElement = null;
@@ -1651,6 +1652,41 @@ const generateCSS = () => {
transition: transform 0.1s linear;
}
+ /* RTL 镜像:进度条从右向左收缩、side 条移到右侧、类型色条翻转到右边 */
+ [dir="rtl"] .met-bar {
+ transform-origin: right;
+ }
+ [dir="rtl"] .met-side {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-progress-v {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-toast.met-success {
+ border-left-width: 1px;
+ border-right: 4px solid #10b981;
+ }
+ [dir="rtl"] .met-toast.met-error {
+ border-left-width: 1px;
+ border-right: 4px solid #ef4444;
+ }
+ [dir="rtl"] .met-toast.met-warning {
+ border-left-width: 1px;
+ border-right: 4px solid #f59e0b;
+ }
+ [dir="rtl"] .met-toast.met-info {
+ border-left-width: 1px;
+ border-right: 4px solid #3b82f6;
+ }
+ [dir="rtl"] .met-toast.met-loading {
+ border-left-width: 1px;
+ border-right: 4px solid #6366f1;
+ }
+
.met-container::-webkit-scrollbar { width: 6px; height: 6px; }
.met-container::-webkit-scrollbar-track { background: transparent; }
.met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }
@@ -1747,7 +1783,7 @@ const injectStyles = () => {
/**
* MetonaToast Themes — 主题管理
* @module themes
- * @version 0.3.0
+ * @version 0.4.0
*/
// 当前主题状态
let currentTheme = 'auto';
@@ -2091,7 +2127,7 @@ const themeUtils = {
/**
* MetonaToast i18n — 国际化管理
* @module i18n
- * @version 0.3.0
+ * @version 0.4.0
*/
// 当前语言状态
let currentLocale = 'zh-CN';
@@ -2766,7 +2802,7 @@ const animationUtils = {
/**
* MetonaToast Toast — Toast 类
* @module toast
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* Toast 类 — 核心通知组件
@@ -2927,6 +2963,9 @@ class Toast {
el.className = `met-container ${position}`;
el.setAttribute('aria-label', 'Notifications');
el.setAttribute('role', 'region');
+ // RTL 语言设置容器文字方向,使内容/关闭按钮/进度条正确镜像
+ if (isRTL)
+ el.setAttribute('dir', 'rtl');
const posStyles = {
'top-left': 'top:0;left:0;align-items:flex-start',
'top-center': 'top:0;left:0;right:0;align-items:center',
@@ -3118,7 +3157,8 @@ class Toast {
dragging = false;
el.releasePointerCapture(e.pointerId);
el.style.transition = '';
- if (Math.abs(dx) > 120) {
+ const threshold = this.config.dragThreshold ?? 120;
+ if (Math.abs(dx) > threshold) {
el.style.transform = `translate(${dx * 2}px, ${dy}px) rotate(${dx * 0.2}deg)`;
el.style.opacity = '0';
setTimeout(() => this.close(true), 250);
@@ -3236,6 +3276,18 @@ class Toast {
: (this.message ? `${escapeHTML(this.message)}
` : '');
content.innerHTML = `${safeTitle}${safeMessage}`;
}
+ // duration 变更:重启或停止计时器(loading 0 → N 转换、动态调整时长等场景)
+ if (partial.duration !== undefined && partial.duration !== this.config.duration) {
+ this.config.duration = partial.duration;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ this.remaining = Math.max(0, partial.duration);
+ if (partial.duration > 0 && !this.paused) {
+ this.startedAt = Date.now();
+ this._startTimer();
+ }
+ }
// resetTimerOnUpdate: 更新内容后重置计时器
if (this.config.resetTimerOnUpdate && (this.config.duration || 0) > 0) {
if (this.rafId !== null)
@@ -3382,7 +3434,7 @@ const _containerCache = new Map();
/**
* MetonaToast Templates — HTML 模板辅助函数
* @module templates
- * @version 0.3.0
+ * @version 0.4.0
* @description confirm / prompt / progress / action 的 DOM 模板
*/
/**
@@ -3454,7 +3506,7 @@ const actionHTML = (actions) => {
/**
* MetonaToast Plugins — 插件系统
* @module plugins
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 插件管理器
@@ -3632,6 +3684,32 @@ const presetPlugins = {
el.parentNode.removeChild(el); }, 3000);
},
},
+ /**
+ * 去重插件 — 相同 type + message 的 toast 自动合并(更新已有的一条)
+ */
+ dedupe: {
+ name: 'dedupe',
+ version: '1.0.0',
+ description: '相同类型和消息的 Toast 自动去重,更新已有实例而非重复弹出',
+ _off: null,
+ install() {
+ const off = Toast.on('beforeShow', (toast) => {
+ const existing = Array.from(Toast._registry.values()).find(t => !t.closing && t.type === toast.type && t.message === toast.message);
+ if (existing) {
+ existing.update({ title: toast.title || existing.title });
+ return false;
+ }
+ return undefined;
+ });
+ this._off = off;
+ },
+ uninstall() {
+ const off = this._off;
+ if (off)
+ off();
+ this._off = null;
+ },
+ },
};
/**
* 插件工具
@@ -3674,7 +3752,7 @@ const defaultPluginManager = new PluginManager();
/**
* MetonaToast API — meToast 核心 API 对象
* @module api
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 参数标准化工具
@@ -3725,7 +3803,10 @@ const meToast = {
merged.message = merged.content;
const t = new Toast(merged);
t.create();
- this._toasts.set(t.id, t);
+ // beforeShow/onBeforeShow 拦截(返回 false)时 el 为 null,不注册幽灵实例
+ if (t.el !== null) {
+ this._toasts.set(t.id, t);
+ }
return t;
},
_remove(id) {
@@ -3791,14 +3872,21 @@ const meToast = {
throw err;
});
},
+ /**
+ * loading 链式转换 — 原地 update 同一实例(id 稳定,不重建 DOM)
+ * duration 从 0 恢复为默认值,使转换后的 toast 自动关闭
+ */
_resolve(loadingToast, type, message, opts) {
- const id = loadingToast.id;
- const old = this._toasts.get(id);
+ const old = this._toasts.get(loadingToast.id);
if (!old)
return null;
- const position = old.config.position;
- old.close();
- return this._emit({ ...opts, type, message, position });
+ old.update({
+ ...opts,
+ type,
+ message,
+ duration: opts.duration ?? (old.config.duration || this._config.duration),
+ });
+ return old;
},
confirm(message, opts = {}) {
if (typeof message !== 'string') {
@@ -4336,7 +4424,7 @@ Toast.setCallbacks({
/**
* MetonaToast — 轻量级Toast通知库
* @module metona-toast
- * @version 0.3.0
+ * @version 0.4.0
* @author thzxx
* @license MIT
*/
diff --git a/dist/metona-toast.esm.js.map b/dist/metona-toast.esm.js.map
index b1921d6..6b4dbc9 100644
--- a/dist/metona-toast.esm.js.map
+++ b/dist/metona-toast.esm.js.map
@@ -1 +1 @@
-{"version":3,"file":"metona-toast.esm.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"metona-toast.esm.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/dist/metona-toast.js b/dist/metona-toast.js
index 5445985..4bc7745 100644
--- a/dist/metona-toast.js
+++ b/dist/metona-toast.js
@@ -7,7 +7,7 @@
/**
* MetonaToast Utils — 工具函数
* @module utils
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 生成唯一ID
@@ -44,7 +44,7 @@
/**
* MetonaToast Icons — 图标SVG定义
* @module icons
- * @version 0.3.0
+ * @version 0.4.0
* @description 107 个内置 SVG 图标
*/
const ICONS = {
@@ -541,7 +541,7 @@
/**
* MetonaToast Locales — 国际化翻译数据
* @module locales
- * @version 0.3.0
+ * @version 0.4.0
* @description 内置 zh-CN / en-US 完整翻译
*/
const LOCALES = {
@@ -1028,12 +1028,12 @@
/**
* MetonaToast Constants — 常量定义
* @module constants
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 版本号 — 唯一来源,发布时只需修改此处
*/
- const VERSION = '0.3.0';
+ const VERSION = '0.4.0';
/**
* 默认配置
*/
@@ -1046,6 +1046,7 @@
pauseOnHover: true,
closeOnClick: true,
draggable: true,
+ dragThreshold: 120,
showProgress: true,
progressDirection: 'horizontal',
icon: true,
@@ -1299,7 +1300,7 @@
/**
* MetonaToast Styles — 样式管理
* @module styles
- * @version 0.3.0
+ * @version 0.4.0
*/
// 样式缓存
let styleElement = null;
@@ -1657,6 +1658,41 @@
transition: transform 0.1s linear;
}
+ /* RTL 镜像:进度条从右向左收缩、side 条移到右侧、类型色条翻转到右边 */
+ [dir="rtl"] .met-bar {
+ transform-origin: right;
+ }
+ [dir="rtl"] .met-side {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-progress-v {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-toast.met-success {
+ border-left-width: 1px;
+ border-right: 4px solid #10b981;
+ }
+ [dir="rtl"] .met-toast.met-error {
+ border-left-width: 1px;
+ border-right: 4px solid #ef4444;
+ }
+ [dir="rtl"] .met-toast.met-warning {
+ border-left-width: 1px;
+ border-right: 4px solid #f59e0b;
+ }
+ [dir="rtl"] .met-toast.met-info {
+ border-left-width: 1px;
+ border-right: 4px solid #3b82f6;
+ }
+ [dir="rtl"] .met-toast.met-loading {
+ border-left-width: 1px;
+ border-right: 4px solid #6366f1;
+ }
+
.met-container::-webkit-scrollbar { width: 6px; height: 6px; }
.met-container::-webkit-scrollbar-track { background: transparent; }
.met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }
@@ -1753,7 +1789,7 @@
/**
* MetonaToast Themes — 主题管理
* @module themes
- * @version 0.3.0
+ * @version 0.4.0
*/
// 当前主题状态
let currentTheme = 'auto';
@@ -2097,7 +2133,7 @@
/**
* MetonaToast i18n — 国际化管理
* @module i18n
- * @version 0.3.0
+ * @version 0.4.0
*/
// 当前语言状态
let currentLocale = 'zh-CN';
@@ -2772,7 +2808,7 @@
/**
* MetonaToast Toast — Toast 类
* @module toast
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* Toast 类 — 核心通知组件
@@ -2933,6 +2969,9 @@
el.className = `met-container ${position}`;
el.setAttribute('aria-label', 'Notifications');
el.setAttribute('role', 'region');
+ // RTL 语言设置容器文字方向,使内容/关闭按钮/进度条正确镜像
+ if (isRTL)
+ el.setAttribute('dir', 'rtl');
const posStyles = {
'top-left': 'top:0;left:0;align-items:flex-start',
'top-center': 'top:0;left:0;right:0;align-items:center',
@@ -3124,7 +3163,8 @@
dragging = false;
el.releasePointerCapture(e.pointerId);
el.style.transition = '';
- if (Math.abs(dx) > 120) {
+ const threshold = this.config.dragThreshold ?? 120;
+ if (Math.abs(dx) > threshold) {
el.style.transform = `translate(${dx * 2}px, ${dy}px) rotate(${dx * 0.2}deg)`;
el.style.opacity = '0';
setTimeout(() => this.close(true), 250);
@@ -3242,6 +3282,18 @@
: (this.message ? `${escapeHTML(this.message)}
` : '');
content.innerHTML = `${safeTitle}${safeMessage}`;
}
+ // duration 变更:重启或停止计时器(loading 0 → N 转换、动态调整时长等场景)
+ if (partial.duration !== undefined && partial.duration !== this.config.duration) {
+ this.config.duration = partial.duration;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ this.remaining = Math.max(0, partial.duration);
+ if (partial.duration > 0 && !this.paused) {
+ this.startedAt = Date.now();
+ this._startTimer();
+ }
+ }
// resetTimerOnUpdate: 更新内容后重置计时器
if (this.config.resetTimerOnUpdate && (this.config.duration || 0) > 0) {
if (this.rafId !== null)
@@ -3388,7 +3440,7 @@
/**
* MetonaToast Templates — HTML 模板辅助函数
* @module templates
- * @version 0.3.0
+ * @version 0.4.0
* @description confirm / prompt / progress / action 的 DOM 模板
*/
/**
@@ -3460,7 +3512,7 @@
/**
* MetonaToast Plugins — 插件系统
* @module plugins
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 插件管理器
@@ -3638,6 +3690,32 @@
el.parentNode.removeChild(el); }, 3000);
},
},
+ /**
+ * 去重插件 — 相同 type + message 的 toast 自动合并(更新已有的一条)
+ */
+ dedupe: {
+ name: 'dedupe',
+ version: '1.0.0',
+ description: '相同类型和消息的 Toast 自动去重,更新已有实例而非重复弹出',
+ _off: null,
+ install() {
+ const off = Toast.on('beforeShow', (toast) => {
+ const existing = Array.from(Toast._registry.values()).find(t => !t.closing && t.type === toast.type && t.message === toast.message);
+ if (existing) {
+ existing.update({ title: toast.title || existing.title });
+ return false;
+ }
+ return undefined;
+ });
+ this._off = off;
+ },
+ uninstall() {
+ const off = this._off;
+ if (off)
+ off();
+ this._off = null;
+ },
+ },
};
/**
* 插件工具
@@ -3680,7 +3758,7 @@
/**
* MetonaToast API — meToast 核心 API 对象
* @module api
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
* 参数标准化工具
@@ -3731,7 +3809,10 @@
merged.message = merged.content;
const t = new Toast(merged);
t.create();
- this._toasts.set(t.id, t);
+ // beforeShow/onBeforeShow 拦截(返回 false)时 el 为 null,不注册幽灵实例
+ if (t.el !== null) {
+ this._toasts.set(t.id, t);
+ }
return t;
},
_remove(id) {
@@ -3797,14 +3878,21 @@
throw err;
});
},
+ /**
+ * loading 链式转换 — 原地 update 同一实例(id 稳定,不重建 DOM)
+ * duration 从 0 恢复为默认值,使转换后的 toast 自动关闭
+ */
_resolve(loadingToast, type, message, opts) {
- const id = loadingToast.id;
- const old = this._toasts.get(id);
+ const old = this._toasts.get(loadingToast.id);
if (!old)
return null;
- const position = old.config.position;
- old.close();
- return this._emit({ ...opts, type, message, position });
+ old.update({
+ ...opts,
+ type,
+ message,
+ duration: opts.duration ?? (old.config.duration || this._config.duration),
+ });
+ return old;
},
confirm(message, opts = {}) {
if (typeof message !== 'string') {
@@ -4342,7 +4430,7 @@
/**
* MetonaToast — 轻量级Toast通知库
* @module metona-toast
- * @version 0.3.0
+ * @version 0.4.0
* @author thzxx
* @license MIT
*/
diff --git a/dist/metona-toast.js.map b/dist/metona-toast.js.map
index 1fc84ae..d82a258 100644
--- a/dist/metona-toast.js.map
+++ b/dist/metona-toast.js.map
@@ -1 +1 @@
-{"version":3,"file":"metona-toast.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"metona-toast.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/dist/metona-toast.min.js b/dist/metona-toast.min.js
index c13bbce..86fc5ad 100644
--- a/dist/metona-toast.min.js
+++ b/dist/metona-toast.min.js
@@ -1 +1 @@
-!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).MeToast={})}(this,function(e){"use strict";const t=e=>{if("undefined"==typeof document)return String(null==e?"":e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'");const t=document.createElement("div");return t.textContent=String(null==e?"":e),t.innerHTML},n={success:'',error:'',warning:'',info:'',loading:'',close:'',check:'',x:'',alert:'',question:'',star:'',heart:'',bell:'',mail:'',settings:'',user:'',home:'',search:'',plus:'',minus:'',edit:'',trash:'',download:'',upload:'',share:'',link:'',external:'',clock:'',calendar:'',map:'',compass:'',globe:'',wifi:'',cloud:'',sun:'',moon:'',zap:'',activity:'',cpu:'',database:'',server:'',terminal:'',code:'',git:'',package:'',layers:'',grid:'',list:'',filter:'',sort:'',refresh:'',sync:'',power:'',battery:'',bluetooth:'',volume:'',mic:'',camera:'',image:'',video:'',music:'',file:'',folder:'',clipboard:'',save:'',print:'',eye:'',eyeOff:'',lock:'',unlock:'',shield:'',key:'',flag:'',bookmark:'',tag:'',gift:'',award:'',target:'',crosshair:'',move:'',maximize:'',minimize:'',copy:'',cut:'',paste:'',rotateCw:'',rotateCcw:'',zoomIn:'',zoomOut:'',crop:'',sliders:'',toggleLeft:'',toggleRight:'',checkCircle:'',xCircle:'',alertCircle:'',infoCircle:'',helpCircle:'',alertTriangle:'',checkSquare:'',square:'',circle:'',triangle:'',hexagon:'',octagon:'',pentagon:'',diamond:''},o={"zh-CN":{close:"关闭",loading:"加载中...",success:"操作成功",error:"操作失败",warning:"警告",info:"信息",confirm:"确认",cancel:"取消",yes:"是",no:"否",ok:"确定",retry:"重试",undo:"撤销",redo:"重做",save:"保存",delete:"删除",edit:"编辑",add:"添加",remove:"移除",search:"搜索",filter:"筛选",sort:"排序",refresh:"刷新",sync:"同步",upload:"上传",download:"下载",share:"分享",copy:"复制",cut:"剪切",paste:"粘贴",print:"打印",export:"导出",import:"导入",settings:"设置",help:"帮助",about:"关于",version:"版本",language:"语言",theme:"主题",dark:"暗色",light:"亮色",auto:"自动",notifications:"通知",enable:"启用",disable:"禁用",on:"开启",off:"关闭",max:"最大",min:"最小",expand:"展开",collapse:"折叠",fullscreen:"全屏",exitFullscreen:"退出全屏",zoomIn:"放大",zoomOut:"缩小",reset:"重置",apply:"应用",submit:"提交",send:"发送",receive:"接收",connect:"连接",disconnect:"断开",start:"开始",stop:"停止",pause:"暂停",resume:"继续",next:"下一个",previous:"上一个",first:"第一个",last:"最后一个",back:"返回",forward:"前进",home:"首页",menu:"菜单",more:"更多",less:"更少",show:"显示",hide:"隐藏",visible:"可见",hidden:"隐藏",enabled:"已启用",disabled:"已禁用",active:"活跃",inactive:"非活跃",online:"在线",offline:"离线",connected:"已连接",disconnected:"已断开",loaded:"已加载",saving:"保存中",saved:"已保存",deleting:"删除中",deleted:"已删除",uploading:"上传中",uploaded:"已上传",downloading:"下载中",downloaded:"已下载",processing:"处理中",processed:"已处理",syncing:"同步中",synced:"已同步",sending:"发送中",sent:"已发送",receiving:"接收中",received:"已接收",connecting:"连接中",question:"问题",feedback:"反馈",report:"报告",bug:"错误",feature:"功能",improvement:"改进",suggestion:"建议",request:"请求",response:"响应",status:"状态",progress:"进度",complete:"完成",incomplete:"未完成",pending:"待处理",failed:"失败",cancelled:"已取消",timeout:"超时",expired:"已过期",invalid:"无效",valid:"有效",required:"必填",optional:"可选",allowed:"允许",denied:"拒绝",approved:"已批准",rejected:"已拒绝",accepted:"已接受",declined:"已拒绝",confirmed:"已确认",unconfirmed:"未确认",verified:"已验证",unverified:"未验证",authenticated:"已认证",unauthenticated:"未认证",authorized:"已授权",unauthorized:"未授权",public:"公开",private:"私有",protected:"受保护",internal:"内部",external:"外部",local:"本地",remote:"远程",global:"全局",system:"系统",user:"用户",admin:"管理员",moderator:"版主",guest:"访客",member:"成员",owner:"所有者",creator:"创建者",editor:"编辑者",viewer:"查看者",subscriber:"订阅者",follower:"关注者",following:"关注中",friend:"朋友",contact:"联系人",group:"群组",team:"团队",organization:"组织",company:"公司",department:"部门",project:"项目",task:"任务",issue:"问题",ticket:"工单",message:"消息",notification:"通知",alert:"警报",reminder:"提醒",event:"事件",activity:"活动",log:"日志",analytics:"分析",statistics:"统计",metrics:"指标",performance:"性能",security:"安全",privacy:"隐私",compliance:"合规",policy:"政策",terms:"条款",conditions:"条件",agreement:"协议",contract:"合同",license:"许可证",copyright:"版权",trademark:"商标",patent:"专利",tradeSecret:"商业秘密",confidential:"机密",sensitive:"敏感",critical:"关键",important:"重要",urgent:"紧急",high:"高",medium:"中",low:"低",none:"无",all:"全部",any:"任何",some:"一些",each:"每个",every:"每个",both:"两者",neither:"两者都不",either:"任一",other:"其他",another:"另一个",this:"这个",that:"那个",these:"这些",those:"那些",here:"这里",there:"那里",where:"哪里",when:"何时",why:"为什么",how:"如何",what:"什么",who:"谁",which:"哪个",whose:"谁的",whom:"谁"},"en-US":{close:"Close",loading:"Loading...",success:"Success",error:"Error",warning:"Warning",info:"Info",confirm:"Confirm",cancel:"Cancel",yes:"Yes",no:"No",ok:"OK",retry:"Retry",undo:"Undo",redo:"Redo",save:"Save",delete:"Delete",edit:"Edit",add:"Add",remove:"Remove",search:"Search",filter:"Filter",sort:"Sort",refresh:"Refresh",sync:"Sync",upload:"Upload",download:"Download",share:"Share",copy:"Copy",cut:"Cut",paste:"Paste",print:"Print",export:"Export",import:"Import",settings:"Settings",help:"Help",about:"About",version:"Version",language:"Language",theme:"Theme",dark:"Dark",light:"Light",auto:"Auto",notifications:"Notifications",enable:"Enable",disable:"Disable",on:"On",off:"Off",max:"Max",min:"Min",expand:"Expand",collapse:"Collapse",fullscreen:"Fullscreen",exitFullscreen:"Exit Fullscreen",zoomIn:"Zoom In",zoomOut:"Zoom Out",reset:"Reset",apply:"Apply",submit:"Submit",send:"Send",receive:"Receive",connect:"Connect",disconnect:"Disconnect",start:"Start",stop:"Stop",pause:"Pause",resume:"Resume",next:"Next",previous:"Previous",first:"First",last:"Last",back:"Back",forward:"Forward",home:"Home",menu:"Menu",more:"More",less:"Less",show:"Show",hide:"Hide",visible:"Visible",hidden:"Hidden",enabled:"Enabled",disabled:"Disabled",active:"Active",inactive:"Inactive",online:"Online",offline:"Offline",connected:"Connected",disconnected:"Disconnected",loaded:"Loaded",saving:"Saving",saved:"Saved",deleting:"Deleting",deleted:"Deleted",uploading:"Uploading",uploaded:"Uploaded",downloading:"Downloading",downloaded:"Downloaded",processing:"Processing",processed:"Processed",syncing:"Syncing",synced:"Synced",sending:"Sending",sent:"Sent",receiving:"Receiving",received:"Received",connecting:"Connecting",question:"Question",feedback:"Feedback",report:"Report",bug:"Bug",feature:"Feature",improvement:"Improvement",suggestion:"Suggestion",request:"Request",response:"Response",status:"Status",progress:"Progress",complete:"Complete",incomplete:"Incomplete",pending:"Pending",failed:"Failed",cancelled:"Cancelled",timeout:"Timeout",expired:"Expired",invalid:"Invalid",valid:"Valid",required:"Required",optional:"Optional",allowed:"Allowed",denied:"Denied",approved:"Approved",rejected:"Rejected",accepted:"Accepted",declined:"Declined",confirmed:"Confirmed",unconfirmed:"Unconfirmed",verified:"Verified",unverified:"Unverified",authenticated:"Authenticated",unauthenticated:"Unauthenticated",authorized:"Authorized",unauthorized:"Unauthorized",public:"Public",private:"Private",protected:"Protected",internal:"Internal",external:"External",local:"Local",remote:"Remote",global:"Global",system:"System",user:"User",admin:"Admin",moderator:"Moderator",guest:"Guest",member:"Member",owner:"Owner",creator:"Creator",editor:"Editor",viewer:"Viewer",subscriber:"Subscriber",follower:"Follower",following:"Following",friend:"Friend",contact:"Contact",group:"Group",team:"Team",organization:"Organization",company:"Company",department:"Department",project:"Project",task:"Task",issue:"Issue",ticket:"Ticket",message:"Message",notification:"Notification",alert:"Alert",reminder:"Reminder",event:"Event",activity:"Activity",log:"Log",analytics:"Analytics",statistics:"Statistics",metrics:"Metrics",performance:"Performance",security:"Security",privacy:"Privacy",compliance:"Compliance",policy:"Policy",terms:"Terms",conditions:"Conditions",agreement:"Agreement",contract:"Contract",license:"License",copyright:"Copyright",trademark:"Trademark",patent:"Patent",tradeSecret:"Trade Secret",confidential:"Confidential",sensitive:"Sensitive",critical:"Critical",important:"Important",urgent:"Urgent",high:"High",medium:"Medium",low:"Low",none:"None",all:"All",any:"Any",some:"Some",each:"Each",every:"Every",both:"Both",neither:"Neither",either:"Either",other:"Other",another:"Another",this:"This",that:"That",these:"These",those:"Those",here:"Here",there:"There",where:"Where",when:"When",why:"Why",how:"How",what:"What",who:"Who",which:"Which",whose:"Whose",whom:"Whom"}},r="0.3.0",i=Object.freeze({position:"top-right",duration:4e3,max:6,gap:12,offset:24,pauseOnHover:!0,closeOnClick:!0,draggable:!0,showProgress:!0,progressDirection:"horizontal",icon:!0,closeButton:!0,theme:"auto",animation:"slide",zIndex:9999,width:360,className:"",style:{},onShow:null,onBeforeShow:null,onClose:null,onClick:null,onUpdate:null,resetTimerOnUpdate:!1,notifyWhenHidden:!1,onError:null,locale:"zh-CN",plugins:[]}),s={success:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},error:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},warning:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},info:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},loading:{fg:"#6366f1",bg:"rgba(99, 102, 241, 0.1)"},default:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},check:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},x:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},alert:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},question:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},star:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},heart:{fg:"#ec4899",bg:"rgba(236, 72, 153, 0.1)"},bell:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},mail:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},settings:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},user:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},home:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},search:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},plus:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},minus:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},edit:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},trash:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},download:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},upload:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},share:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},link:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},external:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},clock:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},calendar:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},map:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},compass:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},globe:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},wifi:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},cloud:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},sun:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},moon:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},zap:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},activity:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},cpu:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},database:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},server:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},terminal:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},code:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},git:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},package:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},layers:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},grid:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},list:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},filter:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},sort:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},refresh:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},sync:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},power:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},battery:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},bluetooth:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},volume:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},mic:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},camera:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},image:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},video:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},music:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},file:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},folder:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},clipboard:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},save:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},print:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},eye:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},eyeOff:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},lock:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},unlock:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},shield:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},key:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},flag:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},bookmark:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},tag:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},gift:{fg:"#ec4899",bg:"rgba(236, 72, 153, 0.1)"},award:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},target:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},crosshair:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},move:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},maximize:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},minimize:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},copy:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},cut:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},paste:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},rotateCw:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},rotateCcw:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},zoomIn:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},zoomOut:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},crop:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},sliders:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},toggleLeft:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},toggleRight:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},checkCircle:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},xCircle:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},alertCircle:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},infoCircle:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},helpCircle:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},alertTriangle:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},checkSquare:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},square:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},circle:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},triangle:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},hexagon:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},octagon:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},pentagon:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},diamond:{fg:"#ec4899",bg:"rgba(236, 72, 153, 0.1)"}},a={slide:{enter:{transform:"translateX(80px)",opacity:"0"},leave:{transform:"translateX(120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},fade:{enter:{opacity:"0",filter:"blur(3px)"},leave:{opacity:"0",filter:"blur(3px)"},duration:500,easing:"ease"},scale:{enter:{transform:"scale(0.55)",opacity:"0"},leave:{transform:"scale(0.55)",opacity:"0"},duration:450,easing:"cubic-bezier(0.34, 1.56, 0.64, 1)"},bounce:{enter:{transform:"translateY(-80px)",opacity:"0"},leave:{transform:"translateY(20px)",opacity:"0"},duration:650,easing:"ease"},flip:{enter:{transform:"perspective(500px) rotateX(-90deg)",opacity:"0"},leave:{transform:"perspective(500px) rotateX(90deg)",opacity:"0"},duration:500,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},rotate:{enter:{transform:"rotate(-25deg) scale(0.6)",opacity:"0"},leave:{transform:"rotate(25deg) scale(0.6)",opacity:"0"},duration:500,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},zoom:{enter:{transform:"scale(0.1)",opacity:"0"},leave:{transform:"scale(0.1)",opacity:"0"},duration:500,easing:"cubic-bezier(0.34, 1.56, 0.64, 1)"},slideUp:{enter:{transform:"translateY(60px)",opacity:"0"},leave:{transform:"translateY(-120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},slideDown:{enter:{transform:"translateY(-60px)",opacity:"0"},leave:{transform:"translateY(120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},slideLeft:{enter:{transform:"translateX(-90px)",opacity:"0"},leave:{transform:"translateX(120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},slideRight:{enter:{transform:"translateX(90px)",opacity:"0"},leave:{transform:"translateX(-120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"}},l={light:{bg:"rgba(255, 255, 255, 0.96)",text:"#1f2937",border:"rgba(0, 0, 0, 0.06)",shadow:"0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)",hoverShadow:"0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)",progressBg:"rgba(0, 0, 0, 0.06)",closeHoverBg:"rgba(0, 0, 0, 0.06)"},dark:{bg:"rgba(28, 32, 40, 0.94)",text:"#e6e8eb",border:"rgba(255, 255, 255, 0.08)",shadow:"0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4)",hoverShadow:"0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4)",progressBg:"rgba(255, 255, 255, 0.08)",closeHoverBg:"rgba(255, 255, 255, 0.08)"},auto:{bg:"rgba(255, 255, 255, 0.96)",text:"#1f2937",border:"rgba(0, 0, 0, 0.06)",shadow:"0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)",hoverShadow:"0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)",progressBg:"rgba(0, 0, 0, 0.06)",closeHoverBg:"rgba(0, 0, 0, 0.06)"},warm:{bg:"rgba(255, 251, 235, 0.96)",text:"#78350f",border:"rgba(245, 158, 11, 0.2)",shadow:"0 10px 36px -10px rgba(245, 158, 11, 0.18), 0 4px 14px -4px rgba(245, 158, 11, 0.08)",hoverShadow:"0 14px 48px -10px rgba(245, 158, 11, 0.22), 0 6px 18px -4px rgba(245, 158, 11, 0.10)",progressBg:"rgba(245, 158, 11, 0.1)",closeHoverBg:"rgba(245, 158, 11, 0.1)"}};let c=null,d="auto";const h=new Set;let g=null,p=null;const u=()=>"undefined"==typeof window?"light":"undefined"!=typeof window&&"function"==typeof window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",m=e=>"auto"===e?u():e,f=e=>{const t=m(e);return l[t]||l.light},y=e=>{d=e;const t=m(e);if("undefined"!=typeof document){document.documentElement.setAttribute("data-met-theme",t),document.documentElement.classList.remove("met-theme-light","met-theme-dark","met-theme-auto"),document.documentElement.classList.add(`met-theme-${t}`);const n=f(e);b(n)}B(e,t)},b=e=>{if("undefined"==typeof document)return;const t=document.documentElement;t.style.setProperty("--met-bg",e.bg),t.style.setProperty("--met-text",e.text),t.style.setProperty("--met-border",e.border),t.style.setProperty("--met-shadow",e.shadow),t.style.setProperty("--met-hover-shadow",e.hoverShadow),t.style.setProperty("--met-progress-bg",e.progressBg),t.style.setProperty("--met-close-hover-bg",e.closeHoverBg),t.style.setProperty("--met-success","#10b981"),t.style.setProperty("--met-error","#ef4444"),t.style.setProperty("--met-warning","#f59e0b"),t.style.setProperty("--met-info","#3b82f6"),t.style.setProperty("--met-loading","#6366f1")},x=()=>m(d),v=e=>{y(e),w(e)},w=e=>{if("undefined"!=typeof localStorage)try{localStorage.setItem("metona-toast-theme",e)}catch(e){}},k=()=>{if("undefined"!=typeof localStorage)try{return localStorage.getItem("metona-toast-theme")||"auto"}catch(e){}return"auto"},C=()=>{"undefined"!=typeof window&&window.matchMedia&&(g&&p&&g.removeEventListener("change",p),g=window.matchMedia("(prefers-color-scheme: dark)"),p=()=>{"auto"===d&&y("auto")},g.addEventListener("change",p))},B=(e,t)=>{h.forEach(n=>{try{n(e,t)}catch(e){}})},j=e=>{const t=f(e);return`\n .met-theme-${m(e)} {\n --met-bg: ${t.bg};\n --met-text: ${t.text};\n --met-border: ${t.border};\n --met-shadow: ${t.shadow};\n --met-hover-shadow: ${t.hoverShadow};\n --met-progress-bg: ${t.progressBg};\n --met-close-hover-bg: ${t.closeHoverBg};\n }\n `},_={getSystemTheme:u,resolveTheme:m,getThemeConfig:f,applyTheme:y,getCurrentTheme:()=>d,getResolvedTheme:x,switchTheme:v,toggleTheme:()=>{const e=x();v("dark"===e?"light":"dark")},resetToAuto:()=>{v("auto")},initTheme:()=>{const e=k();y(e),C()},watchSystemTheme:C,unwatchSystemTheme:()=>{g&&p&&(g.removeEventListener("change",p),g=null,p=null)},addThemeListener:e=>(h.add(e),()=>{h.delete(e)}),removeThemeListener:e=>{h.delete(e)},clearThemeListeners:()=>{h.clear()},registerTheme:(e,t)=>{l[e]={bg:t.bg||l.light.bg,text:t.text||l.light.text,border:t.border||l.light.border,shadow:t.shadow||l.light.shadow,hoverShadow:t.hoverShadow||l.light.hoverShadow,progressBg:t.progressBg||l.light.progressBg,closeHoverBg:t.closeHoverBg||l.light.closeHoverBg}},unregisterTheme:e=>{"light"!==e&&"dark"!==e&&"auto"!==e&&delete l[e]},getAllThemes:()=>({...l}),getThemeNames:()=>Object.keys(l),hasTheme:e=>e in l,getThemePreview:e=>{const t=f(e),n=m(e);return{name:e,resolved:n,colors:{background:t.bg,text:t.text,border:t.border},isDark:"dark"===n,isLight:"light"===n,isAuto:"auto"===e}},generateThemeCSS:j,applyThemeCSS:e=>{if("undefined"==typeof document)return;const t=j(e),n="metona-toast-theme-css",o=document.getElementById(n);o&&o.remove();const r=document.createElement("style");r.id=n,r.textContent=t,document.head.appendChild(r)},removeThemeCSS:()=>{if("undefined"==typeof document)return;const e=document.getElementById("metona-toast-theme-css");e&&e.remove()},saveTheme:w,loadTheme:k};let T="zh-CN";const S=new Set;let M="zh-CN";const L=()=>T,E=e=>{o[e]||(e=M),T=e,U(e),F(e)},z=(e,t={})=>{const n=A(T,e);if(void 0!==n)return $(n,t);if(T!==M){const n=A(M,e);if(void 0!==n)return $(n,t)}return e},A=(e,t)=>{const n=o[e];if(!n)return;const r=t.split(".");let i=n;for(const e of r){if(!i||"object"!=typeof i||!(e in i))return;i=i[e]}return"string"==typeof i?i:void 0},$=(e,t)=>e.replace(/\{(\w+)\}/g,(e,n)=>void 0!==t[n]?String(t[n]):e),I=e=>void 0!==A(T,e)||void 0!==A(M,e),P=(e,t)=>{for(const n in t)t[n]instanceof Object&&n in e&&e[n]instanceof Object?P(e[n],t[n]):e[n]=t[n];return e},N=()=>Object.keys(o),H=e=>e in o,D=e=>({"zh-CN":"简体中文","zh-TW":"繁體中文","en-US":"English (US)","en-GB":"English (UK)",ja:"日本語",ko:"한국어",fr:"Français",de:"Deutsch",es:"Español",pt:"Português",ru:"Русский",ar:"العربية",hi:"हिन्दी",th:"ไทย",vi:"Tiếng Việt",id:"Bahasa Indonesia",ms:"Bahasa Melayu",tr:"Türkçe",it:"Italiano",nl:"Nederlands",pl:"Polski",uk:"Українська",cs:"Čeština",sv:"Svenska",da:"Dansk",fi:"Suomi",nb:"Norsk",el:"Ελληνικά",he:"עברית",hu:"Magyar",ro:"Română",bg:"Български",hr:"Hrvatski",sk:"Slovenčina",sl:"Slovenščina",et:"Eesti",lv:"Latviešu",lt:"Lietuvių",ca:"Català",gl:"Galego",eu:"Euskara",cy:"Cymraeg",ga:"Gaeilge",mt:"Malti",is:"Íslenska",mk:"Македонски",sq:"Shqip",sr:"Српски",bs:"Bosanski",me:"Crnogorski",ka:"ქართული",hy:"Հայերեն",az:"Azərbaycan",uz:"O'zbek",kk:"Қазақ",ky:"Кыргыз",tg:"Тоҷикӣ",tk:"Türkmen",mn:"Монгол",ne:"नेपाली",si:"සිංහල",my:"မြန်မာ",km:"ខ្មែរ",lo:"ລາວ",am:"አማርኛ",sw:"Kiswahili",yo:"Yorùbá",ig:"Igbo",ha:"Hausa",zu:"isiZulu",af:"Afrikaans",xh:"isiXhosa",st:"Sesotho",tn:"Setswana",ts:"Xitsonga",ss:"siSwati",ve:"Tshivenda",nr:"isiNdebele"}[e]||e),O=e=>["ar","he","fa","ur","yi","ps","sd","ug"].includes(e)?"rtl":"ltr",q=e=>({code:e,name:D(e),direction:O(e),isSupported:H(e),isCurrent:e===T,isFallback:e===M}),F=e=>{if("undefined"!=typeof localStorage)try{localStorage.setItem("metona-toast-locale",e)}catch(e){}},V=()=>{if("undefined"!=typeof localStorage)try{return localStorage.getItem("metona-toast-locale")||R()}catch(e){}return R()},R=()=>{if("undefined"!=typeof navigator){const e=navigator.language||navigator.userLanguage;if(e&&H(e))return e;const t=e?.split("-")[0];if(t&&H(t))return t}return M},U=e=>{S.forEach(t=>{try{t(e)}catch(e){}})},X=(e,t={})=>{try{const n=e instanceof Date?e:new Date(e);return new Intl.DateTimeFormat(T,t).format(n)}catch(t){return String(e)}},Y=(e,t={})=>{try{return new Intl.PluralRules(T,t).select(e)}catch(t){return 1===e?"one":"other"}},W={t:z,plural:(e,t,n={})=>{const o=`${e}.${Y(t)}`;return I(o)?z(o,{...n,count:t}):I(e)?z(e,{...n,count:t}):e},getCurrentLocale:L,setCurrentLocale:E,switchLocale:e=>{E(e)},getFallbackLocale:()=>M,setFallbackLocale:e=>{o[e]&&(M=e)},hasTranslation:I,getTranslations:e=>o[e]||{},addTranslations:(e,t)=>{o[e]||(o[e]={}),P(o[e],t)},removeTranslation:(e,t)=>{const n=o[e];if(!n)return;const r=t.split(".");let i=n;for(let e=0;e{o[e]&&(o[e]={})},getSupportedLocales:N,isLocaleSupported:H,getLocaleName:D,getLocaleDirection:O,getLocaleInfo:q,getAllLocaleInfo:()=>N().map(q),formatNumber:(e,t={})=>{try{return new Intl.NumberFormat(T,t).format(e)}catch(t){return e.toString()}},formatCurrency:(e,t="USD",n={})=>{try{return new Intl.NumberFormat(T,{style:"currency",currency:t,...n}).format(e)}catch(t){return e.toString()}},formatPercent:(e,t={})=>{try{return new Intl.NumberFormat(T,{style:"percent",minimumFractionDigits:0,maximumFractionDigits:2,...t}).format(e/100)}catch(t){return`${e}%`}},formatDate:X,formatTime:(e,t={})=>X(e,{hour:"numeric",minute:"numeric",second:"numeric",...t}),formatRelativeTime:(e,t={})=>{try{const n=e instanceof Date?e:new Date(e),o=new Date,r=n.getTime()-o.getTime(),i=new Intl.RelativeTimeFormat(T,{numeric:"auto",...t}),s=[{unit:"year",ms:31536e6},{unit:"month",ms:2592e6},{unit:"week",ms:6048e5},{unit:"day",ms:864e5},{unit:"hour",ms:36e5},{unit:"minute",ms:6e4},{unit:"second",ms:1e3}];for(const{unit:e,ms:t}of s)if(Math.abs(r)>=t||"second"===e){const n=Math.round(r/t);return i.format(n,e)}return String(e)}catch(t){return String(e)}},formatList:(e,t={})=>{const n=Intl;if("function"==typeof n.ListFormat)try{return new n.ListFormat(T,{style:"long",type:"conjunction"}).format(e)}catch(e){}return e.join(", ")},formatPlural:Y,addLocaleListener:e=>(S.add(e),()=>{S.delete(e)}),removeLocaleListener:e=>{S.delete(e)},clearLocaleListeners:()=>{S.clear()},initI18n:()=>{const e=V();E(e)},saveLocale:F,loadLocale:V,getDefaultLocale:R};o["zh-CN"],o["en-US"];const G=new Map,K=new Set(["slide","fade","scale","bounce","flip","rotate","zoom","slideUp","slideDown","slideLeft","slideRight"]);let Z=null;const J=new Set;Object.entries(a).forEach(([e,t])=>{G.set(e,{name:e,enter:t.enter,leave:t.leave,duration:t.duration,easing:t.easing})});const Q={register(e,t){G.set(e,{name:e,enter:t.enter||{},leave:t.leave||{},duration:t.duration||300,easing:t.easing||"cubic-bezier(0.4, 0, 0.2, 1)"})},unregister(e){G.delete(e)},get:e=>G.get(e)||null,getAnimationNames:()=>Array.from(G.keys()),getActiveCount:()=>G.size,cancelAll(){},reset(){G.clear(),Object.entries(a).forEach(([e,t])=>{G.set(e,{name:e,enter:t.enter,leave:t.leave,duration:t.duration,easing:t.easing})})},destroy(){G.clear(),J.clear(),Z=null}};class ee{static setCallbacks(e){void 0!==e.onError&&(ee._onError=e.onError),void 0!==e.removeToast&&(ee._removeToast=e.removeToast)}static on(e,t){return this._hooks.has(e)||this._hooks.set(e,[]),this._hooks.get(e).push(t),()=>this.off(e,t)}static off(e,t){const n=this._hooks.get(e);n&&this._hooks.set(e,n.filter(e=>e!==t))}static trigger(e,t=null){const n=this._hooks.get(e);if(!n||0===n.length)return!0;let o=!0;return n.forEach(n=>{try{!1===n(t)&&(o=!1)}catch(n){if(ee._onError)try{ee._onError({hook:e,error:n,toast:t})}catch(e){}}}),o}constructor(e){this.el=null,this.barEl=null,this.rafId=null,this.startedAt=0,this.paused=!1,this.closing=!1,this.group=null,this._cleanups=[],this.id=e.id||"met-"+Date.now().toString(36)+"-"+Math.random().toString(36).slice(2,8),this.type=e.type||"default",this.title=e.title||"",this.message=e.message??e.content??"",this.html=e.html||"",this.iconHTML=e.iconHTML||"",this.config={...i,...e},e.style&&"object"==typeof e.style&&(this.config.style={...e.style}),this.remaining=this.config.duration||0,this.group=e.group||null}_palette(){const e=(e=>m(e))(this.config.theme||"auto"),t=s[this.type]||s.default,n=l[e]||l.light;return{theme:e,c:t,t:{bg:n.bg,border:n.border,shadow:n.shadow}}}create(){if("undefined"==typeof window||"undefined"==typeof document)return this;if(!ee.trigger("beforeShow",this))return this;if("function"==typeof this.config.onBeforeShow)try{if(!1===this.config.onBeforeShow(this))return this}catch(e){}(()=>{if("undefined"==typeof document)return;if(c&&document.getElementById("metona-toast-styles"))return;c=document.createElement("style"),c.id="metona-toast-styles",c.textContent='\n .met-container {\n pointer-events: none;\n display: flex;\n flex-direction: column;\n gap: 12px;\n box-sizing: border-box;\n padding: 24px;\n max-width: 100vw;\n position: fixed;\n z-index: 9999;\n }\n\n .met-container.top-left { top: 0; left: 0; align-items: flex-start; }\n .met-container.top-center { top: 0; left: 0; right: 0; align-items: center; }\n .met-container.top-right { top: 0; right: 0; align-items: flex-end; }\n .met-container.bottom-left { bottom: 0; left: 0; align-items: flex-start; }\n .met-container.bottom-center{ bottom: 0; left: 0; right: 0; align-items: center; }\n .met-container.bottom-right { bottom: 0; right: 0; align-items: flex-end; }\n\n .met-toast {\n position: relative;\n display: flex;\n align-items: flex-start;\n gap: 12px;\n padding: 14px 16px;\n border-radius: 12px;\n box-sizing: border-box;\n backdrop-filter: blur(14px) saturate(180%);\n -webkit-backdrop-filter: blur(14px) saturate(180%);\n font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;\n user-select: none;\n -webkit-user-select: none;\n transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n box-shadow 0.25s ease,\n opacity 0.25s ease;\n will-change: transform, opacity;\n flex-shrink: 0;\n pointer-events: auto;\n min-width: 240px;\n max-width: calc(100vw - 48px);\n width: 360px;\n border: 1px solid var(--met-border, rgba(0,0,0,0.06));\n background: var(--met-bg, rgba(255,255,255,0.96));\n color: var(--met-text, #1f2937);\n box-shadow: var(--met-shadow, 0 10px 36px -10px rgba(0,0,0,0.18), 0 4px 14px -4px rgba(0,0,0,0.08));\n transform: translateZ(0);\n -webkit-transform: translateZ(0);\n backface-visibility: hidden;\n -webkit-backface-visibility: hidden;\n perspective: 1000;\n }\n\n .met-toast:hover {\n box-shadow: var(--met-hover-shadow, 0 14px 48px -10px rgba(0,0,0,0.22), 0 6px 18px -4px rgba(0,0,0,0.10)) !important;\n }\n\n .met-toast.met-clickable {\n cursor: pointer;\n }\n\n .met-icon {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n margin-top: 1px;\n }\n\n .met-content {\n flex: 1;\n min-width: 0;\n word-wrap: break-word;\n overflow-wrap: break-word;\n }\n\n .met-title {\n font-weight: 600;\n font-size: 14px;\n letter-spacing: 0.1px;\n }\n\n .met-message {\n font-size: 13px;\n opacity: 0.85;\n margin-top: 2px;\n }\n\n .met-close {\n flex-shrink: 0;\n background: transparent;\n border: 0;\n padding: 4px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n transition: background 0.2s, color 0.2s;\n line-height: 0;\n color: inherit;\n opacity: 0.5;\n }\n\n .met-close:hover {\n opacity: 1;\n background: var(--met-close-hover-bg, rgba(0,0,0,0.06));\n }\n\n .met-progress {\n position: absolute;\n left: 0; right: 0; bottom: 0;\n height: 3px;\n overflow: hidden;\n background: var(--met-progress-bg, rgba(0,0,0,0.06));\n border-radius: 0 0 12px 12px;\n }\n\n .met-progress-v {\n position: absolute;\n left: 0; top: 0; bottom: 0;\n width: 3px;\n overflow: hidden;\n background: var(--met-progress-bg, rgba(0,0,0,0.06));\n border-radius: 12px 0 0 12px;\n }\n\n .met-bar {\n position: absolute;\n left: 0; top: 0;\n height: 100%; width: 100%;\n transform-origin: left;\n transform: scaleX(1);\n }\n\n .met-bar-v {\n position: absolute;\n left: 0; bottom: 0;\n width: 100%; height: 100%;\n transform-origin: bottom;\n transform: scaleY(1);\n }\n\n .met-side {\n position: absolute;\n left: 0; top: 0; bottom: 0;\n width: 4px;\n border-radius: 12px 0 0 12px;\n }\n\n .met-spin {\n animation: met-rot 1s linear infinite;\n transform-origin: 50% 50%;\n }\n\n .met-toast.met-leaving {\n pointer-events: none;\n z-index: 1;\n }\n\n @keyframes met-rot {\n to { transform: rotate(360deg); }\n }\n\n .met-anim-slide.met-toast,\n .met-anim-fade.met-toast,\n .met-anim-scale.met-toast,\n .met-anim-bounce.met-toast,\n .met-anim-flip.met-toast,\n .met-anim-rotate.met-toast,\n .met-anim-zoom.met-toast,\n .met-anim-slideUp.met-toast,\n .met-anim-slideDown.met-toast,\n .met-anim-slideLeft.met-toast,\n .met-anim-slideRight.met-toast {\n opacity: 0;\n }\n\n @keyframes met-slide-in {\n 0% { transform: translateX(80px); opacity: 0; }\n 65% { transform: translateX(-6px); opacity: 1; }\n 100% { transform: translateX(0); opacity: 1; }\n }\n @keyframes met-fade-in {\n 0% { opacity: 0; filter: blur(3px); }\n 100% { opacity: 1; filter: blur(0); }\n }\n @keyframes met-scale-in {\n 0% { transform: scale(0.55); opacity: 0; }\n 65% { transform: scale(1.07); opacity: 1; }\n 100% { transform: scale(1); opacity: 1; }\n }\n @keyframes met-bounce-in {\n 0% { transform: translateY(-80px); opacity: 0; animation-timing-function: ease-in; }\n 45% { transform: translateY(14px); opacity: 1; animation-timing-function: ease-out; }\n 65% { transform: translateY(-12px); animation-timing-function: ease-in; }\n 82% { transform: translateY(4px); animation-timing-function: ease-out; }\n 100% { transform: translateY(0); opacity: 1; }\n }\n @keyframes met-flip-in {\n 0% { transform: perspective(500px) rotateX(-90deg); opacity: 0; }\n 60% { transform: perspective(500px) rotateX(8deg); opacity: 1; }\n 85% { transform: perspective(500px) rotateX(-2deg); }\n 100% { transform: perspective(500px) rotateX(0); opacity: 1; }\n }\n @keyframes met-rotate-in {\n 0% { transform: rotate(-25deg) scale(0.6); opacity: 0; }\n 60% { transform: rotate(4deg) scale(1.05); opacity: 1; }\n 85% { transform: rotate(-1deg) scale(0.98); }\n 100% { transform: rotate(0) scale(1); opacity: 1; }\n }\n @keyframes met-zoom-in {\n 0% { transform: scale(0.1); opacity: 0; }\n 50% { transform: scale(1.12); opacity: 1; }\n 75% { transform: scale(0.94); }\n 100% { transform: scale(1); opacity: 1; }\n }\n @keyframes met-slideUp-in {\n 0% { transform: translateY(60px); opacity: 0; }\n 70% { transform: translateY(-6px); opacity: 1; }\n 100% { transform: translateY(0); opacity: 1; }\n }\n @keyframes met-slideDown-in {\n 0% { transform: translateY(-60px); opacity: 0; }\n 70% { transform: translateY(6px); opacity: 1; }\n 100% { transform: translateY(0); opacity: 1; }\n }\n @keyframes met-slideLeft-in {\n 0% { transform: translateX(-90px); opacity: 0; }\n 65% { transform: translateX(6px); opacity: 1; }\n 100% { transform: translateX(0); opacity: 1; }\n }\n @keyframes met-slideRight-in {\n 0% { transform: translateX(90px); opacity: 0; }\n 65% { transform: translateX(-6px); opacity: 1; }\n 100% { transform: translateX(0); opacity: 1; }\n }\n\n .met-anim-slide.met-toast.met-show { animation: met-slide-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-fade.met-toast.met-show { animation: met-fade-in 0.50s ease forwards; }\n .met-anim-scale.met-toast.met-show { animation: met-scale-in 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }\n .met-anim-bounce.met-toast.met-show { animation: met-bounce-in 0.65s ease forwards; }\n .met-anim-flip.met-toast.met-show { animation: met-flip-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-rotate.met-toast.met-show { animation: met-rotate-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-zoom.met-toast.met-show { animation: met-zoom-in 0.50s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }\n .met-anim-slideUp.met-toast.met-show { animation: met-slideUp-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-slideDown.met-toast.met-show { animation: met-slideDown-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-slideLeft.met-toast.met-show { animation: met-slideLeft-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-slideRight.met-toast.met-show { animation: met-slideRight-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n\n @media (max-width: 480px) {\n .met-container { padding: 12px !important; }\n .met-toast { width: 100% !important; min-width: 0 !important; }\n }\n\n @media (max-width: 768px) {\n .met-toast { font-size: 13px; }\n .met-title { font-size: 13px; }\n .met-message { font-size: 12px; }\n }\n\n @media (min-width: 1200px) {\n .met-toast { width: 400px; }\n }\n\n @media (min-width: 1920px) {\n .met-toast { width: 440px; }\n }\n\n @media (max-width: 320px) {\n .met-toast { width: 100%; min-width: 0; padding: 12px 14px; }\n .met-container { padding: 8px; }\n }\n\n @media (orientation: landscape) and (max-height: 500px) {\n .met-container { padding: 12px 24px; }\n .met-toast { min-height: 44px; padding: 10px 14px; }\n }\n\n @media (orientation: portrait) and (max-width: 500px) {\n .met-container { padding: 12px; }\n .met-toast { width: 100%; min-width: 0; }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .met-toast { transition: opacity 0.15s !important; }\n .met-toast.met-show { animation: none !important; opacity: 1 !important; }\n .met-spin { animation-duration: 2.5s !important; }\n }\n\n @media (forced-colors: active) {\n .met-toast { border: 2px solid ButtonText; }\n .met-close { border: 1px solid ButtonText; }\n }\n\n @media (prefers-contrast: high) {\n .met-toast { border-width: 3px; border-style: solid; }\n .met-close { border: 2px solid currentColor; border-radius: 4px; }\n }\n\n .met-toast:focus-visible {\n outline: 2px solid #3b82f6;\n outline-offset: 2px;\n }\n .met-close:focus-visible {\n outline: 2px solid #3b82f6;\n outline-offset: 2px;\n }\n\n @media (hover: none) and (pointer: coarse) {\n .met-toast:hover { box-shadow: inherit; }\n .met-toast { min-height: 48px; }\n .met-close { min-width: 48px; min-height: 48px; }\n }\n\n @media print {\n .met-container { display: none !important; }\n .met-toast { display: none !important; }\n }\n\n :fullscreen .met-container,\n :picture-in-picture .met-container {\n z-index: 2147483647;\n }\n\n @supports (padding: max(0px)) {\n .met-container {\n padding: max(24px, env(safe-area-inset-top))\n max(24px, env(safe-area-inset-right))\n max(24px, env(safe-area-inset-bottom))\n max(24px, env(safe-area-inset-left));\n }\n }\n\n .met-toast:active {\n transform: scale(0.98);\n }\n\n .met-toast.met-success { border-left: 4px solid #10b981; }\n .met-toast.met-error { border-left: 4px solid #ef4444; }\n .met-toast.met-warning { border-left: 4px solid #f59e0b; }\n .met-toast.met-info { border-left: 4px solid #3b82f6; }\n .met-toast.met-loading { border-left: 4px solid #6366f1; }\n\n .met-bar, .met-bar-v {\n transition: transform 0.1s linear;\n }\n\n .met-container::-webkit-scrollbar { width: 6px; height: 6px; }\n .met-container::-webkit-scrollbar-track { background: transparent; }\n .met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }\n .met-container::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.3); }\n\n .met-toast.met-theme-dark {\n background: rgba(28, 32, 40, 0.94);\n color: #e6e8eb;\n border-color: rgba(255, 255, 255, 0.08);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);\n }\n .met-toast.met-theme-dark:hover {\n box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;\n }\n .met-toast.met-theme-dark .met-close:hover {\n background: rgba(255, 255, 255, 0.08);\n }\n .met-toast.met-theme-dark .met-progress,\n .met-toast.met-theme-dark .met-progress-v {\n background: rgba(255, 255, 255, 0.08);\n }\n\n .met-toast.met-theme-light {\n background: rgba(255, 255, 255, 0.96);\n color: #1f2937;\n border-color: rgba(0, 0, 0, 0.06);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);\n }\n .met-toast.met-theme-light:hover {\n box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;\n }\n .met-toast.met-theme-light .met-close:hover {\n background: rgba(0, 0, 0, 0.06);\n }\n .met-toast.met-theme-light .met-progress,\n .met-toast.met-theme-light .met-progress-v {\n background: rgba(0, 0, 0, 0.06);\n }\n\n .met-toast[data-theme] {\n --met-bg: var(--met-theme-bg);\n --met-text: var(--met-theme-text);\n --met-border: var(--met-theme-border);\n --met-shadow: var(--met-theme-shadow);\n }\n\n @media (prefers-color-scheme: dark) {\n .met-theme-auto .met-toast {\n background: rgba(28, 32, 40, 0.94);\n color: #e6e8eb;\n border-color: rgba(255, 255, 255, 0.08);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);\n }\n .met-theme-auto .met-toast:hover {\n box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;\n }\n .met-theme-auto .met-close:hover { background: rgba(255, 255, 255, 0.08); }\n .met-theme-auto .met-progress,\n .met-theme-auto .met-progress-v { background: rgba(255, 255, 255, 0.08); }\n }\n\n @media (prefers-color-scheme: light) {\n .met-theme-auto .met-toast {\n background: rgba(255, 255, 255, 0.96);\n color: #1f2937;\n border-color: rgba(0, 0, 0, 0.06);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);\n }\n .met-theme-auto .met-toast:hover {\n box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;\n }\n .met-theme-auto .met-close:hover { background: rgba(0, 0, 0, 0.06); }\n .met-theme-auto .met-progress,\n .met-theme-auto .met-progress-v { background: rgba(0, 0, 0, 0.06); }\n }\n '.replace(/\s+/g," "),document.head.appendChild(c)})(),(e=>{if("undefined"==typeof document)return;if(K.has(e))return;const t=G.get(e);t&&!J.has(e)&&(Z||(Z=document.getElementById("metona-toast-anim-styles"),Z||(Z=document.createElement("style"),Z.id="metona-toast-anim-styles",document.head.appendChild(Z))),Z.textContent+=((e,t)=>{var n;return`\n @keyframes met-${e}-in {\n from { ${n=t.enter,Object.entries(n).map(([e,t])=>`${e}:${t}`).join(";")}; }\n }\n .met-anim-${e}.met-toast { opacity: 0; }\n .met-anim-${e}.met-toast.met-show {\n animation: met-${e}-in ${t.duration}ms ${t.easing} forwards;\n }\n `})(e,t),J.add(e))})(this.config.animation||"slide");const e=this._getContainer(),{theme:t,c:n,t:o}=this._palette();this._limitToasts(e);const r=document.createElement("div");if(r.className=this._buildClassName(t),r.setAttribute("role","error"===this.type||"warning"===this.type?"alert":"status"),r.setAttribute("aria-live","error"===this.type?"assertive":"polite"),r.dataset.id=this.id,this._applyStyles(r,t,o),this._buildContent(r,n),this.el=r,(this.config.position||"top-right").startsWith("top")?e.insertBefore(r,e.firstChild):e.appendChild(r),ee._registry.set(this.id,this),this._bindEvents(r),this._startTimer(),requestAnimationFrame(()=>{requestAnimationFrame(()=>{r.classList.add("met-show")})}),"function"==typeof this.config.onShow)try{this.config.onShow(this)}catch(e){}return ee.trigger("afterShow",this),this}_getContainer(){const e=this.config.position||"top-right",t=this.config.zIndex||9999,n="rtl"===O(L())?e.replace("left","__TMP__").replace("right","left").replace("__TMP__","right"):e,o=te.get(document.body);if(o&&o.has(n))return o.get(n);te.has(document.body)||te.set(document.body,new Map);const r=document.createElement("div");return r.className=`met-container ${n}`,r.setAttribute("aria-label","Notifications"),r.setAttribute("role","region"),r.style.cssText=`\n display:flex;\n flex-direction:column;\n gap:${this.config.gap||12}px;\n box-sizing:border-box;\n padding:${this.config.offset||24}px;\n max-width:100vw;\n position:fixed;\n z-index:${t};\n pointer-events:none;\n ${{"top-left":"top:0;left:0;align-items:flex-start","top-center":"top:0;left:0;right:0;align-items:center","top-right":"top:0;right:0;align-items:flex-end","bottom-left":"bottom:0;left:0;align-items:flex-start","bottom-center":"bottom:0;left:0;right:0;align-items:center","bottom-right":"bottom:0;right:0;align-items:flex-end"}[n]||"top:0;right:0;align-items:flex-end"}\n `,document.body.appendChild(r),te.get(document.body).set(n,r),r}_limitToasts(e){const t=this.config.max||6,n=Array.from(e.querySelectorAll(".met-toast"));for(;n.length>=t;){const e=n.shift(),t=e?.dataset.id;if(!t)continue;const o=ee._registry.get(t);o?o.close(!0):ee._removeToast&&ee._removeToast(t)}}_buildClassName(e){const t=(n=this.config.animation||"",G.has(n)?this.config.animation:"slide");var n;return["met-toast",`met-${this.type}`,`met-theme-${e}`,`met-anim-${t}`,this.config.closeOnClick||this.config.draggable?"met-clickable":"",this.config.className||""].filter(Boolean).join(" ")}_applyStyles(e,t,n){const o="number"==typeof this.config.width?`${this.config.width}px`:"string"==typeof this.config.width?this.config.width:"360px",r=(t,n)=>e.style.setProperty(t,n,"important");r("position","relative"),r("flex-shrink","0"),r("min-width","240px"),r("max-width","calc(100vw - 48px)"),r("width",o),this.config.style&&Object.keys(this.config.style).length>0&&Object.entries(this.config.style).forEach(([t,n])=>{e.style[t]=n})}_buildContent(e,o){if("function"==typeof this.config.render)return e.innerHTML=this.config.render(this),void(this.barEl=e.querySelector(".met-bar, .met-bar-v"));const r=!1!==this.config.icon&&(this.iconHTML||n[this.type]),i=!1!==this.config.closeButton,s=!1!==this.config.showProgress&&(this.config.duration||0)>0,a=!r&&"default"!==this.type,l=this.title?`${t(this.title)}
`:"",c=this.html?`${this.html}
`:this.message?`${t(this.message)}
`:"",d=r?`${this.iconHTML||n[this.type]}
`:"",h=i?``:"",g=s?"vertical"===this.config.progressDirection?``:``:"",p=a?``:"";e.innerHTML=`\n ${d}\n ${p}\n \n ${l}\n ${c}\n
\n ${h}\n ${g}\n `,this.barEl=e.querySelector(".met-bar, .met-bar-v")}_bindEvents(e){const t=e=>{const t=e.target;if(t.closest(".met-close"))return e.stopPropagation(),void this.close();if(ee.trigger("click",this),!this.config.closeOnClick||t.closest(".met-close"));else{if("function"==typeof this.config.onClick)try{this.config.onClick(this)}catch(e){}this.close()}};if(e.addEventListener("click",t),this._cleanups.push(()=>e.removeEventListener("click",t)),this.config.pauseOnHover&&(this.config.duration||0)>0){const t=()=>{ee.trigger("hover",this),this._pause()},n=()=>{ee.trigger("hover",this),this._resume()};e.addEventListener("mouseenter",t),e.addEventListener("mouseleave",n),this._cleanups.push(()=>{e.removeEventListener("mouseenter",t),e.removeEventListener("mouseleave",n)})}const n=()=>ee.trigger("animationStart",this),o=()=>ee.trigger("animationEnd",this);e.addEventListener("animationstart",n),e.addEventListener("animationend",o),this._cleanups.push(()=>{e.removeEventListener("animationstart",n),e.removeEventListener("animationend",o)}),this.config.draggable&&this._bindDrag(e)}_bindDrag(e){let t=0,n=0,o=0,r=0,i=!1;const s=o=>{o.target.closest(".met-close")||(i=!0,t=o.clientX,n=o.clientY,e.setPointerCapture(o.pointerId),e.style.transition="none",this._pause(),ee.trigger("dragStart",this))},a=s=>{i&&(o=s.clientX-t,r=s.clientY-n,e.style.transform=`translate(${o}px, ${r}px) rotate(${.1*o}deg)`,e.style.opacity=String(Math.max(0,1-Math.abs(o)/200)))},l=t=>{i&&(i=!1,e.releasePointerCapture(t.pointerId),e.style.transition="",Math.abs(o)>120?(e.style.transform=`translate(${2*o}px, ${r}px) rotate(${.2*o}deg)`,e.style.opacity="0",setTimeout(()=>this.close(!0),250)):(e.style.transform="",e.style.opacity="",this._resume()),o=r=0,ee.trigger("dragEnd",this))};e.addEventListener("pointerdown",s),e.addEventListener("pointermove",a),e.addEventListener("pointerup",l),e.addEventListener("pointercancel",l),this._cleanups.push(()=>{e.removeEventListener("pointerdown",s),e.removeEventListener("pointermove",a),e.removeEventListener("pointerup",l),e.removeEventListener("pointercancel",l)})}_startTimer(e=!1){if((this.config.duration||0)<=0)return;e||(this.startedAt=Date.now(),this.remaining=this.config.duration||0,ee.trigger("progressStart",this));const t=()=>{if(!this.paused&&!this.closing){try{const e=Date.now()-this.startedAt;if(this.remaining=Math.max(0,(this.config.duration||0)-e),this.barEl){const e=this.remaining/(this.config.duration||1),t="vertical"===this.config.progressDirection?`scaleY(${e})`:`scaleX(${e})`;this.barEl.style.transform=t}if(this.remaining<=0)return ee.trigger("progressEnd",this),void this.close()}catch(e){if(ee._onError)try{ee._onError({source:"timer",error:e,toast:this})}catch(e){}}this.rafId=requestAnimationFrame(t)}};this.rafId=requestAnimationFrame(t)}_pause(){this.paused||(this.config.duration||0)<=0||(this.paused=!0,null!==this.rafId&&cancelAnimationFrame(this.rafId),this.remaining=Math.max(0,(this.config.duration||0)-(Date.now()-this.startedAt)))}_resume(){this.paused&&(this.paused=!1,this.startedAt=Date.now()-((this.config.duration||0)-this.remaining),this._startTimer(!0))}update(e){if(!ee.trigger("beforeUpdate",this))return this;const n=e.type&&e.type!==this.type;if(e.type&&(this.type=e.type),void 0!==e.title&&(this.title=e.title),void 0!==e.message&&(this.message=e.message),void 0!==e.html&&(this.html=e.html),!this.el)return ee.trigger("afterUpdate",this),this;if(n){if(["met-success","met-error","met-warning","met-info","met-loading","met-default"].forEach(e=>this.el.classList.remove(e)),this.el.classList.add(`met-${this.type}`),this.barEl){const e=s[this.type]||s.default;this.barEl.style.background=e.fg}const e=this.el.querySelector(".met-side");if(e){const t=s[this.type]||s.default;e.style.background=t.fg}}const o=this.el.querySelector(".met-content");if(o){const e=this.title?`${t(this.title)}
`:"",n=this.html?`${this.html}
`:this.message?`${t(this.message)}
`:"";o.innerHTML=`${e}${n}`}if(this.config.resetTimerOnUpdate&&(this.config.duration||0)>0&&(null!==this.rafId&&cancelAnimationFrame(this.rafId),this.startedAt=Date.now(),this.remaining=this.config.duration||0,this._startTimer()),"function"==typeof this.config.onUpdate)try{this.config.onUpdate(this)}catch(e){}return ee.trigger("afterUpdate",this),this}updatePosition(e){if(!e||!this.el)return this;const t=this.el.parentNode;this.config.position=e;const n=this._getContainer();return t===n||(t&&this.el.parentNode===t&&t.removeChild(this.el),e.startsWith("top")?n.insertBefore(this.el,n.firstChild):n.appendChild(this.el)),this}remove(){null!==this.rafId&&(cancelAnimationFrame(this.rafId),this.rafId=null),this._cleanups.forEach(e=>{try{e()}catch(e){}}),this._cleanups=[],this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el),this.el=null,ee._registry.delete(this.id),ee._removeToast&&ee._removeToast(this.id)}close(e=!1){if(this.closing)return;if(!ee.trigger("beforeClose",this))return;this.closing=!0,null!==this.rafId&&cancelAnimationFrame(this.rafId),this._cleanups.forEach(e=>{try{e()}catch(e){}}),this._cleanups=[];const t=this.el;if(!t)return void(ee._removeToast&&ee._removeToast(this.id));const n=t.parentNode;if(n&&!e){const e=t.getBoundingClientRect(),o=n.getBoundingClientRect();t.style.position="absolute",t.style.top=e.top-o.top+"px",t.style.left=e.left-o.left+"px",t.style.width=e.width+"px",t.style.margin="0"}t.classList.add("met-leaving"),t.classList.remove("met-show");const o=this.config.position||"top-right",r="rtl"===O(L());let i="scale(.96)";i=o.includes("right")?r?"translateX(-120%)":"translateX(120%)":o.includes("left")?r?"translateX(120%)":"translateX(-120%)":o.startsWith("top")?"translateY(-20px)":"translateY(20px)",t.style.transform=i,t.style.opacity="0",setTimeout(()=>this._destroy(),e?0:300)}_destroy(){if(this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el),this.el=null,"function"==typeof this.config.onClose)try{this.config.onClose(this)}catch(e){}ee.trigger("afterClose",this),ee._registry.delete(this.id),ee._removeToast&&ee._removeToast(this.id)}}ee._hooks=new Map,ee._registry=new Map,ee._onError=null,ee._removeToast=null;const te=new Map,ne=e=>`\n \n ${e}\n
`,oe=e=>{const n=e.confirmText||z("confirm"),o=e.cancelText||z("cancel"),r=e.confirmColor||"#10b981",i=e.cancelColor||"#6b7280";return ne(`\n \n \n `)},re=e=>{const n=e.submitText||z("confirm"),o=e.cancelText||z("cancel"),r=e.submitColor||"#3b82f6",i=e.cancelColor||"#6b7280";return`\n \n ${ne(`\n \n \n `)}\n `},ie=e=>`\n \n 0%
\n `,se=e=>{if(!Array.isArray(e)||0===e.length)return"";const n=e.map((e,n)=>``).join("");return ne(n)};class ae{constructor(){this.plugins=new Map,this.initialized=!1}register(e,t){if(this.plugins.has(e))return this;if(!t||"object"!=typeof t||!t.name)return this;const n={...t,installed:!1,enabled:!0};if(n.name||(n.name=e),this.plugins.set(e,n),n.install)try{n.install(this),n.installed=!0}catch(e){}return this}unregister(e){const t=this.plugins.get(e);if(!t)return this;if(t.uninstall)try{t.uninstall(this)}catch(e){}return this.plugins.delete(e),this}get(e){return this.plugins.get(e)||null}has(e){return this.plugins.has(e)}getAll(){return Array.from(this.plugins.values())}getNames(){return Array.from(this.plugins.keys())}enable(e){const t=this.plugins.get(e);return t&&(t.enabled=!0),this}disable(e){const t=this.plugins.get(e);return t&&(t.enabled=!1),this}isEnabled(e){const t=this.plugins.get(e);return!!t&&!!t.enabled}destroy(){this.plugins.forEach(e=>{if(e.destroy)try{e.destroy(this)}catch(e){}}),this.plugins.clear()}}const le={keyboard:{name:"keyboard",version:"1.0.0",description:"ESC 关闭所有 Toast",_handler:null,install(){if("undefined"==typeof document)return;const e=e=>{"Escape"===e.key&&document.querySelectorAll(".met-toast .met-close").forEach(e=>{try{e.click()}catch(e){}})};this._handler=e,document.addEventListener("keydown",e)},uninstall(){const e=this._handler;e&&"undefined"!=typeof document&&(document.removeEventListener("keydown",e),this._handler=null)}},persistence:{name:"persistence",version:"1.0.0",description:"自动持久化配置到 localStorage",storageKey:"metona-toast-config",install(){if("undefined"!=typeof localStorage)try{const e=this.storageKey,t=localStorage.getItem(e);return t?JSON.parse(t):null}catch(e){return null}return null},save(e){if("undefined"!=typeof localStorage)try{const t=this.storageKey;localStorage.setItem(t,JSON.stringify(e))}catch(e){}},uninstall(){if("undefined"!=typeof localStorage)try{const e=this.storageKey;localStorage.removeItem(e)}catch(e){}}},accessibility:{name:"accessibility",version:"1.0.0",description:"通过屏幕阅读器朗读 Toast 内容",announce(e){if("undefined"==typeof document)return;const t=document.createElement("div");t.setAttribute("aria-live","assertive"),t.setAttribute("aria-atomic","true"),t.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;";const n=z(e.type)||e.type;t.textContent=`${n}: ${e.title||""} ${e.message||""}`,document.body.appendChild(t),setTimeout(()=>{t.parentNode&&t.parentNode.removeChild(t)},3e3)}}},ce={createManager:()=>new ae,register:(e,t)=>de.register(e,t),unregister:e=>de.unregister(e),get:e=>de.get(e),has:e=>de.has(e),getAll:()=>de.getAll(),getNames:()=>de.getNames(),enable:e=>de.enable(e),disable:e=>de.disable(e),isEnabled:e=>de.isEnabled(e),getPreset:e=>le[e]||null,getAllPresets:()=>({...le}),createPlugin:e=>({name:e.name||"custom",version:e.version||"1.0.0",description:e.description||"",hooks:e.hooks||{},install:e.install||void 0,uninstall:e.uninstall||void 0,...e}),validatePlugin(e){const t=[];return e&&"object"==typeof e||t.push("Plugin must be an object"),e.name||e.version||t.push("Plugin must have a name or version"),{valid:0===t.length,errors:t}}},de=new ae,he=(e,t="default")=>{const[n,o]=e;return"string"==typeof n?{...o||{},type:o?.type||t,message:n}:n&&"object"==typeof n?{...n,type:n.type||t}:{type:t,message:""}},ge={_toasts:new Map,_config:{...i},version:r,configure(e){return e&&"object"==typeof e?(Object.assign(this._config,e),e.theme&&y(e.theme),e.locale&&E(e.locale),ee.trigger("configChange"),this):this},_emit(e){const t={...this._config,...e};t.content&&!t.message&&(t.message=t.content);const n=new ee(t);return n.create(),this._toasts.set(n.id,n),n},_remove(e){this._toasts.delete(e)},find(e){if(e)return this._toasts.get(e)},show(e,t={}){const n=he([e,t],"default");return this._emit(n)},success(e,t={}){const n=he([e,t],"success");return this._emit(n)},error(e,t={}){const n=he([e,t],"error");return this._emit(n)},warning(e,t={}){const n=he([e,t],"warning");return this._emit(n)},info(e,t={}){const n=he([e,t],"info");return this._emit(n)},loading(e,t={}){const n=he([e,t],"loading");n.duration=0,n.closeButton=!1,n.showProgress=!1;const o=this._emit(n);return{id:o.id,success:(e,t={})=>this._resolve(o,"success",e||z("success"),t),error:(e,t={})=>this._resolve(o,"error",e||z("error"),t),info:(e,t={})=>this._resolve(o,"info",e||z("info"),t),warning:(e,t={})=>this._resolve(o,"warning",e||z("warning"),t),update:e=>(o.update(e),this),dismiss:()=>o.close()}},promise(e,t={}){if(!e||"function"!=typeof e.then)return Promise.reject(new Error("Invalid promise"));const n=t.loading||z("loading"),o=t.success||z("success"),r=t.error||z("error"),i=this.loading(n);return Promise.resolve(e).then(e=>(i.success(o),e)).catch(e=>{throw i.error(r),e})},_resolve(e,t,n,o){const r=e.id,i=this._toasts.get(r);if(!i)return null;const s=i.config.position;return i.close(),this._emit({...o,type:t,message:n,position:s})},confirm(e,t={}){return"string"!=typeof e?Promise.resolve(!1):new Promise(n=>{let o=!1;const r=e=>{o||(o=!0,clearTimeout(i),n(e))},i=setTimeout(()=>r(!1),1e4),s=this._emit({...t,type:t.type||"warning",message:e,duration:0,closeButton:!1,closeOnClick:!1,draggable:!1,html:oe(t)});setTimeout(()=>{const e=s.el?.querySelector(".met-confirm-btn"),t=s.el?.querySelector(".met-cancel-btn");e&&e.addEventListener("click",()=>{s.close(),r(!0)}),t&&t.addEventListener("click",()=>{s.close(),r(!1)})},0)})},prompt(e,t={}){return"string"!=typeof e?Promise.resolve(null):new Promise(n=>{let o=!1;const r=e=>{o||(o=!0,clearTimeout(i),n(e))},i=setTimeout(()=>r(null),1e4),s=this._emit({...t,type:t.type||"info",message:e,duration:0,closeButton:!1,closeOnClick:!1,draggable:!1,html:re(t)});setTimeout(()=>{const e=s.el?.querySelector(".met-input"),t=s.el?.querySelector(".met-submit-btn"),n=s.el?.querySelector(".met-cancel-btn");e&&(e.focus(),e.addEventListener("keydown",t=>{"Enter"===t.key&&(s.close(),r(e.value))})),t&&t.addEventListener("click",()=>{s.close(),r(e?.value||null)}),n&&n.addEventListener("click",()=>{s.close(),r(null)})},0)})},progress(e,t={}){const n=he([e,t],"info");n.duration=0,n.closeButton=!1,n.showProgress=!1;const o=this._emit({...n,html:ie(t)});return{id:o.id,setProgress(e){const t=o.el?.querySelector(".met-progress-fill"),n=o.el?.querySelector(".met-progress-text");t&&(t.style.width=`${Math.min(100,Math.max(0,e))}%`),n&&(n.textContent=`${Math.round(e)}%`)},complete(e){this.setProgress(100),setTimeout(()=>{o.update({type:"success",message:e||z("success"),html:""}),setTimeout(()=>o.close(),1e3)},300)},error(e){o.update({type:"error",message:e||z("error"),html:""}),setTimeout(()=>o.close(),2e3)},dismiss(){o.close()}}},countdown(e,t=10,n={}){if("string"!=typeof e)return{id:"",cancel:()=>{},pause:()=>{},resume:()=>{}};let o=Math.max(1,parseInt(String(t))||10),r=null;const i=this._emit({...n,type:n.type||"warning",message:e.replace(/\{seconds\}/g,String(o)),duration:0,closeButton:!0,showProgress:!1}),s=()=>{if(o--,o<=0){if(null!==r&&clearInterval(r),i.close(),"function"==typeof n.onComplete)try{n.onComplete()}catch(e){}}else i.update({message:e.replace(/\{seconds\}/g,String(o))})};return r=setInterval(s,1e3),{id:i.id,cancel(){null!==r&&clearInterval(r),i.close()},pause(){null!==r&&clearInterval(r)},resume(){null!==r&&clearInterval(r),r=setInterval(s,1e3)}}},action(e,t=[],n={}){const o=he([e,n],"info");o.duration=n.duration??0,o.closeButton=n.closeButton??!0;const r=this._emit({...o,html:(o.html||"")+se(t)});return Array.isArray(t)&&setTimeout(()=>{t.forEach((e,t)=>{const n=r.el?.querySelector(`.met-action-btn-${t}`);n&&"function"==typeof e.onClick&&n.addEventListener("click",()=>{try{e.onClick(r)}catch(e){}!1!==e.close&&r.close()})})},0),{id:r.id,toast:r,dismiss:()=>r.close()}},queue(e,t={}){if(!Array.isArray(e)){const e=Promise.resolve();return{then:t=>e.then(t),catch:t=>e.catch(t),cancel:()=>{}}}let n=!1;const o=new Promise(o=>{let r=0;const i=t.delay||1e3,s=t.onClose,a=()=>{if(n||r>=e.length)return void o();const l=e[r];r++;const c="string"==typeof l?l:l?.message||"",d="object"==typeof l&&null!==l?l:{},h=d.onClose;this._emit({...t,...d,message:c,duration:d.duration||t.duration||3e3,onClose:e=>{if("function"==typeof h)try{h(e)}catch(e){}if("function"==typeof s)try{s(e)}catch(e){}setTimeout(a,i)}})};a()});return{then:(e,t)=>o.then(e,t),catch:e=>o.catch(e),cancel:()=>{n=!0}}},stack(e,t={}){Array.isArray(e)&&e.forEach((e,n)=>{setTimeout(()=>{const n="string"==typeof e?e:e?.message||"";this._emit({...t,..."object"==typeof e&&null!==e?e:{},message:n})},n*(t.stagger||100))})},dismiss(e){if(e){const t=this._toasts.get(e);return void(t&&t.close())}this._toasts.forEach(e=>e.close())},removeToast(e){if(!e)return;const t=this._toasts.get(e);t&&t.remove()},clear(e){this._toasts.forEach(t=>{e&&t.config.position!==e||t.close()})},getAll(){return new Map(this._toasts)},count(){return this._toasts.size},group(e){const t=this,n={_group:e};return["show","success","error","warning","info","loading","action"].forEach(o=>{n[o]=(...n)=>{const r=n[n.length-1],i="object"==typeof r&&null!==r&&!Array.isArray(r),s=t;return i&&1===n.length?s[o]({...r,group:e}):i?(n.pop(),s[o](...n,{...r,group:e})):s[o](...n,{group:e})}}),n.dismiss=()=>t.dismissGroup(e),n.count=()=>t._groupCount(e),n},dismissGroup(e){this._toasts.forEach(t=>{t.group===e&&t.close()})},_groupCount(e){let t=0;return this._toasts.forEach(n=>{n.group===e&&t++}),t},getToasts(){return Array.from(this._toasts.values())},hasToasts(){return this._toasts.size>0},getToast(e){return e&&this._toasts.get(e)||null},closeAll(){this._toasts.forEach(e=>e.close())},clearAll(){this._toasts.forEach(e=>e.close())},pauseAll(){this._toasts.forEach(e=>e._pause())},resumeAll(){this._toasts.forEach(e=>e._resume())},updateAll(e){e&&"object"==typeof e&&this._toasts.forEach(t=>t.update(e))},findToasts(e){return"function"!=typeof e?[]:Array.from(this._toasts.values()).filter(e)},findByType(e){return this.findToasts(t=>t.type===e)},findByPosition(e){return this.findToasts(t=>t.config.position===e)},init(e={}){return ee.trigger("beforeInit"),this._destroyed=!1,e.config&&this.configure(e.config),e.theme&&this.themes&&this.themes.switchTheme(e.theme),e.locale&&this.i18n&&this.i18n.switchLocale(e.locale),e.plugins&&Array.isArray(e.plugins)&&e.plugins.forEach(e=>{this.use(e)}),ee.trigger("afterInit"),this},getStatus(){return{version:r,toasts:this._toasts.size,theme:this.themes?.getCurrentTheme?.()||"auto",locale:this.i18n?.getCurrentLocale?.()||"zh-CN",plugins:this.plugins?.getNames?.()||[],animations:this.animations?.getActiveCount?.()||0}},getConfig(){return{...this._config}},updateConfig(e){return e&&"object"==typeof e&&(Object.assign(this._config,e),ee.trigger("configChange")),this},resetConfig(){return Object.keys(this._config).forEach(e=>delete this._config[e]),Object.assign(this._config,i),ee.trigger("configChange"),this},use(e,t={}){if("string"==typeof e){const n=le[e];if(!n)return this;if(this.plugins.register(e,{...n,...t}),"accessibility"===e&&ee.on("afterShow",e=>{const t=n;"function"==typeof t.announce&&t.announce(e)}),"persistence"===e){const e="function"==typeof n.install?n.install(this.plugins):null;e&&this.configure(e),ee.on("afterClose",()=>{const e=n;"function"==typeof e.save&&e.save(this.getConfig())})}}else e&&"object"==typeof e&&this.plugins.register(e.name||"custom",{...e,...t});return this},destroy(){this._destroyed||(this._destroyed=!0,ee.trigger("beforeDestroy"),this.dismiss(),this.plugins&&"function"==typeof this.plugins.destroy&&this.plugins.destroy(),this.themes&&("function"==typeof this.themes.clearThemeListeners&&this.themes.clearThemeListeners(),"function"==typeof this.themes.unwatchSystemTheme&&this.themes.unwatchSystemTheme()),this.i18n&&"function"==typeof this.i18n.clearLocaleListeners&&this.i18n.clearLocaleListeners(),this.animations&&"function"==typeof this.animations.destroy&&this.animations.destroy(),"undefined"!=typeof document&&(document.querySelectorAll(".met-container").forEach(e=>{e.parentNode&&e.parentNode.removeChild(e)}),["metona-toast-styles","metona-toast-theme-css","metona-toast-custom-styles","metona-toast-anim-styles"].forEach(e=>{const t=document.getElementById(e);t&&t.parentNode&&t.parentNode.removeChild(t)})),this._toasts.clear(),te.clear(),ee._registry.clear(),ee.trigger("afterDestroy"),ee._hooks.clear())},animations:null,themes:null,i18n:null,plugins:null,presetPlugins:{}};ee.setCallbacks({onError:e=>{const t=ge._config.onError;if("function"==typeof t)try{t(e)}catch(e){}},removeToast:e=>{ge._toasts.delete(e)}});const pe={...ge,version:r,animations:Q,themes:_,i18n:W,plugins:ce,presetPlugins:le};if("function"==typeof _.initTheme&&_.initTheme(),"function"==typeof W.initI18n&&W.initI18n(),"function"==typeof _.addThemeListener&&_.addThemeListener(()=>ee.trigger("themeChange")),"function"==typeof W.addLocaleListener&&W.addLocaleListener(()=>ee.trigger("localeChange")),"undefined"!=typeof window){window.MeToast=pe,window.Met=pe;const e=e=>{try{new Notification(e.title||e.type,{body:e.message})}catch(e){}};pe._notify=t=>{"undefined"!=typeof Notification&&"denied"!==Notification.permission&&document.hidden&&("default"!==Notification.permission?e(t):Notification.requestPermission().then(n=>{"granted"===n&&e(t)}))},ee.on("afterShow",e=>{e.config.notifyWhenHidden&&pe._notify(e)})}e.MeToast=pe,e.Met=pe,e.Toast=ee,e.VERSION=r,e.default=pe,e.meToast=pe,Object.defineProperty(e,"__esModule",{value:!0})});
+!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).MeToast={})}(this,function(e){"use strict";const t=e=>{if("undefined"==typeof document)return String(null==e?"":e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'");const t=document.createElement("div");return t.textContent=String(null==e?"":e),t.innerHTML},n={success:'',error:'',warning:'',info:'',loading:'',close:'',check:'',x:'',alert:'',question:'',star:'',heart:'',bell:'',mail:'',settings:'',user:'',home:'',search:'',plus:'',minus:'',edit:'',trash:'',download:'',upload:'',share:'',link:'',external:'',clock:'',calendar:'',map:'',compass:'',globe:'',wifi:'',cloud:'',sun:'',moon:'',zap:'',activity:'',cpu:'',database:'',server:'',terminal:'',code:'',git:'',package:'',layers:'',grid:'',list:'',filter:'',sort:'',refresh:'',sync:'',power:'',battery:'',bluetooth:'',volume:'',mic:'',camera:'',image:'',video:'',music:'',file:'',folder:'',clipboard:'',save:'',print:'',eye:'',eyeOff:'',lock:'',unlock:'',shield:'',key:'',flag:'',bookmark:'',tag:'',gift:'',award:'',target:'',crosshair:'',move:'',maximize:'',minimize:'',copy:'',cut:'',paste:'',rotateCw:'',rotateCcw:'',zoomIn:'',zoomOut:'',crop:'',sliders:'',toggleLeft:'',toggleRight:'',checkCircle:'',xCircle:'',alertCircle:'',infoCircle:'',helpCircle:'',alertTriangle:'',checkSquare:'',square:'',circle:'',triangle:'',hexagon:'',octagon:'',pentagon:'',diamond:''},o={"zh-CN":{close:"关闭",loading:"加载中...",success:"操作成功",error:"操作失败",warning:"警告",info:"信息",confirm:"确认",cancel:"取消",yes:"是",no:"否",ok:"确定",retry:"重试",undo:"撤销",redo:"重做",save:"保存",delete:"删除",edit:"编辑",add:"添加",remove:"移除",search:"搜索",filter:"筛选",sort:"排序",refresh:"刷新",sync:"同步",upload:"上传",download:"下载",share:"分享",copy:"复制",cut:"剪切",paste:"粘贴",print:"打印",export:"导出",import:"导入",settings:"设置",help:"帮助",about:"关于",version:"版本",language:"语言",theme:"主题",dark:"暗色",light:"亮色",auto:"自动",notifications:"通知",enable:"启用",disable:"禁用",on:"开启",off:"关闭",max:"最大",min:"最小",expand:"展开",collapse:"折叠",fullscreen:"全屏",exitFullscreen:"退出全屏",zoomIn:"放大",zoomOut:"缩小",reset:"重置",apply:"应用",submit:"提交",send:"发送",receive:"接收",connect:"连接",disconnect:"断开",start:"开始",stop:"停止",pause:"暂停",resume:"继续",next:"下一个",previous:"上一个",first:"第一个",last:"最后一个",back:"返回",forward:"前进",home:"首页",menu:"菜单",more:"更多",less:"更少",show:"显示",hide:"隐藏",visible:"可见",hidden:"隐藏",enabled:"已启用",disabled:"已禁用",active:"活跃",inactive:"非活跃",online:"在线",offline:"离线",connected:"已连接",disconnected:"已断开",loaded:"已加载",saving:"保存中",saved:"已保存",deleting:"删除中",deleted:"已删除",uploading:"上传中",uploaded:"已上传",downloading:"下载中",downloaded:"已下载",processing:"处理中",processed:"已处理",syncing:"同步中",synced:"已同步",sending:"发送中",sent:"已发送",receiving:"接收中",received:"已接收",connecting:"连接中",question:"问题",feedback:"反馈",report:"报告",bug:"错误",feature:"功能",improvement:"改进",suggestion:"建议",request:"请求",response:"响应",status:"状态",progress:"进度",complete:"完成",incomplete:"未完成",pending:"待处理",failed:"失败",cancelled:"已取消",timeout:"超时",expired:"已过期",invalid:"无效",valid:"有效",required:"必填",optional:"可选",allowed:"允许",denied:"拒绝",approved:"已批准",rejected:"已拒绝",accepted:"已接受",declined:"已拒绝",confirmed:"已确认",unconfirmed:"未确认",verified:"已验证",unverified:"未验证",authenticated:"已认证",unauthenticated:"未认证",authorized:"已授权",unauthorized:"未授权",public:"公开",private:"私有",protected:"受保护",internal:"内部",external:"外部",local:"本地",remote:"远程",global:"全局",system:"系统",user:"用户",admin:"管理员",moderator:"版主",guest:"访客",member:"成员",owner:"所有者",creator:"创建者",editor:"编辑者",viewer:"查看者",subscriber:"订阅者",follower:"关注者",following:"关注中",friend:"朋友",contact:"联系人",group:"群组",team:"团队",organization:"组织",company:"公司",department:"部门",project:"项目",task:"任务",issue:"问题",ticket:"工单",message:"消息",notification:"通知",alert:"警报",reminder:"提醒",event:"事件",activity:"活动",log:"日志",analytics:"分析",statistics:"统计",metrics:"指标",performance:"性能",security:"安全",privacy:"隐私",compliance:"合规",policy:"政策",terms:"条款",conditions:"条件",agreement:"协议",contract:"合同",license:"许可证",copyright:"版权",trademark:"商标",patent:"专利",tradeSecret:"商业秘密",confidential:"机密",sensitive:"敏感",critical:"关键",important:"重要",urgent:"紧急",high:"高",medium:"中",low:"低",none:"无",all:"全部",any:"任何",some:"一些",each:"每个",every:"每个",both:"两者",neither:"两者都不",either:"任一",other:"其他",another:"另一个",this:"这个",that:"那个",these:"这些",those:"那些",here:"这里",there:"那里",where:"哪里",when:"何时",why:"为什么",how:"如何",what:"什么",who:"谁",which:"哪个",whose:"谁的",whom:"谁"},"en-US":{close:"Close",loading:"Loading...",success:"Success",error:"Error",warning:"Warning",info:"Info",confirm:"Confirm",cancel:"Cancel",yes:"Yes",no:"No",ok:"OK",retry:"Retry",undo:"Undo",redo:"Redo",save:"Save",delete:"Delete",edit:"Edit",add:"Add",remove:"Remove",search:"Search",filter:"Filter",sort:"Sort",refresh:"Refresh",sync:"Sync",upload:"Upload",download:"Download",share:"Share",copy:"Copy",cut:"Cut",paste:"Paste",print:"Print",export:"Export",import:"Import",settings:"Settings",help:"Help",about:"About",version:"Version",language:"Language",theme:"Theme",dark:"Dark",light:"Light",auto:"Auto",notifications:"Notifications",enable:"Enable",disable:"Disable",on:"On",off:"Off",max:"Max",min:"Min",expand:"Expand",collapse:"Collapse",fullscreen:"Fullscreen",exitFullscreen:"Exit Fullscreen",zoomIn:"Zoom In",zoomOut:"Zoom Out",reset:"Reset",apply:"Apply",submit:"Submit",send:"Send",receive:"Receive",connect:"Connect",disconnect:"Disconnect",start:"Start",stop:"Stop",pause:"Pause",resume:"Resume",next:"Next",previous:"Previous",first:"First",last:"Last",back:"Back",forward:"Forward",home:"Home",menu:"Menu",more:"More",less:"Less",show:"Show",hide:"Hide",visible:"Visible",hidden:"Hidden",enabled:"Enabled",disabled:"Disabled",active:"Active",inactive:"Inactive",online:"Online",offline:"Offline",connected:"Connected",disconnected:"Disconnected",loaded:"Loaded",saving:"Saving",saved:"Saved",deleting:"Deleting",deleted:"Deleted",uploading:"Uploading",uploaded:"Uploaded",downloading:"Downloading",downloaded:"Downloaded",processing:"Processing",processed:"Processed",syncing:"Syncing",synced:"Synced",sending:"Sending",sent:"Sent",receiving:"Receiving",received:"Received",connecting:"Connecting",question:"Question",feedback:"Feedback",report:"Report",bug:"Bug",feature:"Feature",improvement:"Improvement",suggestion:"Suggestion",request:"Request",response:"Response",status:"Status",progress:"Progress",complete:"Complete",incomplete:"Incomplete",pending:"Pending",failed:"Failed",cancelled:"Cancelled",timeout:"Timeout",expired:"Expired",invalid:"Invalid",valid:"Valid",required:"Required",optional:"Optional",allowed:"Allowed",denied:"Denied",approved:"Approved",rejected:"Rejected",accepted:"Accepted",declined:"Declined",confirmed:"Confirmed",unconfirmed:"Unconfirmed",verified:"Verified",unverified:"Unverified",authenticated:"Authenticated",unauthenticated:"Unauthenticated",authorized:"Authorized",unauthorized:"Unauthorized",public:"Public",private:"Private",protected:"Protected",internal:"Internal",external:"External",local:"Local",remote:"Remote",global:"Global",system:"System",user:"User",admin:"Admin",moderator:"Moderator",guest:"Guest",member:"Member",owner:"Owner",creator:"Creator",editor:"Editor",viewer:"Viewer",subscriber:"Subscriber",follower:"Follower",following:"Following",friend:"Friend",contact:"Contact",group:"Group",team:"Team",organization:"Organization",company:"Company",department:"Department",project:"Project",task:"Task",issue:"Issue",ticket:"Ticket",message:"Message",notification:"Notification",alert:"Alert",reminder:"Reminder",event:"Event",activity:"Activity",log:"Log",analytics:"Analytics",statistics:"Statistics",metrics:"Metrics",performance:"Performance",security:"Security",privacy:"Privacy",compliance:"Compliance",policy:"Policy",terms:"Terms",conditions:"Conditions",agreement:"Agreement",contract:"Contract",license:"License",copyright:"Copyright",trademark:"Trademark",patent:"Patent",tradeSecret:"Trade Secret",confidential:"Confidential",sensitive:"Sensitive",critical:"Critical",important:"Important",urgent:"Urgent",high:"High",medium:"Medium",low:"Low",none:"None",all:"All",any:"Any",some:"Some",each:"Each",every:"Every",both:"Both",neither:"Neither",either:"Either",other:"Other",another:"Another",this:"This",that:"That",these:"These",those:"Those",here:"Here",there:"There",where:"Where",when:"When",why:"Why",how:"How",what:"What",who:"Who",which:"Which",whose:"Whose",whom:"Whom"}},r="0.4.0",i=Object.freeze({position:"top-right",duration:4e3,max:6,gap:12,offset:24,pauseOnHover:!0,closeOnClick:!0,draggable:!0,dragThreshold:120,showProgress:!0,progressDirection:"horizontal",icon:!0,closeButton:!0,theme:"auto",animation:"slide",zIndex:9999,width:360,className:"",style:{},onShow:null,onBeforeShow:null,onClose:null,onClick:null,onUpdate:null,resetTimerOnUpdate:!1,notifyWhenHidden:!1,onError:null,locale:"zh-CN",plugins:[]}),s={success:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},error:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},warning:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},info:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},loading:{fg:"#6366f1",bg:"rgba(99, 102, 241, 0.1)"},default:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},check:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},x:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},alert:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},question:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},star:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},heart:{fg:"#ec4899",bg:"rgba(236, 72, 153, 0.1)"},bell:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},mail:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},settings:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},user:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},home:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},search:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},plus:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},minus:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},edit:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},trash:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},download:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},upload:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},share:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},link:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},external:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},clock:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},calendar:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},map:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},compass:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},globe:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},wifi:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},cloud:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},sun:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},moon:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},zap:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},activity:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},cpu:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},database:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},server:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},terminal:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},code:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},git:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},package:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},layers:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},grid:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},list:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},filter:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},sort:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},refresh:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},sync:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},power:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},battery:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},bluetooth:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},volume:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},mic:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},camera:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},image:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},video:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},music:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},file:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},folder:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},clipboard:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},save:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},print:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},eye:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},eyeOff:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},lock:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},unlock:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},shield:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},key:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},flag:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},bookmark:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},tag:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},gift:{fg:"#ec4899",bg:"rgba(236, 72, 153, 0.1)"},award:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},target:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},crosshair:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},move:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},maximize:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},minimize:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},copy:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},cut:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},paste:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},rotateCw:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},rotateCcw:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},zoomIn:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},zoomOut:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},crop:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},sliders:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},toggleLeft:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},toggleRight:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},checkCircle:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},xCircle:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},alertCircle:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},infoCircle:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},helpCircle:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},alertTriangle:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},checkSquare:{fg:"#10b981",bg:"rgba(16, 185, 129, 0.1)"},square:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},circle:{fg:"#6b7280",bg:"rgba(107, 114, 128, 0.1)"},triangle:{fg:"#f59e0b",bg:"rgba(245, 158, 11, 0.1)"},hexagon:{fg:"#3b82f6",bg:"rgba(59, 130, 246, 0.1)"},octagon:{fg:"#ef4444",bg:"rgba(239, 68, 68, 0.1)"},pentagon:{fg:"#8b5cf6",bg:"rgba(139, 92, 246, 0.1)"},diamond:{fg:"#ec4899",bg:"rgba(236, 72, 153, 0.1)"}},a={slide:{enter:{transform:"translateX(80px)",opacity:"0"},leave:{transform:"translateX(120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},fade:{enter:{opacity:"0",filter:"blur(3px)"},leave:{opacity:"0",filter:"blur(3px)"},duration:500,easing:"ease"},scale:{enter:{transform:"scale(0.55)",opacity:"0"},leave:{transform:"scale(0.55)",opacity:"0"},duration:450,easing:"cubic-bezier(0.34, 1.56, 0.64, 1)"},bounce:{enter:{transform:"translateY(-80px)",opacity:"0"},leave:{transform:"translateY(20px)",opacity:"0"},duration:650,easing:"ease"},flip:{enter:{transform:"perspective(500px) rotateX(-90deg)",opacity:"0"},leave:{transform:"perspective(500px) rotateX(90deg)",opacity:"0"},duration:500,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},rotate:{enter:{transform:"rotate(-25deg) scale(0.6)",opacity:"0"},leave:{transform:"rotate(25deg) scale(0.6)",opacity:"0"},duration:500,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},zoom:{enter:{transform:"scale(0.1)",opacity:"0"},leave:{transform:"scale(0.1)",opacity:"0"},duration:500,easing:"cubic-bezier(0.34, 1.56, 0.64, 1)"},slideUp:{enter:{transform:"translateY(60px)",opacity:"0"},leave:{transform:"translateY(-120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},slideDown:{enter:{transform:"translateY(-60px)",opacity:"0"},leave:{transform:"translateY(120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},slideLeft:{enter:{transform:"translateX(-90px)",opacity:"0"},leave:{transform:"translateX(120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"},slideRight:{enter:{transform:"translateX(90px)",opacity:"0"},leave:{transform:"translateX(-120%)",opacity:"0"},duration:400,easing:"cubic-bezier(0.25, 0.46, 0.45, 0.94)"}},l={light:{bg:"rgba(255, 255, 255, 0.96)",text:"#1f2937",border:"rgba(0, 0, 0, 0.06)",shadow:"0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)",hoverShadow:"0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)",progressBg:"rgba(0, 0, 0, 0.06)",closeHoverBg:"rgba(0, 0, 0, 0.06)"},dark:{bg:"rgba(28, 32, 40, 0.94)",text:"#e6e8eb",border:"rgba(255, 255, 255, 0.08)",shadow:"0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4)",hoverShadow:"0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4)",progressBg:"rgba(255, 255, 255, 0.08)",closeHoverBg:"rgba(255, 255, 255, 0.08)"},auto:{bg:"rgba(255, 255, 255, 0.96)",text:"#1f2937",border:"rgba(0, 0, 0, 0.06)",shadow:"0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)",hoverShadow:"0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)",progressBg:"rgba(0, 0, 0, 0.06)",closeHoverBg:"rgba(0, 0, 0, 0.06)"},warm:{bg:"rgba(255, 251, 235, 0.96)",text:"#78350f",border:"rgba(245, 158, 11, 0.2)",shadow:"0 10px 36px -10px rgba(245, 158, 11, 0.18), 0 4px 14px -4px rgba(245, 158, 11, 0.08)",hoverShadow:"0 14px 48px -10px rgba(245, 158, 11, 0.22), 0 6px 18px -4px rgba(245, 158, 11, 0.10)",progressBg:"rgba(245, 158, 11, 0.1)",closeHoverBg:"rgba(245, 158, 11, 0.1)"}};let c=null,d="auto";const h=new Set;let g=null,p=null;const u=()=>"undefined"==typeof window?"light":"undefined"!=typeof window&&"function"==typeof window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",m=e=>"auto"===e?u():e,f=e=>{const t=m(e);return l[t]||l.light},b=e=>{d=e;const t=m(e);if("undefined"!=typeof document){document.documentElement.setAttribute("data-met-theme",t),document.documentElement.classList.remove("met-theme-light","met-theme-dark","met-theme-auto"),document.documentElement.classList.add(`met-theme-${t}`);const n=f(e);y(n)}B(e,t)},y=e=>{if("undefined"==typeof document)return;const t=document.documentElement;t.style.setProperty("--met-bg",e.bg),t.style.setProperty("--met-text",e.text),t.style.setProperty("--met-border",e.border),t.style.setProperty("--met-shadow",e.shadow),t.style.setProperty("--met-hover-shadow",e.hoverShadow),t.style.setProperty("--met-progress-bg",e.progressBg),t.style.setProperty("--met-close-hover-bg",e.closeHoverBg),t.style.setProperty("--met-success","#10b981"),t.style.setProperty("--met-error","#ef4444"),t.style.setProperty("--met-warning","#f59e0b"),t.style.setProperty("--met-info","#3b82f6"),t.style.setProperty("--met-loading","#6366f1")},x=()=>m(d),v=e=>{b(e),w(e)},w=e=>{if("undefined"!=typeof localStorage)try{localStorage.setItem("metona-toast-theme",e)}catch(e){}},k=()=>{if("undefined"!=typeof localStorage)try{return localStorage.getItem("metona-toast-theme")||"auto"}catch(e){}return"auto"},C=()=>{"undefined"!=typeof window&&window.matchMedia&&(g&&p&&g.removeEventListener("change",p),g=window.matchMedia("(prefers-color-scheme: dark)"),p=()=>{"auto"===d&&b("auto")},g.addEventListener("change",p))},B=(e,t)=>{h.forEach(n=>{try{n(e,t)}catch(e){}})},j=e=>{const t=f(e);return`\n .met-theme-${m(e)} {\n --met-bg: ${t.bg};\n --met-text: ${t.text};\n --met-border: ${t.border};\n --met-shadow: ${t.shadow};\n --met-hover-shadow: ${t.hoverShadow};\n --met-progress-bg: ${t.progressBg};\n --met-close-hover-bg: ${t.closeHoverBg};\n }\n `},_={getSystemTheme:u,resolveTheme:m,getThemeConfig:f,applyTheme:b,getCurrentTheme:()=>d,getResolvedTheme:x,switchTheme:v,toggleTheme:()=>{const e=x();v("dark"===e?"light":"dark")},resetToAuto:()=>{v("auto")},initTheme:()=>{const e=k();b(e),C()},watchSystemTheme:C,unwatchSystemTheme:()=>{g&&p&&(g.removeEventListener("change",p),g=null,p=null)},addThemeListener:e=>(h.add(e),()=>{h.delete(e)}),removeThemeListener:e=>{h.delete(e)},clearThemeListeners:()=>{h.clear()},registerTheme:(e,t)=>{l[e]={bg:t.bg||l.light.bg,text:t.text||l.light.text,border:t.border||l.light.border,shadow:t.shadow||l.light.shadow,hoverShadow:t.hoverShadow||l.light.hoverShadow,progressBg:t.progressBg||l.light.progressBg,closeHoverBg:t.closeHoverBg||l.light.closeHoverBg}},unregisterTheme:e=>{"light"!==e&&"dark"!==e&&"auto"!==e&&delete l[e]},getAllThemes:()=>({...l}),getThemeNames:()=>Object.keys(l),hasTheme:e=>e in l,getThemePreview:e=>{const t=f(e),n=m(e);return{name:e,resolved:n,colors:{background:t.bg,text:t.text,border:t.border},isDark:"dark"===n,isLight:"light"===n,isAuto:"auto"===e}},generateThemeCSS:j,applyThemeCSS:e=>{if("undefined"==typeof document)return;const t=j(e),n="metona-toast-theme-css",o=document.getElementById(n);o&&o.remove();const r=document.createElement("style");r.id=n,r.textContent=t,document.head.appendChild(r)},removeThemeCSS:()=>{if("undefined"==typeof document)return;const e=document.getElementById("metona-toast-theme-css");e&&e.remove()},saveTheme:w,loadTheme:k};let T="zh-CN";const S=new Set;let M="zh-CN";const L=()=>T,E=e=>{o[e]||(e=M),T=e,U(e),F(e)},z=(e,t={})=>{const n=A(T,e);if(void 0!==n)return $(n,t);if(T!==M){const n=A(M,e);if(void 0!==n)return $(n,t)}return e},A=(e,t)=>{const n=o[e];if(!n)return;const r=t.split(".");let i=n;for(const e of r){if(!i||"object"!=typeof i||!(e in i))return;i=i[e]}return"string"==typeof i?i:void 0},$=(e,t)=>e.replace(/\{(\w+)\}/g,(e,n)=>void 0!==t[n]?String(t[n]):e),I=e=>void 0!==A(T,e)||void 0!==A(M,e),P=(e,t)=>{for(const n in t)t[n]instanceof Object&&n in e&&e[n]instanceof Object?P(e[n],t[n]):e[n]=t[n];return e},N=()=>Object.keys(o),H=e=>e in o,D=e=>({"zh-CN":"简体中文","zh-TW":"繁體中文","en-US":"English (US)","en-GB":"English (UK)",ja:"日本語",ko:"한국어",fr:"Français",de:"Deutsch",es:"Español",pt:"Português",ru:"Русский",ar:"العربية",hi:"हिन्दी",th:"ไทย",vi:"Tiếng Việt",id:"Bahasa Indonesia",ms:"Bahasa Melayu",tr:"Türkçe",it:"Italiano",nl:"Nederlands",pl:"Polski",uk:"Українська",cs:"Čeština",sv:"Svenska",da:"Dansk",fi:"Suomi",nb:"Norsk",el:"Ελληνικά",he:"עברית",hu:"Magyar",ro:"Română",bg:"Български",hr:"Hrvatski",sk:"Slovenčina",sl:"Slovenščina",et:"Eesti",lv:"Latviešu",lt:"Lietuvių",ca:"Català",gl:"Galego",eu:"Euskara",cy:"Cymraeg",ga:"Gaeilge",mt:"Malti",is:"Íslenska",mk:"Македонски",sq:"Shqip",sr:"Српски",bs:"Bosanski",me:"Crnogorski",ka:"ქართული",hy:"Հայերեն",az:"Azərbaycan",uz:"O'zbek",kk:"Қазақ",ky:"Кыргыз",tg:"Тоҷикӣ",tk:"Türkmen",mn:"Монгол",ne:"नेपाली",si:"සිංහල",my:"မြန်မာ",km:"ខ្មែរ",lo:"ລາວ",am:"አማርኛ",sw:"Kiswahili",yo:"Yorùbá",ig:"Igbo",ha:"Hausa",zu:"isiZulu",af:"Afrikaans",xh:"isiXhosa",st:"Sesotho",tn:"Setswana",ts:"Xitsonga",ss:"siSwati",ve:"Tshivenda",nr:"isiNdebele"}[e]||e),O=e=>["ar","he","fa","ur","yi","ps","sd","ug"].includes(e)?"rtl":"ltr",q=e=>({code:e,name:D(e),direction:O(e),isSupported:H(e),isCurrent:e===T,isFallback:e===M}),F=e=>{if("undefined"!=typeof localStorage)try{localStorage.setItem("metona-toast-locale",e)}catch(e){}},V=()=>{if("undefined"!=typeof localStorage)try{return localStorage.getItem("metona-toast-locale")||R()}catch(e){}return R()},R=()=>{if("undefined"!=typeof navigator){const e=navigator.language||navigator.userLanguage;if(e&&H(e))return e;const t=e?.split("-")[0];if(t&&H(t))return t}return M},U=e=>{S.forEach(t=>{try{t(e)}catch(e){}})},X=(e,t={})=>{try{const n=e instanceof Date?e:new Date(e);return new Intl.DateTimeFormat(T,t).format(n)}catch(t){return String(e)}},Y=(e,t={})=>{try{return new Intl.PluralRules(T,t).select(e)}catch(t){return 1===e?"one":"other"}},W={t:z,plural:(e,t,n={})=>{const o=`${e}.${Y(t)}`;return I(o)?z(o,{...n,count:t}):I(e)?z(e,{...n,count:t}):e},getCurrentLocale:L,setCurrentLocale:E,switchLocale:e=>{E(e)},getFallbackLocale:()=>M,setFallbackLocale:e=>{o[e]&&(M=e)},hasTranslation:I,getTranslations:e=>o[e]||{},addTranslations:(e,t)=>{o[e]||(o[e]={}),P(o[e],t)},removeTranslation:(e,t)=>{const n=o[e];if(!n)return;const r=t.split(".");let i=n;for(let e=0;e{o[e]&&(o[e]={})},getSupportedLocales:N,isLocaleSupported:H,getLocaleName:D,getLocaleDirection:O,getLocaleInfo:q,getAllLocaleInfo:()=>N().map(q),formatNumber:(e,t={})=>{try{return new Intl.NumberFormat(T,t).format(e)}catch(t){return e.toString()}},formatCurrency:(e,t="USD",n={})=>{try{return new Intl.NumberFormat(T,{style:"currency",currency:t,...n}).format(e)}catch(t){return e.toString()}},formatPercent:(e,t={})=>{try{return new Intl.NumberFormat(T,{style:"percent",minimumFractionDigits:0,maximumFractionDigits:2,...t}).format(e/100)}catch(t){return`${e}%`}},formatDate:X,formatTime:(e,t={})=>X(e,{hour:"numeric",minute:"numeric",second:"numeric",...t}),formatRelativeTime:(e,t={})=>{try{const n=e instanceof Date?e:new Date(e),o=new Date,r=n.getTime()-o.getTime(),i=new Intl.RelativeTimeFormat(T,{numeric:"auto",...t}),s=[{unit:"year",ms:31536e6},{unit:"month",ms:2592e6},{unit:"week",ms:6048e5},{unit:"day",ms:864e5},{unit:"hour",ms:36e5},{unit:"minute",ms:6e4},{unit:"second",ms:1e3}];for(const{unit:e,ms:t}of s)if(Math.abs(r)>=t||"second"===e){const n=Math.round(r/t);return i.format(n,e)}return String(e)}catch(t){return String(e)}},formatList:(e,t={})=>{const n=Intl;if("function"==typeof n.ListFormat)try{return new n.ListFormat(T,{style:"long",type:"conjunction"}).format(e)}catch(e){}return e.join(", ")},formatPlural:Y,addLocaleListener:e=>(S.add(e),()=>{S.delete(e)}),removeLocaleListener:e=>{S.delete(e)},clearLocaleListeners:()=>{S.clear()},initI18n:()=>{const e=V();E(e)},saveLocale:F,loadLocale:V,getDefaultLocale:R};o["zh-CN"],o["en-US"];const G=new Map,K=new Set(["slide","fade","scale","bounce","flip","rotate","zoom","slideUp","slideDown","slideLeft","slideRight"]);let Z=null;const J=new Set;Object.entries(a).forEach(([e,t])=>{G.set(e,{name:e,enter:t.enter,leave:t.leave,duration:t.duration,easing:t.easing})});const Q={register(e,t){G.set(e,{name:e,enter:t.enter||{},leave:t.leave||{},duration:t.duration||300,easing:t.easing||"cubic-bezier(0.4, 0, 0.2, 1)"})},unregister(e){G.delete(e)},get:e=>G.get(e)||null,getAnimationNames:()=>Array.from(G.keys()),getActiveCount:()=>G.size,cancelAll(){},reset(){G.clear(),Object.entries(a).forEach(([e,t])=>{G.set(e,{name:e,enter:t.enter,leave:t.leave,duration:t.duration,easing:t.easing})})},destroy(){G.clear(),J.clear(),Z=null}};class ee{static setCallbacks(e){void 0!==e.onError&&(ee._onError=e.onError),void 0!==e.removeToast&&(ee._removeToast=e.removeToast)}static on(e,t){return this._hooks.has(e)||this._hooks.set(e,[]),this._hooks.get(e).push(t),()=>this.off(e,t)}static off(e,t){const n=this._hooks.get(e);n&&this._hooks.set(e,n.filter(e=>e!==t))}static trigger(e,t=null){const n=this._hooks.get(e);if(!n||0===n.length)return!0;let o=!0;return n.forEach(n=>{try{!1===n(t)&&(o=!1)}catch(n){if(ee._onError)try{ee._onError({hook:e,error:n,toast:t})}catch(e){}}}),o}constructor(e){this.el=null,this.barEl=null,this.rafId=null,this.startedAt=0,this.paused=!1,this.closing=!1,this.group=null,this._cleanups=[],this.id=e.id||"met-"+Date.now().toString(36)+"-"+Math.random().toString(36).slice(2,8),this.type=e.type||"default",this.title=e.title||"",this.message=e.message??e.content??"",this.html=e.html||"",this.iconHTML=e.iconHTML||"",this.config={...i,...e},e.style&&"object"==typeof e.style&&(this.config.style={...e.style}),this.remaining=this.config.duration||0,this.group=e.group||null}_palette(){const e=(e=>m(e))(this.config.theme||"auto"),t=s[this.type]||s.default,n=l[e]||l.light;return{theme:e,c:t,t:{bg:n.bg,border:n.border,shadow:n.shadow}}}create(){if("undefined"==typeof window||"undefined"==typeof document)return this;if(!ee.trigger("beforeShow",this))return this;if("function"==typeof this.config.onBeforeShow)try{if(!1===this.config.onBeforeShow(this))return this}catch(e){}(()=>{if("undefined"==typeof document)return;if(c&&document.getElementById("metona-toast-styles"))return;c=document.createElement("style"),c.id="metona-toast-styles",c.textContent='\n .met-container {\n pointer-events: none;\n display: flex;\n flex-direction: column;\n gap: 12px;\n box-sizing: border-box;\n padding: 24px;\n max-width: 100vw;\n position: fixed;\n z-index: 9999;\n }\n\n .met-container.top-left { top: 0; left: 0; align-items: flex-start; }\n .met-container.top-center { top: 0; left: 0; right: 0; align-items: center; }\n .met-container.top-right { top: 0; right: 0; align-items: flex-end; }\n .met-container.bottom-left { bottom: 0; left: 0; align-items: flex-start; }\n .met-container.bottom-center{ bottom: 0; left: 0; right: 0; align-items: center; }\n .met-container.bottom-right { bottom: 0; right: 0; align-items: flex-end; }\n\n .met-toast {\n position: relative;\n display: flex;\n align-items: flex-start;\n gap: 12px;\n padding: 14px 16px;\n border-radius: 12px;\n box-sizing: border-box;\n backdrop-filter: blur(14px) saturate(180%);\n -webkit-backdrop-filter: blur(14px) saturate(180%);\n font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;\n user-select: none;\n -webkit-user-select: none;\n transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n box-shadow 0.25s ease,\n opacity 0.25s ease;\n will-change: transform, opacity;\n flex-shrink: 0;\n pointer-events: auto;\n min-width: 240px;\n max-width: calc(100vw - 48px);\n width: 360px;\n border: 1px solid var(--met-border, rgba(0,0,0,0.06));\n background: var(--met-bg, rgba(255,255,255,0.96));\n color: var(--met-text, #1f2937);\n box-shadow: var(--met-shadow, 0 10px 36px -10px rgba(0,0,0,0.18), 0 4px 14px -4px rgba(0,0,0,0.08));\n transform: translateZ(0);\n -webkit-transform: translateZ(0);\n backface-visibility: hidden;\n -webkit-backface-visibility: hidden;\n perspective: 1000;\n }\n\n .met-toast:hover {\n box-shadow: var(--met-hover-shadow, 0 14px 48px -10px rgba(0,0,0,0.22), 0 6px 18px -4px rgba(0,0,0,0.10)) !important;\n }\n\n .met-toast.met-clickable {\n cursor: pointer;\n }\n\n .met-icon {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n margin-top: 1px;\n }\n\n .met-content {\n flex: 1;\n min-width: 0;\n word-wrap: break-word;\n overflow-wrap: break-word;\n }\n\n .met-title {\n font-weight: 600;\n font-size: 14px;\n letter-spacing: 0.1px;\n }\n\n .met-message {\n font-size: 13px;\n opacity: 0.85;\n margin-top: 2px;\n }\n\n .met-close {\n flex-shrink: 0;\n background: transparent;\n border: 0;\n padding: 4px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n transition: background 0.2s, color 0.2s;\n line-height: 0;\n color: inherit;\n opacity: 0.5;\n }\n\n .met-close:hover {\n opacity: 1;\n background: var(--met-close-hover-bg, rgba(0,0,0,0.06));\n }\n\n .met-progress {\n position: absolute;\n left: 0; right: 0; bottom: 0;\n height: 3px;\n overflow: hidden;\n background: var(--met-progress-bg, rgba(0,0,0,0.06));\n border-radius: 0 0 12px 12px;\n }\n\n .met-progress-v {\n position: absolute;\n left: 0; top: 0; bottom: 0;\n width: 3px;\n overflow: hidden;\n background: var(--met-progress-bg, rgba(0,0,0,0.06));\n border-radius: 12px 0 0 12px;\n }\n\n .met-bar {\n position: absolute;\n left: 0; top: 0;\n height: 100%; width: 100%;\n transform-origin: left;\n transform: scaleX(1);\n }\n\n .met-bar-v {\n position: absolute;\n left: 0; bottom: 0;\n width: 100%; height: 100%;\n transform-origin: bottom;\n transform: scaleY(1);\n }\n\n .met-side {\n position: absolute;\n left: 0; top: 0; bottom: 0;\n width: 4px;\n border-radius: 12px 0 0 12px;\n }\n\n .met-spin {\n animation: met-rot 1s linear infinite;\n transform-origin: 50% 50%;\n }\n\n .met-toast.met-leaving {\n pointer-events: none;\n z-index: 1;\n }\n\n @keyframes met-rot {\n to { transform: rotate(360deg); }\n }\n\n .met-anim-slide.met-toast,\n .met-anim-fade.met-toast,\n .met-anim-scale.met-toast,\n .met-anim-bounce.met-toast,\n .met-anim-flip.met-toast,\n .met-anim-rotate.met-toast,\n .met-anim-zoom.met-toast,\n .met-anim-slideUp.met-toast,\n .met-anim-slideDown.met-toast,\n .met-anim-slideLeft.met-toast,\n .met-anim-slideRight.met-toast {\n opacity: 0;\n }\n\n @keyframes met-slide-in {\n 0% { transform: translateX(80px); opacity: 0; }\n 65% { transform: translateX(-6px); opacity: 1; }\n 100% { transform: translateX(0); opacity: 1; }\n }\n @keyframes met-fade-in {\n 0% { opacity: 0; filter: blur(3px); }\n 100% { opacity: 1; filter: blur(0); }\n }\n @keyframes met-scale-in {\n 0% { transform: scale(0.55); opacity: 0; }\n 65% { transform: scale(1.07); opacity: 1; }\n 100% { transform: scale(1); opacity: 1; }\n }\n @keyframes met-bounce-in {\n 0% { transform: translateY(-80px); opacity: 0; animation-timing-function: ease-in; }\n 45% { transform: translateY(14px); opacity: 1; animation-timing-function: ease-out; }\n 65% { transform: translateY(-12px); animation-timing-function: ease-in; }\n 82% { transform: translateY(4px); animation-timing-function: ease-out; }\n 100% { transform: translateY(0); opacity: 1; }\n }\n @keyframes met-flip-in {\n 0% { transform: perspective(500px) rotateX(-90deg); opacity: 0; }\n 60% { transform: perspective(500px) rotateX(8deg); opacity: 1; }\n 85% { transform: perspective(500px) rotateX(-2deg); }\n 100% { transform: perspective(500px) rotateX(0); opacity: 1; }\n }\n @keyframes met-rotate-in {\n 0% { transform: rotate(-25deg) scale(0.6); opacity: 0; }\n 60% { transform: rotate(4deg) scale(1.05); opacity: 1; }\n 85% { transform: rotate(-1deg) scale(0.98); }\n 100% { transform: rotate(0) scale(1); opacity: 1; }\n }\n @keyframes met-zoom-in {\n 0% { transform: scale(0.1); opacity: 0; }\n 50% { transform: scale(1.12); opacity: 1; }\n 75% { transform: scale(0.94); }\n 100% { transform: scale(1); opacity: 1; }\n }\n @keyframes met-slideUp-in {\n 0% { transform: translateY(60px); opacity: 0; }\n 70% { transform: translateY(-6px); opacity: 1; }\n 100% { transform: translateY(0); opacity: 1; }\n }\n @keyframes met-slideDown-in {\n 0% { transform: translateY(-60px); opacity: 0; }\n 70% { transform: translateY(6px); opacity: 1; }\n 100% { transform: translateY(0); opacity: 1; }\n }\n @keyframes met-slideLeft-in {\n 0% { transform: translateX(-90px); opacity: 0; }\n 65% { transform: translateX(6px); opacity: 1; }\n 100% { transform: translateX(0); opacity: 1; }\n }\n @keyframes met-slideRight-in {\n 0% { transform: translateX(90px); opacity: 0; }\n 65% { transform: translateX(-6px); opacity: 1; }\n 100% { transform: translateX(0); opacity: 1; }\n }\n\n .met-anim-slide.met-toast.met-show { animation: met-slide-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-fade.met-toast.met-show { animation: met-fade-in 0.50s ease forwards; }\n .met-anim-scale.met-toast.met-show { animation: met-scale-in 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }\n .met-anim-bounce.met-toast.met-show { animation: met-bounce-in 0.65s ease forwards; }\n .met-anim-flip.met-toast.met-show { animation: met-flip-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-rotate.met-toast.met-show { animation: met-rotate-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-zoom.met-toast.met-show { animation: met-zoom-in 0.50s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }\n .met-anim-slideUp.met-toast.met-show { animation: met-slideUp-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-slideDown.met-toast.met-show { animation: met-slideDown-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-slideLeft.met-toast.met-show { animation: met-slideLeft-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n .met-anim-slideRight.met-toast.met-show { animation: met-slideRight-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }\n\n @media (max-width: 480px) {\n .met-container { padding: 12px !important; }\n .met-toast { width: 100% !important; min-width: 0 !important; }\n }\n\n @media (max-width: 768px) {\n .met-toast { font-size: 13px; }\n .met-title { font-size: 13px; }\n .met-message { font-size: 12px; }\n }\n\n @media (min-width: 1200px) {\n .met-toast { width: 400px; }\n }\n\n @media (min-width: 1920px) {\n .met-toast { width: 440px; }\n }\n\n @media (max-width: 320px) {\n .met-toast { width: 100%; min-width: 0; padding: 12px 14px; }\n .met-container { padding: 8px; }\n }\n\n @media (orientation: landscape) and (max-height: 500px) {\n .met-container { padding: 12px 24px; }\n .met-toast { min-height: 44px; padding: 10px 14px; }\n }\n\n @media (orientation: portrait) and (max-width: 500px) {\n .met-container { padding: 12px; }\n .met-toast { width: 100%; min-width: 0; }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .met-toast { transition: opacity 0.15s !important; }\n .met-toast.met-show { animation: none !important; opacity: 1 !important; }\n .met-spin { animation-duration: 2.5s !important; }\n }\n\n @media (forced-colors: active) {\n .met-toast { border: 2px solid ButtonText; }\n .met-close { border: 1px solid ButtonText; }\n }\n\n @media (prefers-contrast: high) {\n .met-toast { border-width: 3px; border-style: solid; }\n .met-close { border: 2px solid currentColor; border-radius: 4px; }\n }\n\n .met-toast:focus-visible {\n outline: 2px solid #3b82f6;\n outline-offset: 2px;\n }\n .met-close:focus-visible {\n outline: 2px solid #3b82f6;\n outline-offset: 2px;\n }\n\n @media (hover: none) and (pointer: coarse) {\n .met-toast:hover { box-shadow: inherit; }\n .met-toast { min-height: 48px; }\n .met-close { min-width: 48px; min-height: 48px; }\n }\n\n @media print {\n .met-container { display: none !important; }\n .met-toast { display: none !important; }\n }\n\n :fullscreen .met-container,\n :picture-in-picture .met-container {\n z-index: 2147483647;\n }\n\n @supports (padding: max(0px)) {\n .met-container {\n padding: max(24px, env(safe-area-inset-top))\n max(24px, env(safe-area-inset-right))\n max(24px, env(safe-area-inset-bottom))\n max(24px, env(safe-area-inset-left));\n }\n }\n\n .met-toast:active {\n transform: scale(0.98);\n }\n\n .met-toast.met-success { border-left: 4px solid #10b981; }\n .met-toast.met-error { border-left: 4px solid #ef4444; }\n .met-toast.met-warning { border-left: 4px solid #f59e0b; }\n .met-toast.met-info { border-left: 4px solid #3b82f6; }\n .met-toast.met-loading { border-left: 4px solid #6366f1; }\n\n .met-bar, .met-bar-v {\n transition: transform 0.1s linear;\n }\n\n /* RTL 镜像:进度条从右向左收缩、side 条移到右侧、类型色条翻转到右边 */\n [dir="rtl"] .met-bar {\n transform-origin: right;\n }\n [dir="rtl"] .met-side {\n left: auto;\n right: 0;\n border-radius: 0 12px 12px 0;\n }\n [dir="rtl"] .met-progress-v {\n left: auto;\n right: 0;\n border-radius: 0 12px 12px 0;\n }\n [dir="rtl"] .met-toast.met-success {\n border-left-width: 1px;\n border-right: 4px solid #10b981;\n }\n [dir="rtl"] .met-toast.met-error {\n border-left-width: 1px;\n border-right: 4px solid #ef4444;\n }\n [dir="rtl"] .met-toast.met-warning {\n border-left-width: 1px;\n border-right: 4px solid #f59e0b;\n }\n [dir="rtl"] .met-toast.met-info {\n border-left-width: 1px;\n border-right: 4px solid #3b82f6;\n }\n [dir="rtl"] .met-toast.met-loading {\n border-left-width: 1px;\n border-right: 4px solid #6366f1;\n }\n\n .met-container::-webkit-scrollbar { width: 6px; height: 6px; }\n .met-container::-webkit-scrollbar-track { background: transparent; }\n .met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }\n .met-container::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.3); }\n\n .met-toast.met-theme-dark {\n background: rgba(28, 32, 40, 0.94);\n color: #e6e8eb;\n border-color: rgba(255, 255, 255, 0.08);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);\n }\n .met-toast.met-theme-dark:hover {\n box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;\n }\n .met-toast.met-theme-dark .met-close:hover {\n background: rgba(255, 255, 255, 0.08);\n }\n .met-toast.met-theme-dark .met-progress,\n .met-toast.met-theme-dark .met-progress-v {\n background: rgba(255, 255, 255, 0.08);\n }\n\n .met-toast.met-theme-light {\n background: rgba(255, 255, 255, 0.96);\n color: #1f2937;\n border-color: rgba(0, 0, 0, 0.06);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);\n }\n .met-toast.met-theme-light:hover {\n box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;\n }\n .met-toast.met-theme-light .met-close:hover {\n background: rgba(0, 0, 0, 0.06);\n }\n .met-toast.met-theme-light .met-progress,\n .met-toast.met-theme-light .met-progress-v {\n background: rgba(0, 0, 0, 0.06);\n }\n\n .met-toast[data-theme] {\n --met-bg: var(--met-theme-bg);\n --met-text: var(--met-theme-text);\n --met-border: var(--met-theme-border);\n --met-shadow: var(--met-theme-shadow);\n }\n\n @media (prefers-color-scheme: dark) {\n .met-theme-auto .met-toast {\n background: rgba(28, 32, 40, 0.94);\n color: #e6e8eb;\n border-color: rgba(255, 255, 255, 0.08);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);\n }\n .met-theme-auto .met-toast:hover {\n box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;\n }\n .met-theme-auto .met-close:hover { background: rgba(255, 255, 255, 0.08); }\n .met-theme-auto .met-progress,\n .met-theme-auto .met-progress-v { background: rgba(255, 255, 255, 0.08); }\n }\n\n @media (prefers-color-scheme: light) {\n .met-theme-auto .met-toast {\n background: rgba(255, 255, 255, 0.96);\n color: #1f2937;\n border-color: rgba(0, 0, 0, 0.06);\n box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);\n }\n .met-theme-auto .met-toast:hover {\n box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;\n }\n .met-theme-auto .met-close:hover { background: rgba(0, 0, 0, 0.06); }\n .met-theme-auto .met-progress,\n .met-theme-auto .met-progress-v { background: rgba(0, 0, 0, 0.06); }\n }\n '.replace(/\s+/g," "),document.head.appendChild(c)})(),(e=>{if("undefined"==typeof document)return;if(K.has(e))return;const t=G.get(e);t&&!J.has(e)&&(Z||(Z=document.getElementById("metona-toast-anim-styles"),Z||(Z=document.createElement("style"),Z.id="metona-toast-anim-styles",document.head.appendChild(Z))),Z.textContent+=((e,t)=>{var n;return`\n @keyframes met-${e}-in {\n from { ${n=t.enter,Object.entries(n).map(([e,t])=>`${e}:${t}`).join(";")}; }\n }\n .met-anim-${e}.met-toast { opacity: 0; }\n .met-anim-${e}.met-toast.met-show {\n animation: met-${e}-in ${t.duration}ms ${t.easing} forwards;\n }\n `})(e,t),J.add(e))})(this.config.animation||"slide");const e=this._getContainer(),{theme:t,c:n,t:o}=this._palette();this._limitToasts(e);const r=document.createElement("div");if(r.className=this._buildClassName(t),r.setAttribute("role","error"===this.type||"warning"===this.type?"alert":"status"),r.setAttribute("aria-live","error"===this.type?"assertive":"polite"),r.dataset.id=this.id,this._applyStyles(r,t,o),this._buildContent(r,n),this.el=r,(this.config.position||"top-right").startsWith("top")?e.insertBefore(r,e.firstChild):e.appendChild(r),ee._registry.set(this.id,this),this._bindEvents(r),this._startTimer(),requestAnimationFrame(()=>{requestAnimationFrame(()=>{r.classList.add("met-show")})}),"function"==typeof this.config.onShow)try{this.config.onShow(this)}catch(e){}return ee.trigger("afterShow",this),this}_getContainer(){const e=this.config.position||"top-right",t=this.config.zIndex||9999,n="rtl"===O(L()),o=n?e.replace("left","__TMP__").replace("right","left").replace("__TMP__","right"):e,r=te.get(document.body);if(r&&r.has(o))return r.get(o);te.has(document.body)||te.set(document.body,new Map);const i=document.createElement("div");return i.className=`met-container ${o}`,i.setAttribute("aria-label","Notifications"),i.setAttribute("role","region"),n&&i.setAttribute("dir","rtl"),i.style.cssText=`\n display:flex;\n flex-direction:column;\n gap:${this.config.gap||12}px;\n box-sizing:border-box;\n padding:${this.config.offset||24}px;\n max-width:100vw;\n position:fixed;\n z-index:${t};\n pointer-events:none;\n ${{"top-left":"top:0;left:0;align-items:flex-start","top-center":"top:0;left:0;right:0;align-items:center","top-right":"top:0;right:0;align-items:flex-end","bottom-left":"bottom:0;left:0;align-items:flex-start","bottom-center":"bottom:0;left:0;right:0;align-items:center","bottom-right":"bottom:0;right:0;align-items:flex-end"}[o]||"top:0;right:0;align-items:flex-end"}\n `,document.body.appendChild(i),te.get(document.body).set(o,i),i}_limitToasts(e){const t=this.config.max||6,n=Array.from(e.querySelectorAll(".met-toast"));for(;n.length>=t;){const e=n.shift(),t=e?.dataset.id;if(!t)continue;const o=ee._registry.get(t);o?o.close(!0):ee._removeToast&&ee._removeToast(t)}}_buildClassName(e){const t=(n=this.config.animation||"",G.has(n)?this.config.animation:"slide");var n;return["met-toast",`met-${this.type}`,`met-theme-${e}`,`met-anim-${t}`,this.config.closeOnClick||this.config.draggable?"met-clickable":"",this.config.className||""].filter(Boolean).join(" ")}_applyStyles(e,t,n){const o="number"==typeof this.config.width?`${this.config.width}px`:"string"==typeof this.config.width?this.config.width:"360px",r=(t,n)=>e.style.setProperty(t,n,"important");r("position","relative"),r("flex-shrink","0"),r("min-width","240px"),r("max-width","calc(100vw - 48px)"),r("width",o),this.config.style&&Object.keys(this.config.style).length>0&&Object.entries(this.config.style).forEach(([t,n])=>{e.style[t]=n})}_buildContent(e,o){if("function"==typeof this.config.render)return e.innerHTML=this.config.render(this),void(this.barEl=e.querySelector(".met-bar, .met-bar-v"));const r=!1!==this.config.icon&&(this.iconHTML||n[this.type]),i=!1!==this.config.closeButton,s=!1!==this.config.showProgress&&(this.config.duration||0)>0,a=!r&&"default"!==this.type,l=this.title?`${t(this.title)}
`:"",c=this.html?`${this.html}
`:this.message?`${t(this.message)}
`:"",d=r?`${this.iconHTML||n[this.type]}
`:"",h=i?``:"",g=s?"vertical"===this.config.progressDirection?``:``:"",p=a?``:"";e.innerHTML=`\n ${d}\n ${p}\n \n ${l}\n ${c}\n
\n ${h}\n ${g}\n `,this.barEl=e.querySelector(".met-bar, .met-bar-v")}_bindEvents(e){const t=e=>{const t=e.target;if(t.closest(".met-close"))return e.stopPropagation(),void this.close();if(ee.trigger("click",this),!this.config.closeOnClick||t.closest(".met-close"));else{if("function"==typeof this.config.onClick)try{this.config.onClick(this)}catch(e){}this.close()}};if(e.addEventListener("click",t),this._cleanups.push(()=>e.removeEventListener("click",t)),this.config.pauseOnHover&&(this.config.duration||0)>0){const t=()=>{ee.trigger("hover",this),this._pause()},n=()=>{ee.trigger("hover",this),this._resume()};e.addEventListener("mouseenter",t),e.addEventListener("mouseleave",n),this._cleanups.push(()=>{e.removeEventListener("mouseenter",t),e.removeEventListener("mouseleave",n)})}const n=()=>ee.trigger("animationStart",this),o=()=>ee.trigger("animationEnd",this);e.addEventListener("animationstart",n),e.addEventListener("animationend",o),this._cleanups.push(()=>{e.removeEventListener("animationstart",n),e.removeEventListener("animationend",o)}),this.config.draggable&&this._bindDrag(e)}_bindDrag(e){let t=0,n=0,o=0,r=0,i=!1;const s=o=>{o.target.closest(".met-close")||(i=!0,t=o.clientX,n=o.clientY,e.setPointerCapture(o.pointerId),e.style.transition="none",this._pause(),ee.trigger("dragStart",this))},a=s=>{i&&(o=s.clientX-t,r=s.clientY-n,e.style.transform=`translate(${o}px, ${r}px) rotate(${.1*o}deg)`,e.style.opacity=String(Math.max(0,1-Math.abs(o)/200)))},l=t=>{if(!i)return;i=!1,e.releasePointerCapture(t.pointerId),e.style.transition="";const n=this.config.dragThreshold??120;Math.abs(o)>n?(e.style.transform=`translate(${2*o}px, ${r}px) rotate(${.2*o}deg)`,e.style.opacity="0",setTimeout(()=>this.close(!0),250)):(e.style.transform="",e.style.opacity="",this._resume()),o=r=0,ee.trigger("dragEnd",this)};e.addEventListener("pointerdown",s),e.addEventListener("pointermove",a),e.addEventListener("pointerup",l),e.addEventListener("pointercancel",l),this._cleanups.push(()=>{e.removeEventListener("pointerdown",s),e.removeEventListener("pointermove",a),e.removeEventListener("pointerup",l),e.removeEventListener("pointercancel",l)})}_startTimer(e=!1){if((this.config.duration||0)<=0)return;e||(this.startedAt=Date.now(),this.remaining=this.config.duration||0,ee.trigger("progressStart",this));const t=()=>{if(!this.paused&&!this.closing){try{const e=Date.now()-this.startedAt;if(this.remaining=Math.max(0,(this.config.duration||0)-e),this.barEl){const e=this.remaining/(this.config.duration||1),t="vertical"===this.config.progressDirection?`scaleY(${e})`:`scaleX(${e})`;this.barEl.style.transform=t}if(this.remaining<=0)return ee.trigger("progressEnd",this),void this.close()}catch(e){if(ee._onError)try{ee._onError({source:"timer",error:e,toast:this})}catch(e){}}this.rafId=requestAnimationFrame(t)}};this.rafId=requestAnimationFrame(t)}_pause(){this.paused||(this.config.duration||0)<=0||(this.paused=!0,null!==this.rafId&&cancelAnimationFrame(this.rafId),this.remaining=Math.max(0,(this.config.duration||0)-(Date.now()-this.startedAt)))}_resume(){this.paused&&(this.paused=!1,this.startedAt=Date.now()-((this.config.duration||0)-this.remaining),this._startTimer(!0))}update(e){if(!ee.trigger("beforeUpdate",this))return this;const n=e.type&&e.type!==this.type;if(e.type&&(this.type=e.type),void 0!==e.title&&(this.title=e.title),void 0!==e.message&&(this.message=e.message),void 0!==e.html&&(this.html=e.html),!this.el)return ee.trigger("afterUpdate",this),this;if(n){if(["met-success","met-error","met-warning","met-info","met-loading","met-default"].forEach(e=>this.el.classList.remove(e)),this.el.classList.add(`met-${this.type}`),this.barEl){const e=s[this.type]||s.default;this.barEl.style.background=e.fg}const e=this.el.querySelector(".met-side");if(e){const t=s[this.type]||s.default;e.style.background=t.fg}}const o=this.el.querySelector(".met-content");if(o){const e=this.title?`${t(this.title)}
`:"",n=this.html?`${this.html}
`:this.message?`${t(this.message)}
`:"";o.innerHTML=`${e}${n}`}if(void 0!==e.duration&&e.duration!==this.config.duration&&(this.config.duration=e.duration,null!==this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=null,this.remaining=Math.max(0,e.duration),e.duration>0&&!this.paused&&(this.startedAt=Date.now(),this._startTimer())),this.config.resetTimerOnUpdate&&(this.config.duration||0)>0&&(null!==this.rafId&&cancelAnimationFrame(this.rafId),this.startedAt=Date.now(),this.remaining=this.config.duration||0,this._startTimer()),"function"==typeof this.config.onUpdate)try{this.config.onUpdate(this)}catch(e){}return ee.trigger("afterUpdate",this),this}updatePosition(e){if(!e||!this.el)return this;const t=this.el.parentNode;this.config.position=e;const n=this._getContainer();return t===n||(t&&this.el.parentNode===t&&t.removeChild(this.el),e.startsWith("top")?n.insertBefore(this.el,n.firstChild):n.appendChild(this.el)),this}remove(){null!==this.rafId&&(cancelAnimationFrame(this.rafId),this.rafId=null),this._cleanups.forEach(e=>{try{e()}catch(e){}}),this._cleanups=[],this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el),this.el=null,ee._registry.delete(this.id),ee._removeToast&&ee._removeToast(this.id)}close(e=!1){if(this.closing)return;if(!ee.trigger("beforeClose",this))return;this.closing=!0,null!==this.rafId&&cancelAnimationFrame(this.rafId),this._cleanups.forEach(e=>{try{e()}catch(e){}}),this._cleanups=[];const t=this.el;if(!t)return void(ee._removeToast&&ee._removeToast(this.id));const n=t.parentNode;if(n&&!e){const e=t.getBoundingClientRect(),o=n.getBoundingClientRect();t.style.position="absolute",t.style.top=e.top-o.top+"px",t.style.left=e.left-o.left+"px",t.style.width=e.width+"px",t.style.margin="0"}t.classList.add("met-leaving"),t.classList.remove("met-show");const o=this.config.position||"top-right",r="rtl"===O(L());let i="scale(.96)";i=o.includes("right")?r?"translateX(-120%)":"translateX(120%)":o.includes("left")?r?"translateX(120%)":"translateX(-120%)":o.startsWith("top")?"translateY(-20px)":"translateY(20px)",t.style.transform=i,t.style.opacity="0",setTimeout(()=>this._destroy(),e?0:300)}_destroy(){if(this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el),this.el=null,"function"==typeof this.config.onClose)try{this.config.onClose(this)}catch(e){}ee.trigger("afterClose",this),ee._registry.delete(this.id),ee._removeToast&&ee._removeToast(this.id)}}ee._hooks=new Map,ee._registry=new Map,ee._onError=null,ee._removeToast=null;const te=new Map,ne=e=>`\n \n ${e}\n
`,oe=e=>{const n=e.confirmText||z("confirm"),o=e.cancelText||z("cancel"),r=e.confirmColor||"#10b981",i=e.cancelColor||"#6b7280";return ne(`\n \n \n `)},re=e=>{const n=e.submitText||z("confirm"),o=e.cancelText||z("cancel"),r=e.submitColor||"#3b82f6",i=e.cancelColor||"#6b7280";return`\n \n ${ne(`\n \n \n `)}\n `},ie=e=>`\n \n 0%
\n `,se=e=>{if(!Array.isArray(e)||0===e.length)return"";const n=e.map((e,n)=>``).join("");return ne(n)};class ae{constructor(){this.plugins=new Map,this.initialized=!1}register(e,t){if(this.plugins.has(e))return this;if(!t||"object"!=typeof t||!t.name)return this;const n={...t,installed:!1,enabled:!0};if(n.name||(n.name=e),this.plugins.set(e,n),n.install)try{n.install(this),n.installed=!0}catch(e){}return this}unregister(e){const t=this.plugins.get(e);if(!t)return this;if(t.uninstall)try{t.uninstall(this)}catch(e){}return this.plugins.delete(e),this}get(e){return this.plugins.get(e)||null}has(e){return this.plugins.has(e)}getAll(){return Array.from(this.plugins.values())}getNames(){return Array.from(this.plugins.keys())}enable(e){const t=this.plugins.get(e);return t&&(t.enabled=!0),this}disable(e){const t=this.plugins.get(e);return t&&(t.enabled=!1),this}isEnabled(e){const t=this.plugins.get(e);return!!t&&!!t.enabled}destroy(){this.plugins.forEach(e=>{if(e.destroy)try{e.destroy(this)}catch(e){}}),this.plugins.clear()}}const le={keyboard:{name:"keyboard",version:"1.0.0",description:"ESC 关闭所有 Toast",_handler:null,install(){if("undefined"==typeof document)return;const e=e=>{"Escape"===e.key&&document.querySelectorAll(".met-toast .met-close").forEach(e=>{try{e.click()}catch(e){}})};this._handler=e,document.addEventListener("keydown",e)},uninstall(){const e=this._handler;e&&"undefined"!=typeof document&&(document.removeEventListener("keydown",e),this._handler=null)}},persistence:{name:"persistence",version:"1.0.0",description:"自动持久化配置到 localStorage",storageKey:"metona-toast-config",install(){if("undefined"!=typeof localStorage)try{const e=this.storageKey,t=localStorage.getItem(e);return t?JSON.parse(t):null}catch(e){return null}return null},save(e){if("undefined"!=typeof localStorage)try{const t=this.storageKey;localStorage.setItem(t,JSON.stringify(e))}catch(e){}},uninstall(){if("undefined"!=typeof localStorage)try{const e=this.storageKey;localStorage.removeItem(e)}catch(e){}}},accessibility:{name:"accessibility",version:"1.0.0",description:"通过屏幕阅读器朗读 Toast 内容",announce(e){if("undefined"==typeof document)return;const t=document.createElement("div");t.setAttribute("aria-live","assertive"),t.setAttribute("aria-atomic","true"),t.style.cssText="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;";const n=z(e.type)||e.type;t.textContent=`${n}: ${e.title||""} ${e.message||""}`,document.body.appendChild(t),setTimeout(()=>{t.parentNode&&t.parentNode.removeChild(t)},3e3)}},dedupe:{name:"dedupe",version:"1.0.0",description:"相同类型和消息的 Toast 自动去重,更新已有实例而非重复弹出",_off:null,install(){const e=ee.on("beforeShow",e=>{const t=Array.from(ee._registry.values()).find(t=>!t.closing&&t.type===e.type&&t.message===e.message);if(t)return t.update({title:e.title||t.title}),!1});this._off=e},uninstall(){const e=this._off;e&&e(),this._off=null}}},ce={createManager:()=>new ae,register:(e,t)=>de.register(e,t),unregister:e=>de.unregister(e),get:e=>de.get(e),has:e=>de.has(e),getAll:()=>de.getAll(),getNames:()=>de.getNames(),enable:e=>de.enable(e),disable:e=>de.disable(e),isEnabled:e=>de.isEnabled(e),getPreset:e=>le[e]||null,getAllPresets:()=>({...le}),createPlugin:e=>({name:e.name||"custom",version:e.version||"1.0.0",description:e.description||"",hooks:e.hooks||{},install:e.install||void 0,uninstall:e.uninstall||void 0,...e}),validatePlugin(e){const t=[];return e&&"object"==typeof e||t.push("Plugin must be an object"),e.name||e.version||t.push("Plugin must have a name or version"),{valid:0===t.length,errors:t}}},de=new ae,he=(e,t="default")=>{const[n,o]=e;return"string"==typeof n?{...o||{},type:o?.type||t,message:n}:n&&"object"==typeof n?{...n,type:n.type||t}:{type:t,message:""}},ge={_toasts:new Map,_config:{...i},version:r,configure(e){return e&&"object"==typeof e?(Object.assign(this._config,e),e.theme&&b(e.theme),e.locale&&E(e.locale),ee.trigger("configChange"),this):this},_emit(e){const t={...this._config,...e};t.content&&!t.message&&(t.message=t.content);const n=new ee(t);return n.create(),null!==n.el&&this._toasts.set(n.id,n),n},_remove(e){this._toasts.delete(e)},find(e){if(e)return this._toasts.get(e)},show(e,t={}){const n=he([e,t],"default");return this._emit(n)},success(e,t={}){const n=he([e,t],"success");return this._emit(n)},error(e,t={}){const n=he([e,t],"error");return this._emit(n)},warning(e,t={}){const n=he([e,t],"warning");return this._emit(n)},info(e,t={}){const n=he([e,t],"info");return this._emit(n)},loading(e,t={}){const n=he([e,t],"loading");n.duration=0,n.closeButton=!1,n.showProgress=!1;const o=this._emit(n);return{id:o.id,success:(e,t={})=>this._resolve(o,"success",e||z("success"),t),error:(e,t={})=>this._resolve(o,"error",e||z("error"),t),info:(e,t={})=>this._resolve(o,"info",e||z("info"),t),warning:(e,t={})=>this._resolve(o,"warning",e||z("warning"),t),update:e=>(o.update(e),this),dismiss:()=>o.close()}},promise(e,t={}){if(!e||"function"!=typeof e.then)return Promise.reject(new Error("Invalid promise"));const n=t.loading||z("loading"),o=t.success||z("success"),r=t.error||z("error"),i=this.loading(n);return Promise.resolve(e).then(e=>(i.success(o),e)).catch(e=>{throw i.error(r),e})},_resolve(e,t,n,o){const r=this._toasts.get(e.id);return r?(r.update({...o,type:t,message:n,duration:o.duration??(r.config.duration||this._config.duration)}),r):null},confirm(e,t={}){return"string"!=typeof e?Promise.resolve(!1):new Promise(n=>{let o=!1;const r=e=>{o||(o=!0,clearTimeout(i),n(e))},i=setTimeout(()=>r(!1),1e4),s=this._emit({...t,type:t.type||"warning",message:e,duration:0,closeButton:!1,closeOnClick:!1,draggable:!1,html:oe(t)});setTimeout(()=>{const e=s.el?.querySelector(".met-confirm-btn"),t=s.el?.querySelector(".met-cancel-btn");e&&e.addEventListener("click",()=>{s.close(),r(!0)}),t&&t.addEventListener("click",()=>{s.close(),r(!1)})},0)})},prompt(e,t={}){return"string"!=typeof e?Promise.resolve(null):new Promise(n=>{let o=!1;const r=e=>{o||(o=!0,clearTimeout(i),n(e))},i=setTimeout(()=>r(null),1e4),s=this._emit({...t,type:t.type||"info",message:e,duration:0,closeButton:!1,closeOnClick:!1,draggable:!1,html:re(t)});setTimeout(()=>{const e=s.el?.querySelector(".met-input"),t=s.el?.querySelector(".met-submit-btn"),n=s.el?.querySelector(".met-cancel-btn");e&&(e.focus(),e.addEventListener("keydown",t=>{"Enter"===t.key&&(s.close(),r(e.value))})),t&&t.addEventListener("click",()=>{s.close(),r(e?.value||null)}),n&&n.addEventListener("click",()=>{s.close(),r(null)})},0)})},progress(e,t={}){const n=he([e,t],"info");n.duration=0,n.closeButton=!1,n.showProgress=!1;const o=this._emit({...n,html:ie(t)});return{id:o.id,setProgress(e){const t=o.el?.querySelector(".met-progress-fill"),n=o.el?.querySelector(".met-progress-text");t&&(t.style.width=`${Math.min(100,Math.max(0,e))}%`),n&&(n.textContent=`${Math.round(e)}%`)},complete(e){this.setProgress(100),setTimeout(()=>{o.update({type:"success",message:e||z("success"),html:""}),setTimeout(()=>o.close(),1e3)},300)},error(e){o.update({type:"error",message:e||z("error"),html:""}),setTimeout(()=>o.close(),2e3)},dismiss(){o.close()}}},countdown(e,t=10,n={}){if("string"!=typeof e)return{id:"",cancel:()=>{},pause:()=>{},resume:()=>{}};let o=Math.max(1,parseInt(String(t))||10),r=null;const i=this._emit({...n,type:n.type||"warning",message:e.replace(/\{seconds\}/g,String(o)),duration:0,closeButton:!0,showProgress:!1}),s=()=>{if(o--,o<=0){if(null!==r&&clearInterval(r),i.close(),"function"==typeof n.onComplete)try{n.onComplete()}catch(e){}}else i.update({message:e.replace(/\{seconds\}/g,String(o))})};return r=setInterval(s,1e3),{id:i.id,cancel(){null!==r&&clearInterval(r),i.close()},pause(){null!==r&&clearInterval(r)},resume(){null!==r&&clearInterval(r),r=setInterval(s,1e3)}}},action(e,t=[],n={}){const o=he([e,n],"info");o.duration=n.duration??0,o.closeButton=n.closeButton??!0;const r=this._emit({...o,html:(o.html||"")+se(t)});return Array.isArray(t)&&setTimeout(()=>{t.forEach((e,t)=>{const n=r.el?.querySelector(`.met-action-btn-${t}`);n&&"function"==typeof e.onClick&&n.addEventListener("click",()=>{try{e.onClick(r)}catch(e){}!1!==e.close&&r.close()})})},0),{id:r.id,toast:r,dismiss:()=>r.close()}},queue(e,t={}){if(!Array.isArray(e)){const e=Promise.resolve();return{then:t=>e.then(t),catch:t=>e.catch(t),cancel:()=>{}}}let n=!1;const o=new Promise(o=>{let r=0;const i=t.delay||1e3,s=t.onClose,a=()=>{if(n||r>=e.length)return void o();const l=e[r];r++;const c="string"==typeof l?l:l?.message||"",d="object"==typeof l&&null!==l?l:{},h=d.onClose;this._emit({...t,...d,message:c,duration:d.duration||t.duration||3e3,onClose:e=>{if("function"==typeof h)try{h(e)}catch(e){}if("function"==typeof s)try{s(e)}catch(e){}setTimeout(a,i)}})};a()});return{then:(e,t)=>o.then(e,t),catch:e=>o.catch(e),cancel:()=>{n=!0}}},stack(e,t={}){Array.isArray(e)&&e.forEach((e,n)=>{setTimeout(()=>{const n="string"==typeof e?e:e?.message||"";this._emit({...t,..."object"==typeof e&&null!==e?e:{},message:n})},n*(t.stagger||100))})},dismiss(e){if(e){const t=this._toasts.get(e);return void(t&&t.close())}this._toasts.forEach(e=>e.close())},removeToast(e){if(!e)return;const t=this._toasts.get(e);t&&t.remove()},clear(e){this._toasts.forEach(t=>{e&&t.config.position!==e||t.close()})},getAll(){return new Map(this._toasts)},count(){return this._toasts.size},group(e){const t=this,n={_group:e};return["show","success","error","warning","info","loading","action"].forEach(o=>{n[o]=(...n)=>{const r=n[n.length-1],i="object"==typeof r&&null!==r&&!Array.isArray(r),s=t;return i&&1===n.length?s[o]({...r,group:e}):i?(n.pop(),s[o](...n,{...r,group:e})):s[o](...n,{group:e})}}),n.dismiss=()=>t.dismissGroup(e),n.count=()=>t._groupCount(e),n},dismissGroup(e){this._toasts.forEach(t=>{t.group===e&&t.close()})},_groupCount(e){let t=0;return this._toasts.forEach(n=>{n.group===e&&t++}),t},getToasts(){return Array.from(this._toasts.values())},hasToasts(){return this._toasts.size>0},getToast(e){return e&&this._toasts.get(e)||null},closeAll(){this._toasts.forEach(e=>e.close())},clearAll(){this._toasts.forEach(e=>e.close())},pauseAll(){this._toasts.forEach(e=>e._pause())},resumeAll(){this._toasts.forEach(e=>e._resume())},updateAll(e){e&&"object"==typeof e&&this._toasts.forEach(t=>t.update(e))},findToasts(e){return"function"!=typeof e?[]:Array.from(this._toasts.values()).filter(e)},findByType(e){return this.findToasts(t=>t.type===e)},findByPosition(e){return this.findToasts(t=>t.config.position===e)},init(e={}){return ee.trigger("beforeInit"),this._destroyed=!1,e.config&&this.configure(e.config),e.theme&&this.themes&&this.themes.switchTheme(e.theme),e.locale&&this.i18n&&this.i18n.switchLocale(e.locale),e.plugins&&Array.isArray(e.plugins)&&e.plugins.forEach(e=>{this.use(e)}),ee.trigger("afterInit"),this},getStatus(){return{version:r,toasts:this._toasts.size,theme:this.themes?.getCurrentTheme?.()||"auto",locale:this.i18n?.getCurrentLocale?.()||"zh-CN",plugins:this.plugins?.getNames?.()||[],animations:this.animations?.getActiveCount?.()||0}},getConfig(){return{...this._config}},updateConfig(e){return e&&"object"==typeof e&&(Object.assign(this._config,e),ee.trigger("configChange")),this},resetConfig(){return Object.keys(this._config).forEach(e=>delete this._config[e]),Object.assign(this._config,i),ee.trigger("configChange"),this},use(e,t={}){if("string"==typeof e){const n=le[e];if(!n)return this;if(this.plugins.register(e,{...n,...t}),"accessibility"===e&&ee.on("afterShow",e=>{const t=n;"function"==typeof t.announce&&t.announce(e)}),"persistence"===e){const e="function"==typeof n.install?n.install(this.plugins):null;e&&this.configure(e),ee.on("afterClose",()=>{const e=n;"function"==typeof e.save&&e.save(this.getConfig())})}}else e&&"object"==typeof e&&this.plugins.register(e.name||"custom",{...e,...t});return this},destroy(){this._destroyed||(this._destroyed=!0,ee.trigger("beforeDestroy"),this.dismiss(),this.plugins&&"function"==typeof this.plugins.destroy&&this.plugins.destroy(),this.themes&&("function"==typeof this.themes.clearThemeListeners&&this.themes.clearThemeListeners(),"function"==typeof this.themes.unwatchSystemTheme&&this.themes.unwatchSystemTheme()),this.i18n&&"function"==typeof this.i18n.clearLocaleListeners&&this.i18n.clearLocaleListeners(),this.animations&&"function"==typeof this.animations.destroy&&this.animations.destroy(),"undefined"!=typeof document&&(document.querySelectorAll(".met-container").forEach(e=>{e.parentNode&&e.parentNode.removeChild(e)}),["metona-toast-styles","metona-toast-theme-css","metona-toast-custom-styles","metona-toast-anim-styles"].forEach(e=>{const t=document.getElementById(e);t&&t.parentNode&&t.parentNode.removeChild(t)})),this._toasts.clear(),te.clear(),ee._registry.clear(),ee.trigger("afterDestroy"),ee._hooks.clear())},animations:null,themes:null,i18n:null,plugins:null,presetPlugins:{}};ee.setCallbacks({onError:e=>{const t=ge._config.onError;if("function"==typeof t)try{t(e)}catch(e){}},removeToast:e=>{ge._toasts.delete(e)}});const pe={...ge,version:r,animations:Q,themes:_,i18n:W,plugins:ce,presetPlugins:le};if("function"==typeof _.initTheme&&_.initTheme(),"function"==typeof W.initI18n&&W.initI18n(),"function"==typeof _.addThemeListener&&_.addThemeListener(()=>ee.trigger("themeChange")),"function"==typeof W.addLocaleListener&&W.addLocaleListener(()=>ee.trigger("localeChange")),"undefined"!=typeof window){window.MeToast=pe,window.Met=pe;const e=e=>{try{new Notification(e.title||e.type,{body:e.message})}catch(e){}};pe._notify=t=>{"undefined"!=typeof Notification&&"denied"!==Notification.permission&&document.hidden&&("default"!==Notification.permission?e(t):Notification.requestPermission().then(n=>{"granted"===n&&e(t)}))},ee.on("afterShow",e=>{e.config.notifyWhenHidden&&pe._notify(e)})}e.MeToast=pe,e.Met=pe,e.Toast=ee,e.VERSION=r,e.default=pe,e.meToast=pe,Object.defineProperty(e,"__esModule",{value:!0})});
diff --git a/dist/react.cjs.js b/dist/react.cjs.js
new file mode 100644
index 0000000..e2ba30c
--- /dev/null
+++ b/dist/react.cjs.js
@@ -0,0 +1,4582 @@
+'use strict';
+
+var react = require('react');
+
+/**
+ * MetonaToast Utils — 工具函数
+ * @module utils
+ * @version 0.4.0
+ */
+/**
+ * 生成唯一ID
+ */
+const generateId = () => {
+ return 'met-' + Date.now().toString(36) + '-' + Math.random().toString(36).slice(2, 8);
+};
+/**
+ * HTML转义
+ * @param s - 输入字符串
+ */
+const escapeHTML = (s) => {
+ if (typeof document === 'undefined') {
+ return String(s == null ? '' : s)
+ .replace(/&/g, '&')
+ .replace(//g, '>')
+ .replace(/"/g, '"')
+ .replace(/'/g, ''');
+ }
+ const div = document.createElement('div');
+ div.textContent = String(s == null ? '' : s);
+ return div.innerHTML;
+};
+/**
+ * 检测暗色模式偏好
+ */
+const prefersDark = () => {
+ return typeof window !== 'undefined' &&
+ typeof window.matchMedia === 'function' &&
+ window.matchMedia('(prefers-color-scheme: dark)').matches;
+};
+
+/**
+ * MetonaToast Icons — 图标SVG定义
+ * @module icons
+ * @version 0.4.0
+ * @description 107 个内置 SVG 图标
+ */
+const ICONS = {
+ success: ``,
+ error: ``,
+ warning: ``,
+ info: ``,
+ loading: ``,
+ close: ``,
+ check: ``,
+ x: ``,
+ alert: ``,
+ question: ``,
+ star: ``,
+ heart: ``,
+ bell: ``,
+ mail: ``,
+ settings: ``,
+ user: ``,
+ home: ``,
+ search: ``,
+ plus: ``,
+ minus: ``,
+ edit: ``,
+ trash: ``,
+ download: ``,
+ upload: ``,
+ share: ``,
+ link: ``,
+ external: ``,
+ clock: ``,
+ calendar: ``,
+ map: ``,
+ compass: ``,
+ globe: ``,
+ wifi: ``,
+ cloud: ``,
+ sun: ``,
+ moon: ``,
+ zap: ``,
+ activity: ``,
+ cpu: ``,
+ database: ``,
+ server: ``,
+ terminal: ``,
+ code: ``,
+ git: ``,
+ package: ``,
+ layers: ``,
+ grid: ``,
+ list: ``,
+ filter: ``,
+ sort: ``,
+ refresh: ``,
+ sync: ``,
+ power: ``,
+ battery: ``,
+ bluetooth: ``,
+ volume: ``,
+ mic: ``,
+ camera: ``,
+ image: ``,
+ video: ``,
+ music: ``,
+ file: ``,
+ folder: ``,
+ clipboard: ``,
+ save: ``,
+ print: ``,
+ eye: ``,
+ eyeOff: ``,
+ lock: ``,
+ unlock: ``,
+ shield: ``,
+ key: ``,
+ flag: ``,
+ bookmark: ``,
+ tag: ``,
+ gift: ``,
+ award: ``,
+ target: ``,
+ crosshair: ``,
+ move: ``,
+ maximize: ``,
+ minimize: ``,
+ copy: ``,
+ cut: ``,
+ paste: ``,
+ rotateCw: ``,
+ rotateCcw: ``,
+ zoomIn: ``,
+ zoomOut: ``,
+ crop: ``,
+ sliders: ``,
+ toggleLeft: ``,
+ toggleRight: ``,
+ checkCircle: ``,
+ xCircle: ``,
+ alertCircle: ``,
+ infoCircle: ``,
+ helpCircle: ``,
+ alertTriangle: ``,
+ checkSquare: ``,
+ square: ``,
+ circle: ``,
+ triangle: ``,
+ hexagon: ``,
+ octagon: ``,
+ pentagon: ``,
+ diamond: ``,
+};
+
+/**
+ * MetonaToast Locales — 国际化翻译数据
+ * @module locales
+ * @version 0.4.0
+ * @description 内置 zh-CN / en-US 完整翻译
+ */
+const LOCALES = {
+ 'zh-CN': {
+ // === 操作 ===
+ close: '关闭',
+ loading: '加载中...',
+ success: '操作成功',
+ error: '操作失败',
+ warning: '警告',
+ info: '信息',
+ confirm: '确认',
+ cancel: '取消',
+ yes: '是',
+ no: '否',
+ ok: '确定',
+ retry: '重试',
+ undo: '撤销',
+ redo: '重做',
+ save: '保存',
+ delete: '删除',
+ edit: '编辑',
+ add: '添加',
+ remove: '移除',
+ search: '搜索',
+ filter: '筛选',
+ sort: '排序',
+ refresh: '刷新',
+ sync: '同步',
+ upload: '上传',
+ download: '下载',
+ share: '分享',
+ copy: '复制',
+ cut: '剪切',
+ paste: '粘贴',
+ print: '打印',
+ export: '导出',
+ import: '导入',
+ settings: '设置',
+ help: '帮助',
+ about: '关于',
+ version: '版本',
+ language: '语言',
+ theme: '主题',
+ dark: '暗色',
+ light: '亮色',
+ auto: '自动',
+ notifications: '通知',
+ enable: '启用',
+ disable: '禁用',
+ on: '开启',
+ off: '关闭',
+ max: '最大',
+ min: '最小',
+ expand: '展开',
+ collapse: '折叠',
+ fullscreen: '全屏',
+ exitFullscreen: '退出全屏',
+ zoomIn: '放大',
+ zoomOut: '缩小',
+ reset: '重置',
+ apply: '应用',
+ submit: '提交',
+ send: '发送',
+ receive: '接收',
+ connect: '连接',
+ disconnect: '断开',
+ start: '开始',
+ stop: '停止',
+ pause: '暂停',
+ resume: '继续',
+ next: '下一个',
+ previous: '上一个',
+ first: '第一个',
+ last: '最后一个',
+ back: '返回',
+ forward: '前进',
+ home: '首页',
+ menu: '菜单',
+ more: '更多',
+ less: '更少',
+ show: '显示',
+ hide: '隐藏',
+ visible: '可见',
+ hidden: '隐藏',
+ // === 状态 ===
+ enabled: '已启用',
+ disabled: '已禁用',
+ active: '活跃',
+ inactive: '非活跃',
+ online: '在线',
+ offline: '离线',
+ connected: '已连接',
+ disconnected: '已断开',
+ loaded: '已加载',
+ saving: '保存中',
+ saved: '已保存',
+ deleting: '删除中',
+ deleted: '已删除',
+ uploading: '上传中',
+ uploaded: '已上传',
+ downloading: '下载中',
+ downloaded: '已下载',
+ processing: '处理中',
+ processed: '已处理',
+ syncing: '同步中',
+ synced: '已同步',
+ sending: '发送中',
+ sent: '已发送',
+ receiving: '接收中',
+ received: '已接收',
+ connecting: '连接中',
+ // === 交互 ===
+ question: '问题',
+ feedback: '反馈',
+ report: '报告',
+ bug: '错误',
+ feature: '功能',
+ improvement: '改进',
+ suggestion: '建议',
+ request: '请求',
+ response: '响应',
+ status: '状态',
+ progress: '进度',
+ complete: '完成',
+ incomplete: '未完成',
+ pending: '待处理',
+ failed: '失败',
+ cancelled: '已取消',
+ timeout: '超时',
+ expired: '已过期',
+ invalid: '无效',
+ valid: '有效',
+ required: '必填',
+ optional: '可选',
+ allowed: '允许',
+ denied: '拒绝',
+ approved: '已批准',
+ rejected: '已拒绝',
+ accepted: '已接受',
+ declined: '已拒绝',
+ confirmed: '已确认',
+ unconfirmed: '未确认',
+ verified: '已验证',
+ unverified: '未验证',
+ authenticated: '已认证',
+ unauthenticated: '未认证',
+ authorized: '已授权',
+ unauthorized: '未授权',
+ // === 范围 / 角色 ===
+ public: '公开',
+ private: '私有',
+ protected: '受保护',
+ internal: '内部',
+ external: '外部',
+ local: '本地',
+ remote: '远程',
+ global: '全局',
+ system: '系统',
+ user: '用户',
+ admin: '管理员',
+ moderator: '版主',
+ guest: '访客',
+ member: '成员',
+ owner: '所有者',
+ creator: '创建者',
+ editor: '编辑者',
+ viewer: '查看者',
+ subscriber: '订阅者',
+ follower: '关注者',
+ following: '关注中',
+ friend: '朋友',
+ contact: '联系人',
+ // === 组织 ===
+ group: '群组',
+ team: '团队',
+ organization: '组织',
+ company: '公司',
+ department: '部门',
+ project: '项目',
+ task: '任务',
+ issue: '问题',
+ ticket: '工单',
+ message: '消息',
+ notification: '通知',
+ alert: '警报',
+ reminder: '提醒',
+ event: '事件',
+ activity: '活动',
+ log: '日志',
+ analytics: '分析',
+ statistics: '统计',
+ metrics: '指标',
+ performance: '性能',
+ security: '安全',
+ privacy: '隐私',
+ compliance: '合规',
+ policy: '政策',
+ terms: '条款',
+ conditions: '条件',
+ agreement: '协议',
+ contract: '合同',
+ license: '许可证',
+ copyright: '版权',
+ trademark: '商标',
+ patent: '专利',
+ tradeSecret: '商业秘密',
+ confidential: '机密',
+ sensitive: '敏感',
+ critical: '关键',
+ important: '重要',
+ urgent: '紧急',
+ high: '高',
+ medium: '中',
+ low: '低',
+ none: '无',
+ all: '全部',
+ any: '任何',
+ some: '一些',
+ each: '每个',
+ every: '每个',
+ both: '两者',
+ neither: '两者都不',
+ either: '任一',
+ other: '其他',
+ another: '另一个',
+ this: '这个',
+ that: '那个',
+ these: '这些',
+ those: '那些',
+ here: '这里',
+ there: '那里',
+ where: '哪里',
+ when: '何时',
+ why: '为什么',
+ how: '如何',
+ what: '什么',
+ who: '谁',
+ which: '哪个',
+ whose: '谁的',
+ whom: '谁',
+ },
+ 'en-US': {
+ // === Actions ===
+ close: 'Close',
+ loading: 'Loading...',
+ success: 'Success',
+ error: 'Error',
+ warning: 'Warning',
+ info: 'Info',
+ confirm: 'Confirm',
+ cancel: 'Cancel',
+ yes: 'Yes',
+ no: 'No',
+ ok: 'OK',
+ retry: 'Retry',
+ undo: 'Undo',
+ redo: 'Redo',
+ save: 'Save',
+ delete: 'Delete',
+ edit: 'Edit',
+ add: 'Add',
+ remove: 'Remove',
+ search: 'Search',
+ filter: 'Filter',
+ sort: 'Sort',
+ refresh: 'Refresh',
+ sync: 'Sync',
+ upload: 'Upload',
+ download: 'Download',
+ share: 'Share',
+ copy: 'Copy',
+ cut: 'Cut',
+ paste: 'Paste',
+ print: 'Print',
+ export: 'Export',
+ import: 'Import',
+ settings: 'Settings',
+ help: 'Help',
+ about: 'About',
+ version: 'Version',
+ language: 'Language',
+ theme: 'Theme',
+ dark: 'Dark',
+ light: 'Light',
+ auto: 'Auto',
+ notifications: 'Notifications',
+ enable: 'Enable',
+ disable: 'Disable',
+ on: 'On',
+ off: 'Off',
+ max: 'Max',
+ min: 'Min',
+ expand: 'Expand',
+ collapse: 'Collapse',
+ fullscreen: 'Fullscreen',
+ exitFullscreen: 'Exit Fullscreen',
+ zoomIn: 'Zoom In',
+ zoomOut: 'Zoom Out',
+ reset: 'Reset',
+ apply: 'Apply',
+ submit: 'Submit',
+ send: 'Send',
+ receive: 'Receive',
+ connect: 'Connect',
+ disconnect: 'Disconnect',
+ start: 'Start',
+ stop: 'Stop',
+ pause: 'Pause',
+ resume: 'Resume',
+ next: 'Next',
+ previous: 'Previous',
+ first: 'First',
+ last: 'Last',
+ back: 'Back',
+ forward: 'Forward',
+ home: 'Home',
+ menu: 'Menu',
+ more: 'More',
+ less: 'Less',
+ show: 'Show',
+ hide: 'Hide',
+ visible: 'Visible',
+ hidden: 'Hidden',
+ // === Status ===
+ enabled: 'Enabled',
+ disabled: 'Disabled',
+ active: 'Active',
+ inactive: 'Inactive',
+ online: 'Online',
+ offline: 'Offline',
+ connected: 'Connected',
+ disconnected: 'Disconnected',
+ loaded: 'Loaded',
+ saving: 'Saving',
+ saved: 'Saved',
+ deleting: 'Deleting',
+ deleted: 'Deleted',
+ uploading: 'Uploading',
+ uploaded: 'Uploaded',
+ downloading: 'Downloading',
+ downloaded: 'Downloaded',
+ processing: 'Processing',
+ processed: 'Processed',
+ syncing: 'Syncing',
+ synced: 'Synced',
+ sending: 'Sending',
+ sent: 'Sent',
+ receiving: 'Receiving',
+ received: 'Received',
+ connecting: 'Connecting',
+ // === Interaction ===
+ question: 'Question',
+ feedback: 'Feedback',
+ report: 'Report',
+ bug: 'Bug',
+ feature: 'Feature',
+ improvement: 'Improvement',
+ suggestion: 'Suggestion',
+ request: 'Request',
+ response: 'Response',
+ status: 'Status',
+ progress: 'Progress',
+ complete: 'Complete',
+ incomplete: 'Incomplete',
+ pending: 'Pending',
+ failed: 'Failed',
+ cancelled: 'Cancelled',
+ timeout: 'Timeout',
+ expired: 'Expired',
+ invalid: 'Invalid',
+ valid: 'Valid',
+ required: 'Required',
+ optional: 'Optional',
+ allowed: 'Allowed',
+ denied: 'Denied',
+ approved: 'Approved',
+ rejected: 'Rejected',
+ accepted: 'Accepted',
+ declined: 'Declined',
+ confirmed: 'Confirmed',
+ unconfirmed: 'Unconfirmed',
+ verified: 'Verified',
+ unverified: 'Unverified',
+ authenticated: 'Authenticated',
+ unauthenticated: 'Unauthenticated',
+ authorized: 'Authorized',
+ unauthorized: 'Unauthorized',
+ // === Scope / Role ===
+ public: 'Public',
+ private: 'Private',
+ protected: 'Protected',
+ internal: 'Internal',
+ external: 'External',
+ local: 'Local',
+ remote: 'Remote',
+ global: 'Global',
+ system: 'System',
+ user: 'User',
+ admin: 'Admin',
+ moderator: 'Moderator',
+ guest: 'Guest',
+ member: 'Member',
+ owner: 'Owner',
+ creator: 'Creator',
+ editor: 'Editor',
+ viewer: 'Viewer',
+ subscriber: 'Subscriber',
+ follower: 'Follower',
+ following: 'Following',
+ friend: 'Friend',
+ contact: 'Contact',
+ // === Organization ===
+ group: 'Group',
+ team: 'Team',
+ organization: 'Organization',
+ company: 'Company',
+ department: 'Department',
+ project: 'Project',
+ task: 'Task',
+ issue: 'Issue',
+ ticket: 'Ticket',
+ message: 'Message',
+ notification: 'Notification',
+ alert: 'Alert',
+ reminder: 'Reminder',
+ event: 'Event',
+ activity: 'Activity',
+ log: 'Log',
+ analytics: 'Analytics',
+ statistics: 'Statistics',
+ metrics: 'Metrics',
+ performance: 'Performance',
+ security: 'Security',
+ privacy: 'Privacy',
+ compliance: 'Compliance',
+ policy: 'Policy',
+ terms: 'Terms',
+ conditions: 'Conditions',
+ agreement: 'Agreement',
+ contract: 'Contract',
+ license: 'License',
+ copyright: 'Copyright',
+ trademark: 'Trademark',
+ patent: 'Patent',
+ tradeSecret: 'Trade Secret',
+ confidential: 'Confidential',
+ sensitive: 'Sensitive',
+ critical: 'Critical',
+ important: 'Important',
+ urgent: 'Urgent',
+ high: 'High',
+ medium: 'Medium',
+ low: 'Low',
+ none: 'None',
+ all: 'All',
+ any: 'Any',
+ some: 'Some',
+ each: 'Each',
+ every: 'Every',
+ both: 'Both',
+ neither: 'Neither',
+ either: 'Either',
+ other: 'Other',
+ another: 'Another',
+ this: 'This',
+ that: 'That',
+ these: 'These',
+ those: 'Those',
+ here: 'Here',
+ there: 'There',
+ where: 'Where',
+ when: 'When',
+ why: 'Why',
+ how: 'How',
+ what: 'What',
+ who: 'Who',
+ which: 'Which',
+ whose: 'Whose',
+ whom: 'Whom',
+ },
+};
+
+/**
+ * MetonaToast Constants — 常量定义
+ * @module constants
+ * @version 0.4.0
+ */
+/**
+ * 版本号 — 唯一来源,发布时只需修改此处
+ */
+const VERSION = '0.4.0';
+/**
+ * 默认配置
+ */
+const DEFAULTS = Object.freeze({
+ position: 'top-right',
+ duration: 4000,
+ max: 6,
+ gap: 12,
+ offset: 24,
+ pauseOnHover: true,
+ closeOnClick: true,
+ draggable: true,
+ dragThreshold: 120,
+ showProgress: true,
+ progressDirection: 'horizontal',
+ icon: true,
+ closeButton: true,
+ theme: 'auto',
+ animation: 'slide',
+ zIndex: 9999,
+ width: 360,
+ className: '',
+ style: {},
+ onShow: null,
+ onBeforeShow: null,
+ onClose: null,
+ onClick: null,
+ onUpdate: null,
+ resetTimerOnUpdate: false,
+ notifyWhenHidden: false,
+ onError: null,
+ locale: 'zh-CN',
+ plugins: [],
+});
+/**
+ * 类型颜色配置
+ */
+const TYPE_COLORS = {
+ success: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ error: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ warning: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ info: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ loading: { fg: '#6366f1', bg: 'rgba(99, 102, 241, 0.1)' },
+ default: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ check: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ x: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ alert: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ question: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ star: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ heart: { fg: '#ec4899', bg: 'rgba(236, 72, 153, 0.1)' },
+ bell: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ mail: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ settings: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ user: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ home: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ search: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ plus: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ minus: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ edit: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ trash: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ download: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ upload: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ share: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ link: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ external: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ clock: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ calendar: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ map: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ compass: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ globe: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ wifi: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ cloud: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ sun: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ moon: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ zap: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ activity: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ cpu: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ database: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ server: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ terminal: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ code: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ git: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ package: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ layers: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ grid: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ list: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ filter: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ sort: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ refresh: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ sync: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ power: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ battery: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ bluetooth: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ volume: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ mic: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ camera: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ image: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ video: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ music: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ file: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ folder: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ clipboard: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ save: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ print: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ eye: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ eyeOff: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ lock: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ unlock: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ shield: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ key: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ flag: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ bookmark: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ tag: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ gift: { fg: '#ec4899', bg: 'rgba(236, 72, 153, 0.1)' },
+ award: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ target: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ crosshair: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ move: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ maximize: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ minimize: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ copy: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ cut: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ paste: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ rotateCw: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ rotateCcw: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ zoomIn: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ zoomOut: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ crop: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ sliders: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ toggleLeft: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ toggleRight: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ checkCircle: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ xCircle: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ alertCircle: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ infoCircle: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ helpCircle: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ alertTriangle: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ checkSquare: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ square: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ circle: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ triangle: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ hexagon: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ octagon: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ pentagon: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ diamond: { fg: '#ec4899', bg: 'rgba(236, 72, 153, 0.1)' },
+};
+/**
+ * 动画配置
+ */
+const ANIMATIONS = {
+ slide: {
+ enter: { transform: 'translateX(80px)', opacity: '0' },
+ leave: { transform: 'translateX(120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ fade: {
+ enter: { opacity: '0', filter: 'blur(3px)' },
+ leave: { opacity: '0', filter: 'blur(3px)' },
+ duration: 500,
+ easing: 'ease',
+ },
+ scale: {
+ enter: { transform: 'scale(0.55)', opacity: '0' },
+ leave: { transform: 'scale(0.55)', opacity: '0' },
+ duration: 450,
+ easing: 'cubic-bezier(0.34, 1.56, 0.64, 1)',
+ },
+ bounce: {
+ enter: { transform: 'translateY(-80px)', opacity: '0' },
+ leave: { transform: 'translateY(20px)', opacity: '0' },
+ duration: 650,
+ easing: 'ease',
+ },
+ flip: {
+ enter: { transform: 'perspective(500px) rotateX(-90deg)', opacity: '0' },
+ leave: { transform: 'perspective(500px) rotateX(90deg)', opacity: '0' },
+ duration: 500,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ rotate: {
+ enter: { transform: 'rotate(-25deg) scale(0.6)', opacity: '0' },
+ leave: { transform: 'rotate(25deg) scale(0.6)', opacity: '0' },
+ duration: 500,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ zoom: {
+ enter: { transform: 'scale(0.1)', opacity: '0' },
+ leave: { transform: 'scale(0.1)', opacity: '0' },
+ duration: 500,
+ easing: 'cubic-bezier(0.34, 1.56, 0.64, 1)',
+ },
+ slideUp: {
+ enter: { transform: 'translateY(60px)', opacity: '0' },
+ leave: { transform: 'translateY(-120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ slideDown: {
+ enter: { transform: 'translateY(-60px)', opacity: '0' },
+ leave: { transform: 'translateY(120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ slideLeft: {
+ enter: { transform: 'translateX(-90px)', opacity: '0' },
+ leave: { transform: 'translateX(120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ slideRight: {
+ enter: { transform: 'translateX(90px)', opacity: '0' },
+ leave: { transform: 'translateX(-120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+};
+/**
+ * 主题配置
+ */
+const THEMES = {
+ light: {
+ bg: 'rgba(255, 255, 255, 0.96)',
+ text: '#1f2937',
+ border: 'rgba(0, 0, 0, 0.06)',
+ shadow: '0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)',
+ hoverShadow: '0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)',
+ progressBg: 'rgba(0, 0, 0, 0.06)',
+ closeHoverBg: 'rgba(0, 0, 0, 0.06)',
+ },
+ dark: {
+ bg: 'rgba(28, 32, 40, 0.94)',
+ text: '#e6e8eb',
+ border: 'rgba(255, 255, 255, 0.08)',
+ shadow: '0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4)',
+ hoverShadow: '0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4)',
+ progressBg: 'rgba(255, 255, 255, 0.08)',
+ closeHoverBg: 'rgba(255, 255, 255, 0.08)',
+ },
+ auto: {
+ bg: 'rgba(255, 255, 255, 0.96)',
+ text: '#1f2937',
+ border: 'rgba(0, 0, 0, 0.06)',
+ shadow: '0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)',
+ hoverShadow: '0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)',
+ progressBg: 'rgba(0, 0, 0, 0.06)',
+ closeHoverBg: 'rgba(0, 0, 0, 0.06)',
+ },
+ warm: {
+ bg: 'rgba(255, 251, 235, 0.96)',
+ text: '#78350f',
+ border: 'rgba(245, 158, 11, 0.2)',
+ shadow: '0 10px 36px -10px rgba(245, 158, 11, 0.18), 0 4px 14px -4px rgba(245, 158, 11, 0.08)',
+ hoverShadow: '0 14px 48px -10px rgba(245, 158, 11, 0.22), 0 6px 18px -4px rgba(245, 158, 11, 0.10)',
+ progressBg: 'rgba(245, 158, 11, 0.1)',
+ closeHoverBg: 'rgba(245, 158, 11, 0.1)',
+ },
+};
+/**
+ * 动画类型
+ */
+const ANIMATION_TYPES = ['slide', 'fade', 'scale', 'bounce', 'flip', 'rotate', 'zoom', 'slideUp', 'slideDown', 'slideLeft', 'slideRight'];
+
+/**
+ * MetonaToast Styles — 样式管理
+ * @module styles
+ * @version 0.4.0
+ */
+// 样式缓存
+let styleElement = null;
+/**
+ * 生成CSS样式
+ */
+const generateCSS = () => {
+ return `
+ .met-container {
+ pointer-events: none;
+ display: flex;
+ flex-direction: column;
+ gap: 12px;
+ box-sizing: border-box;
+ padding: 24px;
+ max-width: 100vw;
+ position: fixed;
+ z-index: 9999;
+ }
+
+ .met-container.top-left { top: 0; left: 0; align-items: flex-start; }
+ .met-container.top-center { top: 0; left: 0; right: 0; align-items: center; }
+ .met-container.top-right { top: 0; right: 0; align-items: flex-end; }
+ .met-container.bottom-left { bottom: 0; left: 0; align-items: flex-start; }
+ .met-container.bottom-center{ bottom: 0; left: 0; right: 0; align-items: center; }
+ .met-container.bottom-right { bottom: 0; right: 0; align-items: flex-end; }
+
+ .met-toast {
+ position: relative;
+ display: flex;
+ align-items: flex-start;
+ gap: 12px;
+ padding: 14px 16px;
+ border-radius: 12px;
+ box-sizing: border-box;
+ backdrop-filter: blur(14px) saturate(180%);
+ -webkit-backdrop-filter: blur(14px) saturate(180%);
+ font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
+ user-select: none;
+ -webkit-user-select: none;
+ transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1),
+ box-shadow 0.25s ease,
+ opacity 0.25s ease;
+ will-change: transform, opacity;
+ flex-shrink: 0;
+ pointer-events: auto;
+ min-width: 240px;
+ max-width: calc(100vw - 48px);
+ width: 360px;
+ border: 1px solid var(--met-border, rgba(0,0,0,0.06));
+ background: var(--met-bg, rgba(255,255,255,0.96));
+ color: var(--met-text, #1f2937);
+ box-shadow: var(--met-shadow, 0 10px 36px -10px rgba(0,0,0,0.18), 0 4px 14px -4px rgba(0,0,0,0.08));
+ transform: translateZ(0);
+ -webkit-transform: translateZ(0);
+ backface-visibility: hidden;
+ -webkit-backface-visibility: hidden;
+ perspective: 1000;
+ }
+
+ .met-toast:hover {
+ box-shadow: var(--met-hover-shadow, 0 14px 48px -10px rgba(0,0,0,0.22), 0 6px 18px -4px rgba(0,0,0,0.10)) !important;
+ }
+
+ .met-toast.met-clickable {
+ cursor: pointer;
+ }
+
+ .met-icon {
+ flex-shrink: 0;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ width: 24px;
+ height: 24px;
+ margin-top: 1px;
+ }
+
+ .met-content {
+ flex: 1;
+ min-width: 0;
+ word-wrap: break-word;
+ overflow-wrap: break-word;
+ }
+
+ .met-title {
+ font-weight: 600;
+ font-size: 14px;
+ letter-spacing: 0.1px;
+ }
+
+ .met-message {
+ font-size: 13px;
+ opacity: 0.85;
+ margin-top: 2px;
+ }
+
+ .met-close {
+ flex-shrink: 0;
+ background: transparent;
+ border: 0;
+ padding: 4px;
+ cursor: pointer;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ border-radius: 6px;
+ transition: background 0.2s, color 0.2s;
+ line-height: 0;
+ color: inherit;
+ opacity: 0.5;
+ }
+
+ .met-close:hover {
+ opacity: 1;
+ background: var(--met-close-hover-bg, rgba(0,0,0,0.06));
+ }
+
+ .met-progress {
+ position: absolute;
+ left: 0; right: 0; bottom: 0;
+ height: 3px;
+ overflow: hidden;
+ background: var(--met-progress-bg, rgba(0,0,0,0.06));
+ border-radius: 0 0 12px 12px;
+ }
+
+ .met-progress-v {
+ position: absolute;
+ left: 0; top: 0; bottom: 0;
+ width: 3px;
+ overflow: hidden;
+ background: var(--met-progress-bg, rgba(0,0,0,0.06));
+ border-radius: 12px 0 0 12px;
+ }
+
+ .met-bar {
+ position: absolute;
+ left: 0; top: 0;
+ height: 100%; width: 100%;
+ transform-origin: left;
+ transform: scaleX(1);
+ }
+
+ .met-bar-v {
+ position: absolute;
+ left: 0; bottom: 0;
+ width: 100%; height: 100%;
+ transform-origin: bottom;
+ transform: scaleY(1);
+ }
+
+ .met-side {
+ position: absolute;
+ left: 0; top: 0; bottom: 0;
+ width: 4px;
+ border-radius: 12px 0 0 12px;
+ }
+
+ .met-spin {
+ animation: met-rot 1s linear infinite;
+ transform-origin: 50% 50%;
+ }
+
+ .met-toast.met-leaving {
+ pointer-events: none;
+ z-index: 1;
+ }
+
+ @keyframes met-rot {
+ to { transform: rotate(360deg); }
+ }
+
+ .met-anim-slide.met-toast,
+ .met-anim-fade.met-toast,
+ .met-anim-scale.met-toast,
+ .met-anim-bounce.met-toast,
+ .met-anim-flip.met-toast,
+ .met-anim-rotate.met-toast,
+ .met-anim-zoom.met-toast,
+ .met-anim-slideUp.met-toast,
+ .met-anim-slideDown.met-toast,
+ .met-anim-slideLeft.met-toast,
+ .met-anim-slideRight.met-toast {
+ opacity: 0;
+ }
+
+ @keyframes met-slide-in {
+ 0% { transform: translateX(80px); opacity: 0; }
+ 65% { transform: translateX(-6px); opacity: 1; }
+ 100% { transform: translateX(0); opacity: 1; }
+ }
+ @keyframes met-fade-in {
+ 0% { opacity: 0; filter: blur(3px); }
+ 100% { opacity: 1; filter: blur(0); }
+ }
+ @keyframes met-scale-in {
+ 0% { transform: scale(0.55); opacity: 0; }
+ 65% { transform: scale(1.07); opacity: 1; }
+ 100% { transform: scale(1); opacity: 1; }
+ }
+ @keyframes met-bounce-in {
+ 0% { transform: translateY(-80px); opacity: 0; animation-timing-function: ease-in; }
+ 45% { transform: translateY(14px); opacity: 1; animation-timing-function: ease-out; }
+ 65% { transform: translateY(-12px); animation-timing-function: ease-in; }
+ 82% { transform: translateY(4px); animation-timing-function: ease-out; }
+ 100% { transform: translateY(0); opacity: 1; }
+ }
+ @keyframes met-flip-in {
+ 0% { transform: perspective(500px) rotateX(-90deg); opacity: 0; }
+ 60% { transform: perspective(500px) rotateX(8deg); opacity: 1; }
+ 85% { transform: perspective(500px) rotateX(-2deg); }
+ 100% { transform: perspective(500px) rotateX(0); opacity: 1; }
+ }
+ @keyframes met-rotate-in {
+ 0% { transform: rotate(-25deg) scale(0.6); opacity: 0; }
+ 60% { transform: rotate(4deg) scale(1.05); opacity: 1; }
+ 85% { transform: rotate(-1deg) scale(0.98); }
+ 100% { transform: rotate(0) scale(1); opacity: 1; }
+ }
+ @keyframes met-zoom-in {
+ 0% { transform: scale(0.1); opacity: 0; }
+ 50% { transform: scale(1.12); opacity: 1; }
+ 75% { transform: scale(0.94); }
+ 100% { transform: scale(1); opacity: 1; }
+ }
+ @keyframes met-slideUp-in {
+ 0% { transform: translateY(60px); opacity: 0; }
+ 70% { transform: translateY(-6px); opacity: 1; }
+ 100% { transform: translateY(0); opacity: 1; }
+ }
+ @keyframes met-slideDown-in {
+ 0% { transform: translateY(-60px); opacity: 0; }
+ 70% { transform: translateY(6px); opacity: 1; }
+ 100% { transform: translateY(0); opacity: 1; }
+ }
+ @keyframes met-slideLeft-in {
+ 0% { transform: translateX(-90px); opacity: 0; }
+ 65% { transform: translateX(6px); opacity: 1; }
+ 100% { transform: translateX(0); opacity: 1; }
+ }
+ @keyframes met-slideRight-in {
+ 0% { transform: translateX(90px); opacity: 0; }
+ 65% { transform: translateX(-6px); opacity: 1; }
+ 100% { transform: translateX(0); opacity: 1; }
+ }
+
+ .met-anim-slide.met-toast.met-show { animation: met-slide-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-fade.met-toast.met-show { animation: met-fade-in 0.50s ease forwards; }
+ .met-anim-scale.met-toast.met-show { animation: met-scale-in 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }
+ .met-anim-bounce.met-toast.met-show { animation: met-bounce-in 0.65s ease forwards; }
+ .met-anim-flip.met-toast.met-show { animation: met-flip-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-rotate.met-toast.met-show { animation: met-rotate-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-zoom.met-toast.met-show { animation: met-zoom-in 0.50s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }
+ .met-anim-slideUp.met-toast.met-show { animation: met-slideUp-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-slideDown.met-toast.met-show { animation: met-slideDown-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-slideLeft.met-toast.met-show { animation: met-slideLeft-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-slideRight.met-toast.met-show { animation: met-slideRight-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+
+ @media (max-width: 480px) {
+ .met-container { padding: 12px !important; }
+ .met-toast { width: 100% !important; min-width: 0 !important; }
+ }
+
+ @media (max-width: 768px) {
+ .met-toast { font-size: 13px; }
+ .met-title { font-size: 13px; }
+ .met-message { font-size: 12px; }
+ }
+
+ @media (min-width: 1200px) {
+ .met-toast { width: 400px; }
+ }
+
+ @media (min-width: 1920px) {
+ .met-toast { width: 440px; }
+ }
+
+ @media (max-width: 320px) {
+ .met-toast { width: 100%; min-width: 0; padding: 12px 14px; }
+ .met-container { padding: 8px; }
+ }
+
+ @media (orientation: landscape) and (max-height: 500px) {
+ .met-container { padding: 12px 24px; }
+ .met-toast { min-height: 44px; padding: 10px 14px; }
+ }
+
+ @media (orientation: portrait) and (max-width: 500px) {
+ .met-container { padding: 12px; }
+ .met-toast { width: 100%; min-width: 0; }
+ }
+
+ @media (prefers-reduced-motion: reduce) {
+ .met-toast { transition: opacity 0.15s !important; }
+ .met-toast.met-show { animation: none !important; opacity: 1 !important; }
+ .met-spin { animation-duration: 2.5s !important; }
+ }
+
+ @media (forced-colors: active) {
+ .met-toast { border: 2px solid ButtonText; }
+ .met-close { border: 1px solid ButtonText; }
+ }
+
+ @media (prefers-contrast: high) {
+ .met-toast { border-width: 3px; border-style: solid; }
+ .met-close { border: 2px solid currentColor; border-radius: 4px; }
+ }
+
+ .met-toast:focus-visible {
+ outline: 2px solid #3b82f6;
+ outline-offset: 2px;
+ }
+ .met-close:focus-visible {
+ outline: 2px solid #3b82f6;
+ outline-offset: 2px;
+ }
+
+ @media (hover: none) and (pointer: coarse) {
+ .met-toast:hover { box-shadow: inherit; }
+ .met-toast { min-height: 48px; }
+ .met-close { min-width: 48px; min-height: 48px; }
+ }
+
+ @media print {
+ .met-container { display: none !important; }
+ .met-toast { display: none !important; }
+ }
+
+ :fullscreen .met-container,
+ :picture-in-picture .met-container {
+ z-index: 2147483647;
+ }
+
+ @supports (padding: max(0px)) {
+ .met-container {
+ padding: max(24px, env(safe-area-inset-top))
+ max(24px, env(safe-area-inset-right))
+ max(24px, env(safe-area-inset-bottom))
+ max(24px, env(safe-area-inset-left));
+ }
+ }
+
+ .met-toast:active {
+ transform: scale(0.98);
+ }
+
+ .met-toast.met-success { border-left: 4px solid #10b981; }
+ .met-toast.met-error { border-left: 4px solid #ef4444; }
+ .met-toast.met-warning { border-left: 4px solid #f59e0b; }
+ .met-toast.met-info { border-left: 4px solid #3b82f6; }
+ .met-toast.met-loading { border-left: 4px solid #6366f1; }
+
+ .met-bar, .met-bar-v {
+ transition: transform 0.1s linear;
+ }
+
+ /* RTL 镜像:进度条从右向左收缩、side 条移到右侧、类型色条翻转到右边 */
+ [dir="rtl"] .met-bar {
+ transform-origin: right;
+ }
+ [dir="rtl"] .met-side {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-progress-v {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-toast.met-success {
+ border-left-width: 1px;
+ border-right: 4px solid #10b981;
+ }
+ [dir="rtl"] .met-toast.met-error {
+ border-left-width: 1px;
+ border-right: 4px solid #ef4444;
+ }
+ [dir="rtl"] .met-toast.met-warning {
+ border-left-width: 1px;
+ border-right: 4px solid #f59e0b;
+ }
+ [dir="rtl"] .met-toast.met-info {
+ border-left-width: 1px;
+ border-right: 4px solid #3b82f6;
+ }
+ [dir="rtl"] .met-toast.met-loading {
+ border-left-width: 1px;
+ border-right: 4px solid #6366f1;
+ }
+
+ .met-container::-webkit-scrollbar { width: 6px; height: 6px; }
+ .met-container::-webkit-scrollbar-track { background: transparent; }
+ .met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }
+ .met-container::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.3); }
+
+ .met-toast.met-theme-dark {
+ background: rgba(28, 32, 40, 0.94);
+ color: #e6e8eb;
+ border-color: rgba(255, 255, 255, 0.08);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);
+ }
+ .met-toast.met-theme-dark:hover {
+ box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;
+ }
+ .met-toast.met-theme-dark .met-close:hover {
+ background: rgba(255, 255, 255, 0.08);
+ }
+ .met-toast.met-theme-dark .met-progress,
+ .met-toast.met-theme-dark .met-progress-v {
+ background: rgba(255, 255, 255, 0.08);
+ }
+
+ .met-toast.met-theme-light {
+ background: rgba(255, 255, 255, 0.96);
+ color: #1f2937;
+ border-color: rgba(0, 0, 0, 0.06);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);
+ }
+ .met-toast.met-theme-light:hover {
+ box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;
+ }
+ .met-toast.met-theme-light .met-close:hover {
+ background: rgba(0, 0, 0, 0.06);
+ }
+ .met-toast.met-theme-light .met-progress,
+ .met-toast.met-theme-light .met-progress-v {
+ background: rgba(0, 0, 0, 0.06);
+ }
+
+ .met-toast[data-theme] {
+ --met-bg: var(--met-theme-bg);
+ --met-text: var(--met-theme-text);
+ --met-border: var(--met-theme-border);
+ --met-shadow: var(--met-theme-shadow);
+ }
+
+ @media (prefers-color-scheme: dark) {
+ .met-theme-auto .met-toast {
+ background: rgba(28, 32, 40, 0.94);
+ color: #e6e8eb;
+ border-color: rgba(255, 255, 255, 0.08);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);
+ }
+ .met-theme-auto .met-toast:hover {
+ box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;
+ }
+ .met-theme-auto .met-close:hover { background: rgba(255, 255, 255, 0.08); }
+ .met-theme-auto .met-progress,
+ .met-theme-auto .met-progress-v { background: rgba(255, 255, 255, 0.08); }
+ }
+
+ @media (prefers-color-scheme: light) {
+ .met-theme-auto .met-toast {
+ background: rgba(255, 255, 255, 0.96);
+ color: #1f2937;
+ border-color: rgba(0, 0, 0, 0.06);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);
+ }
+ .met-theme-auto .met-toast:hover {
+ box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;
+ }
+ .met-theme-auto .met-close:hover { background: rgba(0, 0, 0, 0.06); }
+ .met-theme-auto .met-progress,
+ .met-theme-auto .met-progress-v { background: rgba(0, 0, 0, 0.06); }
+ }
+ `;
+};
+/**
+ * 注入样式
+ */
+const injectStyles = () => {
+ if (typeof document === 'undefined')
+ return;
+ if (styleElement && document.getElementById('metona-toast-styles')) {
+ return;
+ }
+ const css = generateCSS();
+ styleElement = document.createElement('style');
+ styleElement.id = 'metona-toast-styles';
+ styleElement.textContent = css.replace(/\s+/g, ' ');
+ document.head.appendChild(styleElement);
+};
+
+/**
+ * MetonaToast Themes — 主题管理
+ * @module themes
+ * @version 0.4.0
+ */
+// 当前主题状态
+let currentTheme = 'auto';
+const themeListeners = new Set();
+let systemThemeMediaQuery = null;
+let systemThemeListener = null;
+/**
+ * 获取系统主题
+ */
+const getSystemTheme = () => {
+ if (typeof window === 'undefined')
+ return 'light';
+ return prefersDark() ? 'dark' : 'light';
+};
+/**
+ * 获取主题(别名)
+ */
+const getTheme = (theme) => {
+ return resolveTheme(theme);
+};
+/**
+ * 解析主题 — 'auto' 始终按系统主题检测,不依赖当前手动选择的主题
+ */
+const resolveTheme = (theme) => {
+ if (theme === 'auto') {
+ return getSystemTheme();
+ }
+ return theme;
+};
+/**
+ * 获取主题配置
+ */
+const getThemeConfig = (theme) => {
+ const resolved = resolveTheme(theme);
+ return THEMES[resolved] || THEMES.light;
+};
+/**
+ * 应用主题
+ */
+const applyTheme = (theme) => {
+ currentTheme = theme;
+ const resolved = resolveTheme(theme);
+ if (typeof document !== 'undefined') {
+ document.documentElement.setAttribute('data-met-theme', resolved);
+ document.documentElement.classList.remove('met-theme-light', 'met-theme-dark', 'met-theme-auto');
+ document.documentElement.classList.add(`met-theme-${resolved}`);
+ const config = getThemeConfig(theme);
+ setThemeVariables(config);
+ }
+ notifyThemeListeners(theme, resolved);
+};
+/**
+ * 设置主题CSS变量
+ */
+const setThemeVariables = (config) => {
+ if (typeof document === 'undefined')
+ return;
+ const root = document.documentElement;
+ root.style.setProperty('--met-bg', config.bg);
+ root.style.setProperty('--met-text', config.text);
+ root.style.setProperty('--met-border', config.border);
+ root.style.setProperty('--met-shadow', config.shadow);
+ root.style.setProperty('--met-hover-shadow', config.hoverShadow);
+ root.style.setProperty('--met-progress-bg', config.progressBg);
+ root.style.setProperty('--met-close-hover-bg', config.closeHoverBg);
+ root.style.setProperty('--met-success', '#10b981');
+ root.style.setProperty('--met-error', '#ef4444');
+ root.style.setProperty('--met-warning', '#f59e0b');
+ root.style.setProperty('--met-info', '#3b82f6');
+ root.style.setProperty('--met-loading', '#6366f1');
+};
+/**
+ * 获取当前主题
+ */
+const getCurrentTheme = () => {
+ return currentTheme;
+};
+/**
+ * 获取解析后的主题
+ */
+const getResolvedTheme = () => {
+ return resolveTheme(currentTheme);
+};
+/**
+ * 切换主题
+ */
+const switchTheme = (theme) => {
+ applyTheme(theme);
+ saveTheme(theme);
+};
+/**
+ * 切换亮色/暗色主题
+ */
+const toggleTheme = () => {
+ const resolved = getResolvedTheme();
+ const newTheme = resolved === 'dark' ? 'light' : 'dark';
+ switchTheme(newTheme);
+};
+/**
+ * 重置为自动主题
+ */
+const resetToAuto = () => {
+ switchTheme('auto');
+};
+/**
+ * 保存主题到本地存储
+ */
+const saveTheme = (theme) => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ localStorage.setItem('metona-toast-theme', theme);
+ }
+ catch (e) {
+ console.warn('Failed to save theme:', e);
+ }
+ }
+};
+/**
+ * 从本地存储加载主题
+ */
+const loadTheme = () => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ return localStorage.getItem('metona-toast-theme') || 'auto';
+ }
+ catch (e) {
+ console.warn('Failed to load theme:', e);
+ }
+ }
+ return 'auto';
+};
+/**
+ * 初始化主题系统
+ */
+const initTheme = () => {
+ const savedTheme = loadTheme();
+ applyTheme(savedTheme);
+ watchSystemTheme();
+};
+/**
+ * 监听系统主题变化
+ */
+const watchSystemTheme = () => {
+ if (typeof window === 'undefined' || !window.matchMedia)
+ return;
+ if (systemThemeMediaQuery && systemThemeListener) {
+ systemThemeMediaQuery.removeEventListener('change', systemThemeListener);
+ }
+ systemThemeMediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
+ systemThemeListener = () => {
+ if (currentTheme === 'auto') {
+ applyTheme('auto');
+ }
+ };
+ systemThemeMediaQuery.addEventListener('change', systemThemeListener);
+};
+/**
+ * 停止监听系统主题变化
+ */
+const unwatchSystemTheme = () => {
+ if (systemThemeMediaQuery && systemThemeListener) {
+ systemThemeMediaQuery.removeEventListener('change', systemThemeListener);
+ systemThemeMediaQuery = null;
+ systemThemeListener = null;
+ }
+};
+/**
+ * 添加主题监听器
+ */
+const addThemeListener = (listener) => {
+ themeListeners.add(listener);
+ return () => {
+ themeListeners.delete(listener);
+ };
+};
+/**
+ * 移除主题监听器
+ */
+const removeThemeListener = (listener) => {
+ themeListeners.delete(listener);
+};
+/**
+ * 通知主题监听器
+ */
+const notifyThemeListeners = (theme, resolved) => {
+ themeListeners.forEach((listener) => {
+ try {
+ listener(theme, resolved);
+ }
+ catch (e) {
+ console.error('Theme listener error:', e);
+ }
+ });
+};
+/**
+ * 清除所有主题监听器
+ */
+const clearThemeListeners = () => {
+ themeListeners.clear();
+};
+/**
+ * 注册自定义主题
+ */
+const registerTheme = (name, config) => {
+ THEMES[name] = {
+ bg: config.bg || THEMES.light.bg,
+ text: config.text || THEMES.light.text,
+ border: config.border || THEMES.light.border,
+ shadow: config.shadow || THEMES.light.shadow,
+ hoverShadow: config.hoverShadow || THEMES.light.hoverShadow,
+ progressBg: config.progressBg || THEMES.light.progressBg,
+ closeHoverBg: config.closeHoverBg || THEMES.light.closeHoverBg,
+ };
+};
+/**
+ * 注销自定义主题
+ */
+const unregisterTheme = (name) => {
+ if (name === 'light' || name === 'dark' || name === 'auto') {
+ console.warn('Cannot unregister built-in theme:', name);
+ return;
+ }
+ delete THEMES[name];
+};
+/**
+ * 获取所有主题
+ */
+const getAllThemes = () => {
+ return { ...THEMES };
+};
+/**
+ * 获取主题名称列表
+ */
+const getThemeNames = () => {
+ return Object.keys(THEMES);
+};
+/**
+ * 检查主题是否存在
+ */
+const hasTheme = (name) => {
+ return name in THEMES;
+};
+/**
+ * 获取主题预览
+ */
+const getThemePreview = (theme) => {
+ const config = getThemeConfig(theme);
+ const resolved = resolveTheme(theme);
+ return {
+ name: theme,
+ resolved,
+ colors: {
+ background: config.bg,
+ text: config.text,
+ border: config.border,
+ },
+ isDark: resolved === 'dark',
+ isLight: resolved === 'light',
+ isAuto: theme === 'auto',
+ };
+};
+/**
+ * 生成主题CSS
+ */
+const generateThemeCSS = (theme) => {
+ const config = getThemeConfig(theme);
+ const resolved = resolveTheme(theme);
+ return `
+ .met-theme-${resolved} {
+ --met-bg: ${config.bg};
+ --met-text: ${config.text};
+ --met-border: ${config.border};
+ --met-shadow: ${config.shadow};
+ --met-hover-shadow: ${config.hoverShadow};
+ --met-progress-bg: ${config.progressBg};
+ --met-close-hover-bg: ${config.closeHoverBg};
+ }
+ `;
+};
+/**
+ * 应用主题CSS
+ */
+const applyThemeCSS = (theme) => {
+ if (typeof document === 'undefined')
+ return;
+ const css = generateThemeCSS(theme);
+ const styleId = 'metona-toast-theme-css';
+ const oldStyle = document.getElementById(styleId);
+ if (oldStyle) {
+ oldStyle.remove();
+ }
+ const style = document.createElement('style');
+ style.id = styleId;
+ style.textContent = css;
+ document.head.appendChild(style);
+};
+/**
+ * 移除主题CSS
+ */
+const removeThemeCSS = () => {
+ if (typeof document === 'undefined')
+ return;
+ const styleId = 'metona-toast-theme-css';
+ const style = document.getElementById(styleId);
+ if (style) {
+ style.remove();
+ }
+};
+/**
+ * 主题工具 — 代理层
+ */
+const themeUtils = {
+ getSystemTheme,
+ resolveTheme,
+ getThemeConfig,
+ applyTheme,
+ getCurrentTheme,
+ getResolvedTheme,
+ switchTheme,
+ toggleTheme,
+ resetToAuto,
+ initTheme,
+ watchSystemTheme,
+ unwatchSystemTheme,
+ addThemeListener,
+ removeThemeListener,
+ clearThemeListeners,
+ registerTheme,
+ unregisterTheme,
+ getAllThemes,
+ getThemeNames,
+ hasTheme,
+ getThemePreview,
+ generateThemeCSS,
+ applyThemeCSS,
+ removeThemeCSS,
+ saveTheme,
+ loadTheme,
+};
+
+/**
+ * MetonaToast i18n — 国际化管理
+ * @module i18n
+ * @version 0.4.0
+ */
+// 当前语言状态
+let currentLocale = 'zh-CN';
+const localeListeners = new Set();
+let fallbackLocale = 'zh-CN';
+/**
+ * 获取当前语言
+ */
+const getCurrentLocale = () => {
+ return currentLocale;
+};
+/**
+ * 设置当前语言
+ */
+const setCurrentLocale = (locale) => {
+ if (!LOCALES[locale]) {
+ console.warn(`Locale "${locale}" not found, falling back to "${fallbackLocale}"`);
+ locale = fallbackLocale;
+ }
+ currentLocale = locale;
+ notifyLocaleListeners(locale);
+ saveLocale(locale);
+};
+/**
+ * 获取回退语言
+ */
+const getFallbackLocale = () => {
+ return fallbackLocale;
+};
+/**
+ * 设置回退语言
+ */
+const setFallbackLocale = (locale) => {
+ if (!LOCALES[locale]) {
+ console.warn(`Fallback locale "${locale}" not found`);
+ return;
+ }
+ fallbackLocale = locale;
+};
+/**
+ * 翻译函数
+ */
+const t = (key, params = {}) => {
+ const currentTranslation = getTranslation(currentLocale, key);
+ if (currentTranslation !== undefined) {
+ return interpolate(currentTranslation, params);
+ }
+ if (currentLocale !== fallbackLocale) {
+ const fallbackTranslation = getTranslation(fallbackLocale, key);
+ if (fallbackTranslation !== undefined) {
+ return interpolate(fallbackTranslation, params);
+ }
+ }
+ console.warn(`Translation missing for key "${key}" in locale "${currentLocale}"`);
+ return key;
+};
+/**
+ * 获取翻译
+ */
+const getTranslation = (locale, key) => {
+ const localeData = LOCALES[locale];
+ if (!localeData)
+ return undefined;
+ const keys = key.split('.');
+ let result = localeData;
+ for (const k of keys) {
+ if (result && typeof result === 'object' && k in result) {
+ result = result[k];
+ }
+ else {
+ return undefined;
+ }
+ }
+ return typeof result === 'string' ? result : undefined;
+};
+/**
+ * 插值函数
+ */
+const interpolate = (str, params) => {
+ return str.replace(/\{(\w+)\}/g, (_match, key) => {
+ return params[key] !== undefined ? String(params[key]) : _match;
+ });
+};
+/**
+ * 检查翻译是否存在
+ */
+const hasTranslation = (key) => {
+ return getTranslation(currentLocale, key) !== undefined ||
+ getTranslation(fallbackLocale, key) !== undefined;
+};
+/**
+ * 获取所有翻译
+ */
+const getTranslations = (locale) => {
+ return LOCALES[locale] || {};
+};
+/**
+ * 添加翻译
+ */
+const addTranslations = (locale, translations) => {
+ if (!LOCALES[locale]) {
+ LOCALES[locale] = {};
+ }
+ deepMerge(LOCALES[locale], translations);
+};
+/**
+ * 深度合并对象
+ */
+const deepMerge = (target, source) => {
+ for (const key in source) {
+ if (source[key] instanceof Object && key in target && target[key] instanceof Object) {
+ deepMerge(target[key], source[key]);
+ }
+ else {
+ target[key] = source[key];
+ }
+ }
+ return target;
+};
+/**
+ * 移除翻译
+ */
+const removeTranslation = (locale, key) => {
+ const localeData = LOCALES[locale];
+ if (!localeData)
+ return;
+ const keys = key.split('.');
+ let current = localeData;
+ for (let i = 0; i < keys.length - 1; i++) {
+ if (current[keys[i]] && typeof current[keys[i]] === 'object') {
+ current = current[keys[i]];
+ }
+ else {
+ return;
+ }
+ }
+ delete current[keys[keys.length - 1]];
+};
+/**
+ * 清除翻译
+ */
+const clearTranslations = (locale) => {
+ if (LOCALES[locale]) {
+ LOCALES[locale] = {};
+ }
+};
+/**
+ * 获取支持的语言列表
+ */
+const getSupportedLocales = () => {
+ return Object.keys(LOCALES);
+};
+/**
+ * 检查语言是否支持
+ */
+const isLocaleSupported = (locale) => {
+ return locale in LOCALES;
+};
+/**
+ * 获取语言名称
+ */
+const getLocaleName = (locale) => {
+ const names = {
+ 'zh-CN': '简体中文',
+ 'zh-TW': '繁體中文',
+ 'en-US': 'English (US)',
+ 'en-GB': 'English (UK)',
+ 'ja': '日本語',
+ 'ko': '한국어',
+ 'fr': 'Français',
+ 'de': 'Deutsch',
+ 'es': 'Español',
+ 'pt': 'Português',
+ 'ru': 'Русский',
+ 'ar': 'العربية',
+ 'hi': 'हिन्दी',
+ 'th': 'ไทย',
+ 'vi': 'Tiếng Việt',
+ 'id': 'Bahasa Indonesia',
+ 'ms': 'Bahasa Melayu',
+ 'tr': 'Türkçe',
+ 'it': 'Italiano',
+ 'nl': 'Nederlands',
+ 'pl': 'Polski',
+ 'uk': 'Українська',
+ 'cs': 'Čeština',
+ 'sv': 'Svenska',
+ 'da': 'Dansk',
+ 'fi': 'Suomi',
+ 'nb': 'Norsk',
+ 'el': 'Ελληνικά',
+ 'he': 'עברית',
+ 'hu': 'Magyar',
+ 'ro': 'Română',
+ 'bg': 'Български',
+ 'hr': 'Hrvatski',
+ 'sk': 'Slovenčina',
+ 'sl': 'Slovenščina',
+ 'et': 'Eesti',
+ 'lv': 'Latviešu',
+ 'lt': 'Lietuvių',
+ 'ca': 'Català',
+ 'gl': 'Galego',
+ 'eu': 'Euskara',
+ 'cy': 'Cymraeg',
+ 'ga': 'Gaeilge',
+ 'mt': 'Malti',
+ 'is': 'Íslenska',
+ 'mk': 'Македонски',
+ 'sq': 'Shqip',
+ 'sr': 'Српски',
+ 'bs': 'Bosanski',
+ 'me': 'Crnogorski',
+ 'ka': 'ქართული',
+ 'hy': 'Հայերեն',
+ 'az': 'Azərbaycan',
+ 'uz': "O'zbek",
+ 'kk': 'Қазақ',
+ 'ky': 'Кыргыз',
+ 'tg': 'Тоҷикӣ',
+ 'tk': 'Türkmen',
+ 'mn': 'Монгол',
+ 'ne': 'नेपाली',
+ 'si': 'සිංහල',
+ 'my': 'မြန်မာ',
+ 'km': 'ខ្មែរ',
+ 'lo': 'ລາວ',
+ 'am': 'አማርኛ',
+ 'sw': 'Kiswahili',
+ 'yo': 'Yorùbá',
+ 'ig': 'Igbo',
+ 'ha': 'Hausa',
+ 'zu': 'isiZulu',
+ 'af': 'Afrikaans',
+ 'xh': 'isiXhosa',
+ 'st': 'Sesotho',
+ 'tn': 'Setswana',
+ 'ts': 'Xitsonga',
+ 'ss': 'siSwati',
+ 've': 'Tshivenda',
+ 'nr': 'isiNdebele',
+ };
+ return names[locale] || locale;
+};
+/**
+ * 获取语言方向
+ */
+const getLocaleDirection = (locale) => {
+ const rtlLocales = ['ar', 'he', 'fa', 'ur', 'yi', 'ps', 'sd', 'ug'];
+ return rtlLocales.includes(locale) ? 'rtl' : 'ltr';
+};
+/**
+ * 获取语言信息
+ */
+const getLocaleInfo = (locale) => {
+ return {
+ code: locale,
+ name: getLocaleName(locale),
+ direction: getLocaleDirection(locale),
+ isSupported: isLocaleSupported(locale),
+ isCurrent: locale === currentLocale,
+ isFallback: locale === fallbackLocale,
+ };
+};
+/**
+ * 获取所有语言信息
+ */
+const getAllLocaleInfo = () => {
+ return getSupportedLocales().map(getLocaleInfo);
+};
+/**
+ * 保存语言到本地存储
+ */
+const saveLocale = (locale) => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ localStorage.setItem('metona-toast-locale', locale);
+ }
+ catch (e) {
+ console.warn('Failed to save locale:', e);
+ }
+ }
+};
+/**
+ * 从本地存储加载语言
+ */
+const loadLocale = () => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ return localStorage.getItem('metona-toast-locale') || getDefaultLocale();
+ }
+ catch (e) {
+ console.warn('Failed to load locale:', e);
+ }
+ }
+ return getDefaultLocale();
+};
+/**
+ * 获取默认语言
+ */
+const getDefaultLocale = () => {
+ if (typeof navigator !== 'undefined') {
+ const browserLocale = navigator.language || navigator.userLanguage;
+ if (browserLocale && isLocaleSupported(browserLocale)) {
+ return browserLocale;
+ }
+ const shortLocale = browserLocale?.split('-')[0];
+ if (shortLocale && isLocaleSupported(shortLocale)) {
+ return shortLocale;
+ }
+ }
+ return fallbackLocale;
+};
+/**
+ * 初始化国际化系统
+ */
+const initI18n = () => {
+ const savedLocale = loadLocale();
+ setCurrentLocale(savedLocale);
+};
+/**
+ * 切换语言
+ */
+const switchLocale = (locale) => {
+ setCurrentLocale(locale);
+};
+/**
+ * 添加语言监听器
+ */
+const addLocaleListener = (listener) => {
+ localeListeners.add(listener);
+ return () => {
+ localeListeners.delete(listener);
+ };
+};
+/**
+ * 移除语言监听器
+ */
+const removeLocaleListener = (listener) => {
+ localeListeners.delete(listener);
+};
+/**
+ * 通知语言监听器
+ */
+const notifyLocaleListeners = (locale) => {
+ localeListeners.forEach((listener) => {
+ try {
+ listener(locale);
+ }
+ catch (e) {
+ console.error('Locale listener error:', e);
+ }
+ });
+};
+/**
+ * 清除所有语言监听器
+ */
+const clearLocaleListeners = () => {
+ localeListeners.clear();
+};
+/**
+ * 格式化数字
+ */
+const formatNumber = (number, options = {}) => {
+ try {
+ return new Intl.NumberFormat(currentLocale, options).format(number);
+ }
+ catch (e) {
+ return number.toString();
+ }
+};
+/**
+ * 格式化货币
+ */
+const formatCurrency = (amount, currency = 'USD', options = {}) => {
+ try {
+ return new Intl.NumberFormat(currentLocale, {
+ style: 'currency',
+ currency,
+ ...options,
+ }).format(amount);
+ }
+ catch (e) {
+ return amount.toString();
+ }
+};
+/**
+ * 格式化百分比
+ */
+const formatPercent = (value, options = {}) => {
+ try {
+ return new Intl.NumberFormat(currentLocale, {
+ style: 'percent',
+ minimumFractionDigits: 0,
+ maximumFractionDigits: 2,
+ ...options,
+ }).format(value / 100);
+ }
+ catch (e) {
+ return `${value}%`;
+ }
+};
+/**
+ * 格式化日期
+ */
+const formatDate = (date, options = {}) => {
+ try {
+ const dateObj = date instanceof Date ? date : new Date(date);
+ return new Intl.DateTimeFormat(currentLocale, options).format(dateObj);
+ }
+ catch (e) {
+ return String(date);
+ }
+};
+/**
+ * 格式化时间
+ */
+const formatTime = (date, options = {}) => {
+ return formatDate(date, {
+ hour: 'numeric',
+ minute: 'numeric',
+ second: 'numeric',
+ ...options,
+ });
+};
+/**
+ * 格式化相对时间
+ */
+const formatRelativeTime = (date, options = {}) => {
+ try {
+ const dateObj = date instanceof Date ? date : new Date(date);
+ const now = new Date();
+ const diff = dateObj.getTime() - now.getTime();
+ const rtf = new Intl.RelativeTimeFormat(currentLocale, {
+ numeric: 'auto',
+ ...options,
+ });
+ const units = [
+ { unit: 'year', ms: 365 * 24 * 60 * 60 * 1000 },
+ { unit: 'month', ms: 30 * 24 * 60 * 60 * 1000 },
+ { unit: 'week', ms: 7 * 24 * 60 * 60 * 1000 },
+ { unit: 'day', ms: 24 * 60 * 60 * 1000 },
+ { unit: 'hour', ms: 60 * 60 * 1000 },
+ { unit: 'minute', ms: 60 * 1000 },
+ { unit: 'second', ms: 1000 },
+ ];
+ for (const { unit, ms } of units) {
+ if (Math.abs(diff) >= ms || unit === 'second') {
+ const value = Math.round(diff / ms);
+ return rtf.format(value, unit);
+ }
+ }
+ return String(date);
+ }
+ catch (e) {
+ return String(date);
+ }
+};
+/**
+ * 格式化列表 — 优先使用 Intl.ListFormat,降级到逗号拼接
+ */
+const formatList = (list, _options = {}) => {
+ const intl = Intl;
+ if (typeof intl.ListFormat === 'function') {
+ try {
+ return new intl.ListFormat(currentLocale, {
+ style: 'long',
+ type: 'conjunction',
+ }).format(list);
+ }
+ catch (_e) { /* fallback below */ }
+ }
+ return list.join(', ');
+};
+/**
+ * 格式化复数
+ */
+const formatPlural = (count, options = {}) => {
+ try {
+ return new Intl.PluralRules(currentLocale, options).select(count);
+ }
+ catch (e) {
+ return count === 1 ? 'one' : 'other';
+ }
+};
+/**
+ * 复数翻译
+ */
+const plural = (key, count, params = {}) => {
+ const pluralForm = formatPlural(count);
+ const pluralKey = `${key}.${pluralForm}`;
+ if (hasTranslation(pluralKey)) {
+ return t(pluralKey, { ...params, count });
+ }
+ if (hasTranslation(key)) {
+ return t(key, { ...params, count });
+ }
+ return key;
+};
+/**
+ * 国际化工具 — 代理层
+ */
+const i18nUtils = {
+ t,
+ plural,
+ getCurrentLocale,
+ setCurrentLocale,
+ switchLocale,
+ getFallbackLocale,
+ setFallbackLocale,
+ hasTranslation,
+ getTranslations,
+ addTranslations,
+ removeTranslation,
+ clearTranslations,
+ getSupportedLocales,
+ isLocaleSupported,
+ getLocaleName,
+ getLocaleDirection,
+ getLocaleInfo,
+ getAllLocaleInfo,
+ formatNumber,
+ formatCurrency,
+ formatPercent,
+ formatDate,
+ formatTime,
+ formatRelativeTime,
+ formatList,
+ formatPlural,
+ addLocaleListener,
+ removeLocaleListener,
+ clearLocaleListeners,
+ initI18n,
+ saveLocale,
+ loadLocale,
+ getDefaultLocale,
+};
+/**
+ * 预设语言包
+ */
+({
+ 'zh-CN': {
+ name: '简体中文',
+ nativeName: '简体中文',
+ direction: 'ltr',
+ translations: LOCALES['zh-CN'],
+ },
+ 'en-US': {
+ name: 'English (US)',
+ nativeName: 'English (US)',
+ direction: 'ltr',
+ translations: LOCALES['en-US'],
+ },
+});
+
+/**
+ * MetonaToast Animations — 动画管理
+ * @module animations
+ * @version 0.2.1
+ */
+// 动画缓存
+const animationMap = new Map();
+// 内置动画(keyframes 由 styles.ts 注入,无需动态生成)
+const BUILTIN_ANIMATIONS = new Set(ANIMATION_TYPES);
+// 动态注入的自定义动画样式(惰性创建)
+let animStyleElement = null;
+const injectedAnimations = new Set();
+/**
+ * 将 CSS 属性对象转换为内联 CSS 字符串
+ */
+const toCss = (props) => Object.entries(props)
+ .map(([key, value]) => `${key}:${value}`)
+ .join(';');
+/**
+ * 为自定义动画生成入场 keyframes + 类规则
+ */
+const buildAnimationCSS = (name, config) => {
+ const enter = toCss(config.enter);
+ return `
+ @keyframes met-${name}-in {
+ from { ${enter}; }
+ }
+ .met-anim-${name}.met-toast { opacity: 0; }
+ .met-anim-${name}.met-toast.met-show {
+ animation: met-${name}-in ${config.duration}ms ${config.easing} forwards;
+ }
+ `;
+};
+/**
+ * 确保自定义动画的 CSS 已注入文档(幂等,内置动画自动跳过)
+ */
+const ensureAnimationCSS = (name) => {
+ if (typeof document === 'undefined')
+ return;
+ if (BUILTIN_ANIMATIONS.has(name))
+ return;
+ const config = animationMap.get(name);
+ if (!config || injectedAnimations.has(name))
+ return;
+ if (!animStyleElement) {
+ animStyleElement = document.getElementById('metona-toast-anim-styles');
+ if (!animStyleElement) {
+ animStyleElement = document.createElement('style');
+ animStyleElement.id = 'metona-toast-anim-styles';
+ document.head.appendChild(animStyleElement);
+ }
+ }
+ animStyleElement.textContent += buildAnimationCSS(name, config);
+ injectedAnimations.add(name);
+};
+/**
+ * 检查动画是否存在(内置或自定义)
+ */
+const hasAnimation = (name) => animationMap.has(name);
+// 注册默认动画
+Object.entries(ANIMATIONS).forEach(([name, config]) => {
+ animationMap.set(name, {
+ name,
+ enter: config.enter,
+ leave: config.leave,
+ duration: config.duration,
+ easing: config.easing,
+ });
+});
+/**
+ * 动画工具函数
+ */
+const animationUtils = {
+ register(name, config) {
+ animationMap.set(name, {
+ name,
+ enter: config.enter || {},
+ leave: config.leave || {},
+ duration: config.duration || 300,
+ easing: config.easing || 'cubic-bezier(0.4, 0, 0.2, 1)',
+ });
+ },
+ unregister(name) {
+ animationMap.delete(name);
+ },
+ get(name) {
+ return animationMap.get(name) || null;
+ },
+ getAnimationNames() {
+ return Array.from(animationMap.keys());
+ },
+ getActiveCount() {
+ return animationMap.size;
+ },
+ cancelAll() {
+ // CSS动画由浏览器原生管理,无需手动取消
+ },
+ reset() {
+ animationMap.clear();
+ Object.entries(ANIMATIONS).forEach(([name, config]) => {
+ animationMap.set(name, {
+ name,
+ enter: config.enter,
+ leave: config.leave,
+ duration: config.duration,
+ easing: config.easing,
+ });
+ });
+ },
+ destroy() {
+ animationMap.clear();
+ injectedAnimations.clear();
+ animStyleElement = null;
+ },
+};
+
+/**
+ * MetonaToast Toast — Toast 类
+ * @module toast
+ * @version 0.4.0
+ */
+/**
+ * Toast 类 — 核心通知组件
+ */
+let Toast$1 = class Toast {
+ /**
+ * 设置 Toast 类级别的回调函数
+ */
+ static setCallbacks(callbacks) {
+ if (callbacks.onError !== undefined)
+ Toast._onError = callbacks.onError;
+ if (callbacks.removeToast !== undefined)
+ Toast._removeToast = callbacks.removeToast;
+ }
+ static on(name, fn) {
+ if (!this._hooks.has(name))
+ this._hooks.set(name, []);
+ this._hooks.get(name).push(fn);
+ return () => this.off(name, fn);
+ }
+ static off(name, fn) {
+ const list = this._hooks.get(name);
+ if (list)
+ this._hooks.set(name, list.filter(f => f !== fn));
+ }
+ /**
+ * 触发钩子 — 如果任意钩子返回 false 则整体返回 false
+ * toast 参数可选:全局事件(configChange/themeChange 等)不关联具体 toast
+ */
+ static trigger(name, toast = null) {
+ const list = this._hooks.get(name);
+ if (!list || list.length === 0)
+ return true;
+ let allow = true;
+ list.forEach(fn => {
+ try {
+ const result = fn(toast);
+ if (result === false)
+ allow = false;
+ }
+ catch (e) {
+ console.error('Hook error:', name, e);
+ if (Toast._onError) {
+ try {
+ Toast._onError({ hook: name, error: e, toast: toast });
+ }
+ catch (_e) { /* noop */ }
+ }
+ }
+ });
+ return allow;
+ }
+ constructor(opts) {
+ this.el = null;
+ this.barEl = null;
+ this.rafId = null;
+ this.startedAt = 0;
+ this.paused = false;
+ this.closing = false;
+ this.group = null;
+ this._cleanups = [];
+ this.id = opts.id || generateId();
+ this.type = opts.type || 'default';
+ this.title = opts.title || '';
+ this.message = opts.message ?? opts.content ?? '';
+ this.html = opts.html || '';
+ this.iconHTML = opts.iconHTML || '';
+ this.config = { ...DEFAULTS, ...opts };
+ // 防止嵌套对象被多个 toast 实例共享引用
+ if (opts.style && typeof opts.style === 'object') {
+ this.config.style = { ...opts.style };
+ }
+ this.remaining = this.config.duration || 0;
+ this.group = opts.group || null;
+ }
+ _palette() {
+ const theme = getTheme(this.config.theme || 'auto');
+ const c = TYPE_COLORS[this.type] || TYPE_COLORS.default;
+ const tc = THEMES[theme] || THEMES.light;
+ const t = { bg: tc.bg, border: tc.border, shadow: tc.shadow };
+ return { theme, c, t };
+ }
+ create() {
+ if (typeof window === 'undefined' || typeof document === 'undefined')
+ return this;
+ // beforeShow 钩子 — 返回 false 可阻止显示
+ if (!Toast.trigger('beforeShow', this))
+ return this;
+ // onBeforeShow 配置回调 — 返回 false 可阻止显示
+ if (typeof this.config.onBeforeShow === 'function') {
+ try {
+ if (this.config.onBeforeShow(this) === false)
+ return this;
+ }
+ catch (e) {
+ console.error('onBeforeShow callback error:', e);
+ }
+ }
+ injectStyles();
+ ensureAnimationCSS(this.config.animation || 'slide');
+ const container = this._getContainer();
+ const { theme, c, t } = this._palette();
+ this._limitToasts(container);
+ const el = document.createElement('div');
+ el.className = this._buildClassName(theme);
+ el.setAttribute('role', (this.type === 'error' || this.type === 'warning') ? 'alert' : 'status');
+ el.setAttribute('aria-live', this.type === 'error' ? 'assertive' : 'polite');
+ el.dataset.id = this.id;
+ this._applyStyles(el, theme, t);
+ this._buildContent(el, c);
+ this.el = el;
+ // Chrome bug: column-reverse + appendChild 会导致重叠。改用 column + insertBefore
+ const pos = this.config.position || 'top-right';
+ if (pos.startsWith('top')) {
+ container.insertBefore(el, container.firstChild);
+ }
+ else {
+ container.appendChild(el);
+ }
+ Toast._registry.set(this.id, this);
+ this._bindEvents(el);
+ this._startTimer();
+ // 进入动画
+ requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ el.classList.add('met-show');
+ });
+ });
+ if (typeof this.config.onShow === 'function') {
+ try {
+ this.config.onShow(this);
+ }
+ catch (e) {
+ console.error('onShow callback error:', e);
+ }
+ }
+ Toast.trigger('afterShow', this);
+ return this;
+ }
+ _getContainer() {
+ const rawPosition = this.config.position || 'top-right';
+ const zIndex = this.config.zIndex || 9999;
+ // RTL 语言时翻转 left/right
+ const isRTL = getLocaleDirection(getCurrentLocale()) === 'rtl';
+ const position = isRTL
+ ? rawPosition.replace('left', '__TMP__').replace('right', 'left').replace('__TMP__', 'right')
+ : rawPosition;
+ // 从模块级缓存获取 (由 api.ts 管理)
+ const cached = _containerCache.get(document.body);
+ if (cached && cached.has(position)) {
+ return cached.get(position);
+ }
+ // 缓存未命中时创建新容器
+ if (!_containerCache.has(document.body)) {
+ _containerCache.set(document.body, new Map());
+ }
+ const el = document.createElement('div');
+ el.className = `met-container ${position}`;
+ el.setAttribute('aria-label', 'Notifications');
+ el.setAttribute('role', 'region');
+ // RTL 语言设置容器文字方向,使内容/关闭按钮/进度条正确镜像
+ if (isRTL)
+ el.setAttribute('dir', 'rtl');
+ const posStyles = {
+ 'top-left': 'top:0;left:0;align-items:flex-start',
+ 'top-center': 'top:0;left:0;right:0;align-items:center',
+ 'top-right': 'top:0;right:0;align-items:flex-end',
+ 'bottom-left': 'bottom:0;left:0;align-items:flex-start',
+ 'bottom-center': 'bottom:0;left:0;right:0;align-items:center',
+ 'bottom-right': 'bottom:0;right:0;align-items:flex-end',
+ };
+ el.style.cssText = `
+ display:flex;
+ flex-direction:column;
+ gap:${this.config.gap || 12}px;
+ box-sizing:border-box;
+ padding:${this.config.offset || 24}px;
+ max-width:100vw;
+ position:fixed;
+ z-index:${zIndex};
+ pointer-events:none;
+ ${posStyles[position] || 'top:0;right:0;align-items:flex-end'}
+ `;
+ document.body.appendChild(el);
+ _containerCache.get(document.body).set(position, el);
+ return el;
+ }
+ _limitToasts(container) {
+ const max = this.config.max || 6;
+ const list = Array.from(container.querySelectorAll('.met-toast'));
+ while (list.length >= max) {
+ const el = list.shift();
+ const id = el?.dataset.id;
+ if (!id)
+ continue;
+ const existing = Toast._registry.get(id);
+ if (existing) {
+ existing.close(true);
+ }
+ else if (Toast._removeToast) {
+ Toast._removeToast(id);
+ }
+ }
+ }
+ _buildClassName(theme) {
+ const anim = hasAnimation(this.config.animation || '') ? this.config.animation : 'slide';
+ return [
+ 'met-toast',
+ `met-${this.type}`,
+ `met-theme-${theme}`,
+ `met-anim-${anim}`,
+ (this.config.closeOnClick || this.config.draggable) ? 'met-clickable' : '',
+ this.config.className || '',
+ ].filter(Boolean).join(' ');
+ }
+ _applyStyles(el, _theme, _t) {
+ const widthValue = typeof this.config.width === 'number'
+ ? `${this.config.width}px`
+ : (typeof this.config.width === 'string' ? this.config.width : '360px');
+ const set = (p, v) => el.style.setProperty(p, v, 'important');
+ set('position', 'relative');
+ set('flex-shrink', '0');
+ set('min-width', '240px');
+ set('max-width', 'calc(100vw - 48px)');
+ set('width', widthValue);
+ // 用户自定义样式最后应用
+ if (this.config.style && Object.keys(this.config.style).length > 0) {
+ Object.entries(this.config.style).forEach(([k, v]) => { el.style[k] = v; });
+ }
+ }
+ _buildContent(el, c) {
+ // 自定义渲染函数 — 完全接管 DOM 构建
+ if (typeof this.config.render === 'function') {
+ el.innerHTML = this.config.render(this);
+ this.barEl = el.querySelector('.met-bar, .met-bar-v');
+ return;
+ }
+ const showIcon = this.config.icon !== false && (this.iconHTML || ICONS[this.type]);
+ const showClose = this.config.closeButton !== false;
+ const showProgress = this.config.showProgress !== false && (this.config.duration || 0) > 0;
+ const showSide = (!showIcon && this.type !== 'default');
+ const safeTitle = this.title ? `${escapeHTML(this.title)}
` : '';
+ const safeMessage = this.html
+ ? `${this.html}
`
+ : (this.message ? `${escapeHTML(this.message)}
` : '');
+ const iconHTML = showIcon
+ ? `${this.iconHTML || ICONS[this.type]}
` : '';
+ const closeHTML = showClose
+ ? ``
+ : '';
+ const progressHTML = showProgress
+ ? (this.config.progressDirection === 'vertical'
+ ? ``
+ : ``)
+ : '';
+ const sideHTML = showSide
+ ? `` : '';
+ el.innerHTML = `
+ ${iconHTML}
+ ${sideHTML}
+
+ ${safeTitle}
+ ${safeMessage}
+
+ ${closeHTML}
+ ${progressHTML}
+ `;
+ this.barEl = el.querySelector('.met-bar, .met-bar-v');
+ }
+ _bindEvents(el) {
+ const eventHandler = (e) => {
+ const target = e.target;
+ if (target.closest('.met-close')) {
+ e.stopPropagation();
+ this.close();
+ return;
+ }
+ Toast.trigger('click', this);
+ if (this.config.closeOnClick && !target.closest('.met-close')) {
+ if (typeof this.config.onClick === 'function') {
+ try {
+ this.config.onClick(this);
+ }
+ catch (err) {
+ console.error('onClick callback error:', err);
+ }
+ }
+ this.close();
+ return;
+ }
+ };
+ el.addEventListener('click', eventHandler);
+ this._cleanups.push(() => el.removeEventListener('click', eventHandler));
+ if (this.config.pauseOnHover && (this.config.duration || 0) > 0) {
+ const mouseEnter = () => {
+ Toast.trigger('hover', this);
+ this._pause();
+ };
+ const mouseLeave = () => {
+ Toast.trigger('hover', this);
+ this._resume();
+ };
+ el.addEventListener('mouseenter', mouseEnter);
+ el.addEventListener('mouseleave', mouseLeave);
+ this._cleanups.push(() => {
+ el.removeEventListener('mouseenter', mouseEnter);
+ el.removeEventListener('mouseleave', mouseLeave);
+ });
+ }
+ // 入场动画生命周期钩子(离场为过渡/内联样式,不产生 animation 事件)
+ const animStart = () => Toast.trigger('animationStart', this);
+ const animEnd = () => Toast.trigger('animationEnd', this);
+ el.addEventListener('animationstart', animStart);
+ el.addEventListener('animationend', animEnd);
+ this._cleanups.push(() => {
+ el.removeEventListener('animationstart', animStart);
+ el.removeEventListener('animationend', animEnd);
+ });
+ if (this.config.draggable) {
+ this._bindDrag(el);
+ }
+ }
+ _bindDrag(el) {
+ let sx = 0, sy = 0, dx = 0, dy = 0, dragging = false;
+ const down = (e) => {
+ if (e.target.closest('.met-close'))
+ return;
+ dragging = true;
+ sx = e.clientX;
+ sy = e.clientY;
+ el.setPointerCapture(e.pointerId);
+ el.style.transition = 'none';
+ this._pause();
+ Toast.trigger('dragStart', this);
+ };
+ const move = (e) => {
+ if (!dragging)
+ return;
+ dx = e.clientX - sx;
+ dy = e.clientY - sy;
+ el.style.transform = `translate(${dx}px, ${dy}px) rotate(${dx * 0.1}deg)`;
+ el.style.opacity = String(Math.max(0, 1 - Math.abs(dx) / 200));
+ };
+ const up = (e) => {
+ if (!dragging)
+ return;
+ dragging = false;
+ el.releasePointerCapture(e.pointerId);
+ el.style.transition = '';
+ const threshold = this.config.dragThreshold ?? 120;
+ if (Math.abs(dx) > threshold) {
+ el.style.transform = `translate(${dx * 2}px, ${dy}px) rotate(${dx * 0.2}deg)`;
+ el.style.opacity = '0';
+ setTimeout(() => this.close(true), 250);
+ }
+ else {
+ el.style.transform = '';
+ el.style.opacity = '';
+ this._resume();
+ }
+ dx = dy = 0;
+ Toast.trigger('dragEnd', this);
+ };
+ el.addEventListener('pointerdown', down);
+ el.addEventListener('pointermove', move);
+ el.addEventListener('pointerup', up);
+ el.addEventListener('pointercancel', up);
+ this._cleanups.push(() => {
+ el.removeEventListener('pointerdown', down);
+ el.removeEventListener('pointermove', move);
+ el.removeEventListener('pointerup', up);
+ el.removeEventListener('pointercancel', up);
+ });
+ }
+ _startTimer(resuming = false) {
+ if ((this.config.duration || 0) <= 0)
+ return;
+ if (!resuming) {
+ this.startedAt = Date.now();
+ this.remaining = this.config.duration || 0;
+ Toast.trigger('progressStart', this);
+ }
+ const tick = () => {
+ if (this.paused || this.closing)
+ return;
+ try {
+ const elapsed = Date.now() - this.startedAt;
+ this.remaining = Math.max(0, (this.config.duration || 0) - elapsed);
+ if (this.barEl) {
+ const ratio = this.remaining / (this.config.duration || 1);
+ const t = this.config.progressDirection === 'vertical'
+ ? `scaleY(${ratio})` : `scaleX(${ratio})`;
+ this.barEl.style.transform = t;
+ }
+ if (this.remaining <= 0) {
+ Toast.trigger('progressEnd', this);
+ this.close();
+ return;
+ }
+ }
+ catch (e) {
+ console.error('Timer tick error:', e);
+ if (Toast._onError) {
+ try {
+ Toast._onError({ source: 'timer', error: e, toast: this });
+ }
+ catch (_e) { /* noop */ }
+ }
+ }
+ this.rafId = requestAnimationFrame(tick);
+ };
+ this.rafId = requestAnimationFrame(tick);
+ }
+ _pause() {
+ if (this.paused || (this.config.duration || 0) <= 0)
+ return;
+ this.paused = true;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.remaining = Math.max(0, (this.config.duration || 0) - (Date.now() - this.startedAt));
+ }
+ _resume() {
+ if (!this.paused)
+ return;
+ this.paused = false;
+ this.startedAt = Date.now() - ((this.config.duration || 0) - this.remaining);
+ this._startTimer(true);
+ }
+ update(partial) {
+ // beforeUpdate 钩子 — 返回 false 可阻止更新
+ if (!Toast.trigger('beforeUpdate', this))
+ return this;
+ const typeChanged = partial.type && partial.type !== this.type;
+ if (partial.type)
+ this.type = partial.type;
+ if (partial.title !== undefined)
+ this.title = partial.title;
+ if (partial.message !== undefined)
+ this.message = partial.message;
+ if (partial.html !== undefined)
+ this.html = partial.html;
+ if (!this.el) {
+ Toast.trigger('afterUpdate', this);
+ return this;
+ }
+ // 类型变更时同步更新 DOM 类名、边框颜色和进度条颜色
+ if (typeChanged) {
+ const typeClasses = ['met-success', 'met-error', 'met-warning', 'met-info', 'met-loading', 'met-default'];
+ typeClasses.forEach(c => this.el.classList.remove(c));
+ this.el.classList.add(`met-${this.type}`);
+ if (this.barEl) {
+ const c = TYPE_COLORS[this.type] || TYPE_COLORS.default;
+ this.barEl.style.background = c.fg;
+ }
+ const side = this.el.querySelector('.met-side');
+ if (side) {
+ const c = TYPE_COLORS[this.type] || TYPE_COLORS.default;
+ side.style.background = c.fg;
+ }
+ }
+ const content = this.el.querySelector('.met-content');
+ if (content) {
+ const safeTitle = this.title ? `${escapeHTML(this.title)}
` : '';
+ const safeMessage = this.html
+ ? `${this.html}
`
+ : (this.message ? `${escapeHTML(this.message)}
` : '');
+ content.innerHTML = `${safeTitle}${safeMessage}`;
+ }
+ // duration 变更:重启或停止计时器(loading 0 → N 转换、动态调整时长等场景)
+ if (partial.duration !== undefined && partial.duration !== this.config.duration) {
+ this.config.duration = partial.duration;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ this.remaining = Math.max(0, partial.duration);
+ if (partial.duration > 0 && !this.paused) {
+ this.startedAt = Date.now();
+ this._startTimer();
+ }
+ }
+ // resetTimerOnUpdate: 更新内容后重置计时器
+ if (this.config.resetTimerOnUpdate && (this.config.duration || 0) > 0) {
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.startedAt = Date.now();
+ this.remaining = this.config.duration || 0;
+ this._startTimer();
+ }
+ if (typeof this.config.onUpdate === 'function') {
+ try {
+ this.config.onUpdate(this);
+ }
+ catch (e) {
+ console.error('onUpdate callback error:', e);
+ }
+ }
+ Toast.trigger('afterUpdate', this);
+ return this;
+ }
+ /**
+ * 运行时移动 Toast 到新位置
+ */
+ updatePosition(position) {
+ if (!position || !this.el)
+ return this;
+ const oldContainer = this.el.parentNode;
+ this.config.position = position;
+ const newContainer = this._getContainer();
+ if (oldContainer === newContainer)
+ return this;
+ // 从旧容器移除,加入新容器
+ if (oldContainer && this.el.parentNode === oldContainer) {
+ oldContainer.removeChild(this.el);
+ }
+ const pos = position;
+ if (pos.startsWith('top')) {
+ newContainer.insertBefore(this.el, newContainer.firstChild);
+ }
+ else {
+ newContainer.appendChild(this.el);
+ }
+ return this;
+ }
+ /**
+ * 立即从 DOM 和内存中移除(不触发离场动画)
+ */
+ remove() {
+ if (this.rafId !== null) {
+ cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ }
+ this._cleanups.forEach(fn => { try {
+ fn();
+ }
+ catch (_e) { /* noop */ } });
+ this._cleanups = [];
+ if (this.el && this.el.parentNode) {
+ this.el.parentNode.removeChild(this.el);
+ }
+ this.el = null;
+ Toast._registry.delete(this.id);
+ if (Toast._removeToast)
+ Toast._removeToast(this.id);
+ }
+ close(immediate = false) {
+ if (this.closing)
+ return;
+ // beforeClose 钩子 — 返回 false 可阻止关闭
+ if (!Toast.trigger('beforeClose', this))
+ return;
+ this.closing = true;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this._cleanups.forEach(fn => { try {
+ fn();
+ }
+ catch (_e) { /* noop */ } });
+ this._cleanups = [];
+ const el = this.el;
+ if (!el) {
+ if (Toast._removeToast)
+ Toast._removeToast(this.id);
+ return;
+ }
+ // 立即脱离文档流
+ const container = el.parentNode;
+ if (container && !immediate) {
+ const elRect = el.getBoundingClientRect();
+ const containerRect = container.getBoundingClientRect();
+ el.style.position = 'absolute';
+ el.style.top = (elRect.top - containerRect.top) + 'px';
+ el.style.left = (elRect.left - containerRect.left) + 'px';
+ el.style.width = elRect.width + 'px';
+ el.style.margin = '0';
+ }
+ el.classList.add('met-leaving');
+ el.classList.remove('met-show');
+ const pos = this.config.position || 'top-right';
+ const isRTL = getLocaleDirection(getCurrentLocale()) === 'rtl';
+ let transform = 'scale(.96)';
+ if (pos.includes('right'))
+ transform = isRTL ? 'translateX(-120%)' : 'translateX(120%)';
+ else if (pos.includes('left'))
+ transform = isRTL ? 'translateX(120%)' : 'translateX(-120%)';
+ else if (pos.startsWith('top'))
+ transform = 'translateY(-20px)';
+ else
+ transform = 'translateY(20px)';
+ el.style.transform = transform;
+ el.style.opacity = '0';
+ setTimeout(() => this._destroy(), immediate ? 0 : 300);
+ }
+ _destroy() {
+ if (this.el && this.el.parentNode) {
+ this.el.parentNode.removeChild(this.el);
+ }
+ this.el = null;
+ if (typeof this.config.onClose === 'function') {
+ try {
+ this.config.onClose(this);
+ }
+ catch (e) {
+ console.error('onClose callback error:', e);
+ }
+ }
+ Toast.trigger('afterClose', this);
+ Toast._registry.delete(this.id);
+ if (Toast._removeToast)
+ Toast._removeToast(this.id);
+ }
+};
+// 静态钩子系统
+Toast$1._hooks = new Map();
+// 实例注册表 — 用于通过 id 反查实例(max 超限移除、外部接管等)
+Toast$1._registry = new Map();
+// 由 api.ts 注入的回调,通过 setCallbacks() 设置
+Toast$1._onError = null;
+Toast$1._removeToast = null;
+/**
+ * 模块级共享容器缓存,所有 Toast 实例共用
+ */
+const _containerCache = new Map();
+
+/**
+ * MetonaToast Templates — HTML 模板辅助函数
+ * @module templates
+ * @version 0.4.0
+ * @description confirm / prompt / progress / action 的 DOM 模板
+ */
+/**
+ * 按钮行模板 — confirm/prompt 共用
+ */
+const btnRow = (buttons) => `
+
+ ${buttons}
+
`;
+/**
+ * 确认对话框模板
+ */
+const confirmHTML = (opts) => {
+ const confirmText = opts.confirmText || t('confirm');
+ const cancelText = opts.cancelText || t('cancel');
+ const confirmColor = opts.confirmColor || '#10b981';
+ const cancelColor = opts.cancelColor || '#6b7280';
+ return btnRow(`
+
+
+ `);
+};
+/**
+ * 输入对话框模板
+ */
+const promptHTML = (opts) => {
+ const submitText = opts.submitText || t('confirm');
+ const cancelText = opts.cancelText || t('cancel');
+ const submitColor = opts.submitColor || '#3b82f6';
+ const cancelColor = opts.cancelColor || '#6b7280';
+ return `
+
+ ${btnRow(`
+
+
+ `)}
+ `;
+};
+/**
+ * 进度条模板
+ */
+const progressHTML = (opts) => {
+ const color = opts.progressColor || '#3b82f6';
+ return `
+
+ 0%
+ `;
+};
+/**
+ * Action Toast 模板
+ */
+const actionHTML = (actions) => {
+ if (!Array.isArray(actions) || actions.length === 0)
+ return '';
+ const buttons = actions.map((a, i) => {
+ const bg = a.style?.background || a.color || '#6366f1';
+ const cls = `met-action-btn-${i}`;
+ return ``;
+ }).join('');
+ return btnRow(buttons);
+};
+
+/**
+ * MetonaToast Plugins — 插件系统
+ * @module plugins
+ * @version 0.4.0
+ */
+/**
+ * 插件管理器
+ */
+class PluginManager {
+ constructor() {
+ this.plugins = new Map();
+ this.initialized = false;
+ }
+ register(name, plugin) {
+ if (this.plugins.has(name)) {
+ console.warn(`Plugin "${name}" is already registered`);
+ return this;
+ }
+ if (!plugin || typeof plugin !== 'object' || !plugin.name) {
+ console.error(`Invalid plugin "${name}": must be an object with a "name" property`);
+ return this;
+ }
+ const stored = { ...plugin, installed: false, enabled: true };
+ if (!stored.name)
+ stored.name = name;
+ this.plugins.set(name, stored);
+ if (stored.install) {
+ try {
+ stored.install(this);
+ stored.installed = true;
+ }
+ catch (e) {
+ console.error(`Failed to install plugin "${name}":`, e);
+ }
+ }
+ return this;
+ }
+ unregister(name) {
+ const plugin = this.plugins.get(name);
+ if (!plugin)
+ return this;
+ if (plugin.uninstall) {
+ try {
+ plugin.uninstall(this);
+ }
+ catch (e) {
+ console.error(`Failed to uninstall plugin "${name}":`, e);
+ }
+ }
+ this.plugins.delete(name);
+ return this;
+ }
+ get(name) { return this.plugins.get(name) || null; }
+ has(name) { return this.plugins.has(name); }
+ getAll() { return Array.from(this.plugins.values()); }
+ getNames() { return Array.from(this.plugins.keys()); }
+ enable(name) {
+ const p = this.plugins.get(name);
+ if (p)
+ p.enabled = true;
+ return this;
+ }
+ disable(name) {
+ const p = this.plugins.get(name);
+ if (p)
+ p.enabled = false;
+ return this;
+ }
+ isEnabled(name) {
+ const p = this.plugins.get(name);
+ return p ? !!p.enabled : false;
+ }
+ destroy() {
+ this.plugins.forEach((p) => {
+ if (p.destroy) {
+ try {
+ p.destroy(this);
+ }
+ catch (_e) { /* noop */ }
+ }
+ });
+ this.plugins.clear();
+ }
+}
+/**
+ * 预设插件
+ */
+const presetPlugins = {
+ /**
+ * 键盘快捷键插件 — ESC 关闭所有 Toast
+ */
+ keyboard: {
+ name: 'keyboard',
+ version: '1.0.0',
+ description: 'ESC 关闭所有 Toast',
+ _handler: null,
+ install() {
+ if (typeof document === 'undefined')
+ return;
+ const handler = (e) => {
+ if (e.key === 'Escape') {
+ document.querySelectorAll('.met-toast .met-close').forEach(btn => {
+ try {
+ btn.click();
+ }
+ catch (_e) { /* noop */ }
+ });
+ }
+ };
+ this._handler = handler;
+ document.addEventListener('keydown', handler);
+ },
+ uninstall() {
+ const handler = this._handler;
+ if (handler && typeof document !== 'undefined') {
+ document.removeEventListener('keydown', handler);
+ this._handler = null;
+ }
+ },
+ },
+ /**
+ * 持久化插件 — 自动保存/加载配置到 localStorage
+ */
+ persistence: {
+ name: 'persistence',
+ version: '1.0.0',
+ description: '自动持久化配置到 localStorage',
+ storageKey: 'metona-toast-config',
+ install() {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ const key = this.storageKey;
+ const saved = localStorage.getItem(key);
+ return saved ? JSON.parse(saved) : null;
+ }
+ catch (_e) {
+ return null;
+ }
+ }
+ return null;
+ },
+ save(config) {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ const key = this.storageKey;
+ localStorage.setItem(key, JSON.stringify(config));
+ }
+ catch (_e) { /* noop */ }
+ }
+ },
+ uninstall() {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ const key = this.storageKey;
+ localStorage.removeItem(key);
+ }
+ catch (_e) { /* noop */ }
+ }
+ },
+ },
+ /**
+ * 无障碍插件 — 屏幕阅读器公告
+ */
+ accessibility: {
+ name: 'accessibility',
+ version: '1.0.0',
+ description: '通过屏幕阅读器朗读 Toast 内容',
+ announce(toast) {
+ if (typeof document === 'undefined')
+ return;
+ const el = document.createElement('div');
+ el.setAttribute('aria-live', 'assertive');
+ el.setAttribute('aria-atomic', 'true');
+ el.style.cssText = 'position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;';
+ const typeName = t(toast.type) || toast.type;
+ el.textContent = `${typeName}: ${toast.title || ''} ${toast.message || ''}`;
+ document.body.appendChild(el);
+ setTimeout(() => { if (el.parentNode)
+ el.parentNode.removeChild(el); }, 3000);
+ },
+ },
+ /**
+ * 去重插件 — 相同 type + message 的 toast 自动合并(更新已有的一条)
+ */
+ dedupe: {
+ name: 'dedupe',
+ version: '1.0.0',
+ description: '相同类型和消息的 Toast 自动去重,更新已有实例而非重复弹出',
+ _off: null,
+ install() {
+ const off = Toast$1.on('beforeShow', (toast) => {
+ const existing = Array.from(Toast$1._registry.values()).find(t => !t.closing && t.type === toast.type && t.message === toast.message);
+ if (existing) {
+ existing.update({ title: toast.title || existing.title });
+ return false;
+ }
+ return undefined;
+ });
+ this._off = off;
+ },
+ uninstall() {
+ const off = this._off;
+ if (off)
+ off();
+ this._off = null;
+ },
+ },
+};
+/**
+ * 插件工具
+ */
+const pluginUtils = {
+ createManager() { return new PluginManager(); },
+ register(name, plugin) { return defaultPluginManager.register(name, plugin); },
+ unregister(name) { return defaultPluginManager.unregister(name); },
+ get(name) { return defaultPluginManager.get(name); },
+ has(name) { return defaultPluginManager.has(name); },
+ getAll() { return defaultPluginManager.getAll(); },
+ getNames() { return defaultPluginManager.getNames(); },
+ enable(name) { return defaultPluginManager.enable(name); },
+ disable(name) { return defaultPluginManager.disable(name); },
+ isEnabled(name) { return defaultPluginManager.isEnabled(name); },
+ getPreset(name) { return presetPlugins[name] || null; },
+ getAllPresets() { return { ...presetPlugins }; },
+ createPlugin(config) {
+ return {
+ name: config.name || 'custom',
+ version: config.version || '1.0.0',
+ description: config.description || '',
+ hooks: config.hooks || {},
+ install: config.install || undefined,
+ uninstall: config.uninstall || undefined,
+ ...config,
+ };
+ },
+ validatePlugin(plugin) {
+ const errors = [];
+ if (!plugin || typeof plugin !== 'object')
+ errors.push('Plugin must be an object');
+ if (!plugin.name && !plugin.version)
+ errors.push('Plugin must have a name or version');
+ return { valid: errors.length === 0, errors };
+ },
+};
+const defaultPluginManager = new PluginManager();
+
+/**
+ * MetonaToast API — meToast 核心 API 对象
+ * @module api
+ * @version 0.4.0
+ */
+/**
+ * 参数标准化工具
+ */
+const normalizeArgs = (args, defaultType = 'default') => {
+ const [first, second] = args;
+ if (typeof first === 'string') {
+ return {
+ ...(second || {}),
+ type: second?.type || defaultType,
+ message: first,
+ };
+ }
+ if (first && typeof first === 'object') {
+ return {
+ ...first,
+ type: first.type || defaultType,
+ };
+ }
+ return {
+ type: defaultType,
+ message: '',
+ };
+};
+/**
+ * meToast API 对象
+ */
+const meToast = {
+ _toasts: new Map(),
+ _config: { ...DEFAULTS },
+ version: VERSION,
+ configure(opts) {
+ if (!opts || typeof opts !== 'object')
+ return this;
+ Object.assign(this._config, opts);
+ if (opts.theme) {
+ applyTheme(opts.theme);
+ }
+ if (opts.locale) {
+ setCurrentLocale(opts.locale);
+ }
+ Toast$1.trigger('configChange');
+ return this;
+ },
+ _emit(opts) {
+ const merged = { ...this._config, ...opts };
+ if (merged.content && !merged.message)
+ merged.message = merged.content;
+ const t = new Toast$1(merged);
+ t.create();
+ // beforeShow/onBeforeShow 拦截(返回 false)时 el 为 null,不注册幽灵实例
+ if (t.el !== null) {
+ this._toasts.set(t.id, t);
+ }
+ return t;
+ },
+ _remove(id) {
+ this._toasts.delete(id);
+ },
+ find(id) {
+ if (!id)
+ return undefined;
+ return this._toasts.get(id);
+ },
+ show(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'default');
+ return this._emit(normalized);
+ },
+ success(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'success');
+ return this._emit(normalized);
+ },
+ error(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'error');
+ return this._emit(normalized);
+ },
+ warning(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'warning');
+ return this._emit(normalized);
+ },
+ info(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'info');
+ return this._emit(normalized);
+ },
+ loading(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'loading');
+ normalized.duration = 0;
+ normalized.closeButton = false;
+ normalized.showProgress = false;
+ const toast = this._emit(normalized);
+ return {
+ id: toast.id,
+ success: (msg, o = {}) => this._resolve(toast, 'success', msg || t('success'), o),
+ error: (msg, o = {}) => this._resolve(toast, 'error', msg || t('error'), o),
+ info: (msg, o = {}) => this._resolve(toast, 'info', msg || t('info'), o),
+ warning: (msg, o = {}) => this._resolve(toast, 'warning', msg || t('warning'), o),
+ update: (p) => { toast.update(p); return this; },
+ dismiss: () => toast.close(),
+ };
+ },
+ promise(promise, opts = {}) {
+ if (!promise || typeof promise.then !== 'function') {
+ console.error('MeToast.promise: first argument must be a Promise');
+ return Promise.reject(new Error('Invalid promise'));
+ }
+ const loadingMsg = opts.loading || t('loading');
+ const successMsg = opts.success || t('success');
+ const errorMsg = opts.error || t('error');
+ const ctrl = this.loading(loadingMsg);
+ return Promise.resolve(promise)
+ .then((data) => {
+ ctrl.success(successMsg);
+ return data;
+ })
+ .catch((err) => {
+ ctrl.error(errorMsg);
+ throw err;
+ });
+ },
+ /**
+ * loading 链式转换 — 原地 update 同一实例(id 稳定,不重建 DOM)
+ * duration 从 0 恢复为默认值,使转换后的 toast 自动关闭
+ */
+ _resolve(loadingToast, type, message, opts) {
+ const old = this._toasts.get(loadingToast.id);
+ if (!old)
+ return null;
+ old.update({
+ ...opts,
+ type,
+ message,
+ duration: opts.duration ?? (old.config.duration || this._config.duration),
+ });
+ return old;
+ },
+ confirm(message, opts = {}) {
+ if (typeof message !== 'string') {
+ console.error('MeToast.confirm: message must be a string');
+ return Promise.resolve(false);
+ }
+ return new Promise((resolve) => {
+ let resolved = false;
+ const safeResolve = (val) => {
+ if (!resolved) {
+ resolved = true;
+ clearTimeout(safetyTimeout);
+ resolve(val);
+ }
+ };
+ const safetyTimeout = setTimeout(() => safeResolve(false), 10000);
+ const toast = this._emit({
+ ...opts,
+ type: opts.type || 'warning',
+ message,
+ duration: 0,
+ closeButton: false,
+ closeOnClick: false,
+ draggable: false,
+ html: confirmHTML(opts),
+ });
+ setTimeout(() => {
+ const confirmBtn = toast.el?.querySelector('.met-confirm-btn');
+ const cancelBtn = toast.el?.querySelector('.met-cancel-btn');
+ if (confirmBtn) {
+ confirmBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(true);
+ });
+ }
+ if (cancelBtn) {
+ cancelBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(false);
+ });
+ }
+ }, 0);
+ });
+ },
+ prompt(message, opts = {}) {
+ if (typeof message !== 'string') {
+ console.error('MeToast.prompt: message must be a string');
+ return Promise.resolve(null);
+ }
+ return new Promise((resolve) => {
+ let resolved = false;
+ const safeResolve = (val) => {
+ if (!resolved) {
+ resolved = true;
+ clearTimeout(safetyTimeout);
+ resolve(val);
+ }
+ };
+ const safetyTimeout = setTimeout(() => safeResolve(null), 10000);
+ const toast = this._emit({
+ ...opts,
+ type: opts.type || 'info',
+ message,
+ duration: 0,
+ closeButton: false,
+ closeOnClick: false,
+ draggable: false,
+ html: promptHTML(opts),
+ });
+ setTimeout(() => {
+ const input = toast.el?.querySelector('.met-input');
+ const submitBtn = toast.el?.querySelector('.met-submit-btn');
+ const cancelBtn = toast.el?.querySelector('.met-cancel-btn');
+ if (input) {
+ input.focus();
+ input.addEventListener('keydown', (e) => {
+ if (e.key === 'Enter') {
+ toast.close();
+ safeResolve(input.value);
+ }
+ });
+ }
+ if (submitBtn) {
+ submitBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(input?.value || null);
+ });
+ }
+ if (cancelBtn) {
+ cancelBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(null);
+ });
+ }
+ }, 0);
+ });
+ },
+ progress(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'info');
+ normalized.duration = 0;
+ normalized.closeButton = false;
+ normalized.showProgress = false;
+ const toast = this._emit({
+ ...normalized,
+ html: progressHTML(opts),
+ });
+ return {
+ id: toast.id,
+ setProgress(percent) {
+ const fill = toast.el?.querySelector('.met-progress-fill');
+ const text = toast.el?.querySelector('.met-progress-text');
+ if (fill) {
+ fill.style.width = `${Math.min(100, Math.max(0, percent))}%`;
+ }
+ if (text) {
+ text.textContent = `${Math.round(percent)}%`;
+ }
+ },
+ complete(message) {
+ this.setProgress(100);
+ setTimeout(() => {
+ toast.update({
+ type: 'success',
+ message: message || t('success'),
+ html: '',
+ });
+ setTimeout(() => toast.close(), 1000);
+ }, 300);
+ },
+ error(message) {
+ toast.update({
+ type: 'error',
+ message: message || t('error'),
+ html: '',
+ });
+ setTimeout(() => toast.close(), 2000);
+ },
+ dismiss() {
+ toast.close();
+ },
+ };
+ },
+ countdown(message, seconds = 10, opts = {}) {
+ if (typeof message !== 'string') {
+ console.error('MeToast.countdown: message must be a string');
+ return { id: '', cancel: () => { }, pause: () => { }, resume: () => { } };
+ }
+ let remaining = Math.max(1, parseInt(String(seconds)) || 10);
+ let timer = null;
+ const toast = this._emit({
+ ...opts,
+ type: opts.type || 'warning',
+ message: message.replace(/\{seconds\}/g, String(remaining)),
+ duration: 0,
+ closeButton: true,
+ showProgress: false,
+ });
+ const tick = () => {
+ remaining--;
+ if (remaining <= 0) {
+ if (timer !== null)
+ clearInterval(timer);
+ toast.close();
+ if (typeof opts.onComplete === 'function') {
+ try {
+ opts.onComplete();
+ }
+ catch (e) {
+ console.error('countdown onComplete error:', e);
+ }
+ }
+ return;
+ }
+ toast.update({
+ message: message.replace(/\{seconds\}/g, String(remaining)),
+ });
+ };
+ timer = setInterval(tick, 1000);
+ return {
+ id: toast.id,
+ cancel() { if (timer !== null)
+ clearInterval(timer); toast.close(); },
+ pause() { if (timer !== null)
+ clearInterval(timer); },
+ resume() { if (timer !== null)
+ clearInterval(timer); timer = setInterval(tick, 1000); },
+ };
+ },
+ action(messageOrOpts, actions = [], opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'info');
+ normalized.duration = opts.duration ?? 0;
+ normalized.closeButton = opts.closeButton ?? true;
+ const toast = this._emit({
+ ...normalized,
+ html: (normalized.html || '') + actionHTML(actions),
+ });
+ if (Array.isArray(actions)) {
+ setTimeout(() => {
+ actions.forEach((a, i) => {
+ const btn = toast.el?.querySelector(`.met-action-btn-${i}`);
+ if (btn && typeof a.onClick === 'function') {
+ btn.addEventListener('click', () => {
+ try {
+ a.onClick(toast);
+ }
+ catch (e) {
+ console.error('Action onClick error:', e);
+ }
+ if (a.close !== false)
+ toast.close();
+ });
+ }
+ });
+ }, 0);
+ }
+ return { id: toast.id, toast, dismiss: () => toast.close() };
+ },
+ queue(messages, opts = {}) {
+ if (!Array.isArray(messages)) {
+ console.error('MeToast.queue: messages must be an array');
+ const p = Promise.resolve();
+ return { then: (fn) => p.then(fn), catch: (rj) => p.catch(rj), cancel: () => { } };
+ }
+ let cancelled = false;
+ const promise = new Promise((resolve) => {
+ let index = 0;
+ const delay = opts.delay || 1000;
+ const userOnClose = opts.onClose;
+ const showNext = () => {
+ if (cancelled || index >= messages.length) {
+ resolve();
+ return;
+ }
+ const message = messages[index];
+ index++;
+ const msg = typeof message === 'string' ? message : (message?.message || '');
+ const msgObj = (typeof message === 'object' && message !== null) ? message : {};
+ const msgOnClose = msgObj.onClose;
+ this._emit({
+ ...opts,
+ ...msgObj,
+ message: msg,
+ duration: msgObj.duration || opts.duration || 3000,
+ onClose: (toast) => {
+ if (typeof msgOnClose === 'function') {
+ try {
+ msgOnClose(toast);
+ }
+ catch (_e) { /* noop */ }
+ }
+ if (typeof userOnClose === 'function') {
+ try {
+ userOnClose(toast);
+ }
+ catch (_e) { /* noop */ }
+ }
+ setTimeout(showNext, delay);
+ },
+ });
+ };
+ showNext();
+ });
+ return {
+ then: (fn, rj) => promise.then(fn, rj),
+ catch: (rj) => promise.catch(rj),
+ cancel: () => { cancelled = true; },
+ };
+ },
+ stack(messages, opts = {}) {
+ if (!Array.isArray(messages)) {
+ console.error('MeToast.stack: messages must be an array');
+ return;
+ }
+ messages.forEach((message, index) => {
+ setTimeout(() => {
+ const msg = typeof message === 'string' ? message : (message?.message || '');
+ this._emit({
+ ...opts,
+ ...((typeof message === 'object' && message !== null) ? message : {}),
+ message: msg,
+ });
+ }, index * (opts.stagger || 100));
+ });
+ },
+ dismiss(id) {
+ if (id) {
+ const t = this._toasts.get(id);
+ if (t)
+ t.close();
+ return;
+ }
+ this._toasts.forEach(t => t.close());
+ },
+ /**
+ * 立即移除指定 Toast(不触发离场动画)
+ */
+ removeToast(id) {
+ if (!id)
+ return;
+ const t = this._toasts.get(id);
+ if (t)
+ t.remove();
+ },
+ clear(position) {
+ this._toasts.forEach(t => {
+ if (!position || t.config.position === position)
+ t.close();
+ });
+ },
+ getAll() {
+ return new Map(this._toasts);
+ },
+ count() {
+ return this._toasts.size;
+ },
+ group(name) {
+ const self = this;
+ const methods = ['show', 'success', 'error', 'warning', 'info', 'loading', 'action'];
+ const g = { _group: name };
+ methods.forEach(m => {
+ g[m] = (...args) => {
+ const lastArg = args[args.length - 1];
+ const isObj = typeof lastArg === 'object' && lastArg !== null && !Array.isArray(lastArg);
+ const selfMethods = self;
+ if (isObj && args.length === 1) {
+ return selfMethods[m]({ ...lastArg, group: name });
+ }
+ if (isObj) {
+ args.pop();
+ return selfMethods[m](...args, { ...lastArg, group: name });
+ }
+ return selfMethods[m](...args, { group: name });
+ };
+ });
+ g.dismiss = () => self.dismissGroup(name);
+ g.count = () => self._groupCount(name);
+ return g;
+ },
+ dismissGroup(name) {
+ this._toasts.forEach(t => { if (t.group === name)
+ t.close(); });
+ },
+ _groupCount(name) {
+ let c = 0;
+ this._toasts.forEach(t => { if (t.group === name)
+ c++; });
+ return c;
+ },
+ getToasts() {
+ return Array.from(this._toasts.values());
+ },
+ hasToasts() {
+ return this._toasts.size > 0;
+ },
+ getToast(id) {
+ if (!id)
+ return null;
+ return this._toasts.get(id) || null;
+ },
+ closeAll() {
+ this._toasts.forEach(t => t.close());
+ },
+ clearAll() {
+ this._toasts.forEach(t => t.close());
+ },
+ pauseAll() {
+ this._toasts.forEach(t => t._pause());
+ },
+ resumeAll() {
+ this._toasts.forEach(t => t._resume());
+ },
+ updateAll(partial) {
+ if (partial && typeof partial === 'object') {
+ this._toasts.forEach(t => t.update(partial));
+ }
+ },
+ findToasts(predicate) {
+ if (typeof predicate !== 'function')
+ return [];
+ return Array.from(this._toasts.values()).filter(predicate);
+ },
+ findByType(type) {
+ return this.findToasts(t => t.type === type);
+ },
+ findByPosition(position) {
+ return this.findToasts(t => t.config.position === position);
+ },
+ // ====== 以下方法依赖子模块(themes/i18n/plugins/animations),由 index.ts 注入 ======
+ init(options = {}) {
+ Toast$1.trigger('beforeInit');
+ this._destroyed = false;
+ if (options.config) {
+ this.configure(options.config);
+ }
+ if (options.theme && this.themes) {
+ this.themes.switchTheme(options.theme);
+ }
+ if (options.locale && this.i18n) {
+ this.i18n.switchLocale(options.locale);
+ }
+ if (options.plugins && Array.isArray(options.plugins)) {
+ options.plugins.forEach((p) => {
+ this.use(p);
+ });
+ }
+ Toast$1.trigger('afterInit');
+ return this;
+ },
+ getStatus() {
+ return {
+ version: VERSION,
+ toasts: this._toasts.size,
+ theme: this.themes?.getCurrentTheme?.() || 'auto',
+ locale: this.i18n?.getCurrentLocale?.() || 'zh-CN',
+ plugins: this.plugins?.getNames?.() || [],
+ animations: this.animations?.getActiveCount?.() || 0,
+ };
+ },
+ getConfig() {
+ return { ...this._config };
+ },
+ updateConfig(config) {
+ if (config && typeof config === 'object') {
+ Object.assign(this._config, config);
+ Toast$1.trigger('configChange');
+ }
+ return this;
+ },
+ resetConfig() {
+ const keys = Object.keys(this._config);
+ keys.forEach(k => delete this._config[k]);
+ Object.assign(this._config, DEFAULTS);
+ Toast$1.trigger('configChange');
+ return this;
+ },
+ use(plugin, options = {}) {
+ if (typeof plugin === 'string') {
+ const preset = presetPlugins[plugin];
+ if (!preset) {
+ console.warn(`Preset plugin "${plugin}" not found`);
+ return this;
+ }
+ this.plugins.register(plugin, { ...preset, ...options });
+ // 连接插件钩子
+ if (plugin === 'accessibility') {
+ Toast$1.on('afterShow', (toast) => {
+ const acc = preset;
+ if (typeof acc.announce === 'function')
+ acc.announce(toast);
+ });
+ }
+ if (plugin === 'persistence') {
+ const saved = typeof preset.install === 'function'
+ ? preset.install(this.plugins)
+ : null;
+ if (saved)
+ this.configure(saved);
+ Toast$1.on('afterClose', () => {
+ const p = preset;
+ if (typeof p.save === 'function')
+ p.save(this.getConfig());
+ });
+ }
+ }
+ else if (plugin && typeof plugin === 'object') {
+ this.plugins.register(plugin.name || 'custom', { ...plugin, ...options });
+ }
+ return this;
+ },
+ destroy() {
+ if (this._destroyed)
+ return;
+ this._destroyed = true;
+ Toast$1.trigger('beforeDestroy');
+ this.dismiss();
+ // 清理子模块
+ if (this.plugins && typeof this.plugins.destroy === 'function') {
+ this.plugins.destroy();
+ }
+ if (this.themes) {
+ if (typeof this.themes.clearThemeListeners === 'function') {
+ this.themes.clearThemeListeners();
+ }
+ if (typeof this.themes.unwatchSystemTheme === 'function') {
+ this.themes.unwatchSystemTheme();
+ }
+ }
+ if (this.i18n && typeof this.i18n.clearLocaleListeners === 'function') {
+ this.i18n.clearLocaleListeners();
+ }
+ if (this.animations && typeof this.animations.destroy === 'function') {
+ this.animations.destroy();
+ }
+ // 清理 DOM 与静态资源
+ if (typeof document !== 'undefined') {
+ const containers = document.querySelectorAll('.met-container');
+ containers.forEach((c) => { if (c.parentNode)
+ c.parentNode.removeChild(c); });
+ ['metona-toast-styles', 'metona-toast-theme-css', 'metona-toast-custom-styles', 'metona-toast-anim-styles'].forEach((id) => {
+ const el = document.getElementById(id);
+ if (el && el.parentNode)
+ el.parentNode.removeChild(el);
+ });
+ }
+ this._toasts.clear();
+ _containerCache.clear();
+ Toast$1._registry.clear();
+ // afterDestroy 必须在清理 hooks 之前触发
+ Toast$1.trigger('afterDestroy');
+ Toast$1._hooks.clear();
+ },
+ // 子模块引用(由 index.ts 注入实际实现)
+ animations: null,
+ themes: null,
+ i18n: null,
+ plugins: null,
+ presetPlugins: {},
+};
+// 连接 Toast 静态回调到 meToast 实例
+Toast$1.setCallbacks({
+ onError: (info) => {
+ const onError = meToast._config.onError;
+ if (typeof onError === 'function') {
+ try {
+ onError(info);
+ }
+ catch (_e) { /* noop */ }
+ }
+ },
+ removeToast: (id) => {
+ meToast._toasts.delete(id);
+ },
+});
+
+/**
+ * MetonaToast — 轻量级Toast通知库
+ * @module metona-toast
+ * @version 0.4.0
+ * @author thzxx
+ * @license MIT
+ */
+/**
+ * 增强的 MeToast 对象 — 在 meToast 基础上注入子模块
+ */
+const enhancedMeToast = {
+ ...meToast,
+ version: VERSION,
+ animations: animationUtils,
+ themes: themeUtils,
+ i18n: i18nUtils,
+ plugins: pluginUtils,
+ presetPlugins,
+};
+// 初始化主题和国际化
+if (typeof themeUtils.initTheme === 'function') {
+ themeUtils.initTheme();
+}
+if (typeof i18nUtils.initI18n === 'function') {
+ i18nUtils.initI18n();
+}
+// 全局钩子 — 主题/语言变化转发到 Toast 钩子系统
+if (typeof themeUtils.addThemeListener === 'function') {
+ themeUtils.addThemeListener(() => Toast$1.trigger('themeChange'));
+}
+if (typeof i18nUtils.addLocaleListener === 'function') {
+ i18nUtils.addLocaleListener(() => Toast$1.trigger('localeChange'));
+}
+// 浏览器环境全局注册
+if (typeof window !== 'undefined') {
+ window.MeToast = enhancedMeToast;
+ window.Met = enhancedMeToast;
+ // Notification API — 页面不可见时自动发送系统通知
+ const sendNotification = (toast) => {
+ try {
+ new Notification(toast.title || toast.type, { body: toast.message });
+ }
+ catch (_e) { /* noop */ }
+ };
+ enhancedMeToast._notify = (toast) => {
+ if (typeof Notification === 'undefined')
+ return;
+ if (Notification.permission === 'denied')
+ return;
+ if (!document.hidden)
+ return;
+ if (Notification.permission === 'default') {
+ Notification.requestPermission().then(p => { if (p === 'granted')
+ sendNotification(toast); });
+ return;
+ }
+ sendNotification(toast);
+ };
+ Toast$1.on('afterShow', (toast) => {
+ const config = toast.config;
+ if (config.notifyWhenHidden) {
+ (enhancedMeToast._notify)(toast);
+ }
+ });
+}
+
+/**
+ * MetonaToast React — React 适配器
+ * @module react
+ * @version 0.4.0
+ * @description useToast hook + 声明式 组件。主包保持零依赖,React 为 optional peerDependency
+ */
+const SHOW_METHODS = ['success', 'error', 'warning', 'info', 'show'];
+const showToast = (method, message, opts) => {
+ switch (method) {
+ case 'success': return enhancedMeToast.success(message, opts);
+ case 'error': return enhancedMeToast.error(message, opts);
+ case 'warning': return enhancedMeToast.warning(message, opts);
+ case 'info': return enhancedMeToast.info(message, opts);
+ default: return enhancedMeToast.show(message, opts);
+ }
+};
+/**
+ * 创建绑定清理集合的 API — 组件卸载时自动移除本组件创建的 Toast。
+ * 纯函数,便于独立测试与扩展。
+ */
+const createBoundApi = (cleanup) => {
+ const track = (fn) => {
+ const result = fn();
+ if (result && result.id)
+ cleanup.add(result.id);
+ return result;
+ };
+ const bound = {
+ ...enhancedMeToast,
+ success: (messageOrOpts, opts) => track(() => enhancedMeToast.success(messageOrOpts, opts)),
+ error: (messageOrOpts, opts) => track(() => enhancedMeToast.error(messageOrOpts, opts)),
+ warning: (messageOrOpts, opts) => track(() => enhancedMeToast.warning(messageOrOpts, opts)),
+ info: (messageOrOpts, opts) => track(() => enhancedMeToast.info(messageOrOpts, opts)),
+ show: (messageOrOpts, opts) => track(() => enhancedMeToast.show(messageOrOpts, opts)),
+ loading: (messageOrOpts, opts) => track(() => enhancedMeToast.loading(messageOrOpts, opts)),
+ // 通过 id 关闭时同步清理集合,避免卸载时重复移除
+ dismiss: (id) => {
+ if (id)
+ cleanup.delete(id);
+ return enhancedMeToast.dismiss(id);
+ },
+ removeToast: (id) => {
+ cleanup.delete(id);
+ return enhancedMeToast.removeToast(id);
+ },
+ };
+ return bound;
+};
+/**
+ * useToast — 返回 MeToast API,但本组件创建的 Toast 会在组件卸载时自动移除。
+ * 适合"通知随组件生命周期"的场景(如表单提交、异步任务页)。
+ */
+const useToast = () => {
+ const cleanupRef = react.useRef(new Set());
+ react.useEffect(() => {
+ const set = cleanupRef.current;
+ return () => {
+ set.forEach(id => enhancedMeToast.removeToast(id));
+ set.clear();
+ };
+ }, []);
+ return react.useMemo(() => createBoundApi(cleanupRef.current), []);
+};
+/**
+ * Toast — 声明式 Toast 组件。props 变化时更新内容(重新创建实例),
+ * 组件卸载时自动移除(autoClose 默认 true)。
+ */
+const Toast = (props) => {
+ const { message, type, autoClose = true, ...rest } = props;
+ const toastRef = react.useRef(null);
+ const restKey = JSON.stringify(rest);
+ react.useEffect(() => {
+ const method = SHOW_METHODS.includes(type) ? type : 'show';
+ toastRef.current = showToast(method, message, rest);
+ return () => {
+ if (autoClose)
+ toastRef.current?.remove();
+ toastRef.current = null;
+ };
+ // autoClose 不参与重建依赖:它只影响卸载时的清理行为
+ }, [message, type, restKey]);
+ return null;
+};
+
+exports.MeToast = enhancedMeToast;
+exports.Toast = Toast;
+exports.createBoundApi = createBoundApi;
+exports.useToast = useToast;
+//# sourceMappingURL=react.cjs.js.map
diff --git a/dist/react.cjs.js.map b/dist/react.cjs.js.map
new file mode 100644
index 0000000..55febd7
--- /dev/null
+++ b/dist/react.cjs.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"react.cjs.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts","../src/react.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Toast","MeToast","useRef","useEffect","useMemo"],"mappings":"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"}
\ No newline at end of file
diff --git a/dist/react.d.ts b/dist/react.d.ts
new file mode 100644
index 0000000..29135cd
--- /dev/null
+++ b/dist/react.d.ts
@@ -0,0 +1,509 @@
+/**
+ * MetonaToast — 核心类型定义
+ * @module types
+ * @version 0.4.0
+ */
+/** Toast 通知类型(107种内置图标类型) */
+type ToastType = 'default' | 'success' | 'error' | 'warning' | 'info' | 'loading' | 'check' | 'x' | 'alert' | 'question' | 'star' | 'heart' | 'bell' | 'mail' | 'settings' | 'user' | 'home' | 'search' | 'plus' | 'minus' | 'edit' | 'trash' | 'download' | 'upload' | 'share' | 'link' | 'external' | 'clock' | 'calendar' | 'map' | 'compass' | 'globe' | 'wifi' | 'cloud' | 'sun' | 'moon' | 'zap' | 'activity' | 'cpu' | 'database' | 'server' | 'terminal' | 'code' | 'git' | 'package' | 'layers' | 'grid' | 'list' | 'filter' | 'sort' | 'refresh' | 'sync' | 'power' | 'battery' | 'bluetooth' | 'volume' | 'mic' | 'camera' | 'image' | 'video' | 'music' | 'file' | 'folder' | 'clipboard' | 'save' | 'print' | 'eye' | 'eyeOff' | 'lock' | 'unlock' | 'shield' | 'key' | 'flag' | 'bookmark' | 'tag' | 'gift' | 'award' | 'target' | 'crosshair' | 'move' | 'maximize' | 'minimize' | 'copy' | 'cut' | 'paste' | 'rotateCw' | 'rotateCcw' | 'zoomIn' | 'zoomOut' | 'crop' | 'sliders' | 'toggleLeft' | 'toggleRight' | 'checkCircle' | 'xCircle' | 'alertCircle' | 'infoCircle' | 'helpCircle' | 'alertTriangle' | 'checkSquare' | 'square' | 'circle' | 'triangle' | 'hexagon' | 'octagon' | 'pentagon' | 'diamond';
+/** Toast 显示位置 */
+type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
+/** Toast 主题 */
+type ToastTheme = 'light' | 'dark' | 'auto' | 'warm' | (string & {});
+/** Toast 动画类型 */
+type ToastAnimation = 'slide' | 'fade' | 'scale' | 'bounce' | 'flip' | 'rotate' | 'zoom' | 'slideUp' | 'slideDown' | 'slideLeft' | 'slideRight' | (string & {});
+/** 进度条方向 */
+type ToastProgressDirection = 'horizontal' | 'vertical';
+interface TypeColor {
+ fg: string;
+ bg: string;
+}
+interface ToastConfig {
+ position?: ToastPosition;
+ duration?: number;
+ max?: number;
+ gap?: number;
+ offset?: number;
+ pauseOnHover?: boolean;
+ closeOnClick?: boolean;
+ draggable?: boolean;
+ dragThreshold?: number;
+ showProgress?: boolean;
+ progressDirection?: ToastProgressDirection;
+ icon?: boolean;
+ closeButton?: boolean;
+ theme?: ToastTheme;
+ animation?: ToastAnimation;
+ zIndex?: number;
+ width?: number | string;
+ className?: string;
+ style?: Record;
+ onShow?: ((toast: ToastInstance) => void) | null;
+ onBeforeShow?: ((toast: ToastInstance) => boolean | void) | null;
+ onClose?: ((toast: ToastInstance) => void) | null;
+ onClick?: ((toast: ToastInstance) => void) | null;
+ onUpdate?: ((toast: ToastInstance) => void) | null;
+ render?: ((toast: ToastInstance) => string) | null;
+ resetTimerOnUpdate?: boolean;
+ notifyWhenHidden?: boolean;
+ onError?: ((errorInfo: ErrorInfo) => void) | null;
+ group?: string | null;
+ locale?: string;
+ plugins?: Array;
+}
+interface ErrorInfo {
+ hook?: string;
+ source?: string;
+ error: Error;
+ toast?: ToastInstance;
+}
+interface ToastOptions extends Partial {
+ type?: string;
+ title?: string;
+ message?: string;
+ content?: string;
+ html?: string;
+ iconHTML?: string;
+ id?: string;
+}
+interface ToastInstance {
+ id: string;
+ type: string;
+ title: string;
+ message: string;
+ html: string;
+ iconHTML: string;
+ config: ToastConfig;
+ el: HTMLElement | null;
+ barEl: HTMLElement | null;
+ rafId: number | null;
+ remaining: number;
+ startedAt: number;
+ paused: boolean;
+ closing: boolean;
+ group: string | null;
+ _cleanups: Array<() => void>;
+ _palette(): {
+ theme: string;
+ c: TypeColor;
+ t: Partial;
+ };
+ create(): this;
+ update(partial: Partial): this;
+ updatePosition(position: string): this;
+ remove(): void;
+ close(immediate?: boolean): void;
+ _pause(): void;
+ _resume(): void;
+ _destroy(): void;
+}
+interface LoadingControl {
+ id: string;
+ success(message?: string, opts?: ToastOptions): ToastInstance | null;
+ error(message?: string, opts?: ToastOptions): ToastInstance | null;
+ info(message?: string, opts?: ToastOptions): ToastInstance | null;
+ warning(message?: string, opts?: ToastOptions): ToastInstance | null;
+ update(partial: Partial): unknown;
+ dismiss(): void;
+}
+interface ProgressControl {
+ id: string;
+ setProgress(percent: number): void;
+ complete(message?: string): void;
+ error(message?: string): void;
+ dismiss(): void;
+}
+interface CountdownControl {
+ id: string;
+ cancel(): void;
+ pause(): void;
+ resume(): void;
+}
+interface ActionControl {
+ id: string;
+ toast: ToastInstance;
+ dismiss(): void;
+}
+interface QueueControl {
+ then(onfulfilled?: ((value: void) => TResult1 | PromiseLike) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike) | null): Promise;
+ catch(onrejected?: ((reason: unknown) => TResult | PromiseLike) | null): Promise;
+ cancel(): void;
+}
+interface GroupAPI {
+ _group: string;
+ show: (...args: unknown[]) => ToastInstance;
+ success: (...args: unknown[]) => ToastInstance;
+ error: (...args: unknown[]) => ToastInstance;
+ warning: (...args: unknown[]) => ToastInstance;
+ info: (...args: unknown[]) => ToastInstance;
+ loading: (...args: unknown[]) => LoadingControl;
+ action: (...args: unknown[]) => ActionControl;
+ dismiss(): void;
+ count(): number;
+}
+interface ActionButton {
+ text: string;
+ onClick: (toast: ToastInstance) => void;
+ color?: string;
+ style?: Record;
+ close?: boolean;
+}
+interface PromiseOptions extends ToastOptions {
+ loading?: string;
+ success?: string;
+ error?: string;
+}
+interface ConfirmOptions extends ToastOptions {
+ confirmText?: string;
+ confirmColor?: string;
+ cancelText?: string;
+ cancelColor?: string;
+}
+interface PromptOptions extends ToastOptions {
+ inputType?: string;
+ placeholder?: string;
+ defaultValue?: string;
+ submitText?: string;
+ submitColor?: string;
+ cancelText?: string;
+ cancelColor?: string;
+}
+interface ProgressOptions extends ToastOptions {
+ progressColor?: string;
+}
+interface CountdownOptions extends ToastOptions {
+ onComplete?: (() => void) | null;
+}
+interface QueueOptions extends ToastOptions {
+ delay?: number;
+}
+interface StackOptions extends ToastOptions {
+ stagger?: number;
+}
+interface InitOptions {
+ config?: Partial;
+ theme?: ToastTheme;
+ locale?: string;
+ plugins?: Array;
+}
+interface StatusInfo {
+ version: string;
+ toasts: number;
+ theme: string;
+ locale: string;
+ plugins: string[];
+ animations: number;
+}
+interface AnimationConfig {
+ enter: Record;
+ leave: Record;
+ duration: number;
+ easing: string;
+ name?: string;
+ delay?: number;
+ iterations?: number;
+ direction?: 'normal' | 'reverse' | 'alternate' | 'alternate-reverse';
+ fillMode?: 'none' | 'forwards' | 'backwards' | 'both';
+}
+interface AnimationUtils {
+ register(name: string, config: Partial): void;
+ unregister(name: string): void;
+ get(name: string): AnimationConfig | null;
+ getAnimationNames(): string[];
+ getActiveCount(): number;
+ cancelAll(): void;
+ reset(): void;
+ destroy(): void;
+}
+interface ThemeConfig {
+ bg: string;
+ text: string;
+ border: string;
+ shadow: string;
+ hoverShadow: string;
+ progressBg: string;
+ closeHoverBg: string;
+ backdropFilter?: string;
+}
+interface ThemePreview {
+ name: string;
+ resolved: string;
+ colors: {
+ background: string;
+ text: string;
+ border: string;
+ };
+ isDark: boolean;
+ isLight: boolean;
+ isAuto: boolean;
+}
+interface ThemeUtils {
+ getSystemTheme(): 'light' | 'dark';
+ resolveTheme(theme: string): string;
+ getThemeConfig(theme: string): ThemeConfig;
+ applyTheme(theme: string): void;
+ getCurrentTheme(): string;
+ getResolvedTheme(): string;
+ switchTheme(theme: string): void;
+ toggleTheme(): void;
+ resetToAuto(): void;
+ initTheme(): void;
+ watchSystemTheme(): void;
+ unwatchSystemTheme(): void;
+ addThemeListener(listener: (theme: string, resolved: string) => void): () => void;
+ removeThemeListener(listener: (theme: string, resolved: string) => void): void;
+ clearThemeListeners(): void;
+ registerTheme(name: string, config: ThemeConfig): void;
+ unregisterTheme(name: string): void;
+ getAllThemes(): Record;
+ getThemeNames(): string[];
+ hasTheme(name: string): boolean;
+ getThemePreview(theme: string): ThemePreview;
+ generateThemeCSS(theme: string): string;
+ applyThemeCSS(theme: string): void;
+ removeThemeCSS(): void;
+ saveTheme(theme: string): void;
+ loadTheme(): string;
+}
+interface LocaleInfo {
+ code: string;
+ name: string;
+ direction: 'ltr' | 'rtl';
+ isSupported: boolean;
+ isCurrent: boolean;
+ isFallback: boolean;
+}
+interface I18nUtils {
+ t(key: string, params?: Record): string;
+ plural(key: string, count: number, params?: Record): string;
+ getCurrentLocale(): string;
+ setCurrentLocale(locale: string): void;
+ switchLocale(locale: string): void;
+ getFallbackLocale(): string;
+ setFallbackLocale(locale: string): void;
+ hasTranslation(key: string): boolean;
+ getTranslations(locale: string): Record;
+ addTranslations(locale: string, translations: Record): void;
+ removeTranslation(locale: string, key: string): void;
+ clearTranslations(locale: string): void;
+ getSupportedLocales(): string[];
+ isLocaleSupported(locale: string): boolean;
+ getLocaleName(locale: string): string;
+ getLocaleDirection(locale: string): 'ltr' | 'rtl';
+ getLocaleInfo(locale: string): LocaleInfo;
+ getAllLocaleInfo(): LocaleInfo[];
+ formatNumber(number: number, options?: Intl.NumberFormatOptions): string;
+ formatCurrency(amount: number, currency?: string, options?: Intl.NumberFormatOptions): string;
+ formatPercent(value: number, options?: Intl.NumberFormatOptions): string;
+ formatDate(date: Date | number | string, options?: Intl.DateTimeFormatOptions): string;
+ formatTime(date: Date | number | string, options?: Intl.DateTimeFormatOptions): string;
+ formatRelativeTime(date: Date | number | string, options?: Intl.RelativeTimeFormatOptions): string;
+ formatList(list: string[], options?: Record): string;
+ formatPlural(count: number, options?: Intl.PluralRulesOptions): string;
+ addLocaleListener(listener: (locale: string) => void): () => void;
+ removeLocaleListener(listener: (locale: string) => void): void;
+ clearLocaleListeners(): void;
+ initI18n(): void;
+ saveLocale(locale: string): void;
+ loadLocale(): string;
+ getDefaultLocale(): string;
+}
+interface Plugin {
+ name: string;
+ version?: string;
+ description?: string;
+ hooks?: Record void>;
+ middleware?: (...args: unknown[]) => unknown;
+ install?: (manager: PluginManager) => void | Record | null;
+ uninstall?: (manager: PluginManager) => void;
+ init?: (manager: PluginManager) => void;
+ destroy?: (manager: PluginManager) => void;
+ installed?: boolean;
+ enabled?: boolean;
+ [key: string]: unknown;
+}
+interface PluginManager {
+ register(name: string, plugin: Plugin): PluginManager;
+ unregister(name: string): PluginManager;
+ get(name: string): Plugin | null;
+ has(name: string): boolean;
+ getAll(): Plugin[];
+ getNames(): string[];
+ enable(name: string): PluginManager;
+ disable(name: string): PluginManager;
+ isEnabled(name: string): boolean;
+ destroy(): void;
+}
+interface PluginUtils {
+ createManager(): PluginManager;
+ register(name: string, plugin: Plugin): PluginManager;
+ unregister(name: string): PluginManager;
+ get(name: string): Plugin | null;
+ has(name: string): boolean;
+ getAll(): Plugin[];
+ getNames(): string[];
+ enable(name: string): PluginManager;
+ disable(name: string): PluginManager;
+ isEnabled(name: string): boolean;
+ getPreset(name: string): Plugin | null;
+ getAllPresets(): Record;
+ createPlugin(config: Partial): Plugin;
+ validatePlugin(plugin: Partial): {
+ valid: boolean;
+ errors: string[];
+ };
+}
+interface MeToast {
+ version: string;
+ _toasts: Map;
+ _config: ToastConfig;
+ _destroyed?: boolean;
+ _emit(opts: ToastOptions): ToastInstance;
+ _remove(id: string): void;
+ _resolve(loadingToast: ToastInstance, type: string, message: string, opts: ToastOptions): ToastInstance | null;
+ _groupCount(name: string): number;
+ configure(opts: Partial): MeToast;
+ init(options?: InitOptions): MeToast;
+ destroy(): void;
+ getStatus(): StatusInfo;
+ getConfig(): ToastConfig;
+ updateConfig(config: Partial): MeToast;
+ resetConfig(): MeToast;
+ show(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ success(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ error(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ warning(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ info(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ loading(messageOrOpts: string | ToastOptions, opts?: ToastOptions): LoadingControl;
+ promise(promise: Promise, opts?: PromiseOptions): Promise;
+ confirm(message: string, opts?: ConfirmOptions): Promise;
+ prompt(message: string, opts?: PromptOptions): Promise;
+ progress(messageOrOpts: string | ToastOptions, opts?: ProgressOptions): ProgressControl;
+ countdown(message: string, seconds?: number, opts?: CountdownOptions): CountdownControl;
+ action(messageOrOpts: string | ToastOptions, actions?: ActionButton[], opts?: ToastOptions): ActionControl;
+ queue(messages: Array, opts?: QueueOptions): QueueControl;
+ stack(messages: Array, opts?: StackOptions): void;
+ group(name: string): GroupAPI;
+ dismissGroup(name: string): void;
+ find(id: string): ToastInstance | undefined;
+ dismiss(id?: string): void;
+ removeToast(id: string): void;
+ clear(position?: ToastPosition): void;
+ getToasts(): ToastInstance[];
+ count(): number;
+ hasToasts(): boolean;
+ getToast(id: string): ToastInstance | null;
+ closeAll(): void;
+ clearAll(): void;
+ pauseAll(): void;
+ resumeAll(): void;
+ updateAll(partial: Partial): void;
+ findToasts(predicate: (toast: ToastInstance) => boolean): ToastInstance[];
+ findByType(type: ToastType): ToastInstance[];
+ findByPosition(position: ToastPosition): ToastInstance[];
+ getAll(): Map;
+ use(plugin: string | Plugin, options?: Record): MeToast;
+ animations: AnimationUtils;
+ themes: ThemeUtils;
+ i18n: I18nUtils;
+ plugins: PluginUtils;
+ presetPlugins: Record;
+}
+declare global {
+ interface Window {
+ MeToast: MeToast;
+ Met: MeToast;
+ }
+}
+
+/**
+ * 增强的 MeToast 对象 — 在 meToast 基础上注入子模块
+ */
+declare const enhancedMeToast: {
+ version: string;
+ animations: AnimationUtils;
+ themes: ThemeUtils;
+ i18n: I18nUtils;
+ plugins: PluginUtils;
+ presetPlugins: Record;
+ _toasts: Map;
+ _config: ToastConfig;
+ _destroyed?: boolean;
+ _emit(opts: ToastOptions): ToastInstance;
+ _remove(id: string): void;
+ _resolve(loadingToast: ToastInstance, type: string, message: string, opts: ToastOptions): ToastInstance | null;
+ _groupCount(name: string): number;
+ configure(opts: Partial): MeToast;
+ init(options?: InitOptions): MeToast;
+ destroy(): void;
+ getStatus(): StatusInfo;
+ getConfig(): ToastConfig;
+ updateConfig(config: Partial): MeToast;
+ resetConfig(): MeToast;
+ show(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ success(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ error(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ warning(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ info(messageOrOpts: string | ToastOptions, opts?: ToastOptions): ToastInstance;
+ loading(messageOrOpts: string | ToastOptions, opts?: ToastOptions): LoadingControl;
+ promise(promise: Promise, opts?: PromiseOptions): Promise;
+ confirm(message: string, opts?: ConfirmOptions): Promise;
+ prompt(message: string, opts?: PromptOptions): Promise;
+ progress(messageOrOpts: string | ToastOptions, opts?: ProgressOptions): ProgressControl;
+ countdown(message: string, seconds?: number, opts?: CountdownOptions): CountdownControl;
+ action(messageOrOpts: string | ToastOptions, actions?: ActionButton[], opts?: ToastOptions): ActionControl;
+ queue(messages: Array, opts?: QueueOptions): QueueControl;
+ stack(messages: Array, opts?: StackOptions): void;
+ group(name: string): GroupAPI;
+ dismissGroup(name: string): void;
+ find(id: string): ToastInstance | undefined;
+ dismiss(id?: string): void;
+ removeToast(id: string): void;
+ clear(position?: ToastPosition): void;
+ getToasts(): ToastInstance[];
+ count(): number;
+ hasToasts(): boolean;
+ getToast(id: string): ToastInstance | null;
+ closeAll(): void;
+ clearAll(): void;
+ pauseAll(): void;
+ resumeAll(): void;
+ updateAll(partial: Partial): void;
+ findToasts(predicate: (toast: ToastInstance) => boolean): ToastInstance[];
+ findByType(type: ToastType): ToastInstance[];
+ findByPosition(position: ToastPosition): ToastInstance[];
+ getAll(): Map;
+ use(plugin: string | Plugin, options?: Record): MeToast;
+};
+
+/**
+ * MetonaToast React — React 适配器
+ * @module react
+ * @version 0.4.0
+ * @description useToast hook + 声明式 组件。主包保持零依赖,React 为 optional peerDependency
+ */
+
+/** 支持声明式渲染的 Toast 类型 */
+type ReactToastType = 'success' | 'error' | 'warning' | 'info' | 'show' | (string & {});
+interface ToastProps extends Omit {
+ message: string;
+ type?: ReactToastType;
+ /** 组件卸载时自动移除该 Toast(默认 true)。设为 false 则 Toast 独立于组件生命周期 */
+ autoClose?: boolean;
+}
+/**
+ * 创建绑定清理集合的 API — 组件卸载时自动移除本组件创建的 Toast。
+ * 纯函数,便于独立测试与扩展。
+ */
+declare const createBoundApi: (cleanup: Set) => Record;
+/**
+ * useToast — 返回 MeToast API,但本组件创建的 Toast 会在组件卸载时自动移除。
+ * 适合"通知随组件生命周期"的场景(如表单提交、异步任务页)。
+ */
+declare const useToast: () => Record;
+/**
+ * Toast — 声明式 Toast 组件。props 变化时更新内容(重新创建实例),
+ * 组件卸载时自动移除(autoClose 默认 true)。
+ */
+declare const Toast: (props: ToastProps) => null;
+
+export { enhancedMeToast as MeToast, ReactToastType, Toast, ToastProps, createBoundApi, useToast };
diff --git a/dist/react.js b/dist/react.js
new file mode 100644
index 0000000..4978163
--- /dev/null
+++ b/dist/react.js
@@ -0,0 +1,4577 @@
+import { useRef, useEffect, useMemo } from 'react';
+
+/**
+ * MetonaToast Utils — 工具函数
+ * @module utils
+ * @version 0.4.0
+ */
+/**
+ * 生成唯一ID
+ */
+const generateId = () => {
+ return 'met-' + Date.now().toString(36) + '-' + Math.random().toString(36).slice(2, 8);
+};
+/**
+ * HTML转义
+ * @param s - 输入字符串
+ */
+const escapeHTML = (s) => {
+ if (typeof document === 'undefined') {
+ return String(s == null ? '' : s)
+ .replace(/&/g, '&')
+ .replace(//g, '>')
+ .replace(/"/g, '"')
+ .replace(/'/g, ''');
+ }
+ const div = document.createElement('div');
+ div.textContent = String(s == null ? '' : s);
+ return div.innerHTML;
+};
+/**
+ * 检测暗色模式偏好
+ */
+const prefersDark = () => {
+ return typeof window !== 'undefined' &&
+ typeof window.matchMedia === 'function' &&
+ window.matchMedia('(prefers-color-scheme: dark)').matches;
+};
+
+/**
+ * MetonaToast Icons — 图标SVG定义
+ * @module icons
+ * @version 0.4.0
+ * @description 107 个内置 SVG 图标
+ */
+const ICONS = {
+ success: ``,
+ error: ``,
+ warning: ``,
+ info: ``,
+ loading: ``,
+ close: ``,
+ check: ``,
+ x: ``,
+ alert: ``,
+ question: ``,
+ star: ``,
+ heart: ``,
+ bell: ``,
+ mail: ``,
+ settings: ``,
+ user: ``,
+ home: ``,
+ search: ``,
+ plus: ``,
+ minus: ``,
+ edit: ``,
+ trash: ``,
+ download: ``,
+ upload: ``,
+ share: ``,
+ link: ``,
+ external: ``,
+ clock: ``,
+ calendar: ``,
+ map: ``,
+ compass: ``,
+ globe: ``,
+ wifi: ``,
+ cloud: ``,
+ sun: ``,
+ moon: ``,
+ zap: ``,
+ activity: ``,
+ cpu: ``,
+ database: ``,
+ server: ``,
+ terminal: ``,
+ code: ``,
+ git: ``,
+ package: ``,
+ layers: ``,
+ grid: ``,
+ list: ``,
+ filter: ``,
+ sort: ``,
+ refresh: ``,
+ sync: ``,
+ power: ``,
+ battery: ``,
+ bluetooth: ``,
+ volume: ``,
+ mic: ``,
+ camera: ``,
+ image: ``,
+ video: ``,
+ music: ``,
+ file: ``,
+ folder: ``,
+ clipboard: ``,
+ save: ``,
+ print: ``,
+ eye: ``,
+ eyeOff: ``,
+ lock: ``,
+ unlock: ``,
+ shield: ``,
+ key: ``,
+ flag: ``,
+ bookmark: ``,
+ tag: ``,
+ gift: ``,
+ award: ``,
+ target: ``,
+ crosshair: ``,
+ move: ``,
+ maximize: ``,
+ minimize: ``,
+ copy: ``,
+ cut: ``,
+ paste: ``,
+ rotateCw: ``,
+ rotateCcw: ``,
+ zoomIn: ``,
+ zoomOut: ``,
+ crop: ``,
+ sliders: ``,
+ toggleLeft: ``,
+ toggleRight: ``,
+ checkCircle: ``,
+ xCircle: ``,
+ alertCircle: ``,
+ infoCircle: ``,
+ helpCircle: ``,
+ alertTriangle: ``,
+ checkSquare: ``,
+ square: ``,
+ circle: ``,
+ triangle: ``,
+ hexagon: ``,
+ octagon: ``,
+ pentagon: ``,
+ diamond: ``,
+};
+
+/**
+ * MetonaToast Locales — 国际化翻译数据
+ * @module locales
+ * @version 0.4.0
+ * @description 内置 zh-CN / en-US 完整翻译
+ */
+const LOCALES = {
+ 'zh-CN': {
+ // === 操作 ===
+ close: '关闭',
+ loading: '加载中...',
+ success: '操作成功',
+ error: '操作失败',
+ warning: '警告',
+ info: '信息',
+ confirm: '确认',
+ cancel: '取消',
+ yes: '是',
+ no: '否',
+ ok: '确定',
+ retry: '重试',
+ undo: '撤销',
+ redo: '重做',
+ save: '保存',
+ delete: '删除',
+ edit: '编辑',
+ add: '添加',
+ remove: '移除',
+ search: '搜索',
+ filter: '筛选',
+ sort: '排序',
+ refresh: '刷新',
+ sync: '同步',
+ upload: '上传',
+ download: '下载',
+ share: '分享',
+ copy: '复制',
+ cut: '剪切',
+ paste: '粘贴',
+ print: '打印',
+ export: '导出',
+ import: '导入',
+ settings: '设置',
+ help: '帮助',
+ about: '关于',
+ version: '版本',
+ language: '语言',
+ theme: '主题',
+ dark: '暗色',
+ light: '亮色',
+ auto: '自动',
+ notifications: '通知',
+ enable: '启用',
+ disable: '禁用',
+ on: '开启',
+ off: '关闭',
+ max: '最大',
+ min: '最小',
+ expand: '展开',
+ collapse: '折叠',
+ fullscreen: '全屏',
+ exitFullscreen: '退出全屏',
+ zoomIn: '放大',
+ zoomOut: '缩小',
+ reset: '重置',
+ apply: '应用',
+ submit: '提交',
+ send: '发送',
+ receive: '接收',
+ connect: '连接',
+ disconnect: '断开',
+ start: '开始',
+ stop: '停止',
+ pause: '暂停',
+ resume: '继续',
+ next: '下一个',
+ previous: '上一个',
+ first: '第一个',
+ last: '最后一个',
+ back: '返回',
+ forward: '前进',
+ home: '首页',
+ menu: '菜单',
+ more: '更多',
+ less: '更少',
+ show: '显示',
+ hide: '隐藏',
+ visible: '可见',
+ hidden: '隐藏',
+ // === 状态 ===
+ enabled: '已启用',
+ disabled: '已禁用',
+ active: '活跃',
+ inactive: '非活跃',
+ online: '在线',
+ offline: '离线',
+ connected: '已连接',
+ disconnected: '已断开',
+ loaded: '已加载',
+ saving: '保存中',
+ saved: '已保存',
+ deleting: '删除中',
+ deleted: '已删除',
+ uploading: '上传中',
+ uploaded: '已上传',
+ downloading: '下载中',
+ downloaded: '已下载',
+ processing: '处理中',
+ processed: '已处理',
+ syncing: '同步中',
+ synced: '已同步',
+ sending: '发送中',
+ sent: '已发送',
+ receiving: '接收中',
+ received: '已接收',
+ connecting: '连接中',
+ // === 交互 ===
+ question: '问题',
+ feedback: '反馈',
+ report: '报告',
+ bug: '错误',
+ feature: '功能',
+ improvement: '改进',
+ suggestion: '建议',
+ request: '请求',
+ response: '响应',
+ status: '状态',
+ progress: '进度',
+ complete: '完成',
+ incomplete: '未完成',
+ pending: '待处理',
+ failed: '失败',
+ cancelled: '已取消',
+ timeout: '超时',
+ expired: '已过期',
+ invalid: '无效',
+ valid: '有效',
+ required: '必填',
+ optional: '可选',
+ allowed: '允许',
+ denied: '拒绝',
+ approved: '已批准',
+ rejected: '已拒绝',
+ accepted: '已接受',
+ declined: '已拒绝',
+ confirmed: '已确认',
+ unconfirmed: '未确认',
+ verified: '已验证',
+ unverified: '未验证',
+ authenticated: '已认证',
+ unauthenticated: '未认证',
+ authorized: '已授权',
+ unauthorized: '未授权',
+ // === 范围 / 角色 ===
+ public: '公开',
+ private: '私有',
+ protected: '受保护',
+ internal: '内部',
+ external: '外部',
+ local: '本地',
+ remote: '远程',
+ global: '全局',
+ system: '系统',
+ user: '用户',
+ admin: '管理员',
+ moderator: '版主',
+ guest: '访客',
+ member: '成员',
+ owner: '所有者',
+ creator: '创建者',
+ editor: '编辑者',
+ viewer: '查看者',
+ subscriber: '订阅者',
+ follower: '关注者',
+ following: '关注中',
+ friend: '朋友',
+ contact: '联系人',
+ // === 组织 ===
+ group: '群组',
+ team: '团队',
+ organization: '组织',
+ company: '公司',
+ department: '部门',
+ project: '项目',
+ task: '任务',
+ issue: '问题',
+ ticket: '工单',
+ message: '消息',
+ notification: '通知',
+ alert: '警报',
+ reminder: '提醒',
+ event: '事件',
+ activity: '活动',
+ log: '日志',
+ analytics: '分析',
+ statistics: '统计',
+ metrics: '指标',
+ performance: '性能',
+ security: '安全',
+ privacy: '隐私',
+ compliance: '合规',
+ policy: '政策',
+ terms: '条款',
+ conditions: '条件',
+ agreement: '协议',
+ contract: '合同',
+ license: '许可证',
+ copyright: '版权',
+ trademark: '商标',
+ patent: '专利',
+ tradeSecret: '商业秘密',
+ confidential: '机密',
+ sensitive: '敏感',
+ critical: '关键',
+ important: '重要',
+ urgent: '紧急',
+ high: '高',
+ medium: '中',
+ low: '低',
+ none: '无',
+ all: '全部',
+ any: '任何',
+ some: '一些',
+ each: '每个',
+ every: '每个',
+ both: '两者',
+ neither: '两者都不',
+ either: '任一',
+ other: '其他',
+ another: '另一个',
+ this: '这个',
+ that: '那个',
+ these: '这些',
+ those: '那些',
+ here: '这里',
+ there: '那里',
+ where: '哪里',
+ when: '何时',
+ why: '为什么',
+ how: '如何',
+ what: '什么',
+ who: '谁',
+ which: '哪个',
+ whose: '谁的',
+ whom: '谁',
+ },
+ 'en-US': {
+ // === Actions ===
+ close: 'Close',
+ loading: 'Loading...',
+ success: 'Success',
+ error: 'Error',
+ warning: 'Warning',
+ info: 'Info',
+ confirm: 'Confirm',
+ cancel: 'Cancel',
+ yes: 'Yes',
+ no: 'No',
+ ok: 'OK',
+ retry: 'Retry',
+ undo: 'Undo',
+ redo: 'Redo',
+ save: 'Save',
+ delete: 'Delete',
+ edit: 'Edit',
+ add: 'Add',
+ remove: 'Remove',
+ search: 'Search',
+ filter: 'Filter',
+ sort: 'Sort',
+ refresh: 'Refresh',
+ sync: 'Sync',
+ upload: 'Upload',
+ download: 'Download',
+ share: 'Share',
+ copy: 'Copy',
+ cut: 'Cut',
+ paste: 'Paste',
+ print: 'Print',
+ export: 'Export',
+ import: 'Import',
+ settings: 'Settings',
+ help: 'Help',
+ about: 'About',
+ version: 'Version',
+ language: 'Language',
+ theme: 'Theme',
+ dark: 'Dark',
+ light: 'Light',
+ auto: 'Auto',
+ notifications: 'Notifications',
+ enable: 'Enable',
+ disable: 'Disable',
+ on: 'On',
+ off: 'Off',
+ max: 'Max',
+ min: 'Min',
+ expand: 'Expand',
+ collapse: 'Collapse',
+ fullscreen: 'Fullscreen',
+ exitFullscreen: 'Exit Fullscreen',
+ zoomIn: 'Zoom In',
+ zoomOut: 'Zoom Out',
+ reset: 'Reset',
+ apply: 'Apply',
+ submit: 'Submit',
+ send: 'Send',
+ receive: 'Receive',
+ connect: 'Connect',
+ disconnect: 'Disconnect',
+ start: 'Start',
+ stop: 'Stop',
+ pause: 'Pause',
+ resume: 'Resume',
+ next: 'Next',
+ previous: 'Previous',
+ first: 'First',
+ last: 'Last',
+ back: 'Back',
+ forward: 'Forward',
+ home: 'Home',
+ menu: 'Menu',
+ more: 'More',
+ less: 'Less',
+ show: 'Show',
+ hide: 'Hide',
+ visible: 'Visible',
+ hidden: 'Hidden',
+ // === Status ===
+ enabled: 'Enabled',
+ disabled: 'Disabled',
+ active: 'Active',
+ inactive: 'Inactive',
+ online: 'Online',
+ offline: 'Offline',
+ connected: 'Connected',
+ disconnected: 'Disconnected',
+ loaded: 'Loaded',
+ saving: 'Saving',
+ saved: 'Saved',
+ deleting: 'Deleting',
+ deleted: 'Deleted',
+ uploading: 'Uploading',
+ uploaded: 'Uploaded',
+ downloading: 'Downloading',
+ downloaded: 'Downloaded',
+ processing: 'Processing',
+ processed: 'Processed',
+ syncing: 'Syncing',
+ synced: 'Synced',
+ sending: 'Sending',
+ sent: 'Sent',
+ receiving: 'Receiving',
+ received: 'Received',
+ connecting: 'Connecting',
+ // === Interaction ===
+ question: 'Question',
+ feedback: 'Feedback',
+ report: 'Report',
+ bug: 'Bug',
+ feature: 'Feature',
+ improvement: 'Improvement',
+ suggestion: 'Suggestion',
+ request: 'Request',
+ response: 'Response',
+ status: 'Status',
+ progress: 'Progress',
+ complete: 'Complete',
+ incomplete: 'Incomplete',
+ pending: 'Pending',
+ failed: 'Failed',
+ cancelled: 'Cancelled',
+ timeout: 'Timeout',
+ expired: 'Expired',
+ invalid: 'Invalid',
+ valid: 'Valid',
+ required: 'Required',
+ optional: 'Optional',
+ allowed: 'Allowed',
+ denied: 'Denied',
+ approved: 'Approved',
+ rejected: 'Rejected',
+ accepted: 'Accepted',
+ declined: 'Declined',
+ confirmed: 'Confirmed',
+ unconfirmed: 'Unconfirmed',
+ verified: 'Verified',
+ unverified: 'Unverified',
+ authenticated: 'Authenticated',
+ unauthenticated: 'Unauthenticated',
+ authorized: 'Authorized',
+ unauthorized: 'Unauthorized',
+ // === Scope / Role ===
+ public: 'Public',
+ private: 'Private',
+ protected: 'Protected',
+ internal: 'Internal',
+ external: 'External',
+ local: 'Local',
+ remote: 'Remote',
+ global: 'Global',
+ system: 'System',
+ user: 'User',
+ admin: 'Admin',
+ moderator: 'Moderator',
+ guest: 'Guest',
+ member: 'Member',
+ owner: 'Owner',
+ creator: 'Creator',
+ editor: 'Editor',
+ viewer: 'Viewer',
+ subscriber: 'Subscriber',
+ follower: 'Follower',
+ following: 'Following',
+ friend: 'Friend',
+ contact: 'Contact',
+ // === Organization ===
+ group: 'Group',
+ team: 'Team',
+ organization: 'Organization',
+ company: 'Company',
+ department: 'Department',
+ project: 'Project',
+ task: 'Task',
+ issue: 'Issue',
+ ticket: 'Ticket',
+ message: 'Message',
+ notification: 'Notification',
+ alert: 'Alert',
+ reminder: 'Reminder',
+ event: 'Event',
+ activity: 'Activity',
+ log: 'Log',
+ analytics: 'Analytics',
+ statistics: 'Statistics',
+ metrics: 'Metrics',
+ performance: 'Performance',
+ security: 'Security',
+ privacy: 'Privacy',
+ compliance: 'Compliance',
+ policy: 'Policy',
+ terms: 'Terms',
+ conditions: 'Conditions',
+ agreement: 'Agreement',
+ contract: 'Contract',
+ license: 'License',
+ copyright: 'Copyright',
+ trademark: 'Trademark',
+ patent: 'Patent',
+ tradeSecret: 'Trade Secret',
+ confidential: 'Confidential',
+ sensitive: 'Sensitive',
+ critical: 'Critical',
+ important: 'Important',
+ urgent: 'Urgent',
+ high: 'High',
+ medium: 'Medium',
+ low: 'Low',
+ none: 'None',
+ all: 'All',
+ any: 'Any',
+ some: 'Some',
+ each: 'Each',
+ every: 'Every',
+ both: 'Both',
+ neither: 'Neither',
+ either: 'Either',
+ other: 'Other',
+ another: 'Another',
+ this: 'This',
+ that: 'That',
+ these: 'These',
+ those: 'Those',
+ here: 'Here',
+ there: 'There',
+ where: 'Where',
+ when: 'When',
+ why: 'Why',
+ how: 'How',
+ what: 'What',
+ who: 'Who',
+ which: 'Which',
+ whose: 'Whose',
+ whom: 'Whom',
+ },
+};
+
+/**
+ * MetonaToast Constants — 常量定义
+ * @module constants
+ * @version 0.4.0
+ */
+/**
+ * 版本号 — 唯一来源,发布时只需修改此处
+ */
+const VERSION = '0.4.0';
+/**
+ * 默认配置
+ */
+const DEFAULTS = Object.freeze({
+ position: 'top-right',
+ duration: 4000,
+ max: 6,
+ gap: 12,
+ offset: 24,
+ pauseOnHover: true,
+ closeOnClick: true,
+ draggable: true,
+ dragThreshold: 120,
+ showProgress: true,
+ progressDirection: 'horizontal',
+ icon: true,
+ closeButton: true,
+ theme: 'auto',
+ animation: 'slide',
+ zIndex: 9999,
+ width: 360,
+ className: '',
+ style: {},
+ onShow: null,
+ onBeforeShow: null,
+ onClose: null,
+ onClick: null,
+ onUpdate: null,
+ resetTimerOnUpdate: false,
+ notifyWhenHidden: false,
+ onError: null,
+ locale: 'zh-CN',
+ plugins: [],
+});
+/**
+ * 类型颜色配置
+ */
+const TYPE_COLORS = {
+ success: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ error: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ warning: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ info: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ loading: { fg: '#6366f1', bg: 'rgba(99, 102, 241, 0.1)' },
+ default: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ check: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ x: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ alert: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ question: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ star: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ heart: { fg: '#ec4899', bg: 'rgba(236, 72, 153, 0.1)' },
+ bell: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ mail: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ settings: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ user: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ home: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ search: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ plus: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ minus: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ edit: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ trash: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ download: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ upload: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ share: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ link: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ external: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ clock: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ calendar: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ map: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ compass: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ globe: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ wifi: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ cloud: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ sun: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ moon: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ zap: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ activity: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ cpu: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ database: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ server: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ terminal: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ code: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ git: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ package: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ layers: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ grid: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ list: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ filter: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ sort: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ refresh: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ sync: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ power: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ battery: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ bluetooth: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ volume: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ mic: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ camera: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ image: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ video: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ music: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ file: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ folder: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ clipboard: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ save: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ print: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ eye: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ eyeOff: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ lock: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ unlock: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ shield: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ key: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ flag: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ bookmark: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ tag: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ gift: { fg: '#ec4899', bg: 'rgba(236, 72, 153, 0.1)' },
+ award: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ target: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ crosshair: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ move: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ maximize: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ minimize: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ copy: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ cut: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ paste: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ rotateCw: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ rotateCcw: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ zoomIn: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ zoomOut: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ crop: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ sliders: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ toggleLeft: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ toggleRight: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ checkCircle: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ xCircle: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ alertCircle: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ infoCircle: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ helpCircle: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ alertTriangle: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ checkSquare: { fg: '#10b981', bg: 'rgba(16, 185, 129, 0.1)' },
+ square: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ circle: { fg: '#6b7280', bg: 'rgba(107, 114, 128, 0.1)' },
+ triangle: { fg: '#f59e0b', bg: 'rgba(245, 158, 11, 0.1)' },
+ hexagon: { fg: '#3b82f6', bg: 'rgba(59, 130, 246, 0.1)' },
+ octagon: { fg: '#ef4444', bg: 'rgba(239, 68, 68, 0.1)' },
+ pentagon: { fg: '#8b5cf6', bg: 'rgba(139, 92, 246, 0.1)' },
+ diamond: { fg: '#ec4899', bg: 'rgba(236, 72, 153, 0.1)' },
+};
+/**
+ * 动画配置
+ */
+const ANIMATIONS = {
+ slide: {
+ enter: { transform: 'translateX(80px)', opacity: '0' },
+ leave: { transform: 'translateX(120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ fade: {
+ enter: { opacity: '0', filter: 'blur(3px)' },
+ leave: { opacity: '0', filter: 'blur(3px)' },
+ duration: 500,
+ easing: 'ease',
+ },
+ scale: {
+ enter: { transform: 'scale(0.55)', opacity: '0' },
+ leave: { transform: 'scale(0.55)', opacity: '0' },
+ duration: 450,
+ easing: 'cubic-bezier(0.34, 1.56, 0.64, 1)',
+ },
+ bounce: {
+ enter: { transform: 'translateY(-80px)', opacity: '0' },
+ leave: { transform: 'translateY(20px)', opacity: '0' },
+ duration: 650,
+ easing: 'ease',
+ },
+ flip: {
+ enter: { transform: 'perspective(500px) rotateX(-90deg)', opacity: '0' },
+ leave: { transform: 'perspective(500px) rotateX(90deg)', opacity: '0' },
+ duration: 500,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ rotate: {
+ enter: { transform: 'rotate(-25deg) scale(0.6)', opacity: '0' },
+ leave: { transform: 'rotate(25deg) scale(0.6)', opacity: '0' },
+ duration: 500,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ zoom: {
+ enter: { transform: 'scale(0.1)', opacity: '0' },
+ leave: { transform: 'scale(0.1)', opacity: '0' },
+ duration: 500,
+ easing: 'cubic-bezier(0.34, 1.56, 0.64, 1)',
+ },
+ slideUp: {
+ enter: { transform: 'translateY(60px)', opacity: '0' },
+ leave: { transform: 'translateY(-120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ slideDown: {
+ enter: { transform: 'translateY(-60px)', opacity: '0' },
+ leave: { transform: 'translateY(120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ slideLeft: {
+ enter: { transform: 'translateX(-90px)', opacity: '0' },
+ leave: { transform: 'translateX(120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+ slideRight: {
+ enter: { transform: 'translateX(90px)', opacity: '0' },
+ leave: { transform: 'translateX(-120%)', opacity: '0' },
+ duration: 400,
+ easing: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
+ },
+};
+/**
+ * 主题配置
+ */
+const THEMES = {
+ light: {
+ bg: 'rgba(255, 255, 255, 0.96)',
+ text: '#1f2937',
+ border: 'rgba(0, 0, 0, 0.06)',
+ shadow: '0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)',
+ hoverShadow: '0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)',
+ progressBg: 'rgba(0, 0, 0, 0.06)',
+ closeHoverBg: 'rgba(0, 0, 0, 0.06)',
+ },
+ dark: {
+ bg: 'rgba(28, 32, 40, 0.94)',
+ text: '#e6e8eb',
+ border: 'rgba(255, 255, 255, 0.08)',
+ shadow: '0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4)',
+ hoverShadow: '0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4)',
+ progressBg: 'rgba(255, 255, 255, 0.08)',
+ closeHoverBg: 'rgba(255, 255, 255, 0.08)',
+ },
+ auto: {
+ bg: 'rgba(255, 255, 255, 0.96)',
+ text: '#1f2937',
+ border: 'rgba(0, 0, 0, 0.06)',
+ shadow: '0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08)',
+ hoverShadow: '0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10)',
+ progressBg: 'rgba(0, 0, 0, 0.06)',
+ closeHoverBg: 'rgba(0, 0, 0, 0.06)',
+ },
+ warm: {
+ bg: 'rgba(255, 251, 235, 0.96)',
+ text: '#78350f',
+ border: 'rgba(245, 158, 11, 0.2)',
+ shadow: '0 10px 36px -10px rgba(245, 158, 11, 0.18), 0 4px 14px -4px rgba(245, 158, 11, 0.08)',
+ hoverShadow: '0 14px 48px -10px rgba(245, 158, 11, 0.22), 0 6px 18px -4px rgba(245, 158, 11, 0.10)',
+ progressBg: 'rgba(245, 158, 11, 0.1)',
+ closeHoverBg: 'rgba(245, 158, 11, 0.1)',
+ },
+};
+/**
+ * 动画类型
+ */
+const ANIMATION_TYPES = ['slide', 'fade', 'scale', 'bounce', 'flip', 'rotate', 'zoom', 'slideUp', 'slideDown', 'slideLeft', 'slideRight'];
+
+/**
+ * MetonaToast Styles — 样式管理
+ * @module styles
+ * @version 0.4.0
+ */
+// 样式缓存
+let styleElement = null;
+/**
+ * 生成CSS样式
+ */
+const generateCSS = () => {
+ return `
+ .met-container {
+ pointer-events: none;
+ display: flex;
+ flex-direction: column;
+ gap: 12px;
+ box-sizing: border-box;
+ padding: 24px;
+ max-width: 100vw;
+ position: fixed;
+ z-index: 9999;
+ }
+
+ .met-container.top-left { top: 0; left: 0; align-items: flex-start; }
+ .met-container.top-center { top: 0; left: 0; right: 0; align-items: center; }
+ .met-container.top-right { top: 0; right: 0; align-items: flex-end; }
+ .met-container.bottom-left { bottom: 0; left: 0; align-items: flex-start; }
+ .met-container.bottom-center{ bottom: 0; left: 0; right: 0; align-items: center; }
+ .met-container.bottom-right { bottom: 0; right: 0; align-items: flex-end; }
+
+ .met-toast {
+ position: relative;
+ display: flex;
+ align-items: flex-start;
+ gap: 12px;
+ padding: 14px 16px;
+ border-radius: 12px;
+ box-sizing: border-box;
+ backdrop-filter: blur(14px) saturate(180%);
+ -webkit-backdrop-filter: blur(14px) saturate(180%);
+ font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
+ user-select: none;
+ -webkit-user-select: none;
+ transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1),
+ box-shadow 0.25s ease,
+ opacity 0.25s ease;
+ will-change: transform, opacity;
+ flex-shrink: 0;
+ pointer-events: auto;
+ min-width: 240px;
+ max-width: calc(100vw - 48px);
+ width: 360px;
+ border: 1px solid var(--met-border, rgba(0,0,0,0.06));
+ background: var(--met-bg, rgba(255,255,255,0.96));
+ color: var(--met-text, #1f2937);
+ box-shadow: var(--met-shadow, 0 10px 36px -10px rgba(0,0,0,0.18), 0 4px 14px -4px rgba(0,0,0,0.08));
+ transform: translateZ(0);
+ -webkit-transform: translateZ(0);
+ backface-visibility: hidden;
+ -webkit-backface-visibility: hidden;
+ perspective: 1000;
+ }
+
+ .met-toast:hover {
+ box-shadow: var(--met-hover-shadow, 0 14px 48px -10px rgba(0,0,0,0.22), 0 6px 18px -4px rgba(0,0,0,0.10)) !important;
+ }
+
+ .met-toast.met-clickable {
+ cursor: pointer;
+ }
+
+ .met-icon {
+ flex-shrink: 0;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ width: 24px;
+ height: 24px;
+ margin-top: 1px;
+ }
+
+ .met-content {
+ flex: 1;
+ min-width: 0;
+ word-wrap: break-word;
+ overflow-wrap: break-word;
+ }
+
+ .met-title {
+ font-weight: 600;
+ font-size: 14px;
+ letter-spacing: 0.1px;
+ }
+
+ .met-message {
+ font-size: 13px;
+ opacity: 0.85;
+ margin-top: 2px;
+ }
+
+ .met-close {
+ flex-shrink: 0;
+ background: transparent;
+ border: 0;
+ padding: 4px;
+ cursor: pointer;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ border-radius: 6px;
+ transition: background 0.2s, color 0.2s;
+ line-height: 0;
+ color: inherit;
+ opacity: 0.5;
+ }
+
+ .met-close:hover {
+ opacity: 1;
+ background: var(--met-close-hover-bg, rgba(0,0,0,0.06));
+ }
+
+ .met-progress {
+ position: absolute;
+ left: 0; right: 0; bottom: 0;
+ height: 3px;
+ overflow: hidden;
+ background: var(--met-progress-bg, rgba(0,0,0,0.06));
+ border-radius: 0 0 12px 12px;
+ }
+
+ .met-progress-v {
+ position: absolute;
+ left: 0; top: 0; bottom: 0;
+ width: 3px;
+ overflow: hidden;
+ background: var(--met-progress-bg, rgba(0,0,0,0.06));
+ border-radius: 12px 0 0 12px;
+ }
+
+ .met-bar {
+ position: absolute;
+ left: 0; top: 0;
+ height: 100%; width: 100%;
+ transform-origin: left;
+ transform: scaleX(1);
+ }
+
+ .met-bar-v {
+ position: absolute;
+ left: 0; bottom: 0;
+ width: 100%; height: 100%;
+ transform-origin: bottom;
+ transform: scaleY(1);
+ }
+
+ .met-side {
+ position: absolute;
+ left: 0; top: 0; bottom: 0;
+ width: 4px;
+ border-radius: 12px 0 0 12px;
+ }
+
+ .met-spin {
+ animation: met-rot 1s linear infinite;
+ transform-origin: 50% 50%;
+ }
+
+ .met-toast.met-leaving {
+ pointer-events: none;
+ z-index: 1;
+ }
+
+ @keyframes met-rot {
+ to { transform: rotate(360deg); }
+ }
+
+ .met-anim-slide.met-toast,
+ .met-anim-fade.met-toast,
+ .met-anim-scale.met-toast,
+ .met-anim-bounce.met-toast,
+ .met-anim-flip.met-toast,
+ .met-anim-rotate.met-toast,
+ .met-anim-zoom.met-toast,
+ .met-anim-slideUp.met-toast,
+ .met-anim-slideDown.met-toast,
+ .met-anim-slideLeft.met-toast,
+ .met-anim-slideRight.met-toast {
+ opacity: 0;
+ }
+
+ @keyframes met-slide-in {
+ 0% { transform: translateX(80px); opacity: 0; }
+ 65% { transform: translateX(-6px); opacity: 1; }
+ 100% { transform: translateX(0); opacity: 1; }
+ }
+ @keyframes met-fade-in {
+ 0% { opacity: 0; filter: blur(3px); }
+ 100% { opacity: 1; filter: blur(0); }
+ }
+ @keyframes met-scale-in {
+ 0% { transform: scale(0.55); opacity: 0; }
+ 65% { transform: scale(1.07); opacity: 1; }
+ 100% { transform: scale(1); opacity: 1; }
+ }
+ @keyframes met-bounce-in {
+ 0% { transform: translateY(-80px); opacity: 0; animation-timing-function: ease-in; }
+ 45% { transform: translateY(14px); opacity: 1; animation-timing-function: ease-out; }
+ 65% { transform: translateY(-12px); animation-timing-function: ease-in; }
+ 82% { transform: translateY(4px); animation-timing-function: ease-out; }
+ 100% { transform: translateY(0); opacity: 1; }
+ }
+ @keyframes met-flip-in {
+ 0% { transform: perspective(500px) rotateX(-90deg); opacity: 0; }
+ 60% { transform: perspective(500px) rotateX(8deg); opacity: 1; }
+ 85% { transform: perspective(500px) rotateX(-2deg); }
+ 100% { transform: perspective(500px) rotateX(0); opacity: 1; }
+ }
+ @keyframes met-rotate-in {
+ 0% { transform: rotate(-25deg) scale(0.6); opacity: 0; }
+ 60% { transform: rotate(4deg) scale(1.05); opacity: 1; }
+ 85% { transform: rotate(-1deg) scale(0.98); }
+ 100% { transform: rotate(0) scale(1); opacity: 1; }
+ }
+ @keyframes met-zoom-in {
+ 0% { transform: scale(0.1); opacity: 0; }
+ 50% { transform: scale(1.12); opacity: 1; }
+ 75% { transform: scale(0.94); }
+ 100% { transform: scale(1); opacity: 1; }
+ }
+ @keyframes met-slideUp-in {
+ 0% { transform: translateY(60px); opacity: 0; }
+ 70% { transform: translateY(-6px); opacity: 1; }
+ 100% { transform: translateY(0); opacity: 1; }
+ }
+ @keyframes met-slideDown-in {
+ 0% { transform: translateY(-60px); opacity: 0; }
+ 70% { transform: translateY(6px); opacity: 1; }
+ 100% { transform: translateY(0); opacity: 1; }
+ }
+ @keyframes met-slideLeft-in {
+ 0% { transform: translateX(-90px); opacity: 0; }
+ 65% { transform: translateX(6px); opacity: 1; }
+ 100% { transform: translateX(0); opacity: 1; }
+ }
+ @keyframes met-slideRight-in {
+ 0% { transform: translateX(90px); opacity: 0; }
+ 65% { transform: translateX(-6px); opacity: 1; }
+ 100% { transform: translateX(0); opacity: 1; }
+ }
+
+ .met-anim-slide.met-toast.met-show { animation: met-slide-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-fade.met-toast.met-show { animation: met-fade-in 0.50s ease forwards; }
+ .met-anim-scale.met-toast.met-show { animation: met-scale-in 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }
+ .met-anim-bounce.met-toast.met-show { animation: met-bounce-in 0.65s ease forwards; }
+ .met-anim-flip.met-toast.met-show { animation: met-flip-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-rotate.met-toast.met-show { animation: met-rotate-in 0.50s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-zoom.met-toast.met-show { animation: met-zoom-in 0.50s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }
+ .met-anim-slideUp.met-toast.met-show { animation: met-slideUp-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-slideDown.met-toast.met-show { animation: met-slideDown-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-slideLeft.met-toast.met-show { animation: met-slideLeft-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+ .met-anim-slideRight.met-toast.met-show { animation: met-slideRight-in 0.40s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
+
+ @media (max-width: 480px) {
+ .met-container { padding: 12px !important; }
+ .met-toast { width: 100% !important; min-width: 0 !important; }
+ }
+
+ @media (max-width: 768px) {
+ .met-toast { font-size: 13px; }
+ .met-title { font-size: 13px; }
+ .met-message { font-size: 12px; }
+ }
+
+ @media (min-width: 1200px) {
+ .met-toast { width: 400px; }
+ }
+
+ @media (min-width: 1920px) {
+ .met-toast { width: 440px; }
+ }
+
+ @media (max-width: 320px) {
+ .met-toast { width: 100%; min-width: 0; padding: 12px 14px; }
+ .met-container { padding: 8px; }
+ }
+
+ @media (orientation: landscape) and (max-height: 500px) {
+ .met-container { padding: 12px 24px; }
+ .met-toast { min-height: 44px; padding: 10px 14px; }
+ }
+
+ @media (orientation: portrait) and (max-width: 500px) {
+ .met-container { padding: 12px; }
+ .met-toast { width: 100%; min-width: 0; }
+ }
+
+ @media (prefers-reduced-motion: reduce) {
+ .met-toast { transition: opacity 0.15s !important; }
+ .met-toast.met-show { animation: none !important; opacity: 1 !important; }
+ .met-spin { animation-duration: 2.5s !important; }
+ }
+
+ @media (forced-colors: active) {
+ .met-toast { border: 2px solid ButtonText; }
+ .met-close { border: 1px solid ButtonText; }
+ }
+
+ @media (prefers-contrast: high) {
+ .met-toast { border-width: 3px; border-style: solid; }
+ .met-close { border: 2px solid currentColor; border-radius: 4px; }
+ }
+
+ .met-toast:focus-visible {
+ outline: 2px solid #3b82f6;
+ outline-offset: 2px;
+ }
+ .met-close:focus-visible {
+ outline: 2px solid #3b82f6;
+ outline-offset: 2px;
+ }
+
+ @media (hover: none) and (pointer: coarse) {
+ .met-toast:hover { box-shadow: inherit; }
+ .met-toast { min-height: 48px; }
+ .met-close { min-width: 48px; min-height: 48px; }
+ }
+
+ @media print {
+ .met-container { display: none !important; }
+ .met-toast { display: none !important; }
+ }
+
+ :fullscreen .met-container,
+ :picture-in-picture .met-container {
+ z-index: 2147483647;
+ }
+
+ @supports (padding: max(0px)) {
+ .met-container {
+ padding: max(24px, env(safe-area-inset-top))
+ max(24px, env(safe-area-inset-right))
+ max(24px, env(safe-area-inset-bottom))
+ max(24px, env(safe-area-inset-left));
+ }
+ }
+
+ .met-toast:active {
+ transform: scale(0.98);
+ }
+
+ .met-toast.met-success { border-left: 4px solid #10b981; }
+ .met-toast.met-error { border-left: 4px solid #ef4444; }
+ .met-toast.met-warning { border-left: 4px solid #f59e0b; }
+ .met-toast.met-info { border-left: 4px solid #3b82f6; }
+ .met-toast.met-loading { border-left: 4px solid #6366f1; }
+
+ .met-bar, .met-bar-v {
+ transition: transform 0.1s linear;
+ }
+
+ /* RTL 镜像:进度条从右向左收缩、side 条移到右侧、类型色条翻转到右边 */
+ [dir="rtl"] .met-bar {
+ transform-origin: right;
+ }
+ [dir="rtl"] .met-side {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-progress-v {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-toast.met-success {
+ border-left-width: 1px;
+ border-right: 4px solid #10b981;
+ }
+ [dir="rtl"] .met-toast.met-error {
+ border-left-width: 1px;
+ border-right: 4px solid #ef4444;
+ }
+ [dir="rtl"] .met-toast.met-warning {
+ border-left-width: 1px;
+ border-right: 4px solid #f59e0b;
+ }
+ [dir="rtl"] .met-toast.met-info {
+ border-left-width: 1px;
+ border-right: 4px solid #3b82f6;
+ }
+ [dir="rtl"] .met-toast.met-loading {
+ border-left-width: 1px;
+ border-right: 4px solid #6366f1;
+ }
+
+ .met-container::-webkit-scrollbar { width: 6px; height: 6px; }
+ .met-container::-webkit-scrollbar-track { background: transparent; }
+ .met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }
+ .met-container::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.3); }
+
+ .met-toast.met-theme-dark {
+ background: rgba(28, 32, 40, 0.94);
+ color: #e6e8eb;
+ border-color: rgba(255, 255, 255, 0.08);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);
+ }
+ .met-toast.met-theme-dark:hover {
+ box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;
+ }
+ .met-toast.met-theme-dark .met-close:hover {
+ background: rgba(255, 255, 255, 0.08);
+ }
+ .met-toast.met-theme-dark .met-progress,
+ .met-toast.met-theme-dark .met-progress-v {
+ background: rgba(255, 255, 255, 0.08);
+ }
+
+ .met-toast.met-theme-light {
+ background: rgba(255, 255, 255, 0.96);
+ color: #1f2937;
+ border-color: rgba(0, 0, 0, 0.06);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);
+ }
+ .met-toast.met-theme-light:hover {
+ box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;
+ }
+ .met-toast.met-theme-light .met-close:hover {
+ background: rgba(0, 0, 0, 0.06);
+ }
+ .met-toast.met-theme-light .met-progress,
+ .met-toast.met-theme-light .met-progress-v {
+ background: rgba(0, 0, 0, 0.06);
+ }
+
+ .met-toast[data-theme] {
+ --met-bg: var(--met-theme-bg);
+ --met-text: var(--met-theme-text);
+ --met-border: var(--met-theme-border);
+ --met-shadow: var(--met-theme-shadow);
+ }
+
+ @media (prefers-color-scheme: dark) {
+ .met-theme-auto .met-toast {
+ background: rgba(28, 32, 40, 0.94);
+ color: #e6e8eb;
+ border-color: rgba(255, 255, 255, 0.08);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.6), 0 4px 14px -4px rgba(0, 0, 0, 0.4);
+ }
+ .met-theme-auto .met-toast:hover {
+ box-shadow: 0 14px 48px -8px rgba(0, 0, 0, 0.6), 0 6px 18px -4px rgba(0, 0, 0, 0.4) !important;
+ }
+ .met-theme-auto .met-close:hover { background: rgba(255, 255, 255, 0.08); }
+ .met-theme-auto .met-progress,
+ .met-theme-auto .met-progress-v { background: rgba(255, 255, 255, 0.08); }
+ }
+
+ @media (prefers-color-scheme: light) {
+ .met-theme-auto .met-toast {
+ background: rgba(255, 255, 255, 0.96);
+ color: #1f2937;
+ border-color: rgba(0, 0, 0, 0.06);
+ box-shadow: 0 10px 36px -10px rgba(0, 0, 0, 0.18), 0 4px 14px -4px rgba(0, 0, 0, 0.08);
+ }
+ .met-theme-auto .met-toast:hover {
+ box-shadow: 0 14px 48px -10px rgba(0, 0, 0, 0.22), 0 6px 18px -4px rgba(0, 0, 0, 0.10) !important;
+ }
+ .met-theme-auto .met-close:hover { background: rgba(0, 0, 0, 0.06); }
+ .met-theme-auto .met-progress,
+ .met-theme-auto .met-progress-v { background: rgba(0, 0, 0, 0.06); }
+ }
+ `;
+};
+/**
+ * 注入样式
+ */
+const injectStyles = () => {
+ if (typeof document === 'undefined')
+ return;
+ if (styleElement && document.getElementById('metona-toast-styles')) {
+ return;
+ }
+ const css = generateCSS();
+ styleElement = document.createElement('style');
+ styleElement.id = 'metona-toast-styles';
+ styleElement.textContent = css.replace(/\s+/g, ' ');
+ document.head.appendChild(styleElement);
+};
+
+/**
+ * MetonaToast Themes — 主题管理
+ * @module themes
+ * @version 0.4.0
+ */
+// 当前主题状态
+let currentTheme = 'auto';
+const themeListeners = new Set();
+let systemThemeMediaQuery = null;
+let systemThemeListener = null;
+/**
+ * 获取系统主题
+ */
+const getSystemTheme = () => {
+ if (typeof window === 'undefined')
+ return 'light';
+ return prefersDark() ? 'dark' : 'light';
+};
+/**
+ * 获取主题(别名)
+ */
+const getTheme = (theme) => {
+ return resolveTheme(theme);
+};
+/**
+ * 解析主题 — 'auto' 始终按系统主题检测,不依赖当前手动选择的主题
+ */
+const resolveTheme = (theme) => {
+ if (theme === 'auto') {
+ return getSystemTheme();
+ }
+ return theme;
+};
+/**
+ * 获取主题配置
+ */
+const getThemeConfig = (theme) => {
+ const resolved = resolveTheme(theme);
+ return THEMES[resolved] || THEMES.light;
+};
+/**
+ * 应用主题
+ */
+const applyTheme = (theme) => {
+ currentTheme = theme;
+ const resolved = resolveTheme(theme);
+ if (typeof document !== 'undefined') {
+ document.documentElement.setAttribute('data-met-theme', resolved);
+ document.documentElement.classList.remove('met-theme-light', 'met-theme-dark', 'met-theme-auto');
+ document.documentElement.classList.add(`met-theme-${resolved}`);
+ const config = getThemeConfig(theme);
+ setThemeVariables(config);
+ }
+ notifyThemeListeners(theme, resolved);
+};
+/**
+ * 设置主题CSS变量
+ */
+const setThemeVariables = (config) => {
+ if (typeof document === 'undefined')
+ return;
+ const root = document.documentElement;
+ root.style.setProperty('--met-bg', config.bg);
+ root.style.setProperty('--met-text', config.text);
+ root.style.setProperty('--met-border', config.border);
+ root.style.setProperty('--met-shadow', config.shadow);
+ root.style.setProperty('--met-hover-shadow', config.hoverShadow);
+ root.style.setProperty('--met-progress-bg', config.progressBg);
+ root.style.setProperty('--met-close-hover-bg', config.closeHoverBg);
+ root.style.setProperty('--met-success', '#10b981');
+ root.style.setProperty('--met-error', '#ef4444');
+ root.style.setProperty('--met-warning', '#f59e0b');
+ root.style.setProperty('--met-info', '#3b82f6');
+ root.style.setProperty('--met-loading', '#6366f1');
+};
+/**
+ * 获取当前主题
+ */
+const getCurrentTheme = () => {
+ return currentTheme;
+};
+/**
+ * 获取解析后的主题
+ */
+const getResolvedTheme = () => {
+ return resolveTheme(currentTheme);
+};
+/**
+ * 切换主题
+ */
+const switchTheme = (theme) => {
+ applyTheme(theme);
+ saveTheme(theme);
+};
+/**
+ * 切换亮色/暗色主题
+ */
+const toggleTheme = () => {
+ const resolved = getResolvedTheme();
+ const newTheme = resolved === 'dark' ? 'light' : 'dark';
+ switchTheme(newTheme);
+};
+/**
+ * 重置为自动主题
+ */
+const resetToAuto = () => {
+ switchTheme('auto');
+};
+/**
+ * 保存主题到本地存储
+ */
+const saveTheme = (theme) => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ localStorage.setItem('metona-toast-theme', theme);
+ }
+ catch (e) {
+ console.warn('Failed to save theme:', e);
+ }
+ }
+};
+/**
+ * 从本地存储加载主题
+ */
+const loadTheme = () => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ return localStorage.getItem('metona-toast-theme') || 'auto';
+ }
+ catch (e) {
+ console.warn('Failed to load theme:', e);
+ }
+ }
+ return 'auto';
+};
+/**
+ * 初始化主题系统
+ */
+const initTheme = () => {
+ const savedTheme = loadTheme();
+ applyTheme(savedTheme);
+ watchSystemTheme();
+};
+/**
+ * 监听系统主题变化
+ */
+const watchSystemTheme = () => {
+ if (typeof window === 'undefined' || !window.matchMedia)
+ return;
+ if (systemThemeMediaQuery && systemThemeListener) {
+ systemThemeMediaQuery.removeEventListener('change', systemThemeListener);
+ }
+ systemThemeMediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
+ systemThemeListener = () => {
+ if (currentTheme === 'auto') {
+ applyTheme('auto');
+ }
+ };
+ systemThemeMediaQuery.addEventListener('change', systemThemeListener);
+};
+/**
+ * 停止监听系统主题变化
+ */
+const unwatchSystemTheme = () => {
+ if (systemThemeMediaQuery && systemThemeListener) {
+ systemThemeMediaQuery.removeEventListener('change', systemThemeListener);
+ systemThemeMediaQuery = null;
+ systemThemeListener = null;
+ }
+};
+/**
+ * 添加主题监听器
+ */
+const addThemeListener = (listener) => {
+ themeListeners.add(listener);
+ return () => {
+ themeListeners.delete(listener);
+ };
+};
+/**
+ * 移除主题监听器
+ */
+const removeThemeListener = (listener) => {
+ themeListeners.delete(listener);
+};
+/**
+ * 通知主题监听器
+ */
+const notifyThemeListeners = (theme, resolved) => {
+ themeListeners.forEach((listener) => {
+ try {
+ listener(theme, resolved);
+ }
+ catch (e) {
+ console.error('Theme listener error:', e);
+ }
+ });
+};
+/**
+ * 清除所有主题监听器
+ */
+const clearThemeListeners = () => {
+ themeListeners.clear();
+};
+/**
+ * 注册自定义主题
+ */
+const registerTheme = (name, config) => {
+ THEMES[name] = {
+ bg: config.bg || THEMES.light.bg,
+ text: config.text || THEMES.light.text,
+ border: config.border || THEMES.light.border,
+ shadow: config.shadow || THEMES.light.shadow,
+ hoverShadow: config.hoverShadow || THEMES.light.hoverShadow,
+ progressBg: config.progressBg || THEMES.light.progressBg,
+ closeHoverBg: config.closeHoverBg || THEMES.light.closeHoverBg,
+ };
+};
+/**
+ * 注销自定义主题
+ */
+const unregisterTheme = (name) => {
+ if (name === 'light' || name === 'dark' || name === 'auto') {
+ console.warn('Cannot unregister built-in theme:', name);
+ return;
+ }
+ delete THEMES[name];
+};
+/**
+ * 获取所有主题
+ */
+const getAllThemes = () => {
+ return { ...THEMES };
+};
+/**
+ * 获取主题名称列表
+ */
+const getThemeNames = () => {
+ return Object.keys(THEMES);
+};
+/**
+ * 检查主题是否存在
+ */
+const hasTheme = (name) => {
+ return name in THEMES;
+};
+/**
+ * 获取主题预览
+ */
+const getThemePreview = (theme) => {
+ const config = getThemeConfig(theme);
+ const resolved = resolveTheme(theme);
+ return {
+ name: theme,
+ resolved,
+ colors: {
+ background: config.bg,
+ text: config.text,
+ border: config.border,
+ },
+ isDark: resolved === 'dark',
+ isLight: resolved === 'light',
+ isAuto: theme === 'auto',
+ };
+};
+/**
+ * 生成主题CSS
+ */
+const generateThemeCSS = (theme) => {
+ const config = getThemeConfig(theme);
+ const resolved = resolveTheme(theme);
+ return `
+ .met-theme-${resolved} {
+ --met-bg: ${config.bg};
+ --met-text: ${config.text};
+ --met-border: ${config.border};
+ --met-shadow: ${config.shadow};
+ --met-hover-shadow: ${config.hoverShadow};
+ --met-progress-bg: ${config.progressBg};
+ --met-close-hover-bg: ${config.closeHoverBg};
+ }
+ `;
+};
+/**
+ * 应用主题CSS
+ */
+const applyThemeCSS = (theme) => {
+ if (typeof document === 'undefined')
+ return;
+ const css = generateThemeCSS(theme);
+ const styleId = 'metona-toast-theme-css';
+ const oldStyle = document.getElementById(styleId);
+ if (oldStyle) {
+ oldStyle.remove();
+ }
+ const style = document.createElement('style');
+ style.id = styleId;
+ style.textContent = css;
+ document.head.appendChild(style);
+};
+/**
+ * 移除主题CSS
+ */
+const removeThemeCSS = () => {
+ if (typeof document === 'undefined')
+ return;
+ const styleId = 'metona-toast-theme-css';
+ const style = document.getElementById(styleId);
+ if (style) {
+ style.remove();
+ }
+};
+/**
+ * 主题工具 — 代理层
+ */
+const themeUtils = {
+ getSystemTheme,
+ resolveTheme,
+ getThemeConfig,
+ applyTheme,
+ getCurrentTheme,
+ getResolvedTheme,
+ switchTheme,
+ toggleTheme,
+ resetToAuto,
+ initTheme,
+ watchSystemTheme,
+ unwatchSystemTheme,
+ addThemeListener,
+ removeThemeListener,
+ clearThemeListeners,
+ registerTheme,
+ unregisterTheme,
+ getAllThemes,
+ getThemeNames,
+ hasTheme,
+ getThemePreview,
+ generateThemeCSS,
+ applyThemeCSS,
+ removeThemeCSS,
+ saveTheme,
+ loadTheme,
+};
+
+/**
+ * MetonaToast i18n — 国际化管理
+ * @module i18n
+ * @version 0.4.0
+ */
+// 当前语言状态
+let currentLocale = 'zh-CN';
+const localeListeners = new Set();
+let fallbackLocale = 'zh-CN';
+/**
+ * 获取当前语言
+ */
+const getCurrentLocale = () => {
+ return currentLocale;
+};
+/**
+ * 设置当前语言
+ */
+const setCurrentLocale = (locale) => {
+ if (!LOCALES[locale]) {
+ console.warn(`Locale "${locale}" not found, falling back to "${fallbackLocale}"`);
+ locale = fallbackLocale;
+ }
+ currentLocale = locale;
+ notifyLocaleListeners(locale);
+ saveLocale(locale);
+};
+/**
+ * 获取回退语言
+ */
+const getFallbackLocale = () => {
+ return fallbackLocale;
+};
+/**
+ * 设置回退语言
+ */
+const setFallbackLocale = (locale) => {
+ if (!LOCALES[locale]) {
+ console.warn(`Fallback locale "${locale}" not found`);
+ return;
+ }
+ fallbackLocale = locale;
+};
+/**
+ * 翻译函数
+ */
+const t = (key, params = {}) => {
+ const currentTranslation = getTranslation(currentLocale, key);
+ if (currentTranslation !== undefined) {
+ return interpolate(currentTranslation, params);
+ }
+ if (currentLocale !== fallbackLocale) {
+ const fallbackTranslation = getTranslation(fallbackLocale, key);
+ if (fallbackTranslation !== undefined) {
+ return interpolate(fallbackTranslation, params);
+ }
+ }
+ console.warn(`Translation missing for key "${key}" in locale "${currentLocale}"`);
+ return key;
+};
+/**
+ * 获取翻译
+ */
+const getTranslation = (locale, key) => {
+ const localeData = LOCALES[locale];
+ if (!localeData)
+ return undefined;
+ const keys = key.split('.');
+ let result = localeData;
+ for (const k of keys) {
+ if (result && typeof result === 'object' && k in result) {
+ result = result[k];
+ }
+ else {
+ return undefined;
+ }
+ }
+ return typeof result === 'string' ? result : undefined;
+};
+/**
+ * 插值函数
+ */
+const interpolate = (str, params) => {
+ return str.replace(/\{(\w+)\}/g, (_match, key) => {
+ return params[key] !== undefined ? String(params[key]) : _match;
+ });
+};
+/**
+ * 检查翻译是否存在
+ */
+const hasTranslation = (key) => {
+ return getTranslation(currentLocale, key) !== undefined ||
+ getTranslation(fallbackLocale, key) !== undefined;
+};
+/**
+ * 获取所有翻译
+ */
+const getTranslations = (locale) => {
+ return LOCALES[locale] || {};
+};
+/**
+ * 添加翻译
+ */
+const addTranslations = (locale, translations) => {
+ if (!LOCALES[locale]) {
+ LOCALES[locale] = {};
+ }
+ deepMerge(LOCALES[locale], translations);
+};
+/**
+ * 深度合并对象
+ */
+const deepMerge = (target, source) => {
+ for (const key in source) {
+ if (source[key] instanceof Object && key in target && target[key] instanceof Object) {
+ deepMerge(target[key], source[key]);
+ }
+ else {
+ target[key] = source[key];
+ }
+ }
+ return target;
+};
+/**
+ * 移除翻译
+ */
+const removeTranslation = (locale, key) => {
+ const localeData = LOCALES[locale];
+ if (!localeData)
+ return;
+ const keys = key.split('.');
+ let current = localeData;
+ for (let i = 0; i < keys.length - 1; i++) {
+ if (current[keys[i]] && typeof current[keys[i]] === 'object') {
+ current = current[keys[i]];
+ }
+ else {
+ return;
+ }
+ }
+ delete current[keys[keys.length - 1]];
+};
+/**
+ * 清除翻译
+ */
+const clearTranslations = (locale) => {
+ if (LOCALES[locale]) {
+ LOCALES[locale] = {};
+ }
+};
+/**
+ * 获取支持的语言列表
+ */
+const getSupportedLocales = () => {
+ return Object.keys(LOCALES);
+};
+/**
+ * 检查语言是否支持
+ */
+const isLocaleSupported = (locale) => {
+ return locale in LOCALES;
+};
+/**
+ * 获取语言名称
+ */
+const getLocaleName = (locale) => {
+ const names = {
+ 'zh-CN': '简体中文',
+ 'zh-TW': '繁體中文',
+ 'en-US': 'English (US)',
+ 'en-GB': 'English (UK)',
+ 'ja': '日本語',
+ 'ko': '한국어',
+ 'fr': 'Français',
+ 'de': 'Deutsch',
+ 'es': 'Español',
+ 'pt': 'Português',
+ 'ru': 'Русский',
+ 'ar': 'العربية',
+ 'hi': 'हिन्दी',
+ 'th': 'ไทย',
+ 'vi': 'Tiếng Việt',
+ 'id': 'Bahasa Indonesia',
+ 'ms': 'Bahasa Melayu',
+ 'tr': 'Türkçe',
+ 'it': 'Italiano',
+ 'nl': 'Nederlands',
+ 'pl': 'Polski',
+ 'uk': 'Українська',
+ 'cs': 'Čeština',
+ 'sv': 'Svenska',
+ 'da': 'Dansk',
+ 'fi': 'Suomi',
+ 'nb': 'Norsk',
+ 'el': 'Ελληνικά',
+ 'he': 'עברית',
+ 'hu': 'Magyar',
+ 'ro': 'Română',
+ 'bg': 'Български',
+ 'hr': 'Hrvatski',
+ 'sk': 'Slovenčina',
+ 'sl': 'Slovenščina',
+ 'et': 'Eesti',
+ 'lv': 'Latviešu',
+ 'lt': 'Lietuvių',
+ 'ca': 'Català',
+ 'gl': 'Galego',
+ 'eu': 'Euskara',
+ 'cy': 'Cymraeg',
+ 'ga': 'Gaeilge',
+ 'mt': 'Malti',
+ 'is': 'Íslenska',
+ 'mk': 'Македонски',
+ 'sq': 'Shqip',
+ 'sr': 'Српски',
+ 'bs': 'Bosanski',
+ 'me': 'Crnogorski',
+ 'ka': 'ქართული',
+ 'hy': 'Հայերեն',
+ 'az': 'Azərbaycan',
+ 'uz': "O'zbek",
+ 'kk': 'Қазақ',
+ 'ky': 'Кыргыз',
+ 'tg': 'Тоҷикӣ',
+ 'tk': 'Türkmen',
+ 'mn': 'Монгол',
+ 'ne': 'नेपाली',
+ 'si': 'සිංහල',
+ 'my': 'မြန်မာ',
+ 'km': 'ខ្មែរ',
+ 'lo': 'ລາວ',
+ 'am': 'አማርኛ',
+ 'sw': 'Kiswahili',
+ 'yo': 'Yorùbá',
+ 'ig': 'Igbo',
+ 'ha': 'Hausa',
+ 'zu': 'isiZulu',
+ 'af': 'Afrikaans',
+ 'xh': 'isiXhosa',
+ 'st': 'Sesotho',
+ 'tn': 'Setswana',
+ 'ts': 'Xitsonga',
+ 'ss': 'siSwati',
+ 've': 'Tshivenda',
+ 'nr': 'isiNdebele',
+ };
+ return names[locale] || locale;
+};
+/**
+ * 获取语言方向
+ */
+const getLocaleDirection = (locale) => {
+ const rtlLocales = ['ar', 'he', 'fa', 'ur', 'yi', 'ps', 'sd', 'ug'];
+ return rtlLocales.includes(locale) ? 'rtl' : 'ltr';
+};
+/**
+ * 获取语言信息
+ */
+const getLocaleInfo = (locale) => {
+ return {
+ code: locale,
+ name: getLocaleName(locale),
+ direction: getLocaleDirection(locale),
+ isSupported: isLocaleSupported(locale),
+ isCurrent: locale === currentLocale,
+ isFallback: locale === fallbackLocale,
+ };
+};
+/**
+ * 获取所有语言信息
+ */
+const getAllLocaleInfo = () => {
+ return getSupportedLocales().map(getLocaleInfo);
+};
+/**
+ * 保存语言到本地存储
+ */
+const saveLocale = (locale) => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ localStorage.setItem('metona-toast-locale', locale);
+ }
+ catch (e) {
+ console.warn('Failed to save locale:', e);
+ }
+ }
+};
+/**
+ * 从本地存储加载语言
+ */
+const loadLocale = () => {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ return localStorage.getItem('metona-toast-locale') || getDefaultLocale();
+ }
+ catch (e) {
+ console.warn('Failed to load locale:', e);
+ }
+ }
+ return getDefaultLocale();
+};
+/**
+ * 获取默认语言
+ */
+const getDefaultLocale = () => {
+ if (typeof navigator !== 'undefined') {
+ const browserLocale = navigator.language || navigator.userLanguage;
+ if (browserLocale && isLocaleSupported(browserLocale)) {
+ return browserLocale;
+ }
+ const shortLocale = browserLocale?.split('-')[0];
+ if (shortLocale && isLocaleSupported(shortLocale)) {
+ return shortLocale;
+ }
+ }
+ return fallbackLocale;
+};
+/**
+ * 初始化国际化系统
+ */
+const initI18n = () => {
+ const savedLocale = loadLocale();
+ setCurrentLocale(savedLocale);
+};
+/**
+ * 切换语言
+ */
+const switchLocale = (locale) => {
+ setCurrentLocale(locale);
+};
+/**
+ * 添加语言监听器
+ */
+const addLocaleListener = (listener) => {
+ localeListeners.add(listener);
+ return () => {
+ localeListeners.delete(listener);
+ };
+};
+/**
+ * 移除语言监听器
+ */
+const removeLocaleListener = (listener) => {
+ localeListeners.delete(listener);
+};
+/**
+ * 通知语言监听器
+ */
+const notifyLocaleListeners = (locale) => {
+ localeListeners.forEach((listener) => {
+ try {
+ listener(locale);
+ }
+ catch (e) {
+ console.error('Locale listener error:', e);
+ }
+ });
+};
+/**
+ * 清除所有语言监听器
+ */
+const clearLocaleListeners = () => {
+ localeListeners.clear();
+};
+/**
+ * 格式化数字
+ */
+const formatNumber = (number, options = {}) => {
+ try {
+ return new Intl.NumberFormat(currentLocale, options).format(number);
+ }
+ catch (e) {
+ return number.toString();
+ }
+};
+/**
+ * 格式化货币
+ */
+const formatCurrency = (amount, currency = 'USD', options = {}) => {
+ try {
+ return new Intl.NumberFormat(currentLocale, {
+ style: 'currency',
+ currency,
+ ...options,
+ }).format(amount);
+ }
+ catch (e) {
+ return amount.toString();
+ }
+};
+/**
+ * 格式化百分比
+ */
+const formatPercent = (value, options = {}) => {
+ try {
+ return new Intl.NumberFormat(currentLocale, {
+ style: 'percent',
+ minimumFractionDigits: 0,
+ maximumFractionDigits: 2,
+ ...options,
+ }).format(value / 100);
+ }
+ catch (e) {
+ return `${value}%`;
+ }
+};
+/**
+ * 格式化日期
+ */
+const formatDate = (date, options = {}) => {
+ try {
+ const dateObj = date instanceof Date ? date : new Date(date);
+ return new Intl.DateTimeFormat(currentLocale, options).format(dateObj);
+ }
+ catch (e) {
+ return String(date);
+ }
+};
+/**
+ * 格式化时间
+ */
+const formatTime = (date, options = {}) => {
+ return formatDate(date, {
+ hour: 'numeric',
+ minute: 'numeric',
+ second: 'numeric',
+ ...options,
+ });
+};
+/**
+ * 格式化相对时间
+ */
+const formatRelativeTime = (date, options = {}) => {
+ try {
+ const dateObj = date instanceof Date ? date : new Date(date);
+ const now = new Date();
+ const diff = dateObj.getTime() - now.getTime();
+ const rtf = new Intl.RelativeTimeFormat(currentLocale, {
+ numeric: 'auto',
+ ...options,
+ });
+ const units = [
+ { unit: 'year', ms: 365 * 24 * 60 * 60 * 1000 },
+ { unit: 'month', ms: 30 * 24 * 60 * 60 * 1000 },
+ { unit: 'week', ms: 7 * 24 * 60 * 60 * 1000 },
+ { unit: 'day', ms: 24 * 60 * 60 * 1000 },
+ { unit: 'hour', ms: 60 * 60 * 1000 },
+ { unit: 'minute', ms: 60 * 1000 },
+ { unit: 'second', ms: 1000 },
+ ];
+ for (const { unit, ms } of units) {
+ if (Math.abs(diff) >= ms || unit === 'second') {
+ const value = Math.round(diff / ms);
+ return rtf.format(value, unit);
+ }
+ }
+ return String(date);
+ }
+ catch (e) {
+ return String(date);
+ }
+};
+/**
+ * 格式化列表 — 优先使用 Intl.ListFormat,降级到逗号拼接
+ */
+const formatList = (list, _options = {}) => {
+ const intl = Intl;
+ if (typeof intl.ListFormat === 'function') {
+ try {
+ return new intl.ListFormat(currentLocale, {
+ style: 'long',
+ type: 'conjunction',
+ }).format(list);
+ }
+ catch (_e) { /* fallback below */ }
+ }
+ return list.join(', ');
+};
+/**
+ * 格式化复数
+ */
+const formatPlural = (count, options = {}) => {
+ try {
+ return new Intl.PluralRules(currentLocale, options).select(count);
+ }
+ catch (e) {
+ return count === 1 ? 'one' : 'other';
+ }
+};
+/**
+ * 复数翻译
+ */
+const plural = (key, count, params = {}) => {
+ const pluralForm = formatPlural(count);
+ const pluralKey = `${key}.${pluralForm}`;
+ if (hasTranslation(pluralKey)) {
+ return t(pluralKey, { ...params, count });
+ }
+ if (hasTranslation(key)) {
+ return t(key, { ...params, count });
+ }
+ return key;
+};
+/**
+ * 国际化工具 — 代理层
+ */
+const i18nUtils = {
+ t,
+ plural,
+ getCurrentLocale,
+ setCurrentLocale,
+ switchLocale,
+ getFallbackLocale,
+ setFallbackLocale,
+ hasTranslation,
+ getTranslations,
+ addTranslations,
+ removeTranslation,
+ clearTranslations,
+ getSupportedLocales,
+ isLocaleSupported,
+ getLocaleName,
+ getLocaleDirection,
+ getLocaleInfo,
+ getAllLocaleInfo,
+ formatNumber,
+ formatCurrency,
+ formatPercent,
+ formatDate,
+ formatTime,
+ formatRelativeTime,
+ formatList,
+ formatPlural,
+ addLocaleListener,
+ removeLocaleListener,
+ clearLocaleListeners,
+ initI18n,
+ saveLocale,
+ loadLocale,
+ getDefaultLocale,
+};
+/**
+ * 预设语言包
+ */
+({
+ 'zh-CN': {
+ name: '简体中文',
+ nativeName: '简体中文',
+ direction: 'ltr',
+ translations: LOCALES['zh-CN'],
+ },
+ 'en-US': {
+ name: 'English (US)',
+ nativeName: 'English (US)',
+ direction: 'ltr',
+ translations: LOCALES['en-US'],
+ },
+});
+
+/**
+ * MetonaToast Animations — 动画管理
+ * @module animations
+ * @version 0.2.1
+ */
+// 动画缓存
+const animationMap = new Map();
+// 内置动画(keyframes 由 styles.ts 注入,无需动态生成)
+const BUILTIN_ANIMATIONS = new Set(ANIMATION_TYPES);
+// 动态注入的自定义动画样式(惰性创建)
+let animStyleElement = null;
+const injectedAnimations = new Set();
+/**
+ * 将 CSS 属性对象转换为内联 CSS 字符串
+ */
+const toCss = (props) => Object.entries(props)
+ .map(([key, value]) => `${key}:${value}`)
+ .join(';');
+/**
+ * 为自定义动画生成入场 keyframes + 类规则
+ */
+const buildAnimationCSS = (name, config) => {
+ const enter = toCss(config.enter);
+ return `
+ @keyframes met-${name}-in {
+ from { ${enter}; }
+ }
+ .met-anim-${name}.met-toast { opacity: 0; }
+ .met-anim-${name}.met-toast.met-show {
+ animation: met-${name}-in ${config.duration}ms ${config.easing} forwards;
+ }
+ `;
+};
+/**
+ * 确保自定义动画的 CSS 已注入文档(幂等,内置动画自动跳过)
+ */
+const ensureAnimationCSS = (name) => {
+ if (typeof document === 'undefined')
+ return;
+ if (BUILTIN_ANIMATIONS.has(name))
+ return;
+ const config = animationMap.get(name);
+ if (!config || injectedAnimations.has(name))
+ return;
+ if (!animStyleElement) {
+ animStyleElement = document.getElementById('metona-toast-anim-styles');
+ if (!animStyleElement) {
+ animStyleElement = document.createElement('style');
+ animStyleElement.id = 'metona-toast-anim-styles';
+ document.head.appendChild(animStyleElement);
+ }
+ }
+ animStyleElement.textContent += buildAnimationCSS(name, config);
+ injectedAnimations.add(name);
+};
+/**
+ * 检查动画是否存在(内置或自定义)
+ */
+const hasAnimation = (name) => animationMap.has(name);
+// 注册默认动画
+Object.entries(ANIMATIONS).forEach(([name, config]) => {
+ animationMap.set(name, {
+ name,
+ enter: config.enter,
+ leave: config.leave,
+ duration: config.duration,
+ easing: config.easing,
+ });
+});
+/**
+ * 动画工具函数
+ */
+const animationUtils = {
+ register(name, config) {
+ animationMap.set(name, {
+ name,
+ enter: config.enter || {},
+ leave: config.leave || {},
+ duration: config.duration || 300,
+ easing: config.easing || 'cubic-bezier(0.4, 0, 0.2, 1)',
+ });
+ },
+ unregister(name) {
+ animationMap.delete(name);
+ },
+ get(name) {
+ return animationMap.get(name) || null;
+ },
+ getAnimationNames() {
+ return Array.from(animationMap.keys());
+ },
+ getActiveCount() {
+ return animationMap.size;
+ },
+ cancelAll() {
+ // CSS动画由浏览器原生管理,无需手动取消
+ },
+ reset() {
+ animationMap.clear();
+ Object.entries(ANIMATIONS).forEach(([name, config]) => {
+ animationMap.set(name, {
+ name,
+ enter: config.enter,
+ leave: config.leave,
+ duration: config.duration,
+ easing: config.easing,
+ });
+ });
+ },
+ destroy() {
+ animationMap.clear();
+ injectedAnimations.clear();
+ animStyleElement = null;
+ },
+};
+
+/**
+ * MetonaToast Toast — Toast 类
+ * @module toast
+ * @version 0.4.0
+ */
+/**
+ * Toast 类 — 核心通知组件
+ */
+let Toast$1 = class Toast {
+ /**
+ * 设置 Toast 类级别的回调函数
+ */
+ static setCallbacks(callbacks) {
+ if (callbacks.onError !== undefined)
+ Toast._onError = callbacks.onError;
+ if (callbacks.removeToast !== undefined)
+ Toast._removeToast = callbacks.removeToast;
+ }
+ static on(name, fn) {
+ if (!this._hooks.has(name))
+ this._hooks.set(name, []);
+ this._hooks.get(name).push(fn);
+ return () => this.off(name, fn);
+ }
+ static off(name, fn) {
+ const list = this._hooks.get(name);
+ if (list)
+ this._hooks.set(name, list.filter(f => f !== fn));
+ }
+ /**
+ * 触发钩子 — 如果任意钩子返回 false 则整体返回 false
+ * toast 参数可选:全局事件(configChange/themeChange 等)不关联具体 toast
+ */
+ static trigger(name, toast = null) {
+ const list = this._hooks.get(name);
+ if (!list || list.length === 0)
+ return true;
+ let allow = true;
+ list.forEach(fn => {
+ try {
+ const result = fn(toast);
+ if (result === false)
+ allow = false;
+ }
+ catch (e) {
+ console.error('Hook error:', name, e);
+ if (Toast._onError) {
+ try {
+ Toast._onError({ hook: name, error: e, toast: toast });
+ }
+ catch (_e) { /* noop */ }
+ }
+ }
+ });
+ return allow;
+ }
+ constructor(opts) {
+ this.el = null;
+ this.barEl = null;
+ this.rafId = null;
+ this.startedAt = 0;
+ this.paused = false;
+ this.closing = false;
+ this.group = null;
+ this._cleanups = [];
+ this.id = opts.id || generateId();
+ this.type = opts.type || 'default';
+ this.title = opts.title || '';
+ this.message = opts.message ?? opts.content ?? '';
+ this.html = opts.html || '';
+ this.iconHTML = opts.iconHTML || '';
+ this.config = { ...DEFAULTS, ...opts };
+ // 防止嵌套对象被多个 toast 实例共享引用
+ if (opts.style && typeof opts.style === 'object') {
+ this.config.style = { ...opts.style };
+ }
+ this.remaining = this.config.duration || 0;
+ this.group = opts.group || null;
+ }
+ _palette() {
+ const theme = getTheme(this.config.theme || 'auto');
+ const c = TYPE_COLORS[this.type] || TYPE_COLORS.default;
+ const tc = THEMES[theme] || THEMES.light;
+ const t = { bg: tc.bg, border: tc.border, shadow: tc.shadow };
+ return { theme, c, t };
+ }
+ create() {
+ if (typeof window === 'undefined' || typeof document === 'undefined')
+ return this;
+ // beforeShow 钩子 — 返回 false 可阻止显示
+ if (!Toast.trigger('beforeShow', this))
+ return this;
+ // onBeforeShow 配置回调 — 返回 false 可阻止显示
+ if (typeof this.config.onBeforeShow === 'function') {
+ try {
+ if (this.config.onBeforeShow(this) === false)
+ return this;
+ }
+ catch (e) {
+ console.error('onBeforeShow callback error:', e);
+ }
+ }
+ injectStyles();
+ ensureAnimationCSS(this.config.animation || 'slide');
+ const container = this._getContainer();
+ const { theme, c, t } = this._palette();
+ this._limitToasts(container);
+ const el = document.createElement('div');
+ el.className = this._buildClassName(theme);
+ el.setAttribute('role', (this.type === 'error' || this.type === 'warning') ? 'alert' : 'status');
+ el.setAttribute('aria-live', this.type === 'error' ? 'assertive' : 'polite');
+ el.dataset.id = this.id;
+ this._applyStyles(el, theme, t);
+ this._buildContent(el, c);
+ this.el = el;
+ // Chrome bug: column-reverse + appendChild 会导致重叠。改用 column + insertBefore
+ const pos = this.config.position || 'top-right';
+ if (pos.startsWith('top')) {
+ container.insertBefore(el, container.firstChild);
+ }
+ else {
+ container.appendChild(el);
+ }
+ Toast._registry.set(this.id, this);
+ this._bindEvents(el);
+ this._startTimer();
+ // 进入动画
+ requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ el.classList.add('met-show');
+ });
+ });
+ if (typeof this.config.onShow === 'function') {
+ try {
+ this.config.onShow(this);
+ }
+ catch (e) {
+ console.error('onShow callback error:', e);
+ }
+ }
+ Toast.trigger('afterShow', this);
+ return this;
+ }
+ _getContainer() {
+ const rawPosition = this.config.position || 'top-right';
+ const zIndex = this.config.zIndex || 9999;
+ // RTL 语言时翻转 left/right
+ const isRTL = getLocaleDirection(getCurrentLocale()) === 'rtl';
+ const position = isRTL
+ ? rawPosition.replace('left', '__TMP__').replace('right', 'left').replace('__TMP__', 'right')
+ : rawPosition;
+ // 从模块级缓存获取 (由 api.ts 管理)
+ const cached = _containerCache.get(document.body);
+ if (cached && cached.has(position)) {
+ return cached.get(position);
+ }
+ // 缓存未命中时创建新容器
+ if (!_containerCache.has(document.body)) {
+ _containerCache.set(document.body, new Map());
+ }
+ const el = document.createElement('div');
+ el.className = `met-container ${position}`;
+ el.setAttribute('aria-label', 'Notifications');
+ el.setAttribute('role', 'region');
+ // RTL 语言设置容器文字方向,使内容/关闭按钮/进度条正确镜像
+ if (isRTL)
+ el.setAttribute('dir', 'rtl');
+ const posStyles = {
+ 'top-left': 'top:0;left:0;align-items:flex-start',
+ 'top-center': 'top:0;left:0;right:0;align-items:center',
+ 'top-right': 'top:0;right:0;align-items:flex-end',
+ 'bottom-left': 'bottom:0;left:0;align-items:flex-start',
+ 'bottom-center': 'bottom:0;left:0;right:0;align-items:center',
+ 'bottom-right': 'bottom:0;right:0;align-items:flex-end',
+ };
+ el.style.cssText = `
+ display:flex;
+ flex-direction:column;
+ gap:${this.config.gap || 12}px;
+ box-sizing:border-box;
+ padding:${this.config.offset || 24}px;
+ max-width:100vw;
+ position:fixed;
+ z-index:${zIndex};
+ pointer-events:none;
+ ${posStyles[position] || 'top:0;right:0;align-items:flex-end'}
+ `;
+ document.body.appendChild(el);
+ _containerCache.get(document.body).set(position, el);
+ return el;
+ }
+ _limitToasts(container) {
+ const max = this.config.max || 6;
+ const list = Array.from(container.querySelectorAll('.met-toast'));
+ while (list.length >= max) {
+ const el = list.shift();
+ const id = el?.dataset.id;
+ if (!id)
+ continue;
+ const existing = Toast._registry.get(id);
+ if (existing) {
+ existing.close(true);
+ }
+ else if (Toast._removeToast) {
+ Toast._removeToast(id);
+ }
+ }
+ }
+ _buildClassName(theme) {
+ const anim = hasAnimation(this.config.animation || '') ? this.config.animation : 'slide';
+ return [
+ 'met-toast',
+ `met-${this.type}`,
+ `met-theme-${theme}`,
+ `met-anim-${anim}`,
+ (this.config.closeOnClick || this.config.draggable) ? 'met-clickable' : '',
+ this.config.className || '',
+ ].filter(Boolean).join(' ');
+ }
+ _applyStyles(el, _theme, _t) {
+ const widthValue = typeof this.config.width === 'number'
+ ? `${this.config.width}px`
+ : (typeof this.config.width === 'string' ? this.config.width : '360px');
+ const set = (p, v) => el.style.setProperty(p, v, 'important');
+ set('position', 'relative');
+ set('flex-shrink', '0');
+ set('min-width', '240px');
+ set('max-width', 'calc(100vw - 48px)');
+ set('width', widthValue);
+ // 用户自定义样式最后应用
+ if (this.config.style && Object.keys(this.config.style).length > 0) {
+ Object.entries(this.config.style).forEach(([k, v]) => { el.style[k] = v; });
+ }
+ }
+ _buildContent(el, c) {
+ // 自定义渲染函数 — 完全接管 DOM 构建
+ if (typeof this.config.render === 'function') {
+ el.innerHTML = this.config.render(this);
+ this.barEl = el.querySelector('.met-bar, .met-bar-v');
+ return;
+ }
+ const showIcon = this.config.icon !== false && (this.iconHTML || ICONS[this.type]);
+ const showClose = this.config.closeButton !== false;
+ const showProgress = this.config.showProgress !== false && (this.config.duration || 0) > 0;
+ const showSide = (!showIcon && this.type !== 'default');
+ const safeTitle = this.title ? `${escapeHTML(this.title)}
` : '';
+ const safeMessage = this.html
+ ? `${this.html}
`
+ : (this.message ? `${escapeHTML(this.message)}
` : '');
+ const iconHTML = showIcon
+ ? `${this.iconHTML || ICONS[this.type]}
` : '';
+ const closeHTML = showClose
+ ? ``
+ : '';
+ const progressHTML = showProgress
+ ? (this.config.progressDirection === 'vertical'
+ ? ``
+ : ``)
+ : '';
+ const sideHTML = showSide
+ ? `` : '';
+ el.innerHTML = `
+ ${iconHTML}
+ ${sideHTML}
+
+ ${safeTitle}
+ ${safeMessage}
+
+ ${closeHTML}
+ ${progressHTML}
+ `;
+ this.barEl = el.querySelector('.met-bar, .met-bar-v');
+ }
+ _bindEvents(el) {
+ const eventHandler = (e) => {
+ const target = e.target;
+ if (target.closest('.met-close')) {
+ e.stopPropagation();
+ this.close();
+ return;
+ }
+ Toast.trigger('click', this);
+ if (this.config.closeOnClick && !target.closest('.met-close')) {
+ if (typeof this.config.onClick === 'function') {
+ try {
+ this.config.onClick(this);
+ }
+ catch (err) {
+ console.error('onClick callback error:', err);
+ }
+ }
+ this.close();
+ return;
+ }
+ };
+ el.addEventListener('click', eventHandler);
+ this._cleanups.push(() => el.removeEventListener('click', eventHandler));
+ if (this.config.pauseOnHover && (this.config.duration || 0) > 0) {
+ const mouseEnter = () => {
+ Toast.trigger('hover', this);
+ this._pause();
+ };
+ const mouseLeave = () => {
+ Toast.trigger('hover', this);
+ this._resume();
+ };
+ el.addEventListener('mouseenter', mouseEnter);
+ el.addEventListener('mouseleave', mouseLeave);
+ this._cleanups.push(() => {
+ el.removeEventListener('mouseenter', mouseEnter);
+ el.removeEventListener('mouseleave', mouseLeave);
+ });
+ }
+ // 入场动画生命周期钩子(离场为过渡/内联样式,不产生 animation 事件)
+ const animStart = () => Toast.trigger('animationStart', this);
+ const animEnd = () => Toast.trigger('animationEnd', this);
+ el.addEventListener('animationstart', animStart);
+ el.addEventListener('animationend', animEnd);
+ this._cleanups.push(() => {
+ el.removeEventListener('animationstart', animStart);
+ el.removeEventListener('animationend', animEnd);
+ });
+ if (this.config.draggable) {
+ this._bindDrag(el);
+ }
+ }
+ _bindDrag(el) {
+ let sx = 0, sy = 0, dx = 0, dy = 0, dragging = false;
+ const down = (e) => {
+ if (e.target.closest('.met-close'))
+ return;
+ dragging = true;
+ sx = e.clientX;
+ sy = e.clientY;
+ el.setPointerCapture(e.pointerId);
+ el.style.transition = 'none';
+ this._pause();
+ Toast.trigger('dragStart', this);
+ };
+ const move = (e) => {
+ if (!dragging)
+ return;
+ dx = e.clientX - sx;
+ dy = e.clientY - sy;
+ el.style.transform = `translate(${dx}px, ${dy}px) rotate(${dx * 0.1}deg)`;
+ el.style.opacity = String(Math.max(0, 1 - Math.abs(dx) / 200));
+ };
+ const up = (e) => {
+ if (!dragging)
+ return;
+ dragging = false;
+ el.releasePointerCapture(e.pointerId);
+ el.style.transition = '';
+ const threshold = this.config.dragThreshold ?? 120;
+ if (Math.abs(dx) > threshold) {
+ el.style.transform = `translate(${dx * 2}px, ${dy}px) rotate(${dx * 0.2}deg)`;
+ el.style.opacity = '0';
+ setTimeout(() => this.close(true), 250);
+ }
+ else {
+ el.style.transform = '';
+ el.style.opacity = '';
+ this._resume();
+ }
+ dx = dy = 0;
+ Toast.trigger('dragEnd', this);
+ };
+ el.addEventListener('pointerdown', down);
+ el.addEventListener('pointermove', move);
+ el.addEventListener('pointerup', up);
+ el.addEventListener('pointercancel', up);
+ this._cleanups.push(() => {
+ el.removeEventListener('pointerdown', down);
+ el.removeEventListener('pointermove', move);
+ el.removeEventListener('pointerup', up);
+ el.removeEventListener('pointercancel', up);
+ });
+ }
+ _startTimer(resuming = false) {
+ if ((this.config.duration || 0) <= 0)
+ return;
+ if (!resuming) {
+ this.startedAt = Date.now();
+ this.remaining = this.config.duration || 0;
+ Toast.trigger('progressStart', this);
+ }
+ const tick = () => {
+ if (this.paused || this.closing)
+ return;
+ try {
+ const elapsed = Date.now() - this.startedAt;
+ this.remaining = Math.max(0, (this.config.duration || 0) - elapsed);
+ if (this.barEl) {
+ const ratio = this.remaining / (this.config.duration || 1);
+ const t = this.config.progressDirection === 'vertical'
+ ? `scaleY(${ratio})` : `scaleX(${ratio})`;
+ this.barEl.style.transform = t;
+ }
+ if (this.remaining <= 0) {
+ Toast.trigger('progressEnd', this);
+ this.close();
+ return;
+ }
+ }
+ catch (e) {
+ console.error('Timer tick error:', e);
+ if (Toast._onError) {
+ try {
+ Toast._onError({ source: 'timer', error: e, toast: this });
+ }
+ catch (_e) { /* noop */ }
+ }
+ }
+ this.rafId = requestAnimationFrame(tick);
+ };
+ this.rafId = requestAnimationFrame(tick);
+ }
+ _pause() {
+ if (this.paused || (this.config.duration || 0) <= 0)
+ return;
+ this.paused = true;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.remaining = Math.max(0, (this.config.duration || 0) - (Date.now() - this.startedAt));
+ }
+ _resume() {
+ if (!this.paused)
+ return;
+ this.paused = false;
+ this.startedAt = Date.now() - ((this.config.duration || 0) - this.remaining);
+ this._startTimer(true);
+ }
+ update(partial) {
+ // beforeUpdate 钩子 — 返回 false 可阻止更新
+ if (!Toast.trigger('beforeUpdate', this))
+ return this;
+ const typeChanged = partial.type && partial.type !== this.type;
+ if (partial.type)
+ this.type = partial.type;
+ if (partial.title !== undefined)
+ this.title = partial.title;
+ if (partial.message !== undefined)
+ this.message = partial.message;
+ if (partial.html !== undefined)
+ this.html = partial.html;
+ if (!this.el) {
+ Toast.trigger('afterUpdate', this);
+ return this;
+ }
+ // 类型变更时同步更新 DOM 类名、边框颜色和进度条颜色
+ if (typeChanged) {
+ const typeClasses = ['met-success', 'met-error', 'met-warning', 'met-info', 'met-loading', 'met-default'];
+ typeClasses.forEach(c => this.el.classList.remove(c));
+ this.el.classList.add(`met-${this.type}`);
+ if (this.barEl) {
+ const c = TYPE_COLORS[this.type] || TYPE_COLORS.default;
+ this.barEl.style.background = c.fg;
+ }
+ const side = this.el.querySelector('.met-side');
+ if (side) {
+ const c = TYPE_COLORS[this.type] || TYPE_COLORS.default;
+ side.style.background = c.fg;
+ }
+ }
+ const content = this.el.querySelector('.met-content');
+ if (content) {
+ const safeTitle = this.title ? `${escapeHTML(this.title)}
` : '';
+ const safeMessage = this.html
+ ? `${this.html}
`
+ : (this.message ? `${escapeHTML(this.message)}
` : '');
+ content.innerHTML = `${safeTitle}${safeMessage}`;
+ }
+ // duration 变更:重启或停止计时器(loading 0 → N 转换、动态调整时长等场景)
+ if (partial.duration !== undefined && partial.duration !== this.config.duration) {
+ this.config.duration = partial.duration;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ this.remaining = Math.max(0, partial.duration);
+ if (partial.duration > 0 && !this.paused) {
+ this.startedAt = Date.now();
+ this._startTimer();
+ }
+ }
+ // resetTimerOnUpdate: 更新内容后重置计时器
+ if (this.config.resetTimerOnUpdate && (this.config.duration || 0) > 0) {
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this.startedAt = Date.now();
+ this.remaining = this.config.duration || 0;
+ this._startTimer();
+ }
+ if (typeof this.config.onUpdate === 'function') {
+ try {
+ this.config.onUpdate(this);
+ }
+ catch (e) {
+ console.error('onUpdate callback error:', e);
+ }
+ }
+ Toast.trigger('afterUpdate', this);
+ return this;
+ }
+ /**
+ * 运行时移动 Toast 到新位置
+ */
+ updatePosition(position) {
+ if (!position || !this.el)
+ return this;
+ const oldContainer = this.el.parentNode;
+ this.config.position = position;
+ const newContainer = this._getContainer();
+ if (oldContainer === newContainer)
+ return this;
+ // 从旧容器移除,加入新容器
+ if (oldContainer && this.el.parentNode === oldContainer) {
+ oldContainer.removeChild(this.el);
+ }
+ const pos = position;
+ if (pos.startsWith('top')) {
+ newContainer.insertBefore(this.el, newContainer.firstChild);
+ }
+ else {
+ newContainer.appendChild(this.el);
+ }
+ return this;
+ }
+ /**
+ * 立即从 DOM 和内存中移除(不触发离场动画)
+ */
+ remove() {
+ if (this.rafId !== null) {
+ cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ }
+ this._cleanups.forEach(fn => { try {
+ fn();
+ }
+ catch (_e) { /* noop */ } });
+ this._cleanups = [];
+ if (this.el && this.el.parentNode) {
+ this.el.parentNode.removeChild(this.el);
+ }
+ this.el = null;
+ Toast._registry.delete(this.id);
+ if (Toast._removeToast)
+ Toast._removeToast(this.id);
+ }
+ close(immediate = false) {
+ if (this.closing)
+ return;
+ // beforeClose 钩子 — 返回 false 可阻止关闭
+ if (!Toast.trigger('beforeClose', this))
+ return;
+ this.closing = true;
+ if (this.rafId !== null)
+ cancelAnimationFrame(this.rafId);
+ this._cleanups.forEach(fn => { try {
+ fn();
+ }
+ catch (_e) { /* noop */ } });
+ this._cleanups = [];
+ const el = this.el;
+ if (!el) {
+ if (Toast._removeToast)
+ Toast._removeToast(this.id);
+ return;
+ }
+ // 立即脱离文档流
+ const container = el.parentNode;
+ if (container && !immediate) {
+ const elRect = el.getBoundingClientRect();
+ const containerRect = container.getBoundingClientRect();
+ el.style.position = 'absolute';
+ el.style.top = (elRect.top - containerRect.top) + 'px';
+ el.style.left = (elRect.left - containerRect.left) + 'px';
+ el.style.width = elRect.width + 'px';
+ el.style.margin = '0';
+ }
+ el.classList.add('met-leaving');
+ el.classList.remove('met-show');
+ const pos = this.config.position || 'top-right';
+ const isRTL = getLocaleDirection(getCurrentLocale()) === 'rtl';
+ let transform = 'scale(.96)';
+ if (pos.includes('right'))
+ transform = isRTL ? 'translateX(-120%)' : 'translateX(120%)';
+ else if (pos.includes('left'))
+ transform = isRTL ? 'translateX(120%)' : 'translateX(-120%)';
+ else if (pos.startsWith('top'))
+ transform = 'translateY(-20px)';
+ else
+ transform = 'translateY(20px)';
+ el.style.transform = transform;
+ el.style.opacity = '0';
+ setTimeout(() => this._destroy(), immediate ? 0 : 300);
+ }
+ _destroy() {
+ if (this.el && this.el.parentNode) {
+ this.el.parentNode.removeChild(this.el);
+ }
+ this.el = null;
+ if (typeof this.config.onClose === 'function') {
+ try {
+ this.config.onClose(this);
+ }
+ catch (e) {
+ console.error('onClose callback error:', e);
+ }
+ }
+ Toast.trigger('afterClose', this);
+ Toast._registry.delete(this.id);
+ if (Toast._removeToast)
+ Toast._removeToast(this.id);
+ }
+};
+// 静态钩子系统
+Toast$1._hooks = new Map();
+// 实例注册表 — 用于通过 id 反查实例(max 超限移除、外部接管等)
+Toast$1._registry = new Map();
+// 由 api.ts 注入的回调,通过 setCallbacks() 设置
+Toast$1._onError = null;
+Toast$1._removeToast = null;
+/**
+ * 模块级共享容器缓存,所有 Toast 实例共用
+ */
+const _containerCache = new Map();
+
+/**
+ * MetonaToast Templates — HTML 模板辅助函数
+ * @module templates
+ * @version 0.4.0
+ * @description confirm / prompt / progress / action 的 DOM 模板
+ */
+/**
+ * 按钮行模板 — confirm/prompt 共用
+ */
+const btnRow = (buttons) => `
+
+ ${buttons}
+
`;
+/**
+ * 确认对话框模板
+ */
+const confirmHTML = (opts) => {
+ const confirmText = opts.confirmText || t('confirm');
+ const cancelText = opts.cancelText || t('cancel');
+ const confirmColor = opts.confirmColor || '#10b981';
+ const cancelColor = opts.cancelColor || '#6b7280';
+ return btnRow(`
+
+
+ `);
+};
+/**
+ * 输入对话框模板
+ */
+const promptHTML = (opts) => {
+ const submitText = opts.submitText || t('confirm');
+ const cancelText = opts.cancelText || t('cancel');
+ const submitColor = opts.submitColor || '#3b82f6';
+ const cancelColor = opts.cancelColor || '#6b7280';
+ return `
+
+ ${btnRow(`
+
+
+ `)}
+ `;
+};
+/**
+ * 进度条模板
+ */
+const progressHTML = (opts) => {
+ const color = opts.progressColor || '#3b82f6';
+ return `
+
+ 0%
+ `;
+};
+/**
+ * Action Toast 模板
+ */
+const actionHTML = (actions) => {
+ if (!Array.isArray(actions) || actions.length === 0)
+ return '';
+ const buttons = actions.map((a, i) => {
+ const bg = a.style?.background || a.color || '#6366f1';
+ const cls = `met-action-btn-${i}`;
+ return ``;
+ }).join('');
+ return btnRow(buttons);
+};
+
+/**
+ * MetonaToast Plugins — 插件系统
+ * @module plugins
+ * @version 0.4.0
+ */
+/**
+ * 插件管理器
+ */
+class PluginManager {
+ constructor() {
+ this.plugins = new Map();
+ this.initialized = false;
+ }
+ register(name, plugin) {
+ if (this.plugins.has(name)) {
+ console.warn(`Plugin "${name}" is already registered`);
+ return this;
+ }
+ if (!plugin || typeof plugin !== 'object' || !plugin.name) {
+ console.error(`Invalid plugin "${name}": must be an object with a "name" property`);
+ return this;
+ }
+ const stored = { ...plugin, installed: false, enabled: true };
+ if (!stored.name)
+ stored.name = name;
+ this.plugins.set(name, stored);
+ if (stored.install) {
+ try {
+ stored.install(this);
+ stored.installed = true;
+ }
+ catch (e) {
+ console.error(`Failed to install plugin "${name}":`, e);
+ }
+ }
+ return this;
+ }
+ unregister(name) {
+ const plugin = this.plugins.get(name);
+ if (!plugin)
+ return this;
+ if (plugin.uninstall) {
+ try {
+ plugin.uninstall(this);
+ }
+ catch (e) {
+ console.error(`Failed to uninstall plugin "${name}":`, e);
+ }
+ }
+ this.plugins.delete(name);
+ return this;
+ }
+ get(name) { return this.plugins.get(name) || null; }
+ has(name) { return this.plugins.has(name); }
+ getAll() { return Array.from(this.plugins.values()); }
+ getNames() { return Array.from(this.plugins.keys()); }
+ enable(name) {
+ const p = this.plugins.get(name);
+ if (p)
+ p.enabled = true;
+ return this;
+ }
+ disable(name) {
+ const p = this.plugins.get(name);
+ if (p)
+ p.enabled = false;
+ return this;
+ }
+ isEnabled(name) {
+ const p = this.plugins.get(name);
+ return p ? !!p.enabled : false;
+ }
+ destroy() {
+ this.plugins.forEach((p) => {
+ if (p.destroy) {
+ try {
+ p.destroy(this);
+ }
+ catch (_e) { /* noop */ }
+ }
+ });
+ this.plugins.clear();
+ }
+}
+/**
+ * 预设插件
+ */
+const presetPlugins = {
+ /**
+ * 键盘快捷键插件 — ESC 关闭所有 Toast
+ */
+ keyboard: {
+ name: 'keyboard',
+ version: '1.0.0',
+ description: 'ESC 关闭所有 Toast',
+ _handler: null,
+ install() {
+ if (typeof document === 'undefined')
+ return;
+ const handler = (e) => {
+ if (e.key === 'Escape') {
+ document.querySelectorAll('.met-toast .met-close').forEach(btn => {
+ try {
+ btn.click();
+ }
+ catch (_e) { /* noop */ }
+ });
+ }
+ };
+ this._handler = handler;
+ document.addEventListener('keydown', handler);
+ },
+ uninstall() {
+ const handler = this._handler;
+ if (handler && typeof document !== 'undefined') {
+ document.removeEventListener('keydown', handler);
+ this._handler = null;
+ }
+ },
+ },
+ /**
+ * 持久化插件 — 自动保存/加载配置到 localStorage
+ */
+ persistence: {
+ name: 'persistence',
+ version: '1.0.0',
+ description: '自动持久化配置到 localStorage',
+ storageKey: 'metona-toast-config',
+ install() {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ const key = this.storageKey;
+ const saved = localStorage.getItem(key);
+ return saved ? JSON.parse(saved) : null;
+ }
+ catch (_e) {
+ return null;
+ }
+ }
+ return null;
+ },
+ save(config) {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ const key = this.storageKey;
+ localStorage.setItem(key, JSON.stringify(config));
+ }
+ catch (_e) { /* noop */ }
+ }
+ },
+ uninstall() {
+ if (typeof localStorage !== 'undefined') {
+ try {
+ const key = this.storageKey;
+ localStorage.removeItem(key);
+ }
+ catch (_e) { /* noop */ }
+ }
+ },
+ },
+ /**
+ * 无障碍插件 — 屏幕阅读器公告
+ */
+ accessibility: {
+ name: 'accessibility',
+ version: '1.0.0',
+ description: '通过屏幕阅读器朗读 Toast 内容',
+ announce(toast) {
+ if (typeof document === 'undefined')
+ return;
+ const el = document.createElement('div');
+ el.setAttribute('aria-live', 'assertive');
+ el.setAttribute('aria-atomic', 'true');
+ el.style.cssText = 'position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;';
+ const typeName = t(toast.type) || toast.type;
+ el.textContent = `${typeName}: ${toast.title || ''} ${toast.message || ''}`;
+ document.body.appendChild(el);
+ setTimeout(() => { if (el.parentNode)
+ el.parentNode.removeChild(el); }, 3000);
+ },
+ },
+ /**
+ * 去重插件 — 相同 type + message 的 toast 自动合并(更新已有的一条)
+ */
+ dedupe: {
+ name: 'dedupe',
+ version: '1.0.0',
+ description: '相同类型和消息的 Toast 自动去重,更新已有实例而非重复弹出',
+ _off: null,
+ install() {
+ const off = Toast$1.on('beforeShow', (toast) => {
+ const existing = Array.from(Toast$1._registry.values()).find(t => !t.closing && t.type === toast.type && t.message === toast.message);
+ if (existing) {
+ existing.update({ title: toast.title || existing.title });
+ return false;
+ }
+ return undefined;
+ });
+ this._off = off;
+ },
+ uninstall() {
+ const off = this._off;
+ if (off)
+ off();
+ this._off = null;
+ },
+ },
+};
+/**
+ * 插件工具
+ */
+const pluginUtils = {
+ createManager() { return new PluginManager(); },
+ register(name, plugin) { return defaultPluginManager.register(name, plugin); },
+ unregister(name) { return defaultPluginManager.unregister(name); },
+ get(name) { return defaultPluginManager.get(name); },
+ has(name) { return defaultPluginManager.has(name); },
+ getAll() { return defaultPluginManager.getAll(); },
+ getNames() { return defaultPluginManager.getNames(); },
+ enable(name) { return defaultPluginManager.enable(name); },
+ disable(name) { return defaultPluginManager.disable(name); },
+ isEnabled(name) { return defaultPluginManager.isEnabled(name); },
+ getPreset(name) { return presetPlugins[name] || null; },
+ getAllPresets() { return { ...presetPlugins }; },
+ createPlugin(config) {
+ return {
+ name: config.name || 'custom',
+ version: config.version || '1.0.0',
+ description: config.description || '',
+ hooks: config.hooks || {},
+ install: config.install || undefined,
+ uninstall: config.uninstall || undefined,
+ ...config,
+ };
+ },
+ validatePlugin(plugin) {
+ const errors = [];
+ if (!plugin || typeof plugin !== 'object')
+ errors.push('Plugin must be an object');
+ if (!plugin.name && !plugin.version)
+ errors.push('Plugin must have a name or version');
+ return { valid: errors.length === 0, errors };
+ },
+};
+const defaultPluginManager = new PluginManager();
+
+/**
+ * MetonaToast API — meToast 核心 API 对象
+ * @module api
+ * @version 0.4.0
+ */
+/**
+ * 参数标准化工具
+ */
+const normalizeArgs = (args, defaultType = 'default') => {
+ const [first, second] = args;
+ if (typeof first === 'string') {
+ return {
+ ...(second || {}),
+ type: second?.type || defaultType,
+ message: first,
+ };
+ }
+ if (first && typeof first === 'object') {
+ return {
+ ...first,
+ type: first.type || defaultType,
+ };
+ }
+ return {
+ type: defaultType,
+ message: '',
+ };
+};
+/**
+ * meToast API 对象
+ */
+const meToast = {
+ _toasts: new Map(),
+ _config: { ...DEFAULTS },
+ version: VERSION,
+ configure(opts) {
+ if (!opts || typeof opts !== 'object')
+ return this;
+ Object.assign(this._config, opts);
+ if (opts.theme) {
+ applyTheme(opts.theme);
+ }
+ if (opts.locale) {
+ setCurrentLocale(opts.locale);
+ }
+ Toast$1.trigger('configChange');
+ return this;
+ },
+ _emit(opts) {
+ const merged = { ...this._config, ...opts };
+ if (merged.content && !merged.message)
+ merged.message = merged.content;
+ const t = new Toast$1(merged);
+ t.create();
+ // beforeShow/onBeforeShow 拦截(返回 false)时 el 为 null,不注册幽灵实例
+ if (t.el !== null) {
+ this._toasts.set(t.id, t);
+ }
+ return t;
+ },
+ _remove(id) {
+ this._toasts.delete(id);
+ },
+ find(id) {
+ if (!id)
+ return undefined;
+ return this._toasts.get(id);
+ },
+ show(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'default');
+ return this._emit(normalized);
+ },
+ success(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'success');
+ return this._emit(normalized);
+ },
+ error(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'error');
+ return this._emit(normalized);
+ },
+ warning(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'warning');
+ return this._emit(normalized);
+ },
+ info(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'info');
+ return this._emit(normalized);
+ },
+ loading(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'loading');
+ normalized.duration = 0;
+ normalized.closeButton = false;
+ normalized.showProgress = false;
+ const toast = this._emit(normalized);
+ return {
+ id: toast.id,
+ success: (msg, o = {}) => this._resolve(toast, 'success', msg || t('success'), o),
+ error: (msg, o = {}) => this._resolve(toast, 'error', msg || t('error'), o),
+ info: (msg, o = {}) => this._resolve(toast, 'info', msg || t('info'), o),
+ warning: (msg, o = {}) => this._resolve(toast, 'warning', msg || t('warning'), o),
+ update: (p) => { toast.update(p); return this; },
+ dismiss: () => toast.close(),
+ };
+ },
+ promise(promise, opts = {}) {
+ if (!promise || typeof promise.then !== 'function') {
+ console.error('MeToast.promise: first argument must be a Promise');
+ return Promise.reject(new Error('Invalid promise'));
+ }
+ const loadingMsg = opts.loading || t('loading');
+ const successMsg = opts.success || t('success');
+ const errorMsg = opts.error || t('error');
+ const ctrl = this.loading(loadingMsg);
+ return Promise.resolve(promise)
+ .then((data) => {
+ ctrl.success(successMsg);
+ return data;
+ })
+ .catch((err) => {
+ ctrl.error(errorMsg);
+ throw err;
+ });
+ },
+ /**
+ * loading 链式转换 — 原地 update 同一实例(id 稳定,不重建 DOM)
+ * duration 从 0 恢复为默认值,使转换后的 toast 自动关闭
+ */
+ _resolve(loadingToast, type, message, opts) {
+ const old = this._toasts.get(loadingToast.id);
+ if (!old)
+ return null;
+ old.update({
+ ...opts,
+ type,
+ message,
+ duration: opts.duration ?? (old.config.duration || this._config.duration),
+ });
+ return old;
+ },
+ confirm(message, opts = {}) {
+ if (typeof message !== 'string') {
+ console.error('MeToast.confirm: message must be a string');
+ return Promise.resolve(false);
+ }
+ return new Promise((resolve) => {
+ let resolved = false;
+ const safeResolve = (val) => {
+ if (!resolved) {
+ resolved = true;
+ clearTimeout(safetyTimeout);
+ resolve(val);
+ }
+ };
+ const safetyTimeout = setTimeout(() => safeResolve(false), 10000);
+ const toast = this._emit({
+ ...opts,
+ type: opts.type || 'warning',
+ message,
+ duration: 0,
+ closeButton: false,
+ closeOnClick: false,
+ draggable: false,
+ html: confirmHTML(opts),
+ });
+ setTimeout(() => {
+ const confirmBtn = toast.el?.querySelector('.met-confirm-btn');
+ const cancelBtn = toast.el?.querySelector('.met-cancel-btn');
+ if (confirmBtn) {
+ confirmBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(true);
+ });
+ }
+ if (cancelBtn) {
+ cancelBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(false);
+ });
+ }
+ }, 0);
+ });
+ },
+ prompt(message, opts = {}) {
+ if (typeof message !== 'string') {
+ console.error('MeToast.prompt: message must be a string');
+ return Promise.resolve(null);
+ }
+ return new Promise((resolve) => {
+ let resolved = false;
+ const safeResolve = (val) => {
+ if (!resolved) {
+ resolved = true;
+ clearTimeout(safetyTimeout);
+ resolve(val);
+ }
+ };
+ const safetyTimeout = setTimeout(() => safeResolve(null), 10000);
+ const toast = this._emit({
+ ...opts,
+ type: opts.type || 'info',
+ message,
+ duration: 0,
+ closeButton: false,
+ closeOnClick: false,
+ draggable: false,
+ html: promptHTML(opts),
+ });
+ setTimeout(() => {
+ const input = toast.el?.querySelector('.met-input');
+ const submitBtn = toast.el?.querySelector('.met-submit-btn');
+ const cancelBtn = toast.el?.querySelector('.met-cancel-btn');
+ if (input) {
+ input.focus();
+ input.addEventListener('keydown', (e) => {
+ if (e.key === 'Enter') {
+ toast.close();
+ safeResolve(input.value);
+ }
+ });
+ }
+ if (submitBtn) {
+ submitBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(input?.value || null);
+ });
+ }
+ if (cancelBtn) {
+ cancelBtn.addEventListener('click', () => {
+ toast.close();
+ safeResolve(null);
+ });
+ }
+ }, 0);
+ });
+ },
+ progress(messageOrOpts, opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'info');
+ normalized.duration = 0;
+ normalized.closeButton = false;
+ normalized.showProgress = false;
+ const toast = this._emit({
+ ...normalized,
+ html: progressHTML(opts),
+ });
+ return {
+ id: toast.id,
+ setProgress(percent) {
+ const fill = toast.el?.querySelector('.met-progress-fill');
+ const text = toast.el?.querySelector('.met-progress-text');
+ if (fill) {
+ fill.style.width = `${Math.min(100, Math.max(0, percent))}%`;
+ }
+ if (text) {
+ text.textContent = `${Math.round(percent)}%`;
+ }
+ },
+ complete(message) {
+ this.setProgress(100);
+ setTimeout(() => {
+ toast.update({
+ type: 'success',
+ message: message || t('success'),
+ html: '',
+ });
+ setTimeout(() => toast.close(), 1000);
+ }, 300);
+ },
+ error(message) {
+ toast.update({
+ type: 'error',
+ message: message || t('error'),
+ html: '',
+ });
+ setTimeout(() => toast.close(), 2000);
+ },
+ dismiss() {
+ toast.close();
+ },
+ };
+ },
+ countdown(message, seconds = 10, opts = {}) {
+ if (typeof message !== 'string') {
+ console.error('MeToast.countdown: message must be a string');
+ return { id: '', cancel: () => { }, pause: () => { }, resume: () => { } };
+ }
+ let remaining = Math.max(1, parseInt(String(seconds)) || 10);
+ let timer = null;
+ const toast = this._emit({
+ ...opts,
+ type: opts.type || 'warning',
+ message: message.replace(/\{seconds\}/g, String(remaining)),
+ duration: 0,
+ closeButton: true,
+ showProgress: false,
+ });
+ const tick = () => {
+ remaining--;
+ if (remaining <= 0) {
+ if (timer !== null)
+ clearInterval(timer);
+ toast.close();
+ if (typeof opts.onComplete === 'function') {
+ try {
+ opts.onComplete();
+ }
+ catch (e) {
+ console.error('countdown onComplete error:', e);
+ }
+ }
+ return;
+ }
+ toast.update({
+ message: message.replace(/\{seconds\}/g, String(remaining)),
+ });
+ };
+ timer = setInterval(tick, 1000);
+ return {
+ id: toast.id,
+ cancel() { if (timer !== null)
+ clearInterval(timer); toast.close(); },
+ pause() { if (timer !== null)
+ clearInterval(timer); },
+ resume() { if (timer !== null)
+ clearInterval(timer); timer = setInterval(tick, 1000); },
+ };
+ },
+ action(messageOrOpts, actions = [], opts = {}) {
+ const normalized = normalizeArgs([messageOrOpts, opts], 'info');
+ normalized.duration = opts.duration ?? 0;
+ normalized.closeButton = opts.closeButton ?? true;
+ const toast = this._emit({
+ ...normalized,
+ html: (normalized.html || '') + actionHTML(actions),
+ });
+ if (Array.isArray(actions)) {
+ setTimeout(() => {
+ actions.forEach((a, i) => {
+ const btn = toast.el?.querySelector(`.met-action-btn-${i}`);
+ if (btn && typeof a.onClick === 'function') {
+ btn.addEventListener('click', () => {
+ try {
+ a.onClick(toast);
+ }
+ catch (e) {
+ console.error('Action onClick error:', e);
+ }
+ if (a.close !== false)
+ toast.close();
+ });
+ }
+ });
+ }, 0);
+ }
+ return { id: toast.id, toast, dismiss: () => toast.close() };
+ },
+ queue(messages, opts = {}) {
+ if (!Array.isArray(messages)) {
+ console.error('MeToast.queue: messages must be an array');
+ const p = Promise.resolve();
+ return { then: (fn) => p.then(fn), catch: (rj) => p.catch(rj), cancel: () => { } };
+ }
+ let cancelled = false;
+ const promise = new Promise((resolve) => {
+ let index = 0;
+ const delay = opts.delay || 1000;
+ const userOnClose = opts.onClose;
+ const showNext = () => {
+ if (cancelled || index >= messages.length) {
+ resolve();
+ return;
+ }
+ const message = messages[index];
+ index++;
+ const msg = typeof message === 'string' ? message : (message?.message || '');
+ const msgObj = (typeof message === 'object' && message !== null) ? message : {};
+ const msgOnClose = msgObj.onClose;
+ this._emit({
+ ...opts,
+ ...msgObj,
+ message: msg,
+ duration: msgObj.duration || opts.duration || 3000,
+ onClose: (toast) => {
+ if (typeof msgOnClose === 'function') {
+ try {
+ msgOnClose(toast);
+ }
+ catch (_e) { /* noop */ }
+ }
+ if (typeof userOnClose === 'function') {
+ try {
+ userOnClose(toast);
+ }
+ catch (_e) { /* noop */ }
+ }
+ setTimeout(showNext, delay);
+ },
+ });
+ };
+ showNext();
+ });
+ return {
+ then: (fn, rj) => promise.then(fn, rj),
+ catch: (rj) => promise.catch(rj),
+ cancel: () => { cancelled = true; },
+ };
+ },
+ stack(messages, opts = {}) {
+ if (!Array.isArray(messages)) {
+ console.error('MeToast.stack: messages must be an array');
+ return;
+ }
+ messages.forEach((message, index) => {
+ setTimeout(() => {
+ const msg = typeof message === 'string' ? message : (message?.message || '');
+ this._emit({
+ ...opts,
+ ...((typeof message === 'object' && message !== null) ? message : {}),
+ message: msg,
+ });
+ }, index * (opts.stagger || 100));
+ });
+ },
+ dismiss(id) {
+ if (id) {
+ const t = this._toasts.get(id);
+ if (t)
+ t.close();
+ return;
+ }
+ this._toasts.forEach(t => t.close());
+ },
+ /**
+ * 立即移除指定 Toast(不触发离场动画)
+ */
+ removeToast(id) {
+ if (!id)
+ return;
+ const t = this._toasts.get(id);
+ if (t)
+ t.remove();
+ },
+ clear(position) {
+ this._toasts.forEach(t => {
+ if (!position || t.config.position === position)
+ t.close();
+ });
+ },
+ getAll() {
+ return new Map(this._toasts);
+ },
+ count() {
+ return this._toasts.size;
+ },
+ group(name) {
+ const self = this;
+ const methods = ['show', 'success', 'error', 'warning', 'info', 'loading', 'action'];
+ const g = { _group: name };
+ methods.forEach(m => {
+ g[m] = (...args) => {
+ const lastArg = args[args.length - 1];
+ const isObj = typeof lastArg === 'object' && lastArg !== null && !Array.isArray(lastArg);
+ const selfMethods = self;
+ if (isObj && args.length === 1) {
+ return selfMethods[m]({ ...lastArg, group: name });
+ }
+ if (isObj) {
+ args.pop();
+ return selfMethods[m](...args, { ...lastArg, group: name });
+ }
+ return selfMethods[m](...args, { group: name });
+ };
+ });
+ g.dismiss = () => self.dismissGroup(name);
+ g.count = () => self._groupCount(name);
+ return g;
+ },
+ dismissGroup(name) {
+ this._toasts.forEach(t => { if (t.group === name)
+ t.close(); });
+ },
+ _groupCount(name) {
+ let c = 0;
+ this._toasts.forEach(t => { if (t.group === name)
+ c++; });
+ return c;
+ },
+ getToasts() {
+ return Array.from(this._toasts.values());
+ },
+ hasToasts() {
+ return this._toasts.size > 0;
+ },
+ getToast(id) {
+ if (!id)
+ return null;
+ return this._toasts.get(id) || null;
+ },
+ closeAll() {
+ this._toasts.forEach(t => t.close());
+ },
+ clearAll() {
+ this._toasts.forEach(t => t.close());
+ },
+ pauseAll() {
+ this._toasts.forEach(t => t._pause());
+ },
+ resumeAll() {
+ this._toasts.forEach(t => t._resume());
+ },
+ updateAll(partial) {
+ if (partial && typeof partial === 'object') {
+ this._toasts.forEach(t => t.update(partial));
+ }
+ },
+ findToasts(predicate) {
+ if (typeof predicate !== 'function')
+ return [];
+ return Array.from(this._toasts.values()).filter(predicate);
+ },
+ findByType(type) {
+ return this.findToasts(t => t.type === type);
+ },
+ findByPosition(position) {
+ return this.findToasts(t => t.config.position === position);
+ },
+ // ====== 以下方法依赖子模块(themes/i18n/plugins/animations),由 index.ts 注入 ======
+ init(options = {}) {
+ Toast$1.trigger('beforeInit');
+ this._destroyed = false;
+ if (options.config) {
+ this.configure(options.config);
+ }
+ if (options.theme && this.themes) {
+ this.themes.switchTheme(options.theme);
+ }
+ if (options.locale && this.i18n) {
+ this.i18n.switchLocale(options.locale);
+ }
+ if (options.plugins && Array.isArray(options.plugins)) {
+ options.plugins.forEach((p) => {
+ this.use(p);
+ });
+ }
+ Toast$1.trigger('afterInit');
+ return this;
+ },
+ getStatus() {
+ return {
+ version: VERSION,
+ toasts: this._toasts.size,
+ theme: this.themes?.getCurrentTheme?.() || 'auto',
+ locale: this.i18n?.getCurrentLocale?.() || 'zh-CN',
+ plugins: this.plugins?.getNames?.() || [],
+ animations: this.animations?.getActiveCount?.() || 0,
+ };
+ },
+ getConfig() {
+ return { ...this._config };
+ },
+ updateConfig(config) {
+ if (config && typeof config === 'object') {
+ Object.assign(this._config, config);
+ Toast$1.trigger('configChange');
+ }
+ return this;
+ },
+ resetConfig() {
+ const keys = Object.keys(this._config);
+ keys.forEach(k => delete this._config[k]);
+ Object.assign(this._config, DEFAULTS);
+ Toast$1.trigger('configChange');
+ return this;
+ },
+ use(plugin, options = {}) {
+ if (typeof plugin === 'string') {
+ const preset = presetPlugins[plugin];
+ if (!preset) {
+ console.warn(`Preset plugin "${plugin}" not found`);
+ return this;
+ }
+ this.plugins.register(plugin, { ...preset, ...options });
+ // 连接插件钩子
+ if (plugin === 'accessibility') {
+ Toast$1.on('afterShow', (toast) => {
+ const acc = preset;
+ if (typeof acc.announce === 'function')
+ acc.announce(toast);
+ });
+ }
+ if (plugin === 'persistence') {
+ const saved = typeof preset.install === 'function'
+ ? preset.install(this.plugins)
+ : null;
+ if (saved)
+ this.configure(saved);
+ Toast$1.on('afterClose', () => {
+ const p = preset;
+ if (typeof p.save === 'function')
+ p.save(this.getConfig());
+ });
+ }
+ }
+ else if (plugin && typeof plugin === 'object') {
+ this.plugins.register(plugin.name || 'custom', { ...plugin, ...options });
+ }
+ return this;
+ },
+ destroy() {
+ if (this._destroyed)
+ return;
+ this._destroyed = true;
+ Toast$1.trigger('beforeDestroy');
+ this.dismiss();
+ // 清理子模块
+ if (this.plugins && typeof this.plugins.destroy === 'function') {
+ this.plugins.destroy();
+ }
+ if (this.themes) {
+ if (typeof this.themes.clearThemeListeners === 'function') {
+ this.themes.clearThemeListeners();
+ }
+ if (typeof this.themes.unwatchSystemTheme === 'function') {
+ this.themes.unwatchSystemTheme();
+ }
+ }
+ if (this.i18n && typeof this.i18n.clearLocaleListeners === 'function') {
+ this.i18n.clearLocaleListeners();
+ }
+ if (this.animations && typeof this.animations.destroy === 'function') {
+ this.animations.destroy();
+ }
+ // 清理 DOM 与静态资源
+ if (typeof document !== 'undefined') {
+ const containers = document.querySelectorAll('.met-container');
+ containers.forEach((c) => { if (c.parentNode)
+ c.parentNode.removeChild(c); });
+ ['metona-toast-styles', 'metona-toast-theme-css', 'metona-toast-custom-styles', 'metona-toast-anim-styles'].forEach((id) => {
+ const el = document.getElementById(id);
+ if (el && el.parentNode)
+ el.parentNode.removeChild(el);
+ });
+ }
+ this._toasts.clear();
+ _containerCache.clear();
+ Toast$1._registry.clear();
+ // afterDestroy 必须在清理 hooks 之前触发
+ Toast$1.trigger('afterDestroy');
+ Toast$1._hooks.clear();
+ },
+ // 子模块引用(由 index.ts 注入实际实现)
+ animations: null,
+ themes: null,
+ i18n: null,
+ plugins: null,
+ presetPlugins: {},
+};
+// 连接 Toast 静态回调到 meToast 实例
+Toast$1.setCallbacks({
+ onError: (info) => {
+ const onError = meToast._config.onError;
+ if (typeof onError === 'function') {
+ try {
+ onError(info);
+ }
+ catch (_e) { /* noop */ }
+ }
+ },
+ removeToast: (id) => {
+ meToast._toasts.delete(id);
+ },
+});
+
+/**
+ * MetonaToast — 轻量级Toast通知库
+ * @module metona-toast
+ * @version 0.4.0
+ * @author thzxx
+ * @license MIT
+ */
+/**
+ * 增强的 MeToast 对象 — 在 meToast 基础上注入子模块
+ */
+const enhancedMeToast = {
+ ...meToast,
+ version: VERSION,
+ animations: animationUtils,
+ themes: themeUtils,
+ i18n: i18nUtils,
+ plugins: pluginUtils,
+ presetPlugins,
+};
+// 初始化主题和国际化
+if (typeof themeUtils.initTheme === 'function') {
+ themeUtils.initTheme();
+}
+if (typeof i18nUtils.initI18n === 'function') {
+ i18nUtils.initI18n();
+}
+// 全局钩子 — 主题/语言变化转发到 Toast 钩子系统
+if (typeof themeUtils.addThemeListener === 'function') {
+ themeUtils.addThemeListener(() => Toast$1.trigger('themeChange'));
+}
+if (typeof i18nUtils.addLocaleListener === 'function') {
+ i18nUtils.addLocaleListener(() => Toast$1.trigger('localeChange'));
+}
+// 浏览器环境全局注册
+if (typeof window !== 'undefined') {
+ window.MeToast = enhancedMeToast;
+ window.Met = enhancedMeToast;
+ // Notification API — 页面不可见时自动发送系统通知
+ const sendNotification = (toast) => {
+ try {
+ new Notification(toast.title || toast.type, { body: toast.message });
+ }
+ catch (_e) { /* noop */ }
+ };
+ enhancedMeToast._notify = (toast) => {
+ if (typeof Notification === 'undefined')
+ return;
+ if (Notification.permission === 'denied')
+ return;
+ if (!document.hidden)
+ return;
+ if (Notification.permission === 'default') {
+ Notification.requestPermission().then(p => { if (p === 'granted')
+ sendNotification(toast); });
+ return;
+ }
+ sendNotification(toast);
+ };
+ Toast$1.on('afterShow', (toast) => {
+ const config = toast.config;
+ if (config.notifyWhenHidden) {
+ (enhancedMeToast._notify)(toast);
+ }
+ });
+}
+
+/**
+ * MetonaToast React — React 适配器
+ * @module react
+ * @version 0.4.0
+ * @description useToast hook + 声明式 组件。主包保持零依赖,React 为 optional peerDependency
+ */
+const SHOW_METHODS = ['success', 'error', 'warning', 'info', 'show'];
+const showToast = (method, message, opts) => {
+ switch (method) {
+ case 'success': return enhancedMeToast.success(message, opts);
+ case 'error': return enhancedMeToast.error(message, opts);
+ case 'warning': return enhancedMeToast.warning(message, opts);
+ case 'info': return enhancedMeToast.info(message, opts);
+ default: return enhancedMeToast.show(message, opts);
+ }
+};
+/**
+ * 创建绑定清理集合的 API — 组件卸载时自动移除本组件创建的 Toast。
+ * 纯函数,便于独立测试与扩展。
+ */
+const createBoundApi = (cleanup) => {
+ const track = (fn) => {
+ const result = fn();
+ if (result && result.id)
+ cleanup.add(result.id);
+ return result;
+ };
+ const bound = {
+ ...enhancedMeToast,
+ success: (messageOrOpts, opts) => track(() => enhancedMeToast.success(messageOrOpts, opts)),
+ error: (messageOrOpts, opts) => track(() => enhancedMeToast.error(messageOrOpts, opts)),
+ warning: (messageOrOpts, opts) => track(() => enhancedMeToast.warning(messageOrOpts, opts)),
+ info: (messageOrOpts, opts) => track(() => enhancedMeToast.info(messageOrOpts, opts)),
+ show: (messageOrOpts, opts) => track(() => enhancedMeToast.show(messageOrOpts, opts)),
+ loading: (messageOrOpts, opts) => track(() => enhancedMeToast.loading(messageOrOpts, opts)),
+ // 通过 id 关闭时同步清理集合,避免卸载时重复移除
+ dismiss: (id) => {
+ if (id)
+ cleanup.delete(id);
+ return enhancedMeToast.dismiss(id);
+ },
+ removeToast: (id) => {
+ cleanup.delete(id);
+ return enhancedMeToast.removeToast(id);
+ },
+ };
+ return bound;
+};
+/**
+ * useToast — 返回 MeToast API,但本组件创建的 Toast 会在组件卸载时自动移除。
+ * 适合"通知随组件生命周期"的场景(如表单提交、异步任务页)。
+ */
+const useToast = () => {
+ const cleanupRef = useRef(new Set());
+ useEffect(() => {
+ const set = cleanupRef.current;
+ return () => {
+ set.forEach(id => enhancedMeToast.removeToast(id));
+ set.clear();
+ };
+ }, []);
+ return useMemo(() => createBoundApi(cleanupRef.current), []);
+};
+/**
+ * Toast — 声明式 Toast 组件。props 变化时更新内容(重新创建实例),
+ * 组件卸载时自动移除(autoClose 默认 true)。
+ */
+const Toast = (props) => {
+ const { message, type, autoClose = true, ...rest } = props;
+ const toastRef = useRef(null);
+ const restKey = JSON.stringify(rest);
+ useEffect(() => {
+ const method = SHOW_METHODS.includes(type) ? type : 'show';
+ toastRef.current = showToast(method, message, rest);
+ return () => {
+ if (autoClose)
+ toastRef.current?.remove();
+ toastRef.current = null;
+ };
+ // autoClose 不参与重建依赖:它只影响卸载时的清理行为
+ }, [message, type, restKey]);
+ return null;
+};
+
+export { enhancedMeToast as MeToast, Toast, createBoundApi, useToast };
+//# sourceMappingURL=react.js.map
diff --git a/dist/react.js.map b/dist/react.js.map
new file mode 100644
index 0000000..75830f1
--- /dev/null
+++ b/dist/react.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"react.js","sources":["../src/utils.ts","../src/icons.ts","../src/locales.ts","../src/constants.ts","../src/styles.ts","../src/themes.ts","../src/i18n.ts","../src/animations.ts","../src/toast.ts","../src/templates.ts","../src/plugins.ts","../src/api.ts","../src/index.ts","../src/react.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Toast","MeToast"],"mappings":"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"}
\ No newline at end of file
diff --git a/jest.config.cjs b/jest.config.cjs
index 540a431..2cc03c7 100644
--- a/jest.config.cjs
+++ b/jest.config.cjs
@@ -1,5 +1,6 @@
module.exports = {
testEnvironment: 'jsdom',
+ setupFiles: ['/tests/setup.ts'],
transform: {
'^.+\\.ts$': 'babel-jest',
},
diff --git a/package-lock.json b/package-lock.json
index 4bcd64b..33473a8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "@metona-team/metona-toast",
- "version": "0.2.0",
+ "version": "0.3.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@metona-team/metona-toast",
- "version": "0.2.0",
+ "version": "0.3.0",
"license": "MIT",
"devDependencies": {
"@babel/core": "^7.22.0",
@@ -18,6 +18,8 @@
"@rollup/plugin-terser": "^0.4.0",
"@rollup/plugin-typescript": "^11.1.6",
"@types/jest": "^29.5.0",
+ "@types/react": "^18.3.31",
+ "@types/react-dom": "^18.3.7",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"babel-jest": "^29.5.0",
@@ -25,6 +27,8 @@
"jest": "^29.5.0",
"jest-environment-jsdom": "^29.5.0",
"prettier": "^2.8.0",
+ "react": "^18.3.1",
+ "react-dom": "^18.3.1",
"rollup": "^3.20.0",
"rollup-plugin-dts": "^5.3.0",
"rollup-plugin-livereload": "^2.0.5",
@@ -34,6 +38,14 @@
},
"engines": {
"node": ">=16.0.0"
+ },
+ "peerDependencies": {
+ "react": ">=17.0.0"
+ },
+ "peerDependenciesMeta": {
+ "react": {
+ "optional": true
+ }
}
},
"node_modules/@babel/code-frame": {
@@ -2722,6 +2734,34 @@
"undici-types": ">=7.24.0 <7.24.7"
}
},
+ "node_modules/@types/prop-types": {
+ "version": "15.7.15",
+ "resolved": "https://registry.npmmirror.com/@types/prop-types/-/prop-types-15.7.15.tgz",
+ "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/react": {
+ "version": "18.3.31",
+ "resolved": "https://registry.npmmirror.com/@types/react/-/react-18.3.31.tgz",
+ "integrity": "sha512-vfEqpXTvwT91yhmwdfouStN2hSKwTvyRs8qpLfADyrq/kxDw0hZM7Wk9Ug1FELj8hIby+S/+kQCSRFF32nv2Qw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/prop-types": "*",
+ "csstype": "^3.2.2"
+ }
+ },
+ "node_modules/@types/react-dom": {
+ "version": "18.3.7",
+ "resolved": "https://registry.npmmirror.com/@types/react-dom/-/react-dom-18.3.7.tgz",
+ "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "^18.0.0"
+ }
+ },
"node_modules/@types/resolve": {
"version": "1.20.2",
"resolved": "https://registry.npmmirror.com/@types/resolve/-/resolve-1.20.2.tgz",
@@ -3810,6 +3850,13 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/csstype": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.2.3.tgz",
+ "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/data-urls": {
"version": "3.0.2",
"resolved": "https://registry.npmmirror.com/data-urls/-/data-urls-3.0.2.tgz",
@@ -6103,6 +6150,19 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/loose-envify": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmmirror.com/loose-envify/-/loose-envify-1.4.0.tgz",
+ "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "js-tokens": "^3.0.0 || ^4.0.0"
+ },
+ "bin": {
+ "loose-envify": "cli.js"
+ }
+ },
"node_modules/lru-cache": {
"version": "5.1.1",
"resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz",
@@ -6713,6 +6773,33 @@
"safe-buffer": "^5.1.0"
}
},
+ "node_modules/react": {
+ "version": "18.3.1",
+ "resolved": "https://registry.npmmirror.com/react/-/react-18.3.1.tgz",
+ "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "loose-envify": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/react-dom": {
+ "version": "18.3.1",
+ "resolved": "https://registry.npmmirror.com/react-dom/-/react-dom-18.3.1.tgz",
+ "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "loose-envify": "^1.1.0",
+ "scheduler": "^0.23.2"
+ },
+ "peerDependencies": {
+ "react": "^18.3.1"
+ }
+ },
"node_modules/react-is": {
"version": "18.3.1",
"resolved": "https://registry.npmmirror.com/react-is/-/react-is-18.3.1.tgz",
@@ -7055,6 +7142,16 @@
"node": ">=v12.22.7"
}
},
+ "node_modules/scheduler": {
+ "version": "0.23.2",
+ "resolved": "https://registry.npmmirror.com/scheduler/-/scheduler-0.23.2.tgz",
+ "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "loose-envify": "^1.1.0"
+ }
+ },
"node_modules/semver": {
"version": "6.3.1",
"resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz",
diff --git a/package.json b/package.json
index a485621..55454a6 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@metona-team/metona-toast",
- "version": "0.3.0",
+ "version": "0.4.0",
"description": "轻量、零依赖、精致美观的Toast通知库。TypeScript源码,开箱即用。",
"type": "module",
"main": "dist/metona-toast.cjs.js",
@@ -13,6 +13,19 @@
"import": "./dist/metona-toast.esm.js",
"require": "./dist/metona-toast.cjs.js",
"types": "./dist/metona-toast.d.ts"
+ },
+ "./react": {
+ "import": "./dist/react.js",
+ "require": "./dist/react.cjs.js",
+ "types": "./dist/react.d.ts"
+ }
+ },
+ "peerDependencies": {
+ "react": ">=17.0.0"
+ },
+ "peerDependenciesMeta": {
+ "react": {
+ "optional": true
}
},
"files": [
@@ -64,6 +77,8 @@
"@rollup/plugin-terser": "^0.4.0",
"@rollup/plugin-typescript": "^11.1.6",
"@types/jest": "^29.5.0",
+ "@types/react": "^18.3.31",
+ "@types/react-dom": "^18.3.7",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"babel-jest": "^29.5.0",
@@ -71,6 +86,8 @@
"jest": "^29.5.0",
"jest-environment-jsdom": "^29.5.0",
"prettier": "^2.8.0",
+ "react": "^18.3.1",
+ "react-dom": "^18.3.1",
"rollup": "^3.20.0",
"rollup-plugin-dts": "^5.3.0",
"rollup-plugin-livereload": "^2.0.5",
diff --git a/rollup.config.js b/rollup.config.js
index c08d5fd..c172ef3 100644
--- a/rollup.config.js
+++ b/rollup.config.js
@@ -103,5 +103,34 @@ export default [
},
plugins: [dts()],
},
+ // React 适配器(ESM + CJS),react 为 optional peer 外部依赖
+ {
+ input: 'src/react.ts',
+ external: ['react'],
+ output: [
+ {
+ file: 'dist/react.js',
+ format: 'es',
+ exports: 'named',
+ sourcemap: true,
+ },
+ {
+ file: 'dist/react.cjs.js',
+ format: 'cjs',
+ exports: 'named',
+ sourcemap: true,
+ },
+ ],
+ plugins: basePlugins,
+ },
+ {
+ input: 'src/react.ts',
+ external: ['react'],
+ output: {
+ file: 'dist/react.d.ts',
+ format: 'es',
+ },
+ plugins: [dts()],
+ },
]),
];
diff --git a/site/demo.html b/site/demo.html
index b5d8641..9c11f12 100644
--- a/site/demo.html
+++ b/site/demo.html
@@ -244,7 +244,7 @@
-
🛡️ onError 错误捕获 v0.3.0
+
🛡️ onError 错误捕获 v0.4.0
@@ -282,7 +282,7 @@
diff --git a/site/docs.html b/site/docs.html
index dd877b9..ae39646 100644
--- a/site/docs.html
+++ b/site/docs.html
@@ -79,6 +79,7 @@
configure()
use()
destroy()
+
React 适配器
配置参考
全部配置项
回调函数
@@ -89,7 +90,7 @@
API 文档
-MetonaToast v0.3.0 完整 API 参考。所有基础通知方法(show/success/error/warning/info/loading)支持两种调用形式,均可传入任何 配置项 作为可选第二参数。
+MetonaToast v0.4.0 完整 API 参考。所有基础通知方法(show/success/error/warning/info/loading)支持两种调用形式,均可传入任何 配置项 作为可选第二参数。
show(message, opts?)
@@ -422,13 +423,38 @@ MeToast.removeToast(t.id); // 或按
MeToast.use('keyboard'); // ESC 关闭所有 Toast
MeToast.use('persistence'); // 配置自动保存到 localStorage
-MeToast.use('accessibility'); // 屏幕阅读器实时朗读 toast 内容
-内置插件详情:keyboard 监听 keydown Escape 键;persistence 将配置写入 localStorage 并在页面加载时恢复;accessibility 在 afterShow/afterUpdate 钩子中通过 aria-live 区域朗读 toast 内容。
+MeToast.use('accessibility'); // 屏幕阅读器实时朗读 toast 内容
+MeToast.use('dedupe'); // 相同 type+message 自动去重
+内置插件详情:keyboard 监听 keydown Escape 键;persistence 将配置写入 localStorage 并在页面加载时恢复;accessibility 在 afterShow/afterUpdate 钩子中通过 aria-live 区域朗读 toast 内容;dedupe 在 beforeShow 钩子中检测相同 type+message 的已有 toast,更新它并阻止重复弹出。
destroy()
完全销毁。关闭所有 Toast、移除所有 DOM 容器和注入的样式标签、清空内存缓存。
MeToast.destroy();
+
+React 适配器
+主包保持零依赖。React 适配器通过子路径 @metona-team/metona-toast/react 导入,react 为 optional peerDependency,未使用 React 的项目不受影响。
+// 安装
+npm install @metona-team/metona-toast react
+
+// useToast — 组件卸载时自动移除本组件创建的 Toast
+import { useToast, Toast } from '@metona-team/metona-toast/react';
+
+function SubmitButton() {
+ const toast = useToast();
+ const submit = async () => {
+ const loading = toast.loading('正在提交...');
+ try { await api(); loading.success('提交成功!'); }
+ catch (e) { loading.error('提交失败'); }
+ };
+ return <button onClick={submit}>提交</button>;
+}
+
+// Toast 组件 — props 变化时更新,卸载时自动移除(autoClose 默认 true)
+function SaveIndicator({ saving }) {
+ return saving ? <Toast type="info" message="正在保存..." /> : null;
+}
+
全部配置项
以下配置可用于 configure()、init() 或单个 Toast 方法的 opts 参数。
@@ -441,7 +467,8 @@ MeToast.use('accessibility'); offset | number | 24 | 容器到屏幕边缘的距离(px) |
| pauseOnHover | boolean | true | 鼠标悬停时暂停 duration 倒计时和进度条 |
| closeOnClick | boolean | true | 点击 Toast 任意位置关闭。关闭按钮始终触发关闭 |
-| draggable | boolean | true | 允许拖拽关闭。拖拽超过 120px 触发关闭 |
+| draggable | boolean | true | 允许拖拽关闭。拖拽超过 dragThreshold 触发关闭 |
+| dragThreshold | number | 120 | 拖拽关闭阈值(px),位移超过该值松手即关闭 |
| showProgress | boolean | true | 显示 duration 倒计时进度条 |
| progressDirection | string | 'horizontal' | 进度条方向:horizontal(底部水平) / vertical(右侧垂直) |
| icon | boolean | true | 显示类型对应图标(success→对勾等) |
diff --git a/site/index.html b/site/index.html
index 648cf53..81790c6 100644
--- a/site/index.html
+++ b/site/index.html
@@ -247,7 +247,7 @@ orderGroup.dismiss(); // 一键关闭
diff --git a/src/api.ts b/src/api.ts
index c19e9e1..2e02752 100644
--- a/src/api.ts
+++ b/src/api.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast API — meToast 核心 API 对象
* @module api
- * @version 0.3.0
+ * @version 0.4.0
*/
import { Toast, _containerCache } from './toast.js';
@@ -78,7 +78,10 @@ const meToast: MeToast = {
const t = new Toast(merged);
t.create();
- this._toasts.set(t.id, t);
+ // beforeShow/onBeforeShow 拦截(返回 false)时 el 为 null,不注册幽灵实例
+ if (t.el !== null) {
+ this._toasts.set(t.id, t);
+ }
return t;
},
@@ -159,15 +162,22 @@ const meToast: MeToast = {
});
},
+ /**
+ * loading 链式转换 — 原地 update 同一实例(id 稳定,不重建 DOM)
+ * duration 从 0 恢复为默认值,使转换后的 toast 自动关闭
+ */
_resolve(loadingToast: ToastInstance, type: string, message: string, opts: ToastOptions): ToastInstance | null {
- const id = loadingToast.id;
- const old = this._toasts.get(id);
+ const old = this._toasts.get(loadingToast.id);
if (!old) return null;
- const position = old.config.position;
- old.close();
+ old.update({
+ ...opts,
+ type,
+ message,
+ duration: opts.duration ?? (old.config.duration || this._config.duration),
+ } as ToastOptions);
- return this._emit({ ...opts, type, message, position } as ToastOptions);
+ return old;
},
confirm(message: string, opts: ConfirmOptions = {}): Promise {
diff --git a/src/constants.ts b/src/constants.ts
index aca715e..e39346c 100644
--- a/src/constants.ts
+++ b/src/constants.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Constants — 常量定义
* @module constants
- * @version 0.3.0
+ * @version 0.4.0
*/
import { ICONS } from './icons.js';
@@ -12,7 +12,7 @@ export { ICONS, LOCALES };
/**
* 版本号 — 唯一来源,发布时只需修改此处
*/
-export const VERSION = '0.3.0';
+export const VERSION = '0.4.0';
/**
* 默认配置
@@ -26,6 +26,7 @@ export const DEFAULTS = Object.freeze({
pauseOnHover: true,
closeOnClick: true,
draggable: true,
+ dragThreshold: 120,
showProgress: true,
progressDirection: 'horizontal' as const,
icon: true,
diff --git a/src/i18n.ts b/src/i18n.ts
index 546213d..1efb5a4 100644
--- a/src/i18n.ts
+++ b/src/i18n.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast i18n — 国际化管理
* @module i18n
- * @version 0.3.0
+ * @version 0.4.0
*/
import { LOCALES } from './constants.js';
diff --git a/src/icons.ts b/src/icons.ts
index b8c38e4..7b0c2d7 100644
--- a/src/icons.ts
+++ b/src/icons.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Icons — 图标SVG定义
* @module icons
- * @version 0.3.0
+ * @version 0.4.0
* @description 107 个内置 SVG 图标
*/
diff --git a/src/index.ts b/src/index.ts
index 235fdab..db60f63 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast — 轻量级Toast通知库
* @module metona-toast
- * @version 0.3.0
+ * @version 0.4.0
* @author thzxx
* @license MIT
*/
diff --git a/src/locales.ts b/src/locales.ts
index 29d6dc4..6017cef 100644
--- a/src/locales.ts
+++ b/src/locales.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Locales — 国际化翻译数据
* @module locales
- * @version 0.3.0
+ * @version 0.4.0
* @description 内置 zh-CN / en-US 完整翻译
*/
diff --git a/src/plugins.ts b/src/plugins.ts
index a1a14b6..562bcae 100644
--- a/src/plugins.ts
+++ b/src/plugins.ts
@@ -1,11 +1,12 @@
/**
* MetonaToast Plugins — 插件系统
* @module plugins
- * @version 0.3.0
+ * @version 0.4.0
*/
import { t } from './i18n.js';
-import type { Plugin, PluginManager as IPluginManager, PluginUtils } from './types.js';
+import { Toast } from './toast.js';
+import type { Plugin, PluginManager as IPluginManager, PluginUtils, ToastInstance } from './types.js';
/**
* 插件管理器
@@ -176,6 +177,36 @@ const presetPlugins: Record = {
setTimeout(() => { if (el.parentNode) el.parentNode.removeChild(el); }, 3000);
},
},
+
+ /**
+ * 去重插件 — 相同 type + message 的 toast 自动合并(更新已有的一条)
+ */
+ dedupe: {
+ name: 'dedupe',
+ version: '1.0.0',
+ description: '相同类型和消息的 Toast 自动去重,更新已有实例而非重复弹出',
+ _off: null as (() => void) | null,
+
+ install(this: Plugin) {
+ const off = Toast.on('beforeShow', (toast: ToastInstance) => {
+ const existing = Array.from(Toast._registry.values()).find(
+ t => !t.closing && t.type === toast.type && t.message === toast.message
+ );
+ if (existing) {
+ existing.update({ title: toast.title || existing.title });
+ return false;
+ }
+ return undefined;
+ });
+ (this as Record)._off = off;
+ },
+
+ uninstall(this: Plugin) {
+ const off = (this as Record)._off as (() => void) | null;
+ if (off) off();
+ (this as Record)._off = null;
+ },
+ },
};
/**
diff --git a/src/react.ts b/src/react.ts
new file mode 100644
index 0000000..3dbc0d5
--- /dev/null
+++ b/src/react.ts
@@ -0,0 +1,122 @@
+/**
+ * MetonaToast React — React 适配器
+ * @module react
+ * @version 0.4.0
+ * @description useToast hook + 声明式 组件。主包保持零依赖,React 为 optional peerDependency
+ */
+
+import { useEffect, useMemo, useRef } from 'react';
+import MeToast from './index.js';
+import type { ToastInstance, ToastOptions } from './types.js';
+
+/** 支持声明式渲染的 Toast 类型 */
+export type ReactToastType = 'success' | 'error' | 'warning' | 'info' | 'show' | (string & {});
+
+export interface ToastProps extends Omit {
+ message: string;
+ type?: ReactToastType;
+ /** 组件卸载时自动移除该 Toast(默认 true)。设为 false 则 Toast 独立于组件生命周期 */
+ autoClose?: boolean;
+}
+
+const SHOW_METHODS = ['success', 'error', 'warning', 'info', 'show'] as const;
+type ShowMethod = (typeof SHOW_METHODS)[number];
+
+/** 有 id 的可追踪对象(ToastInstance / LoadingControl) */
+interface Tracked {
+ id: string;
+}
+
+const showToast = (method: ShowMethod, message: string, opts: Omit): ToastInstance => {
+ switch (method) {
+ case 'success': return MeToast.success(message, opts);
+ case 'error': return MeToast.error(message, opts);
+ case 'warning': return MeToast.warning(message, opts);
+ case 'info': return MeToast.info(message, opts);
+ default: return MeToast.show(message, opts);
+ }
+};
+
+/**
+ * 创建绑定清理集合的 API — 组件卸载时自动移除本组件创建的 Toast。
+ * 纯函数,便于独立测试与扩展。
+ */
+export const createBoundApi = (cleanup: Set): Record => {
+ const track = (fn: () => T): T => {
+ const result = fn();
+ if (result && result.id) cleanup.add(result.id);
+ return result;
+ };
+
+ const bound: Record = {
+ ...MeToast,
+
+ success: (messageOrOpts: string | ToastOptions, opts?: ToastOptions) =>
+ track(() => MeToast.success(messageOrOpts, opts)),
+ error: (messageOrOpts: string | ToastOptions, opts?: ToastOptions) =>
+ track(() => MeToast.error(messageOrOpts, opts)),
+ warning: (messageOrOpts: string | ToastOptions, opts?: ToastOptions) =>
+ track(() => MeToast.warning(messageOrOpts, opts)),
+ info: (messageOrOpts: string | ToastOptions, opts?: ToastOptions) =>
+ track(() => MeToast.info(messageOrOpts, opts)),
+ show: (messageOrOpts: string | ToastOptions, opts?: ToastOptions) =>
+ track(() => MeToast.show(messageOrOpts, opts)),
+ loading: (messageOrOpts: string | ToastOptions, opts?: ToastOptions) =>
+ track(() => MeToast.loading(messageOrOpts, opts)),
+
+ // 通过 id 关闭时同步清理集合,避免卸载时重复移除
+ dismiss: (id?: string) => {
+ if (id) cleanup.delete(id);
+ return MeToast.dismiss(id);
+ },
+ removeToast: (id: string) => {
+ cleanup.delete(id);
+ return MeToast.removeToast(id);
+ },
+ };
+
+ return bound;
+};
+
+/**
+ * useToast — 返回 MeToast API,但本组件创建的 Toast 会在组件卸载时自动移除。
+ * 适合"通知随组件生命周期"的场景(如表单提交、异步任务页)。
+ */
+export const useToast = (): Record => {
+ const cleanupRef = useRef>(new Set());
+
+ useEffect(() => {
+ const set = cleanupRef.current;
+ return () => {
+ set.forEach(id => MeToast.removeToast(id));
+ set.clear();
+ };
+ }, []);
+
+ return useMemo(() => createBoundApi(cleanupRef.current), []);
+};
+
+/**
+ * Toast — 声明式 Toast 组件。props 变化时更新内容(重新创建实例),
+ * 组件卸载时自动移除(autoClose 默认 true)。
+ */
+export const Toast = (props: ToastProps): null => {
+ const { message, type, autoClose = true, ...rest } = props;
+ const toastRef = useRef(null);
+ const restKey = JSON.stringify(rest);
+
+ useEffect(() => {
+ const method: ShowMethod = SHOW_METHODS.includes(type as ShowMethod) ? (type as ShowMethod) : 'show';
+ toastRef.current = showToast(method, message, rest);
+
+ return () => {
+ if (autoClose) toastRef.current?.remove();
+ toastRef.current = null;
+ };
+ // autoClose 不参与重建依赖:它只影响卸载时的清理行为
+ }, [message, type, restKey]);
+
+ return null;
+};
+
+export { MeToast };
diff --git a/src/styles.ts b/src/styles.ts
index 95d95ac..64aefbe 100644
--- a/src/styles.ts
+++ b/src/styles.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Styles — 样式管理
* @module styles
- * @version 0.3.0
+ * @version 0.4.0
*/
import type { ThemeConfig } from './types.js';
@@ -363,6 +363,41 @@ const generateCSS = (): string => {
transition: transform 0.1s linear;
}
+ /* RTL 镜像:进度条从右向左收缩、side 条移到右侧、类型色条翻转到右边 */
+ [dir="rtl"] .met-bar {
+ transform-origin: right;
+ }
+ [dir="rtl"] .met-side {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-progress-v {
+ left: auto;
+ right: 0;
+ border-radius: 0 12px 12px 0;
+ }
+ [dir="rtl"] .met-toast.met-success {
+ border-left-width: 1px;
+ border-right: 4px solid #10b981;
+ }
+ [dir="rtl"] .met-toast.met-error {
+ border-left-width: 1px;
+ border-right: 4px solid #ef4444;
+ }
+ [dir="rtl"] .met-toast.met-warning {
+ border-left-width: 1px;
+ border-right: 4px solid #f59e0b;
+ }
+ [dir="rtl"] .met-toast.met-info {
+ border-left-width: 1px;
+ border-right: 4px solid #3b82f6;
+ }
+ [dir="rtl"] .met-toast.met-loading {
+ border-left-width: 1px;
+ border-right: 4px solid #6366f1;
+ }
+
.met-container::-webkit-scrollbar { width: 6px; height: 6px; }
.met-container::-webkit-scrollbar-track { background: transparent; }
.met-container::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 3px; }
diff --git a/src/templates.ts b/src/templates.ts
index 4f17038..c8b7872 100644
--- a/src/templates.ts
+++ b/src/templates.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Templates — HTML 模板辅助函数
* @module templates
- * @version 0.3.0
+ * @version 0.4.0
* @description confirm / prompt / progress / action 的 DOM 模板
*/
diff --git a/src/themes.ts b/src/themes.ts
index 4d99794..cde064a 100644
--- a/src/themes.ts
+++ b/src/themes.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Themes — 主题管理
* @module themes
- * @version 0.3.0
+ * @version 0.4.0
*/
import { THEMES } from './constants.js';
diff --git a/src/toast.ts b/src/toast.ts
index 10a228c..4d49942 100644
--- a/src/toast.ts
+++ b/src/toast.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Toast — Toast 类
* @module toast
- * @version 0.3.0
+ * @version 0.4.0
*/
import { generateId, escapeHTML } from './utils.js';
@@ -204,6 +204,8 @@ export class Toast implements ToastInstance {
el.className = `met-container ${position}`;
el.setAttribute('aria-label', 'Notifications');
el.setAttribute('role', 'region');
+ // RTL 语言设置容器文字方向,使内容/关闭按钮/进度条正确镜像
+ if (isRTL) el.setAttribute('dir', 'rtl');
const posStyles: Record = {
'top-left': 'top:0;left:0;align-items:flex-start',
@@ -417,7 +419,8 @@ export class Toast implements ToastInstance {
el.releasePointerCapture(e.pointerId);
el.style.transition = '';
- if (Math.abs(dx) > 120) {
+ const threshold = this.config.dragThreshold ?? 120;
+ if (Math.abs(dx) > threshold) {
el.style.transform = `translate(${dx * 2}px, ${dy}px) rotate(${dx * 0.2}deg)`;
el.style.opacity = '0';
setTimeout(() => this.close(true), 250);
@@ -535,6 +538,18 @@ export class Toast implements ToastInstance {
content.innerHTML = `${safeTitle}${safeMessage}`;
}
+ // duration 变更:重启或停止计时器(loading 0 → N 转换、动态调整时长等场景)
+ if (partial.duration !== undefined && partial.duration !== this.config.duration) {
+ this.config.duration = partial.duration;
+ if (this.rafId !== null) cancelAnimationFrame(this.rafId);
+ this.rafId = null;
+ this.remaining = Math.max(0, partial.duration);
+ if (partial.duration > 0 && !this.paused) {
+ this.startedAt = Date.now();
+ this._startTimer();
+ }
+ }
+
// resetTimerOnUpdate: 更新内容后重置计时器
if (this.config.resetTimerOnUpdate && (this.config.duration || 0) > 0) {
if (this.rafId !== null) cancelAnimationFrame(this.rafId);
diff --git a/src/types.ts b/src/types.ts
index 69a8a1b..e02477d 100644
--- a/src/types.ts
+++ b/src/types.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast — 核心类型定义
* @module types
- * @version 0.3.0
+ * @version 0.4.0
*/
// ========== 基础类型 ==========
@@ -72,6 +72,7 @@ export interface ToastConfig {
pauseOnHover?: boolean;
closeOnClick?: boolean;
draggable?: boolean;
+ dragThreshold?: number;
showProgress?: boolean;
progressDirection?: ToastProgressDirection;
icon?: boolean;
diff --git a/src/utils.ts b/src/utils.ts
index db3b3d2..715b22e 100644
--- a/src/utils.ts
+++ b/src/utils.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast Utils — 工具函数
* @module utils
- * @version 0.3.0
+ * @version 0.4.0
*/
/**
diff --git a/tests/coverage.test.ts b/tests/coverage.test.ts
index 08fe743..5a3bf5c 100644
--- a/tests/coverage.test.ts
+++ b/tests/coverage.test.ts
@@ -1,7 +1,7 @@
/**
* MetonaToast 覆盖率补充测试 — 目标 95%+
* @module tests
- * @version 0.3.0
+ * @version 0.4.0
*/
import MeToast, { Toast, VERSION } from '../src/index';
@@ -809,7 +809,7 @@ describe('api.ts 覆盖率', () => {
test('getStatus 返回完整状态', () => {
const status = MeToast.getStatus();
- expect(status.version).toBe('0.3.0');
+ expect(status.version).toBe('0.4.0');
expect(status.toasts).toBeGreaterThanOrEqual(0);
expect(status.theme).toBeDefined();
expect(status.locale).toBeDefined();
@@ -1089,32 +1089,8 @@ describe('styles.ts 覆盖率', () => {
});
// ==================================================================
-// 9. utils.ts 覆盖率补充
+// 9. utils.ts 覆盖率补充(SSR 分支见 tests/ssr.test.ts — 独立环境隔离)
// ==================================================================
-describe('utils.ts 覆盖率', () => {
- test('escapeHTML SSR 路径(无 document)', () => {
- // 需要绕过 mock document
- const originalDoc = (global as Record).document;
- (global as Record).document = undefined;
- jest.resetModules();
- const { escapeHTML } = require('../src/utils.js');
- const result = escapeHTML('');
- expect(result).not.toContain('');
+ expect(result).not.toContain('