9.8.1
-
[@mantine/core]ScrollArea: Fix onBottomReached not being called when viewport height is fractional (#9420) -
[@mantine/core]Popover: Fix overlay transition ignoring zero duration (#9419) -
[@mantine/form]Keep errors with their records when reordering list items (#9408) -
[@mantine/core]Color functions: Fix space-separated rgb() colors parsing (#9407) -
[@mantine/hooks]use-disclosure: Fix onOpen/onClose firing multiple times in StrictMode (#9404) -
[@mantine/schedule]WeekView: Fix weekday buttons accessible name not containing visible text (#9401) -
[@mantine/hooks]use-resize-observer: Respect explicit content-box measurements (#9400) -
[@mantine/core]Modal: Disable pointer events on overlay when closed or exiting (#9398) -
[@mantine/core]Combobox: Fix empty group labels rendered when search filters out all group items (#9393) -
[@mantine/dates]DatePickerInput, MonthPickerInput, YearPickerInput, DateTimePicker: Fix dropdown aria-labelledby referencing a missing element (#9390) -
[@mantine/dates]TimePicker: Sync fields and hidden input with clamped value on paste (#9388) -
[@mantine/form]useForm: Fix clearFieldError being dropped when called in the same tick as other updates (#9385) -
[@mantine/schedule]MobileMonthView: Show events on outside days (#9384) -
[@mantine/core]Tabs: Activate tabs on Home and End keys (#9382) -
[@mantine/hooks]use-hotkeys: Normalize physical letter codes case-insensitively (#9381) -
[@mantine/hooks]use-scroller: Update controls on content resize (#9379) -
[@mantine/core]Tour: Fix tooltip going off screen when the target has no room on any side (#9367) -
[@mantine/schedule]ResourcesWeekView: Add compact day-cell layout -
[@mantine/core]PhoneInput: Fix incorrect click behavior on the dropdown trigger button -
[@mantine/core]PhoneInput: Add phone extension support -
[@mantine/core]Table: Fix sticky header borders with spanning cells -
[@mantine/core]PhoneInput: Fix national prefix handling and shared dial code selection -
[@mantine/core]Fixtheme.cursorTypenot affecting some components
editor-plugin-chart@3.0.2
⚠️ This project is no longer maintained.
- Harden chart option parsing to prevent prototype pollution.
- The
@toast-ui/chartdependency range is raised to^4.6.2. Using@toast-ui/chart4.6.2 or later is required, which also includes the chart-side tooltip hardening.
npm install @toast-ui/editor-plugin-chart@3.0.2
editor@3.2.3
⚠️ This project is no longer maintained.
- Harden WYSIWYG rendering against injection of unintended HTML elements.
- No change for normal content. Markdown (
getMarkdown) and HTML (getHTML) output are unchanged.
@toast-ui/react-editor3.2.4 and@toast-ui/vue-editor3.2.4 are released.- They require
@toast-ui/editor3.2.3 or later.
- They require
npm install @toast-ui/editor@3.2.3
# React
npm install @toast-ui/react-editor@3.2.4
# Vue
npm install @toast-ui/vue-editor@3.2.4
Full Changelog: https://github.com/nhn/tui.editor/compare/editor@3.2.2...editor@3.2.3
v11.1.0
- Added loading, error, and no-data modifier class names to
Document,Page, andThumbnailfor state-specific styling (#2120). Thanks, @luisangelrod! - Updated PDF.js to 6.5.438 (#2174).
- Accessibility improvements
- Annotation and form rendering improvements
- Font conversion improvements
- Image decoding improvements
- Pattern rendering improvements
- Performance improvements
- Text selection improvements
- Improved documentation for legacy PDF.js builds and matching worker versions (#2161, #2174).
- Updated Next.js examples (#2039). Thanks, @BetterAndBetterII!
- Fixed positioning of non-rotating annotations on rotated pages.
- Fixed Vite asset copying examples and sample configuration for cMaps, WebAssembly modules, and standard fonts (#2164). Thanks, @Apu-Emdad!
🛠️ Release v1.5.0
Univer 1.5.0 adds dedicated chart sheets, stacked line charts, and error bars. Pro's free tier now covers more editing and local output workflows. This release also reduces memory use during formula calculation, adds controls for Sheets interactions and Board layout, and improves Office file compatibility.
Give a chart its own tab while keeping its source cells in regular worksheets in the same workbook. Move charts between sheets with undo and redo. With the Sheets Chart Facade loaded, use workbook.insertChartSheet(info, { name, index }) to set the tab name and zero-based position, and getPrimaryChart() to access the main chart. A chart sheet can also continuously fit its main chart to the viewport using zoomToFit. Older snapshots without this setting use fixed zoom. Chart sheets guide
Create stacked and 100% stacked line charts. The chart editor and the builder and live chart APIs also support per-series error bars for basic 2D column, bar, line, and scatter charts. Use setErrorBars() and clearErrorBars() to control direction, end caps, styling, and error amounts. Supported amounts include fixed values, percentages, standard deviation, standard error, and positive or negative values from custom fields in the chart's data source. Scatter charts support separate X and Y error bars. Error bars guide
Use planLayout() to arrange a diagram or adjust connector routes, endpoints, labels, and text fitting. Inspect the returned diagnostics before applying a ready plan with applyLayoutPlan(). Applying a plan is undoable, and the resulting shapes and connectors remain editable. Imported tree branches can be collapsed or expanded with setTreeBranchCollapsed(). Rendered analysis reports issues such as label overflow and text that does not fit, and screenshot bounds can account for rendered paths and labels. Board Facade reference
The new @univerjs-pro/boards-latex-ui package renders LaTeX in Board text. Register UniverBoardsLatexUIPlugin after the Boards UI plugin. Plugin reference
Load @univerjs-pro/slides-ui/facade to check presentation.isTextEditing() or call await presentation.endTextEditingAsync() before a custom save action. Save after it returns true. A return value of false means the draft could not be committed or IME composition is still in progress. Slides Facade reference
Set these options directly on UniverSheetsUIPlugin, or under sheets in UniverSheetsCorePreset.
| Option | Default | Behavior |
|---|---|---|
selectionAnimation |
true |
Animates the desktop selection outline when clicking between cells. The system's reduced-motion preference takes precedence. |
enableFillHandle |
true |
Shows the desktop fill handle. Fill commands and Facade APIs still work when it is hidden. |
warnBeforeDragOverwrite |
true |
Confirms before a dragged range overwrites existing cells. Move validation and undo/redo still apply when the prompt is disabled. |
FBoard.planLayout()acceptsgraph,routes,ports,labels, andtextmodes. Graph layout acceptselementIds,fixedElementIds, andfeedbackConnectorIdsfor scope, plusdirection,layerGap,itemGap,origin, andmaxNodesfor placement. It defaults to horizontal layout, a layer gap of 100, an item gap of 48, and a limit of 500 nodes. Route, port, and label passes can target specificconnectorIds. Graph and text layout acceptmaximumWidthGrowthto cap text-driven widening, with a range of 1–2 and a default of 2. Board layout optionsanalyzeRenderedLayout()acceptsmaximumAutomaticLabelDistancein Board units for checking automatic label placement. The limit is opt-in. Board models also exposeconnectionPositionModefor automatic or fixed connector endpoints,lineJumpfor crossing styles, andlayoutOccupancy: "frame"to allow routes through a container’s interior. UsesetContainerStyle()withtitleOffsetXto offset a container caption, or set a swimlane’sheaderPositiontoleftortop. Rendered layout analysis- Custom canvas floating DOM layers can set
IFloatDom.preventBrowserZoomto suppress browser zoom gestures while forwarding events.eventOptionsconfigures nativepassiveandcapturesettings per wheel or pointer event. Events without an override continue to use React forwarding. Floating DOM layer API
These changes require the corresponding native Exchange artifacts.
- Charts. Preserve dedicated chart sheets in XLSX and supported stacked line chart groupings in XLSX, DOCX, and PPTX.
- PivotTables. Preserve more saved report layouts, merged headers, shared caches, and slicer, timeline, and PivotChart connections. Editable imported reports are stored as PivotTable resources so a second static copy does not appear in worksheet cells. Applications reading those report values should load the snapshot in a compatible frontend and read the rendered report. Re-import the original XLSX if an older snapshot retained a static copy or lost merge information.
- Optional Excel refresh. Set
deferPivotCalculation: trueon a Sheet XLSX export through Exchange Node to let Excel calculate eligible PivotTables on refresh. It defaults tofalse, which exports static results as usual. The supported profile is a new, simple PivotTable with one unfiltered, unsorted text row field, one numeric SUM measure, and grand totals, sourced from a separate two-column worksheet range. The matching Office binding is required for this option. - DOCX equations. Supported legacy Equation Editor and desktop MathType equations import as editable formulas and export as native Word equations. Objects that cannot be converted are preserved as OLE attachments.
- XLSX fidelity and memory. Preserve saved external-link values during offline conversion, including files saved after a failed link refresh. Retain supported custom OOXML metadata, significant whitespace, and implicit intersection formulas. Large exports of plain cell values use less peak memory.
- Native free exports. With the updated adapters, supported XLSX, DOCX, PPTX, and PDF exports can continue with a license watermark after the monthly allowance of 10 successful watermark-free exports. Watermark decisions use the completed export count when a conversion starts, so concurrent conversions can produce additional unwatermarked files.
- Formulas. Reduce calculation memory in JavaScript and native engines and reuse work for repeated criteria and range lookups. Improve Excel compatibility for complex numbers,
ISOWEEKNUM,WEEKNUMwith type 21, andPV. - Sheets. Reuse more rendering work during scrolling, including on mobile. Keep open cell drafts through external updates and preserve whole-row and whole-column references through structural edits. Improve validation dropdowns for merged cells and preserve dropdown ranges when pasting. Prevent PivotTable expansion from overwriting occupied cells and reduce the work needed to check for those cells.
- Editing and accessibility. Improve keyboard access, menu dismissal, RTL separators, gradient stop editing, and IME confirmation in dialogs. Context menu buttons execute their configured
commandId, using the menu item ID when no override is specified. - Collaboration and history. Improve incremental Slides updates and selective undo, and keep Sheets notes attached to the correct cells through concurrent row and column operations. Version comparisons retain a visible sheet.
- Embeds and PDF. Improve embedded editor interactions on mobile and harden PDF tile and annotation rendering. Matching native Office and PDF bindings also fix Worker lifecycle issues.
The deprecated root Worker exports announced in 1.4.0 have been removed. Built-in Worker presets already use the dedicated entries. Update custom browser and Node.js Worker scripts using the following table.
| New entry point | API |
|---|---|
@univerjs/rpc/worker |
UniverRPCWorkerThreadPlugin |
@univerjs/rpc-node/worker |
UniverRPCNodeWorkerPlugin |
@univerjs/sheets-formula/worker |
UniverRemoteSheetsFormulaPlugin |
@univerjs/sheets-filter-ui/worker |
UniverSheetsFilterUIWorkerPlugin |
@univerjs/engine-render/worker |
DocumentLayoutSession |
@univerjs-pro/bases/worker |
UniverRemoteBasesPlugin |
@univerjs-pro/bases-dashboard/worker |
UniverRemoteBaseDashboardPlugin |
@univerjs-pro/sheets-pivot-chart/worker |
UniverSheetsPivotChartWorkerPlugin |
@univerjs/docs/worker |
Register UniverDocsWorkerPlugin in place of startDocsLayoutWorker. |
@univerjs-pro/pdfs-ui/worker |
Register UniverPdfsUIWorkerPlugin in place of startPdfPageThumbnailWorker. |
- Register
UniverBoardsLatexUIPluginexplicitly for Boards. ImportDocsLatexRenderServicefrom@univerjs-pro/docs-latex. Font injection is handled by the renderer, and theinjectRatexFontsexport has been removed. - Replace
IDrawingObjectListItem,IDrawingObjectListPanelLabels, andIDrawingObjectListPanelPropswithIObjectListPanelItem,IObjectListPanelLabels, andIObjectListPanelBasePropsfrom@univerjs/drawing-ui. - Remove direct imports of
CELL_INVERTED_INDEX_CACHEandFORMULA_REF_TO_ARRAY_CACHEfrom@univerjs/engine-formula. Cache ownership now belongs to the formula engine instance.
Upgrade the Univer and Univer Pro packages used by your application together. For self-hosted deployments, update collaboration, rendering, and native Exchange components before writing chart sheets or the new stacked line chart types. Older readers may misinterpret the new data. Use matching native binaries for the Office/PDF changes and the native formula engine.
v16.5.0-canary.50
- Enable turbopackMinifyBeforeChunking by default on canary releases: #101113
- Turbopack: write smaller/faster client reference manifests: #101312
- Generate managed agent instructions on next dev and respect opt-outs: #101746
- fix(next/image): check the LCP element loading state: #101737
- Run render error reporting outside the work-unit scope: #101597
- Fix RSC navigation and runtime prefetches in
next start: #101357 - Expose full-route RSC prerender classification to adapters: #101309
- Distinguish dynamic rendering from required prerendering: #101511
- turbopack: size chunk items by their minified code when minifying before chunking: #101010
- Prevent repeated prerenders during fallback shell revalidation: #101756
- Enable Turbopack GC by default: #101591
- Exit next dev when the server process is killed by a signal: #101752
- Store "use cache" durability once per entry in server reference manifest: #101674
- Remove
durabilityproperty fromcreateServerModuleMapresults: #101730 - Resolve webpack dev HMR test callback when a build has nothing to apply: #101682
- turbo-tasks: capture effects on multiple workers: #101514
- Turbopack: report routes nested inside catch-all segments instead of panicking in dev: #101697
- docs: standalone env file precedence and with-docker-multi-env secrets: #101728
- examples: bump Alpine Docker base images to Node 24: #101215
- docs: place shell param-order rule with build-time shells: #101680
- turbo-persistence: don't modify the directory on read-only open: #101779
- Optimize inline_atom: #101778
- docs: clarify standalone .env copying and the next-server tracing exclude key: #101699
- docs: Add more clarification about SVG security policies: #101311
- Add a 48-hour Cargo dependency cooldown: #101765
- Update Rust nightly to 2026-11-13: #101764
- Upgrade React from
df6aa4ec-20261112todf6aa4ec-20261112: #101760 - turbo-tasks-backend: store task edges in flat EdgeSets: #101489
- turbo-tasks-backend: add a profile driver to the keyed dependencies benchmark: #101731
- docs: correct deploymentId environment variable precedence: #101740
- Turbopack: list compact re-export namespace keys in code unit order: #101494
- turbo-tasks-backend: fix transient root test race: #101700
- Scaffold separate entrypoint for Turbopack NFT functionality: #94356
- Turbopack: read UnusedReferences by key in ESM export code generation: #101626
- Require real deployment coverage for application behavior: #101510
- Turbopack: read UnusedReferences by key in pattern mapping: #101725
- test: replace files atomically in patchFile: #101683
- turbo-persistence: faster key block sorting: #100335
- turbopack: return small free ranges to the OS after project shutdown: #101623
- Turbopack: return freed memory eagerly while shutting down the project: #101589
- turbo-persistence: validate sst_inspect block reads with BlockOffsets: #100313
Huge thanks to @lukesandberg, @icyJoseph, @aurorascharff, @bgw, @wbinnssmith, @unstubbable, @sokra, and @mischnic for helping!
v6.6.1
- Keep the Snabbdom JSX factory in published ESM and UMD builds. Fix
jsx is not definedwhen rendering images with the float-image plugin or using the affected modules independently.
Package versions
| Package | Version | Source |
|---|---|---|
@wangeditor-next/basic-modules |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/code-highlight |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/core |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/editor |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/editor-for-react |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/editor-for-vue |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/editor-for-vue2 |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/list-module |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/plugin-attachment |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/plugin-ctrl-enter |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/plugin-float-image |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/plugin-formula |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/plugin-link-card |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/plugin-markdown |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/plugin-mention |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/table-module |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/upload-image-module |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/video-module |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/yjs |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/yjs-for-react |
6.6.1 |
Source (tar.gz) |
@wangeditor-next/yjs-for-vue |
6.6.1 |
Source (tar.gz) |
v6.6.0
- Support native image lazy loading. Image elements now keep the
<img loading="lazy|eager">attribute throughsetHtml/paste parsing, editor rendering andgetHtml, and the new opt-inMENU_CONF.insertImage.loadingoption sets it on newly inserted and uploaded images. Unsupported values are ignored and nothing changes when the option is not set. - Add opt-in
MENU_CONF.uploadImage.insertAsBlockso each uploaded image is inserted in its own paragraph instead of flowing inline next to the previous one. The default stays inline;insertImageNodeaccepts a new{ block }option for custom integrations. - Resize the currently selected image when reusing the image size dialog.
- Fix block image insertion leaving an extra empty paragraph in documents with multiple paragraphs or rich table cells. Reuse the selected empty paragraph while keeping existing image paragraphs separate.
Package versions
| Package | Version | Source |
|---|---|---|
@wangeditor-next/basic-modules |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/code-highlight |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/core |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/editor |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/editor-for-react |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/editor-for-vue |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/editor-for-vue2 |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/list-module |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/plugin-attachment |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/plugin-ctrl-enter |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/plugin-float-image |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/plugin-formula |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/plugin-link-card |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/plugin-markdown |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/plugin-mention |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/table-module |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/upload-image-module |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/video-module |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/yjs |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/yjs-for-react |
6.6.0 |
Source (tar.gz) |
@wangeditor-next/yjs-for-vue |
6.6.0 |
Source (tar.gz) |