v4.67.5
2026-11-04
- Do not ignore
output.sourcemapFilewhen theoutput.fileoption is not used (#6623) - Change chunk hash when debug IDs are enabled/disabled (#6625)
- Avoid an unnecessary optional dependency on Linux system (#6627)
electron v46.0.0-alpha.6
Note: This is an alpha release. Please file new issues for any bugs you find in it.
This release is published to npm under the alpha tag and can be installed via npm install electron@alpha, or npm install electron@46.0.0-alpha.6.
v7.1.4
- FIX: Resource Timeline with
virtualization:- Stacked events overflowed onto the rows below when some of the row's events were scrolled out of view. Row heights now fit the events on screen, changing during horizontal scrolling (#8127)
- Scrollbar jumped back after fast vertical scrolling and lagged behind the pointer during a drag (#8135)
- Possible repeated rerendering when the widest slot label fell out of view
- FIX: TimeGrid's
aria-colcountwas one too low, leaving out the time-axis column (#8124), thx @ac1982
6.7.0
- 🆕 Add Button, Tag, Steps, Alert, and Timeline support for the global ConfigProvider
variant, and component-specificdivider.variantconfiguration for Divider line styles. #59589 #59588 #59578 #59577 #59587 #59576 @QDyanbing - 🆕 Add
suffixto DatePicker, TimePicker, Select, AutoComplete, Cascader, and TreeSelect to customize suffix content, with state-based rendering for selection components. DeprecatesuffixIconin favor ofsuffixwhile retaining compatibility. #59240 #59185 @QDyanbing @meet-student - 🆕 Add
allowClear.tabIndexto Input, Input.TextArea, Mentions, InputNumber, Select, AutoComplete, TreeSelect, Cascader, DatePicker, and TimePicker to control clear-button Tab order. AddallowClear.labelto Input, Input.TextArea, Mentions, DatePicker, and TimePicker for accessible clear-button names, with field-level ConfigProvider inheritance. #59566 #59567 #59548 @QDyanbing - 🆕 Add App Fragment
refsupport withcomponent={false}in React 19.3 and later. #59281 @li-jia-nan - 🆕 Add BorderBeam
itemsprop to configure each beam'scolor,lineWidth,outset, andsize, with the array length determining the beam count. #59095 @QDyanbing - 🆕 Add Cascader
checkStrictlyto select parent and child options independently in multiple mode. #59566 @QDyanbing - 🆕 Add component-specific ConfigProvider
allowClearsettings for Cascader, TreeSelect, and AutoComplete to configure their clear buttons globally. #59593 #59592 #59591 @QDyanbing - 🆕 Add Checkbox.Group and Radio.Group
classNamesandstylesto customize group containers, items, icons, and labels. #59058 #59059 @QDyanbing - 🆕 Add InputNumber
allowClearandonClearto clear values with customizable icons, disabled state, and accessible labels. #59251 @nikzanda - 🆕 Add Space
align="stretch"to stretch child elements along the cross axis. #59005 @dogledogle - 🆕 Add Typography
shimmerprop for animated shimmering text, withdurationconfiguring motion and wait times separately. #59054 @zombieJ - 🛠 Align Input, Input.TextArea, Mentions, InputNumber, Select, AutoComplete, TreeSelect, Cascader, DatePicker, and TimePicker
allowClear.disabledbehavior sotrueremoves the clear button consistently withallowClear={false}. #59548 #59566 #59567 @QDyanbing - 💄 Replace Alert container radius component token
borderRadiuswithcontainerBorderRadius; migrate custom container radius overrides to the new token. #59305 @MadCcc - DatePicker
- 🆕 Add DatePicker and TimePicker
components.nowButtonandcomponents.okButtonto customize Today/Now and confirmation buttons independently. Deprecate the legacycomponents.buttonwhile retaining compatibility. #59778 @yoyo837 - ⌨️ Improve DatePicker and TimePicker keyboard and screen reader support, including arrow-key navigation, Enter/Space selection, and skipping disabled time options, plus keyboard activation and native disabled states for Today/Now footer buttons. #59778 #59367 @yoyo837
- 🐞 Fix DatePicker and TimePicker ignoring
clearIconsettings when anallowClearobject omitsclearIcon. #59565 @QDyanbing - 🐞 Fix DatePicker, TimePicker, and Calendar dependency imports in native Node ESM environments. #59261 @zombieJ
- 🐞 Fix DatePicker parsing localized date input with Day.js when the component locale differs from the global locale. #59240 @QDyanbing
- 🌐 Correct DatePicker
zh_TWweek-selection terminology. #59261 @zombieJ
- 🆕 Add DatePicker and TimePicker
- Select
- 🆕 Add Select
autoCompleteand ConfigProviderselect.autoCompleteto configure browser autocomplete behavior for the search input. #59566 #59632 @QDyanbing - ⌨️ Improve screen reader support for Select, Cascader, TreeSelect, and AutoComplete by hiding default decorative arrow, search, and loading icons. #59709 @droduit
- ⌨️ Improve Select, Cascader, and TreeSelect clear-button keyboard accessibility with focus visibility, focus outlines, and localized accessible labels. #58267 @Pareder
- ⌨️ Fix Select and AutoComplete screen reader announcements of option positions, total counts, and groups in virtual scrolling mode. #58993 @yoyo837
- 🆕 Add Select
- Table
- 🆕 Add Table
expandable.showExpandAllandexpandable.onExpandAllto expand or collapse all expandable rows on the current page when usingexpandedRowRender. #59036 @nikzanda - 🆕 Add Table
components.ExpandIconand anexpandable.columnTitlerender function to customize row and expand-all controls. Deprecateexpandable.expandIconin favor ofcomponents.ExpandIconwhile retaining compatibility. #59036 @nikzanda - ⌨️ Improve Table row selection accessibility with localized accessible names and keyboard access to custom selection menus. #58969 @thlovey
- ⚡️ Improve Table performance when applying multiple column filters to deeply nested data. #59719 @Aminark
- 🆕 Add Table
- Tree
- 💄 Improve Tree non-checkable
selectable={false}nodes with disabled text colors and cursors, without hover highlighting. #58906 @EmilyyyLiu - 🐞 Fix Tree ignoring defaults and preventing uncontrolled updates when
expandedKeys,selectedKeys, and similar props are explicitlyundefined. #59274 @aojunhao123 - 🐞 Fix Tree unexpectedly scrolling when a focusable element inside a node title receives focus. #59274 @aojunhao123
- 🐞 Fix Tree drop targets before nested first-child nodes, overwritten custom drag text, and delayed hover expansion after unmount. #59274 @aojunhao123
- 💄 Improve Tree non-checkable
- Listy
- 🆕 Add Listy
rowKeycallback's second argumentindexto generate keys from row indexes. #59347 @aojunhao123 - 🆕 Add Listy
rowHoverableprop to disable row hover highlighting. #59273 @QDyanbing - 🆕 Add Listy
scrollWidthprop to enable horizontal scrolling for virtual lists wider than the container. #59197 @aojunhao123
- 🆕 Add Listy
- Pagination
- 🆕 Add an optional third
infoargument withinfo.recommendPageto PaginationonChangewhen page size changes to help preserve the current data position, also available through Table and Listpagination.onChange. #58604 @EmilyyyLiu - ♿ Improve Pagination list semantics and keyboard and disabled-state accessibility for pagination controls. #58604 @EmilyyyLiu
- 🌐 Correct Pagination and page-size text in Armenian (
hy_AM), Albanian (sq_AL), Nepali (ne_NP), and Traditional Chinese (zh_TW) locales. #59500 #59499 #58604 @yoyo837 @EmilyyyLiu
- 🆕 Add an optional third
- Button
- 🐞 Fix Button ignoring
tabIndexwhenhrefis set. #59732 @nikzanda - 🐞 Fix Button not applying component-specific non-
solidvariants from ConfigProvider whencoloris omitted. #59589 @QDyanbing
- 🐞 Fix Button ignoring
- ColorPicker
- 🆕 Add ColorPicker
styles.popup.containerandclassNames.popup.containerto customize the popup content container, and deprecatestyles.popupOverlayInnerwhile preserving compatibility until v7. #59743 @QDyanbing - 🐞 Fix ColorPicker ignoring
styles.popupOverlayInnerwhenstylesis a function or configured through ConfigProvider. #59743 @QDyanbing
- 🆕 Add ColorPicker
- Dropdown
- 🆕 Add Dropdown
classNames.menuandstyles.menuto customize the dropdown menu root element. #58979 @QDyanbing - 🐞 Fix Dropdown unexpectedly scrolling when
autoFocusfocuses the menu. #59786 react-component/dropdown#271 @github-actions @lkxdsb
- 🆕 Add Dropdown
- Form
- 🆕 Add Form and Form.Item
labelAlignvaluesstart/endfor label alignment that follows text direction, while retaining and deprecating legacyleft/rightvalues. #59760 @QDyanbing - 🐞 Fix Form.Item
noStylefields losing the parentvalidateStatusafter being edited. #59708 @nikzanda
- 🆕 Add Form and Form.Item
- Input
- Menu
- 🐞 Fix Menu parent submenu selection styles not updating after items load dynamically. #59786 react-component/menu#895 @github-actions @dogledogle
- 🐞 Fix Menu submenu Escape navigation also closing the surrounding popup. #59786 react-component/menu#899 @github-actions @nrps9909
- Slider
- ⌨️ Add Slider
ariaDescribedByForHandleprop to associate handles with accessible descriptions. #59110 @yoyo837 - 🐞 Fix Slider failing to finish dragging when an ancestor stops
mouseuppropagation and potentially throwing when its container becomes unavailable during dragging. #59786 react-component/slider#1089 react-component/slider#1087 @github-actions @nrps9909
- ⌨️ Add Slider
- Splitter
- Tabs
- 🆕 Add Tabs
more.openandmore.onOpenChangeto control the overflow menu, retaining and deprecatingmore.visibleandmore.onVisibleChange. #59259 @QDyanbing - 🐞 Fix Tabs
moreIconbeing overridden by ConfigProvidertabs.more.iconandtabs.moreIcon. #59690 @nikzanda
- 🆕 Add Tabs
- Upload
- ⌨️ Improve Collapse accessibility with Space key activation without page scrolling and
aria-controlslinking expanded headers to their panels. #59771 @yoyo837 - 🐞 Fix Card
tabProps.onChangenot being triggered when switching tabs. #59655 @dogledogle - 🐞 Fix Tooltip and Popover text shifting after the opening motion. #59729 @th74100
- 🐞 Fix
theme.getDesignTokenfailing to retrieve Design Token whenalgorithmis an empty array. #59695 @nikzanda - 🐞 Fix numeric
0being ignored in Input prefixes, suffixes, and clear icons, Mentions suffixes, Cascader expand and loading icons, and Pagination custom navigation items or icons. #59548 #59566 #58604 @QDyanbing @EmilyyyLiu - 🐞 Fix Checkbox and Radio unexpectedly closing Tooltip when the pointer moves from the control to its text, and Radio incorrectly firing
onMouseEnterandonMouseLeave. #59701 #59699 @nikzanda - 🐞 Fix Statistic displaying exponential notation and ignoring
precisionand separators for very small or very large numbers. #59693 @RaphaelFakhri - 🐞 Fix TreeSelect ignoring ConfigProvider
classNameandstyle, and rootclassNamesandstylesincorrectly affecting the popup. #59343 @dogledogle - 🌐 Add German, French, and Italian translations for the clear button's accessible name in Input, Select, and related components. #59723 @droduit
- 🆕 新增 Button、Tag、Steps、Alert 和 Timeline 对 ConfigProvider 全局
variant的支持,并支持通过divider.variant统一设置 Divider 的分割线样式。 #59589 #59588 #59578 #59577 #59587 #59576 @QDyanbing - 🆕 新增 DatePicker、TimePicker、Select、AutoComplete、Cascader 和 TreeSelect 的
suffix属性,用于自定义后缀内容;选择类组件支持根据状态动态渲染。suffixIcon保持兼容并废弃,请迁移至suffix。 #59240 #59185 @QDyanbing @meet-student - 🆕 新增 Input、Input.TextArea、Mentions、InputNumber、Select、AutoComplete、TreeSelect、Cascader、DatePicker 和 TimePicker 的
allowClear.tabIndex;Input、Input.TextArea、Mentions、DatePicker 和 TimePicker 新增allowClear.label,支持设置清除按钮的 Tab 顺序和无障碍名称,并按字段继承 ConfigProvider 配置。 #59566 #59567 #59548 @QDyanbing - 🆕 新增 App 在 React 19.3 及以上版本使用
component={false}时的 Fragmentref支持。 #59281 @li-jia-nan - 🆕 新增 BorderBeam
items属性,可分别设置每束光的color、lineWidth、outset和size,并由数组长度决定光束数量。 #59095 @QDyanbing - 🆕 新增 Cascader 的
checkStrictly属性,支持在多选模式下独立勾选父子选项。 #59566 @QDyanbing - 🆕 新增 Cascader、TreeSelect 和 AutoComplete 的 ConfigProvider
allowClear全局配置,可分别统一设置清除按钮。 #59593 #59592 #59591 @QDyanbing - 🆕 新增 Checkbox.Group 和 Radio.Group 的
classNames和styles,可自定义组容器、选项、图标和文本的样式。 #59058 #59059 @QDyanbing - 🆕 新增 InputNumber
allowClear和onClear,可一键清空数值,并自定义清除图标、禁用状态及无障碍名称。 #59251 @nikzanda - 🆕 新增 Space
align="stretch",使子元素沿交叉轴拉伸对齐。 #59005 @dogledogle - 🆕 新增 Typography
shimmer属性,为文本显示流光效果,可通过duration分别设置动画和等待时长。 #59054 @zombieJ - 🛠 统一 Input、Input.TextArea、Mentions、InputNumber、Select、AutoComplete、TreeSelect、Cascader、DatePicker 和 TimePicker 的
allowClear.disabled行为,设置为true时移除清除按钮,与allowClear={false}保持一致。 #59548 #59566 #59567 @QDyanbing - 💄 调整 Alert 容器圆角组件 Token,将
borderRadius替换为containerBorderRadius,自定义容器圆角时需使用新 Token。 #59305 @MadCcc - DatePicker
- 🆕 新增 DatePicker 和 TimePicker
components.nowButton和components.okButton,支持分别自定义底部的“今天/此刻”按钮和确认按钮。旧的components.button保持兼容并废弃。 #59778 @yoyo837 - ⌨️ 增强 DatePicker 和 TimePicker 的键盘与读屏支持,时间面板支持方向键切换、Enter/Space 确认并跳过禁用选项,底部“今天/此刻”按钮支持键盘操作和原生禁用状态。 #59778 #59367 @yoyo837
- 🐞 修复 DatePicker 和 TimePicker 在
allowClear对象未指定clearIcon时忽略clearIcon配置的问题。 #59565 @QDyanbing - 🐞 修复 DatePicker、TimePicker 和 Calendar 在 Node 原生 ESM 环境下的依赖导入兼容性。 #59261 @zombieJ
- 🐞 修复 DatePicker 使用 Day.js 时,组件语言与全局语言不一致导致本地化月份等日期输入无法解析的问题。 #59240 @QDyanbing
- 🌐 修正 DatePicker
zh_TW的选周用语。 #59261 @zombieJ
- 🆕 新增 DatePicker 和 TimePicker
- Select
- 🆕 新增 Select
autoComplete属性和 ConfigProviderselect.autoComplete配置,用于设置搜索输入框的浏览器自动补全行为。 #59566 #59632 @QDyanbing - ⌨️ 优化 Select、Cascader、TreeSelect 和 AutoComplete 的屏幕阅读器体验,隐藏默认装饰性箭头、搜索和加载图标,避免重复朗读。 #59709 @droduit
- ⌨️ 增强 Select、Cascader 和 TreeSelect 清除按钮的键盘可访问性,聚焦时显示按钮及焦点轮廓,并使用本地化无障碍名称。 #58267 @Pareder
- ⌨️ 修复 Select 和 AutoComplete 在虚拟滚动模式下无法正确播报选项位置、总数及分组的问题。 #58993 @yoyo837
- 🆕 新增 Select
- Table
- 🆕 新增 Table 的
expandable.showExpandAll和expandable.onExpandAll,支持使用expandedRowRender时一键展开或收起当前页的所有可展开行。 #59036 @nikzanda - 🆕 新增 Table
components.ExpandIcon和expandable.columnTitle渲染函数,支持自定义行展开及全部展开按钮;兼容并废弃expandable.expandIcon,请迁移至components.ExpandIcon。 #59036 @nikzanda - ⌨️ 增强 Table 行选择的可访问性,使用本地化无障碍名称,并支持通过键盘打开自定义选择菜单。 #58969 @thlovey
- ⚡️ 优化 Table 对深层树形数据同时应用多个列筛选条件时的性能,避免重复递归筛选。 #59719 @Aminark
- 🆕 新增 Table 的
- Tree
- 💄 优化 Tree 非勾选模式下
selectable={false}节点的样式,显示禁用文本色和光标,并取消悬停高亮。 #58906 @EmilyyyLiu - 🐞 修复 Tree 的
expandedKeys、selectedKeys等显式为undefined时默认值及非受控交互失效的问题。 #59274 @aojunhao123 - 🐞 修复 Tree 标题内子元素获得焦点时列表意外滚动的问题。 #59274 @aojunhao123
- 🐞 修复 Tree 拖拽到嵌套首个子节点前方时目标错误、自定义拖拽文本被覆盖,以及卸载后仍触发悬停展开的问题。 #59274 @aojunhao123
- 💄 优化 Tree 非勾选模式下
- Listy
- 🆕 新增 Listy
rowKey回调的第二个参数index,便于根据行下标生成标识。 #59347 @aojunhao123 - 🆕 新增 Listy
rowHoverable属性,用于关闭列表行的悬停高亮。 #59273 @QDyanbing - 🆕 新增 Listy
scrollWidth属性,使虚拟列表内容超出容器时可横向滚动。 #59197 @aojunhao123
- 🆕 新增 Listy
- Pagination
- 🆕 新增 Pagination
onChange可选的第三个参数info,通过info.recommendPage在每页条数变化时提供推荐页码,便于保留当前数据位置;Table 和 List 的pagination.onChange同步支持。 #58604 @EmilyyyLiu - ♿ 优化 Pagination 的列表语义以及分页按钮的键盘操作和禁用状态识别。 #58604 @EmilyyyLiu
- 🌐 修正 Pagination 亚美尼亚语(
hy_AM)、阿尔巴尼亚语(sq_AL)、尼泊尔语(ne_NP)和繁体中文(zh_TW)的分页及每页条数文案。 #59500 #59499 #58604 @yoyo837 @EmilyyyLiu
- 🆕 新增 Pagination
- Button
- 🐞 修复 Button 设置
href时tabIndex不生效的问题。 #59732 @nikzanda - 🐞 修复 Button 未指定
color时无法使用 ConfigProvider 组件级非solid变体的问题。 #59589 @QDyanbing
- 🐞 修复 Button 设置
- ColorPicker
- 🆕 新增 ColorPicker
styles.popup.container和classNames.popup.container,支持自定义弹出面板内容容器;废弃styles.popupOverlayInner并保留兼容至 v7。 #59743 @QDyanbing - 🐞 修复 ColorPicker 在
styles为函数或通过 ConfigProvider 配置时styles.popupOverlayInner不生效的问题。 #59743 @QDyanbing
- 🆕 新增 ColorPicker
- Dropdown
- 🆕 新增 Dropdown
classNames.menu和styles.menu,用于自定义下拉菜单根元素的样式。 #58979 @QDyanbing - 🐞 修复 Dropdown 启用
autoFocus时自动聚焦菜单导致意外滚动的问题。 #59786 react-component/dropdown#271 @github-actions @lkxdsb
- 🆕 新增 Dropdown
- Form
- 🆕 新增 Form 和 Form.Item
labelAlign对逻辑方向start/end的支持,使标签对齐方式随书写方向调整;兼容并废弃旧值left/right。 #59760 @QDyanbing - 🐞 修复 Form.Item
noStyle字段在编辑后丢失父级validateStatus的问题。 #59708 @nikzanda
- 🆕 新增 Form 和 Form.Item
- Input
- Menu
- 🐞 修复 Menu 动态加载菜单项后父级子菜单未更新选中样式的问题。 #59786 react-component/menu#895 @github-actions @dogledogle
- 🐞 修复 Menu 子菜单按 Escape 返回父级时连带关闭外层弹层的问题。 #59786 react-component/menu#899 @github-actions @nrps9909
- Slider
- ⌨️ 新增 Slider
ariaDescribedByForHandle属性,为滑块关联额外的无障碍说明。 #59110 @yoyo837 - 🐞 修复 Slider 在祖先元素阻止
mouseup冒泡时无法结束拖拽,以及拖拽过程中容器暂不可用时可能报错的问题。 #59786 react-component/slider#1089 react-component/slider#1087 @github-actions @nrps9909
- ⌨️ 新增 Slider
- Splitter
- Tabs
- 🆕 新增 Tabs
more.open、more.onOpenChange,用于控制溢出菜单展开状态;兼容并废弃more.visible、more.onVisibleChange。 #59259 @QDyanbing - 🐞 修复 Tabs 的
moreIcon被 ConfigProvider 的tabs.more.icon和tabs.moreIcon覆盖的问题。 #59690 @nikzanda
- 🆕 新增 Tabs
- Upload
- ⌨️ 改进 Collapse 无障碍体验,支持按空格键切换面板且不滚动页面,并通过
aria-controls关联展开的标题与面板内容。 #59771 @yoyo837 - 🐞 修复 Card 的
tabProps.onChange在切换页签时不触发的问题。 #59655 @dogledogle - 🐞 修复 Tooltip 和 Popover 在打开动画结束后文字发生位移的问题。 #59729 @th74100
- 🐞 修复
theme.getDesignToken在algorithm为空数组时无法获取 Design Token 的问题。 #59695 @nikzanda - 🐞 修复 Input 的前缀、后缀和清除图标、Mentions 的后缀、Cascader 的展开和加载图标,以及 Pagination 的自定义导航项或图标为数字
0时被忽略的问题。 #59548 #59566 #58604 @QDyanbing @EmilyyyLiu - 🐞 修复 Checkbox 和 Radio 在鼠标从选框移到文字时意外关闭 Tooltip 的问题,并修复 Radio 错误触发
onMouseEnter和onMouseLeave的问题。 #59701 #59699 @nikzanda - 🐞 修复 Statistic 在数值极小或极大时显示科学计数法,且
precision与分隔符不生效的问题。 #59693 @RaphaelFakhri - 🐞 修复 TreeSelect 未应用 ConfigProvider 的全局
className、style,以及根节点classNames、styles错误影响下拉弹层的问题。 #59343 @dogledogle - 🌐 新增 Input、Select 等组件清除按钮无障碍名称的德语、法语和意大利语翻译。 #59723 @droduit
v6.0.0
See skills/migrate-to-v6/SKILL.md for the full migration guide.
- Pass
rtl: truetoOptionsto switch node topics, the editor, labels and context menu to right-to-left text direction (Arabic, Hebrew, Persian, Urdu); branch layout axis is unaffected. - Add
ar(Arabic) locale to thei18nexport. - Pass a
markdownrenderer toOptions(andnew Outliner(…)) to render topics as Markdown / KaTeX in both the map and the outliner. - Arrow-key navigation crosses into neighbouring branches at boundaries:
ArrowDownfrom the last child andArrowUpfrom the first child of a branch step into the nearest sibling branch, landing at its first/last child or the branch node itself when collapsed. mei.diffRefresh(data)applies only the difference between the current document anddata, keeping unchanged nodes' elements, listeners and focus state; falls back torefreshwhen the change cannot be expressed incrementally.- Collapse / expand is now undoable:
Ctrl+Zrestores the previous fold state, and folds from the outliner and the map share one undo timeline. expandNodeandexpandNodeAllaccept{ silent: true }to skip the history entry, so an auto-expand before adding a child costs no extra undo step.- The outliner ships as its own entry point:
import { Outliner } from 'mind-elixir/outliner'andimport 'mind-elixir/outliner/style.css'; the main entry still re-exports it unchanged.
- Input box now preserves line breaks (
white-space: pre-wrap) so Shift+Enter newlines survive editing in WebKit. init()no longer throws aTypeErrorwhen the instance is destroyed duringdocument.fonts.ready(React StrictMode fast mount/unmount).destroy()now properly releases internal references (focus backup tree, undo stack, pan/arrow helpers, dragged-node list) to prevent memory leaks.- Ensure focus backup tree and undo baseline are properly reset/re-anchored when using
refresh(data)or undoing inside focus mode. - Folding a childless node or re-applying the existing fold state no longer touches the DOM or the history stack.
reshapeNodeno longer passes anoriginthat already equals the new state to theoperationevent.- Removing a node whose parent pointer and sibling array had drifted apart no longer deletes the last sibling (
splice(-1, 1)). removeListenernow drops every registration of a handler, not just the first.createSummarywith an unusable selection (nothing selected, the root, or nodes from different main topics) is now a no-op instead of throwing.
- Undoing a no-op operation renders nothing; the incremental path only redraws when it patched something.
focusNodeandcancelFocusclear the undo/redo stack, making the focus boundary a history boundary in both directions.refresh(data)now leaves focus mode and fires arefreshevent once the data is in place.- Plaintext export now escapes
\and line breaks (\\/\n) so topics with Shift+Enter newlines round-trip correctly.
- Undo/redo patches the map with
diffRefreshinstead of rebuilding it; at 5 461 nodes undoing a one-node change drops from ~73 ms to ~14 ms. - The structural diff reconciles
childrenorder per parent rather than per rendered container, fixing SIDE-layout convergence. - Outliner rendering is a keyed reconciliation: unchanged nodes keep their DOM element, listeners and focus state; re-rendering at 5 461 nodes drops from 94 ms to ~1 ms.
- Outliner event listeners are delegated to the container (8 per-node listeners → 0), and opening the
…menu no longer re-runs markdown/KaTeX over every topic. - The outliner is now a pure view of a
MindElixirinstance: standalone mode,refresh(),updateItem(),OutlineItem/OutlineData/OutlinerMeitypes, and the internal tree DSL (cloneTree,locate,walk, six mutating operations) are all removed. - Link rendering batches all geometry reads before any DOM writes, cutting forced reflows from one per node to one total;
linkDivat 5 461 nodes drops from 124 ms to 9.6 ms. - Moving several nodes no longer re-walks the whole tree once per node.
@videojs/spotify-audio: v10.3.0
10.3.0 (2026-11-03)
- The following workspace dependencies were updated
- dependencies
- @videojs/media bumped to 10.3.0
- @videojs/utils bumped to 10.3.0
- dependencies
@videojs/tiktok-video: v10.3.0
10.3.0 (2026-11-03)
- core: hide playback rate controls when the media has no playback rate (#9603) (6f5e053)
- mux-data: report framework and engine in the player software name (#9577) (d84b573)
- The following workspace dependencies were updated
- dependencies
- @videojs/media bumped to 10.3.0
- @videojs/utils bumped to 10.3.0
- dependencies
@videojs/wistia-video: v10.3.0
10.3.0 (2026-11-03)
- The following workspace dependencies were updated
- dependencies
- @videojs/media bumped to 10.3.0
- @videojs/utils bumped to 10.3.0
- dependencies