- Add custom branch rendering and metadata support
- Support serializing and restoring compact mode state in MindElixirData
- Add compact mode support for configurable node spacing
- Ignore non-left mouse button events in double-click detection
- Prevent context menu trigger during active node editing or interaction states
- Add forceCenter parameter to scrollIntoView
- Add enableMobileMultiSelect
- Add summary & arrow events
- Fix readonly mode misbehavior
- Fix text truncation when parsing MathJax in plaintext
- Introduce state machine to manage pointer interactions
- Simplify interaction state machine by merging selection logic
- Implement CanvasPointerDown state to coordinate canvas interaction and selection logic
- Migrate mouse and touch events to PointerEvents across viselect core
- Unify and optimize node drag ghost positioning
- Unify blur & pointer cancel handler
- Encapsulate touch pinch and pan logic into dedicated helper
- Rename linkSvgGroup to arrowSvg and optimize SVG interaction logic
- Standardize SVG types and rename arrow group IDs for consistency
- Aggregate long-press logic into longPressHelper object
- Improve Magic Trackpad UX
- Prevent double-clicking multiple elements
- Round arrow delta values to integers
- Use pointer events to handle click & double-click
- Unify node selection logic to
mouse.ts - Rename
dragmovetopan
- Improve test compatibility for macOS and extend timeouts
- i18n: The
localeoption has moved from the top-levelOptionstocontextMenu.locale.- The top-level
Options.localenow only accepts a language code (string) and is deprecated. - To provide custom translations or set the language, use
contextMenu: { locale: LangPack }. - Predefined language packs (like
en,zh_CN) are now available via the newi18nexport.
- The top-level
- Support preserving arrow delta coordinates (x,y) in plaintext converter
- Support
Esckey to exit node editing
- Support dynamically toggling drag and selection features
- Fix line break conversion for editable content in Safari
- Improve pinch gesture ux
- Remove top-level scope document to avoid immediate errors in SSR applications
- Add mindElixirToPlaintext
- Fix arrow highlight show repeatedly
- Optimize plaintext converter algorithm
- Refactor plaintext converter
- Both buttons can be used to drag in readonly mode
- Support more styles in plaintext converter
- Build & export plaintext converter
- Correct input copy behavior
- Refactor clipboard handling using native events
- Import pasteHandler for improved clipboard operations
- Remove draggable option
- Add plaintext converter for importing/exporting mind maps
- Allow creating arrows without offset
- Refactor node operations and improve structure
- Refactor keypress handling and clipboard functions
- Refactor utility functions in index.ts
- Update readme
- Upgrade playwright to latest version
- Unify map padding across themes (
50px→50px 80px) - Export constants (LEFT, RIGHT, SIDE, THEME, DARK_THEME) to bypass SSR errors
- Update
.svg-labelstyle - Calculate arrow delta instead of constant value
- Enhance fullscreen handling
- Prevent arrow reversal
- Improve scale validation logic