Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

slickgrid

6pac27.7kMIT5.15.3TypeScript support: included

A lightning fast JavaScript grid/spreadsheet

slickgrid, grid, datagrid

readme

License: MIT TypeScript NPM downloads npm bundle size jsdelivr hits/month

Cypress.io npm Actions Status

This is the 6pac SlickGrid repo

Check out the NEW SlickGrid Website! http://slickgrid.net/

This is the acknowledged and most active fork of SlickGrid.

It aims to be a viable alternative master repo, building on the legacy of the mleibman/SlickGrid master branch, keeping dependencies up to date and applying, safe core patches and enhancements to keep the project up to date.

We extended the project from the original SlickGrid foundation while also including the following changes:

  • added a few more Plugins: RowDetail, CellMenu, ContextMenu, GridMenu, CustomTooltip, GridState
  • merged X-SlickGrid code into the project to bring Frozen Columns/Rows (aka Pinning)
  • removed jQueryUI requirement in v3 (replaced it with SortableJS)
  • removed jQuery requirement in v4
  • modernized the project in v5 by migrating to TypeScript (we kept IIFE and added ES6/ESM build targets) and we also gave SlickGrid a fresh and more modern look via a new Alpine Theme (CSS/SASS)
  • the project now has only 1 required small dependency which is SortableJS

Vite Demo

You can also see a ViteJS demo in the ./vite-demo folder (also available via the Stackblitz link below). This Vite demo was created mostly to test the project ESM build and also the SASS imports as well.

Stackblitz

You can also try out the Vite demo (mentioned just above) live via Stackblitz. It can also be use to provide a repro when you opening any new bug/feature requests.

Open in StackBlitz

Note: the Stackblitz demo only includes couple of examples, note however that there are a lot more example in the Examples Wiki page

Examples

Check out the Examples Wiki for a full list of examples demonstrating new features and use cases, such as dynamic grid creation and editors with third party controls.

Also take a look at the Wiki and Releases for documentation and recent news.

For a basic TypeScript example, take a look at the v5.0 Annoucement & Migration guide shown below and also the TypeScript Example Wiki.

Below is one of the available examples available in Stackblitz (which is mentioned just above)

Realtime Trading Demo

Installation

There are multiple ways to use and install SlickGrid, you can use it as a standalone <script> (IIFE) or install it through NPM and then import or require SlickGrid (import is preferred for tree shaking).

# Alpine style from CDN
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/slickgrid@5.15.0/dist/styles/css/slick-alpine-theme.min.css">

# standalone scripts (IIFE) from CDN
<script src="https://cdn.jsdelivr.net/npm/slickgrid@5.15.0/dist/browser/slick.core.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/slickgrid@5.15.0/dist/browser/slick.interactions.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/slickgrid@5.15.0/dist/browser/slick.grid.min.js"></script>
<script>
  const grid = new Slick.Grid("#myGrid", dataView, columns, options);
</script>
---
# or install from NPM
npm install slickgrid

<script type="module">
  import 'slickgrid/dist/styles/css/slick-alpine-theme.css';
  import { SlickGrid, SlickDataView } from 'slickgrid';
  const dataView = new SlickDataView({ inlineFilters: true });
  const grid = new SlickGrid("#myGrid", dataView, columns, options);
</script>

For more CDN links, like controls and plugins, just headover to jsDevlivr - SlickGrid for the full list and click on the "Files" tab (or use this jsdelivr CDN link "dist/browser").

Contributions

See Contributing Guide

E2E Tests with Cypress

A lot of our Examples now have Cypress E2E (end to end) tests in the browser. You can see here the complete list of Examples that now have E2E tests. The biggest advantage is that these tests are executed in the GitHub Actions Workflow (CI) for every Pull Request which makes sure the project is stable with every new commit. We currently have tests for over 40 examples with a total of over 500 tests.

We welcome any new contributions and if you wish to add Cypress E2E tests, all you need to do is to clone the repo and run the following commands

npm install         # install all npm packages
npm run dev         # run a local development server on port 8080 in watch mode (or `npm run serve` without watch)
npm run cypress     # open Cypress UI tool

Once the Cypress UI is open, you can then click on "Run all Specs" to execute all automated E2E browser tests.

Migrations

SlickGrid Migration Guide Description
3.x Announcing v3.0 dropping jQueryUI requirement and replaced it with SortableJS which is a lot more modern and touch friendly
4.x Announcing v4.0 dropping jQuery requirement, SlickGrid is now using browser native code
5.x Announcing v5.0 project modernization, we added TypeScript with ES6, ESM builds and also a new Alpine Theme

CSP Compliance

The library is now, at least for the most part, CSP (Content Security Policy) compliant since v5.5.0, however there are some exceptions to be aware of. When using any html strings as template (for example with Custom Formatter returning an html string), you will not be fully compliant unless you return TrustedHTML. You can achieve this by using the sanitizer method in combo with DOMPurify to return TrustedHTML and for more info, you can take a look at the CSP Compliance Wiki.

