Add changelog v9.0.0

Co-authored-by: Denis Spitsyn <denis.spitsyn@onlyoffice.com>
Co-committed-by: Denis Spitsyn <denis.spitsyn@onlyoffice.com>
This commit is contained in:
Denis Spitsyn
2025-06-18 11:13:34 +00:00
committed by Alexey Golubev
parent add3336024
commit a9b4c1a004
2 changed files with 414 additions and 0 deletions

View File

@@ -1,4 +1,5 @@
personal_ws-1.1 en 580 utf-8
accessKeyId
ACOT
ACOTH
ActiveCell
@@ -22,9 +23,13 @@ ApiBlockLvlSdt
ApiBuilder
ApiChart
ApiComment
ApiCore
ApiCustomProperties
ApiDocument
ApiDrawing
ApiFormRoles
ApiFreezePanes
ApiNotesPage
ApiParagraph
ApiRange
ApiSlide
@@ -40,6 +45,7 @@ arrData
Asana
asc
ASC
ascii
AscWord
ashx
aspose
@@ -68,6 +74,7 @@ autostart
AVERAGEA
AVERAGEIFS
AxcExt
az
beforeCursor
BESSELI
BESSELJ
@@ -85,12 +92,16 @@ BITXOR
blockcontent
blocklevelstd
BMP
bool
boolean
boundingBox
br
brower
bucketName
bugfix
bugfixes
builded
bValue
callbackUrl
Callout
CanUpdateTarget
@@ -103,6 +114,7 @@ changesError
ChartSheetSubstream
checkbox
CheckBox
checkBoxPr
checkHealth
CHIDIST
CHIINV
@@ -137,6 +149,8 @@ configs
connectionAndInactivity
ConnectionsOS
COnOfftype
ContentControl
ContentControls
convertasion
Convertation
ConvertContentView
@@ -154,6 +168,7 @@ crypted
cryptographic
CSC
CSCH
css
csv
CSV
CSvmFile
@@ -167,6 +182,7 @@ CUBESET
CUBESETCOUNT
CUBEVALUE
customXml
CustomXML
CVE
cyrillic
Cyrl
@@ -176,12 +192,14 @@ Dansk
dataset
dataBinding
DatePicker
datePickerPr
DAVERAGE
DBNum
DCOUNT
DCOUNTA
de
Decryptor
delegateRole
deleteForgotten
Deprecations
DesktopEditors
@@ -224,6 +242,7 @@ DsProxy
DSTDEV
DSUM
DVAR
eastAsia
eb
Ec
ECMA
@@ -251,6 +270,7 @@ fb
FDB
FDIST
FI
filePath
fillForms
FINV
firefox
@@ -261,12 +281,15 @@ fodp
fods
fodt
folderPath
fontSlot
forced
ForcePathStyle
forceView
forceWesternFontSize
ForEach
FormattedDiskPagePAPX
formdata
FormPrBase
formsdataurl
formsubmit
FORMTEXT
@@ -301,6 +324,7 @@ GetCurrentContentControlPr
GetCurrentSentence
GetCurrentWord
GetEndNotesFirstParagraphs
GetFontFamily
GetFontNames
GetFootnotesFirstParagraphs
getForgotten
@@ -342,6 +366,7 @@ gridlines
GUID
gzip
gziped
hAnsi
healthcheck
healthCheck
hideContentControlTrack
@@ -362,6 +387,7 @@ HWPX
icu
ie
IFNA
iframe
IIS
imageDark
IMCOSH
@@ -382,6 +408,7 @@ InsertOleObject
InsertTextForm
integrations
init
integrators
INTL
INV
io
@@ -475,6 +502,7 @@ multitenancy
mysql
MySQL
mysqlExtraOptions
namespace
NativeEngine
natively
Nederland
@@ -487,6 +515,7 @@ NIST
nodehun
nodejs
NodeJS
nodeName
NoHistory
nonprinting
npm
@@ -498,6 +527,8 @@ numberings
NUMBERVALUE
Numpad
NumPr
nValue
oCreated
odf
Odf
ODF
@@ -512,7 +543,9 @@ odt
ODT
oform
OFORM
oLastPrinted
OLEObjectData
oModified
onChangeContentControl
onDocumentContentReady
onDocumentStateChange
@@ -546,6 +579,7 @@ otp
ots
ott
owncloud
oValue
oxps
nPage
pageDown
@@ -588,10 +622,12 @@ ppt
PptFormatReader
pptx
PptxFormat
preload
Preseentation
PrintGridlines
PrintHeadings
privateKey
proxying
PtgArea
PtgList
PtgName
@@ -641,20 +677,25 @@ RRI
rtf
RTF
RTL
runtimeConfig
SAAS
save
savefile
SaveLock
saveUrl
sCategory
Schweiz
sCreator
screenreader
ScrollToAbsolutePosition
sDescription
sdk
sdkjs
sdt
SearchAndReplace
SECH
SecurityError
secretAccessKey
SectionPropertiesMapping
selectwheel
SELinux
@@ -691,6 +732,7 @@ SetTopMargin
setUsers
SetVisible
SetWatermarkSettings
sFormat
sharded
sharding
shardkey
@@ -699,13 +741,18 @@ SheetView
showReviewChanges
shrinkwrap
si
sIdentifier
SIGABR
signatureLine
Sinhala
sKeywords
sLanguage
sLastModifiedBy
slidePlayerBackground
Slovenčina
Slovenská
SmartArt
sName
snaplines
SNGL
sockjs
@@ -720,8 +767,11 @@ spawnOptions
specifi
Spellcheker
Sql
sRevision
ssl
sslEnabled
sStatus
sSubject
standardView
startRPC
startup
@@ -729,9 +779,11 @@ statsd
statusBar
STDEV
stirkeout
sTitle
strikethrough
sr
Sri
storages
STW
submitForm
substring
@@ -739,8 +791,10 @@ SUMIFS
SUMPRODUCT
supervisord
sv
sValue
Svenska
Sverige
sVersion
svg
SVG
Svizzera
@@ -797,6 +851,7 @@ uri
URI
url
urls
useDirectStorageUrls
UsedRange
useradd
UserCount
@@ -805,12 +860,15 @@ useridoriginal
username
UsersCountOS
usersfiles
ur
UTF
util
verysilent
ViewForms
vhost
VLOOKUP
VSD
VSDX
VSTACK
vml
wav
@@ -843,7 +901,11 @@ XLSX
XLTX
XMATCH
xml
xmlMapping
xmlPartId
xmlStr
XORCrypt
xPath
xps
XSS
Yandex

