UNPKG

@rsc-labs/nocto-plugin-system

Version:

Pluggable registry system for Nocto plugins

20 lines (19 loc) 505 B
class PluginRouteRegistry { constructor() { this.routesMap = new Map(); } register(pluginId, route) { const routes = Array.isArray(route) ? route : [route]; this.routesMap.set(pluginId, routes); } getMap() { return this.routesMap; } getAll() { return Array.from(this.routesMap.values()).flat(); } getPluginsIds() { return Array.from(this.routesMap.keys()); } } export const RouteRegistry = new PluginRouteRegistry();