Releases: handsontable/handsontable
Releases · handsontable/handsontable
7.2.0
Changes
- Added
cellProperties
to the arguments of search'squeryMethod
so that it would be possible to tell what kind of data was being queried. (#4944) - Fixed a bug with a disappearing column header, when the
height
option is was set toauto
. (#6302) - Fixed a problem with an error being thrown when trying the clear a column with the first cell set to
readOnly
. (#6246) - Fixed a bug where it was impossible to set data for a
readOnly
-typed cell, when any cell was selected. (#6214) - Fixed a problem with an error being thrown when pasting data to
readOnly
-typed cells. (#6209) - Fixed a problem with the
Undo
feature not working for columns defined as functions. (#6147) - Fixed a bug where
this.TD
wasundefined
in the editor'sprepare
method whenfixedColumnsLeft
andviewportColumnRenderingOffset
were both set. (#6043) - Fixed a bug where the cell selection frame overlapped the bottom fixed rows. (#5947)
- Fixed a problem with an error being thrown after initializing an empty table or removing all the data from the table and clicking the corner header. (#5126)
- Fixed a problem with reloading data with a new set in the Nested Rows plugin. (#6339)
- Rewrote some of the Walkontable methods to return correct information about the table. (#6191)
- Made some improvements to the TypeScript definition file. (#6168, #6107, #6102, #6239, #6266)
- Improved the documentation and definition files regarding the
after-
hooks for creating and removing rows/columns. (#6296) - Improved the documentation for the
totalColumn
option. (#6281) - Added a
lint:fix
script to be able to fix the lint errors from the CLI. (#6260) - Fixed all the tests for Windows and added run-script,
walkontable.watch
. (#6187) - Removed the unused
check-es3-syntax-cli
package to fix Github's security alert. (#6319) - Updated the dependencies to fix errors thrown by
npm audit
(#6318)
7.1.1
Changes
- Refactored the Walkontable table renderers. (#6089)
- Changed the underlying format for empty cells. From now on, all empty cells are stored internally as
null
. The only exceptions are:- empty cells that have been edited and saved as an empty string,
- empty cells that have been copied and pasted.
In both of these cases, they are stored as an empty string (''
).
(#4106)
- Removed the
yarn.lock
file from the repository and updated the Node version in the Travis configuration file. (#6161) - Added a missing
rootInstanceSymbol
property to Handsontable to allow usingnew Handsontable.Core
properly. (#6040) - Fixed a bug, where copying/pasting/deleting data for
autocomplete
-typed cells caused an error to be thrown. (#6033) - Refactored the Custom Borders plugin to resolve problems with its performance. (#6052)
- Optimized the use of arrays for the V8 engine in the
parseTable
module. (#6060) - Fixed a problem where scrolling the dropdown menu scrolled the entire table. (#5913)
- Fixed a bug where removing a change in the
beforeChange
hook callback broke the table. (#5893) - Fixed a problem where cutting the value from a
checkbox
-typed cell made it switch to#bad-value#
. (#4106) - Fixed a bug where the
getCell
method returnedundefined
, while it wasn't supposed to. (#6079) - Updated Jasmine and made changes to the tests and tests configuration in order for them to pass in the browser and prevent memory leaks. (#6077, #6096)
- Changed the way the
afterColumnMove
hook works, now it won't fire ifbeforeColumnMove
hook callback canceled the action. (#5958) - Fixed a problem with the
Undo
feature reverting the editing actions that didn't make any changes to the data. (#4072) - Fixed a bug, where the dropdown editor did not work properly, when there were multiple Handsontable instances implemented on the page. (#6122)
- Fixed the tests for Windows. (#5878)
- Fixed the npm audit security errors. (#6130)
- Fixed a problem with scrolling not working properly when hovering over the Handsontable container. (#5212)
- Refactored the
toMatchHTML
Jasmine matcher to make tests pass on Firefox. (#6148) - Fixed the
getCell
method for fixed bottom rows, which caused the selection not to work properly. (#6084) - Fixed a bug, where the table height increased every time the window had been resized. (#3433)
- Corrected some minor mistakes in the JSDocs and Typescript definitions. (#6123, #6125, #6142, #6152, #6158, #6160, #6129)
7.1.0
Changes
- Added a new feature, allowing users to parse HTML tables into Handsontable settings and Handsontable instances to plain HTML tables. This change introduces these new API methods:
Handsontable.helper.instanceToHTML: (instance: Handsontable.Core) => string
- parses the provided Handsontable instance to an HTML table as astring
Handsontable.helper.htmlToGridSettings(element: Element | string, rootDocument?: Document) => Handsontable.DefaultSettings
- analyses a static HTML table and returns a Handsontable-compatible settings objecthotInstance.toTableElement: () => HTMLTableElement
- converts the Handsontable instance to a static HTML tablehotInstance.toHTML: () => string
- same asHandsontable.helper.instanceToHTML
, but the instance is already bound
(#5684)
- Fixed a bug, where it wasn't possible to block
Undo/Redo
plugin keyboard shortcuts. (#6028) - Corrected the
ManualColumnMove
type definitions. (#6011) - Fixed a problem with pasting multi-line data from Excel and Google Sheets. (#5970, #5622)
- Fixed a bug, where it was impossible to paste merged cells from Excel. (#5940)
- Fixed a problem with copying cells with longer contents from Excel or Google Sheets. (#5925)
- Fixed a problem with Handsontable not adding the carriage return character to the pasted data. (#5826, #5647)
- Fixed some
NestedRows
performance issues on large datasets. (#5711) - Fixed a bug, where placing SVG in a cell caused a
ManualColumnMove
error. (#4120) - Fixed a bug, where using the
Undo
functionality, the selection was not reverted to its original position. (#6017) - Fixed a bug, where the
getCell
method, when used with thetopmost
argument set totrue
, did not return the correct cell elements from the bottom overlay. (#5896) - Added a possibility to return
false
from thebeforeCreateCol
hook to stop the column creation. (#5691)
7.0.3
Changes
- Fix the
skipRowOnPaste
option to work similarly toskipColumnOnPaste
and add it to the documentation. (#5845) - Fix the font inconsistency in the dropdown menu. (#5948)
- Fix a problem with the
manualColumnResize
option not working properly alongsidefixedColumnsLeft
. (#5959) - Fix a problem with the
TextEditor
not resizing the input field properly while being placed on the edge on the table and containing multi-line text. (#5969) - Updated some of the dependencies to get rid of the security vulnerabilities thrown by
npm audit
. (#5995) - Removed
eval()
from theformula-parser
module to fulfill the Content-Security-Policy. (#5990)
7.0.2
7.0.1
Changes
- Fixed the
LICENSE.txt
file link inREADME.md
. (#5914) - Replaced
fixed
positioning of the row/column resize handles withabsolute
to prevent misalignment issues in implementations based on CSStransform
. (#5050) - Updated
webpack
to version4
. (#5912) - Fixed a problem with Handsontable throwing errors on scroll by adding support for
EventListenerOption
in theEventManager
. (#5904, #4526) - Added
core-js
to Handsontable's dependencies. (#5888) - Added a
ghost-table
attribute to all cell elements generated with Ghost Table. (#5927) - Fixed a bug, where the editor was visible despite not being open, when the table was positioned using CSS
transform
. (#5886) - Fixed a bug, where the table scrolled up after clicking a cell when Handsontable was implemented inside of an
iframe
. (#5910)
7.0.0
Breaking changes
-
Starting with version 7.0.0, there is only one Handsontable, as Handsontable Pro has been merged with Handsontable Community Edition.
-
Handsontable is now "source-available" instead of "open source". The MIT license has been replaced with custom, free for non-commercial license.
Read our statement on GitHub for more details. -
Added the
beforeTrimRows
andbeforeUntrimRows
hooks and modified the argument list for the existing ones in the Trim Rows plugin. (#5662)- Was:
afterTrimRow: (rows)
afterUntrimRow: (rows)
- Is:
afterTrimRow: (currentTrimConfig, destinationTrimConfig, actionPossible, stateChanged)
afterUntrimRow: (currentTrimConfig, destinationTrimConfig, actionPossible, stateChanged)
- Was:
-
Removed the deprecated
selectCellByProp
method. (#5174) -
Added hooks for the Hidden Rows and Hidden Columns plugins + added validation of the provided rows. (#165, #163, #5651, #5522)
- Before this change, passing an invalid set of indexes (for example,
[-1, 0, 1]
) would still hide the valid elements from the set. - After this change, an invalid set of indexes passed to the plugin will result in the termination of the performed action.
- Before this change, passing an invalid set of indexes (for example,
-
We no longer support Bower. To install Handsontable, use npm or CDN instead.
Changes
- Refactored the following classes to ES6 (#5403):
- Fixed a problem where inserting a new row didn't update the Trim Rows plugin properly. (#5761)
- Fixed a problem where removing a row didn't update the Trim Rows plugin properly. (#5738)
- Added a possibility to declare the table's width/height using relative values (
%
,vh
,vw
,rem
,em
). (#5749) - Added support for creating a Handsontable instance inside an
iframe
when the instance is initialized outside of it. (#5686, #5744) - Extended the Hidden Rows plugin's hooks argument list. (#5671)
- Updated the
hot-formula-parser
package inpackage.json
. (#5665) - Fixed a bug where the
getCell
method returnedundefined
in some specific cases. (#5608) - Fixed a bug where an asynchronous validator would throw an exception when run after the table had been destroyed. (#5567)
- Fixed a bug where an input defined in the headers would lose focus right after clicking on it. (#5541)
- Fixed a bug where using
preventOverflow
would cause the editor offset to be incorrect when scrolling vertically. (#5453) - Fixed a bug where selecting a mixed merged/non-merged section would cause improper results. (#4912)
- Fixed a problem where the
Handsontable
class export differed between UMD and other environments. (#4605) - Fixed a bug where disabling
colHeaders
usingupdateSettings
would not work properly. (#4136) - Fixed a bug where the changes cancelled using the
beforeChange
hook were still validated. (#3381) - Updated the documentation for the
setSortConfig
method of the Column Sorting plugin. (#19) - Fixed a problem where passing an
Array
as a cell value would cause thepopulateFromArray
method to fail. (#5675) - Rewrote the TypeScript definition file so it would match the actual structure of the library more precisely. (#5767)
- Fixed a problem where resizing the table would not trigger the rendering process. (#5730, #2766)
- Fixed a memory leak in the Context Menu plugin. (#5759)
- Fixed a problem where it was impossible to add cell comments due to the editor closing too early. (#5614)
- Fixed a bug where the Trim Rows plugin passed an unwanted value from the
beforeCreateRow
hook callback. (#5585) - Fixed a problem with the context menu displaying an empty box when no available menu items were provided. (#3865)
6.2.2
6.2.1
Changes
- Updated
babel
to7.x
. (#5398) - Fixed a bug, where calling
updateSettings
orloadData
with a new, larger dataset caused an error to be thrown. (#5617) - Fixed a bug, where the mobile keyboard opened on every cell selection on Android devices. (#5586)
- Fixed a bug, where the date validation did not work properly in some cases. (#5563)
- Fixed a problem with poor
updateSettings
performance when removing rows. (#5561) - Fixed a problem with improper
carriage return
symbol usage in the pasted data. (#5477) - Added some missing methods, options and hooks to the typescript definition file. (#5639, #5590)
- Corrected the CSS property assignments to zero from
0
to'0'
; (#5291) - Fixed a bug, where the
autofill
feature did not work properly with themergeCells
plugin, while working on an object-based dataset. (#5022) - Fixed a problem with the
observeChanges
plugin causing a memory leak. (#4400) - Fixed a problem with the scientific notation not being supported in the numeric editor. (#2030)
- Fixed a bug, where setting
enterBeginsEditing
tofalse
allowed changing the state ofcheckbox
-typed cells using the ENTER key. (#4162)
6.2.0
Changes
- Added the Korean language support. (#5356)
- Added the Latvian language support. (#5186)
- Updated the TypeScript definition file for
ColumnSorting
andMultiColumnSorting
. (#5545, #5445) - Updated the TypeScript definition for
beforeRowMove
andbeforeColumnMove
. (#5416) - Updated the TypeScript definition for some selection and context menu related methods and hooks. (#5307)
- Fixed a bug with the Copy/Paste plugin working incorrectly, when copying
0
. (#5544) - Fixed a problem with improper
autoRowSize
calculations. (#5527) - Fixed a problem with the keyboard opening on every selection on mobile. (#5479)
- Refactored the
columnSorting
plugin to be reusable with themultiColumnSorting
plugin. (#5457) - Fixed a bug, where adding a new row cleared the data from the first row. (#5446)
- Fixed a bug, where using the
allowInvalid: false
option on date-typed cells broke the table. (#5419) - Fixed a bug with the column header width being calculated incorrectly. (#5359)
- Fixed a problem with building Handsontable
3.0.0+
usinghot-builder
. (#5287) - Fixed a bug, where opening the context menu on the column header sorted the column. (#4676)
- Updated Jest to resolve a security issue with the
merge
package. (#5564) - Fixed some unstable tests, which caused the CI to fail frequently. (#5562)
- Fixed the
ERR_ADDRESS_INVALID
error when running e2e tests. (#5558)