@swimlane/ngx-datatable
Version:
ngx-datatable is an Angular table grid component for presenting large and complex data.
721 lines (480 loc) • 19.6 kB
Markdown
# CHANGELOG
## HEAD (unreleased)
## 21.0.0-alpha.1
- Fix: Add missing package files from deployment.
## 21.0.0-alpha.0
- Breaking: support for angular 19
## 20.1.0
- Chore: Support for angular 13+
## 20.0.0
- Breaking: Update to angular 12
## 19.0.0
- Breaking: Update to angular 11
## 18.0.0
- Breaking: Update to angular 10
## 17.1.0
- Feature: Add sorting: unset icon
## 17.0.0
- Chore: explicitly only support ng9
## 16.1.1
- Chore: Patch release to override 16.1.0
## 16.1.0
- Fix: [selectAllRowsOnPage] is broken. (#1809)
- Fix: Bug when using cellClass as string. (#1817)
- Fix: Docs. (#1812, #1837, #1845, #1854)
- Fix: redraw after recalculate (#1816)
- Fix: undefined row index for rows in groups (#1857)
- Chore: Add pretty-quick as a precommit hook using husky (#1841)
- Chore: Bump dependencies (#1858, #1862, #1859)
## 16.0.3
- Bug: Fix disappearing rows with vertical scrollbar, virtual scrolling & rowdetail auto height (#1799)
- Bug: Fix memory leak due to created element not cleaned up (#1792)
- Bug: do not collapse row details when row updated (#1778)
## 16.0.2
- Bug: Remove barrel files because ng-packagr doesn't work well with them
## 16.0.1
- Bug: Include styles, assets and themes in release
## 16.0.0
- Breaking: the release files are not under the `/release` folder any more. Also, paths to `themes` and `assets` have changed. If you are importing any assets or styles from the release folder, you would need to update the paths.
- Chore: Migrates the project to angular-cli, making it compatible with Ivy (#1738)
- Feature: Implements global module config via forRoot (#1688)
- Feature: Colors of material style can be modified by target application (#1651)
- Bug: Fixes Exception in scoller component destroy (#1685)
- Bug: Fixes issue 1686: column resizing issue in force columns mode (no horizontal scroll) when container get smaller (#1687)
- Docs: Updates demo pages (#1738)
## 15.0.2
- Fix: Fixes issue where footer pagination does not work when virtual scrolling is enabled (#1704)
## 15.0.1
- Fix: Fixes issue where using conditional templates would not render them (#1701)
## 15.0.0
- Breaking: Upgrade to angular 8 (#1697)
- Fix: Module not found: Error: Can't resolve '.' (#1646)
- Fix: trackByProp can't work. (#1622)
## 14.0.0
- Breaking: Upgrade to angular 7
- Fix: Fix compile error when using TemplateTypeCheck set to true (#1520)
## 13.1.0
- Feature: Added support for tree grid (#1273)
- Fix: Improve virtualization as a flag (#1297)
- Fix: Fix issue when count is undefined #838 (#1499)
- Fix: Fix usage withing prerendered SPA (#1438)
## 13.0.1
- Fix: Run scroll event listeners inside angular zone (#1375)
## 13.0.0
- Breaking: Fixes several issues related to the summary row feature #1418
- Fix: DataTableColumnDirective Input Binding Changes #1384
- Fix: angular version #1420
- Fix: issues when running npm run build --prod #1410
## 12.0.0
- Breaking: Upgraded to Angular 6 #1400
- Feat: Added reorderable input #1261
- Fix: Fixed rowHeight type in body component #1295
- Fix: Fixed row selection for bootstrap theme #1357
- Fix: Reflect minWidh & maxWidth props to body cell #1361
## 11.3.0
- Feat: Added summary row #1233
- Fix: Fixed issue wi
th misaligned body content #1326
- Fix: Fixed Default Sort Behavior Of Table With Custom Templates #1308
- Chore: Fixed link in column api docs #1343
- Chore: Fixed typo in docs #1342
## 11.2.0
- Feat: Add resize handler for non-resizable columns #1225
- Fix: Pager Component Accessibility #1259
- Fix: Fix missing row with virtualization and scrollbarV #1235
- Fix: Fall back to view mode when select field value doesn't change #1241
- Fix: Fix virtual-paging #1229
- Fix: Fix column scaling on resize #1236
- Fix: Propagate sortDir changes to template #1243
- Fix: Add setStylesByGroup() in set column prop #1244
## 11.1.7
- Fix: Fix error w/ rows undefined on init
## 11.1.6
- Bug: Ignore rxjs/operators
- Feat: Ability to disable virtualization #1191
- Feat: Universal Support #1178
## 11.1.5
- Compat: Fix Angular 4.x Compat
## 11.1.4
- Bug: Fix column templates not updating with loops/ifs
- Bug: Fix sorting on cross browser
- Chore: Switch to lettable operators
## 11.1.3
- Bug: Angular SSR Event Undefined (#1144)
## 11.1.2
- Bug: Fix total undefined (#1140)
## 11.1.1
- Bug: Fix race case with rows
## 11.1.0
- Perf: Better performance on scrolling y and x
- Feature: Select All on Current Page (#1132)
- Bug: Don't show empty on loading (#1139)
## 11.0.4
- Bug: Fix Angular5 Aot Issue
- Bug: Fix Vendor Prefix Error
## 11.0.1, 11.0.2, 11.0.3
- Bug: Angular 5 bugs
## 11.0.0
- Chore: Upgrade to Angular5
## 10.4.0
- Feature: Ability to filter checkable rows (#1056)
- Feature: Allow sorting based on whole row (#1074)
- Bug: Fix protractor events (#1081)
- Bug: Fix misalignment on smaller screens (#1081)
## 10.3.0
- Feature: Bootstrap theme
- Bug: Fix CSS for row grouping (#1053)
- Bug: Fix group row values (#1034)
- Bug: Fix cell overflow w/ fluid height (#1030)
- Bug: Fix for column sort (#1018)
- Bug: Strip HTML for null values (#966)
- Bug: Update context in cell header (#935)
- Bug: Add bounds to offset (#978)
- Bug: Make selection apply to all rows (#974)
## 10.2.3
- Bug: Fix checkbox not being shown #956
- Bug: Fix IE displaying null #967
- Bug: Fix emptry string is row is null #951
## 10.2.2
- Bug: Recalculate limit properly #963
## 10.2.1
- Bug: Detail Row Broken
## 10.2.0
- Feature: Row Grouping
## 10.1.0
- Feature: Row Hover Event
- Bug: Columns are no longer mutated!
- Bug: Fixes for Angular v5!
- Bug: Fix expand all row detail not working #917
- Chore: Remove useless jsdoc comments
## 10.0.5
- Style: Material styles closer to spec
- Bug: Non-sortable header showing pointer cursor
## 10.0.4
- Perf: Changed everything internal to OnPush
- Perf: Fixed header cell outlet cd
- Bug: Fixed sort mutating original rows
## 10.0.3
- Perf: Better performance in cells
## 10.0.2
- Enhancement: Add `rowIndex` to row-detail template
- Bug: Add `index.css` back to build
## 10.0.1
- Bug: Fix old references to `$$index` and `$$expanded`
- Bug: Add `$$index` in cell templates as `rowIndex`
- Bug: Fix MouseEvent undefined in JIT (#893)
## 10.0.0
- BREAKING: `$$expanded` is no longer on row of detail templates, use `let-expanded` to get pop now
- Feature: Always center activated page on pager
- Bug: Remove row mutations of `$$index` and `$$expanded`
- Bug: Pagination broken on large number of rows
- Bug: Strip HTML from title tags (#892)
## 9.3.1
- Bug: More Universal Rendering Fixes (#795)
- Chore: Build optimizations from new webpack version
## 9.3.0
- Feature: Unviseral Rendering (#764)
## 9.2.0
- Enhancement: Add header context menu event
- Bug: Fix sort blowing up when undefined and adding new sort
- Bug: Fix multi-selection key with Mac
## 9.1.0
- Enhancement: Add more context to cells #720
- Enhancement: Export Pager component #735
- Bug: Header checkbox when row selection is changed #659
- Bug: When rowClass() returns a string, the class is not properly added #710
- Bug: Rename icons so don't conflict with other libs #729
## 9.0.0
- BREAKING: Fixes for external pagination fixes. Index calculation change being last page = `0 + pageSize` (#714, #138, #391)
- Feature: Server-side virtual scrolling pagination
- Demos: Deep linking of demo pages
## 8.2.1
- Bug: Fix footer styles
## 8.2.0
- Feature: Footer Templates
## 8.1.0
- Feature: Dark Theme
## 8.0.1
- Bug: Fix memory leak (#702)
- Bug: Don't add column header title attribute when custom template provided (#643)
- Bug: Only apply pointer to header text (#682)
- Bug: Fix prop field name with dots (#596)
- Bug: Virtual scroll + dynamic height in cell detail not working right (#703)
- Bug: Fix dynamic row height not working right if using server-side pagination
- Chore: Implement `noImplicitAny` (#671)
## 8.0.0
- Breaking: Removed `cssClass` from columns in favor of explicit
- Feature: Added explicit `headerClass` and `cellClass`
- Feature: Add ability to have callback for those class getters
- Bug: Fix checkbox select all not updating ui correctly
## 7.3.1
- Bug: Fix resize handle drag triggering long press
- Bug: Fix dragging trigging column sorting
- Bug: Fix column re-ordering not working on FF
## 7.3.0
- Feature: Dynamic row heights for virtual scrolling
- Bug: Do not use `document` for universal support (#668)
## 7.2.1
- Bug: Fix missing type
## 7.2.0
- Feature: Allow for dynamic Detail Row heights (#653)
- Feature: Numeric prop support via support array rows (#494)
- Perf: Optimize sort code by caching valueGetter and compareFn outside loop.
- Perf: Set ValueGetter on `TableColumn.$$valueGetter`
- Bug: Alter setColumnDefaults to work with numeric prop values.
## 7.1.1
- Perf: Fix memory leaks with templates (#464)
- Bug: Fix row detail expanded and then collapsed not showing anything until scroll
## 7.1.0
- Bug: Fix title not set on cell template (#629)
- Chore: Update to official Angular4
- Chore: Misc build dep updates
## 7.0.0
- BREAKING: Update to Angular4!
- Feature: Row classes (#571), (#348)
- Bug: Show first page after sorting (#553)
- Bug: When reordering and skipping a column, the column gets duplicated (#497), (#562), (#563)
- Chore: Upgrade misc deps and lint fixes
_NOTE: If you need support for ~Angular2, use version 6.x._
## 6.3.0
- Bug: Perform sort when sort icon is clicked (#536)
- Bug: Fix resize handle overlaped by label (#521)
- Chore: Fix relative imports for rollup (#542)
- Chore: Linting
## 6.2.1
- Bug: Revert #516 causing server-side paging issue (#543)
## 6.2.0
- Bug: Fix AoT builds with SCSS (#534)
- Bug: Fix offset incorrect when filtering (#516)
- Bug: Fix mouse press subscription cleanups (#522)
- Bug: Fix header cell wrapper empty span (#504)
- Bug: Fix selected count undefined in footer template (#537)
- Bug: Fix orderable unsubscribe listeners (#538)
- Chore: Update Angular and ZoneJS
## 6.1.2
- Bug: Fix default sort (#475)
## 6.1.1
- Bug: Fix tree-shaking issue (#511)
## 6.1.0
- Feature: Add selected count in footer (#508)
- Bug: Fix drag/drop/long-press (#506)
- Bug: Fix row widths not set correctly (#510)
- Perf: Better mouseup handling (#507)
- Chore: Bump Depedencies
## 6.0.2
- Bug: Move scss to release dir (#459)
## 6.0.1
- Bug: Fix CSS not working with AoT (#459)
- Chore: Fix ExtractText plugin causing build issue
- Chore: Upgrade Angular 2.4.5
## 6.0.0 (2017-01-25)
- BREAKING: Renamed `datatable` css class to `ngx-datatable`
- BREAKING: Embedded core css file with Angular `styleUrls`
- Enhancement: Allow sorting from inline templates (#431)
- Enhancement: Fix re-ordering columns throwing errors (#438)
- Enhancement: Add nice drag indicator to material theme
- Chore: Update Depedencies
## 5.0.0
- BREAKING: Re-worked all inputs, methods and outputs of row detail to its own container
- Enhancement: Implement Finder/Explorer shift selection behavior
- Bug: Fix reverse selection de-selecting first index in reverse
- Bug: Fix row detail not rendering
## 4.2.0
- Enhancement: Ability to add CSS Classes on Header/Column
- Bug: Fix CPU Perf on Resort (#409)
- Chore: Upgrade to Angular ^2.4.3
- Chore: Correct RxJS Imports
## 4.1.0
- Feature: Adding multi-click selection
- Bug: Use tracking fn vs inline (#388)
- Bug: Fix AoT header issue (#389)
- Bug: Fix `reorderable` not being honored (#387)
- Bug: Fix multi-select CTRL not working (#381)
- Chore: Upgrade Angular to ^2.4.1
- Docs: Multi-select
## 4.0.0
- BREAKING!!!! - Renamed project from `angular2-datatable` to `ngx-datatable`
and updated components from `<swui-datatable>` to `<ngx-datatable>`
## 3.0.0
- BREAKING: Removed `shiftMulti` option, its not useful and creates odd scenarios
- Bug: Permanently high CPU utilization after sorting (#359)
- Bug: Fix checkbox showing in header if defined but not using checkbox select
- Bug: Fix AoT errors (#370)
- Bug: Fix build not outputing AoT files in correct directory
- Bug: Fix checkbox selection not working w/ shift key
- Chore: Upgrade Angular/Webpack
## 2.2.3
- Bug: Fix header checkbox mutating selection array
## 2.2.2
- Bug: Fix default selections and don't mutate selection arrow now
## 2.2.1
- Bug: Fix AoT by reverting TypeScript upgrade until CLI is updated
## 2.2.0
- Bug: Fix AoT private props (#352)
- Bug: Added null chk to selection getter (#340)
- Bug: multiShift not working after first page (#294)
- Chore: Update Angular to 2.3.0
- Chore: Update TypeScript to 2.1.x
- Chore: Update RxJS to 5.0.0-rc.4
- Chore: Update ZoneJS to 0.7.2
- Demo: Add templates for Webpack plugin for Google Analytics
## 2.1.3
- Bug: Fix footer not updating when all removes removed
- Bug: Fix Add/Remove items in array not updating (#255)
## 2.1.2
- Bug: Fix sizing method being debounced on view inits rather than just window resize.
## 2.1.1
- Bug: Fix memory leak with visibility observer
## 2.1.0
- Feature: Checkbox selection mode
- Enhancement: Selection mode auto added to host class for easier styling
- Style: Remove row active/select state when in cell mode of material theme
- Bug: Force fill column mode w/ scrollbarH false allowing bleed when resized
- Perf: Faster render time by adding css class via host
- Perf: Debounce window resize calcs
## 2.0.0
- BREAKING: Rename from `datatable` to `swui-datatable` (#320)
- BREAKING: Redo how row-detail/cell/header templates are described in markup (#304)
- BREAKING: Change Detection switched back to normal
- Enhancement: Row Context Menu Event `rowContextmenu` (#331)
- Bug: Set default value for selected (#314)
- Bug: Fix widths being int vs float (#309)
- Bug: Fix column resize not setting widths to the right (#308)
- Bug: Fix row object mutations (#255)
- Bug: Async Problem when using @Input (#253)
- Bug: Sort doesn't work on the first click (#254)
- Bug: Pagination "skip to last page" is not selected after click (#324)
- Bug: ngFor Not working in the datatable-row-detail-template (#274)
- Chore: Resolve all implicit `any`s (#330)
- Chore: Bump Angular to latest `2.2.4`
## 1.7.0
- Enhancement: Add RxJS Support
- Chore: Fix builds on windows
## 1.6.0
- Bug: Column headers not re-ordering (#238)
- Bug: Datatable doesn't sort data correctly when data changed (#284)
- BREAKING: `comparator` now is a normal sort function arguments of `propA, propB`.
## 1.5.1
- Bug: Custom comparator should return new array (#286)
- Bug: Init selection to empty array (#285)
## 1.5.0
- Enhancement: `externalSorting` input for simpler server-sorting usage (#281)
- Enhancement: Add `trackByProp` for change detection with mutation of row data
- Bug: Row height variable access protection (#280)
- Chore: Upgrade to Angular 2.2.0
- Demo: Inline editing updates
- Demo: Live data refresh demo
- Breaking: Remove `refresh` method per recommendation by @robwormald
## 1.4.1
- Bug: Ignore next page when already at last (#223)
- Chore: Redid Webpack Config to be clean
- Chore: TESTS! TRAVIS BUILDS! COVERAGE REPORTING!
## 1.4.0
- Enhancement: Added `refresh` API for updating table (#255)
- Bug: Fix intersection observer type errors (#268)
## 1.3.1
- Bug: Fix force column width distribution overriding new resize (#245)
## 1.3.0
- Enhancement: `selectCheck` fn to prevent selection
- Bug: Fix columns leaking event handlers
- Bug: Fix column toggling errors (#245)
- Bug: Fix AoT Metadata not creating
## 1.2.0
- Bug: Fix columns loosing templates on resize (#252)
- Bug: Fix pager not having right pages when hidden by default
- Bug: Fix expressive column width as attribute with standard column distribution
- Bug: Fix body columns not readjusting after window resize (#251)
- Enhancement: Refactor `emptyMessage` and `totalMessage` to `messages` object
- Enhancement: Huge perf improvement for tables hidden by default
## 1.1.0
- Feature: NGC Complation
- Bug: Null value in deepValueGetter (#243)
- Chore: Update Depedencies
## 1.0.0
- Feature: Cell Selection and Keyboard Navigation
- Feature: `activation` events
- Enhancement: `OnPush` all the things!
- Enhancement: Add `totalMessage` option for localization
- Enhancement: Demo Page
- Enhancement: Page Count Formatted
- Enhancement: Automatically format column `prop` when no `name` passed
- Enhancement: Add ability to pass false to `comparator` for sort handling via event
- Bug: Window resize not updating rows in virtual scrolling
- Chore: Switch to SemVer
- BREAKING: `TableOptions` has been removed and options are `Input` on component now
- BREAKING: `TableColumn` class has been removed, just pass normal objects
- BREAKING: Event names has been renamed using Angular2 standards
- BREAKING: Components have been renamed to Angular2 standards
- BREAKING: Removed `StateService`
## 0.12.0
- Bug: Return empty string on undefined deep values (#232)
- Bug: Fix force fill alog (#218)
- Enhancement: Support for other icon types (#235)
- Enhancement: Add ability to identify rows for proper selection (#154)
## 0.11.2
- Enhancement: Add ability to define css icon classes for pager / header
- Chore: Uprade to Angular 2.1.1
## 0.11.1
- Chore: Polish on new build
## 0.11.0
- Chore: New build process
- Bug: Fix detail row bug (#212)
## 0.10.1
- Bug: Fix `$$expanded` undefined with server paging (#210)
## 0.10.0
- Chore: Upgrade to Angular 2.1.0 (#202)
- Chore: Removed engine restrictions (#195)
- Bug: windows builds with node-sass (#207)
- Bug: resizing not closing correctly (#196)
- Bug: Fix height paging (#208)
- Enhancement: Improve Active CSS (#204)
- Enhancement: Add Empty Message (#194)
- Enhancement: Add deep value getter to sortRows function (#181)
- Enhancement: Sort Classes are applied to body cells (#166)
- Enhancement: AoT Compatibility (#199)
- Feature: Row Detail (#201)
## 0.9.3
- Column resize sometimes gives weird behaviour on mouse resize/click (#155)
- Fix order of setters in DataTable ngOnChanges (#179)
- Remove document event listener subscription leak in draggable & resizeable
- Fix `setScrollTop` undefined error (#182)
## 0.9.2
- Fix `name` being `undefined` introduced in 0.9.0 release
## 0.9.1
- Export component references for external consumption (#176)
## 0.9.0
- Fix accidental breaking change of renaming `HeaderCell` column property to `model`. See [commit](https://github.com/swimlane/angular2-data-table/commit/6c56b51ab918e380edb0d511730b28e66cb80afe#diff-aee46548d5e0b9f72917dd179250d4fe).
- Ensure minWidth and maxWidth values are specified saved as numbers (#167)
- Add row double click option (#168)
## 0.8.0
- Added the ability to define header templates expressively
_Breaking Change!_ Renamed `template` to `cellTemplate` in column options
## 0.7.4
- Removed #142 in favor of style height
- Fixed issue with height + scrollbarV not sizing right
- Fix limit not applied (#133)
- Fix sort not resetting to top of page (#136)
- Added option validation
## 0.7.3
- Huge perf bumps (#149)
## 0.7.2
- Build fixes
## 0.7.1
- Removed template wrapper in favor of native template outlet
## 0.7.0
- Upgrade Angular 2.0.1 & ZoneJS
- Angular Code Style Compliance (#147)
- Fix initial load of rows jumbled (#156)
- Update row/options setting to ngOnChanges (#151)
- Fix column height not set correctly (#144)
## 0.6.1
- Virtual Scrolling Emits Paging (#130)
## 0.6.0
- Update to Angular 2.0.0!
- Fix horizontal header issue (#129)
## 0.5.1
- Fixed Multiple Tables on Same Page (#103)
- Fix TS Helpers not being included in release (#107)
- Update `onPage` API to reflect docs (#116)
## 0.5.0
- Upgrade to Angular2 RC7