Skip to content

Bump handsontable from 17.1.0 to 18.0.0 in /mpcontribs-portal#2095

Merged
tsmathis merged 1 commit into
masterfrom
dependabot/npm_and_yarn/mpcontribs-portal/handsontable-18.0.0
Jul 6, 2026
Merged

Bump handsontable from 17.1.0 to 18.0.0 in /mpcontribs-portal#2095
tsmathis merged 1 commit into
masterfrom
dependabot/npm_and_yarn/mpcontribs-portal/handsontable-18.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 6, 2026

Copy link
Copy Markdown
Contributor

Bumps handsontable from 17.1.0 to 18.0.0.

Release notes

Sourced from handsontable's releases.

18.0.0

Added

  • Breaking change: Added wrapper layout slots and a layout option to control the order of UI elements rendered around the grid (pagination, dialog). The license notification always renders last in the bottom area and is not orderable. Built-in UI now mounts into dedicated wrapper containers, which changes the root DOM structure. #12094
  • Re-exported CellMeta, CellProperties, ColumnSettings, GridSettings and other public types as named top-level imports from handsontable and handsontable/base. #11240
  • Added hashRevealDelay option to the password cell type, which briefly shows each typed character before masking it. #12491
  • Added the visibleWhen nested-header option ('collapsed', 'expanded', 'always') that lets you choose which columns of a collapsible group stay visible when the group is collapsed or expanded. #12776

Changed

  • Breaking change: Migrated Handsontable core source from JavaScript to TypeScript #12011
  • Breaking change: Renamed the --ht-wrapper-border-radius theme variable to --ht-border-radius (token wrapperBorderRadius to borderRadius) and removed the --ht-wrapper-border-width and --ht-wrapper-border-color variables (tokens wrapperBorderWidth and wrapperBorderColor). #12775
  • Breaking change: Angular: Updated Angular peer dependency minimum version to 19 in @handsontable/angular-wrapper #1836
  • Dragging a selection past the viewport edge now scrolls the viewport and extends the selection to the newly-scrolled cells. #12344
  • Improved getSourceData() performance when called repeatedly inside the cells function or custom renderers. #12480
  • Improved scroll performance by caching overlay alignment calculations and using native visibility checks. #12659
  • Upgraded ESLint to 8.57 and @​typescript-eslint to v8; enabled type-aware TypeScript lint rules (no-explicit-any, consistent-type-imports, no-floating-promises, no-misused-promises). The no-unsafe-assignment and no-unsafe-return rules are active at warning level pending incremental cleanup. #12664
  • Improved TypeScript type annotations in built-in renderers and internal Core methods for strict-mode compatibility. #12722
  • Strengthened the TypeScript type of the cell-properties parameter in all built-in renderers, editors, and validators from Record<string, unknown> to the canonical CellProperties interface. #12726
  • Included Walkontable in the main tsconfig.json type-check program and reduced as unknown escape-hatch casts in Walkontable from 68 to 10 (-85%) by using generics, union types, and direct structural assignments. #12734
  • Added typing for the handsontable cell type configuration and the getValue setting. #12763
  • Changed the Notification plugin to render its toasts in the grid's overlay layer. #12777
  • Angular: Modernized the Angular wrapper to align with Angular 17–19, simplify setup, reduce dependencies, and clean up tooling. #12451
  • Angular: Added support for installing Angular 16 through 22, without the --force flag #12752
  • Reduced memory usage and improved initialization time for large datasets by no longer materializing cell metadata for every cell during source data validation. #12847

Removed

  • Breaking change: Removed the numbro, moment.js, DOMPurify, and @​handsontable/pikaday dependencies. #12689
  • Breaking change: Removed the deprecated PersistentState plugin, its persistentState option, and the persistentStateSave, persistentStateLoad, and persistentStateReset hooks. Deprecated saveManualColumnWidths(), loadManualColumnWidths(), saveManualRowHeights(), and loadManualRowHeights() — these now no-op and will be removed in the next major release. #0
  • Breaking change: Removed the deprecated Core-level undo/redo methods (hot.undo(), hot.redo(), hot.clearUndo(), hot.isUndoAvailable(), hot.isRedoAvailable(), hot.undoRedo). Use hot.getPlugin('undoRedo') instead. #12728

