From a0019df5077308bdfb50181dea3ada6892c886d1 Mon Sep 17 00:00:00 2001 From: Max Guglielmi Date: Mon, 5 Sep 2016 23:05:20 +1000 Subject: [PATCH] Started adapterSortabletable doco --- src/extensions/sort/adapterSortabletable.js | 42 +++++++++++++++++++-- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/src/extensions/sort/adapterSortabletable.js b/src/extensions/sort/adapterSortabletable.js index df4ec80d..2ce19e23 100644 --- a/src/extensions/sort/adapterSortabletable.js +++ b/src/extensions/sort/adapterSortabletable.js @@ -6,25 +6,61 @@ import {formatDate} from '../../date'; import {removeNbFormat} from '../../helpers'; import {NONE, CELL_TAG, HEADER_TAG} from '../../const'; +/** + * SortableTable Adapter module + */ export default class AdapterSortableTable extends Feature { /** - * SortableTable Adapter module - * @param {Object} tf TableFilter instance + * Creates an instance of AdapterSortableTable + * @param {TableFilter} tf TableFilter instance + * @param {Object} opts Configuration object */ constructor(tf, opts) { super(tf, opts.name); + /** + * Module name + * @type {String} + */ this.name = opts.name; + + /** + * Module description + * @type {String} + */ this.desc = opts.description || 'Sortable table'; - //indicates if table previously sorted + /** + * Indicate whether table previously sorted + * @type {Boolean} + * @private + */ this.sorted = false; + /** + * List of sort type per column basis + * @type {Array} + */ this.sortTypes = isArray(opts.types) ? opts.types : []; + + /** + * Column to be sorted at initialization + * @type {Array} + */ this.sortColAtStart = isArray(opts.sort_col_at_start) ? opts.sort_col_at_start : null; + + /** + * Enable asynchronous sort, if triggers are external + * @type {Boolean} + */ this.asyncSort = Boolean(opts.async_sort); + + /** + * List of of element IDs triggering sort on a per column basis + * @type {Array} + */ this.triggerIds = isArray(opts.trigger_ids) ? opts.trigger_ids : []; // edit .sort-arrow.descending / .sort-arrow.ascending in