This repository was archived by the owner on Jun 1, 2025. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 19
Migration from 1.x to 2.x
Ghislain B edited this page May 28, 2018
·
56 revisions
Migration Changes Guide from version 1.x to 2.x
- Aurelia-Slickgrid Services are no longer Singleton and are no longer available as Dependency Injection (DI) anymore, they are instead available in the Aurelia Grid Instance that can be obtained by the
onAureliaGridCreatedEvent Aggregator (or Event Dispatch)- not finalized, we will see when we get there (discussion is all in #36 )
-
GridExtraServicegot renamed toGridService -
GroupingAndColspanServicegot renamed toGroupingService -
ControlAndPluginServicegot renamed toPluginService- not finalized this might end up being split into 2 Services
-
GridExtraUtilno longer exist, it was containing only 1 functiongetColumnDefinitionAndData()that got moved into theGridServiceand renamed togetColumnFromEventArguments
- all the Editors options were previously passed through the generic
paramsproperty. To bring more TypeScript Types, all of these options got moved into theeditoroptions (see below)
- For consistencies, all Grid Menu
showXflags were renamed tohideXto align with some of the SlickGridhideX(see (below](/ghiscoding/aurelia-slickgrid/wiki/Migration-from-1.x-to-2.x#grid-menu-showx-renamed-to-hidex)) -
exportWithFormatteris no longer available directly in the Grid Options, it is now underexportOptionsGrid Options (see below) - add
i18ndirectly into the Grid Options instead of using the genericparams(see below)
- Select Filter (
FilterType.select) withselectOptionsgot renamed tocollection(see below) - previously we had
searchTerms(array) andsearchTerm(singular), but the lattersearchTermwas dropped in favor of using onlysearchTermsto remove duplicate logic code (see below).
- For
BackendServiceApi, theserviceproperty now as to contain anewinstance of the Backend Service that you want to use (GraphqlServiceorGridOdataService). See explanation below - All 3
onXservice methods were renamed toprocessOnXto remove confusion withonXEvent Emitters with the same names. (see below)- this will probably not concern you, unless you built your own custom Backend Service API
-
BackendServicemethodinitOptionsgot removed and replaced byinitwhich has a different argument signature
- removed
onBackendEventApiwhich was replaced bybackendServiceApi - removed Select Filter
selectOptions, replaced bycollection - removed
FormElementTypewhich was replaced byFilterType - removed
initOptionsfunction frombackendServiceApi, which was replaced byinitwith a different signature
export class MyGrid {
- constructor(private graphqlService: GraphqlService, private i18n: I18N) {
+ constructor(private i18n: I18N) {
}
this.gridOptions = {
backendServiceApi: {
- service: this.graphqlService,
+ service: new GraphqlService(),
preProcess: () => this.displaySpinner(true),
process: (query) => this.getCustomerApiCall(query),
postProcess: (result: GraphqlResult) => this.displaySpinner(false)
},
params: {
i18: this.translate
}
};Previously available directly in the grid options but is now accessible only from the exportOptions property
this.gridOptions = {
- exportWithFormatter: true
exportOptions: {
+ exportWithFormatter: false,
}
};this.gridOptions = {
enableTranslate: true,
- params: {
- i18n: this.translate
- },
+ i18n: this.translate,
};This was already renamed long time ago but was still available. It is now removed, if you have any references simply change selectOptions to collection
// column definitions
this.columnDefinitions = [
{
id: 'isActive', name: 'Is Active', field: 'isActive',
type: FieldType.boolean,
filterable: true,
filter: {
- selectOptions: [ { value: '', label: '' }, { value: true, label: 'true' }, { value: false, label: 'false' } ],
+ collection: [ { value: '', label: '' }, { value: true, label: 'true' }, { value: false, label: 'false' } ],
type: FilterType.multipleSelect,
searchTerms: [], // default selection
}
}
];If you used the singular searchTerm in your project, simply change it to an array of searchTerms, for example
// column definitions
this.columnDefinitions = [
{
id: 'isActive', name: 'Is Active', field: 'isActive',
type: FieldType.boolean,
filterable: true,
filter: {
collection: [ { value: '', label: '' }, { value: true, label: 'true' }, { value: false, label: 'false' } ],
type: FilterType.multipleSelect,
- searchTerm: true, // default selection
+ searchTerms: [true], // default selection
}
}
];Since these flags are now inverse, please do not forget to also inverse your boolean value. Here is the entire list
-
showClearAllFiltersCommandrenamed tohideClearAllFiltersCommand -
showClearAllSortingCommandrenamed tohideClearAllSortingCommand -
showExportCsvCommandrenamed tohideExportCsvCommand -
showExportTextDelimitedCommandrenamed tohideExportTextDelimitedCommand -
showRefreshDatasetCommandrenamed tohideRefreshDatasetCommand -
showToggleFilterCommandrenamed tohideToggleFilterCommand
Here is the entire list
-
onFilterChangedwas renamed toprocessOnFilterChanged -
onPaginationChangedwas renamed toprocessOnPaginationChanged -
onSortChangedwas renamed toprocessOnSortChanged
Contents
- Aurelia-Slickgrid Wiki
- Installation
- Styling
- Interfaces/Models
- Testing Patterns
- Column Functionalities
- Global Grid Options
- Localization
- Events
- Grid Functionalities
- Auto-Resize / Resizer Service
- Resize by Cell Content
- Add/Delete/Update or Highlight item
- Dynamically Change Row CSS Classes
- Column Picker
- Composite Editor Modal
- Context Menu
- Custom Tooltip
- Excel Copy Buffer
- Export to Excel
- Export to File (CSV/Txt)
- Grid Menu
- Grid State & Presets
- Grouping & Aggregators
- Header Menu & Header Buttons
- Header Title Grouping
- Pinning (frozen) of Columns/Rows
- Row Colspan
- Row Detail
- Row Selection
- Tree Data Grid
- SlickGrid & DataView objects
- Addons (controls/plugins)
- Backend Services