Fixed

  • Fixed the React and Vue 3 wrappers hiding the table when height: '100%' was set inside a fixed-height parent. #12445
  • Fixed cell selection re-triggering on every scroll gesture on mobile devices. #12450
  • Fixed a bug where placing Handsontable inside a container with overflow-y: hidden and no explicit height caused the container to expand to the browser's CSS height limit (~2²⁵ px). #12453
  • Fixed alter('remove_row', null, N) not removing the last rows when rows were trimmed. #12460
  • Fixed nestedHeaders overriding colWidths with measured header label widths when autoColumnSize is explicitly disabled #12465
  • Fixed the select cell editor losing its scroll-tracking behavior after being closed and reopened. #12468
  • Fixed sort order for date and intl-date cell type values in the "Filter by value" dropdown. #12471
  • Fixed a sub-pixel gap at the grid bottom at non-integer browser zoom levels and misalignment between the master table and the bottom overlay when fixedRowsBottom is configured. #12472
  • Fixed the date filter "before" and "after" conditions including the boundary date in results. #12473
  • Fixed clear() selecting all cells after the table data is cleared. #12477
  • Fixed column sorting not working for boolean data when the column type is set to text. #12479
  • Fixed numeric cell type incorrectly parsing dot-thousands values in European locales (e.g. 7.000 stored as 7 instead of 7000 with de-DE locale). #12482
  • Fixed an infinite loop when pasting a value that cannot be auto-corrected into a date cell with correctFormat: true and allowInvalid: false. #12483
  • Fixed date and time format correction being overwritten when pasting data alongside columns with async autocomplete validators. #12485
  • Fixed the select cell type not preserving the order of numeric selectOptions values. #12487
  • Fixed pasting cells from Apple Numbers losing bare mid-cell quote characters and splitting into multiple rows. #12488
  • Fixed columnSummary to include cells calculated by the formulas plugin in sum, min, max, average and count results. #12489
  • Fixed option dragToScroll #12490
  • Fixed an issue where the active cell flipped to the top-start corner after autofill, causing getSelected to report incorrect start/end coordinates. The selection direction now matches the drag direction (like Google Sheets and Excel). #12498
  • Fixed undo not restoring merged cells after a row containing or overlapping a merged area was removed. #12499

... (truncated)

Changelog

Sourced from handsontable's changelog.

[18.0.0] - 2026-06-30

Added

  • Breaking change: Added wrapper layout slots and a layout option to control the order of UI elements rendered around the grid (pagination, dialog). The license notification always renders last in the bottom area and is not orderable. Built-in UI now mounts into dedicated wrapper containers, which changes the root DOM structure. #12094
  • Re-exported CellMeta, CellProperties, ColumnSettings, GridSettings and other public types as named top-level imports from handsontable and handsontable/base. #11240
  • Added hashRevealDelay option to the password cell type, which briefly shows each typed character before masking it. #12491
  • Added the visibleWhen nested-header option ('collapsed', 'expanded', 'always') that lets you choose which columns of a collapsible group stay visible when the group is collapsed or expanded. #12776

Changed

  • Breaking change: Migrated Handsontable core source from JavaScript to TypeScript #12011
  • Breaking change: Renamed the --ht-wrapper-border-radius theme variable to --ht-border-radius (token wrapperBorderRadius to borderRadius) and removed the --ht-wrapper-border-width and --ht-wrapper-border-color variables (tokens wrapperBorderWidth and wrapperBorderColor). #12775
  • Breaking change: Angular: Updated Angular peer dependency minimum version to 19 in @handsontable/angular-wrapper #1836
  • Dragging a selection past the viewport edge now scrolls the viewport and extends the selection to the newly-scrolled cells. #12344
  • Improved getSourceData() performance when called repeatedly inside the cells function or custom renderers. #12480
  • Improved scroll performance by caching overlay alignment calculations and using native visibility checks. #12659
  • Upgraded ESLint to 8.57 and @​typescript-eslint to v8; enabled type-aware TypeScript lint rules (no-explicit-any, consistent-type-imports, no-floating-promises, no-misused-promises). The no-unsafe-assignment and no-unsafe-return rules are active at warning level pending incremental cleanup. #12664
  • Improved TypeScript type annotations in built-in renderers and internal Core methods for strict-mode compatibility. #12722
  • Strengthened the TypeScript type of the cell-properties parameter in all built-in renderers, editors, and validators from Record<string, unknown> to the canonical CellProperties interface. #12726
  • Included Walkontable in the main tsconfig.json type-check program and reduced as unknown escape-hatch casts in Walkontable from 68 to 10 (-85%) by using generics, union types, and direct structural assignments. #12734
  • Added typing for the handsontable cell type configuration and the getValue setting. #12763
  • Changed the Notification plugin to render its toasts in the grid's overlay layer. #12777
  • Angular: Modernized the Angular wrapper to align with Angular 17–19, simplify setup, reduce dependencies, and clean up tooling. #12451
  • Angular: Added support for installing Angular 16 through 22, without the --force flag #12752
  • Reduced memory usage and improved initialization time for large datasets by no longer materializing cell metadata for every cell during source data validation. #12847

