v0.4.15

bytedance/flowgram.aiv0.4.15Sep 15, 2025by dragooncjw

AI Summary

This release adds significant runtime capabilities including support for map and datetime types, global variables, default values, and condition else branches. It also introduces a new PanelManagerPlugin, enables multi-node snapping by default, and includes several breaking changes to core APIs.

Key Highlights

  • Runtime now supports map & datetime types, global variables, and default values
  • Added condition else branch support in runtime
  • Introduced PanelManagerPlugin for panel management
  • Enabled multi-node snapping by default
  • Breaking: Removed usePlaygroundLatest() and Playground.getLatest() APIs

Breaking Changes

  • Removed usePlaygroundLatest() and Playground.getLatest() methods from core
  • Replaced playground.config.clientX and clientY with config.getClientBounds()
  • Renamed 'condition operation' to 'operator' in runtime

New Features

  • Added blogs navigation to documentation
  • Fixed-layout playground tools now support setInteractiveType
  • Runtime supports condition else branches
  • Runtime supports map and datetime data types
  • Runtime supports default values
  • Runtime supports global variables
  • Added PanelManagerPlugin
  • Added plugin documentation
  • Enabled multi-node snapping by default

Full Release Notes

## What's Changed
* feat(docs): add blogs nav to docs by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/804
* feat(fixed-layout): fixed-layout usePlaygroundTools and demo add setInteractiveType by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/806
* chore: default module resolution to bundler by @dragooncjw in https://github.com/bytedance/flowgram.ai/pull/808
* fix(type): type definition register timing by @sanmaopep in https://github.com/bytedance/flowgram.ai/pull/809
* fix(demo): copy node with origin position by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/807
* refactor(runtime): rename condition operation to operator by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/812
* feat(runtime): condition else branch by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/813
* feat(runtime): support map & datetime type by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/815
* fix(runtime): parse constant json value by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/811
* feat(core): remove usePlaygroundLatest() and Playground.getLatest() by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/814
* fix(material): date-time constant-input value is string by @sanmaopep in https://github.com/bytedance/flowgram.ai/pull/818
* feat: add PanelManagerPlugin by @JxJuly in https://github.com/bytedance/flowgram.ai/pull/816
* feat(docs): add plugin docs by @JxJuly in https://github.com/bytedance/flowgram.ai/pull/819
* feat(runtime): support default value by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/820
* refactor(condition): condition context by @sanmaopep in https://github.com/bytedance/flowgram.ai/pull/821
* fix(core): remove playground.config.clientX and clientY instead by config.getClientBounds and fix line displacement after page scrolling by @xiamidaxia in https://github.com/bytedance/flowgram.ai/pull/822
* feat(runtime): global variable by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/823
* feat(snap): enable multi-node snapping by default by @louisyoungx in https://github.com/bytedance/flowgram.ai/pull/824
* fix: publish config by @dragooncjw in https://github.com/bytedance/flowgram.ai/pull/828


**Full Changelog**: https://github.com/bytedance/flowgram.ai/compare/v0.4.13...v0.4.15