mirror of
https://github.com/koalyptus/TableFilter.git
synced 2024-05-18 22:36:41 +02:00
updated unit tests
This commit is contained in:
parent
4b7af32eb1
commit
1de6a6288c
20
README.md
20
README.md
|
@ -35,7 +35,7 @@ git clone https://github.com/koalyptus/TableFilter.git
|
||||||
* TableFilter is available on [npm repository](https://www.npmjs.com/package/tablefilter), you can install it from the command line using the following command:
|
* TableFilter is available on [npm repository](https://www.npmjs.com/package/tablefilter), you can install it from the command line using the following command:
|
||||||
```shell
|
```shell
|
||||||
npm install tablefilter --save-dev
|
npm install tablefilter --save-dev
|
||||||
```
|
```
|
||||||
* or get the future features from the ``next`` release channel:
|
* or get the future features from the ``next`` release channel:
|
||||||
```shell
|
```shell
|
||||||
npm install tablefilter@next --save-dev
|
npm install tablefilter@next --save-dev
|
||||||
|
@ -79,7 +79,7 @@ If the ``base_path`` property is not specified, it will default to ``/tablefilte
|
||||||
```shell
|
```shell
|
||||||
your-page.html
|
your-page.html
|
||||||
|— tablefilter
|
|— tablefilter
|
||||||
```
|
```
|
||||||
|
|
||||||
## Development
|
## Development
|
||||||
This project requires node.js and Grunt to be installed:
|
This project requires node.js and Grunt to be installed:
|
||||||
|
@ -94,24 +94,24 @@ Start by installing any dependencies.
|
||||||
```shell
|
```shell
|
||||||
npm install
|
npm install
|
||||||
```
|
```
|
||||||
Use
|
Use
|
||||||
```shell
|
```shell
|
||||||
npm run dev
|
npm run dev
|
||||||
```
|
```
|
||||||
command to launch a build / watch cycle and start the local
|
command to launch a build / watch cycle and start the local
|
||||||
sever on port ``8080``.
|
sever on port ``8080``.
|
||||||
|
|
||||||
Use
|
Use
|
||||||
```shell
|
```shell
|
||||||
npm run build
|
npm run build
|
||||||
```
|
```
|
||||||
command to generate a production build.
|
command to generate a production build.
|
||||||
|
|
||||||
The
|
The
|
||||||
```shell
|
```shell
|
||||||
npm run dist
|
npm run dist
|
||||||
```
|
```
|
||||||
command will create a production build, run the tests and finally generate
|
command will create a production build, run the tests and finally generate
|
||||||
the demos:
|
the demos:
|
||||||
|
|
||||||
To run all the tests and generate the coverage report:
|
To run all the tests and generate the coverage report:
|
||||||
|
@ -132,7 +132,7 @@ to view the coverage report(s), open the `index.html` under the
|
||||||
[online](https://codecov.io/gh/koalyptus/TableFilter).
|
[online](https://codecov.io/gh/koalyptus/TableFilter).
|
||||||
|
|
||||||
## Demos
|
## Demos
|
||||||
Check out the online [examples](http://koalyptus.github.io/TableFilter/examples)
|
Check out the online [examples](http://koalyptus.github.io/TableFilter/examples)
|
||||||
or generate the demos locally:
|
or generate the demos locally:
|
||||||
```shell
|
```shell
|
||||||
npm run build:demos
|
npm run build:demos
|
||||||
|
|
4
dist/starter.html
vendored
4
dist/starter.html
vendored
|
@ -1,10 +1,10 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<title>tablefilter v0.5.13 - Starter</title>
|
<title>tablefilter v0.5.14 - Starter</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<h1>tablefilter v0.5.13</h1>
|
<h1>tablefilter v0.5.14</h1>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
4
dist/tablefilter/style/colsVisibility.css
vendored
4
dist/tablefilter/style/colsVisibility.css
vendored
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* tablefilter v0.5.13 by Max Guglielmi
|
* tablefilter v0.5.14 by Max Guglielmi
|
||||||
* build date: 2017-05-09T10:44:28.220Z
|
* build date: 2017-05-13T10:35:10.593Z
|
||||||
* MIT License
|
* MIT License
|
||||||
*/
|
*/
|
||||||
span.colVisSpan{text-align:left;}span.colVisSpan a.colVis{display:inline-block;padding:7px 5px 0;font-size:inherit;font-weight:inherit;vertical-align:top}div.colVisCont{position:relative;background:#fff;-webkit-box-shadow:3px 3px 2px #888;-moz-box-shadow:3px 3px 2px #888;box-shadow:3px 3px 2px #888;position:absolute;display:none;border:1px solid #ccc;height:auto;width:250px;background-color:#fff;margin:35px 0 0 -100px;z-index:10000;padding:10px 10px 10px 10px;text-align:left;font-size:12px;}div.colVisCont:after,div.colVisCont:before{bottom:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}div.colVisCont:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:10px;margin-left:-10px}div.colVisCont:before{border-color:rgba(255,255,255,0);border-bottom-color:#ccc;border-width:12px;margin-left:-12px}div.colVisCont p{margin:6px auto 6px auto}div.colVisCont a.colVis{display:initial;font-weight:inherit}ul.cols_checklist{padding:0;margin:0;list-style:none;}ul.cols_checklist label{display:block}ul.cols_checklist input{vertical-align:middle;margin:2px 5px 2px 1px}li.cols_checklist_item{padding:4px;margin:0;}li.cols_checklist_item:hover{background-color:#335ea8;color:#fff}.cols_checklist_slc_item{background-color:#335ea8;color:#fff}
|
span.colVisSpan{text-align:left;}span.colVisSpan a.colVis{display:inline-block;padding:7px 5px 0;font-size:inherit;font-weight:inherit;vertical-align:top}div.colVisCont{position:relative;background:#fff;-webkit-box-shadow:3px 3px 2px #888;-moz-box-shadow:3px 3px 2px #888;box-shadow:3px 3px 2px #888;position:absolute;display:none;border:1px solid #ccc;height:auto;width:250px;background-color:#fff;margin:35px 0 0 -100px;z-index:10000;padding:10px 10px 10px 10px;text-align:left;font-size:12px;}div.colVisCont:after,div.colVisCont:before{bottom:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}div.colVisCont:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:10px;margin-left:-10px}div.colVisCont:before{border-color:rgba(255,255,255,0);border-bottom-color:#ccc;border-width:12px;margin-left:-12px}div.colVisCont p{margin:6px auto 6px auto}div.colVisCont a.colVis{display:initial;font-weight:inherit}ul.cols_checklist{padding:0;margin:0;list-style:none;}ul.cols_checklist label{display:block}ul.cols_checklist input{vertical-align:middle;margin:2px 5px 2px 1px}li.cols_checklist_item{padding:4px;margin:0;}li.cols_checklist_item:hover{background-color:#335ea8;color:#fff}.cols_checklist_slc_item{background-color:#335ea8;color:#fff}
|
4
dist/tablefilter/style/filtersVisibility.css
vendored
4
dist/tablefilter/style/filtersVisibility.css
vendored
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* tablefilter v0.5.13 by Max Guglielmi
|
* tablefilter v0.5.14 by Max Guglielmi
|
||||||
* build date: 2017-05-09T10:44:28.220Z
|
* build date: 2017-05-13T10:35:10.593Z
|
||||||
* MIT License
|
* MIT License
|
||||||
*/
|
*/
|
||||||
span.expClpFlt a.btnExpClpFlt{width:35px;height:35px;display:inline-block;}span.expClpFlt a.btnExpClpFlt:hover{background-color:#f4f4f4}span.expClpFlt img{padding:8px 11px 11px 11px}
|
span.expClpFlt a.btnExpClpFlt{width:35px;height:35px;display:inline-block;}span.expClpFlt a.btnExpClpFlt:hover{background-color:#f4f4f4}span.expClpFlt img{padding:8px 11px 11px 11px}
|
4
dist/tablefilter/style/tablefilter.css
vendored
4
dist/tablefilter/style/tablefilter.css
vendored
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* tablefilter v0.5.13 by Max Guglielmi
|
* tablefilter v0.5.14 by Max Guglielmi
|
||||||
* build date: 2017-05-09T10:44:28.220Z
|
* build date: 2017-05-13T10:35:10.593Z
|
||||||
* MIT License
|
* MIT License
|
||||||
*/
|
*/
|
||||||
.activeHeader{background-color:#66afe9 !important;color:#fff !important}
|
.activeHeader{background-color:#66afe9 !important;color:#fff !important}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* tablefilter v0.5.13 by Max Guglielmi
|
* tablefilter v0.5.14 by Max Guglielmi
|
||||||
* build date: 2017-05-09T10:44:28.220Z
|
* build date: 2017-05-13T10:35:10.593Z
|
||||||
* MIT License
|
* MIT License
|
||||||
*/
|
*/
|
||||||
table.TF{border-left:1px solid #ccc;border-top:none;border-right:none;border-bottom:none;}table.TF th{background:#ebecee url("images/bg_th.jpg") left top repeat-x;border-bottom:1px solid #d0d0d0;border-right:1px solid #d0d0d0;border-left:1px solid #fff;border-top:1px solid #fff;color:#333}table.TF td{border-bottom:1px dotted #999;padding:5px}.fltrow{background-color:#ebecee !important;}.fltrow th,.fltrow td{border-bottom:1px dotted #666 !important;padding:1px 3px 1px 3px !important}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #999 !important}input.flt{width:99% !important}.inf{height:$min-height;background:#d7d7d7 url("images/bg_infDiv.jpg") 0 0 repeat-x !important}input.reset{background:transparent url("images/btn_eraser.gif") center center no-repeat !important}.helpBtn:hover{background-color:transparent}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important;}.nextPage:hover{background:transparent url("images/btn_over_next_page.gif") center center no-repeat !important}.previousPage{background:transparent url("images/btn_previous_page.gif") center center no-repeat !important;}.previousPage:hover{background:transparent url("images/btn_over_previous_page.gif") center center no-repeat !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important;}.firstPage:hover{background:transparent url("images/btn_over_first_page.gif") center center no-repeat !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important;}.lastPage:hover{background:transparent url("images/btn_over_last_page.gif") center center no-repeat !important}div.grd_Cont{background-color:#ebecee !important;border:1px solid #ccc !important;padding:0 !important;}div.grd_Cont .even{background-color:#fff}div.grd_Cont .odd{background-color:#d5d5d5}div.grd_headTblCont{background-color:#ebecee !important;border-bottom:none !important;}div.grd_headTblCont table{border-right:none !important}div.grd_tblCont table th,div.grd_headTblCont table th,div.grd_headTblCont table td{background:#ebecee url("images/bg_th.jpg") left top repeat-x !important;border-bottom:1px solid #d0d0d0 !important;border-right:1px solid #d0d0d0 !important;border-left:1px solid #fff !important;border-top:1px solid #fff !important}div.grd_tblCont table td{border-bottom:1px solid #999 !important}.grd_inf{background:#d7d7d7 url("images/bg_infDiv.jpg") 0 0 repeat-x !important;border-top:1px solid #d0d0d0 !important}.loader{border:1px solid #999}.defaultLoader{width:32px;height:32px;background:transparent url("images/img_loading.gif") 0 0 no-repeat !important}.even{background-color:#fff}.odd{background-color:#d5d5d5}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.activeHeader{background:#999 !important}
|
table.TF{border-left:1px solid #ccc;border-top:none;border-right:none;border-bottom:none;}table.TF th{background:#ebecee url("images/bg_th.jpg") left top repeat-x;border-bottom:1px solid #d0d0d0;border-right:1px solid #d0d0d0;border-left:1px solid #fff;border-top:1px solid #fff;color:#333}table.TF td{border-bottom:1px dotted #999;padding:5px}.fltrow{background-color:#ebecee !important;}.fltrow th,.fltrow td{border-bottom:1px dotted #666 !important;padding:1px 3px 1px 3px !important}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #999 !important}input.flt{width:99% !important}.inf{height:$min-height;background:#d7d7d7 url("images/bg_infDiv.jpg") 0 0 repeat-x !important}input.reset{background:transparent url("images/btn_eraser.gif") center center no-repeat !important}.helpBtn:hover{background-color:transparent}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important;}.nextPage:hover{background:transparent url("images/btn_over_next_page.gif") center center no-repeat !important}.previousPage{background:transparent url("images/btn_previous_page.gif") center center no-repeat !important;}.previousPage:hover{background:transparent url("images/btn_over_previous_page.gif") center center no-repeat !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important;}.firstPage:hover{background:transparent url("images/btn_over_first_page.gif") center center no-repeat !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important;}.lastPage:hover{background:transparent url("images/btn_over_last_page.gif") center center no-repeat !important}div.grd_Cont{background-color:#ebecee !important;border:1px solid #ccc !important;padding:0 !important;}div.grd_Cont .even{background-color:#fff}div.grd_Cont .odd{background-color:#d5d5d5}div.grd_headTblCont{background-color:#ebecee !important;border-bottom:none !important;}div.grd_headTblCont table{border-right:none !important}div.grd_tblCont table th,div.grd_headTblCont table th,div.grd_headTblCont table td{background:#ebecee url("images/bg_th.jpg") left top repeat-x !important;border-bottom:1px solid #d0d0d0 !important;border-right:1px solid #d0d0d0 !important;border-left:1px solid #fff !important;border-top:1px solid #fff !important}div.grd_tblCont table td{border-bottom:1px solid #999 !important}.grd_inf{background:#d7d7d7 url("images/bg_infDiv.jpg") 0 0 repeat-x !important;border-top:1px solid #d0d0d0 !important}.loader{border:1px solid #999}.defaultLoader{width:32px;height:32px;background:transparent url("images/img_loading.gif") 0 0 no-repeat !important}.even{background-color:#fff}.odd{background-color:#d5d5d5}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.activeHeader{background:#999 !important}
|
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* tablefilter v0.5.13 by Max Guglielmi
|
* tablefilter v0.5.14 by Max Guglielmi
|
||||||
* build date: 2017-05-09T10:44:28.220Z
|
* build date: 2017-05-13T10:35:10.593Z
|
||||||
* MIT License
|
* MIT License
|
||||||
*/
|
*/
|
||||||
table.TF{border-left:1px dotted #81963b;border-top:none;border-right:0;border-bottom:none;}table.TF th{background:#39424b url("images/bg_headers.jpg") left top repeat-x;border-bottom:0;border-right:1px dotted #d0d0d0;border-left:0;border-top:0;color:#fff}table.TF td{border-bottom:1px dotted #81963b;border-right:1px dotted #81963b;padding:5px}.fltrow{background-color:#81963b !important;}.fltrow th,.fltrow td{border-bottom:1px dotted #39424b !important;border-right:1px dotted #fff !important;border-left:0 !important;border-top:0 !important;padding:1px 3px 1px 3px !important}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #687830 !important}input.flt{width:99% !important}.inf{background:#d8d8d8;height:$min-height}input.reset{width:53px;background:transparent url("images/btn_filter.png") center center no-repeat !important}.helpBtn:hover{background-color:transparent}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important}.previousPage{background:transparent url("images/btn_previous_page.gif") center center no-repeat !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important}div.grd_Cont{background:#81963b url("images/bg_headers.jpg") left top repeat-x !important;border:1px solid #ccc !important;padding:0 1px 1px 1px !important;}div.grd_Cont .even{background-color:#bccd83}div.grd_Cont .odd{background-color:#fff}div.grd_headTblCont{background-color:#ebecee !important;border-bottom:none !important}div.grd_tblCont table{border-right:none !important;}div.grd_tblCont table td{border-bottom:1px dotted #81963b;border-right:1px dotted #81963b}div.grd_tblCont table th,div.grd_headTblCont table th{background:transparent url("images/bg_headers.jpg") 0 0 repeat-x !important;border-bottom:0 !important;border-right:1px dotted #d0d0d0 !important;border-left:0 !important;border-top:0 !important;padding:0 4px 0 4px !important;color:#fff !important;height:35px !important}div.grd_headTblCont table td{border-bottom:1px dotted #39424b !important;border-right:1px dotted #fff !important;border-left:0 !important;border-top:0 !important;background-color:#81963b !important;padding:1px 3px 1px 3px !important}.grd_inf{background-color:#d8d8d8;border-top:1px solid #d0d0d0 !important}.loader{border:0 !important;background:#81963b !important}.defaultLoader{width:32px;height:32px;background:transparent url("images/img_loading.gif") 0 0 no-repeat !important}.even{background-color:#bccd83}.odd{background-color:#fff}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.activeHeader{background:#81963b !important}
|
table.TF{border-left:1px dotted #81963b;border-top:none;border-right:0;border-bottom:none;}table.TF th{background:#39424b url("images/bg_headers.jpg") left top repeat-x;border-bottom:0;border-right:1px dotted #d0d0d0;border-left:0;border-top:0;color:#fff}table.TF td{border-bottom:1px dotted #81963b;border-right:1px dotted #81963b;padding:5px}.fltrow{background-color:#81963b !important;}.fltrow th,.fltrow td{border-bottom:1px dotted #39424b !important;border-right:1px dotted #fff !important;border-left:0 !important;border-top:0 !important;padding:1px 3px 1px 3px !important}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #687830 !important}input.flt{width:99% !important}.inf{background:#d8d8d8;height:$min-height}input.reset{width:53px;background:transparent url("images/btn_filter.png") center center no-repeat !important}.helpBtn:hover{background-color:transparent}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important}.previousPage{background:transparent url("images/btn_previous_page.gif") center center no-repeat !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important}div.grd_Cont{background:#81963b url("images/bg_headers.jpg") left top repeat-x !important;border:1px solid #ccc !important;padding:0 1px 1px 1px !important;}div.grd_Cont .even{background-color:#bccd83}div.grd_Cont .odd{background-color:#fff}div.grd_headTblCont{background-color:#ebecee !important;border-bottom:none !important}div.grd_tblCont table{border-right:none !important;}div.grd_tblCont table td{border-bottom:1px dotted #81963b;border-right:1px dotted #81963b}div.grd_tblCont table th,div.grd_headTblCont table th{background:transparent url("images/bg_headers.jpg") 0 0 repeat-x !important;border-bottom:0 !important;border-right:1px dotted #d0d0d0 !important;border-left:0 !important;border-top:0 !important;padding:0 4px 0 4px !important;color:#fff !important;height:35px !important}div.grd_headTblCont table td{border-bottom:1px dotted #39424b !important;border-right:1px dotted #fff !important;border-left:0 !important;border-top:0 !important;background-color:#81963b !important;padding:1px 3px 1px 3px !important}.grd_inf{background-color:#d8d8d8;border-top:1px solid #d0d0d0 !important}.loader{border:0 !important;background:#81963b !important}.defaultLoader{width:32px;height:32px;background:transparent url("images/img_loading.gif") 0 0 no-repeat !important}.even{background-color:#bccd83}.odd{background-color:#fff}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.activeHeader{background:#81963b !important}
|
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* tablefilter v0.5.13 by Max Guglielmi
|
* tablefilter v0.5.14 by Max Guglielmi
|
||||||
* build date: 2017-05-09T10:44:28.220Z
|
* build date: 2017-05-13T10:35:10.593Z
|
||||||
* MIT License
|
* MIT License
|
||||||
*/
|
*/
|
||||||
table.TF{padding:0;color:#000;border-right:1px solid #a4bed4;border-top:1px solid #a4bed4;border-left:1px solid #a4bed4;border-bottom:0;}table.TF th{margin:0;color:inherit;background:#d1e5fe url("images/bg_skyblue.gif") 0 0 repeat-x;border-color:#fdfdfd #a4bed4 #a4bed4 #fdfdfd;border-width:1px;border-style:solid}table.TF td{margin:0;padding:5px;color:inherit;border-bottom:1px solid #a4bed4;border-left:0;border-top:0;border-right:0}.fltrow{background-color:#d1e5fe !important;}.fltrow th,.fltrow td{padding:1px 3px 1px 3px !important}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #a4bed4 !important}input.flt{width:99% !important}.inf{background-color:#e3efff !important;border:1px solid #a4bed4;height:$min-height;color:#004a6f}div.tot,div.status{border-right:0 !important}.helpBtn:hover{background-color:transparent}input.reset{background:transparent url("images/icn_clear_filters.png") center center no-repeat !important}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.nextPage:hover{background:#ffe4ab url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.previousPage{background:transparent url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.previousPage:hover{background:#ffe4ab url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.firstPage:hover{background:#ffe4ab url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.lastPage:hover{background:#ffe4ab url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.activeHeader{background:#ffe4ab !important;border:1px solid #ffb552 !important;color:inherit !important}div.grd_Cont{background-color:#d9eaed !important;border:1px solid #9cc !important;padding:0 !important;}div.grd_Cont .even{background-color:#fff}div.grd_Cont .odd{background-color:#e3efff}div.grd_headTblCont{background-color:#d9eaed !important;border-bottom:none !important}div.grd_tblCont table{border-right:none !important}div.grd_tblCont table th,div.grd_headTblCont table th,div.grd_headTblCont table td{background:#d9eaed url("images/bg_skyblue.gif") left top repeat-x;border-bottom:1px solid #a4bed4;border-right:1px solid #a4bed4 !important;border-left:1px solid #fff !important;border-top:1px solid #fff !important}div.grd_tblCont table td{border-bottom:1px solid #a4bed4 !important;border-right:0 !important;border-left:0 !important;border-top:0 !important}.grd_inf{background-color:#cce2fe;color:#004a6f;border-top:1px solid #9cc !important;}.grd_inf a{text-decoration:none;font-weight:bold}.loader{background-color:#2d8eef;border:1px solid #cce2fe;border-radius:5px}.even{background-color:#fff}.odd{background-color:#e3efff}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.ezActiveRow{background-color:#ffdc61 !important;color:inherit}.ezSelectedRow{background-color:#ffe4ab !important;color:inherit}.ezActiveCell{background-color:#fff !important;color:#000 !important;font-weight:bold}.ezETSelectedCell{background-color:#fff !important;font-weight:bold;color:#000 !important}
|
table.TF{padding:0;color:#000;border-right:1px solid #a4bed4;border-top:1px solid #a4bed4;border-left:1px solid #a4bed4;border-bottom:0;}table.TF th{margin:0;color:inherit;background:#d1e5fe url("images/bg_skyblue.gif") 0 0 repeat-x;border-color:#fdfdfd #a4bed4 #a4bed4 #fdfdfd;border-width:1px;border-style:solid}table.TF td{margin:0;padding:5px;color:inherit;border-bottom:1px solid #a4bed4;border-left:0;border-top:0;border-right:0}.fltrow{background-color:#d1e5fe !important;}.fltrow th,.fltrow td{padding:1px 3px 1px 3px !important}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #a4bed4 !important}input.flt{width:99% !important}.inf{background-color:#e3efff !important;border:1px solid #a4bed4;height:$min-height;color:#004a6f}div.tot,div.status{border-right:0 !important}.helpBtn:hover{background-color:transparent}input.reset{background:transparent url("images/icn_clear_filters.png") center center no-repeat !important}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.nextPage:hover{background:#ffe4ab url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.previousPage{background:transparent url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.previousPage:hover{background:#ffe4ab url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.firstPage:hover{background:#ffe4ab url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.lastPage:hover{background:#ffe4ab url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid #ffb552 !important}.activeHeader{background:#ffe4ab !important;border:1px solid #ffb552 !important;color:inherit !important}div.grd_Cont{background-color:#d9eaed !important;border:1px solid #9cc !important;padding:0 !important;}div.grd_Cont .even{background-color:#fff}div.grd_Cont .odd{background-color:#e3efff}div.grd_headTblCont{background-color:#d9eaed !important;border-bottom:none !important}div.grd_tblCont table{border-right:none !important}div.grd_tblCont table th,div.grd_headTblCont table th,div.grd_headTblCont table td{background:#d9eaed url("images/bg_skyblue.gif") left top repeat-x;border-bottom:1px solid #a4bed4;border-right:1px solid #a4bed4 !important;border-left:1px solid #fff !important;border-top:1px solid #fff !important}div.grd_tblCont table td{border-bottom:1px solid #a4bed4 !important;border-right:0 !important;border-left:0 !important;border-top:0 !important}.grd_inf{background-color:#cce2fe;color:#004a6f;border-top:1px solid #9cc !important;}.grd_inf a{text-decoration:none;font-weight:bold}.loader{background-color:#2d8eef;border:1px solid #cce2fe;border-radius:5px}.even{background-color:#fff}.odd{background-color:#e3efff}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.ezActiveRow{background-color:#ffdc61 !important;color:inherit}.ezSelectedRow{background-color:#ffe4ab !important;color:inherit}.ezActiveCell{background-color:#fff !important;color:#000 !important;font-weight:bold}.ezETSelectedCell{background-color:#fff !important;font-weight:bold;color:#000 !important}
|
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* tablefilter v0.5.13 by Max Guglielmi
|
* tablefilter v0.5.14 by Max Guglielmi
|
||||||
* build date: 2017-05-09T10:44:28.220Z
|
* build date: 2017-05-13T10:35:10.593Z
|
||||||
* MIT License
|
* MIT License
|
||||||
*/
|
*/
|
||||||
table.TF{padding:0;color:inherit;border-right:1px solid transparent;border-top:1px solid transparent;border-left:1px solid transparent;border-bottom:0;}table.TF th{margin:0;color:inherit;background-color:transparent;border-color:transparent;border-width:1px;border-style:solid;}table.TF th:last-child{border-right:1px solid transparent}table.TF td{margin:0;padding:5px;color:inherit;border-bottom:1px solid transparent;border-left:0;border-top:0;border-right:0}.fltrow{background-color:transparent;}.fltrow th,.fltrow td{padding:1px 3px 1px 3px;border-bottom:1px solid transparent !important;}.fltrow th:last-child,.fltrow td:last-child{border-right:1px solid transparent}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #a4bed4}input.flt{width:99% !important}.inf{background-color:transparent;border:1px solid transparent;height:$min-height;color:inherit}div.tot,div.status{border-right:0 !important}.helpBtn:hover{background-color:transparent}input.reset{background:transparent url("images/icn_clear_filters.png") center center no-repeat !important}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.nextPage:hover{background:#f7f7f7 url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.previousPage{background:transparent url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.previousPage:hover{background:#f7f7f7 url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.firstPage:hover{background:#f7f7f7 url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.lastPage:hover{background:#f7f7f7 url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.activeHeader{background:#f7f7f7 !important;border:1px solid transparent;color:inherit !important}div.grd_Cont{-webkit-box-shadow:0 0 0 0 rgba(50,50,50,0.75);-moz-box-shadow:0 0 0 0 rgba(50,50,50,0.75);box-shadow:0 0 0 0 rgba(50,50,50,0.75);background-color:transparent;border:1px solid transparent;padding:0 !important;}div.grd_Cont .even{background-color:transparent}div.grd_Cont .odd{background-color:#f7f7f7}div.grd_headTblCont{background-color:transparent;border-bottom:none !important}div.grd_tblCont table{border-right:none !important}div.grd_tblCont table th,div.grd_headTblCont table th,div.grd_headTblCont table td{background:transparent;border-bottom:1px solid transparent;border-right:1px solid transparent !important;border-left:1px solid transparent;border-top:1px solid transparent}div.grd_tblCont table td{border-bottom:1px solid transparent;border-right:0 !important;border-left:0 !important;border-top:0 !important}.grd_inf{background-color:transparent;color:inherit;border-top:1px solid transparent;}.grd_inf a{text-decoration:none;font-weight:bold}.loader{background-color:#f7f7f7;border:1px solid #f7f7f7;border-radius:5px;color:#000;text-shadow:none}.even{background-color:transparent}.odd{background-color:#f7f7f7}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.ezActiveRow{background-color:#ccc !important;color:inherit}.ezSelectedRow{background-color:#ccc !important;color:inherit}.ezActiveCell{background-color:transparent;color:inherit;font-weight:bold}.ezETSelectedCell{background-color:transparent;font-weight:bold;color:inherit}
|
table.TF{padding:0;color:inherit;border-right:1px solid transparent;border-top:1px solid transparent;border-left:1px solid transparent;border-bottom:0;}table.TF th{margin:0;color:inherit;background-color:transparent;border-color:transparent;border-width:1px;border-style:solid;}table.TF th:last-child{border-right:1px solid transparent}table.TF td{margin:0;padding:5px;color:inherit;border-bottom:1px solid transparent;border-left:0;border-top:0;border-right:0}.fltrow{background-color:transparent;}.fltrow th,.fltrow td{padding:1px 3px 1px 3px;border-bottom:1px solid transparent !important;}.fltrow th:last-child,.fltrow td:last-child{border-right:1px solid transparent}.flt,select.flt,select.flt_multi,.flt_s,.single_flt,.div_checklist{border:1px solid #a4bed4}input.flt{width:99% !important}.inf{background-color:transparent;border:1px solid transparent;height:$min-height;color:inherit}div.tot,div.status{border-right:0 !important}.helpBtn:hover{background-color:transparent}input.reset{background:transparent url("images/icn_clear_filters.png") center center no-repeat !important}.nextPage{background:transparent url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.nextPage:hover{background:#f7f7f7 url("images/btn_next_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.previousPage{background:transparent url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.previousPage:hover{background:#f7f7f7 url("images/btn_prev_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.firstPage{background:transparent url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.firstPage:hover{background:#f7f7f7 url("images/btn_first_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.lastPage{background:transparent url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid transparent !important;}.lastPage:hover{background:#f7f7f7 url("images/btn_last_page.gif") center center no-repeat !important;border:1px solid #f7f7f7 !important}.activeHeader{background:#f7f7f7 !important;border:1px solid transparent;color:inherit !important}div.grd_Cont{-webkit-box-shadow:0 0 0 0 rgba(50,50,50,0.75);-moz-box-shadow:0 0 0 0 rgba(50,50,50,0.75);box-shadow:0 0 0 0 rgba(50,50,50,0.75);background-color:transparent;border:1px solid transparent;padding:0 !important;}div.grd_Cont .even{background-color:transparent}div.grd_Cont .odd{background-color:#f7f7f7}div.grd_headTblCont{background-color:transparent;border-bottom:none !important}div.grd_tblCont table{border-right:none !important}div.grd_tblCont table th,div.grd_headTblCont table th,div.grd_headTblCont table td{background:transparent;border-bottom:1px solid transparent;border-right:1px solid transparent !important;border-left:1px solid transparent;border-top:1px solid transparent}div.grd_tblCont table td{border-bottom:1px solid transparent;border-right:0 !important;border-left:0 !important;border-top:0 !important}.grd_inf{background-color:transparent;color:inherit;border-top:1px solid transparent;}.grd_inf a{text-decoration:none;font-weight:bold}.loader{background-color:#f7f7f7;border:1px solid #f7f7f7;border-radius:5px;color:#000;text-shadow:none}.even{background-color:transparent}.odd{background-color:#f7f7f7}span.expClpFlt a.btnExpClpFlt:hover{background-color:transparent !important}.ezActiveRow{background-color:#ccc !important;color:inherit}.ezSelectedRow{background-color:#ccc !important;color:inherit}.ezActiveCell{background-color:transparent;color:inherit;font-weight:bold}.ezETSelectedCell{background-color:transparent;font-weight:bold;color:inherit}
|
6
dist/tablefilter/tablefilter.js
vendored
6
dist/tablefilter/tablefilter.js
vendored
File diff suppressed because one or more lines are too long
2
dist/tablefilter/tablefilter.js.map
vendored
2
dist/tablefilter/tablefilter.js.map
vendored
File diff suppressed because one or more lines are too long
8
dist/tablefilter/tf-0-54a84fb449300660d929.js
vendored
Normal file
8
dist/tablefilter/tf-0-54a84fb449300660d929.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
dist/tablefilter/tf-0-54a84fb449300660d929.js.map
vendored
Normal file
1
dist/tablefilter/tf-0-54a84fb449300660d929.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "tablefilter",
|
"name": "tablefilter",
|
||||||
"version": "0.5.13",
|
"version": "0.5.14",
|
||||||
"description": "A Javascript library making HTML tables filterable and a bit more",
|
"description": "A Javascript library making HTML tables filterable and a bit more",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"author": {
|
"author": {
|
||||||
|
|
16
src/const.js
16
src/const.js
|
@ -1,3 +1,5 @@
|
||||||
|
import {DateType} from './modules/dateType';
|
||||||
|
import {Help} from './modules/help';
|
||||||
import {State} from './modules/state';
|
import {State} from './modules/state';
|
||||||
import {GridLayout} from './modules/gridLayout';
|
import {GridLayout} from './modules/gridLayout';
|
||||||
import {Loader} from './modules/loader';
|
import {Loader} from './modules/loader';
|
||||||
|
@ -9,6 +11,7 @@ import {StatusBar} from './modules/statusBar';
|
||||||
import {ClearButton} from './modules/clearButton';
|
import {ClearButton} from './modules/clearButton';
|
||||||
import {AlternateRows} from './modules/alternateRows';
|
import {AlternateRows} from './modules/alternateRows';
|
||||||
import {NoResults} from './modules/noResults';
|
import {NoResults} from './modules/noResults';
|
||||||
|
import {Paging} from './modules/paging';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Filter types
|
* Filter types
|
||||||
|
@ -134,6 +137,15 @@ export const AUTO_FILTER_DELAY = 750;
|
||||||
* @type {Object}
|
* @type {Object}
|
||||||
*/
|
*/
|
||||||
export const FEATURES = {
|
export const FEATURES = {
|
||||||
|
dateType: {
|
||||||
|
class: DateType,
|
||||||
|
name: 'dateType'
|
||||||
|
},
|
||||||
|
help: {
|
||||||
|
class: Help,
|
||||||
|
name: 'help',
|
||||||
|
enforce: true
|
||||||
|
},
|
||||||
state: {
|
state: {
|
||||||
class: State,
|
class: State,
|
||||||
name: 'state'
|
name: 'state'
|
||||||
|
@ -180,5 +192,9 @@ export const FEATURES = {
|
||||||
noResults: {
|
noResults: {
|
||||||
class: NoResults,
|
class: NoResults,
|
||||||
name: 'noResults'
|
name: 'noResults'
|
||||||
|
},
|
||||||
|
paging: {
|
||||||
|
class: Paging,
|
||||||
|
name: 'paging'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -92,6 +92,6 @@ export class Feature {
|
||||||
* @returns {Boolean}
|
* @returns {Boolean}
|
||||||
*/
|
*/
|
||||||
isEnabled() {
|
isEnabled() {
|
||||||
return this.enabled;
|
return this.enabled === true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -193,9 +193,9 @@ export class Help extends Feature {
|
||||||
* Toggle help pop-up
|
* Toggle help pop-up
|
||||||
*/
|
*/
|
||||||
toggle() {
|
toggle() {
|
||||||
// check only if explicitily set to false as in this case undefined
|
// check only if explicitily disabled as in this case undefined
|
||||||
// signifies the help feature is enabled by default
|
// signifies the help feature is enabled by default
|
||||||
if (this.enabled === false) {
|
if (!this.isEnabled()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -225,7 +225,6 @@ export class Help extends Feature {
|
||||||
this.cont = null;
|
this.cont = null;
|
||||||
|
|
||||||
this.boundMouseup = null;
|
this.boundMouseup = null;
|
||||||
|
|
||||||
this.initialized = false;
|
this.initialized = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -489,15 +489,11 @@ export class Paging extends Feature {
|
||||||
* @param {Boolean} filterTable Execute filtering once paging instanciated
|
* @param {Boolean} filterTable Execute filtering once paging instanciated
|
||||||
*/
|
*/
|
||||||
reset(filterTable = false) {
|
reset(filterTable = false) {
|
||||||
var tf = this.tf;
|
|
||||||
if (this.isEnabled()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
this.enable();
|
this.enable();
|
||||||
this.init();
|
this.init();
|
||||||
|
|
||||||
if (filterTable) {
|
if (filterTable) {
|
||||||
tf.filter();
|
this.tf.filter();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -894,7 +890,7 @@ export class Paging extends Feature {
|
||||||
|
|
||||||
this.pagingSlc = null;
|
this.pagingSlc = null;
|
||||||
this.nbPages = 0;
|
this.nbPages = 0;
|
||||||
this.disable();
|
|
||||||
this.initialized = false;
|
this.initialized = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,9 +14,6 @@ import {root} from './root';
|
||||||
import {Emitter} from './emitter';
|
import {Emitter} from './emitter';
|
||||||
import {Dropdown} from './modules/dropdown';
|
import {Dropdown} from './modules/dropdown';
|
||||||
import {CheckList} from './modules/checkList';
|
import {CheckList} from './modules/checkList';
|
||||||
import {Paging} from './modules/paging';
|
|
||||||
import {Help} from './modules/help';
|
|
||||||
import {DateType} from './modules/dateType';
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
INPUT, SELECT, MULTIPLE, CHECKLIST, NONE,
|
INPUT, SELECT, MULTIPLE, CHECKLIST, NONE,
|
||||||
|
@ -829,6 +826,13 @@ export class TableFilter {
|
||||||
|
|
||||||
/*** data types ***/
|
/*** data types ***/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable date type module
|
||||||
|
* @type {Boolean}
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
this.dateType = true;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Define default locale, default to 'en' as per Sugar Date module:
|
* Define default locale, default to 'en' as per Sugar Date module:
|
||||||
* https://sugarjs.com/docs/#/DateLocales
|
* https://sugarjs.com/docs/#/DateLocales
|
||||||
|
@ -975,6 +979,11 @@ export class TableFilter {
|
||||||
*/
|
*/
|
||||||
this.ExtRegistry = {};
|
this.ExtRegistry = {};
|
||||||
|
|
||||||
|
//conditionally instantiate required features
|
||||||
|
this.instantiateFeatures(
|
||||||
|
Object.keys(FEATURES).map((item) => FEATURES[item])
|
||||||
|
);
|
||||||
|
|
||||||
//load styles if necessary
|
//load styles if necessary
|
||||||
this.import(this.stylesheetId, this.stylesheet, null, 'link');
|
this.import(this.stylesheetId, this.stylesheet, null, 'link');
|
||||||
}
|
}
|
||||||
|
@ -995,21 +1004,13 @@ export class TableFilter {
|
||||||
//loads theme
|
//loads theme
|
||||||
this.loadThemes();
|
this.loadThemes();
|
||||||
|
|
||||||
// Instantiate sugar date wrapper
|
const { dateType, help, state, markActiveColumns, gridLayout, loader,
|
||||||
Mod.dateType = Mod.dateType || new DateType(this);
|
highlightKeyword, popupFilter, rowsCounter, statusBar, clearButton,
|
||||||
Mod.dateType.init();
|
alternateRows, noResults, paging } = FEATURES;
|
||||||
|
|
||||||
// Instantiate help feature and initialise only if set true
|
|
||||||
Mod.help = Mod.help || new Help(this);
|
|
||||||
if (this.help) {
|
|
||||||
Mod.help.init();
|
|
||||||
}
|
|
||||||
|
|
||||||
const { state, markActiveColumns, gridLayout, loader, highlightKeyword,
|
|
||||||
popupFilter, rowsCounter, statusBar, clearButton, alternateRows,
|
|
||||||
noResults } = FEATURES;
|
|
||||||
|
|
||||||
this.initFeatures([
|
this.initFeatures([
|
||||||
|
dateType,
|
||||||
|
help,
|
||||||
state,
|
state,
|
||||||
markActiveColumns,
|
markActiveColumns,
|
||||||
gridLayout,
|
gridLayout,
|
||||||
|
@ -1086,18 +1087,10 @@ export class TableFilter {
|
||||||
statusBar,
|
statusBar,
|
||||||
clearButton,
|
clearButton,
|
||||||
alternateRows,
|
alternateRows,
|
||||||
noResults
|
noResults,
|
||||||
|
paging
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if (this.paging) {
|
|
||||||
if (!Mod.paging) {
|
|
||||||
Mod.paging = new Paging(this);
|
|
||||||
Mod.paging.init();
|
|
||||||
} else {
|
|
||||||
Mod.paging.reset();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.hasColWidths && !this.gridLayout) {
|
if (this.hasColWidths && !this.gridLayout) {
|
||||||
this.setColWidths();
|
this.setColWidths();
|
||||||
}
|
}
|
||||||
|
@ -1313,16 +1306,7 @@ export class TableFilter {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return a feature instance for a given name
|
* Istantiate the collection of features required by the
|
||||||
* @param {String} name Name of the feature
|
|
||||||
* @return {Object}
|
|
||||||
*/
|
|
||||||
feature(name) {
|
|
||||||
return this.Mod[name];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Instanciate and initialise the collection of features required by the
|
|
||||||
* configuration and add them to the features registry. A feature is
|
* configuration and add them to the features registry. A feature is
|
||||||
* described by a `class` and `name` fields and and optional `property`
|
* described by a `class` and `name` fields and and optional `property`
|
||||||
* field:
|
* field:
|
||||||
|
@ -1333,22 +1317,49 @@ export class TableFilter {
|
||||||
* @param {Array} [features=[]]
|
* @param {Array} [features=[]]
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
initFeatures(features = []) {
|
instantiateFeatures(features = []) {
|
||||||
features.forEach((feature) => {
|
features.forEach((feature) => {
|
||||||
// TODO: remove the property field.
|
// TODO: remove the property field.
|
||||||
// Due to naming convention inconsistencies, a `property`
|
// Due to naming convention inconsistencies, a `property`
|
||||||
// field is added in order allow a conditional instanciation based
|
// field is added to allow a conditional instanciation based
|
||||||
// on that property on TableFilter, if supplied.
|
// on that property on TableFilter, if supplied.
|
||||||
feature.property = feature.property || feature.name;
|
feature.property = feature.property || feature.name;
|
||||||
if (this[feature.property] === true) {
|
if (this[feature.property] === true || feature.enforce === true) {
|
||||||
let {class: Cls, name} = feature;
|
let {class: Cls, name} = feature;
|
||||||
|
|
||||||
this.Mod[name] = this.Mod[name] || new Cls(this);
|
this.Mod[name] = this.Mod[name] || new Cls(this);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialise the passed features collection. A feature is described by a
|
||||||
|
* `class` and `name` fields and and optional `property` field:
|
||||||
|
* {
|
||||||
|
* class: AClass,
|
||||||
|
* name: 'aClass'
|
||||||
|
* }
|
||||||
|
* @param {Array} [features=[]]
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
initFeatures(features = []) {
|
||||||
|
features.forEach((feature) => {
|
||||||
|
let {property, name} = feature;
|
||||||
|
if (this[property] === true && this.Mod[name]) {
|
||||||
this.Mod[name].init();
|
this.Mod[name].init();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return a feature instance for a given name
|
||||||
|
* @param {String} name Name of the feature
|
||||||
|
* @return {Object}
|
||||||
|
*/
|
||||||
|
feature(name) {
|
||||||
|
return this.Mod[name];
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialise all the extensions defined in the configuration object
|
* Initialise all the extensions defined in the configuration object
|
||||||
*/
|
*/
|
||||||
|
@ -1500,9 +1511,9 @@ export class TableFilter {
|
||||||
if (this.isExternalFlt && !this.popupFilters) {
|
if (this.isExternalFlt && !this.popupFilters) {
|
||||||
this.removeExternalFlts();
|
this.removeExternalFlts();
|
||||||
}
|
}
|
||||||
if (this.infDiv) {
|
|
||||||
this.removeToolbar();
|
this.removeToolbar();
|
||||||
}
|
|
||||||
if (this.hasExtensions) {
|
if (this.hasExtensions) {
|
||||||
this.destroyExtensions();
|
this.destroyExtensions();
|
||||||
}
|
}
|
||||||
|
@ -1586,9 +1597,9 @@ export class TableFilter {
|
||||||
|
|
||||||
// emit help initialisation only if undefined
|
// emit help initialisation only if undefined
|
||||||
if (isUndef(this.help)) {
|
if (isUndef(this.help)) {
|
||||||
// explicitily set enabled field to true to initialise help by
|
// explicitily enable help to initialise feature by
|
||||||
// default, only if setting is undefined
|
// default, only if setting is undefined
|
||||||
this.Mod.help.enabled = true;
|
this.Mod.help.enable();
|
||||||
this.emitter.emit('init-help', this);
|
this.emitter.emit('init-help', this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1605,9 +1616,7 @@ export class TableFilter {
|
||||||
|
|
||||||
let tbl = this.dom();
|
let tbl = this.dom();
|
||||||
let captions = tag(tbl, 'caption');
|
let captions = tag(tbl, 'caption');
|
||||||
if (captions.length > 0) {
|
[].forEach.call(captions, (elm) => removeElm(elm));
|
||||||
[].forEach.call(captions, (elm) => tbl.removeChild(elm));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -139,13 +139,34 @@ module('Destroy and re-init with help property undefined');
|
||||||
test('Can init help when property is undefined and toolbar is set',
|
test('Can init help when property is undefined and toolbar is set',
|
||||||
function() {
|
function() {
|
||||||
tf.destroy();
|
tf.destroy();
|
||||||
tf.help = undefined;
|
tf = new TableFilter('demo', {
|
||||||
tf.rowsCounter = true;
|
base_path: '../dist/tablefilter/',
|
||||||
var help = tf.feature('help');
|
help_instructions: undefined,
|
||||||
help.btnText = '?';
|
help_instructions_btn_text: '??',
|
||||||
|
// creates toolbar
|
||||||
|
rows_counter: true
|
||||||
|
});
|
||||||
tf.init();
|
tf.init();
|
||||||
|
var help = tf.feature('help');
|
||||||
|
|
||||||
notEqual(help.btn, null, 'btn property');
|
notEqual(help.btn, null, 'btn property');
|
||||||
|
deepEqual(help.btn.childNodes[1].innerHTML, '??', 'Button text');
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
test('Does not init help when property is undefined and toolbar is not set '+
|
||||||
|
'by other feature(s)',
|
||||||
|
function() {
|
||||||
|
tf.destroy();
|
||||||
|
tf = new TableFilter('demo', {
|
||||||
|
base_path: '../dist/tablefilter/'
|
||||||
|
});
|
||||||
|
tf.init();
|
||||||
|
var help = tf.feature('help');
|
||||||
|
|
||||||
|
deepEqual(help.initialized, false, 'feature not initialized');
|
||||||
|
deepEqual(help.btn, null, 'btn property not set');
|
||||||
|
deepEqual(help.cont, null, 'cont property not set');
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,7 @@ test('Properties', function() {
|
||||||
});
|
});
|
||||||
test('Can destroy', function() {
|
test('Can destroy', function() {
|
||||||
paging.destroy();
|
paging.destroy();
|
||||||
deepEqual(paging.enabled, false, 'disabled');
|
deepEqual(paging.initialized, false, 'not initialized');
|
||||||
});
|
});
|
||||||
test('Can reset', function() {
|
test('Can reset', function() {
|
||||||
paging.reset();
|
paging.reset();
|
||||||
|
|
Loading…
Reference in a new issue