Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I made this set of changes to permit multi-column sorting as I thought it should work per the existing documentation. That is, you can call sort() on multiple columns with the prepare parameter set to true, then call sort() with prepare=false to execute the sort. Further, you can now specify the sort direction for each sorted column. The serialize() function now returns an object that can be used to restore the state of a table that was sorted on multiple columns.
Testing...I have been too busy, or lazy, depending on how you look at it, to write tests for this. But it is working in my application, which redraws tables all the time using the restore() function, and uses the presort feature to sort by date in addition to the selected column.
The presort and restore features have not been exercised very much with more than one extra column.