14 lines
401 B
TypeScript
14 lines
401 B
TypeScript
import type React from "react";
|
|
import type { WidgetProps } from "./types";
|
|
import { FallbackWidget } from "./FallbackWidget";
|
|
|
|
const registry = new Map<string, React.FC<WidgetProps>>();
|
|
|
|
export function register(kind: string, comp: React.FC<WidgetProps>) {
|
|
registry.set(kind, comp);
|
|
}
|
|
|
|
export function resolve(kind: string): React.FC<WidgetProps> {
|
|
return registry.get(kind) ?? FallbackWidget;
|
|
}
|