All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
2.0.0-alpha.7 (2019-12-29)
2.0.0-alpha.6 (2019-12-16)
2.0.0-alpha.5 (2019-12-02)
2.0.0-alpha.4 (2019-11-21)
2.0.0-alpha.3 (2019-09-29)
2.0.0-alpha.2 (2019-09-15)
2.0.0-alpha.1 (2019-03-12)
2.0.0-alpha.0 (2019-03-12)
- 🐛 Avoid double
processRows
on linking a pager to a table (0e32691), closes #32 #52 - 🐛 Column fix with non-string alignment, test fixes (7931877)
- 🐛 Ensure return values from handler fns are Promises (2a45865)
- 🐛 fix total page count & change emission on Pager (1e8cda8), closes #27
- 🐛 Fixed cell representation interpolation (f687be1)
- 🐛 Fixed required IColumnDefinition fields wrongly required (8e6f1d7)
- 🐛 Fixed the pager component name (ed34cb9)
- 🐛 Handler.paginateHandler skipped with incorrect page args (f3fb71e)
- 🐛 Pager: Do not show next/prev when on first/last page (a414eda)
- 🐛 Register/deregister table types after install for IIFE (288b37f)
- 🐛 Remove type constraint on
Datatable.data
(6b1ea0e) - 🐛 Restored
Handler.displayHandler
, and rework signature (87b8357) - 🐛 Settings: Fixed error when merging unexistent props path (2b7c950)
- 🐛 TableType now
clone
correctly returns function as-is (5d9b553) - 🐛 Watch
sortBy
object directly, not its string cast (b14707b), closes #48
- 💡 Add support of async handlers for rows processing (b967341)
- 💡 Column:
isSortable
& `isFilterable as static (37348c3) - 💡 Factory can now register & deregister table types (278ca60)
- 💡 Removed
getValue
on Column (54904f1) - 💡 Rework Handler class, removed
displayHandler
(e90fd9f) - 💡 Rework TableType, shortened class implementation (59eb710)
- 🎸 Added Typescript types for columns & datatable comp (22d9ad8)
- 🎸 Allow the package to be installed via git (8e15217)
- 🎸 Expose the default factory as
VuejsDatatable
for IIFE (28291b7), closes #51 - 🎸 Factory:
useDefaultType
returns the state if no param (0f4f83f) - 🎸 Header cell click event moved, use plain HTML for icon (c4019ff), closes #35 #26
- 💄 Lint the whole codebase (5c44cf3)
- Changed signature of display handler, changed
filterBy
tofilter
, changedprocessedRows
todisplayedRows
. - Replaced
TableType.getId
method withTableType.id
getter, removedTableType.setDisplayHandler
- Removed
displayHandler
. - Removed
Factory.defaultTableSettings
. The default table type settings can no more be customized at the factory-level - Removed
Column.GetValue
- Column:
isSortable
&isFilterable
were changed from instance methods to static methods, because they do not use instance props or methods. - All properties & methods were renamed from
snake_case
tocamelCase
- Using Rollup instead of Laravel Mix/Webpack for building scripts.
- Added ability to add classes to the table header cells.
- Added
:key
attribute to iterated element.
- Fixed issue where Vue is not defined when Vue is not available globally.
- Added normalized columns to the table row slot.
- Fixed issue where scoping the footer slot would break the table footer.
- Hide the
tfoot
tag if no footer slot content was provided
- Added the ability to use a custom footer
- Added the ability to set a custom component for a column header.
- Fixed issue where changing the pager's page length doesn't trigger an update on the table.
- Support to apply classes to rows on the datatable as a whole or individually.
- Support for a function to be used in the datatable
data
param. This function will be used to process the rows to display - Support for displaying content when no row are shown in the datatable.
- Support in settings for classes on the pager
li
anda
tags (This adds better support for Bootstrap 4). - Ability to overrided default table settings via
DatatableFactory.default_table_settings
. - Logic for updating components in tests.
- Support for NPM's
link
functionality for local development.
- Added list-render keys to the
datatable head
and body cells. - Added list-render keys to the
datatable-pager
buttons. - Added active class to "current page" pager button in the short style pager.
- 3 Total pagination types: long (default), abbreviated, and short. Pager examples
- You can now customize the classes used by the table. It uses Bootstrap 3 by default, but can be changed manually. This currently requires you to transpile your own JS. Custom theme example
- TESTS!
- The ability to completely override the table row output via slot template override. Custom template example
- Dropped support for Vue.js 1. Minimum required version is now 2.4
- Almost entire rebuild. Old syntax for datatables is largely incompatible with new syntax
- Changed the way logic customizations are made. Stores no longer exist. A handler has been added in their place. You can customize the logic in the handlers. AJAX example
- Pagination is now handled outside of the datatable by it's own (included) component (see the basic example). This allows you to place pagination wherever you want.
- When multiple tables exist on a page, you must specify the link between paginators and their table. This is handled automatically for the first table and any paginators on a page. For additional tables and their associate paginators, a link must be established by adding a
name
attribute to the table and atable
attribute on the paginator, both with the same value. Multiple tables example Examples