View File

@@ -1,5 +1,357 @@
# Change log
## 9.0.0
### New features
#### All Editors
* Added new interface themes: Modern Light and Modern Dark
* Added saving of the last selected languages in spellcheck lists
* Added Arabic spellcheck dictionary used in sixteen dialects
* Added AI-powered macro generation from descriptions and VBA-to-JavaScript
conversion
* Added the interface translation into Urdu (ur-PK, Urdu (Pakistan))
* Added support for TextArt text settings inside chart labels
* Added support for drawing the Up/Down Bars chart elements
#### Document Editor
* Added correct display of previews for paragraph numbers for RTL
* Improved positioning and settings of TextArt for RTL
* Improved drawing of borders and fill for paragraphs with RTL direction
* Enabled accurate cursor navigation with arrow keys based on the paragraph's
text direction
* Added the ability to display numbers using Hindi digits
* Added a setting in the File menu for selecting the preferred font size:
Western/Chinese for the Chinese interface language (Chinese (Simplified))
* Added a Borders button to the Home toolbar to quickly set paragraph settings
* Added support for the `MD` format for reading
#### Spreadsheet Editor
* Added support for displaying bidirectional text
* Added the ability to select external data from another spreadsheet
#### Presentation Editor
* Added the ability to set the paragraph direction (Text Direction > RTL)
on the toolbar and in the advanced settings
* Added the ability to view animations with text
* Added the "Preserve" option to the Slide Master context menu
#### Forms
* Changed the appearance of the Signature and Image fields: the placeholder
and signature icon are now always displayed
* Improved user experience when filling in the Signature and Image fields
* Added a new `"type": "signature"` for the Signature field, used in the process
of filling out forms
#### PDF Editor
* Added the ability to set RTL direction for text
* The Edit Text option is available in the Community Edition build
* Implemented a `PDF` form editor
* Added copying pages between `PDF` files
#### Diagrams
* Release of the first version of the Diagram Viewer with the ability
to open `VSDX` files
#### Convert
* Added conversion of the `XLSB` format to the editor's internal format,
allowing editing and saving in `XLSX` without preliminary conversion
#### Back-end
* Added support for Azure Blob Storage (`storage.name = "storage-az"`)
for editor cache. To use, specify the endpoint, `bucketName`
and `credentials` (`accessKeyId` and `secretAccessKey`)
* Added flag `storage.useDirectStorageUrls` (`bool`), which controls the issuance
of links to external storages: direct links or proxying through the server
* Added the ability to prepare static editor data (`html`, `css`, `js`, `fonts`)
in the browser cache before opening the document using the
`?preload=placeholder` parameter to the link to `api.js` or a hidden `iframe`
with `preload.html` located next to `api.js`
* Added setting `runtimeConfig.filePath` - path to dynamic server config,
allowing to change parameters without restarting, similar to tenant configs
* Added the ability to set parameters and keys of AI models used in editors
on the /info page
* Added the ability for the server administrator to add own dictionaries
#### Customization
* Added parameter `customization.forceWesternFontSize`: `false`/`true`
for setting by integrators
* Added a parameter to hide the icon with the user's avatar/initials
in the header: `customization.layout.header.user`: `true`/`false`.
The setting is available to users with the extended license
#### API
* Added methods for creating/adding custom `ContentControls`
```javascript
ApiDocument.prototype.AddCheckBoxContentControl = function(checkBoxPr)
ApiDocument.prototype.AddPictureContentControl = function(width, height)
ApiDocument.prototype.AddComboBoxContentControl = function(list, selected)
ApiDocument.prototype.AddDropDownListContentControl = function(list, selected)
ApiDocument.prototype.AddDatePickerContentControl = function(datePickerPr)
Api.prototype.CreateCheckBoxContentControl = function(checkBoxPr)
Api.prototype.CreatePictureContentControl = function(width, height)
Api.prototype.CreateComboBoxContentControl = function(list, selected)
Api.prototype.CreateDropDownListContentControl = function(list, selected)
Api.prototype.CreateDatePickerContentControl = function(datePickerPr)
```
* Added the ability to get `CustomXml` collection
```javascript
ApiDocument.prototype.GetCustomXmlParts = function()
```
* Added support for handling the `Custom XML` collection
```javascript
ApiCustomXmlParts.prototype.Add = function(xml)
ApiCustomXmlParts.prototype.GetCount = function()
ApiCustomXmlParts.prototype.GetById = function(xmlPartId)
ApiCustomXmlParts.prototype.GetByNamespace = function(namespace)
ApiCustomXmlParts.prototype.GetAll = function()
```
* Enabled functionality for managing the `Custom XML` collection element
```javascript
ApiCustomXmlPart.prototype.GetId = function()
ApiCustomXmlPart.prototype.GetNodes = function(xPath)
ApiCustomXmlPart.prototype.GetXml = function()
ApiCustomXmlPart.prototype.Delete = function()
ApiCustomXmlPart.prototype.DeleteAttribute = function(xPath, name)
ApiCustomXmlPart.prototype.InsertAttribute = function(xPath, name, value)
ApiCustomXmlPart.prototype.GetAttribute = function(xPath, name)
ApiCustomXmlPart.prototype.UpdateAttribute = function(xPath, name, value)
ApiCustomXmlPart.prototype.DeleteElement = function(xPath)
ApiCustomXmlPart.prototype.InsertElement = function(xPath, xmlStr, index)
ApiCustomXmlPart.prototype.UpdateElement = function(xPath, xmlStr)
```
* Added support for individual `CustomXML` nodes
```javascript
ApiCustomXmlNode.prototype.GetNodes = function(xPath)
ApiCustomXmlNode.prototype.GetXPath = function ()
ApiCustomXmlNode.prototype.GetNodeName = function()
ApiCustomXmlNode.prototype.GetNodeValue = function()
ApiCustomXmlNode.prototype.GetXml = function()
ApiCustomXmlNode.prototype.GetText = function()
ApiCustomXmlNode.prototype.SetNodeValue = function(xml)
ApiCustomXmlNode.prototype.SetText = function(text)
ApiCustomXmlNode.prototype.SetXml = function (xml)
ApiCustomXmlNode.prototype.Delete = function()
ApiCustomXmlNode.prototype.GetParent = function()
ApiCustomXmlNode.prototype.Add = function(nodeName)
ApiCustomXmlNode.prototype.GetAttributes = function()
ApiCustomXmlNode.prototype.SetAttribute = function(name, value)
ApiCustomXmlNode.prototype.UpdateAttribute = function(name, value)
ApiCustomXmlNode.prototype.DeleteAttribute = function(name)
ApiCustomXmlNode.prototype.GetAttribute = function(name)
```
* Added methods to link `ContentControl` and `CustomXML`
```javascript
ApiInlineLvlSdt.prototype.SetDataBinding = function(xmlMapping)
ApiInlineLvlSdt.prototype.GetDataBinding = function()
ApiInlineLvlSdt.prototype.UpdateFromXmlMapping = function()
ApiInlineLvlSdt.prototype.GetDataForXmlMapping = function()
ApiBlockLvlSdt.prototype.SetDataBinding = function(xmlMapping)
ApiBlockLvlSdt.prototype.GetDataBinding = function()
ApiBlockLvlSdt.prototype.UpdateFromXmlMapping = function()
ApiBlockLvlSdt.prototype.GetDataForXmlMapping = function()
```
* Added method for inserting formulas
```javascript
ApiPresentation.prototype.AddMathEquation(sText, sFormat)
```
* Added new class `ApiNotesPage` for working with notes
```javascript
ApiNotesPage.prototype.GetBodyShape()
ApiNotesPage.prototype.AddBodyShapeText(sText)
```
* Added methods to the `ApiSlide` class
```javascript
ApiSlide.prototype.GetNotesPage()
ApiSlide.prototype.AddNotesText(sText)
```
* Added methods for getting presentation objects
```javascript
ApiPresentation.prototype.GetAllOleObjects()
ApiPresentation.prototype.GetAllCharts()
ApiPresentation.prototype.GetAllShapes()
ApiPresentation.prototype.GetAllImages()
ApiPresentation.prototype.GetAllDrawings()
```
* Added methods for getting all slide templates
```javascript
ApiMaster.prototype.GetAllLayouts()
```
* Added `ApiCore` and `ApiCustomProperties` classes
for working with file metadata
```javascript
ApiCore.prototype.SetCategory = function (sCategory)
ApiCore.prototype.GetCategory = function ()
ApiCore.prototype.SetContentStatus = function (sStatus)
ApiCore.prototype.GetContentStatus = function ()
ApiCore.prototype.SetCreated = function (oCreated)
ApiCore.prototype.GetCreated = function ()
ApiCore.prototype.SetCreator = function (sCreator)
ApiCore.prototype.GetCreator = function ()
ApiCore.prototype.SetDescription = function (sDescription)
ApiCore.prototype.GetDescription = function ()
ApiCore.prototype.SetIdentifier = function (sIdentifier)
ApiCore.prototype.GetIdentifier = function ()
ApiCore.prototype.SetKeywords = function (sKeywords)
ApiCore.prototype.GetKeywords = function ()
ApiCore.prototype.SetLanguage = function (sLanguage)
ApiCore.prototype.GetLanguage = function ()
ApiCore.prototype.SetLastModifiedBy = function (sLastModifiedBy)
ApiCore.prototype.GetLastModifiedBy = function ()
ApiCore.prototype.SetLastPrinted = function (oLastPrinted)
ApiCore.prototype.GetLastPrinted = function ()
ApiCore.prototype.SetModified = function (oModified)
ApiCore.prototype.GetModified = function ()
ApiCore.prototype.SetRevision = function (sRevision)
ApiCore.prototype.GetRevision = function ()
ApiCore.prototype.SetSubject = function (sSubject)
ApiCore.prototype.GetSubject = function ()
ApiCore.prototype.SetTitle = function (sTitle)
ApiCore.prototype.GetTitle = function ()
ApiCore.prototype.SetVersion = function (sVersion)
ApiCore.prototype.GetVersion = function ()
ApiCustomProperties.prototype.AddStringProperty = function (sName, sValue)
ApiCustomProperties.prototype.AddNumberProperty = function (sName, nValue)
ApiCustomProperties.prototype.AddDateProperty = function (sName, oValue)
ApiCustomProperties.prototype.AddBoolProperty = function (sName, bValue)
ApiCustomProperties.prototype.GetPropertyValueByName = function (sName)
```
* Added methods for getting instances of new classes
in the editor API
```javascript
ApiDocument.prototype.GetCore()
ApiDocument.prototype.GetCustomProperties()
Api.prototype.GetCore()
Api.prototype.GetCustomProperties()
ApiPresentation.prototype.GetCore()
ApiPresentation.prototype.GetCustomProperties()
```
* Added methods for switching the visual presentation
of `Content Controls`, accepting values: `"boundingBox"`,
`"hidden"`
```javascript
ApiInlineLvlSdt.prototype.SetAppearance = function(type)
ApiInlineLvlSdt.prototype.GetAppearance = function()
ApiBlockLvlSdt.prototype.SetAppearance = function(type)
ApiBlockLvlSdt.prototype.GetAppearance = function()
```
* Added methods for getting/setting the role and tag to the base class
for all forms, as well as the ability to set the role when creating a form
through the general form setting `FormPrBase.role`
```javascript
ApiFormBase.prototype.GetTag = function()
ApiFormBase.prototype.SetTag = function(tag)
ApiFormBase.prototype.GetRole = function()
ApiFormBase.prototype.SetRole = function(role)
```
* Added methods to get forms by selected role or key
```javascript
ApiDocument.prototype.GetFormsByRole = function(role)
ApiDocument.prototype.GetFormsByKey = function(key)
```
* Added method to get list of keys linked to the given role
```javascript
ApiDocument.prototype.GetFormKeysByRole = function(role)
```
* Added a method to get the form value directly by key (for a group
of radio buttons, it returns Choice, i.e. the name of the selected item)
```javascript
ApiDocument.prototype.GetFormValueByKey = function(key)
```
* Added methods for date field to work via built-in JavaScript
date class
```javascript
ApiDateForm.prototype.SetDate = function(date)
ApiDateForm.prototype.GetDate = function()
```
* Added `fontSlot` parameter to `GetFontFamily` method, accepting values:
`"ascii"`, `"eastAsia"`, `"hAnsi"`, `"cs"`
* Added automatic font calculation from the theme
in the `GetFontFamily` method, if specified through the theme
```javascript
ApiTextPr.prototype.GetFontFamily = function(fontSlot)
```
* Added a method to access the role management class,
returning an object of the new `ApiFormRoles` type
```javascript
ApiDocument.prototype.GetFormRoles = function()
```
* Added methods for working with the `ApiFormRoles` class
```javascript
ApiFormRoles.prototype.Add = function(name, props)
ApiFormRoles.prototype.Remove = function(name, delegateRole)
ApiFormRoles.prototype.GetCount = function()
ApiFormRoles.prototype.GetAllRoles = function()
ApiFormRoles.prototype.HaveRole = function(name)
ApiFormRoles.prototype.GetRoleColor = function(name)
ApiFormRoles.prototype.SetRoleColor = function(name, color)
ApiFormRoles.prototype.MoveUp = function(name)
ApiFormRoles.prototype.MoveDown = function(name)
```
#### Plugins
* Added the ability to add custom buttons using a plugin for `ContentControl`
in the document editor
#### Mobile
* Enabled slide thumbnail panel adjustment upon device orientation change
## 8.3.3
### Fixes