aurelia-slickgrid

Aurelia-Slickgrid is a wrapper of the lightning fast & customizable SlickGrid datagrid, it also includes multiple Styling Themes

MIT License

Downloads
1.6K
Stars
127
Committers
9

Bot releases are hidden (Show)

aurelia-slickgrid - Single Search Filter and complete restructure of the lib folder & demos

Published by ghiscoding over 5 years ago

This release includes a complete restructure of the lib folder to make it easier for people to contribute. Now all the library source code can be found under the folder src/aurelia-slickgrid/ and it still also includes the minimum examples code under src/examples/ in order to test the entire library. All the client demos (now 4 of them) were moved to a new repository aurelia-slickgrid-demos which you can clone and run locally, all the instructions are in the new repo.

Also, this new release now includes a few type of testing and more tests will be added in the future as the time permits. The external library that we use for testing are Cypress.io (for E2E) and also Jest (for Unit & Integration Tests).

Features

Bug Fixes

  • backend: Filter presets is getting removed when calling sort (98e8199)
  • formatter: rewrite formatter do what it was supposed to do (9100e2c)
  • headerMenu: calling "Clear Filter" was calling incorrect grid state (a699c45)
  • input: remove autocomplete from all Editors & Filters (6db160e)
  • input: remove autocomplete from all Editors & Filters again (437e913)
  • pageSizes: setting different sizes extend global sizes, fixes #150 (d64cf9a)
  • rowDetail: use latest Github SlickGrid code, temporary fix (c4a319b)
  • select: sync multiple-select.js with core lib & fix some js event (a9b6093)
aurelia-slickgrid - AutoHeight Features and few fixes

Published by ghiscoding over 5 years ago

Features