Removed

  • Breaking change: Removed the numbro, moment.js, DOMPurify, and @​handsontable/pikaday dependencies. #12689
  • Breaking change: Removed the deprecated PersistentState plugin, its persistentState option, and the persistentStateSave, persistentStateLoad, and persistentStateReset hooks. Deprecated saveManualColumnWidths(), loadManualColumnWidths(), saveManualRowHeights(), and loadManualRowHeights() — these now no-op and will be removed in the next major release. #0
  • Breaking change: Removed the deprecated Core-level undo/redo methods (hot.undo(), hot.redo(), hot.clearUndo(), hot.isUndoAvailable(), hot.isRedoAvailable(), hot.undoRedo). Use hot.getPlugin('undoRedo') instead. #12728

Fixed

  • Fixed the React and Vue 3 wrappers hiding the table when height: '100%' was set inside a fixed-height parent. #12445
  • Fixed cell selection re-triggering on every scroll gesture on mobile devices. #12450
  • Fixed a bug where placing Handsontable inside a container with overflow-y: hidden and no explicit height caused the container to expand to the browser's CSS height limit (~2²⁵ px). #12453
  • Fixed alter('remove_row', null, N) not removing the last rows when rows were trimmed. #12460
  • Fixed nestedHeaders overriding colWidths with measured header label widths when autoColumnSize is explicitly disabled #12465
  • Fixed the select cell editor losing its scroll-tracking behavior after being closed and reopened. #12468
  • Fixed sort order for date and intl-date cell type values in the "Filter by value" dropdown. #12471
  • Fixed a sub-pixel gap at the grid bottom at non-integer browser zoom levels and misalignment between the master table and the bottom overlay when fixedRowsBottom is configured. #12472
  • Fixed the date filter "before" and "after" conditions including the boundary date in results. #12473
  • Fixed clear() selecting all cells after the table data is cleared. #12477
  • Fixed column sorting not working for boolean data when the column type is set to text. #12479
  • Fixed numeric cell type incorrectly parsing dot-thousands values in European locales (e.g. 7.000 stored as 7 instead of 7000 with de-DE locale). #12482
  • Fixed an infinite loop when pasting a value that cannot be auto-corrected into a date cell with correctFormat: true and allowInvalid: false. #12483
  • Fixed date and time format correction being overwritten when pasting data alongside columns with async autocomplete validators. #12485
  • Fixed the select cell type not preserving the order of numeric selectOptions values. #12487
  • Fixed pasting cells from Apple Numbers losing bare mid-cell quote characters and splitting into multiple rows. #12488
  • Fixed columnSummary to include cells calculated by the formulas plugin in sum, min, max, average and count results. #12489
  • Fixed option dragToScroll #12490
  • Fixed an issue where the active cell flipped to the top-start corner after autofill, causing getSelected to report incorrect start/end coordinates. The selection direction now matches the drag direction (like Google Sheets and Excel). #12498

... (truncated)

Commits
  • 8923782 Merge remote-tracking branch 'origin/release/18.0.0'
  • 9b82d4b 18.0.0
  • a6010bb 18.0.0-rc6
  • ff710e2 RELEASE-633: Add 18.0.0 release notes (changelog-18) (#12808)
  • 5f08bf5 18.0.0-rc5
  • 6714c87 DEV-1930: Preserve imperative cell meta across updateSettings (#12811)
  • 1dbb380 DEV-1942: Skip eager full-grid cell-meta materialization on load (#12847)
  • d5e379f DEV-1940: Render Walkontable directly to DOM, remove diffing renderer (#12844)
  • d442467 18.0.0-rc4
  • 10ec54d DEV-1939: Fix RC docs preview not building due to .js extension in measure-mo...
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [handsontable](https://github.com/handsontable/handsontable) from 17.1.0 to 18.0.0.
- [Release notes](https://github.com/handsontable/handsontable/releases)
- [Changelog](https://github.com/handsontable/handsontable/blob/develop/CHANGELOG.md)
- [Commits](handsontable/handsontable@17.1.0...18.0.0)

---
updated-dependencies:
- dependency-name: handsontable
  dependency-version: 18.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Jul 6, 2026
@tsmathis tsmathis merged commit e318e3d into master Jul 6, 2026
5 checks passed
@tsmathis tsmathis deleted the dependabot/npm_and_yarn/mpcontribs-portal/handsontable-18.0.0 branch July 6, 2026 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant