React Mosaic v7.0.0-beta0 Release Notes
Pre-release
Pre-release
React Mosaic v7.0.0-beta0 Release Notes
Please leave your feedback/bugs here #241
Breaking Changes
-
Tree Structure Migration: Changed from binary to n-ary tree format
- Old format:
{ first: node, second: node } - New format:
{ children: [node, node, ...] } - Use
convertLegacyToNary()utility for automatic conversion of existing layouts
- Old format:
-
Type System Updates: All JSX element types updated for React 19 compatibility
JSX.Elementchanged toReact.JSX.ElementthroughoutReact.ReactFragmentremoved (deprecated in React 19)- Components now require explicit React import in files using JSX
-
Minimum Requirements: Node.js 18+ required
-
React Peer Dependency: Now supports React 16-19 (updated from v6's 16-18)
Features
Tabbed Windows Support (#50, #140)
- Full tabbed window layout support alongside split layouts
- Drag windows to create tabbed interfaces
- Tab switching, rearrangement, and drag-and-drop between tabs and splits
- Works seamlessly with existing mosaic features
N-ary Tree Structure
- Flexible tree nodes with multiple children instead of binary structure
- Enables more sophisticated layout configurations
- Better support for future layout types
Full ESM Module Support (#193)
- Complete ES modules build alongside CommonJS
- Proper
exportsfield configuration in package.json - Dual module outputs:
index.mjs(ESM) andindex.cjs(CJS) - Works with modern build tools: Next.js, Vite, Webpack 5+
- Source maps included for both module formats
Dependency Updates (#234)
- Updated
react-dnd-multi-backendto v9 for React 19 compatibility - All drag-and-drop libraries aligned with latest React versions
Bug Fixes
React 19 Compatibility (#235, #225, #231)
- Fixed TypeScript JSX namespace errors with React 19.1.0
- Resolved
element.refdeprecation warnings in console - Updated type definitions to use
React.JSX.Element - Removed deprecated
React.ReactFragmentusage - Component renders no longer throw warnings with React 19
Package Updated Versions
- react-dnd-multi-backend: 9.0.0 (was 8.0.0)
- react-dnd: 16.0.1
- react-dnd-html5-backend: 16.0.1
- react-dnd-touch-backend: 16.0.1
- TypeScript: 5.5.4
- Nx: 21.5.2
- tsup (build tool): 8.5.0
- Vitest (test framework): 3.0.0