Skip to content

🎉 Release v0.2.12

Compare
Choose a tag to compare
@hexf00 hexf00 released this 07 Sep 12:03
· 560 commits to dev since this release

🎊 Univer@v0.2.12

Univer Banner

🚧 Important Note

This project is still in heavy development, and major API changes are expected. Your feedback is crucial! Please submit issues and suggestions to help us shape the future of Univer.

🚀 Getting Started

If you're eager to explore Univer, check out our getting started documentation.
Dive into the world of collaborative document, spreadsheet, and presentation editing powered by Univer!

📊 Univer Sheets

🎉 Highlights

In this release, we are excited to introduce a new set of features and improvements to enhance your Univer experience. Here are the highlights:

  • Added support to disable transform for floating elements by setting allowTransform to false when adding them to a worksheet. #3342
  • Added 3 new formula functions: ISFORMULA, N, and NA. #3304
  • Added new facade APIs supporting cell data retrieval (FRange.getValues), simplified merge operations, clipboard functionality, and selection management. #3344 #3289 #3216
  • Now supporting 291 formula functions, with a goal of 500+

🐞 Bug Fixes

  • Fixed scroll freezing issue when filtering large datasets by optimizing row visibility checks. #3319
  • Fixed errors in the UniScript panel for smooth typing and editing. #3350
  • Fixed permission-related rendering bugs. #3300
  • Other optimizations and fixes

💔 Breaking Changes

A new way to customize the menu

Refactored the menu service and configuration service (#3246).

The purpose is to prepare for the inability to specify menu sorting and to provide simplified registration of menus and more customization capabilities in the future.

Key differences:

  1. Service Change:
    • Before: Used IMenuService for menu management
    • After: Now uses IMenuManagerService

IMenuService will provide several versions of fallback compatibility for developers to migrate.

- @IMenuService private readonly _menuService: IMenuService,
+ @IMenuManagerService private readonly _menuMangerService: IMenuManagerService,
  1. Menu Registration:
    • Before: Added menu items individually using addMenuItem
    • After: Uses a new mergeMenu method to define the entire menu structure
- this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(MenuItemFactory), {}));
+ this._menuMangerService.mergeMenu({
+     [RibbonStartGroup.OTHERS]: {
+         [MenuItemId]: {
+             order: 10,
+             menuItemFactory: MenuItemFactory
+         },
+         // ... other menu items
+     },
+     // ... other menu groups
+ });
  1. Menu Item Configuration:
    • Before: Included positions and group properties in menu item definitions
    • After: These properties are now defined in the menu item configuration within the mergeMenu method, rather than in the menu item definition itself
 return {
     id: MENU_ITEM_ID,
     type: MenuItemType.BUTTON,
     icon: 'IconName',
     tooltip: 'tooltipKey',
     title: 'titleKey',
-    group: MenuGroup.TOOLBAR_FORMULAS_INSERT,
-    positions: [MenuPosition.TOOLBAR_START, MenuPosition.CONTEXT_MENU],
 };

These changes provide a more centralized and structured approach to menu management. Univer plugin developers will need to update their menu registration code to align with this new structure.

📝 Univer Docs

  • Added support for line height settings in documents, allowing both fixed values and multiple line spacing options. #3176
  • Hyperlink refactor. #3148
  • Other optimizations and fixes

📢 Join the Conversation

We welcome your input and insights as we embark on this exciting journey. Connect with us on:

📝 Changelog

Full changelog (2024-09-07)

Bug Fixes

  • auto-fill: change apply type will undo last commands (#3311) (391c523)
  • clipboard: copy will not use filtered-out rows content (#3292) (ec601c3)
  • conditional-formatting: init view model (#3349) (ad145f2)
  • conditional-formatting: render cache error (#3345) (e812441)
  • conditional-formatting: the maximum and minimum values are corre… (#3270) (5d41a9b)
  • crosshair: fix no plugin name for the plugin (19564c7)
  • design: popup style (#3325) (675933c)
  • detect row/col index in selection (#3348) (c9fef1b)
  • docs: link break in link (#3254) (ff17894)
  • drawing issues (#3245) (d848d33)
  • filter: filter range change error when remove rows/cols (#3324) (a70ef37)
  • filter: filter render controller should dispose its vars when unit disposed (#3340) (be7da80)
  • fix dependencies of telemetry (#3280) (965064e)
  • fix the sorting menu item display position (#3314) (3f18a4f)
  • fix threshold error handling (#3261) (1e1dde5)
  • fix uni menu (#3338) (af63f7d)
  • font rendering diffrange condition fix (#3264) (c920d53)
  • formula: bracket has more blank (#3331) (4900a3c)
  • formula: fix formula paste (#3257) (771f191)
  • formular: fix dependency performance issue (#3359) (f2f7f5b)
  • mobile selection did not drawing (#3312) (d1773ed)
  • permission: fix permission render bugs (#3300) (9751c0a)
  • selection type did not update when set type to normal(0) (#3317) (2909cf8)
  • sheet-data-validation: auto-format data validation non-standard date string & data-validation auto-fill (#3336) (fc3dc44)
  • sheets-drawing-ui: sheet-drawing error receive data from doc (#3337) (b8e6e42)
  • sheets-drawing-ui: sheet-drawing-import (#3277) (183b3e0)
  • sheets-formula: fix the issue of missing formula description list (#3323) (9d314ce)
  • sheets-ui: auto-fill will copy auto-height strategy from origin region (#3287) (04f156e)
  • sheets: skip remove-sheet on watch range if skipIntersects was set (#3356) (2ee440a)
  • sheets: undo set col width should set to the original value (#3353) (c5ebb79)
  • sheet: unhide row button will update when skeleton change & auto-fill will check empty (4598c91)
  • skip invisible row in filtered state for performance (#3319) (5ada754)
  • slide: 2024 width (#3156) (1bddcb8)
  • sync mutation will not quit auto-fill mode (#3351) (8a7545a)
  • unexpected cross viewport selection because it counts rowheader (#3296) (ebde3da)
  • uni-formula-ui: uni formula deps error (#3302) (5ab492f)
  • uni: fix missing undo & redo menu item (#3343) (15f18c8)

Features