v0.1.30

bytedance/flowgram.aiv0.1.30May 20, 2025by xiamidaxia

AI Summary

This release introduces new node types for the fixed-layout editor including multi-inputs, multi-outputs, input, output, and break nodes. It also adds a demo playground, optimizes the form model by replacing cloneDeep with clone and adding shallowEqual checks, and fixes the form-model updateFormValues with formatOnInit.

Key Highlights

  • Added new node types: input, output, multi-inputs, multi-outputs, and break nodes for fixed-layout
  • Introduced demo playground for testing and experimentation
  • Optimized formModel.values: changed from cloneDeep to clone with shallowEqual checked
  • Added flow-select component to demo-fixed-layout-simple
  • Fixed form-model updateFormValues to properly handle formatOnInit

New Features

  • New fixed-layout node types: input, output, multi-inputs, multi-outputs, and break nodes
  • Demo playground for interactive testing
  • Flow-select component added to demo-fixed-layout-simple
  • Form model optimization with clone and shallowEqual comparison
  • Form-model fix for updateFormValues with formatOnInit

Full Release Notes

🚀 v0.1.30- Feature | Fix | Performance
📅 date:2025-05-20

## What's Changed
- feat(fixed-layout): add input/output/multi-outputs/multi-inputs/break node by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/246
- feat(demo): demo-fixed-layout-simple add flow-select  by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/246
- feat(node-engine): formModel.values cloneDeep -> clone and add shllowEuqal checked  by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/246
-  fix: form-model updateFormValues with formatOnInit  by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/246
- feat(demo): add demo playground  by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/246

## Mindmap

![20250520171534_rec_](https://github.com/user-attachments/assets/9b901eaa-7538-4015-aa79-a63c55a7534f)

```typescript
import { FlowDocumentJSON } from '@flowgram.ai/fixed-layout-editor';

export const mindmap: FlowDocumentJSON = {
  nodes: [
    {
      id: 'multiInputs_0',
      type: 'multiInputs',
      blocks: [
        {
          id: 'input_0',
          type: 'input',
        },
        {
          id: 'input_1',
          type: 'input',
        },
      ],
    },
    {
      id: 'multiOutputs_0',
      type: 'multiOutputs',
      blocks: [
        {
          id: 'output_0',
          type: 'output',
        },
        {
          id: 'multiOutputs_1',
          type: 'multiOutputs',
          blocks: [
            {
              id: 'output_1',
              type: 'output',
            },
            {
              id: 'output_2',
              type: 'output',
            },
            {
              id: 'output_3',
              type: 'output',
            },
          ],
        },
        {
          id: 'output_4',
          type: 'output',
        },
      ],
    },
  ],
};

```

## demo-playground
![20250520172414_rec_](https://github.com/user-attachments/assets/711b0cd0-82f0-458b-b227-aa5ad0d7db36)




**Full Changelog**: https://github.com/bytedance/flowgram.ai/compare/v0.1.29...v0.1.30