Skip to content
This repository was archived by the owner on Jun 1, 2025. It is now read-only.

Extract all SlickGrid Controls/Plugins into their own classes

Choose a tag to compare

@ghiscoding ghiscoding released this 14 Nov 23:40
· 3600 commits to master since this release

This new release does not bring much to the user on the feature side of it, however in code there was a major rewrite in how SlickGrid Controls & Plugins (gridMenu, headerMenu, columnPicker, ...) are handled. It was all previously under 1 big Service which was getting way too big, the rewrite was to separate them all in individual classes/services which is much more maintainable. Another big change, again under the hood, is that each of these controls/plugins (now called simply as Extensions) will be called On Demand, meaning that if you don't enable the extension, it won't use the SlickGrid Control/Plugin, this should end up in smaller prod build size (SlickGrid has about 10 controls/plugins and you might not use them all).

Features

  • (filter): add "filter-{id}" to all Filters. easier styling & target
  • (editor): add "editor-{id}" to all Editors. easier styling & target
  • (plugin): split out all controls/plugins into their own class
    • load extension on demand (dynamically via require)
    • use DI in all Extensions
  • (plugin): add new Example 17 of SlickGrid Plugin - Row Move Manager, closes #78
  • (update): add new method updateDataGridItems (in GridService) for multiple changes
    • also provide optional flag to disable highlight on both updateDataGridItem & updateDataGridItems
  • (remote): add CustomDataView flag and feature, ref issue #83
  • (backend): add onError callback which catch error from process
  • (remote): add Remote Model example with custom dataview
  • (badge): add download count badge

Fixes

  • (backend): made pagination input larger and shrink other elements
  • (select): collectionAsync error thrown when using collection, closes #76
  • (resize): global delay timer was affecting multiple grid resize, closes #81
  • (editor): Float Editor Validator not working with .5 but works with 0.5
  • (pagination): fixed a few pagination problem used by backend service