Quick Little Fun Survey ✨

We are conducting a small little poll for fun, it is a single question survey about our latest releases. Thanks for taking the time to participate.

What do you think was the most exciting change(s) for you?

changelog

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

5.15.3 (2025-05-09)

Bug Fixes

  • autoHeight should add preHeader height when enabled, fixes #1122 (#1123) (c8f6c27)
  • incorrect grid container box size calculation border not showing (#1124) (699e337)

5.15.2 (2025-04-05)

Bug Fixes

  • Select All checkbox shouldn't disappear w/column toggle, fix #1119 (#1120) (23a9557)
  • shift + a should not select all cells upwards (#1118) (d7ae402)

5.15.1 (2025-03-19)

Bug Fixes

Features

  • add initialGroupBy to Draggable Grouping (878b6cd)
  • add onBeforeRemoveCachedRow SlickGrid event (#1113) (68c773d)

5.15.0 (2025-01-18)

Bug Fixes

  • add "frozen" class to all slick-pane for easier styling (#1089) (967c9d8)
  • add missing key shortcuts for grid navigation & cell selections (#1093) (91e7c8b)
  • never activate more than 1 cell, clear any previous active CSS class (#1100) (7ff7170)
  • remove "active" CSS classes before navigating to another cell (#1095) (8a8d3f4)
  • shift+mousewheel should scroll horizontally, fixes #1094 (#1096) (5003565)

Features

Change Log

All notable changes to this project will be documented in this file.

See Conventional Commits for commit guidelines.

5.14.3 (2024-11-28)

Bug Fixes

  • ensure DOM alterations during initialization are always cleaned up when there are hidden parents and forceFitColumns=true (#1085) (c32fe5a)

5.14.2 (2024-11-16)

Bug Fixes

  • ExternalCopyManager shouldn't change body scroll pos, fixes #1078 (#1080) (3112099)

5.14.0 (2024-10-29)

Features

5.13.1 (2024-10-06)

Bug Fixes

5.13.0 (2024-09-21)

Bug Fixes

  • SASS deprecated lighten and darken methods (#1063) (74713b5)

Performance Improvements

  • Optimize SlickGrid handleSelectedRangesChanged by using Set (#1061) (8ff354b)

  • Reduce iterative time complexity (#1060) (0d07e60)

5.12.1 (2024-09-07)

Bug Fixes

  • SlickCellExternalCopyManager should work w/hidden cols (#1053) (0895deb)

  • typo in setColumnVisibiliy (#1057) (9fcadba)

  • use setTimeout/setInterval from window object with correct TS type (#1054) (1995037)

5.12.0 (2024-08-23)

Bug Fixes

  • increase virtual scroll render throttling to 10ms (64bf6ff)

Features

  • add params.editorOptions to change Flatpickr Editor date format (#1048) (8b46763)

Performance Improvements

  • add new rowTopOffsetRenderType grid option to use "transform" (#1050) (7b7ff83)

  • decrease virtual scroll render throttling to 5ms (#1049) (b0e7706)

5.11.0 (2024-07-27)

Bug Fixes

  • issue where pinning the first column caused the header to get misaligned, fixes #1038 (#1039) (d006605)

Features

5.10.1 (2024-07-06)

Bug Fixes

  • Header Menu should be on top of grid not inside (#1033) (b704a81)

  • new preheader event should work with any prehader content (#1034) (28113f4)

5.10.0 (2024-06-19)

Bug Fixes

  • Draggable Grouping drop zone in preheader should take full width (#1025) (2c0a41f)

  • Draggable Grouping onColumnsReordered missing impactedColumns (#1026) (3d342cc)

  • make sure pager element exists before toggling CSS classes (#1028) (fe46af0)

Features

  • add iconButtonContainer option to Grid Menu (#1018) (56a24db)

  • add new preventDragFromKeys grid option (#1024) (b82f476)

  • add onPreHeaderContextMenu for Column Picker usage (#1030) (ea2c175)

  • add optional Top-Header for Drag Grouping + Header Grouping (#1029) (cec789c)

5.9.2 (2024-05-07)

Bug Fixes

  • Fix: Tweak setupColumnSort() to fix exception when col no longer exists (#1016)

5.9.1 (2024-04-16)

Bug Fixes

  • Remove ForceFit deprecation message, fixes (#603)

  • CellExternalCopyManager plugin restores focus on paste

5.9.0 (2024-04-06)

Bug Fixes

  • default SlickGrid editors are not assignable to column field 'editor' (#1005) (9e1de20)

  • Editor.keyCaptureList is an array of numbers (#1006) (fbbff04)

  • primary entry point to the program isn't set correctly (#1008) (0714221)

Features

  • add the ability to receive extra filter arguments (#1007) (e22d814)

5.8.3 (2024-03-30)

Bug Fixes

  • don't exclude mixin/var SASS files from prod build, fixes #1003 (a4f980e)

5.8.2 (2024-03-16)

Bug Fixes

  • column.editor and gridOptions.editorFactory type changed (#995) (e02cf64)

  • realtime trading demo grouping wasn't working (#991) (180e4e7)

5.8.1 (2024-02-13)

Bug Fixes

fix for hidden column issue fixes (#985) (02d0fd2b)

Performance Improvements

  • core: convert for..in to Object.keys().forEach for better perf (#987) (c0f7b7c)

5.8.0 (2024-01-20)

Bug Fixes

  • add grid & cell role for screen ready accessibility, fixes #518 (#976) (f4184ef)

  • add missing option to control row highlight duration (#982) (4a49239)

  • core: SlickEvent handler event should be type of ArgType (#970) (1d1b727), closes #969 #967

  • DataView options should be optional (TypeScript) (feb154c)

  • don't show column header empty title tooltip (#964) (8ee0f2c)

  • EventHandler subscribed event should be SlickEventData type (#969) (d960f90), closes #967

  • legacyAutosizeColumns should push hidden width as 0 (#977) (ab634eb)

  • regression with onSelectedRowsChanged not receiving correct caller prop (#980) (ffbb335)

  • TS build error from ItemMetadata and Column intefaces (e8fd4c8)

  • updatePagingStatusFromView() should partial PagingInfo (28198a8)

  • when onDragInit return false it should stop (#979) (5471666), closes #978

  • when onResizeStart return false it should stop (#978) (8c659c9)

Features

  • add name option to CheckboxSelectColumn plugin on columDef (#972) (039f4ae)

  • add column reorderable option to optionally lock a column (#983) (fbcac63)

  • change CheckSelectColumn plugin to native HTML for CSP safe code (#973) (bef663c)

5.7.1 (2024-01-06)

Bug Fixes

  • allow extra spaces in headerCssClass and other cssClass (#960) (dc30aea)

  • CellSelectionModel for CustomDataView and SlickCustomTooltip (#963) (a8b48eb)

  • DataView inlineFilters should allow ES6 arrow functions (#962) (d7d1f6d)

5.7.0 (2023-12-29)

Bug Fixes

  • updateColumns() should be public use with column hidden (0dc5f6d)

  • updateColumns() should be public use with column hidden (ee8f72f)

  • applyDefaults should make sure grid options object is defined (13d2ed0)

  • applyDefaults use provided grid options before applying defaults (7867d49)

  • changing enableCellNavigation grid option not working (#949) (861a268)

  • core: SlickEventHandler should infer handler args Types (#948) (95d2156)

  • deps: update all dependencies & require Node 18 (#959) (ddbf5bb)

  • GroupItemMetaDataProvider should implements SlickPlugin (#956) (508aa7b)

  • use correct argument type on setData() (0402700)

Features

  • change DataView Grouping compileAccumulatorLoop for CSP safe (#952) (be5f74e)

  • core: add rowHighlightCssClass & highlightRow() to SlickGrid (#950) (33e9f2e)

Performance Improvements

  • prefer .forEach over for...in and for...of (#953) (1938048)

5.6.1 (2023-12-09)

Bug Fixes

  • Row Detail no longer displayed after CSP safe code implemented (#947) (ba5cea9)

  • the devMode should be false or an object with other options (e7ccc1d)

  • the devMode should be false or an object with other options (bbddea7)

  • the devMode should be false or an object with other options (8478ff1)

5.6.0 (2023-12-08)

Bug Fixes

  • calling applyHtmlCode() with number/boolean (#942) (b1b4fa2)

  • Draggable Grouping, destroy all Sortable instances fixes mem leak (#943) (eb30086)

Features

  • introduce devMode to support nodejs based unit testing (#946) (918efa4)

  • use PubSub Service with Web Component demo to subscribe instead of SlickEvent (#859) (7d602e6)

5.5.6 (2023-12-02)

Bug Fixes

Performance Improvements

  • skip reapplying empty html when target is already empty (#932) (564c38d)

5.5.5 (2023-11-25)

Bug Fixes

  • remove unused CellRange interface, use core SlickRange, fix #927 (#928) (7675dc5)

  • try adding sort icon on non sortable column shouldn't throw (#929) (15d53f5)

5.5.4 (2023-11-24)

Bug Fixes

  • applyHtmlCode util should always clear targeted native element (#926) (3167f5f)

5.5.3 (2023-11-24)

Bug Fixes

  • change dynamic html string w/CSP safe code to fix scroll, fix #914 (#919) (b672d96)

  • common: cell range decorator should be hidden after onDragEnd (#924) (b6d02cd)

  • Draggable shouldn't trigger dragEnd without first dragging (#921) (012b74c)

  • interactions remove callback 2x call & add event listeners to body (#918) (a37d263)

Features

  • convert GroupItemMetadataProvider Formatter to native HTML for CSP (#925) (7ec4309)

5.5.2 (2023-11-15)

Bug Fixes

  • replace leftover innerHTML assignment with CSP safe approach (#912) (4793068)

  • rollback portion of CSP safe code causing regression, fixes #914 (#915) (815922b)

5.5.1 (2023-11-14)

Bug Fixes

  • interface for controls/plugins w/Formatter might return HTMLElement (#911) (9190843)

5.5.0 (2023-11-14)

Bug Fixes

  • add nonce grid option set the nonce value for CSP header (#902) (fc0af7a)

  • add nonce grid option set the nonce value for CSP header (#902) (#905) (fb0e4f5)

  • add CSP safe option for DataView filtering and adjusting inline css for CSP (#908) (ff970c0)

  • add missing RowMoveManager containerCssClass option (#906) (5f85574)

  • improve build & types exports for all targets, Node, CJS/ESM (#910) (9013526)

Features

  • add grid option enableHtmlRendering to use pure HTML not string (#894) (448ec4f)

5.4.2 (2023-11-02)

Bug Fixes

  • misaligned column headers after horizontal scroll then freeze (#901) (7f11eff)

5.4.1 (2023-11-01)

Bug Fixes

  • add allowDragFromClosest to make .slick-cell or child draggable (#897) (282fbb4)

  • create CSS rules by style element doesn't work in salesforce (#900) (4548fa0)

  • regression with RowMoveManager, row could no longer be moved (#896) (02226bd), closes #865

5.4.0 (2023-11-01)

Bug Fixes

  • dynamically create CSS rules via JS instead of innerHTML (#883) (a08b0f8), closes #878

  • HeaderMenu items prop for sub-menus should be optional (b5576de)

  • replace a few innerHTML by more secure alternatives (#885) (53ab293)

  • sub-menu event listeners leaking when closing sub-menus (#888) (338ea2a)

5.3.1 (2023-10-25)

Bug Fixes

  • add throwWhenFrozenNotAllViewable grid option to avoid throwing (#882) (a9e7e53)

  • add more checks around cached rows (#881) (fb2fa28)

5.3.0 (2023-10-24)

Bug Fixes

  • deprecate GridMenu customItems in favor of commandItems (#872) (dd63c36)

  • deprecate HeaderMenu items in favor of commandItems (3987789)

  • Grid Menu mouseover event should work with commandItems array (#875) (94aee91)

  • make sure rowNode exists before trying to loop on it (#877) (bebec5f)

  • replace .slick-gridmenu-custom by .slick-gridmenu-command-list (#876) (2cc3175)

Features

  • add subMenuOpenByEvent option to open sub-menus via mouseover (#871) (78ea6ae)

5.2.0 (2023-10-21)

Bug Fixes

  • add containerCssClass to RowMove to fix cell styling issue with icons (#865) (5abad6d)

  • argument of getViewportNode() should all be optional (#860) (09e7617)

  • CellSelectionModel calculate page row count only once (#858) (65c2382)

  • should use strict ESLint & TypeScript code (#863) (f1abfd8)

Features

  • add sub-menu(s) to CellMenu & ContextMenu plugins (#867) (0309ec4)

  • add sub-menu(s) to GridMenu control (#868) (24f30f6)

  • add sub-menu(s) to HeaderMenu plugin (#869) (6eaee7a)

5.1.0 (2023-10-03)

Bug Fixes

  • active cell loses focus after editing or column reordering (#851) (fc3bd25)

  • add autoEditNewRow option to disable auto-edit new row, fix #445 (#855) (f0fa0bd)

Features

  • add option to cancel Row Detail opening, closes #378 (#852) (1ad9f5c)

  • add pageUp/pageDown/home/end to SlickCellSelection, fixes #794 (#854) (f4956e4)

5.0.1 (2023-09-27)

Bug Fixes

  • add missing font-size CSS var for grid top header (9bb45a1)

  • DataView setFilter had incorrect type, fixes #848 (#849) (3efb3f5)

  • remove devDependencies & scripts from npm publish (0d9784a)

5.0.0 (2023-09-19)

Please read the Migration Guide v5.0


Breaking Change ⚠️

  • prepare official 5.0 version release (#845) (ad85e1)

5.0.0-alpha.3 (2023-09-19)

Bug Fixes

  • invalid argument type for setSelectedIds() method (330e0e3)

5.0.0-alpha.1 (2023-09-19)

Bug Fixes

  • CJS fallbacks should be at the end not at beginning (a244ada)

  • copying multiple times only kept last undo CellExternalCopyManager (cdda3fb)

Features

  • add new trading platform high frequency update grid (#835) (f86371b)

  • migrate all Controls to TypeScript (#808) (0d129bd)

  • migrate all Decorator & Selection Plugins to TypeScript (#812) (cf3049e)

  • migrate all Menu/Buttons Plugins to TypeScript (#811) (c66c429)

  • migrate CheckboxSelector & State Plugins to TypeScript (#813) (2da9f7f)

  • migrate CustomTooltip Plugin to TypeScript (#816) (0f2b417)

  • migrate Draggable Grouping Plugins to TypeScript (#814) (0037c7d)

  • migrate RemoteModel Plugins to TypeScript (#823) (7a816e2)

  • migrate Resizer Plugin to TypeScript (#815) (762ec3d)

  • migrate RowDetail Plugin to TypeScript (#822) (685b009)

  • migrate RowMoveManager Plugins to TypeScript (#817) (8ad65ca)

  • remove deprecated DataView methods (#833) (0f3ba49)

4.0.1 (2023-06-30)

Bug Fixes

  • getComputedStyle could throw when DOM element is invalid (#800) (2cecba1)

  • onBeforeAppendCell should only be used when it's a string (#802) (b367209)

  • allow for multiple css class names, fixes #795 (#797) (ab644b4)

  • demo: calling cancel or close button should close modal (#790) (6edfdd7)

  • demo: example with 3 plugins not sorting correctly (#788) (e749aa9)

  • Grid Menu is shown twice after changing frozen options (#793) (b458c23)

  • make sure DOM element is valid before calling method on it (#801) (b31a797)

  • remove invalid TS type and invalid this object (#786) (ca2393c)

  • replace some DOM Element functions not supported in Salesforce (#796) (e427bd2)

Features

  • exclude checkbox selection from col picker/grid menu (#787) (0b339e3)

Reverts

  • Revert "feat: provide another styling theme (#779)" (#784) (dafe1d1), closes #779 #784

4.0.0 (2023-05-28)

Please read the Migration Guide v4.0

Bug Fixes

  • idxById could be undefined when changing page in SPA (#782) (222725f)

  • columnpicker and column order for hidden columns (034108d)

  • dist source map file naming was incorrect (#730) (aa4093a)

  • enable AutoScroll with SortableJS for column reordering, fixes #735 (c9ee9af)

  • enable AutoScroll with SortableJS for column reordering, fixes #735 (#736) (9fa0860)

  • final fix for ColumnPicker and column hidden property (000865d)

  • make sure column is defined before calling hidden prop (#783) (29572a6)

  • rollback JS event passive mode in SlickGrid (#778) (e61547e), closes #769

Features

4.0.0-beta.0 (2023-05-17)

Please read the Migration Guide v4.0


Bug Fixes

  • add missing aria accessibility (#764) (897cc55), closes #586 #587 #588 #678

  • addresses all issues found in jQuery removal previous PR #734 (#742) (b3a6575)

  • core: set wheel/touch listeners to passive for better perf (#769) (b62e25d)

  • dist source map file naming was incorrect (#730) (aa4093a)

  • enable AutoScroll with SortableJS for column reordering, fixes #735 (#736) (2c56433)

  • filter header row should follow grid scroll (98aeb9b)

  • scrolling for all containers should work for regular & frozen grids (2405fe6)

  • throw error when freezing columns are wider than canvas (#773) (bc60d8a), closes #667

  • toggling frozen rows should recalc scroll height, closes #737 (#774) (46db491)

Features

  • controls: remove jQuery from Slick Pager control (#762) (ed0507b)

  • Enable hidden property for column. Adds example-column-hidden, method… (#765) (78540ef)

  • plugin: convert slick.autotooltips to vanillaJS (#745) (133d783)

  • plugins: convert copy manager plugins to vanillaJS (#746) (47b571d)

  • plugins: convert slick.draggablegrouping to vanillaJS (#744) (59b0d2e)

  • plugins: remove jQuery from CellMenu & ContextMenu plugins (#753) (c4671be)

  • plugins: remove jQuery from CheckboxSelectColumn plugins (#755) (57160af)

  • plugins: remove jQuery from ColumnPicker & GridMenu controls (#752) (9ea0d9a)

  • plugins: remove jQuery from Grid Resizer plugin (#758) (5deb818)

  • plugins: remove jQuery from Grid State plugin (#757) (aa8dc63)

  • plugins: remove jQuery from header buttons/menus plugins (#748) (58701c4)

  • plugins: remove jQuery from range decorator selection model (#754) (6724f1d)

  • plugins: remove jQuery from Row Detail plugin (#760) (72e6139)

  • plugins: remove jQuery from RowMove plugins (#756) (8c72373)

  • plugins: remove jQuery from slick.customtooltip plugin (#747) (aac6eec)

  • remove legacy TreeColumns code - now unused (#775) (af82a57)

3.0.4 (2023-02-15)

Features

3.0.3 (2023-02-04)

Bug Fixes

  • cell selection in Firefox not working, fixes #714 (#715) (3583ffc)

  • horizontal scrolling can cause screen flickering (#722) (0d4d943)

Features

  • dataView: add option to apply row selection to all pages (#716) (6e4e83a), closes #689

3.0.2 (2022-11-14)

3.0.1 (2022-11-14)

Bug Fixes

  • adjust the left/right canvas width properly when fullWidthRows is used (#664) (d3de81c)

  • auto-scroll should work even without jQueryUI (#703) (afca1a2)

  • auto-scroll should work even without jQueryUI (#703) (4e5397d)

  • editors: allow input editing with Flatpickr editor (#704) (2d64e47)

  • ensure H scrollbar is aways detected in resizeCanvas(). Fixes #709 (71bfd9a)

  • revert #674 and disable v scrolling only where options.autoHeight is (b156cfb), closes #711

Features

  • tooltip: add new "center" and invert left/right align (#712) (e26eeaf)

3.0.0 (2022-10-09)

Bug Fixes

  • adjust the left/right canvas width properly when fullWidthRows is used (#664) (d3de81c)

  • ensure npm exits (otherwise need to ctrl-c to get back to command prompt) (6dd4649)

  • gitCurrentBranchName should return the branch name not a process result object (b25be57)

  • ignore untracked files in update script (f213d8b)

  • replace inquirer with direct keyboard input (7f12612)

Features

  • add npm scripts to create new version release & npm publish (#701) (017bc7f)

  • BREAKING CHANGE - replace jQueryUI with SortableJS (#695) (386cd58)

2.4.45 (2022-07-27)

2.4.44 (2021-12-06)

Bug Fixes

Features

  • add extra caller property to onSelectedRowsChanged (#659) (e693a0c)

  • add grid option to provide optional sanitizer function (#657) (416992e), closes #652

  • Auto scroll the viewport when dragging to make selection (#656) (c06e3a3)

2.4.43 (2021-10-23)

Features

  • add basic html sanitizer w/regex to avoid xss scripting attack (#652) (ffc682b)

  • add new Custom Tooltip plugin (#650) (07cad59)

  • show a shadow element of the row being moved/dragged (#651) (c6cfe18)

2.4.42 (2021-09-28)

Bug Fixes

2.4.41 (2021-09-26)

2.4.40 (2021-09-09)

Bug Fixes

  • few minor fixes on plugin with menus (#636) (4d93f52)

  • grid with Grouping, Row Select All shouldn't include grouping rows (#635) (d634221)

Features

2.4.39 (2021-09-03)

Bug Fixes

  • use Header Menu width (instead of minWidth) to align right (#624) (beef51f)

  • use tooltip from header menu options is the correct location (#626) (44fe869)

Features

  • add command (execute/undo) to onCellChange event (#622) (dc9f2e1)

  • add onBeforeSort to optionally cancel onSort (3a1202a)

  • add previousSortColumns to onSort and onBeforeSort (#633) (115367f)

  • add new event onBeforeSetColumns (#625) (9c3ce51)

2.4.38 (2021-06-25)

Bug Fixes

  • Grid Menu grid options should be passed by reference (#619) (7c21d0f), closes #615

2.4.37 (2021-06-25)

Bug Fixes

  • broken UI when loading grid from hidden div/tab (#618) (2ba2007)

  • plugin: only check override if we can move row in first place (#613) (2ffccc6)

Features

2.4.36 (2021-05-18)

Bug Fixes

  • setOptions should call setOverflow when changing frozenColumns (#608) (4af8c72)

  • left frozen section shoudn't go over viewport width, fix #473 (#607) (f229917)

2.4.35 (2021-05-09)

Bug Fixes

  • deactivate edit controller shouldn't throw when active is null (#604) (28f44a3)

  • get viewport node by specified row and column like canvas (#601) (4edcca2)

Features

  • add onColumnsResizeDblClick event to adding new resize extras (#605) (d270367)

2.4.34 (2021-04-09)

Bug Fixes

  • add preventDefault to optionally leave plugin menu open (#589) (c7dfe45), closes #582

Features

2.4.33 (2021-02-02)

Features

  • add getItemsCount function to DataView & update few npm packages (#569) (19bf981)

  • add item count to data change handlers (#570) (32e03d5)

2.4.32 (2020-12-02)

Bug Fixes

  • add grid object to all Formatter calls (#558) (8d957f1)

  • editors: make sure editor exist before trying to focus on it (#554) (69a6b86)

  • remove mousewheel scroll handler when option is disable (#557) (702c793)

  • we should remove all event listeners when calling destroy (#556) (708b070)

Features

  • add columnId to onColumnsChanged event (#561) (319046e)

  • add enableMouseWheelScrollHandler option to allow dynamic load (#555) (5077d31)

2.4.31 (2020-11-14)

Bug Fixes

  • unsubscribe everything event & nullify DOM elements avoid detach elements (#551) (e3f4961)

Features

  • dataView: add getAllSelectedItems function (#544) (39707b8)

2.4.30 (2020-10-14)

Bug Fixes

  • core: we should never show vertical scroll on left frozen container (#537) (aa42f8b)

  • resizer: add flag to apply resize to grid container, default false (#538) (beeb622)

Features

  • core: add column object to onCellChange event (#539) (0d9ee69)

  • editors: add all Editors instance refs to Composite Editor options (#540) (2160f31)

2.4.29 (2020-09-25)

Bug Fixes

  • plugins: Row Move icon formatter should have text property (#535) (181c9d9)

Features

  • core: add a supressColumnSet on setOptions method (#534) (e333c9d)

  • plugins: add "hidden" property to all plugins with menu items (#532) (efc5608)

2.4.28 (2020-09-05)

Features

  • editor: add more functionalities to Composite Editor (#530) (4a0996a)

2.4.27 (2020-07-26)

Features

  • resizer: add optional grid container to resize (#523) (f0d73cf)

2.4.26 (2020-07-25)

2.4.25 (2020-06-29)

Bug Fixes

  • gridMenu: Grid Menu wrong location changing from regular to frozen (#513) (77f0d38)

  • grouping: collapse all then expand sub-group, fixes #512 (#516) (fc2dfd7)

  • plugin: check options exist before getting prop (#510) (4a1c0e5)

2.4.24 (2020-05-23)

Bug Fixes

  • core: rollback PR #497 which is now causing resize issue (#503) (af948b1)

  • gridMenu: add "height" and "marginBottom" options (#506) (8100ca1)

  • resizer: check for undefined option instead of fallback, fix #504 (#507) (4d70df7)

2.4.23 (2020-05-19)

Bug Fixes

  • core: resizeCanvas should include preheader height, fixes #493 (#497) (af6151f)

  • gridMenu: add missing "headerColumnValueExtractor" to Grid Menu & fix #490 (#491) (eec27b7)

  • npm: remove certain files from npm, closes #499 (#501) (886641f)

  • picker: ColumnPicker/GridMenu exclude hiden cols when forceFitCols (#494) (a29eff1)

  • pickers: ColumnPicker/GridMenu with 2 independent grids (#500) (a7af294)

  • plugin: make sure from/to exist before getting values, ref #488 (#496) (62d2c14)

2.4.22 (2020-05-06)

Bug Fixes

  • plugin: check usabilityOverride before accepting new position (#485) (dc554f5)

  • plugin: Row Move Formatter should have empty text value (#484) (e64c6c8)

  • rowDetail: use column id instead of item id (#489) (fc3c3d1)

Features

  • animation: add option to disable animation on all setVisibility fn (#481) (a35c643)

2.4.21 (2020-03-27)

Bug Fixes

  • example: fix the view source example link of new demo (6ebe30d)

2.4.20 (2020-03-27)

Bug Fixes

  • npm: update Cypress to fix security warnings, fixes #471 (#472) (3a7ef63)

  • plugin: remove unnecessary tooltip when checbox hidden (#477) (e062f86)

  • resize: measure scrollbar from body instead of viewport, fixes 275 (d705e15)

Features

  • plugins: add ways to use all 3 plugins together, closes #347 (#474) (90ead54)

2.4.19 (2020-03-06)

Bug Fixes

  • cellMenu: stop event bubbling only on valid cell menu column (e49a569)

Features

  • plugin: create a new Resizer plugin for easier auto-resize (4745158)

Reverts

  • Revert "title only added if no title is already defined" (89e71ec)

  • Revert "title only added if no title is already defined" (3088d74)

  • Revert "Update README.md" (fdbcf20)

2.4.18 (2020-01-29)

Features

  • menus: add "onAfterMenuShow" event to all possible menu plugins (c2474e5)

  • paging: add "onBeforePagingInfoChanged" to DataView and fix #457 (a59699a)

  • selection: add previousSelectedRows into "onSelectedRowsChanged" (ce249a2)

2.4.17 (2020-01-10)

Bug Fixes

  • drag: make sure drag event are only for slickgrid, fixes #239 (e74d763)

  • example: cell menu has typo in css stylesheet filename (7ef5973)

  • picker: incorrect output for visibleColumns & fadeSpeed option (#453) (0b5c0a2)

2.4.16 (2019-12-18)

Features

  • menu: add more functionalities to Header & Grid Menus (#452) (3fe41fb)

  • menu: add new plugins - ContextMenu & CellContextMenu (#449) (db999dc)

2.4.15 (2019-12-08)

Bug Fixes

  • gridMenu: menu at wrong place when using Frozen Col 0, fixes #436 (7bd6f27)

  • gridMenu: Menu should work with Frozen Col 0, fixes #436 (5b9607f)

  • rowDetail: work with DataView custom "id" property name, fixes #420 (9c4fbad)

2.4.14 (2019-09-16)

2.4.13 (2019-08-30)

Features

  • cypress: add Cypress E2E Grid Menu full test suite (bd39e58)

  • cypress: update to latest version of Cypress (102aca7)

  • gridState: add a new Grid State plugin with example (bcb9c92)

2.4.12 (2019-08-28)

2.4.11 (2019-07-31)

Bug Fixes

  • build: fixes a parsing issue found while builing Aurelia-Slickgrid (645325d)

  • example: remove unused deleted grid option (4572d07)

  • header: remove all showColumnLabels and replace by showColumnHeader (7112fd4)

  • license: use a more standard naming format, closes #390 (fe3e38b)

  • picker: column exclude from ColumnPicker, GridMenu caussing issue (#402) (56f6724), closes #399

  • scrollbar: horizontal was hidden because of showColumnLabels (ceded1b)

Features

  • controls: add updateAllTitles to controls (a96c408)

  • e2e: add Cypress to the project for E2E testing (996dc7b)

2.4.10 (2019-07-12)

2.4.9 (2019-06-09)

Bug Fixes

  • event: rollback commit 34ec867 to fix column resize is broken (832d2ed)

  • ie: increase performance in IE, closes #367 (7408a11)

2.4.8 (2019-05-24)

Bug Fixes

  • plugin: Row Detail always show a scroll even when has enough space (#370) (a0300f0)

Features

  • columnPicker: add columnDef option to exclude a column from picker (2c38c59)

  • gridMenu: add columnDef option to exclude a column from grid menu (d8df5d0)

  • gridMenu: rename column field to # instead of Id (b6f0b61)

  • rowDetail: add option "singleRowExpand" (bfe6512), closes #194

2.4.7 (2019-04-17)

2.4.6 (2019-04-07)

Bug Fixes

  • autoHeight: horizontal scroll not showing when needed, fixes #356 (31dc311)

  • autoheight: updateRowCount shouldn't set virtual height, fixes #364 (8c39435), closes #209

  • examples: Select2 examples have some glitches (#361) (879d918)

  • rowDetail: override formatter, don't use global grid instance (cde548d)

Features

  • checkbox: add possibility to override directly from plugin options (72c951a)

2.4.5 (2019-03-24)

Bug Fixes

  • update: fix update an item id using DataView, closes #353 (e06fe06)

Features

  • gridMenu: add grid UID to the GridMenu control (fd06af5)

  • rowDetail: add override method to know which row is expandable (#351) (116addc)

2.4.4 (2019-03-02)

Bug Fixes

  • cellSelection: deep copy so we can use of shift+arrow, closes #341 (#348) (4ca6c6d)

Features

  • selectable: add override method to know which row is selectable (#346) (f30bf6f)

2.4.3 (2019-02-09)

Bug Fixes

  • examples: simple button alignement fixes (#335) (217365e)

  • overflow-scrolling: remove old patch now unnecessary, closes #332 (fcab948)

  • selection: copy text selection now working (#333) (692785a)

  • selector: cell range selector was not working when at bottom (#331) (dcf8194)

  • selector: cell selector throws error in console when no scroll (#337) (aa54eae)

  • selector: cell selector throws error in console when no scroll (#338) (beaa586)

Features

  • formatter: add toolTip to Formatter with extended object (4db4433)

2.4.2 (2019-01-20)

Features

  • divider: add divider option to Grid Menu & Column Header Menu (85b57b1)

2.4.1 (2018-12-23)

2.4.0 (2018-12-23)

Bug Fixes

  • gridmenu: should be using grid UID for menu independence (#305) (443d68d)

  • gridmenu: should be using grid UID for menu independence (#305) (c012add)

Features

  • checkbox: add way to show Checbox Selector in Filter Row (27cbbca)

  • demo: add demo for testing grid.autosizeColumns fn, ref #264 (d747468)

  • grouping: add caller/originator to updateGroupBy (7807ef0)

  • grouping: add caller/originator to updateGroupBy (70a25c5)

  • picker: Column Picker expose init to use by translation (7ea5375)

2.3.23 (2018-12-08)

2.3.22 (2018-12-08)

Features

  • checkbox: add way to show Checbox Selector in Filter Row (f806ad0)

  • demo: add demo for testing grid.autosizeColumns fn, ref #264 (3d2ef21)

2.3.21 (2018-07-26)

2.3.20 (2018-07-20)

Features

  • picker: Column Picker expose init to use by translation (6fc6eea)

2.3.19 (2018-05-18)

Bug Fixes

  • gridMenu: GridMenu with multiple grids & event leak (ce0af41)

2.3.18 (2018-05-12)

Features

  • expose grid in groupitemmetadataprovider (4c9b501)

Reverts

  • Revert "fix issue #68 editor with activeRow selection" (5d9e444), closes #68

2.3.17 (2018-03-08)

2.3.16 (2018-03-04)

2.3.15 (2018-02-27)

Features

  • headerMenu: autoAlign left if header drop menu is outside viewport (b8793f6)

  • headerMenu: move the CSS min-width into plugin code (0a245fa)

2.3.14 (2018-02-27)

2.3.13 (2018-02-21)

2.3.12 (2017-12-15)

2.3.11 (2017-12-10)

2.3.10 (2017-11-07)

2.3.9 (2017-11-06)

2.3.7 (2017-06-13)

2.3.5 (2017-04-21)

2.3.4 (2016-11-28)

2.3.3 (2016-11-24)

Reverts

  • Revert "Added clearItems method to dataview" (8bc60de)

2.3.2 (2016-08-22)

2.3.1 (2016-08-19)

2.2.6 (2016-02-03)

2.2.5 (2015-09-30)

2.2.4 (2015-06-02)

2.2.3 (2015-06-02)

2.2.2 (2015-03-24)

2.2.1 (2015-03-17)

2.2.0 (2015-03-12)

2.0.1 (2012-04-14)

1.4.3 (2010-11-05)

1.4.1 (2010-08-23)

1.3.2 (2010-05-18)