xiamidaxia 766fdc1597
fix: flowDocument fromJSON will reload the node json data (#240)
* fix: flowDocument fromJSON update node data

* feat: getNodeForm add updateFormValues
2025-05-16 12:25:26 +00:00

32 lines
960 B
TypeScript

import { interfaces } from 'inversify';
import {
createPlaygroundContainer,
Playground,
loadPlugins,
PluginContext,
createPluginContextDefault,
FlowDocument,
} from '@flowgram.ai/editor';
import { FreeLayoutPluginContext, FreeLayoutProps, createFreeLayoutPreset } from '../src';
export function createEditor(opts: FreeLayoutProps): interfaces.Container {
const container = createPlaygroundContainer();
const playground = container.get(Playground);
const preset = createFreeLayoutPreset(opts);
const customPluginContext = (container: interfaces.Container) =>
({
...createPluginContextDefault(container),
get document(): FlowDocument {
return container.get<FlowDocument>(FlowDocument);
},
} as FreeLayoutPluginContext);
const ctx = customPluginContext(container);
container.rebind(PluginContext).toConstantValue(ctx);
loadPlugins(preset(ctx), container);
playground.init();
return container;
}