@flowgram.ai/node-core-plugin 0.2.16 → 0.2.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/create-node-core-plugin.ts","../../src/utils.ts"],"sourcesContent":["import { FormModelV2 } from '@flowgram.ai/node';\nimport {\n createNodeContainerModules,\n createNodeEntityDatas,\n FlowNodeFormData,\n FormManager,\n NodeManager,\n} from '@flowgram.ai/form-core';\nimport { FlowDocument, FlowNodeEntity } from '@flowgram.ai/document';\nimport { definePluginCreator, EntityManager } from '@flowgram.ai/core';\n\nimport { registerNodeMaterial } from './utils';\nimport { NodeEngineMaterialOptions } from './types';\n\nexport interface NodeCorePluginOptions {\n materials?: NodeEngineMaterialOptions;\n}\n\nexport const createNodeCorePlugin = definePluginCreator<NodeCorePluginOptions>({\n onInit(ctx, options) {\n /**\n * 注册NodeEngine 相关 EntityData 到flowDocument\n */\n ctx.get<FlowDocument>(FlowDocument).registerNodeDatas(...createNodeEntityDatas());\n\n const formModelFactory = (entity: FlowNodeEntity) => new FormModelV2(entity);\n const entityManager = ctx.get<EntityManager>(EntityManager);\n entityManager.registerEntityData(\n FlowNodeFormData,\n () =>\n ({\n formModelFactory: formModelFactory,\n } as any)\n );\n\n if (!options.materials) {\n return;\n }\n\n const nodeManager = ctx.get<NodeManager>(NodeManager);\n const formManager = ctx.get<FormManager>(FormManager);\n\n if (!nodeManager || !formManager) {\n throw new Error('NodeCorePlugin Error: nodeManager or formManager not found');\n }\n\n registerNodeMaterial({ nodeManager, formManager, material: options.materials! });\n },\n onDispose(ctx) {\n ctx.get<FormManager>(FormManager)?.dispose();\n },\n containerModules: createNodeContainerModules(),\n // onBind: ({ bind }) => {\n // bindContributions(bind, FormNodeContribution, [NodeContribution]);\n // },\n});\n","import {\n DecoratorAbility,\n DecoratorExtension,\n EffectAbility,\n EffectExtension,\n FormManager,\n NodeManager,\n registerNodeErrorRender,\n registerNodePlaceholderRender,\n SetterAbility,\n SetterExtension,\n ValidationAbility,\n ValidationExtension,\n} from '@flowgram.ai/form-core';\n\nimport { NodeEngineMaterialOptions } from './types';\n\ninterface RegisterNodeMaterialProps {\n nodeManager: NodeManager;\n formManager: FormManager;\n material: NodeEngineMaterialOptions;\n}\n\nexport function registerNodeMaterial({\n nodeManager,\n formManager,\n material,\n}: RegisterNodeMaterialProps) {\n const {\n setters = [],\n decorators = [],\n effects = [],\n validators = [],\n nodeErrorRender,\n nodePlaceholderRender,\n } = material;\n\n if (nodeErrorRender) {\n registerNodeErrorRender(nodeManager, nodeErrorRender);\n }\n if (nodePlaceholderRender) {\n registerNodePlaceholderRender(nodeManager, nodePlaceholderRender);\n }\n setters.forEach((setter: SetterExtension) => {\n formManager.registerAbilityExtension(SetterAbility.type, setter);\n });\n decorators.forEach((decorator: DecoratorExtension) => {\n formManager.registerAbilityExtension(DecoratorAbility.type, decorator);\n });\n effects.forEach((effect: EffectExtension) => {\n formManager.registerAbilityExtension(EffectAbility.type, effect);\n });\n validators.forEach((validator: ValidationExtension) => {\n formManager.registerAbilityExtension(ValidationAbility.type, validator);\n });\n}\n"],"mappings":";AAAA,SAAS,mBAAmB;AAC5B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAAA;AAAA,EACA,eAAAC;AAAA,OACK;AACP,SAAS,oBAAoC;AAC7C,SAAS,qBAAqB,qBAAqB;;;ACTnD;AAAA,EACE;AAAA,EAEA;AAAA,EAIA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OAEK;AAUA,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM;AAAA,IACJ,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,MAAI,iBAAiB;AACnB,4BAAwB,aAAa,eAAe;AAAA,EACtD;AACA,MAAI,uBAAuB;AACzB,kCAA8B,aAAa,qBAAqB;AAAA,EAClE;AACA,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,cAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAkC;AACpD,gBAAY,yBAAyB,iBAAiB,MAAM,SAAS;AAAA,EACvE,CAAC;AACD,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,cAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAmC;AACrD,gBAAY,yBAAyB,kBAAkB,MAAM,SAAS;AAAA,EACxE,CAAC;AACH;;;ADrCO,IAAM,uBAAuB,oBAA2C;AAAA,EAC7E,OAAO,KAAK,SAAS;AAInB,QAAI,IAAkB,YAAY,EAAE,kBAAkB,GAAG,sBAAsB,CAAC;AAEhF,UAAM,mBAAmB,CAAC,WAA2B,IAAI,YAAY,MAAM;AAC3E,UAAM,gBAAgB,IAAI,IAAmB,aAAa;AAC1D,kBAAc;AAAA,MACZ;AAAA,MACA,OACG;AAAA,QACC;AAAA,MACF;AAAA,IACJ;AAEA,QAAI,CAAC,QAAQ,WAAW;AACtB;AAAA,IACF;AAEA,UAAM,cAAc,IAAI,IAAiBC,YAAW;AACpD,UAAM,cAAc,IAAI,IAAiBC,YAAW;AAEpD,QAAI,CAAC,eAAe,CAAC,aAAa;AAChC,YAAM,IAAI,MAAM,4DAA4D;AAAA,IAC9E;AAEA,yBAAqB,EAAE,aAAa,aAAa,UAAU,QAAQ,UAAW,CAAC;AAAA,EACjF;AAAA,EACA,UAAU,KAAK;AACb,QAAI,IAAiBA,YAAW,GAAG,QAAQ;AAAA,EAC7C;AAAA,EACA,kBAAkB,2BAA2B;AAAA;AAAA;AAAA;AAI/C,CAAC;","names":["FormManager","NodeManager","NodeManager","FormManager"]}
1
+ {"version":3,"sources":["../../src/create-node-core-plugin.ts","../../src/utils.ts"],"sourcesContent":["/**\n * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n * SPDX-License-Identifier: MIT\n */\n\nimport { FormModelV2 } from '@flowgram.ai/node';\nimport {\n createNodeContainerModules,\n createNodeEntityDatas,\n FlowNodeFormData,\n FormManager,\n NodeManager,\n} from '@flowgram.ai/form-core';\nimport { FlowDocument, FlowNodeEntity } from '@flowgram.ai/document';\nimport { definePluginCreator, EntityManager } from '@flowgram.ai/core';\n\nimport { registerNodeMaterial } from './utils';\nimport { NodeEngineMaterialOptions } from './types';\n\nexport interface NodeCorePluginOptions {\n materials?: NodeEngineMaterialOptions;\n}\n\nexport const createNodeCorePlugin = definePluginCreator<NodeCorePluginOptions>({\n onInit(ctx, options) {\n /**\n * 注册NodeEngine 相关 EntityData 到flowDocument\n */\n ctx.get<FlowDocument>(FlowDocument).registerNodeDatas(...createNodeEntityDatas());\n\n const formModelFactory = (entity: FlowNodeEntity) => new FormModelV2(entity);\n const entityManager = ctx.get<EntityManager>(EntityManager);\n entityManager.registerEntityData(\n FlowNodeFormData,\n () =>\n ({\n formModelFactory: formModelFactory,\n } as any)\n );\n\n if (!options.materials) {\n return;\n }\n\n const nodeManager = ctx.get<NodeManager>(NodeManager);\n const formManager = ctx.get<FormManager>(FormManager);\n\n if (!nodeManager || !formManager) {\n throw new Error('NodeCorePlugin Error: nodeManager or formManager not found');\n }\n\n registerNodeMaterial({ nodeManager, formManager, material: options.materials! });\n },\n onDispose(ctx) {\n ctx.get<FormManager>(FormManager)?.dispose();\n },\n containerModules: createNodeContainerModules(),\n // onBind: ({ bind }) => {\n // bindContributions(bind, FormNodeContribution, [NodeContribution]);\n // },\n});\n","/**\n * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n * SPDX-License-Identifier: MIT\n */\n\nimport {\n DecoratorAbility,\n DecoratorExtension,\n EffectAbility,\n EffectExtension,\n FormManager,\n NodeManager,\n registerNodeErrorRender,\n registerNodePlaceholderRender,\n SetterAbility,\n SetterExtension,\n ValidationAbility,\n ValidationExtension,\n} from '@flowgram.ai/form-core';\n\nimport { NodeEngineMaterialOptions } from './types';\n\ninterface RegisterNodeMaterialProps {\n nodeManager: NodeManager;\n formManager: FormManager;\n material: NodeEngineMaterialOptions;\n}\n\nexport function registerNodeMaterial({\n nodeManager,\n formManager,\n material,\n}: RegisterNodeMaterialProps) {\n const {\n setters = [],\n decorators = [],\n effects = [],\n validators = [],\n nodeErrorRender,\n nodePlaceholderRender,\n } = material;\n\n if (nodeErrorRender) {\n registerNodeErrorRender(nodeManager, nodeErrorRender);\n }\n if (nodePlaceholderRender) {\n registerNodePlaceholderRender(nodeManager, nodePlaceholderRender);\n }\n setters.forEach((setter: SetterExtension) => {\n formManager.registerAbilityExtension(SetterAbility.type, setter);\n });\n decorators.forEach((decorator: DecoratorExtension) => {\n formManager.registerAbilityExtension(DecoratorAbility.type, decorator);\n });\n effects.forEach((effect: EffectExtension) => {\n formManager.registerAbilityExtension(EffectAbility.type, effect);\n });\n validators.forEach((validator: ValidationExtension) => {\n formManager.registerAbilityExtension(ValidationAbility.type, validator);\n });\n}\n"],"mappings":";AAKA,SAAS,mBAAmB;AAC5B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAAA;AAAA,EACA,eAAAC;AAAA,OACK;AACP,SAAS,oBAAoC;AAC7C,SAAS,qBAAqB,qBAAqB;;;ACTnD;AAAA,EACE;AAAA,EAEA;AAAA,EAIA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OAEK;AAUA,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM;AAAA,IACJ,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,MAAI,iBAAiB;AACnB,4BAAwB,aAAa,eAAe;AAAA,EACtD;AACA,MAAI,uBAAuB;AACzB,kCAA8B,aAAa,qBAAqB;AAAA,EAClE;AACA,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,cAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAkC;AACpD,gBAAY,yBAAyB,iBAAiB,MAAM,SAAS;AAAA,EACvE,CAAC;AACD,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,cAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAmC;AACrD,gBAAY,yBAAyB,kBAAkB,MAAM,SAAS;AAAA,EACxE,CAAC;AACH;;;ADrCO,IAAM,uBAAuB,oBAA2C;AAAA,EAC7E,OAAO,KAAK,SAAS;AAInB,QAAI,IAAkB,YAAY,EAAE,kBAAkB,GAAG,sBAAsB,CAAC;AAEhF,UAAM,mBAAmB,CAAC,WAA2B,IAAI,YAAY,MAAM;AAC3E,UAAM,gBAAgB,IAAI,IAAmB,aAAa;AAC1D,kBAAc;AAAA,MACZ;AAAA,MACA,OACG;AAAA,QACC;AAAA,MACF;AAAA,IACJ;AAEA,QAAI,CAAC,QAAQ,WAAW;AACtB;AAAA,IACF;AAEA,UAAM,cAAc,IAAI,IAAiBC,YAAW;AACpD,UAAM,cAAc,IAAI,IAAiBC,YAAW;AAEpD,QAAI,CAAC,eAAe,CAAC,aAAa;AAChC,YAAM,IAAI,MAAM,4DAA4D;AAAA,IAC9E;AAEA,yBAAqB,EAAE,aAAa,aAAa,UAAU,QAAQ,UAAW,CAAC;AAAA,EACjF;AAAA,EACA,UAAU,KAAK;AACb,QAAI,IAAiBA,YAAW,GAAG,QAAQ;AAAA,EAC7C;AAAA,EACA,kBAAkB,2BAA2B;AAAA;AAAA;AAAA;AAI/C,CAAC;","names":["FormManager","NodeManager","NodeManager","FormManager"]}
package/dist/index.d.mts CHANGED
@@ -1,6 +1,11 @@
1
1
  import * as _flowgram_ai_core from '@flowgram.ai/core';
2
2
  import { SetterExtension, DecoratorExtension, EffectExtension, ValidationExtension, NodeErrorRender, NodePlaceholderRender, NodeManager, FormManager } from '@flowgram.ai/form-core';
3
3
 
4
+ /**
5
+ * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
6
+ * SPDX-License-Identifier: MIT
7
+ */
8
+
4
9
  interface NodeEngineMaterialOptions {
5
10
  /**
6
11
  * 节点项的渲染物料
@@ -33,6 +38,11 @@ interface NodeCorePluginOptions {
33
38
  }
34
39
  declare const createNodeCorePlugin: _flowgram_ai_core.PluginCreator<NodeCorePluginOptions>;
35
40
 
41
+ /**
42
+ * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
43
+ * SPDX-License-Identifier: MIT
44
+ */
45
+
36
46
  interface RegisterNodeMaterialProps {
37
47
  nodeManager: NodeManager;
38
48
  formManager: FormManager;
package/dist/index.d.ts CHANGED
@@ -1,6 +1,11 @@
1
1
  import * as _flowgram_ai_core from '@flowgram.ai/core';
2
2
  import { SetterExtension, DecoratorExtension, EffectExtension, ValidationExtension, NodeErrorRender, NodePlaceholderRender, NodeManager, FormManager } from '@flowgram.ai/form-core';
3
3
 
4
+ /**
5
+ * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
6
+ * SPDX-License-Identifier: MIT
7
+ */
8
+
4
9
  interface NodeEngineMaterialOptions {
5
10
  /**
6
11
  * 节点项的渲染物料
@@ -33,6 +38,11 @@ interface NodeCorePluginOptions {
33
38
  }
34
39
  declare const createNodeCorePlugin: _flowgram_ai_core.PluginCreator<NodeCorePluginOptions>;
35
40
 
41
+ /**
42
+ * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
43
+ * SPDX-License-Identifier: MIT
44
+ */
45
+
36
46
  interface RegisterNodeMaterialProps {
37
47
  nodeManager: NodeManager;
38
48
  formManager: FormManager;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/create-node-core-plugin.ts","../src/utils.ts"],"sourcesContent":["export * from './create-node-core-plugin';\nexport * from './utils';\nexport * from './types';\n","import { FormModelV2 } from '@flowgram.ai/node';\nimport {\n createNodeContainerModules,\n createNodeEntityDatas,\n FlowNodeFormData,\n FormManager,\n NodeManager,\n} from '@flowgram.ai/form-core';\nimport { FlowDocument, FlowNodeEntity } from '@flowgram.ai/document';\nimport { definePluginCreator, EntityManager } from '@flowgram.ai/core';\n\nimport { registerNodeMaterial } from './utils';\nimport { NodeEngineMaterialOptions } from './types';\n\nexport interface NodeCorePluginOptions {\n materials?: NodeEngineMaterialOptions;\n}\n\nexport const createNodeCorePlugin = definePluginCreator<NodeCorePluginOptions>({\n onInit(ctx, options) {\n /**\n * 注册NodeEngine 相关 EntityData 到flowDocument\n */\n ctx.get<FlowDocument>(FlowDocument).registerNodeDatas(...createNodeEntityDatas());\n\n const formModelFactory = (entity: FlowNodeEntity) => new FormModelV2(entity);\n const entityManager = ctx.get<EntityManager>(EntityManager);\n entityManager.registerEntityData(\n FlowNodeFormData,\n () =>\n ({\n formModelFactory: formModelFactory,\n } as any)\n );\n\n if (!options.materials) {\n return;\n }\n\n const nodeManager = ctx.get<NodeManager>(NodeManager);\n const formManager = ctx.get<FormManager>(FormManager);\n\n if (!nodeManager || !formManager) {\n throw new Error('NodeCorePlugin Error: nodeManager or formManager not found');\n }\n\n registerNodeMaterial({ nodeManager, formManager, material: options.materials! });\n },\n onDispose(ctx) {\n ctx.get<FormManager>(FormManager)?.dispose();\n },\n containerModules: createNodeContainerModules(),\n // onBind: ({ bind }) => {\n // bindContributions(bind, FormNodeContribution, [NodeContribution]);\n // },\n});\n","import {\n DecoratorAbility,\n DecoratorExtension,\n EffectAbility,\n EffectExtension,\n FormManager,\n NodeManager,\n registerNodeErrorRender,\n registerNodePlaceholderRender,\n SetterAbility,\n SetterExtension,\n ValidationAbility,\n ValidationExtension,\n} from '@flowgram.ai/form-core';\n\nimport { NodeEngineMaterialOptions } from './types';\n\ninterface RegisterNodeMaterialProps {\n nodeManager: NodeManager;\n formManager: FormManager;\n material: NodeEngineMaterialOptions;\n}\n\nexport function registerNodeMaterial({\n nodeManager,\n formManager,\n material,\n}: RegisterNodeMaterialProps) {\n const {\n setters = [],\n decorators = [],\n effects = [],\n validators = [],\n nodeErrorRender,\n nodePlaceholderRender,\n } = material;\n\n if (nodeErrorRender) {\n registerNodeErrorRender(nodeManager, nodeErrorRender);\n }\n if (nodePlaceholderRender) {\n registerNodePlaceholderRender(nodeManager, nodePlaceholderRender);\n }\n setters.forEach((setter: SetterExtension) => {\n formManager.registerAbilityExtension(SetterAbility.type, setter);\n });\n decorators.forEach((decorator: DecoratorExtension) => {\n formManager.registerAbilityExtension(DecoratorAbility.type, decorator);\n });\n effects.forEach((effect: EffectExtension) => {\n formManager.registerAbilityExtension(EffectAbility.type, effect);\n });\n validators.forEach((validator: ValidationExtension) => {\n formManager.registerAbilityExtension(ValidationAbility.type, validator);\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,kBAA4B;AAC5B,IAAAA,oBAMO;AACP,sBAA6C;AAC7C,kBAAmD;;;ACTnD,uBAaO;AAUA,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM;AAAA,IACJ,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,MAAI,iBAAiB;AACnB,kDAAwB,aAAa,eAAe;AAAA,EACtD;AACA,MAAI,uBAAuB;AACzB,wDAA8B,aAAa,qBAAqB;AAAA,EAClE;AACA,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,+BAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAkC;AACpD,gBAAY,yBAAyB,kCAAiB,MAAM,SAAS;AAAA,EACvE,CAAC;AACD,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,+BAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAmC;AACrD,gBAAY,yBAAyB,mCAAkB,MAAM,SAAS;AAAA,EACxE,CAAC;AACH;;;ADrCO,IAAM,2BAAuB,iCAA2C;AAAA,EAC7E,OAAO,KAAK,SAAS;AAInB,QAAI,IAAkB,4BAAY,EAAE,kBAAkB,OAAG,yCAAsB,CAAC;AAEhF,UAAM,mBAAmB,CAAC,WAA2B,IAAI,wBAAY,MAAM;AAC3E,UAAM,gBAAgB,IAAI,IAAmB,yBAAa;AAC1D,kBAAc;AAAA,MACZ;AAAA,MACA,OACG;AAAA,QACC;AAAA,MACF;AAAA,IACJ;AAEA,QAAI,CAAC,QAAQ,WAAW;AACtB;AAAA,IACF;AAEA,UAAM,cAAc,IAAI,IAAiB,6BAAW;AACpD,UAAM,cAAc,IAAI,IAAiB,6BAAW;AAEpD,QAAI,CAAC,eAAe,CAAC,aAAa;AAChC,YAAM,IAAI,MAAM,4DAA4D;AAAA,IAC9E;AAEA,yBAAqB,EAAE,aAAa,aAAa,UAAU,QAAQ,UAAW,CAAC;AAAA,EACjF;AAAA,EACA,UAAU,KAAK;AACb,QAAI,IAAiB,6BAAW,GAAG,QAAQ;AAAA,EAC7C;AAAA,EACA,sBAAkB,8CAA2B;AAAA;AAAA;AAAA;AAI/C,CAAC;","names":["import_form_core"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/create-node-core-plugin.ts","../src/utils.ts"],"sourcesContent":["/**\n * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n * SPDX-License-Identifier: MIT\n */\n\nexport * from './create-node-core-plugin';\nexport * from './utils';\nexport * from './types';\n","/**\n * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n * SPDX-License-Identifier: MIT\n */\n\nimport { FormModelV2 } from '@flowgram.ai/node';\nimport {\n createNodeContainerModules,\n createNodeEntityDatas,\n FlowNodeFormData,\n FormManager,\n NodeManager,\n} from '@flowgram.ai/form-core';\nimport { FlowDocument, FlowNodeEntity } from '@flowgram.ai/document';\nimport { definePluginCreator, EntityManager } from '@flowgram.ai/core';\n\nimport { registerNodeMaterial } from './utils';\nimport { NodeEngineMaterialOptions } from './types';\n\nexport interface NodeCorePluginOptions {\n materials?: NodeEngineMaterialOptions;\n}\n\nexport const createNodeCorePlugin = definePluginCreator<NodeCorePluginOptions>({\n onInit(ctx, options) {\n /**\n * 注册NodeEngine 相关 EntityData 到flowDocument\n */\n ctx.get<FlowDocument>(FlowDocument).registerNodeDatas(...createNodeEntityDatas());\n\n const formModelFactory = (entity: FlowNodeEntity) => new FormModelV2(entity);\n const entityManager = ctx.get<EntityManager>(EntityManager);\n entityManager.registerEntityData(\n FlowNodeFormData,\n () =>\n ({\n formModelFactory: formModelFactory,\n } as any)\n );\n\n if (!options.materials) {\n return;\n }\n\n const nodeManager = ctx.get<NodeManager>(NodeManager);\n const formManager = ctx.get<FormManager>(FormManager);\n\n if (!nodeManager || !formManager) {\n throw new Error('NodeCorePlugin Error: nodeManager or formManager not found');\n }\n\n registerNodeMaterial({ nodeManager, formManager, material: options.materials! });\n },\n onDispose(ctx) {\n ctx.get<FormManager>(FormManager)?.dispose();\n },\n containerModules: createNodeContainerModules(),\n // onBind: ({ bind }) => {\n // bindContributions(bind, FormNodeContribution, [NodeContribution]);\n // },\n});\n","/**\n * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n * SPDX-License-Identifier: MIT\n */\n\nimport {\n DecoratorAbility,\n DecoratorExtension,\n EffectAbility,\n EffectExtension,\n FormManager,\n NodeManager,\n registerNodeErrorRender,\n registerNodePlaceholderRender,\n SetterAbility,\n SetterExtension,\n ValidationAbility,\n ValidationExtension,\n} from '@flowgram.ai/form-core';\n\nimport { NodeEngineMaterialOptions } from './types';\n\ninterface RegisterNodeMaterialProps {\n nodeManager: NodeManager;\n formManager: FormManager;\n material: NodeEngineMaterialOptions;\n}\n\nexport function registerNodeMaterial({\n nodeManager,\n formManager,\n material,\n}: RegisterNodeMaterialProps) {\n const {\n setters = [],\n decorators = [],\n effects = [],\n validators = [],\n nodeErrorRender,\n nodePlaceholderRender,\n } = material;\n\n if (nodeErrorRender) {\n registerNodeErrorRender(nodeManager, nodeErrorRender);\n }\n if (nodePlaceholderRender) {\n registerNodePlaceholderRender(nodeManager, nodePlaceholderRender);\n }\n setters.forEach((setter: SetterExtension) => {\n formManager.registerAbilityExtension(SetterAbility.type, setter);\n });\n decorators.forEach((decorator: DecoratorExtension) => {\n formManager.registerAbilityExtension(DecoratorAbility.type, decorator);\n });\n effects.forEach((effect: EffectExtension) => {\n formManager.registerAbilityExtension(EffectAbility.type, effect);\n });\n validators.forEach((validator: ValidationExtension) => {\n formManager.registerAbilityExtension(ValidationAbility.type, validator);\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACKA,kBAA4B;AAC5B,IAAAA,oBAMO;AACP,sBAA6C;AAC7C,kBAAmD;;;ACTnD,uBAaO;AAUA,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM;AAAA,IACJ,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd,UAAU,CAAC;AAAA,IACX,aAAa,CAAC;AAAA,IACd;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,MAAI,iBAAiB;AACnB,kDAAwB,aAAa,eAAe;AAAA,EACtD;AACA,MAAI,uBAAuB;AACzB,wDAA8B,aAAa,qBAAqB;AAAA,EAClE;AACA,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,+BAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAkC;AACpD,gBAAY,yBAAyB,kCAAiB,MAAM,SAAS;AAAA,EACvE,CAAC;AACD,UAAQ,QAAQ,CAAC,WAA4B;AAC3C,gBAAY,yBAAyB,+BAAc,MAAM,MAAM;AAAA,EACjE,CAAC;AACD,aAAW,QAAQ,CAAC,cAAmC;AACrD,gBAAY,yBAAyB,mCAAkB,MAAM,SAAS;AAAA,EACxE,CAAC;AACH;;;ADrCO,IAAM,2BAAuB,iCAA2C;AAAA,EAC7E,OAAO,KAAK,SAAS;AAInB,QAAI,IAAkB,4BAAY,EAAE,kBAAkB,OAAG,yCAAsB,CAAC;AAEhF,UAAM,mBAAmB,CAAC,WAA2B,IAAI,wBAAY,MAAM;AAC3E,UAAM,gBAAgB,IAAI,IAAmB,yBAAa;AAC1D,kBAAc;AAAA,MACZ;AAAA,MACA,OACG;AAAA,QACC;AAAA,MACF;AAAA,IACJ;AAEA,QAAI,CAAC,QAAQ,WAAW;AACtB;AAAA,IACF;AAEA,UAAM,cAAc,IAAI,IAAiB,6BAAW;AACpD,UAAM,cAAc,IAAI,IAAiB,6BAAW;AAEpD,QAAI,CAAC,eAAe,CAAC,aAAa;AAChC,YAAM,IAAI,MAAM,4DAA4D;AAAA,IAC9E;AAEA,yBAAqB,EAAE,aAAa,aAAa,UAAU,QAAQ,UAAW,CAAC;AAAA,EACjF;AAAA,EACA,UAAU,KAAK;AACb,QAAI,IAAiB,6BAAW,GAAG,QAAQ;AAAA,EAC7C;AAAA,EACA,sBAAkB,8CAA2B;AAAA;AAAA;AAAA;AAI/C,CAAC;","names":["import_form_core"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowgram.ai/node-core-plugin",
3
- "version": "0.2.16",
3
+ "version": "0.2.17",
4
4
  "homepage": "https://flowgram.ai/",
5
5
  "repository": "https://github.com/bytedance/flowgram.ai",
6
6
  "license": "MIT",
@@ -18,12 +18,12 @@
18
18
  "dependencies": {
19
19
  "inversify": "^6.0.1",
20
20
  "reflect-metadata": "~0.2.2",
21
- "@flowgram.ai/core": "0.2.16",
22
- "@flowgram.ai/form-core": "0.2.16",
23
- "@flowgram.ai/node": "0.2.16",
24
- "@flowgram.ai/utils": "0.2.16",
25
- "@flowgram.ai/renderer": "0.2.16",
26
- "@flowgram.ai/document": "0.2.16"
21
+ "@flowgram.ai/core": "0.2.17",
22
+ "@flowgram.ai/form-core": "0.2.17",
23
+ "@flowgram.ai/document": "0.2.17",
24
+ "@flowgram.ai/node": "0.2.17",
25
+ "@flowgram.ai/renderer": "0.2.17",
26
+ "@flowgram.ai/utils": "0.2.17"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@types/bezier-js": "4.1.3",
@@ -39,8 +39,8 @@
39
39
  "tsup": "^8.0.1",
40
40
  "typescript": "^5.0.4",
41
41
  "vitest": "^0.34.6",
42
- "@flowgram.ai/eslint-config": "0.2.16",
43
- "@flowgram.ai/ts-config": "0.2.16"
42
+ "@flowgram.ai/eslint-config": "0.2.17",
43
+ "@flowgram.ai/ts-config": "0.2.17"
44
44
  },
45
45
  "peerDependencies": {
46
46
  "react": ">=16.8",