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

Releases: ghiscoding/Angular-Slickgrid

Grouping & Aggregators (alpha stage)

20 Mar 18:02
Compare
Choose a tag to compare

Features

  • feat(grouping): add first draft of Grouping & Aggregators functionality
    • this is in Alpha stage, things will change, especially the Slick.Data.Aggregators these should not be used directly but I just wanted them working as a POC (proof of concept) for an Alpha release. Future version will separate all Aggregators into their own interfaces and functions, and you will call them from Angular-Slickgrid (just like Formatters).
    • you can give it a try and provide feedback (if so use issue #21), but expect to have to refactor your code in the next version (probably in a week or so)
    • no documentation yet, just look at the demo and ts file for now.

Fixes

  • fix(jquery-ui): use latest version of jQuery-UI to avoid jQuery 3 errors
    • previous version wasn't using the latest version of jQuery-UI which is 1.12.1, this version does use it.

Compound Filters & Single/Multiselect Editors

13 Mar 15:29
Compare
Choose a tag to compare

Features

  • feat(editor): add new Single & Multiselect Editors
  • feat(gridState): add onGridStateServiceChanged Event Emitter
  • feat(filter): add new Input & Date Compond Filter
  • feat(formatter): remove Formatter inputNoPlaceholder and replaced with a new global grid options defaultFilterPlaceholder that is set with the magnifying glass icon. If you don't want any placeholder, just set the defaultFilterPlaceholder: '' to empty string
  • feat(sass): add focus color for multiselect
  • feat(grid): add column definition setter to update dynamically, ref #20

Fixes

  • fix(odata): the OData grid sample Pagination was not working correctly
  • fix(formatter): dateTimeIso Formatter was using dateIso
  • fix(jquery): remove all jquery imports causing issues with external libs
  • fix(jquery-ui): use latest version of jQuery-UI to avoid jQuery 3 errors
    • to avoid error thrown by jQuery 3 and issues with 3rd party lib, in my case Bootstrap.js Tooltip, I had to change the order of the scripts imports, look at angular-cli.json info in the Uncyclo -
      HOWTO
  • fix(gridState): get Current Pagination not set on first load
  • fix(styling): header with char "g" is sometimes cut out, increase height
  • fix(filter): single select filter incorrect emit
  • fix(backend): Grid Presets sort order not correct with backend services
  • fix(pagination): go back to page 1 only on filter change (backend service only)
  • fix(filter): Compound Input filter on type string was not working correctly with regular grids (without backend service)
  • fix(filter): CompoundDate Filter should add a time picker when found 'h'

Grid State additions and fixes

06 Mar 22:19
Compare
Choose a tag to compare

Features

  • feat(queryFilter): add new "queryFieldFilter" and "queryFieldSorter"
  • feat(formatter): add a new HyperlinkUriPrefix formatter, you need to pass uriPrefix
  • feat(filter): add new InputNoPlaceholderFilter and global default filter
  • feat(event): add onGridStateChanged and onPaginationChanged events
  • feat(graphQL): add Column "fields" to help pass multiple properties to GraphQL query
  • feat(gridState): add headerName which can be columnDef.headerKey or columnDef.name
  • feat(service): expose refreshBackendDataset for backend

Fixes

  • fix(graphQL): delete duplicate gridOptions it was causing issues with GraphQL internalPostProcess call
  • fix(graphql): a column type of number should use EQ in GraphQL query
  • fix(backend): backend filter on delay was broken since GridState feature was introduced
  • fix(gridState): onGridStateChanged not working correctly in many cases
  • fix(formatter): multipleFormatter should pass value to next formatter

Deprecated

  • remove deprecated Event Emitter (onGridCreated)

Grid State fixes

05 Mar 17:05
Compare
Choose a tag to compare

features

  • feat(formatter): add multiple formatter
  • feat(query): add new Column property excludeFromQuery and use it for Row Selection

fixes

  • fix(graphql): GraphQL had the incorrect sorting structure
  • fix(error): make sure dataview exist before trying to refresh it
  • refactor(filter): make the setValues a required function
  • refactor(filter): all setValues argument should be typed
  • fix(state): Grid State output should only have properties of it's own type

demo

New demo of a Custom Pagination, thanks to @sabeurch for providing it.

Grid State & Grid Presets

01 Mar 21:49
Compare
Choose a tag to compare

Features

  • Grid State allows you know at any time, what are the current Filters, Sorters and Pagination information. See the Grid State & Presets for more info.
    • Pagination is only used with a Backend Service
  • Grid Presets, you can now load a grid with certain presets that include Filters, Sorters and Pagination
    • again Pagination is only with a Backend Service
  • When combining Grid State and Grid Presets, you can store the state in Local Storage (or DB) and later come back to that same page and load the presets. We plan to use it with Local Storage in our App
  • extend GridOption interface with editCommandHandler option (PR #15)
    • this bring Inline Editor Undo capabilities, see updated Example 3
  • add datasetIdPropertyName into grid options for dataset that don't have an id but rather another name like ID, where the case matters.
  • add MultipleSelectOption type to make it easier to use with filterOptions property
  • add Pagination page number input (with Backend Service only)
  • updated to latest SlickGrid version 2.3.15 which brings a few features and fixes
    • ColumnPicker / GridMenu
      • expose new hide flags (hideForceFitButton and hideSyncResizeButton
      • expose onColumnsChanged new Slick Event
    • Header Menu now have autoAlign, which basically change the menu alignment to left when it knows there isn't enough room to show on the right

Fixes

  • fix(odata): OData string filter should also support != and <> operators with input filter
  • fix(grid): Widen resizable handle cursor areas for columns
  • fix(events): every subscribed event should have an unsubscribe to avoid unwanted behavior and memory leak
  • fix(grid): update SlickGrid version and configure Header Menu autoAlign
  • fix(grid): filter selected values were being lost after changin col pos

Thanks

A big thanks to @asdman384 and @sabeurch for their PRs, discussions and ideas. 🥇

Export to File

21 Feb 00:33
Compare
Choose a tag to compare

Features

  • Export to File, currently 2 types of exports are supported Uncyclo - Export to File
    • CSV
    • Text (Tab or Semicolon delimited, or actually any delimiter you wish)
  • New version of Packagr which was designed for Angular 5, this is for Development purposes, but it's worth knowing
  • add autoDropWidth option to multiple-select.js which can be used as a filterOptions for SingleSelect and MultipleSelect Filters
  • add Filter class "filled" (or no class when empty) for styling purposes on all Filters.
    • we could for example show a different background color when the filter is filled
  • add positionOrder to change the order position of the "Custom Commands" list showing up in the Grid Menu
  • update to latest version of SlickGrid 2.3.13 which brings a few goodies
    • when using Formatters.translate, you can now define it directly in the Grid Options instead of each Column Definition.

Fixes

  • fixed inline editor checkbox not showing up
  • fixed pagination should display 1-(itemCount) when count is lower than totalCount
  • for example if we want to display 20 items per page but our list only has 6 items, it should display
  • 1-6 of 6 items
  • fixed issue #13, when using Backend Service API and setting enablePagination: false, it shouldn't show the pagination component.
  • fixed header buttons styling, which was not floating correctly anymore
    • Example 7 (Header Button Plugin demo)

Multiple-Select Filter & Custom Filter

13 Feb 19:03
Compare
Choose a tag to compare

Features

Fixes

  • when rewriting the Filter, I found performance issues there was 2 nested for loop while only 1 loop is enough. So there were performance impact.
  • translateFormatter should only translate when it has a value

Deprecated

  • Select Filter selectOptions property was renamed collection to make it more generic and re-usable with other Filter that might not be Select.
    • a console warning will be shown if you use the old property name, so it won't break any code. The old property will be removed in later versions.

Small fixes - TranslateFormatter & Filter translated cell values

07 Feb 21:24
Compare
Choose a tag to compare

Fixes

  • translateFormatter was throwing error on empty space
    • ngx-translate doesn't seem to like empty string as a translate key but white space are ok, so we'll use that as fallback
  • fix regular grid local filter not working with localization (i18n)
    • a new flag useFormatterOuputToFilter was created to get over the problem, so you need to set this flag to true when you want to use the output of Formatter to filter against, see the Uncyclo - input filter
    • in the Example 12 - Localization, the Title column filtering was not working correctly because each cell value uses a translate formatter.

Global Grid Options through forRoot

06 Feb 00:42
Compare
Choose a tag to compare

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 (the pagination 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.
  • Add a Custom Structure property for the Select Filter (that is when your collection doesn't have the property value and/or label, you can now customize their name(s))
  • 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,
  ...
}), ... ]

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"

30 Jan 19:09
Compare
Choose a tag to compare
  • fix "SlickPaginationComponent No provider for TranslateService", there was an unused DI in the Slick Pagination component.