- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 38
 
Migration to 1.x
- controls/plugins (extensions)... read below for more info
 - CSS/SASS Styling Changes
 
- 
onColumnsChangedremovedcolumnsproperty from Column Picker options, rename tovisibleColumnsinstead. - 
onColumnsChangedremovedcolumnsproperty from Grid Menu options, rename tovisibleColumnsinstead. 
- removed 
findItemInHierarchicalStructure()method, usefindItemInTreeStructureinstead. 
Every SlickGrid controls/plugins were rewritten and moved into Slickgrid-Universal (prior to this new release, we were using them directly from SlickGrid repo and we had Extension bridges/wrappers in Slickgrid-Universal but that is now thing of the past since their entire code exist in Slickgrid-Universal), they were also rewritten as plain vanilla JS (basically there's no more jQuery code with exception of Draggable Grouping which still require jQueryUI). It's also much easier to maintain (we no longer have to wait for the SlickGrid project to release a version) and we can also modify and add extra features, styling, etc...
Because of all the rewriting, it makes sense to rename the method getSlickgridAddonInstance to getExtensionInstanceByName and it now returns the instance directly and as a bonus it now also automatically infers the correct return instance class as well.
Here's an example of the code change that you need to do
 toggleGridMenu(e: Event) {
    if (this.sgb?.extensionService) {
-     const gridMenuInstance = this.sgb.extensionService.getSlickgridAddonInstance(ExtensionName.gridMenu); // return type was `any`
+     const gridMenuInstance = this.sgb.extensionService.getExtensionInstanceByName(ExtensionName.gridMenu); // return type now infers `SlickGridMenu` instance
      gridMenuInstance.showGridMenu(e);
    }
  }
Replace all custom... properties to command... properties to align with all other menu plugins (CellMenu, ContextMenu, GridMenu, HeaderMenu are all using commands)
- replace 
customItemsbycommandItems - replace 
customTitlebycommandTitle - replace 
customTitleKeybycommandTitleKey 
Another change possible the full plugin rewrite, all images related code were removed in favor of CSS classes only (that already existed and was always favored).
- removed 
deleteIconImage, just usedeleteIconCssClassinstead. - removed 
groupIconImage, just usegroupIconCssClassinstead. - removed 
buttonImage, just usebuttonCssClassinstead. - removed 
iconImage, just useiconCssClassinstead - removed 
image, just usecssClassinstead 
If you really want to use image, you can still work around that the new limitation by adding a CSS class similar to this:
background-image: url(images/my-image.gif);
- the prefix is to avoid conflicts with other frameworks (CSS variables were already including this prefix, so no changes there)
 - there is only 1 small exception with 
$primary-color(to avoid too many styling changes) but even then there's also a new variable$slick-primary-color 
To simplify and merge all menu styling together (now doable since all controls/plugins now exists in the lib source code), all the following CSS class names got changed with what is shown below
- rename 
titletoslick-menu-title(to avoid other framework conflicts) - rename 
slick-cell-menu-command-listtoslick-menu-command-list - rename 
slick-cell-menu-option-listtoslick-menu-option-list - rename 
slick-cell-menu-itemtoslick-menu-item - rename 
slick-cell-menu-contenttoslick-menu-content - rename 
slick-context-menu-command-listtoslick-menu-command-list - rename 
slick-context-menu-option-listtoslick-menu-option-list - rename 
slick-context-menu-itemtoslick-menu-item - rename 
slick-context-menu-contenttoslick-menu-content - rename 
slick-header-menu-itemtoslick-menu-item - rename 
slick-header-menu-contenttoslick-menu-content - rename 
slick-grid-menu-itemtoslick-menu-item - rename 
slick-grid-menu-contenttoslick-menu-content - rename 
slick-grid-menu-command-listtoslick-menu-command-list - rename 
slick-grid-menu-option-listtoslick-menu-option-list - rename 
slick-grid-menu-listtoslick-column-picker-list - rename 
slick-columnpickertoslick-column-picker - rename 
slick-columnpicker-listtoslick-column-picker-list - remove or rename 
slick-gridmenu-listtoslick-column-picker-list- we merge the Column Picker & Grid Menu column picker classes, read the note below
 
 
NOTE: for simplification, it also means that all SASS/CSS variables got merged as well (e.g.: $slick-cell-menu-item-disabled-color got merged to a common $slick-menu-item-disabled-color), another change was to merge all the Grid Menu column picker & Column Picker variables with same styling (e.g.: $slick-grid-menu-checkbox-icon-checked is now $slick-column-picker-checkbox-icon-checked for both extensions)
- Slickgrid-Universal Wikis
 - Installation
 - Styling
 - Interfaces/Models
 - Column Functionalities
 - Events
 - Grid Functionalities
- Auto-Resize / Resizer Service
 - Resize by Cell Content
 - Column Picker
 - Composite Editor Modal
 - Custom Tooltip
 - Context Menu
 - Custom Footer
 - Export to Excel
 - Export to File (csv/txt)
 - Grid Menu
 - Grid State & Presets
 - Grouping & Aggregators
 - Header Menu & Header Buttons
 - Pinning (frozen) of Columns/Rows
 - Row Selection
 - Tree Data Grid
 
 - SlickGrid & DataView objects
 - Backend Services