// Generated, do not edit. sha256:9a4b9605453795f4e63a44a3dbe52ca8e7e112a8edb0a2dcc85664207e4801cc import { DASHBOARD } from '../../shared/config.js'; import { createRegistry } from '../../shared/registry.js'; import { locked } from '../license.js'; const widgets = createRegistry('widget', { validate: (e) => { if (!DASHBOARD.WIDGETS[e.id]) throw new Error(`Unknown widget type '${e.id}'.`); }, }); export function registerWidget(type, { render, settings = null, feature = null }) { widgets.register({ id: type, render, settings, feature }); } export function availableWidgets() { const renderers = {}; const settings = {}; for (const w of widgets.list()) { if (w.feature && locked(w.feature)) continue; renderers[w.id] = w.render; if (w.settings) settings[w.id] = w.settings; } return { renderers, settings }; }