Bug Fixes

  • cellCopy: fix a small issue with cell copy (b31edc4)
  • client-cli: replace gulp package link, ref issue #139 (eb662e2)
  • editor: allow all Editors to work with complex objects (#145) (ffa62f3)
  • example: multiSelect should be false when using single row select (a3afa3d)
  • formatters: some formatters were not considering empty string (74bfcaa)
  • mapDateFormat: add missing date format in map utility (fd00013)
  • rowDetail: clear Row Detail content before recreating it (#146) (83bb1dd)
  • RowDetail: fix missing html tag closing for (7ddbd6c)
  • select: when destroying Select Filter/Editor, escape dot in name (1ae74d0)
  • updateItem: call grid.updateRow instead of grid.invalidateRow (8c503a4)
aurelia-slickgrid - Formatter can also return object - few small fixes

Published by ghiscoding over 5 years ago

Features

  • formatter: Formatter can also return objects (#136) (c1c9681)

Bug Fixes

  • filter: all jquery .on bound event should also be unbound (#137) (0570a95)
  • filter: select filter drop doesn't get removed on destroy (#138) (d967348)
aurelia-slickgrid - Small Fixes and Feature

Published by ghiscoding over 5 years ago

Features

Bug Fixes

  • backend: debounceTypingDelay on input Filter was no longer working (#134) (ab2be81)
  • pagination: incorrect pagination behavior on adding/removing items (#135) (1092282)
aurelia-slickgrid - Supposed to be a Patch version (not a Minor)

Published by ghiscoding almost 6 years ago

This should have been a patch update, not a minor. There isn't much added to previous version.

Refactor

  • menu: change default header menu sort asc/desc icons (650e507)

Bug Fixes

  • filter: Header Menu Clear Filter not calling Grid State change (85e34d3)
  • styling: fix styling issues when Filters are filled (58bb1e1)
    • adds a filled class which user can customize to his need, e.g. change background-color of filled Filters
    • Wiki doc
aurelia-slickgrid - Pinned (frozen) Columns/Rows & AutoComplete Editor/Filter & more...

Published by ghiscoding almost 6 years ago

Features

  • autocomplete: Editor & Filter autocomplete feature (#122) (d89b3ab)
  • build: distribution folder shouldn't be part of the Git (#128) (f84662c)
  • divider: add divider option to Grid Menu & Column Header Menu (#131) (4788904)
  • filter: input mask filter (#132) (d591a8b)
  • frozen: add frozen column/row example (#121) (12dde76)
  • frozen: add option to freeze bottom instead of just top (#123) (deb1e19)
  • headermenu: add Clear Filter to each Column Header Menu (#130) (b7fa750)
    • make sure to update your i18n dictionnary with this key
  • sorter: add object with dataKey as a Sort and add custom Sorter (#129) (189fb20)
  • sorting: add "Clear Sort" in each Column Header Menu (#125) (cd6a6e5)
    • make sure to update your i18n dictionnary with this key

Bug Fixes

  • filter: Select Filter "addBlankEntry" sometimes add 2x entries (#126) (e07e726)
  • pagination: refresh paging after adding/deleting item with DataView (#124) (3e31b24)
  • translateFormatter: shouldn't convert null values to string (#127) (79a159c)
aurelia-slickgrid - Draggable Grouping, Row Detail & Remote Plugins

Published by ghiscoding almost 6 years ago

Features

  • backend: add onError callback which catch error from process (#116) (17092b8)
  • badge: add download count badge (1676d7c)
  • grouping: draggable grouping plugin (#114) (0972471)
  • inputType: Add multiple Filter input types (number/password) (#117) (387cd21)
  • plugin: add Row Detail Plugin extension (#113) (755e026)
  • remote: add Remote Model example with custom dataview (#115) (7cc2faa)
    • see Example 17 / ViewModel
    • the remote example is blocked in Chrome (because of CORS), you can unblock it or use Firefox/Edge to see the demo
    • Note about this though, this Remote API uses a CustomDataView and going with that implementation, you will lose a few built-in features of Aurelia-Slickgrid (you have to implement your own Sort/Filter/Grouping/GridState), so this is at your own risk... anyhow it's now supported and comes from the SlickGrid core AJAX demo
  • selector: add new property to display Select All chkbox elsewhere (#118) (db68f7e)
  • update: add updateDataGridItems for multiple changes (824af29)

Bug Fixes

  • editor: Float Editor not working with .5 but works with 0.5 (1082fdf)
  • filter: Date in UTC format with milliseconds not filtering well (718b7c4)
  • pagination: fixed a few pagination problem used by backend service (4f2362b)
  • resize: global delay timer was affecting multiple grid resize (a661115)
  • grouping: toggle group not working in example 18, fixes #119 (#120) (10c6190)
  • converter: add prefix to value converter to avoid conflicts (87ad6cc / 5b83be8)
aurelia-slickgrid - SlickGrid Controls/Plugins now On Demand & all separate

Published by ghiscoding almost 6 years ago

This new release does not bring much to the user on the feature side of it, however in code there was a major rewrite in how SlickGrid Controls & Plugins (gridMenu, headerMenu, columnPicker, ...) are handled. It was all previously under 1 big Service which was getting way too big, the rewrite was to separate them all in individual classes/services which is much more maintainable. Another big change, again under the hood, is that each of these controls/plugins (now called simply as Extensions) will be called On Demand, meaning that if you don't enable the extension, it won't use the SlickGrid Control/Plugin, this should end up in smaller prod build size (SlickGrid has about 10 controls/plugins and you might not use them all).

Features

  • editor: add "editor-{id}" to all Editors. easier styling & target (#112) (6d52536)
  • filter: add "filter-{id}" to all Filters. easier styling & target (#111) (d836e7c)
  • plugin: split out all controls/plugins into their own class (#110) (6027d0c)
  • select: Filter/Editor collections can now also be of type String (#109) (9733d08)

Bug Fixes

  • resize: auto-resize shouldn't resize when fixing gridHeight/Width (4586d29)
  • select: multiple-select autoAdjustDropWidth sometime incorrect (2e86cec)
  • select: Single Select should use EQ operator instead of IN (550a974 / 3f3f9ed)
aurelia-slickgrid - Multiple Features & Fixes

Published by ghiscoding about 6 years ago

Features

  • collection: support multiple filterBy/sortBy in CollectionService (#106) (86e8561)
  • demo: add Dynamic Row CSS Styling example (bb7f757 / ab16a4e)
    • demo, click on the last button "Highlight rows with Duration over 50"
  • editor: add auto commit edit flag to grid options (#96) (6c9c197), closes #82
  • editor: pass Editor Args to Editor Custom Validators (#98) (27c7132)
  • resize: add maxHeight & maxWidth options to resizer (#104) (547faa5)
  • select: add option to use shorter label as selected text (#107) (8df592b)
  • filter: add posibility to filter complex objects (#100) (cfc5565)
  • sort: add posibility to sort complex objects (#102) (ed6e729)
  • select: Filter/Editor able to translate prefix/suffix/optionLabel (0732e53)

Bug Fixes

  • autocommit: auto-commit should not save if field is invalid (#108) (dac989b)
  • chrome: Compensate incorrect SlickGrid measureScrollbar (24a1bfa)
  • chrome: patch horizontal scroll appearing only in Chrome (877f5a3 / e1ef209)
  • editor: Select Editor should close when tabbing away, fixes #92 (#94) (f8f808c)
  • example: prerequisite prop should only use integer values, closes #95 (#97) (fddda24)
  • export: Export should work with datasetIdPropertyName defined (#99) (fad2117)
  • export: remove extra comma at the end of each line (501b779)
  • header: hidding column from header menu after reordering column (88097ad)
  • header: use showHeaderRow flag when defined by user (#105) (d9ccdf2)
  • http: remove aurelia-http-client dependency, closes #101 (#103) (f203b0f)
  • styling: remove black border bottom from column headers (3e42538)
  • resize: autoAdjustDropWidthByTextSize should handle 100% width (c567f73)
  • resize: when having 2 grids resize only works on 1 grid (5cf81e1)
aurelia-slickgrid - MultipleSelect / SingleSelect Editors & Filters Collection Async

Published by ghiscoding about 6 years ago

Features

  • async: Filter & Editor load Collection Async & Watch, closes #83 (#89) (e12019b)
  • columnSize: add flag enableAutoSizeColumns (5641871)
  • filter: auto adjust drop position (up/down) of select filter (c362e3c)
  • formatter: add 2 new DateTime Short Formatter without seconds (ac14e4e)
  • formatter: add new arrayObjectToCsv Formatter (cdf801e)
  • multiselect: auto-adjust height & position of multiple-select.js (#93) (b8f3e72)
    • 3 new flags were added to control height, width, position of the drop from Single/Multiple Select Filters/Editors
      • autoAdjustDropHeight, autoAdjustDropPosition, autoAdjustDropWidthByTextSize
      • these new flags are all enabled by default, however you can choose to disable them at any time
    • multiple other properties were also added to change behavior, if need be, of these auto-adjustments
      • minWidth, maxWidth, adjustHeightPadding
      • maxHeight (already existed but can be helpful with these new adjustments
    • for more in depth details, please see the PR #93
  • resize: add possibility to override default delay before resizing (583e63a)

Bug Fixes

  • editor: auto adjust drop position (up/down) broken multiple editors (a477e53)
  • filter: MultipleSelect Filter had z-index too low in modal window (c78c9fd)
  • formatter: null values not handled properly with number formatters (9dd649a)
  • grouping: Filter & Grouping should work together, closes #90 (#91) (153e6cc)
  • import: add missing typings to fix import lodash.isequal (a32773b)
  • options: be able to disable filtering even when set globally (1d50635)
  • selector: Row Selection should be reset on Sort changes (f7162fb)
  • style: use the correct radio icon for singleSelect (18478d9)
aurelia-slickgrid - Multiple/Single Select Editors/Filters Enhancements

Published by ghiscoding about 6 years ago

Features

Bug Fixes

  • error: add item to datagrid should not require selection model (7b7fffe)
  • event: dispatchEvent should be cancelable, closes #84 (#86) (44cfd38)
  • filter: Filters should trigger only when different (2464558)
  • filter: MultipleSelect & SingleSelect Filters only trigger changes (17d8ee3)
  • filter: searchTerms sometime comes back even after clear filter (735c03b)
  • odata: missing column in query using Grid Presets and hidden col (23b8981)
  • pagination: Only display Pagination with backendServiceApi (3b5133e)
  • selection: On filter or Page changed, remove any rows selection (6578a97)
  • selection: single row selector should hide "Select All", closes #85 (6b6753a)
  • sanitize: replace sanitize-html with DOMPurify (c3cdc22)
  • requirejs: fix import of DOMPurify to also work with RequireJS (3b0d2b2)
aurelia-slickgrid - Small list of fixes

Published by ghiscoding over 6 years ago

Bug Fixes

  • css: plugin styling was affecting pages outside of slickgrid (2c103c0)
  • formatter: don't use strict date check on Date Formatters (8746f11)
  • graphql: resort was causing issues when used with Presets (5715bce)
  • graphql: typing empty filter in GraphQL shouldn't include empty str (3d17d7e)
  • gridState: Grid Stage changed was not being called on empty filter (842d6e7)
  • regression: dynamically add a new column definition (b8b4d01)
aurelia-slickgrid - Bootstrap 4 support

Published by ghiscoding over 6 years ago

Features

  • formatter: add new Decimal Formatter (f33d075)
  • bs4: support Bootstrap 4 (6865bed)
    • a new repo & demo is now available specifically for Aurelia-Slickgrid with Bootstrap 4, so go check it out

Bug Fixes

  • filter: input filter was using EQ operator instead of Contains (9a86a74)
  • formatter: Date Formatters should only transform on valid dates (2e08e47)
  • slider: slider issues with IE and Edge (4c2a193)
  • slider: slider issues with IE and Edge (015ecfc)
  • slider: slider number shown on right was sometime offset (f21dba3)
aurelia-slickgrid - Official 2.x Major Release

Published by ghiscoding over 6 years ago

Official 2.x Release

This is a Major version and does include a few breaking changes to bring support to Multiple Grids in a view. I had to change the Singleton Services to non-Singleton and that already is, in itself, a major breaking change. Make sure to follow the Migration Guide to 2.x is available here to upgrade to latest.

Since this is breaking, I decided to include a long list of changes that I had put aside to refactor.
The entire list of changes can be seen in #19 issue and again the Migration Guide to 2.x is available here

List of changes

This list does not include everything, for the entire list of changes take a look at #19 issue and the Migration Guide to 2.x is available here

Wiki documentation

The Wiki are all updated (where necessary) to use latest version 2.x. I strongly suggest you to look at the GitHub demo, you can see them all here

Features

  • editor: add new Slider Editor & refactor Editor Validation (#80) (46f140c)
  • filter: add new Slider Filter (input range) (#79) (6b45b0c)
  • formatter: add new Mask Formatter (1c3c09c)
    • see Example 2 for a demo with phone number mask
  • grid: expose all Services and SlickGrid objects into new (onAureliaGridCreated) Event Emitter
    • this is the biggest change to refactor in your projects (please review Migration Guide)
  • grid: support multiple grids in a view (see Example 1 and Example 10)

Bug Fixes

  • filter: clear filter should trigger only 1 Grid State change (43fc269)
  • filter: Grid State incorrect after clear filters w/backend service (289deec)
  • filter: multipleSelect filter doesn't handle cell value arrays (e695660)
  • filter: regression, input filter using with typed operator (65aa4eb)
  • filter: SingleSelect Filter (& others) should return all when empty (#77) (266507e)
  • gridMenu: custom user commands not recreated after locale switch (d585de5)
  • gridState: multiple fixes with Grid State & Presets with locale (8182351)
  • menu: Column Picker menu list was not being translated (3f41262)
  • menu: Grid Menu & Header Menu custom items were not translated (729242e)
  • merge: fix merge conflict (a4456ae)
  • presets: Presets w/MultipleFilter only taking 1st filtered value (eacd633)
  • selector: Checkbox selector was not working correctly with Presets (8055050)
  • slider: slider should always be starting at 0 (b771182)
  • sort: Presets & Sort caused unintended behavior w/dataview changed (#76) (d199488)
  • update: updateDataGridItemById was throwing error on 1st row (0) (94e0820)
aurelia-slickgrid - 2.0.0 (Beta) to support Multiple Grids (Major Version includes breaking changes)

Published by ghiscoding over 6 years ago

This is a Major version and does include a few breaking changes to bring support to Multiple Grids in a view. I had to change the Singleton Services to non-Singleton and that already in itself is a major breaking change.

Since this is breaking, I decided to include a long list of changes that I had put aside to refactor.
The entire list of changes can be seen in #19 issue and the Migration Guide to 2.x is available here

This version will be in Beta for at least a week or 2, until we try it out in our project and possibly get feedback from the community. If you find anything strange or not working, please open a new issue. Since this is in Beta, things could change slightly and if you guys want some changes, now is the time to express yourself.

List of changes

This list does not include everything, for the entire list of changes take a look at #19 issue and the Migration Guide to 2.x is available here

Wiki documentation

The Wiki are not yet changed but will be in the coming days, it might take some time to update them all. In the mean time, I strongly suggest you to look at the GitHub demo, you can see them all here

Features

  • (grid): change all services to non-singleton
  • (grid): support multiple grids in a view (see Example 1 and Example 10)
  • (demo): add dynamic column header change to Example 12
  • (grid): expose all Services and SlickGrid objects into new (onAureliaGridCreated) Event Emitter
    • this is the biggest change to refactor in your projects (please review Migration Guide)
  • (grid): expose all Slickgrid and DataView events through dispatch
    • View example: (sgOnSelectedRowsChanged)="handleSelectedRowsChanged1($event.detail.eventData, $event.detail.args)"
  • (rowSelect): add preselectedRows and expose all Plugin
  • (formatter): add new Percent and PercentSymbol Formatters
  • (editors): add new Custom Editor functionality
  • (gridState): add Column Size/Visibility/Position in Grid State & Presets

Refactoring

  • (grid): Remove all deprecated code and functions
  • (backend): all backend service methods renamed as processOnX
  • (gridOptions): all Grid Menu showX were renamed hideX
  • (searchTerm): remove searchTerm and only use searchTerms
  • (styling): change highlight and selected row color to blueish
  • (styling): change mouse hover background color
  • (editor): move all Editor generic params (like collection) into editor property

Fixes

  • fix(filters): return false when invalid date
  • fix(sorters): return -1 or 1 for invalid dates
  • (editors): fix serialization/deserilization in editors
aurelia-slickgrid - Last "1.x" version before major "2.x" rewrite

Published by ghiscoding over 6 years ago

Bug Fixes

Features

  • rowSelect: add preselectedRows and expose all Plugin (#71) (02fa681)
aurelia-slickgrid - Dynamically Change Column Definitions and Grid Definitions on the Fly

Published by ghiscoding over 6 years ago

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)
aurelia-slickgrid - Row Colspan, Header Title Grouping, Default Header Menu, and more...

Published by ghiscoding over 6 years ago

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)
aurelia-slickgrid - Grouping & Aggregators / DI support in Editors

Published by ghiscoding over 6 years ago

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

aurelia-slickgrid - Compound Filters

Published by ghiscoding over 6 years ago

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)