Releases: ghiscoding/Angular-Slickgrid
Releases · ghiscoding/Angular-Slickgrid
Global Grid Options through forRoot
IMPORTANT
With version 0.9.0+
it is now mandatory to add a forRoot
when importing Angular-Slickgrid
in your App. It can be set to empty (and/or with Global Options, continue reading) but it has to be defined. For example:
imports: [ AngularSlickgridModule.forRoot(), ... ]
New Features
- Backend Service API refactoring
- init options are now totally optional, if nothing is provided it will use the default
pagination
options provided (thepagination
that is set outside of the backend service itself). - also the flag
enablePagination
is now totally optional as well, when using Backend Service API, we will assume that the pagination has to be displayed by default.
- init options are now totally optional, if nothing is provided it will use the default
- Add a Custom Structure property for the Select Filter (that is when your collection doesn't have the property
value
and/orlabel
, you can now customize their name(s))- Check the Wiki - Select Filter for more info.
- You can now define Global Grid Options directly in your App Module instead of re-declaring the same grid options over and over in all your grids. For example
imports: [ AngularSlickgridModule.forRoot({
enableAutoResize: true,
enableCellNavigation: true,
enableColumnReorder: true,
...
}), ... ]
- More information on the Global Grid Options can be found on the Wiki - Global Grid Options
Fixes
- Fixing, yet again, the error thrown by SlickGrid of "Stylesheet missing"
- pagination items per page should never reset
- fix wrong error thrown and make sure pagination size is always a number
Possible fix for "No provider for TranslateService"
- fix "SlickPaginationComponent No provider for TranslateService", there was an unused DI in the Slick Pagination component.
Lot of Backend Event Service refactoring
New Features
- rewrote the entire Backend Service implementation to make it much simpler to use
- you no longer need to call
initOptions
separately to define service options, you can now do that directly in thebackendServiceApi
- a new option flag
executeProcessCommandOnInit
(only GraphQL for now) was added and if set to true will make theonInit
irrelevant (though it still exist and available). This new flag when set to True will run theprocess
callback on page load (component init). - another option flag
addLocaleIntoQuery
was added to deal with GraphQLfilterBy
andorderBy
with translated values. - made
filterTypingDebounce
optional, default to 750ms - made GraphQL
postProcess
totally optional, the service now use aninternalPostProcess
that will takes care of filling the slickgrid dataset and pagination info (prior to this change, you had to manually deal with them).postProcess
is still available and you can still use it to stop a spinner or anything after the process is done. onBackendEventApi
is deprecated is replaced bybackendServiceApi
, you can still use previous implementation but you will get a warning in the console.
- you no longer need to call
- new Column option
queryField
was added so that you can use another field to do anorderBy
orfilterBy
(this works with all implementation, regular grid with JSON dataset and/or backend services OData/GraphQL) - Inline Editor
dateEditor
will now translate automatically by usingngx-translate currentLang
to use proper locale with Flatpickr. - renamed Event Emitter
onGridDestroyed
toonAfterGridDestroyed
to be more consistent with the others.
Fixes
- fixed issue #8 when using inline editor
dateEditor
and latestFlatpickr
version - fixed issue #9 string filter should be case insensitive
- fixed string filter with (*) operator on filter, the filtering query was inverse
John*
=> startsWith,*Doe
=> endsWith
- fixed, yet again, an error thrown by SlickGrid saying: "Stylesheet missing"
- Backend Service Pagination
- changing the page size in the UI was returning a string to
pageSize
and was breaking the pagination - changing page then typing a filter was not reseting the GraphQL offset property which would sometime break pagination since we could be out of bound.
- changing the page size in the UI was returning a string to
Deprecated
onBackendEventApi
was deprecated, please use the much simplerbackendServiceApi
instead. You will receive a warning in the console when using previous property. Please refer to the OData Wiki or the GraphQL Wiki for more info on the new property usage.
New Styling and Event Emitters
Fixes
- check grid exist before trying to resize (or auto-resize) the Grid to avoid console error thrown by SlickGrid
- fix an error thrown by SlickGrid when editing a row and highlighting it
New Features
- add info icon Formatter
Formatters.infoIcon
with has Font Awesome (fa-info-circle) - add extra SASS border variables for multiple elements
- border around Header Titles
- border around Header Filter Row
- border around ViewPort
- add flag to show/hide Clear Filters & Toggle Filter commands in GridMenu
- add Refresh Dataset command in GridMenu for backendAPI Services only (OData / GraphQL)
- added many new Event Emitters
onDataviewCreated
onGridCreated
onBeforeGridCreate
onBeforeGridDestroy
onGridDestroyed
OBSOLETE in future version
These 2 Event Emitters got renamed to be consistent in the new naming structure (every emitter now start with onX prefix). You can still use the old names, but I'd like to remove them in future releases.
dataviewChanged
renamed toonDataviewCreated
gridChanged
renamed toonGridCreated
You can see the Event Emitter documentation in the Wiki - Grid & DataView Events
Add localization to Select dropdown filter
Fixes
- fix select Dropdown filter not working correctly with string
- fix highlight row sometime throwing slickgrid error with updateItem
New Features
- add localization to Select dropdown filter
- example 12 on the demo was also updated to show this change
Fix Backend Service postProcess got called 2x times
- Add a
destroyFilters()
function to fix the backend services (OData/GraphQL) that were calling 2x times apostProcess
introduced by previous version change.
Small fixes
Fixes
- fix ClearFilters not working with GraphQL & OData Services
- update French locale
- move some npm packages to dev dependencies
Minor Translation Fixes & new Styling of Checkbox Selector (row selection)
Fixes
- Column Picker and Grid Menu last 2 checkboxes (force fit column & synchronous resize) are now translated.
- this became possible with the latest version of Slickgrid
2.3.12
, make sure you have latest version installed
- this became possible with the latest version of Slickgrid
New functionalities
- Add GraphQL flag (
keepArgumentFieldDoubleQuotes
) to keep field with double quotes in query- that adds more flexibility of dealing with Complex Objects in a GraphQL query
- Refactored GraphQL Service properties to make it easier to use
- there's nothing remove though, just addition of properties like
columnDefinitions
andcolumnIds
that you can pass directly to the GraphQL Service options
- there's nothing remove though, just addition of properties like
- Add new CSS/SASS styling for the Checkbox Selector plugin (row selections)
- this requires latest version of Slickgrid
2.3.12
, so make sure you have latest installed - new SASS variables were also added to customize the checkbox even more (color, size, opacity)
- this requires latest version of Slickgrid
GraphQL fixes and add new flag
Fixes
- fix GraphQL filter with slashes and other special chars
- add GraphQL flag to keep field with double quotes in query
- This new flag will be useful when used with complex object
Add missing translation to Pagination Component
v0.7.1 add missing translation to Pagination Component