UNPKG

@master/css-devtools-hook

Version:

Devtools hook for Master CSS

30 lines (25 loc) 810 B
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); const devToolsHook = { listeners: new Map(), on (event, callback) { if (!this.listeners.has(event)) { this.listeners.set(event, new Set()); } this.listeners.get(event)?.add(callback); }, off (event, callback) { this.listeners.get(event)?.delete(callback); }, emit (event, ...args) { this.listeners.get(event)?.forEach((listener)=>listener(...args)); } }; function installHook(global = globalThis) { const hook = global.__MASTER_CSS_DEVTOOLS_HOOK__; if (hook) return hook; return global.__MASTER_CSS_DEVTOOLS_HOOK__ = devToolsHook; } exports.default = devToolsHook; exports.devToolsHook = devToolsHook; exports.installHook = installHook;