Skip to content

Releases: ghiscoding/aurelia-slickgrid

Dynamically Change Column Definitions and Grid Definitions on the Fly

21 May 20:51
Compare
Choose a tag to compare

Features

  • grid: ability to dynamically add or change Column Headers (#65), closes #57
    • You can see a demo in Example 12, click on the button "Dynamically Duplicate Title Column"
  • filters: add more operator types to collection svc filter (#66) (4359e67), closes #63
  • resize: use gridHeight or gridWidth when provided on autoResize (#59

Bug Fixes

  • control: Grid Menu z-index is too low when inside a modal window (b722f6d)
  • dataview: preserve any previous sort when resetting items (#62) (2112768)
  • editor: Int/Float Editors multiple small enhancements (#54) (b208fcf)
  • editors: fix serialization/deserilization in editors (2ee03b0), closes #56
  • editors: fix serialization/deserilization in editors (f3610d7), closes #58
  • editors: use indexOf in multiple select editor to load value (21215c4), closes #50
  • editors: use indexOf in multiple select editor to load value (599a803)
  • eventService: use grid.getOptions for gridDefinition (e67e93a), closes #49
  • eventService: use grid.getOptions for gridDefinition in event service (0be30fd), closes #51
  • grid: issue #44, sort icon hidden behind grid menu w/small dataset (#53) (737da5f)
  • grid: Resizer on 1st grid stop working after 2nd grid is created (ed462ca)
  • grid: Support Row Selection & Inline Editors in 1 view (1da7b7a)
  • grid: use this.gridOptions in bind & remove aurelia args (3bd2d90)
  • gridOptions: use this.gridOptions in bind fn (48de363)
  • headerMenu: we should not display header menu on row select column (#64) (efe1c21)

BREAKING CHANGES

  • filters: Reversing the 'EQ' filter logic. This was done now because the filter feature was new and it follows the javascript filter logic (since equal will filter values equal to the value provided)

Row Colspan, Header Title Grouping, Default Header Menu, and more...

12 Apr 02:50
Compare
Choose a tag to compare

Features

  • graphql: add option to pass extra query arguments (f278c73)
  • grid: add a default Header Menu with Sort Asc/Desc & HideColumn (#47) (db5fc16)
    • this is the new default, all grids now have them
  • grid: add all missing grid options available in SlickGrid (7d194ed)
  • grid: add Column Span (colspan) demo (e20a3f6)
  • grid: add Header Grouping Title (#43) (67ff867)
  • grid: Excel like Copy with Copy Manager Plugin (#45) (dbbbe56)
  • sorting: add support for multi-columns number indicator & tristate (ada47cd)
    • try a multiple column sort and you will see the new numbering
  • grid: add deleteDataGridItem & deleteDataGridItemById into Service (2e927f2)

Bug Fixes

  • editor: Single/MultiSelect Editors misbehave w/Desc Sort, fixes #46 (71916dc)
  • excelCopy: Excel Copy Buffer should have sanitize option as export (8c57298)
  • formatter: make sure object exist before getting property (4961cab)
  • grid: calling refreshBackendDataset was not refreshing UI (24a061e)
  • grid: after expanding a column, scrolling should not resize grid (bf83c90)

Grouping & Aggregators / DI support in Editors

04 Apr 16:54
Compare
Choose a tag to compare

Bug Fixes

  • graphql: make sure column exist before trying to get properties (7122d6a)

  • graphql: remove throw error when dataset is empty or bad structure (36ea506)

  • grid: gridHeight & gridWidth not set, closes #35 (#40) (0bd2c53)

  • merge: fix last merge had conflicts (15e80e8)

  • merge: fix some merge conflicts (d2172df)

  • preset: Preset with backend were not working when using queryField (7ce538a)

  • tasks: VSCode Taks command were broken in new VSCode insiders (653ecb8)

  • grid: grid fixed sizes wasn't working in Edge/Firefox, closes #35 (a7669df)

Features

Compound Filters

20 Mar 02:39
Compare
Choose a tag to compare

Features

Bug Fixes

  • backend: Grid Presets sort order not correct with backend services (22f687b)
  • editor: i18n service can also be passed as params in gridOptions (c11eff4)
  • filter: single select filter incorrect onFilterChanged on Presets (c7e186a)
  • formatter: dateTimeIso Formatter was using dateIso (6756de8)
  • gridState: Filter were not always returning searchTerm in GridState (67f167a)
  • jquery-ui: use latest version of jQuery-UI to avoid jQuery 3 errors (c546865)

Grid State Events

13 Mar 03:39
Compare
Choose a tag to compare

Bug Fixes

  • build: incorrect type any (5ffc0a1)
  • formatter: add throw error with instruction if missing params (cbb01d9)
  • formatter: multipleFormatter should pass value to next formatter (bf6b006)
  • pagination: Pagination with BackendServiceApi was incorrect (fba8750)
  • requireJS: import for RequireJS should have /index (b796c26)
  • sample: fix the client-CLI sample (407ba66)
  • sass: all sass properties should have an override capability (6d03cd7)
  • utilities: move findOrDefault to a function (#29) (3d21548), closes #27
  • formatter: translate formatter was causing issues in some occasion (8acdc28)

Features

Grid State & Presets - new Select Editors - and more

07 Mar 04:56
Compare
Choose a tag to compare

Bug Fixes

  • backend: backend filter on delay was broken since GridState feature (a25147d)
  • build: fix all build errors (3d24212)
  • doc: updated contributing as per comment in #10 (f437e39)
  • events: every subscribed event should have an unsubscribe (5abc223)
  • events: every subscribed event should have an unsubscribe (31b4e24)
  • filter: remove unused function (00b3654)
  • graphql: a column type of number should use EQ in GraphQL query (a7da882)
  • grid: delete duplicate gridOptions it was causing issues (fb131aa)
  • grid: update SlickGrid version and configure Header Menu autoAlign (211ea96)
  • odata: OData string filter should also support operators (0bf8928)

Features

  • doc: install and setup "prepare-release" for changelog and commit (3925050)
  • filter: add new InputNoPlaceholderFilter and global default filter (739ff3f)
  • formatter: add a new HyperlinkURI formatter, you need to uriPrefix (52de978)
  • grid: add inline editor undo command (72ef747)
  • grid: add Pagination page number input (8a89c58)
  • query: add excludeFromQuery prop and use it for Row Selection (cda0e39)
  • queryFilter: add new "queryFieldFilter" and "queryFieldSorter" (9d2aae1)
  • selectEditors: add select grid editors (#22) (5bd7215)
  • grid: GridState and Presets (#23)

Export to File

26 Feb 06:23
Compare
Choose a tag to compare

Features

  • Export to File, currently 2 types of exports are supported Wiki - Export to File (PR #16)
    • CSV
    • Text (Tab or Semicolon delimited, or actually any delimiter you wish)
  • 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.
  • refactored Filter implementation to use a FilterFactory for Filter instantiation (PR #13)
  • added a new datasetIdPropertyName grid option which provide a way to use a different property than id (PR #8)
  • update to latest SlickGrid version 2.3.13 which brings a few goodies
    • expose new show/hide flags for the ColumnPicker/GridMenu commands of "Force fit column" and "Synchronous Resize", we can now hide them... yay
    • expose new ColumnPicker/GridMenu Slick Event of onColumnsChanged to know what are the remaining columns after removing 1 or many
  • update to latest TypeScript version 2.7.2
  • expose all Grid/DataView SlickGrid Events to Aurelia via dispatch (PR #6)

Fixes

  • fix(gridDestroy): grid destroy missed an event aggregator dispose
  • fix(grid): Widen resizable handle cursor areas for columns
  • fix(events): missing unsubscribeAll from gridEvent Service

Big Thanks

A big thanks to @jmzagorski for doing a lot of these PRs and putting some orders in the lib :)

MultipleSelect Filter, Custom Filter and Dispatch Events

20 Feb 05:06
Compare
Choose a tag to compare

Features

  • rewrote most of the Filter implementation to make Filters more modular
    • MANDATORY, if you want to use the new filters, you will have to modify your import to include a custom version of multiple-select.js, see the HOWTO for all necessary info on how to import with CLI or WebPack.
    • now support Multiple-Select Filter with SASS variables for styling.
    • created Single Select Filter (radio box), again read Wiki - Select Filter for more info.
    • also support Custom Filter, read Wiki - Custom Filter for more info.
  • All SlickGrid events are now exposed with delegate binding, they all start with the sg-on prefix
    • for example SlickGrid event onMouseEnter can now be bind directly in the View template with sg-on-mouse-enter.delegate.
    • for more info, read number 3 of Aurelia Grid & DataView Events
    • huge thanks to @jmzagorski for this addition which is also the first community contribution. Keep them coming :)

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.
  • fix inline editor checkbox that were not showing up (completely hidden)
  • fix pagination, it should display "1-(itemCount)" when count lower than totalCount
  • fix pagination View displayed even when setting "gridOptions.enablePagination=false"
  • fix header buttons styling, which was not floating correctly anymore

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.

v1.4.0

10 Feb 18:58
Compare
Choose a tag to compare

Features

  • add i18n support into Editors.date with Flatpickr
  • add Column queryField property to make possible to filter or sort by another field
  • add a customStructure property for the select filter to use different key/value pair, see Wiki - Select Filter for more info
  • complete rewrite of backendServiceApi
    • add addLocaleIntoQuery property for GraphQL query
    • make the filterTypingDebounce optional, default 750ms
    • make enablePagination totally optional (it will detect when we are using backend service api)
    • make initOptions totally optional and use Pagination options when initOptions doesn't include paging info

Fixes

  • fixed Editors.date with latest version of Flatpickr
  • fixed pagination a GraphQL pageSize should always be a number not string
  • fixed error thrown by SlickGrid of "Stylesheet missing"
  • fixed regular grid local filter not working with localization (i18n), 1st column in Example 12
  • make column string filter case insensitive and fixed * operator
  • fixed pagination resetting "items per page" on filterBy/orderBy change
  • pagination, changing page and filter/sort should also reset to page 1

Deprecated

  • onBackendEventApi was replaced by backendServiceApi which was a big rewrite and brings a lot of new features (see on top), mainly there's a lot less setup to do at the beginning, the API does a lot of setup by itself.
    • this is for now only a console warning, advising you to use the new API

New Styling and Event Aggregators

20 Jan 22:46
Compare
Choose a tag to compare

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 Aggregator
    • onDataviewCreated
    • onGridCreated
    • onBeforeGridCreate
    • onBeforeGridDestroy
    • onAfterGridDestroyed

You can see the OnEvent documentation in the Wiki - Grid & DataView Events