1 import {LexicalEditor} from "lexical";
2 import {getMainEditorFullToolbar} from "./toolbars";
3 import {EditorUIManager} from "./framework/manager";
4 import {image as imageFormDefinition, link as linkFormDefinition, source as sourceFormDefinition} from "./defaults/form-definitions";
5 import {ImageDecorator} from "./decorators/image";
6 import {EditorUiContext} from "./framework/core";
8 export function buildEditorUI(element: HTMLElement, editor: LexicalEditor) {
9 const manager = new EditorUIManager();
10 const context: EditorUiContext = {
14 translate: (text: string): string => text,
17 manager.setContext(context);
19 // Create primary toolbar
20 manager.setToolbar(getMainEditorFullToolbar());
23 manager.registerModal('link', {
24 title: 'Insert/Edit link',
25 form: linkFormDefinition,
27 manager.registerModal('image', {
28 title: 'Insert/Edit Image',
29 form: imageFormDefinition
31 manager.registerModal('source', {
33 form: sourceFormDefinition,
36 // Register image decorator listener
37 manager.registerDecoratorType('image', ImageDecorator);