UNPKG

@equinor/mad-toast

Version:

Toast package built on top of `react-native-toast-message`

33 lines (31 loc) 799 B
// src/queue.ts var _ToastQueue = class _ToastQueue { }; _ToastQueue.queue = []; _ToastQueue.subscribers = /* @__PURE__ */ new Set(); _ToastQueue.emitChange = () => { for (const subscriber of _ToastQueue.subscribers) { subscriber(); } }; _ToastQueue.subscribe = (subscriber) => { _ToastQueue.subscribers.add(subscriber); return () => { _ToastQueue.subscribers.delete(subscriber); }; }; _ToastQueue.getSnapshot = () => _ToastQueue.queue; _ToastQueue.enqueue = (item) => { _ToastQueue.queue = [..._ToastQueue.queue, item]; _ToastQueue.emitChange(); }; _ToastQueue.shift = () => { const toast = _ToastQueue.queue.at(0); _ToastQueue.queue = [..._ToastQueue.queue.slice(1)]; _ToastQueue.emitChange(); return toast; }; var ToastQueue = _ToastQueue; export { ToastQueue };