diff --git a/packages/runtime-framework/src/trunk.ts b/packages/runtime-framework/src/trunk.ts new file mode 100644 index 000000000..7ef5975ac --- /dev/null +++ b/packages/runtime-framework/src/trunk.ts @@ -0,0 +1,30 @@ +import { ComponentClass } from 'react'; + +class Trunk { + private renderer: ComponentClass | null = null; + private layouts: { [key: string]: ComponentClass } = {}; + + public registerRenderer(renderer: ComponentClass): any { + this.renderer = renderer; + } + + public registerLayout(componentName: string, Layout: ComponentClass): any { + if (!componentName || !Layout) { + return; + } + this.layouts[componentName] = Layout; + } + + public getLayout(componentName: string) { + if (!componentName) { + return; + } + return this.layouts[componentName]; + } + + public getRenderer(): ComponentClass | null { + return this.renderer; + } +} + +export default new Trunk();