helpers.ts 712 B

1234567891011121314151617181920212223242526272829
  1. /**
  2. * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
  3. * SPDX-License-Identifier: MIT
  4. */
  5. import { FlowNodeFormData } from '@flowgram.ai/form-core';
  6. import { FlowNodeEntity } from '@flowgram.ai/document';
  7. import { DataEvent } from './types';
  8. import { FormModelV2 } from './form-model-v2';
  9. export function getFormModel(node: FlowNodeEntity) {
  10. // @ts-ignore
  11. return node.getData<FlowNodeFormData>(FlowNodeFormData)?.formModel as FormModelV2;
  12. }
  13. export function isFormV2(node: FlowNodeEntity) {
  14. return !!node.getNodeRegistry().formMeta?.render;
  15. }
  16. export function createEffectOptions<T>(
  17. event: DataEvent,
  18. effect: T
  19. ): { effect: T; event: DataEvent } {
  20. return {
  21. event,
  22. effect,
  23. };
  24. }