UNPKG

beaverjs

Version:

An abstraction around WebExtension messaging

22 lines (19 loc) 489 B
export function assert(condition: any, message: string) { if (!condition) { throw new Error(message); } } export function tryParse(data: string, fallback: any = undefined) { if (!data) return fallback; try { return JSON.parse(data); } catch { return fallback; } } export function* filterMap<T, M>(array: Iterable<T>, fn: (item: T) => M | null): Iterable<M> { for (const item of array) { const result = fn(item); if (result !== null) yield result; } }